Vous êtes sur la page 1sur 28

Systèmes Embarqués

ASPECT MATÉRIEL
Introduction

2020 - 2021 Céline Azar 1


 Contexte

 Un peu d’histoire

 Définition

 Solutions architecturales embarquées

 Design: Caractéristiques et Défis

 Organisation du cours

2020 - 2021 Céline Azar 2


 Présent et Futur
– Un ordinateur
• Est embarqué dans n’importe quel appareil
• Avec des capacités de communication

– Communication et calcul: Partout et à chaque instant

 Exemple: Avions
– Cabine et pilote
• Chaises équipées d’audio/vidéo
• Système de ventilation
• Système de gestion du vol équipé de capteurs (localisation, température, altitude,
vitesse, orientation, etc…)
• Système autopilote (ailes, moteurs, freins, etc…)

– Principales préoccupations
• Fiabilité
• Sécurité
• Comportement temps-réel

2020 - 2021 Céline Azar 3


 Le microprocesseur est l’aboutissement de progrès
technologiques tant dans le domaine mécanique, informatique et
électronique
 Quelques dates
– 1690: Pascal invente la machine à calculer entièrement mécanique
(addition et soustraction)

– 1800: Jacquart invente le métier à tisser avec cartes perforées

4
 Quelques dates
– 1810: Invention de l’orgue de barbarie (succession de cartes perforées)

– 1946: Premier ordinateur à tubes à vide.


Grande dissipation: 150 Kw, problème de rendement et de fiabilité

– 1948: Progrès de la physique quantique avec la découverte de l’effet


transistor

5
 Quelques dates
– 1958: Développement du premier circuit intégré (4 à 5 transistors par
puce)

– 1964: Ordinateur à transistors (à base de circuits TTL: 50 transistors dans


une même puce)

– 1970: Naissance du premier microprocesseur 4 bits avec 1000 transistors


sur puce

6
 Quelques dates

– 1975: Naissance du microprocesseur Motorola 6800 (8 bits)

– 1980: Apparition du microprocesseur 16 bits avec 50000 transistors sur la


puce

– 1984: Apparition du microprocesseur 32 bits avec un million de transistors


sur la puce

– 1994: Apparition du Pentium avec 3.5 millions de transistors

2020 - 2021 Céline Azar 7


 Un système embarqué
– Est typiquement réactif
• Interagit constamment avec son environnement
– En attente de données
– Effectue du calcul
– Génère des sorties
– Transite à un nouvel état
Programme

Données en Données en
Unité de calcul
entrée sortie

Actions

2020 - 2021 Céline Azar 8


 Les données en entrée
– Peuvent être d’origines diverses
• Internes: Données sauvegardées dans la mémoire, données de
routage, etc…
• Externes: Information en provenance de capteurs (température,
images, etc…)

 Les données en sortie


– Elles représentent le résultat obtenu suite au traitement
effectué sur les données en entrée

 Actions
– Elles sont destinées:
• Au système informatique lui-même (actions internes)
• Au processus industriel commandé (marche, arrêt, commande de
vanne, de moteur, etc…)
2020 - 2021 Céline Azar 9
SOLUTIONS ARCHITECTURALES
EMBARQUÉES

2020 - 2021 Céline Azar 10


 Deux différentes méthodes

Logiciel implémenté Matérielle


sur un processeur

2020 - 2021 Céline Azar 11


 Caractéristiques
– Exécute les instructions séquentiellement
– Peu importe la difficulté du calcul
• Subdivisé en sous-opérations
• Opération élémentaire = instruction
– Différents jeux d’instructions
• Nombre d’instructions, complexité des instructions
– Flexibilité
• Implémentation de n’importe quel algorithme
• Changement du comportement du système embarqué en
changeant le programme exécuté par le processeur
• La partie matérielle reste intacte

2020 - 2021 Céline Azar 12


 Applications
– Plateforme générique pour divers genres d’applications
– Cortex A-72
• Smartphones (jeux, encodage/décodage video)
• Serveurs
• Etc…

 Exemples
– Atmel: famille AVR
– IBM: PowerPC 601
– ARM: famille Cortex M, famille Cortex A

2020 - 2021 Céline Azar 13


 Caractéristiques
– Application Specific Integrated Circuit
– Chaque bloc est bien défini
• Fonctionnalité, entrées/sorties, performance requise
– Fonctions du système divisées en sous-fonctions
• Chaque sous-fonction est implémentée par un bloc

 Objectifs
– Minimiser le nombre de ressources matérielles tout en
répondant à la performance requise
– Faire un design ‘’propre’’: bien disséquer le système afin
d’en faciliter la vérification
2020 - 2021 Céline Azar 14
 Processeur
– Implémentation temporelle
• Réalisée sur des architectures dites Software (SW)
• Faible nombre de ressources réutilisées dans le temps
• Solution optimale en terme de flexibilité
• Baisse des performances

 ASIC
– Implémentation spatiale
• Réalisée sur des architectures dites Hardware (HW)
• Chaque opérateur existe en un point déterminé de l’espace, avec des
opérandes directement câblés
• Chemin de données précis
• Aucun mécanisme assurant la flexibilité de l’architecture

2020 - 2021 Céline Azar 15


 Architectures reconfigurables
– Mixer les implémentations spatiales et temporelles
– Définition
• Une architecture est qualifiée de reconfigurable dès lors qu’elle dispose d’un
support lui permettant de s’adapter aux traitements qui lui sont assignés
 FPGA
– Field Programmable Gate Arrays
– Logique reconfigurable
• Blocs interconnectés pour construire un circuit complexe
• Connections à configurer avant l’exécution, et suivant les besoins de
l’application
• Changements au niveau matériel
– Nécessité de reconfigurer le matériel pour chaque application
– Flexibilité limitée, aux dépens de la performance et de la
consommation d’énergie
– Design parallèle. Ex: Boucle for
2020 - 2021 Céline Azar 16
 Schéma

Blocs connectés entre


eux par une matrice
de routage
reconfigurable

 Applications
– Applications ayant un coût calculatoire élevé
• Traitement d’image, analyse de données

 Exemples
– Xilinx (Virtex, Artix) , Altera (Stratix, Cyclone), Lattice
Semiconductor
2020 - 2021 Céline Azar 17
 Trois types d’architectures
– Les processeurs: nécessitent autant de reconfigurations
que d’étapes de calcul (reconfiguration dynamique)

– Les FPGA: Une seule phase de reconfiguration suivie du


traitement (reconfiguration statique)

– Les ASIC: Aucune reconfiguration possible. La distribution


des données est spécifiée au moment de la fabrication

 Conclusion
– Flexibilité vs Efficacité Energétique
– Flexibilité vs Performance
2020 - 2021 Céline Azar 18
- Aucune reconfiguration possible
- Meilleure efficacité énergétique
ASIC - Coût de fabrication très élevé
Performances

- Reconfiguration possible des chemins


de données
- Utilisation possible: co-processeurs
(accélérer un traitement critique)
- Pénalité énergétique due au réseau
Coût d’interconnections
FPGA

Processeur

- Eléments statiquement connectés Flexibilité


- Large domaine d’applications
- Faible efficacité énergétique
- Peu performants pour les calculs intensifs
2020 - 2021 mais plutôt adaptés aux calculs irréguliers 19
DESIGN: CARACTÉRISTIQUES
ET DÉFIS

2020 - 2021 Céline Azar 20


 Système Embarqué
– Conçu pour une application définie
– Doit répondre aux besoins de l’application
– Besoins => caractéristiques du système

 Caractéristiques générales
– Fiabilité
– Efficacité
– Contraintes temps réel

2020 - 2021 Céline Azar 21


– Utilisateurs comptent de manière sûre sur le système

– Exemples
• Avions
• Centrales nucléaires
• Système de freinage dans une voiture

– Caractéristique de la plus grande importance


• Système directement connecté à l’environnement
• Impact immédiat sur l’environnement

– Attributs
• En anglais: dependable, reliable
• Disponible
• Maintenable
• Sûr
• Garanti, sécurisé

– Y penser durant la phase de conception, et pas ultérieurement!


2020 - 2021 Céline Azar 22
– Nombre de ressources restreint

– Plusieurs niveaux
• Energie
• Espace mémoire
• Coût matériel

– Efficacité énergétique
• Quantité de travail effectué par le système étant donné l’énergie
consommée
• Exemple pour un processeur: nombre d’instructions par Joule
• Plus les composants sont spécifiques à l’application, plus
l’architecture est efficace
– Processeurs => les moins efficaces
– ASICs => les plus efficaces
• Eviter les inefficacités à l’exécution!
2020 - 2021 Céline Azar 23
– Espace mémoire
• Taille du code la plus réduite possible

– Apparence physique
• Système le plus petit possible

– Coût matériel
• Le plus réduit possible
• Nombre minimal de composants

2020 - 2021 Céline Azar 24


– Si les contraintes temps-réel ne sont pas respectées
• Solution de faible qualité
• Conséquences assez graves
• Manque de fiabilité

2020 - 2021 Céline Azar 25


ORGANISATION DU COURS

2020 - 2021 Céline Azar 26


 Organisation
– Cours de 32h
– Divisé en 2 parties
• Aspect matériel
• Aspect logiciel

– Evaluation
• Aspect matériel: Projet
• Aspect logiciel: Examen final

2020 - 2021 Céline Azar 27


Systèmes Embarqués

ASPECT MATÉRIEL
Introduction

2020 - 2021 Céline Azar 28

Vous aimerez peut-être aussi