Mariane Sawan colloque AFIRSE 2013-TICE-Politiques Pratiques et TIC riment-elles ensemble?
Chapitre 9: les circuits intégrés programmables et … · 2018-04-04 · ELE3311 –Systèmes...
-
Upload
truonghuong -
Category
Documents
-
view
222 -
download
0
Transcript of Chapitre 9: les circuits intégrés programmables et … · 2018-04-04 · ELE3311 –Systèmes...
ELE3311 – Systèmes logiques programmables
Mohamad Sawan, ing., Ph.D.
Stéphane Boyer, M.Sc.A.
Philippe Levesque, ing., Ph.D.
▪ Historique des circuits programmables
▪ Architecture des FPGA
▪ Technologies de programmation
▪ FPGA vs. ASIC
▪ Outils de simulation
▪ Outils de synthèse.
Chapitre 9: les circuits intégrés
programmables et leurs outils de synthèse
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 2
Historique des circuits programmables
▪ Circuits programmables de haute densité à partir de 1984.
➢ 1984 Xilinx LCA (FPGA)
➢ 1988 Actel FPGA anti-fusible
➢ 1989 Algotronix CAL1024 SRAM-FPGA
➢ 1991 Quicklogic pASIC anti-fusible
➢ 1991 Concurrent Logic CLi6000 SRAM-FPGA
➢ 1991 Crosspoint CP20K anti-fusible
➢ 1992 Intel iFX780 SRAM-FPGA
➢ 1993 AT&T ORCA SRAM-FPGA
➢ 1994 Pilkington/Motorola MPA1000 SRAM-FPGA
➢ 1995 IMP FPAA
➢ 1995 Pilkington/Motorola FPMA
➢ 1995 Plusieurs compagnies FPIC, FPCB, etc.
Références
'84: Macintosh (GUI)
'85: Intel 80386
'86: Macintosh
'87: Macintosh
'88: 1er Worm
'89: WWW
'90: Windows 3.0
'91: PowerPC
'93: Apple Newton
'93: NCSA Mosaic
'93: Intel Pentium
'95: Toy Story
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 3
Historique des circuits programmables (suite)
▪ Différents domaines d'applications des FPGA
➢ Informatique
• Périphériques spécialisés
➢ Machinerie industrielle
• Contrôleur pour machines outils, balances, grues, presses, etc.
• Traitement d'images
➢ Télécommunications
• Filtrage
• Unité centrale (PABX)
➢ Instrumentation
• Équipement médical
➢ Transport
• Contrôle "Fly-by-wire"
• Prototypage
➢ Aérospatiale
• Satellite
➢ Militaire
• Radar
• Communication protégée
➢ Autres
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 4
Architecture des FPGA
▪ Principales classes de circuits FPGA
➢ Matrice symétrique
Interconnexions
Blocs logiques
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 5
Architecture des FPGA (suite)
▪ Principales classes de circuits FPGA (suite)
➢ Cellules placées en rangés
Interconnexions
Blocs logiques
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 6
Architecture des FPGA (suite)
▪ Principales classes de circuits FPGA (suite)
➢ Matrice immense de portes
Blocs logiques
Interconnexions
par-dessus les blocs
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 7
Architecture des FPGA (suite)
▪ Principales classes de circuits FPGA (suite)
➢ PLDs hiérarchiques
Blocs
logiques
(PLD)
Interconnexions
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 8
Architecture des FPGA
▪ Circuits programmables et applications particulières
Compagnie Produits Technologie Description
Altera SAM
EPS4000
EPROM Microséquenceur1,
Générateur d'interruptions synchrone (32 I/O)
Cypress CY7C300 EPROM MSA programmable,
MSA à haute cadence (26 I/O)
Philip-Signetics PLUS405 Fusible Séquenceur logique programmable
(24 I/O, 55 MHz)
Aptix, I-Cube AX1024
IQ160
SRAM Module d'interconnexions programmable,
FPCB, carte programmable
Université de
Toronto
FPAA CMOS 1.2m
(Transconducteurs MOS)
Matrice programmable analogique
(Field Programmable Analog Array)
1- Pile, compteur, logique de contrôle de saut et microcode EPROM.
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 9
Technologies de programmation
▪ Les éléments programmables
Élément
programmableRAM statique EPROM / EEPROM1
Antifusible
Diélectrique2 ViaLink3
Historique Xilinx Altera et al. Actel > TI QuickLogic
Ron (typ.) ~1-2 kohms ~1000 ohms ~500 ohms ~50 ohms
Coff (typ.) ~30-50 fF ~15 fF ~5-10 fF ~1 fF
Délai (appréciable) Moyen Court Court
Dimensions Très grande (6 T) Grande Moyenne (1 T) Petite (1 T)
Densité
Programmation RAMCharge > grille
Déch. par UV / Élec.
12 V, 10 mA, 1 ms
> PNP
11 V, 10 mA, 1 ms
> M-M
1- Utilisé comme "pull down", requiert une résistance "pull up", dissipation statique.
2- Requiert 3 masques supplémentaires et un transistor d'isolation pour protéger les circuits logiques.
3- Requiert 2 masques supplémentaires et un procédé basse température.
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 10
Technologies de programmation (suite)
▪ RAM statique
➢ Compagnies
• Xilinx, AT&T, Toshiba, Altera, Plessy, Algotronix, Concurrent
➢ Avantages
• Reprogrammation "in circuit"
• Complètement testable à l'usine
• Design incrémental sans coûts additionnels
• Permet la logique multi-usage
• Technologie standard
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 11
Technologies de programmation (suite)
▪ Antifusible
➢ Compagnies
• Actel, QuickLogic, Crosspoint
➢ Avantages
• Non-volatile
• Commutateur basse résistance
• Commutateur de dimensions réduites
• En majeure partie testable à l'usine
• Complètement testable dans le programmeur
Poly-Si
oxide
diffusion n+
diélectrique
substrat de silicium
L'antifusible PLICE
est l'élément clé
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 12
FPGA
FPGA vs. ASIC
▪ Avantages des PLD et des prédiffusés (Gate Array)
PLD / EPLD
➢ Temps de développement
• Disponible sur demande
• Programmation par l'usager
• Reconfiguration rapide
➢ Faible risque (faible NRE)
➢ Multiples fournisseurs bancs
de développement
➢ Expertise minimale requise
Prédiffusés
➢ Haute densité de portes
➢ Nombre de ports (I/Os)
➢ Configuration des ports
➢ Architecture flexible
➢ Outils de développement
de haut niveau
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 13
FPGA vs. ASIC (suite)
▪ Migration / Temps / Volume / Courbe de marché
PLD
FPGA
Gate ArrayVo
lum
e
Temps
Interval de migration
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 14
FPGA vs. ASIC (suite)
▪ Revenus et date de mise en marché
Re
ve
nu
s
Temps (semaine)
Perte de
revenus
Perte de
revenus
FPGA / CPLD
10 semaines
16 semaines
Prédiffusé
(1ère version réussie)
Prédiffusé
(2e version réussie)
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 15
FPGA vs. ASIC (suite)
▪ Nombre de portes sur un FPGA
(Xilinx, Virtex-II insert, février 2002)
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 16
Parts de marché
(EE Times, https://www.eetimes.com/author.asp?section_id=36&doc_id=1331443)
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Familles FPGA de Xilinx
Page 17
Features Artix-7 Kintex-7 Virtex-7 Spartan-6 Virtex-6
Logic Cells 352,000 480,000 2,000,000 150,000 760,000
BlockRAM 19Mb 34Mb 85Mb 4.8Mb 38Mb
DSP Slices 1,040 1,920 5,280 180 2,016
DSP Performance
(symmetric FIR)1,129GMACS 2,450GMACS 6,737GMACS 140GMACS 2,419GMACS
Transceiver Count 16 32 96 8 72
Transceiver Speed 6.6Gb/s 12.5Gb/s 28.05Gb/s 3.2Gb/s 11.18Gb/s
Total Transceiver
Bandwidth (full duplex)211Gb/s 800Gb/s 2,784Gb/s 50Gb/s 536Gb/s
Memory Interface
(DDR3)1,066Mb/s 1,866Mb/s 1,866Mb/s 800Mb/s 1,066Mb/s
PCI Express® Interface Gen2x4 Gen2x8 Gen3x8 Gen1x1 Gen2x8
Agile Mixed Signal
(AMS)/XADCYes Yes Yes Yes
Configuration AES Yes Yes Yes Yes Yes
I/O Pins 600 500 1,200 576 1,200
I/O Voltage1.2V, 1.35V, 1.5V,
1.8V, 2.5V, 3.3V
1.2V, 1.35V, 1.5V,
1.8V, 2.5V, 3.3V
1.2V, 1.35V, 1.5V,
1.8V, 2.5V, 3.3V
1.2V, 1.5V, 1.8V, 2.5V,
3.3V1.2V, 1.5V, 1.8V, 2.5V
EasyPath Cost
Reduction Solution- - Yes - Yes
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 18
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 19
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 20
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 21
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 22
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 23
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
DCM
Page 24
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
CMT
Page 25
CMT (Clock Management Tile) =
1 x mixed-mode clock manager MMCM),
1 x phase-locked loop (PLL),
1 x Phaser blocks
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Consommation
Page 26
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 27
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
CPLD : Coolrunner-II Xilinx
Page 28
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 29
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Système embarqué
Page 30
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 31
FPGA vs. ASIC (suite)
▪ Frais fixes et volumes
(Xilinx, Virtex-II insert, février 2002)
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 32
Outils de simulation
▪ Vivado Simulator
▪ Mentor Graphics
➢ QuestaSim
➢ ModelSim
▪ Synopsys VCS
▪ Cadence Incisive
▪ Aldec Active-HDL
(Xilinx, UG892)
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 33
Outils de synthèse
▪ La plupart des fabricants de FPGA offre un outil de synthèse
▪ Il y a quelques fournisseurs indépendants
➢ Intel / Altera
• Quartus II
➢ Xilinx
• Vivado
➢ Microsemi / Actel
• Libero
➢ Synopsys
• Synplify
➢ Autres
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 34
Outils de placement et routage (back-end)
▪ Chaque fabricant de FPGA offre un outil de placement et routage, de programmation, etc. spécifique à sa technologie
(Xilinx Wiki)
ELE3301 – Systèmes logiques programmables
M. Sawan & S. Boyer & P. Levesque
Page 35
Outils de gestion de la complexité
▪ Gestion des versions – Version control system
➢ Git, Subversion, ClearCase
➢ Synchronise les changements de multiples fichiers
➢ Gestion des conflits, unification, branches
▪ Gestion des problèmes – Issue tracking
➢ GitLab, GitHub
▪ Édition simultanée de fichiers de documention
➢ Microsoft Office (en ligne), Google G Suite