Vous êtes sur la page 1sur 24

1

ETRS 511 FPGA et VHDL


Emilie HERAULT
Emilie.Herault@univ-savoie.fr
Btiment Chablais, bureau 212
04 79 75 94 68
2
I. INTRODUCTION
3
Prsentation du cours
Organisation :
CM : 15h en 10 sances
10 TDs (M. Montagny)
3 TPs (M. Montagny)
Evaluation :
1 exam thorique (75% )
1 exam de TP (25%)
4
Prsentation du cours
Objectifs du cours :
Savoir utiliser les outils de synthse logique afin de
concevoir un systme matriel numrique sur FPGA
Maitriser les bases du langage VHDL
Prrequis :
Cours dlectronique et de logique (logique boolenne,
portes logiques, fonctions combinatoires et
squentielles, machine tats, reprsentation des
nombres en binaire,)
5
Bibliographie
VHDL, du langage au circuit, du circuit au langage,
J. Weber, M. Meaudre, Dunod
Initiation au VHDL, M. Aumiaux, Dunod (plus
disponible neuf)
Circuits numriques et synthse logique, un outil :
VHDL, J. Weber, M. Meaudre
http://www.iutenligne.net/ressources/electronique/weber/vdhl/index.html
VHDL made easy ! D. Pellerin, D. Taylor
6
Matriel
Logiciel QUARTUS II
Possibilit de tlcharger sur le site dAltera
Quartus II Web Edition
https://www.altera.com/download/software/quartus-ii-we
Attention : tlchargement volumineux!
Carte DE1 dAltera
7
Plan gobal du cours
I. Introduction
Pourquoi un cours FPGA et VHDL?
Pourquoi utiliser un circuit logique programmable?
II. FPGA
III. VHDL
8
I. Introduction
Pourquoi un cours FPGA et VHDL ?
FPGA prsents dans de plus en plus dapplications
Traitement et contrle du signal
Tlcommunications (Tlphones portables, GPS)
Jeux vidos (GameCube, XBOX, PS2..)
Mdical

Besoin croissant des entreprises davoir du
personnel qualifi
9
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Objectif : Raliser une fonction numrique
10
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Vocabulaire :
ASIC : Application Specific Integrated Circuit
PLD : Programmable Logic Device
EPLD : Erasable Programmable Logic Device
CPLD : Complex Programmable Logic Device
FPGA : Field Programmable Gate Array
11
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Critres de choix :
Couts
Temps de conception
Performances
Flexibilit / Conversion
12
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Couts :
Nombre de pices
13
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Temps de conception :
Temps
Spec.
Spec.
Spec. Code
Code + synthse
Code + synthse
P. R.
Placement Routage Fabrication
Time To Market
14
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Conception et fabrication dun ASIC :
Ide
Spcifications
Circuit logique - RTL
Portes logiques
Transistors
Masques
Fonderie
Dveloppement
Validation
15
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Conception et fabrication dun ASIC :
16
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Conception et fabrication dun ASIC :
Ide
Spcifications
Circuit logique - RTL
Portes logiques
Transistors
Masques
Fonderie
Dveloppement
Validation
Nombreuses tapes
Ncessite des spcialistes
dans des domaines varis
Equipement lourd
17
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Performances :
18
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Performances :
Microprocesseur 1 GHz
1 000 000 000 oprations par seconde
FPGA 300 MHz avec 1000 multiplicateurs
300 000 000 000 oprations par seconde
19
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Flexibilit / Conversion
Embedded
FPGA
E
E
: Efficiency : MIPS / Watt
Reconfigurable
Processor
Embedded
Processor
SA110
0.4 MIPS/mW
Alpha
0.007 MIPS/mW
DSP
2 V DSP
3 MOPS/mW
Pleiades
10-50 MOPS/mW
ASIC
100-1000 MOPS/mW
F
l
e
x
i
b
i
l
i
t
y
20
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Flexibilit / Conversion
21
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Bilan pour les PLD :
Moins chers que des ASICs pour de faibles volumes
Un temps de dveloppement moins lev
De meilleures performances quun logiciel
Des circuits flexibles permettant des volutions
Mais :
Plus chers que des circuits standards
Gourmands en nergie (sauf les low power )
Volatile
Leur sret de fonctionnement est parfois considre
comme faible ( juste titre?)
22
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Utilisations classiques :
Prototypage
Production de faibles volumes
Production de circuits ncessitant des mises jour
23
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Fabricants
Points de diffrentiation :
Le process (65 nm, 40 nm)
Le mode de configuration (antifusible, EEPROM, SRAM)
Larchitecture interne
24
I. Introduction
Pourquoi utiliser un circuit logique programmable?
Programmation
Par schmatique
Par langage de programmation
HDL : Hardware Description Langage (AHDL, ABEL,)
VHDL : Very High Speed Integrated Circuit Hardware
Description Langage
Verilog : conception et simulation de circuits numrique
SystemC : modlisation de systmes numriques matriels et
logiciels l'aide de C++ (systmes matriels, mais aussi des
systmes logiciels, mixtes ou non-partitionns)