P2 Data Logger

De Wiki d'activités IMA
Révision datée du 12 octobre 2015 à 13:16 par Avinot (discussion | contributions) (Caracteristiques SPARTAN 6 XILINX LX45)

Cahier des charges

Présentation générale du projet

Dénomination du sujet par les enseignants

Objectif Réaliser une plate-forme de mesure de la consommation d'équipement électroniques
Description La consommation des équipements électroniques est devenue un enjeu majeur puisque les équipements sont très souvent utilisés en situation de mobilité. La réduction de la consommation passe par la compréhension des sources de consommation que ce soit par le logiciel ou par le matériel.

Afin de comprendre les mécanismes de consommation, il est nécessaire de pouvoir mesurer le courant des différents composants d'un système. Dans ce projet, nous proposons la réalisation d'une plate-forme permettant la mesure de courant.

Cette plate-forme devra être ouverte et facilement reconfigurable (ajout / retrait de voies de mesures, filtrage des mesures, ...)

La plate-forme sera constituée de :

  • Un FPGA permettant de contrôler le système,
  • Des voies de mesures de courant embarquant un capteur et un convertisseur analogique / numérique,
  • Une mémoire RAM de stockage des données,
  • Une interface permettant de gérer la plate-forme et de récupérer les données.


Contexte

Dans le cadre d'une réalisation de projet de fin d'étude, on se propose de réaliser un "data logger". Durant les semaines à venir, je vais travailler sur un dispositif qui stockera des données numériques envoyé depuis un convertisseur analogique numérique dans une barrette de RAM avant de les rendre accessible par une liaison RS232. Le but de se projet est de compléter le panel de technologie disponible pour un laboratoire qui possède une...

Objectif du projet

  • stocker en RAM une série de donnée le plus rapidement possible
  • construire interface permettant de recuperer les infomations via un RJ45 protocole Ethernet
  • rendre modulaire le code en permettant de modifier facilement de la taille des mots d'entrée (passer de 8 bits à 10 puis 16 ...)
  • rendre modulaire le code en permettant d'ajouter un fréquencemètre
  • développer une carte support pour le LX45 maitriser les temps de propagations des signaux sur le typon, en direction de la barrette de RAM

Description du projet

Choix techniques : matériel, logiciels, sources

Étapes du projet

Sources

Fiche commerciale
Sous la main: à voir

Suivi de l'avancement du Projet

Semaine 1 (21/09/2015)

  • Étude du cahier des charges.
  • Réunion avec les enseignants responsables.
  • Présentation du sujet.
  • Création du wiki.

Semaine 2 (28/09/2015)

La board que m'ont fournie les encadrants se compose se compose d'une carte mère et d'une carte support. La carte mère, nommé TE0600 est composé d'un FPGA Xilinx SPARTAN 6 LX45. C'est le "cerveau" du projet qui vient se brancher sur une carte support qui me servira au développement (programmation, IOs, carte mémoire, alimentation, Ethernet...). Celle ci se nomme TE0603. Elles seront indissociable pendant toute la période de développement.

Caracteristiques SPARTAN 6 XILINX LX45

SPARTAN 6 LX45

General

  • consommation: 0.6A
  • 45nm low power process technology with 6-input LUTs
  • 1080MHz clock management tiles (2 DCM + 1 PLL)
  • 320MHz Block RAM from 216 - 4824 Kbits
  • Memory interface controllers blocks from 0 - 4
  • 1.08Gbps SelectIO™ technology
  • 390MHz DSP48A1 slices from 8 - 180
  • Embedded processing

Spartan-6 Family:

  • Spartan-6 LX FPGA: Logic optimized []
  • Spartan-6 LXT FPGA: High-speed serial connectivity []

Designed for low cost

  • Multiple efficient integrated blocks
  • Optimized selection of I/O standards
  • Staggered pads
  • High-volume plastic wire-bonded packages

Low static and dynamic power

  • 45 nm process optimized for cost and low power
  • Hibernate power-down mode for zero power
  • Suspend mode maintains state and configuration with multi-pin wake-up, control enhancement
  • Lower-power 1.0V core voltage (LX FPGAs, -1L only) []
  • High performance 1.2V core voltage (LX and LXT FPGAs, -2, -3, and -3N speed grades)

Multi-voltage, multi-standard SelectIO™ interface banks

  • Up to 1,080 Mb/s data transfer rate per differential I/O
  • Selectable output drive, up to 24 mA per pin
  • 3.3V to 1.2V I/O standards and protocols
  • Low-cost HSTL and SSTL memory interfaces
  • Hot swap compliance
  • Adjustable I/O slew rates to improve signal integrity

High-speed GTP serial transceivers in the LXT FPGAs[]

  • Up to 3.2 Gb/s
  • High-speed interfaces including: Serial ATA, Aurora, 1G Ethernet, PCI Express, OBSAI, CPRI, EPON, GPON, DisplayPort, and XAUI

Integrated Endpoint block for PCI Express designs (LXT) []
Low-cost PCI® technology support compatible with the 33 MHz, 32- and 64-bit specification. Efficient DSP48A1 slices

  • High-performance arithmetic and signal processing
  • Fast 18 x 18 multiplier and 48-bit accumulator
  • Pipelining and cascading capability
  • Pre-adder to assist filter applications

Integrated Memory Controller blocks

  • DDR, DDR2, DDR3, and LPDDR support
  • Data rates up to 800 Mb/s (12.8 Gb/s peak bandwidth)
  • Multi-port bus structure with independent FIFO to reduce design timing issues

Abundant logic resources with increased logic capacity

  • Optional shift register or distributed RAM support
  • Efficient 6-input LUTs improve performance and minimize power
  • LUT with dual flip-flops for pipeline centric applications

Block RAM with a wide range of granularity

  • Fast block RAM with byte write enable
  • 18 Kb blocks that can be optionally programmed as two independent 9 Kb block RAMs

Clock Management Tile (CMT) for enhanced performance

  • Low noise, flexible clocking
  • Digital Clock Managers (DCMs) eliminate clock skew and duty cycle distortion
  • Phase-Locked Loops (PLLs) for low-jitter clocking
  • Frequency synthesis with simultaneous multiplication, division, and phase shifting
  • Sixteen low-skew global clock networks

Simplified configuration, supports low-cost standards

  • 2-pin auto-detect configuration
  • Broad third-party SPI (up to x4) and NOR flash support
  • Feature rich Xilinx Platform Flash with JTAG
  • MultiBoot support for remote upgrade with multiple bitstreams, using watchdog protection

Enhanced security for design protection

  • Unique Device DNA identifier for design authentication
  • AES bitstream encryption in the larger devices

Faster embedded processing with enhanced, low cost, MicroBlaze™ soft processor Industry-leading IP and reference designs

General Description
Commerciale presentation
Spartan-6 FPGA Electrical Characteristics

Caractéristiques de TE0600

TE0600

Industrial-grade Xilinx Spartan-6 LX FPGA micromodule (LX45 / LX100 / LX150)

  • 10/100/1000 tri-speed Gigabit Ethernet transceiver (PHY)
  • 2 x 16-bit-wide 1 Gb (128 MB) or 4Gb (512 MB) DDR3 SDRAM
  • 128Mb (16 MB) SPI Flash memory (for configuration and operation)accessible through:
  • 1Kb Protected 1-Wire EEPROM with SHA-1 Engine
  • JTAG port (SPI indirect)
  • FPGA configuration through:
  • B2B connector
  • JTAG port
  • SPI Flash memory
  • Plug-on module with 2 × 100-pin high-speed hermaphroditic strips
  • Up to 52 differential, up to 109 single-ended (+ 1 dual-purpose) FPGA I/O pins available on B2B strips
  • 4.0 A x 1.2 V power rail
  • 1.5 A x 1.5 V power rail
  • 125 MHz reference clock signal
  • Single-ended custom oscillator (option)
  • eFUSE bit-stream encryption (LX100 or larger)
  • 1 user LED
  • Evenly-spread supply pins for good signal integrity
TE0603
  • Other assembly options for cost or performance optimization available upon request.

Datasheet TE0600

Caractéristiques du TE0603

  • Board power supply via screw terminals, DC jack
  • JTAG header compatible with Xilinx parallel cable III, IV and USB cable HW-USB
  • Small form factor: 115x70 mm
  • Micro SD connector
  • 5 Header connectors with up to 114 user IOs
  • 2 Push-buttons for reset and user function

Datasheet TE0603

Semaine 3 (05/10/2015)

Étude de la carte TE0603

Je vais reproduire la carte TE0603 en lui ajoutant une socket pour ajouter de la RAM. En effet, la carte TE0600 peut se configurer pour avoir 512Mb configurable en 16 ou 32 bits de RAM. Cependant, le CAN branché en amont fonctionne à une vitesse de 50MHz, on se rend vite compte que la mémoire va se saturer même si la vitesse de la transmission en aval est élevé.
On trouve sur le site trenz-electronic.de un fichier schematic et typon lisible sous Altium de la carte de TE0603. C'est de ce schéma que je vais m'inspirer.

Gerber TE0603

              • Ajouter le schéma

Étude pour l'ajout de RAM

Semaine 4 (12/10/2015)

Semaine 5 (19/10/2015)

Semaine 6 (26/10/2015)

Semaine 7 (02/11/2015)

Semaine 8 (09/11/2015)

Semaine 9 (16/11/2015)

Semaine 10 (23/11/2015)

Semaine 11 (30/11/2015)

Semaine 12 (07/12/2015)

Semaine 13 (14/12/2015)

Semaine 14 (04/01/2016)

Semaine 15 (11/01/2016)

Semaine 16 (18/01/2016)

Semaine 17 (25/01/2016)

Semaine 18 (01/02/2016)

Semaine 19 (08/02/2016)

Semaine 20 (15/02/2016)

Semaine 21 (22/02/2016)