Académique Documents
Professionnel Documents
Culture Documents
Avant propos:
L'électronique actuelle a connu un avancement technologique gigantesque qui a donné de
l'électronique embarquée qui uni la puissance de la programmation à la puissance de l'électronique
et se manifeste pratiquement par les systèmes embarqués qui sont le cœur battant de tout
dispositif moderne. Omniprésents, ils révolutionnent les usages… Les systèmes embarqués sont de
plus en plus présents dans notre quotidien, les domaines dans lesquels on les trouve sont de plus
en plus nombreux : téléphone portable, distributeur de billet, voiture, etc.
L'objectif de ce cours est d’acquérir les notions de base d'un système embarqué et d’assimiler
les démarches nécessaires pour la mise en œuvre et la conception de ce système selon le
domaine d’application visé.
Ce cours qui se place à la fin d'une succession de cours dépendants (systèmes à
microprocesseur, microcontrôleurs, FPGA, temps réel, programmation C et Java etc .. ) vise
principalement à initier l'étudiant à la conception et la réalisation d'un système embarqué.
Définition
Il n'y a pas de définition commune du terme "système embarqué" (SEM)
Wikipedia 1 par exemple le définit comme "un système électronique et informatique autonome,
dédié à des tâches précises. Ses ressources disponibles sont généralement limitées. Cette limitation
est généralement d'ordre spatial (taille limitée) et énergétique (consommation restreinte)".
On parle donc d'un appareillage autonome piloté par un logiciel complètement intégré au système
qu'il contrôle, faisant de lui partie intégrante, et puisant de ses ressources dans le but d'accomplir
une fonction spécifique utilisant un ou plusieurs processeurs. Le Matériel et logiciel sont intimement
liés
-Un système peut être défini comme un arrangement dans lequel toutes les unités se réunissent et
travaillent ensemble selon un plan ou un programme pour atteindre les objectifs définis.
— embarqué (embedded) enfoui … noyé … scellé … intégré, pas facilement discernable, encapsulé
dans le dispositif qu'il commande (si il fait partie d'un plus grand appareil).
N'est pas visible en tant que tel, mais est intégré dans un équipement doté d'une autre fonction: on
dit aussi que le système est enfoui ce qui traduit plus fidèlement le terme Embedded.
M. OUSLIM Page 1
Systèmes Embarqués 2020 ELN ESE M2 USTO
Depuis ces premières applications dans les années 1960, le prix des systèmes embarqués a baissé et
il y a eu une augmentation spectaculaire de la puissance de traitement, donnant naissance au
premier microprocesseur, l'Intel 4004 dans les années 70. Au début des années 80, la mémoire, les
composants du système d'entrée et de sortie avaient été intégrés dans la même puce que le
processeur formant un microcontrôleur. Avec le développement des circuits intégrés (de l'intégration
a petite échelle (SSI) vers l'intégration à très grande échelle VLSI) ces circuits sont devenus plus
denses (compact + rapide) et moins coûteux : 100 M transistors/puce ce qui a conduit a des
implantations matérielles : ASIC, SoC, FPGA, … très sophistiquées
Depuis 20 ans l'électronique embarquée intègre les nanotechnologies, la fabrication de circuits
intégrés utilise des traits de gravure d'une mesure inférieure à 100 nm aboutissant à une
amélioration des capacités de stockage, 1 térabit par pouce carré (1024 Go par 2,54 cm2)
En outre, les progrès accomplis par l’industrie du silicium et l’arrivée en force de nouveaux outils de
conception élargissent actuellement le spectre d’applications des systèmes embarqués. Ceux-ci ne
sont plus constitués de jeux de composants implantés sur une carte imprimée (PCB), mais de
systèmes complets intégrés sur une seule puce (SoC).
M. OUSLIM Page 2
Systèmes Embarqués 2020 ELN ESE M2 USTO
Temps de réponse: temps entre l'événement déclencheur et l'action résultante (le système doit
réagir vite )
Fiabilité (Reliability): la probabilité pour que le système ne tombe pas en panne
Sécurité (Safety) risque pour l'homme ou l’environnement
La sureté Le système doit être opérationnel même lorsqu’un composant est défaillant.
Tolérance aux fautes c’est la capacité d'un système à survivre en présence de pannes
Le volume / le poids La miniaturisation des SEMs est un facteur important qui affecte
directement sa mobilité. Réduction de l’encombrement grâce à la miniaturisation des
composants électroniques .
Architecture matérielle
Optimisation Généralement logicielle de petite taille car plus c’est grand, plus il y a de chance d’avoir
des bugs. Ce sont des logiciels produits à grande échelle, le moindre centime compte.
Le coût Beaucoup de systèmes embarqués sont fabriqués en grande série et doivent avoir des
prix extrêmement faibles pour faire face à la concurrence
prix de développement, prix de vente
autres contraintes... dépendantes de l'application visée
La flexibilité
La flexibilité se résume par la capacité de changer quelques propriétés ou fonctionnalités du
système. Ces changements peuvent être réalisés par :
− la reprogrammation de son calculateur
− la reconfiguration matérielle de ses circuits logiques programmables (FPGA, PLD)
− la réutilisation de ses composants virtuels(IP)
Il s'agit aussi de créer des systèmes avec des possibilités de débogage intégrées qui permettent une
maintenance à distance.
La portabilité c’est une mesure de la facilité d'utilisation du même logiciel intégré dans divers
environnements. Il nécessite des abstractions généralisées entre la logique du programme
d'application elle-même et les interfaces système de bas niveau
On peut distinguer quatre principaux types de systèmes embarqués en fonction du type d'application
visé :
Les systèmes embarqués à usage général exécutent des applications similaires à celles
exécutées sur des ordinateurs « traditionnels », mais ils sont embarqués dans des packages
de petite taille. On a, par exemple, les assistants personnels (PDA) et les guichets
automatiques bancaires (ATM).
M. OUSLIM Page 3
Systèmes Embarqués 2020 ELN ESE M2 USTO
Les systèmes embarqués de contrôle sont utilisés pour effectuer un contrôle en boucle
rétroactive fermée de systèmes temps réel. On les retrouve notamment dans les moteurs de
voiture, les centrales nucléaires et pour le contrôle aérien.
On peut également utiliser des systèmes embarqués pour traiter des signaux, c'est-à-dire
réaliser des calculs sur des gros flux de données. Ces derniers se retrouvent typiquement
dans le traitement audio et vidéo et dans les radars et sonars.
Enfin, des systèmes embarqués sont également utilisés dans le domaine des communications
et réseaux, pour effectuer de la transmission de données et réaliser des communications. Ils
sont notamment utilisés dans la téléphonie et pour l'internet.
• Temps de prototypage: temps requis pour monter une version opérationnelle du système
• Temps de mise en marché TTM : temps requis pour développer une version commercialisable.
• Maintenabilité: capacité de modifier le système après la mise en marché
• Durabilité, sources d’approvisionnement, etc.
Afin de répondre aux exigences clés, les systèmes embarqués sont généralement limités à des
ressources limitées en termes de calcul, de mémoire, de taille d'affichage, etc. . Cela ajoute en outre
un «défi décisionnel» majeur pour les architectes et les chefs de produit sur la sélection des
processeurs, des systèmes d'exploitation, des normes d'utilisation, etc., car les demandes de
fonctionnalités augmentent avec le temps de mise sur le marché qui diminue.
La sûretéde fonctionnement. Le système embarqué peut, s’il subit des défaillances, mettre
des vies humaines en danger ou mettre en péril des investissements importants. Ils sont dits «
critiques »et leur fiabilitéest donc un défi majeur. Imagine-t-on un avion dont le radar tombe
en panne ? Ce type de système embarquédoit toujours donner des résultats pertinents dans les
délais attendus.
M. OUSLIM Page 4
Systèmes Embarqués 2020 ELN ESE M2 USTO
Le coût. Les systèmes embarqués doivent être efficients avec une grande précision : offrir une
puissance de calcul et de stockage totalement calibrée selon sa fonction, afin d’avoir un prix
de revient le plus faible possible surtout s’il est produit en grande série
–mais souvent difficile à atteindre, car les contraintes sont généralement mutuellement exclusives
(Améliorer une métrique peut avoir un effet négatif sur une autre). Ex. petites dimensions physiques,
grande puissance de calcul, faible émission de chaleur et grande autonomie énergétique
-L'environnement est souvent hostile, pour des raisons physiques (chocs, variations de
température, ou humaines (malveillance :système communiquant ,IoT, cloud). C'est pour cela que la
sécurité - au sens de résistance aux malveillances - et la fiabilité – au sens de continuité de service
sont souvent rattachées à la problématique des systèmes embarqués .
Pb: Construire des systèmes de fonctionnalitéet qualitédéterminée et garantie a cout acceptable avec
un délai de mise sur le marchéfaible (time to market), est un defi technologique majeur
Objectif actuel: diminuer au minimum le nombre de composants sur une carte pour mettre tout sur une
seule puce.
3-Les systèmes embarqués devenant de plus en plus complexes à programmer, il est souvent difficile
de concevoir la partie logicielle sur la base d’une boucle infinie et d’une gestion des interruptions. De
plus en plus de concepteurs adoptent alors un système d’exploitation, offrant différents services
permettant une meilleure gestion de la complexité du logiciel embarqué.
Un système d’exploitation offre ainsi différents services pour mieux appréhender cette complexité
– apport du multitâche : une application monolithique est divisée en une somme de tâches
coopératives (système multitâche) ;
– maîtrise des contraintes temporelles : système temps réel, qui doit satisfaire des contraintes
explicites (bornées) de temps de réponse ;
– développement de pilotes de périphérique (driver) simplifié pour pouvoir avoir accès aux
accélérateurs matériels ;
– système de fichiers.
M. OUSLIM Page 5
Systèmes Embarqués 2020 ELN ESE M2 USTO
Traditionnellement, les fabricants de puces développées processeurs plus rapide, pour répondre aux
exigences de performances croissantes, mais ils se sont aperçus que en augmentant la fréquence
cela conduit à une plus grande consommation de puissance et donc les thermiques plus élevées. Les
fabricants de semi-conducteurs ont reconnu que la voie à suivre est de construire des processeurs
qui fonctionnent à basse fréquence et basse tension, mais comprennent des multicœurs sur une
seule puce. La performance globale augmente en raison des processeurs pouvant effectuer plus
d'une tâche à un moment donné. Aujourd'hui, la plupart des consoles de jeu sont multicœurs, tout
comme les smartphones, qui deviennent en effet «plus intelligents».
Le schéma général d'un système embarqué typique est donné dans la figure:
CPU (processeur embarqué et ses E/S).Possibilité d’avoir un/des FPGAs et/ou ASICs et/ou DSP pour
jouer le rôle de coprocesseurs (accélération matérielle).
Le système est en permanence en contact avec l’environnement, dans lequel il récupère des
informations via des capteurs (température, vitesse de rotation...) et avec lequel il interagit par
l’intermédiaire d’actionneurs (moteur, écrans, voyants...), il possède des entrées/sorties spécifiques
et très réactives. Son but premier consiste à traiter de l'information reçue depuis son environnement
pour en faire profiter le produit hôte qui l'héberge. Par exemple, les voitures modernes peuvent être
équipées d'un système de climatisation de l'air complètement contrôlé par un système embarqué. Ce
dernier collecte de l'information sur la température et sur l'humidité de l'air au sein de la voiture et,
sur base de cette dernière, active ou non le climatiseur, etc.
M. OUSLIM Page 6
Systèmes Embarqués 2020 ELN ESE M2 USTO
Tout système embarqué pourra être découpé en un certains nombres de tâches spécifiques à
exécuter selon un ordre particulier. Certains évènements doivent également être pris en compte dès
qu’ils arrivent (arrêt d’urgence par exemple) et doivent exécuter des tâches plus prioritaires que
d’autres. Gestion de tâches :
– priorité
– ordonnancement
Gestion d’évènements (indiquant l’évolution d’un système) :
– synchrones
– asynchrones (non prédictibles) - interruptions
Selon la complexité du système, on peut voir apparaitre un certains nombres de tâches et
d’évènements extérieurs susceptibles d’interrompre le programme initial. Si ce nombre de taches
devient trop important, il est difficile de prévoir leur ordonnancement et les interactions possibles
entre elles et les évènements. Il peut également arriver que certaines tâches doivent s’exécuter en
parallèle.
Exemples
Fig.Téléphone portable
M. OUSLIM Page 7
Systèmes Embarqués 2020 ELN ESE M2 USTO
M. OUSLIM Page 8
Systèmes Embarqués 2020 ELN ESE M2 USTO
M. OUSLIM Page 9
Systèmes Embarqués 2020 ELN ESE M2 USTO
M. OUSLIM Page 10
Systèmes Embarqués 2020 ELN ESE M2 USTO
Fig. les deux composantes logicielle et matérielle d'un appareil photo digitale
M. OUSLIM Page 11
Systèmes Embarqués 2020 ELN ESE M2 USTO
Ce système Traite l’information venant de caméras, lasers, sonars et autres capteurs pour réaliser
des tâches comme l’avertissement de changement de ligne, de somnolence, ou l’aide au
stationnement. Les résultats peuvent être affichés sur écran ou annoncés par haut-parleur/sirène.
EXERCICE
Q1. Donnez un exemple de système embarqué typique. Dessinez le diagramme et discutez de la
fonction des différents blocs. Quel type de processeur embarqué utilise-il?
Ans: Un récepteur de système de positionnement global portable
M. OUSLIM Page 12