Vous êtes sur la page 1sur 0

Les systmes embarqus

Introduction
Richard Grisel Professeur des Universits Universit de Rouen
Nacer Abouchi Professeur ESCPE Lyon
Introduction aux systmes embarqus
Dfinition.
Caractristiques dun systme embarqu.
Notions de codesign.
Les contraintes dans la conception des systmes
embarqus.
Mthodologie de conception.
Dfinition (1)
Embedded system: tout systme conu pour rsoudre
un problme ou une tche spcifique mais nest pas un
ordinateur dusage gnral.
Utilisent gnralement un microprocesseur combin avec
dautres matriel et logiciel pour rsoudre un problme de
calcul spcifique.
Systme lectronique et informatique autonome ne
possdant pas des entres-sorties standards.
Le systme matriel et lapplication sont intimement lis et
noys dans le matriel et ne sont pas discernables
comme dans un environnement de travail classique de
type PC.
Dfinition (2)
N'est pas visible en tant que tel, mais est intgr dans un
quipement dot d'une autre fonction; on dit aussi que le
systme est enfoui, ce qui traduit plus fidlement le terme
anglais embedded.
Une faible barrire existe entre les systmes embarqus
et les systmes temps rels (un logiciel embarqu n'a pas
forcment de contraintes temps rel).
La conception de ces systmes est fiable (avions,
systme de freinage ABS) cause de leur utilisations
dans des domaines fortes contraintes mais galement
parce que l'accs au logiciel est souvent difficile une fois
le systme fabriqu.
Dfinition (3)
Les microprocesseurs s'tendent depuis de simples
microcontrleurs 8 bits aux 64-bit le plus rapidement et les
plus sophistiqus.
Le logiciel systme inclus s'tend d'un petit directeur un
grand logiciel d'exploitation en temps rel (RTOS) avec
une interface utilisateur graphique (GUI). Typiquement, le
logiciel systme inclus doit rpondre aux vnements
d'une manire dterministe et devrait toujours tre
oprationnel.
Les systmes embarqus couvrent aussi bien les
commandes de navigation et de commande de trafic
arien quun simple agenda lectronique de poche.
Les types de systmes embarqus
Calcul gnral :
J eu vido.
Contrle de systmes en Temps Rel :
Systme de navigation arien.
Traitement du signal :
Radar, Sonar,
Transmission dinformation et commutation :
Tlphone, internent.
Quelques exemples
quipement mobile et bureautiques :
Rpondeurs,
Copieurs,
Tlphone portable,
Imprimante.
quipement dans le btiment :
Ascenseurs, escalators,
Systme de surveillance,
Contrle daccs,
Systmes d'clairage.
Embarquement dun ordinateur
CPU
mem
input
output
analog
analog
embedded
computer
Quelques exemples
quipement de production :
Productions automatises,
Systmes de commande d'nergie,
quipements de stockage,
Transport :
Avionique,
Trains, Automobiles (+ de 100 processeurs),
Contrle de navigation,
Communications :
Satellites,
GPS,
Tlphonie mobile,
Historique(rcent)
Fin des annes 1940: Le processeur Whirlwind du
MIT est conu pour des applications temps rel
A lorigine pour contrler un simulateur de vol.
Le premier microprocesseur est lIntel 4004 au dbut
des annes 1970.
La calculatrice HP-35 utilise plusieurs circuits pour
implmenter un microprocesseur en 1972.
Historique(suite).
Les automobiles utilisent des systmes de contrle
du moteur avec microprocesseurs depuis les annes
1970.
Contrle du mlange fuel/air, gestion du moteur, etc.
Modes de fonctionnement multiples: dmarrage,
croisire, montes, etc.
Baisse des missions polluantes, consommation
optimise.
Caractristiques dun systme embarqu(1)
Fonctionnement en Temps Rel :
Ractivit : des oprations de calcul doivent tre faites
en rponse un vnement extrieur (interruption
matrielle).
La validit dun rsultat dpend du moment o il est
dlivr, (deadlines).
Rater une chance peut causer une erreur de
fonctionnement.
La plus part des systmes sont multirate :
traitement dinformations diffrents rythmes.
Faible encombrement, poids et consommation :
Consommation lectrique minimise,
Difficult de packaging (analogique, numrique et RF),
Batterie de 8 heures et plus (PC portable : 2 heures).
Environnement svre (Temprature, vibrations,
variations dalimentation, interfrences RF, corrosion,
eau, feu, radiations, etc.),
Le systme nvolue pas dans un environnement
contrl (volutions des caractristiques des
composants en fonction de lenvironnement).
Caractristiques dun systme embarqu(2)
Cot, sret et scurit :
Le systme doit toujours fonctionner correctement
(faible cot et une redondance minimale),
Sret de fonctionnement du logiciel (systme
oprationnel mme quand un composant lectronique
lche .
Beaucoup de systmes embarqus sont fabriqus en
grande srie et doivent avoir des prix de revient
extrmement faibles
Caractristiques dun systme embarqu(3)

CPU


CAN

PORTS
Entres sorties
IHM


ASIC/FPGA


LOGICIELLE


CNA


SECUIRITE ELECTROMECANIQUE


MEMOIRES


Alimentation
auxiliaire


CAPTEURS


ACTIONNEURS


ENVIRONNEMENT EXTERIEURE

Systme embarqutypique
Un systme embarqu doit gnralement respecter des
contraintes temporelles fortes (Hard Real Time).
On y trouve enfoui un systme d'exploitation ou un noyau
Temps Rel (Real Time Operating System, RTOS).
"Un systme est dit Temps Rel lorsque l'information
aprs acquisition et traitement reste encore pertinente".
Cela veut dire que dans le cas d'une information arrivant
de faon priodique (interruption), les temps d'acquisition
et de traitement doivent rester infrieurs la priode de
rafrachissement de cette information.
Ne pas mlanger Temps Rel et rapidit de calcul du
systme donc puissance du processeur
Les systmes embarqus et le temps rel
Le fonctionnement temps rel
Les oprations doivent tre faites avec des
chances (deadlines) prcises.
Hard real time: le manquement des chances
provoque une faute
Soft real time: le manquement des chances cause
des dgradations de performances.
La plupart des systmes sont multi-rate: Les
oprations doivent tre gres des vitesses (trs)
diffrentes.
La question dutiliser un systme dexploitation Temps Rel
ou non ne se pose pratiquement plus pour les raisons
suivantes :
Simplifications de lcriture de lapplication embarque.
Portabilit.
volutivit.
Matrise des cots.
Le systme dexploitation peut tre mme maison :
encore dans 50 % des cas !
Quelques exemples :
Linux, RTLinux, Windows CE, COS, PALM OS
Les systmes embarqus et les RTOS
Spcificationsnon fonctionnelles
Beaucoup de systmes sont des systmes
production de masse qui doivent avoir des cot de
fabrication bas
Mmoire limite, puissance du microprocesseur, etc.
La consommation est un facteur critique pour les
systmes fonctionnant sur piles (ou batteries).
Une consommation excessive augmente le cot mme
en cas dalimentation par le secteur.
Equipesde conception
Nombre dingnieurs faible.
Les chances sont contraintes.
6 mois pour la mise sur le march est un dlai
classique.
Des chances sont contraintes (rentre des classes,
concurrence, etc..)
Objectif : intgrer un systme dans un mme composant
(single chip). On parle aussi de systme sur silicium SoC
(System on Chip) ou SoPC (System on Programmable
Chip), (loi empirique de Moore).
Langages de description du matriel pour synthtiser et
tester les circuits numriques. On a ainsi une approche
logicielle pour concevoir du matriel.
Les systmes numriques se sont complexifis et la mise
sur le march est plus rapide ! (notion de Design Reuse et
dIntellectual Property).
Lien entre le matriel et le logiciel
le codesign
Evolution de la conception
1991 1993 1995 1997 1999 2001 2003 2005 2007

quations


RTL

Schmatique


VHDL - VERILOG


Proprit
Intellectuelle


System C !

5 K

10 K

1 M

100 M
Portes
logiques

Le codesign dans la mthodologie de conception dun
systme embarqu est de plus en plus utilis.
Le codesign permet de concevoir en mme temps la fois
le matriel et le logiciel pour une fonctionnalit
implmenter. Cela est maintenant possible avec les niveaux
dintgration offerts dans les circuits logiques
programmables.
Le codesign permet de repousser le plus loin possible dans
la conception du systme les choix matriels faire
contrairement lapproche classique o les choix matriels
sont faits en premier lieu !
Codesign hardware / software
Conception et codesign
Dbut
S
o
f
t
w
a
r
e
H
a
r
d
w
a
r
e
Ralis par des
ingnieurs indpendants
Dbut
S
o
f
t
w
a
r
e
H
a
r
d
w
a
r
e
Ralis par des
ingnieurs indpendants
Dbut
S
o
f
t
w
a
r
e
H
a
r
d
w
a
r
e
Ralis par les
mmes ingnieurs
Dbut
S
o
f
t
w
a
r
e
H
a
r
d
w
a
r
e
Ralis par les
mmes ingnieurs
Conception traditionnelle Codesign (flot concurrent)
Spcifications : liste des fonctionnalits du systme de
faon abstraite.
Modlisation : conceptualisation et affinement des
spcifications produisant un modle du matriel et du
logiciel.
Partitionnement : partage logiciel matriel.
Synthse et optimisation : synthse matrielle et
compilation logicielle.
Validation : co-simulation.
Intgration : rassemblement des diffrents modules.
Tests dintgration : vrification du fonctionnement.
Les tapes dans le Codesign
Amlioration des performances : paralllisme, algorithmes
distribus, architecture spcialise, etc.
Reconfiguration statique ou dynamique en cours de
fonctionnement.
Indpendance vis vis des volutions technologiques des
circuits logiques programmables.
Mise profit des amliorations des outils de conception
fournis par les fabricants de circuits logiques.
programmables : synthse plus efficace, performance
accrue.
Avantages du codesign
Systmes embarqus et microprocesseurs (1)
Microprocesseur.
Microcontrleur : contient les I/O, la mmoire.
Digital signal processor (DSP) : microprocesseur optimis pour
le traitement du signal.
Taille des donnes dans les systmes embarqus : 8-bit, 16-bit,
32-bit.
Alternatives: Field-programmable gate arrays(FPGAs), logique
spcialise, etc.
Les microprocesseurs sont trs efficaces : la mme logique permet
de faire une multitude de fonctions ce qui simplifient la
conception de familles de produits.
Microprocesseur et logique sur-mesure
Les microprocesseurs utilisent plus de logique pour
implmenter une fonction que lquivalent en logique sur-
mesure. Mais ils sont souvent au moins aussi rapides :
Pipelines plusieurs tages.
Conception optimise.
Technologie VLSI rcente.
La logique sur-mesureest adapte aux systmes basse
consommation.
Les microprocesseurs ont des possibilits de contrle de
la consommation (mise en sommeil de certaines parties).
Les techniques de conception logicielle peuvent aider
rduire la consommation.
Microcontrleur et DSP
Acclration de lexcution. Architecture spcifique. Accs rapide aux donnes.
Temps de transfert minimis Contrleur de DMA Quantitimportante de
donnes en entre.
Prise en compte de signaux
analogiques.
Port srie rapide Interface pour Codeur-
Decodeur
Temps de calcul rduit. Multiplieur, etc. Filtres numriques
DSP
Prise en compte matrielle
de capteurs externes.
Convertisseur analogique
numrique
Entres analogiques
Facilitde mise en uvre
logicielle.
Interruption externes avec plusieurs
niveaux de priorits.
Rapiditde prise en compte
dvnements externes.
Facilitde mise en uvre au
niveau de la programmation
des taches.
Sauts conditionnels, instructions de
test au niveau bit, interruption, etc.
Rapiditdexcution de
fonction complexe de
contrle.
Programmation facile.
Priphriques spciaux:
compteurs temporisateurs,
gnrateurs de PWM, etc.
Contrle prcis de moteur et
actionneurs.
facilite linterfaage avec
lextrieur via le rseau, etc.
Port srie: SPI, IC, UART, CAN,
Microware, etc.
Communications sries avec
lextrieur.
Pilotage direct
dactionneurs, etc.
Ports dentres sorties bits Contrle dentres sorties
Microcontrleur
avantages Ressources ncessaires Besoins Type de processeur
But de la conception (systmes embarqus)
Performances : vitesse, chances fonctionnelles.
Fonctionnalits et interface utilisateur.
Cot de fabrication.
Consommation.
Autres caractristiques du cahier des charges (taille
du botier, etc.)
Methodologies de conception
Une procdure est ncessaire pour la conception.
La comprhension de la mthodologie assure que lon ne
va pas passer cotde paramtres importants.
Les compilateurs, les outils daide la conception
logicielle, les outils de CAO, , peuvent tre utiliser pour :
automatiser les tapes mthodologiques,
surveiller et tracerla mthodologie elle-mme.
Niveaux dabstraction
Besoin
spcification
architecture
Composants
Intgration
A chaque niveau dabstraction,
on doit analyser le systme pour
dterminer ses caractristiques
actuelles et lamliorer pour
prendre en compte les dtails
manquants.
Top-downou bottom-up
Top-down:
on part du plus haut niveau dabstraction;
on descendvers le plus dtaill.
Bottom-up:
on part des composants de base et on remontevers
le systme.
Une conception raliste utilise les deux techniques
Challenges en conception de systmes
embarqus
De quoi avons nous besoin en terme de HW ?
Taille du CPU, taille de la mmoire.
Comment respecter les dlais ?
Hardware rapide ou Software intelligent.
Comment minimiser la consommation ?
Mise en sommeil de la logique non utilise, rduction des cycles
daccs la mmoire.
Est ce que cela fonctionne ?
Les spcifications sont elles correctes ?
Est ce que la ralisation couvre les spcifications ?
Comment teste-t-on les caractristiques temps rel ?
Comment teste-t-on en vrai grandeur (donnes relles) ?
Comment travaille ton sur le systme ?
Observabilit, contrlabilit, quelle plateforme de dveloppement
utiliser ?
Expressions des besoins
Une description prcise de ce que veut lutilisateur (client) et de
ce quil espre obtenir
Besoins fonctionnels :
Sorties en fonction des entres et des paramtres.
Besoins non fonctionnels :
temps ncessaire pour calculer la sortie,
taille, poids, etc.,
consommation,
fiabilit,
etc.
Comprendre le besoin du client et savoir aussi lidentifier !
Modle de fonctionnalits
Nom :
Objectifs :
Entres :
Sorties :
Fonctions :
Performances :
Cot de fabrication :
Consommation :
Taille :
Poids :
Exemple : Systme GPS
La carte obtient la
position du GPS, la
base de donnes est
locale pour la carte.
Latitude : 40 13
longitude: 32 19
I-78
S
c
o
t
c
h

R
o
a
d
Besoins pour le systme GPS
Fonctionnalit : Pour lautomobile, il faut montrer les axes principaux et
les repres.
Interface utilisateur :
Au moins 400 x 600 pixels pour lcran.
3 boutons maximum.
Menus droulants.
Performances : La carte doit tre balaye doucement, pas plus de 1
seconde la mise sous tension, calage sur le GPS en moins de 15
secondes.
Cot : prix de vente de 500 (approximativement). 100 de cot pour
les fournitures.
Taille/poids : Doit tenir dans la main.
Consommation : Doit fonctionner 8 heures avec 4 piles type AA.
Modle pour le systme GPS
nom Carte GPS
Objectifs Carte routire GPS
pour conducteur
Entres 1 bouton on/off, 2 de
contrle
Sorties LCD 400 X 600 rtro
clair
Fonctions rcepteur GPS; 3
rsolutions; affichage
lat/lon
Performances Mise jour de lcran
en 0.25 sec
Cot de fabrication 100 (fournitures)
Consommatoin 100 mW
Taille 5cm x 12 cm
Poids 100 g
Spcifications
Une description plus prcise du systme :
ne doit pas identifier une architecture particulire,
donne les entres au dispositif de conception de
larchitecture.
Peut comprendre des lments fonctionnels et non
fonctionnels.
Peut tre excutable ou sous une forme
mathmatique pour preuve formelle.
Spcifications pour le GPS
Doit comprendre :
Ce qui est reu du GPS.
Les donnes de la carte.
Linterface utilisateur.
Les oprations ncessaires pour satisfaire la
demande du client.
Les oprations darrire plan permettant au systme
de continuer fonctionner.
Conception de larchitecture
Quels sont les composants qui satisfont aux
spcifications majeures ?
Composants matriels :
CPUs, priphriques, etc.
Composants logiciels :
Programmes principaux et leurs oprations.
Doit prendre en compte les spcifications fonctionnelles
et non fonctionnelles.
Schma bloc du systme GPS
rcepteur
GPS
Moteur de
recherche
Rendu
visuel
Interface
utilisateur
Donnes
LCD
Architecture matrielle du GPS
Rcepteur
GPS
CPU
I/O
LCD
Mmoire
vido
Mmoire
Architecture logicielle du GPS
position
Recherche
Base de
donnes
Rendu visuel
timer
Interface
utilisateur
pixels
Exempledusystmede contrlede
freinageet de stabilitde la BMW 850i
Anti-lock Brake System (ABS)
Automatic stability control (ASC+T): contrle de la
stabilit
LABS et lASC+T communiquent.
LABS a t introduit en premier ce qui a ncessit de
sinterfacer avec le module ABS existant.
BMW 850i, (suite)
brake
sensor
brake
sensor
brake
sensor
brake
sensor
ABS
hydraulic
pump
Conception des composants matriel et
logiciel
Il faut passer beaucoup de temps de rflexion avant
de commencer coder.
Quelques composants existent, certains peuvent tre
modifis partir dautres systmes, dautres devront
tre crs.
Intgration du systme
Rassembler les composants.
Beaucoup de bugs cette tape !
Avoir un plan dintgration des composants pour
couvrir les bugs rapidement, tester le plus de
fonctionnalits le plus tt possible.
Rsum
Nous sommes entours de systmes embarqus.
La complexit embarque se situe au niveau matriel
et au niveau logiciel.
Les systmes embarqus posent de nombreuses
contraintes en terme de conception :
temps de conception, chances, consommation,
encombrement, autonomie, etc.
Les mthodologies de conception aident grer
le processus de conception.
Les comptences avoirs
microprocesseur, microcontrleur, DSP, mmoires, IO,
FPGA, VDHL,
Codesign,
Programmation en assembleur,
Programmation C, C++, java,
Systmes dexploitations, linux, RTOS,
rseau,
bus.
Connaissance des systmes numriques.
Travailler en quipe avec des ingnieurs dautres disciplines.