Chap1 CSE
Chap1 CSE
Chap1 CSE
Chapitre 1
Blocs IP et
processeurs
embarqués dans les
FPGA
1.Introduction
1.SoC & SoPC
1
14/09/2021
1.Introduction
2. Design Reuse
1.Introduction
2. Design Reuse
Une entreprise ne peut pas toujours concevoir seule tous les blocks
dont elle a besoin. L’utilisation de blocks développés par autrui peut
s’imposer.
2
14/09/2021
2. IP blocks
1. Généralités
2. IP blocks
1.Généralités
3
14/09/2021
2.IP blocks
1. Généralités
Un sous-système IP est
un ensemble de blocs IP.
2. IP blocks
2. Classification
Soft IP : disponible dans un langage de description matérielle
(VHDL, Verilog..). L’utilisateur est responsable de la synthèse et des
masques .
(+) indépendant de la technologie (portable)
(+) flexible
(-) difficile à protéger
(-) le travail d’optimisation peut être long
4
14/09/2021
2. IP blocks
2. Classification
Firm (semi-hard) IP : netlist qui peut être simulée et changée en cas
de besoin.
(+) flexible
(-) dépend de la technologie
(-) difficile à protéger
2. IP blocks
2. Classification
(a) Soft IP
(b) Firm IP
(c) Hard IP
5
14/09/2021
2. IP blocks
3. Types
Processeurs et microcontrôleurs
Exemples : processeur RISC ou CISC 8, 16, 32 ou 64 bits,
microcontrôleur PIC, ..
DSPs
Exemples : traitement de signal, filtres numériques , décodeurs,…
Composants de traitement spécialisé
Exemples : cryptage des données, multimédia ,…
Contrôleurs de mémoire et de bus
Exemples : SDRAM, contrôleur USB, Contrôleur PCI, UART, ..
Réseaux
Exemples : contrôleur Ethernet, contrôleur ATM
2. IP blocks
4. Fournisseurs
Sociétés d’études et de conception
Exemples : DSP Group (IP pour les télécoms), ARM (processeurs
RISCs),…
Nature des IPs : IPs soft et hard
Sociétés de semi-conducteurs
Exemples : Xilinx, Altera, Motorela, Lucent, STM,…
Nature des IPs : IPs soft et hard
Fournisseurs d’outils de CAO
Exemples : Mentor Graphics, Cadence, Synopsys, …
Nature des IPs : IPs Soft uniquement
Des passionnés
Exemple : http://www.opencores.org
Nature des IPs : IPs Soft uniquement
M. FEKI - Conception des systèmes embarqués 12
6
14/09/2021
2. IP blocks
5. Exemple d’IP: bloc IP du PIC 16F84
- Brochage :
2. IP blocks
5. Exemple d’IP: bloc IP du PIC 16F84
- Structure interne:
7
14/09/2021
2. IP blocks
5. Exemple d’IP: bloc IP du PIC 16F84
Présentation du IP associé : soft IP gratuit et disponible sur
http://www.opencores.org .
Entité du IP :
2. IP blocks
5. Exemple d’IP: bloc IP du PIC 16F84E
8
14/09/2021
2. IP blocks
5. Exemple d’IP: bloc IP du PIC 16F84
Utiliser le bloc IP du PIC pour réaliser un compteur (ou un chenillard à
8 diodes)
17
3. Processeurs embarqués
1. Généralités
18
9
14/09/2021
3. Processeurs embarqués
1. Généralités
3. Processeurs embarqués
2. Processeur Hardcore
10
14/09/2021
3. Processeurs embarqués
2. Processeur Hardcore
3. Processeurs embarqués
2. Processeur Hardcore
11
14/09/2021
3. Processeurs embarqués
3. Processeur Softcore
3. Processeurs embarqués
3. Processeur Softcore
12
14/09/2021
3. Processeurs embarqués
3. Processeur Softcore
On trouvera principalement au niveau des processeurs softcore
libres :
- Le processeur Leon http://www.gaisler.com/index.html.
- Le processeur OpenRisc http://www.opencores.org
- Le processeur F-CPU http://www.f-cpu.org.
- Autres processeurs : clones de 6800, 68HC11, 68000, PIC :
http://www.opencores.org
3. Processeurs embarqués
3. Processeur Softcore
13
14/09/2021
3. Processeurs embarqués
4. Processeur hardcore / softcore : critères de choix
Processeur hardcore :
- pour ses performances au détriment de la flexibilité ;
- pour une consommation d’énergie plus réduite;
- pour un comportement plus prédictible;
- pour implémenter un complexe système d’exploitation temps réel.
Processeur softcore :
- pour sa flexibilité de mise à jour au détriment de performances
moindres que le précédent;
3. Processeurs embarqués
4. Processeur hardcore / softcore : critères de choix
- pour le fait qu’on peut rajouter des softcores dans un FPGA après
qu’il soit conçu;
- pour la portabilité vers n’importe quel circuit FPGA (si c’est un
softcore libre);
- pour la possibilité de migrer vers un circuit de type ASIC en cas
d’une production en grande série.
14
14/09/2021
Processeurs embarqués
5. Conception conjointe
Les SoPC peuvent intégrer un ou plusieurs processeurs softcore ou
hardcore avec ses périphériques au sein d’un unique FPGA.
Processeurs embarqués
5. Conception conjointe
Le code exécutable
correspondant à l’application
logicielle déployée sur le ou
les processeurs peut être soit
mémorisé dans une mémoire
interne au FPGA, soit dans une
mémoire externe.
Assembleur/
C / C++
VHDL
La répartition entre le
développement matériel et le
développement logiciel étant
dépendant des choix du
concepteur.
30
15