Chapitre 1
Introduction
AU : 2016/2017
Plan du cours
Définition et généralités
2
Pourquoi on s’intéresse au SE?
3
Exemple d’application des SE
4
Qu’est ce qu’un système embarqué ?
Définitions:
Un système embarqué (ou enfoui) est un système électronique
intégré dans un système ( voiture, avion, …) qui sert à exécuter
une tâche particulière ( contrôle, communication, …).
5
Qu’est ce qu’un système embarqué ?
Un système embarqué :
Est un système numérique.
Utilise généralement un processeur.
Exécute généralement un logiciel dédié pour réaliser une
fonctionnalité précise.
N'a pas réellement de clavier standard (clavier matriciel...).
L'affichage est limité (écran LCD …) ou n'existe pas du tout.
N'est pas un PC.
6
Cartes de commande pour climatiseur
7
Caractéristiques et organisation
8
Plan du cours
Définition et généralités
SW design
HW design
HW/SW co-design
9
Contraintes de conception des systèmes
embarqués
Performance: puissance de calcul MIPS (Million
d’Instructions Par Seconde) ➔ temps d’exécution
Surface et encombrement: GSM…
Consommation énergétique: lié à l’autonomie des
batteries (PDA, téléphone mobile…)
Sûreté: aucun dommage (automobile, avionique…)
Coût et temps de développement: faible coût
10
Contraintes de conception des systèmes
embarqués : TTM
11
Contraintes de conception des systèmes
embarqués
Un système embarqué doit répondre à des
contraintes temps réel:
Contrainte de temps réel: dure ou souple.
Une contrainte temps réel est appelé dure si le non respect
de cette contrainte peut mener à des situations critiques
voir catastrophiques
Les autres contraintes sont appelées soft
Sureté de fonctionnement
Poids du système
embarqué
Durée de vie
Standard
Volume de production
13
Evolution des systèmes embarqués
1. Evolution technologique:
La miniaturisation des transistors a permis d’augmenter
considérablement la capacité d’intégration dans les systèmes
embarqués :
7,2 109 transistors par cm2 est envisagée pour 2020
2. Evolution applicative:
Des applications plus complexes avec un nombre important
et varié de fonctionnalités:
→ Les téléphones portables intègrent de plus en plus de
fonctionnalités et ils ont des tailles toujours réduites et sont
alimentés par batteries.
14
Evolution technologique/Conception
Le processus
technologique
autorise un L'efficacité des
accroissement de concepteurs
la complexité de n'augmente
59% par an → que de 25%
Loi de MOORE par an
15
Conception des systèmes embarqués
Spécification d’une
Contraintes de
application conception/réalisation
(cahier des charges)
Flot et Surface
Outils de conception Consommation
Sureté de fonctionnement
TTM
Réalisation de Prix
…….
l’application
Cible matériel
Ex : FPGA, ASIC
Cible logiciel
Ex : DSP, µP
17
Exemple : FFT
18
Exemple : FFT
19
Exemple : FFT
Résolution mixte
20
Différents types de conception des
systèmes embarqués
SW design (conception logicielle) (systèmes embarqués nécessitant
une conception logicielle)
Les processeurs généralistes
Les DSPs
Les Microcontrôleurs
21
Plan du cours
Définition et généralités
SW design
HW design
HW/SW co-design
22
Conception logicielle(SW design)
23
Processeurs Généralistes
Processeurs a usage général.
Choix des processeurs embarqués
Coûts
Consommation
Performance
etc.
Exemple :
Famille ARM
Famille MIPS
Famille PowerPC
Différentes architectures de systèmes à base de µP
Architecture de Von Neumann
Architecture de Harvard
24
Architecture de Von Neumann
25
Architecture de Von Neumann
26
Architecture de Harvard
28
Architecture de Harvard
29
Architecture de Harvard modifiée
30
Caractéristiques générales des
microprocesseurs
Performances
Temps d’exécution par tâche = I x C x T
• I : nombre d’instructions par tâche
• C : nombre de cycles d’horloge par instructions
• T : temps d’un cycle d’horloge (dépend de la technologie et de l’efficacité
de l’ALU)
31
Les architectures CISC
32
Les architectures RISC
Architecture présentant un jeu d’instructions relativement réduit
Une seule opération /instruction
Taille fixe pour les instructions
Modes d’adressage simples
Ont permis une augmentation de la fréquence
Présente un nombre important de registres généraux
Les seules instructions ayant besoin d’accès à la mémoire sont les
instruction de chargement et de rangement
Exemple :
PowerPC
ARM
SPARC
MIPS
33
Les architectures VLIW
34
Digital Signal Processing (DSP)
Processeurs dédiés et optimisés pour le traitement numérique
du signal (filtrage, extraction de signaux, etc.).
35
Digital Signal Processing (DSP)
Un DSP « Digital Signal Processor », qu'on pourrait
traduire par « processeur de signal numérique ») .
- 37 -
Architecture d’un filtre numérique FIR
- 38 -
Digital Signal Processing (DSP)
Caractéristiques
Architecture RISC complexe, superscalaire(plusieurs unités de
traitements. Le processeur détecte lui-même les instructions
pouvant être exécutées en parallèle, contrairement au VLIW.),
pipeline
Architecture Harvard et Super Harvard .
Des instructions adaptées aux opérations classiques de
traitement de signaux : multiplication & accumulation en un
seul cycle d'instruction (MAC)
transferts de données par DMA (Direct Access Memory) pour
la plupart des DSP.
Exemple : Texas Instrument C6x
39
Digital Signal Processing (DSP)
Avantages
Spécialisés traitement du signal
Peuvent mélanger calcul flottant et virgule fixe
Intègrent plusieurs périphériques entrées/sorties
Inconvénients
Coûts élevés
Consommation d’énergie élevée
40
Les Microcontrôleurs
Un circuit intégré rassemblant dans un même boîtier un
microprocesseur, plusieurs types de mémoires et des périphériques
(Entrées-Sorties).
41
Les Microcontrôleurs
Caractéristiques
Architecture simple, jeux d’instructions réduit
Basé sur des architectures de processeurs connus
Exemple : 68HC11, PIC de Microchip, STM32 de ST
Avantages
Très économique : pas besoin d’acheter des périphériques
Spécialisés
Simple d’utilisation
Inconvénients
Pas temps réel
Peu performant
42
Conception logicielle
Avantages
Flexibilité : il suffit de modifier le programme pour
modifier l’application
Simple à mettre en œuvre : grâce à la programmation
de haut niveau (langage C) (possibilité de grande
abstraction par rapport au matériel)
Temps et coût de conception faibles
Prix de reviens faible
43
Conception logicielle
Inconvénients
Faibles performance : temps d’exécution élevé
Consommation électrique importante
Le passage par un compilateur peut dégrader les
performances
Complexité du langage machine et de l’assembleur
44
Plan du cours
Définition et généralités
SW design
HW design
HW/SW co-design
45
Conception matérielle(HW design)
46
Conception matérielle(HW design)
47
Technologie de base des CI : les
transistors
Les circuits intégrés (CI ou chips): représentent la
réalisation courante de tout système informatique
Un CI = un ensemble de transistors + connections
MOS: Metal Oxcyde Semiconductor
NMOS: NChannel MOS
PMOS: PChannel MOS
48
Technologie de base : les transistors
NMOS PMOS
Drain Drain
Grille pmos
Gate
Source Source
Si Grille ==1, alors Drain et Source connectées Si Grille ==1, alors Drain et Source connectées
Si Grille ==1, alors Drain et Source connectées Si Grille ==1, alors Drain et Source connectées
49
Technologie de base : les transistors
CMOS : Complementary MOS (circuit comportant des PMOS et des NMOS)
p
p p
A A=1 A=0 1
0
Y = !A
n
n n
50
Exercice
51
Solution de l’exercice
Z = NAND(x,y)
x y z
0 0 1
0 1 1
1 0 1
1 1 0
52
Solution de l’exercice
z= NOR(x,y)
x y z
0 0 1
0 1 0
1 0 0
1 1 0
53
Les circuits intégrés
Les circuits
intégrés
SEMI-CUSTOM
CUSTOM :
: circuits
ASIC
configurables
56
Standard Cells
ASIC Standard Cell
58
Les ASICs
AVANTAGES
hautes intégrations
hautes performances (vitesse, low-power)
coûts faibles pour de gros volumes de
production
Personnalisation
INCONVENIENTS
prix du 1er exemplaire
pas d’erreur possible
non-flexible
time-to-market élevé
fabrication réservée aux spécialistes
(fondeur)
59
L’aspect financier dans un SE
Exemple de microP.
Les circuits
intégrés
SEMI-CUSTOM
CUSTOM :
: circuits
ASIC
configurables
Matrice de « ET »
programmables réalisant
tous les produits
possibles connectée aux
sorties par des
« OU » programmables
Grande surface de
Silicium utilisée
Ces circuits ne sont plus
utilisés aujourd’hui
62
PLA : exemple
La configuration du
circuit assurant les
fonctions suivantes :
63
CPLD : Complex Programmable Logic
Device
Les CPLDs regroupent
plusieurs PLAs
interconnectés par un PLA PLA
réseau de connexions
programmables.
E/S MATRICE D’INTERCONNECTIONS E/S
FPGAs.
64
FPGA : Field Programmable Gate Arrays
Arrangement Matriciel de
blocs logiques avec
configuration des :
Interconnexions entre les
blocs logiques,
La fonction de chaque bloc
CLB: Configurable Logic Bloc
IOB: Input/Output Bloc
65
FPGA vs ASIC
ASIC
Caractéristiques FPGA
Semi custom Full custom
Densité Faible Moyenne Grande
Flexibilité Grande Moyenne Faible
Analogique Non Oui Oui
Rapidité Faible Bonne Très bonne
Temps de conception Très petit Moyen Grand
Coût de conception Très petit Moyen Très grand
Utilisation des outils Simple Complexe Très complexe
Volume de production Petit Grand Grand
66
Conclusion
67
Plan du cours
Définition et généralités
SW design
HW design
HW/SW co-design
68
Conception mixte : Les Systèmes sur
puce (System on Chip)
69 15/02/2021
Conception mixte :Avantage
Utilisation du parallélisme
Accroissement des performances.
maîtrise de la complexité et de la consommation
70 15/02/2021
Exemple : Appareil photos numérique
lens
71
Conception modulaire : Notions d’IP
(Intellectual Properties)
72 15/02/2021
Conception modulaire : Notions d’IP
(IntellectualProperties)
Blocs fonctionnels complexes réutilisables
Hard: disponible sous forme de dessin des masques de
fabrication de la puce, dépendant de la technologie, fortement
optimisé et non modifiable.
Soft: Sous forme de Netlist ou dans un langage de description
matérielle (VHDL, Verilog..), paramétrables, synthétisable
Normalisation des interfaces
Environnement de développement (co-design, co-specif, co-verif)
Performances moyennes (peu optimisé)
73
Circuit Intégrés ?
Exemples d’IPs
75
Approches d’implémentation physique
d’un SoC
ASIC
Assemblages de composants
Processeurs +composants
matériels dans un circuit
FPGA
L’utilisation d’un FPGA. On
parle alors d’un Système
programmable sur puce
SoPC
76
Les Cibles mixtes: System on
programmble chip (SOPC)
Systèmes totalement intégrés dans un FPGA
Les fonctionnalités peuvent être implantées dans des composants
logiques programmables de type FPGA.
FPGA
77
Processeur Hard/soft :
hardcore/softcore
Les processeurs intégrés dans un FPGA peuvent être soit:
Hardcore: Déjà implanté dans le circuit électronique du
FPGA.
Softcore: Le processeur est réalisé par les éléments
logiques du FPGA.
78
Les processeurs pour le SOPC
79 15/02/2021
Approche Xilinx
1. Hardcore : Power PC (XilinxVIRTEX II PRO (XC2VP):
2. softcore
MicroBlaze, picoblaze
80
Approche Altera : processeur soft Le
‘NIOS’
NIOS : cœur de processeur
RISC générique optimisé
Caractéristiques:
données sur 16 ou 32 bits.
128, 256 ou 512 registres
registres à décalage rapide ( 1, 3,
7, 15 ou 31 bits/clock)
possibilités de lui adjoindre des
périphériques (UART, RAM,
ROM)
81