Systèmes Embarqués Hétérogènes
MCA Mohamed FEREDJ
Master 2 --- RSD ---
République Algérienne Démocratique et Populaire
Université des Sciences et de la Technologie Houari Boumediene
Faculté d’Électronique et d’InformatiqueLaboratoire de Recherche en Intelligence Artificielle
1
Systèmes Personnels Systèmes Collectifs
+ 95% de CPU
Principaux axes d’explosion du marché
Baisse des coûts des processeurs et l’augmentation des performances.
Digitalisation: Équipements analogiques numériques, programmables.
Positionnement du Marché des Systèmes Embarqués
Introduction
2
Définitions & Concepts (1)
Dispositif matériel comportant des parties logicielles.
Utilisé pour contrôler et agir sur son environnement.
Observe les variations de son environnement grâce à
des capteurs et agit sur lui grâce à des actionneurs
Varie de simple contrôleur de lave vaisselle au système
complexe de guidage de missiles.
SystèmeEmbarqué
Environnement Contrôlé
Capteurs Actionneurs
Acquisition Réponses
ON/OFF
Régulateurde vitesse
Vitesse
Accélérer
Ralentir
V Cible
Paramètre
C’est quoi un système embarqué
3
Définitions & Concepts (2)
Microphone embarqué avec la sonde Mars Surveyor 98Stimulateur cardiaque
4
Travaux Scientifiques Définitions & Concepts (2)
Système hétérogène
Sous systèmes
Communications
+ Système à concevoir
2/ Construction du modèle du système.
3/ Validation à priori σ ╞ (ε1 /\ ε2) ou
1/ Décomposition & spécification
4/ Implémentation +
11001100110100101110
Co
rrection
Étapes de conception
5/ Validation à posteriori
+Apparition du problème d’hétérogénéité:1/ Lors de la spécification des comportements.2/ Lors de la construction du modèle du système.
5
Définitions & Concepts (3)
Domaines techniques Hétérogénéité Modèles de Calcul (MoC)
• Chaque domaine technique obéit à un ensemble de lois physiques. Ces lois sont dites lois
d’interaction, qui gouvernent les interactions entre les composants du système.
Ces lois sont appelées : « Modèles de Calcul (Model of Computation) – MoC »
• Exemples de MoCs généralement utilisés:
- CT (Continuous Time) : Système à dynamique continue.
- DE (Discrete Events) : Réseaux de communication, circuit
digital
- FSM (Finite State Machines) : Systèmes transitant par
plusieurs états
- SDF (Synchronous Data Flow) : Traitement du signal
- SR (Synchronous Reactive) : Systèmes réactifs, logique de
contrôle
6
IHM
Exemple d’Hétérogénéité : Téléphone cellulaire multimédia 3G
Acquisitionimage
AcquisitionSon
Compression et décompression son
Compression et décompression Images vidéos
Interfaces
Contrôle et Accès réseaumultiple
Radio
Micro-Onde
Amplification Charge et décharge
InterfaceHommeMachine
Définitions & Concepts (4)
7
Construction du modèle du système
une mise en communication des composants
obéissants à des MoCs différents.
Problème posé par la coexistence de plusieurs MoCs
Sémantiques différentes:
- Protocoles de communication différents
- Formats des données différents. Comment faire communiquer des composants hétérogènes?
Utiliser les approches hétérogènes Existantes:
Approche Amorphe
Approche Hiérarchique
Approche Non Hiérarchique
Approche Composant Domaine Polymorphe
Problématique & Solutions (1)
8
Approche hétérogène amorphe
Elle permet la coexistence des MoCs au même niveau.
Composants obéissants aux MoCs différents peuvent communiquer directement car:
ils incorporent les caractéristiques des MoCs.
Elle ne concentre que sur un nombre réduit de MoCs:
+ Temps Continu & Temps Discret pour les syst mixant le signal analogique et le signal discret.
+ CT et FSM pour les syst hybrides.
Puisque le nombre de MoCs est connu à l’avance, elle fait leur union pour avoir la conjonction entre
eux.
Exemple d’environnements basés sur cette approche: VHDL-AMS et Simulink.
Avantages
Permet l’intégration complète des MoCs
Pas de frontières entre MoCs.
Permet l’utilisation des boucles
hétérogènes.
Désavantages
Pas nécessairement de séparation claire entre flot de données & flot de contrôle Évolution et validation difficiles.
Pas de possibilité d’ajouter de nouveaux MoCs.
Problématique & Solutions(2)
9
Structure le système en un ensemble de niveaux
hiérarchiques.
Approche hétérogène hiérarchique (1)
Il faut changer de niveau hiérarchique pour passer
d’un MoC à un autre.
Les changements de MoCs ne peuvent s’opérer qu’à la frontière des
niveaux hiérarchiques.
Chaque niveau hiérarchique
ne contient que les composants obéissant au même MoC.
DE
DE
CT
FSM
Les niveaux hiérarchiques sont imbriqués l’un dans l’autre.
Exemple d’environnements basés sur cette approche:
Ptolemy II, POLIS, DYMOLA, MODELICA, SystemC, SpecC, OMOLA.
Problématique & Solutions(3)
10
DE
modèle
voitu
re
contrôleur
A CE
FSMD
détente explosion
admission compression
RTOS
tâches
CT
moteur corpsvoitu
re
Exemple d’Hétérogénéité Hiérarchique
Conducteur
Corps dela voiture
contrôleur Réseau
Capteurmoteur
Air
Car
bura
nt
Etin
celle
s
A
D
E
C
Moteur
Couple
Capteurs
- Dans chaque couche, le MoC est bien défini. - L'interface entre les couches est prise en compte par les concepteurs de plate-formes.
Problématique & Solutions(4)
11
Avantages Ens. de MoC ouvert Possibilité d’ajout de
nouveaux MoCs.
2 MoCs au plus sont en contact
Limiter la complexité de l’interface entre
MoCs.
La hiérarchie permet
de maîtriser la complexité des systèmes
d’abstraire un réseau de composants
obéissant au même MoC dans un seul
composant composite.
de raffiner un composant en décrivant son
comportement à l’aide d’un MoC différent.
Désavantages
Approche hétérogène hiérarchique (2)
Introduction de niveaux hiérarchiques
artificiels créés uniquement pour changer de
MoC.
Les composants ayant des entrées et des
sorties qui obéissent à des MoCs différents ne
sont pas autorisés dans les modèles.
Le passage des données et du contrôle entre
les MoCs est effectué de manière implicite
pas d’intervention des concepteurs
Problématique & Solutions(4)
12
Approche Hétérogène Non Hiérarchique« Gestion de l’hétérogénéité entre composant»
Elle permet de faire coexister des MoCs au même
niveau
MoC1
Elle repose sur l’utilisation de HIC (Composant à Interface
Hétérogène) et Modèle d’Exécution Hétérogène.
MoC2
Système original
Système plat
MoC1 MoC2
Changement de sémantique - Conversion du protocole - transformation format de donnés
Modèle d’exécution hétérogène
MoC1 MoC2
Sous système1 Sous système2
- Partitionnement du système en sous systèmes homogènes isolement des MoCs.- Projection du HIC sur les sous systèmes qui l’utilisent.- Délégation du calcul du comportement des sous systèmes à leurs MoCs.- Ordonnancement des sous systèmes.
- Permet l’utilisation des composants
possédant des E/S hétérogènes.- Permet l’utilisation de plusieurs MoCs au
même niveau hiérarchique.- Permet d’expliciter le passage des données
entre les MoCs.
Avantages
- La projection du HIC augmente le nombre
de composants utilisés par le système.
- Pas de boucles hétérogènes.
Désavantages
HIC
Problématique & Solutions(5)
13
Composant Domaine Polymorphe
Le Composant Domaine Polymorphe (CDP) :
1/ Capable de s’adapter aux différentes sémantiques des environnements
2/ Garantir un comportement interne suivant la sémantique de spécification.
Domaine CT
Domaine SDF
Domaine DE
Composant domaine-polymorphe
Problématique & Solutions(6)
14
Couches du CDP
Au niveau abstrait, le CDP est composé de 4 couches :
- Couche Noyau.
- Couche Conservateur.
- Couche frontière.
- Couche Adaptateur.
Problématique & Solutions(7)
15
Exemple : Mélange de SDF et DE
Avec le modèle du système utilisant le CDP
1- CDP est un acteur spécifique à DE
2- Il est toujours possible d’activer le noyau NB,
en utilisant le mode SDF Relaxé
Avec le modèle du système utilisant l’app.
hiérarchique
1- CC apparaît comme un bloc DE sans retard.
2- Il n’est pas toujours possible d’activer l’acteur B.
A NB
Modèle du système utilisant le CDP
C
A
Modèle du système utilisant l’approche hiérarchique
CCC
B
DESDF
DE
SDF
A CB
Système Réel
DE DESDF
Exemples
16
Atelier de production automatisé (proposé par FZI: Forschungszentrum Informatik de Karlsruhe)
Zones Critiques
Pièce métallique
Exemple de Conception basée sur CDP et App. Hétérogène Hiérarchique
Exemples
17
Conception de l’atelier sous Ptolemy II
Acteur composite
CDP représentantControllerFB
Acteur composite représentant la partie opérationnelle du FB
CDP représentantle Contrôleur
principal de l’atelier
Acteur composite représentantun dispositifde l’atelier
Acteur composite représentant une
pièce
CDP représentant un capteur
Exemples
18