Académique Documents
Professionnel Documents
Culture Documents
Calculateurs Temps Réel
Calculateurs Temps Réel
Lotfi BOUSSAID
Département de Génie Électrique
Ecole Nationale d’Ingénieurs de Monastir
LotfiBoussaid@yahoo.fr
2016 - 2017
Evolution Technologique
Au niveau Matériel (Hardware)
Evolution Technologique
Au niveau Matériel (Hardware)
Evolution Technologique
Au niveau Logiciel (Software)
Géolocalisation
Evolution Technologique
Au niveau des applications
Pilotage Automatique
Réalité virtuelle
Evolution Technologique
Au niveau des applications
Localisation géographique,
dépannage en cas de crash
et demande d’urgence
Evolution Technologique
Au niveau des applications
Définitions
Définitions
• Temps réel strict/dur (hard real-time) : le non respect d’une contrainte de temps a des
conséquences graves (humaines, économiques, écologiques) : besoin de garanties
Vol en pilotage
automatique
Définitions
• Temps réel strict/dur (hard real-time) : le non respect d’une contrainte de temps a des
conséquences graves (humaines, économiques, écologiques) : besoin de garanties
Le système sera
temps réel si, et
seulement si, il est
capable de traiter
tous les événements
dans le temps
imparti.
Définitions
Automotive embedded vision
Définitions
Automotive embedded vision - Google’s Self-Driving
La conduite automatique
proposée par GOOGLE
est un exemple parfait de
vision embarquée
combinant des cameras,
des radars et capteurs
ultrasonics avec une
variété de DSP et de
processeurs.
Définitions
• Temps réel souple/mou (soft real-time) : on peut tolérer le non respect occasionnel d’une
contrainte de temps (garanties probabilistes)
Définitions
Un système temps réel est un système réactif devant fournir des sorties logiquement correctes tout en
respectant strictement des contraintes temporelles explicites
Le terme "temps réel" est généralement assimilé à "temps réel dur". Ce sont les systèmes de ce type
qui posent des problèmes spécifiques tant d'analyse que de réalisation et de validation.
Le "temps réel" n'est pas un problème de rapidité intrinsèque. Il suffit de respecter les contraintes de
temps imposées par l'environnement.
La structure embarquée ou détachée du système n'en change pas les principes. Elle n'influence que le
type de solution retenue qui sera spécifique ou standard et plus ou moins réutilisable.
La plupart des systèmes dits "temps réel" comportent à la fois des fonctions temps réel dures et des
fonctions temps réel souples.
Définitions
Mauvaises interprétations de la notion de Temps Réel
Définitions
Le temps de réponse d’un système
Le temps de réponse, ou temps de latence, est le décalage temporel
entre une commande et sa réalisation.
Partie Opérative
Niveau 2 : Capteurs et Actionneurs
La décomposition en fonctions
Cette décomposition fonctionnelle est le résultat d’une analyse méthodologique
mettant en exergue l’aspect fonctionnel.
Système Temps de
Fonction Matériel
d’exploitation réponse
Contrôle
commande Station de Travail Lynx OS, HPUX 10 ms à 100 ms
globale
1 ms à 10 ms
Fonction TR Calculateur TR VxWorks, VRTX
(voire 100 µs)
Prise en compte OS + Gestion des
Calculateur TR 10 µs à 100 µs
Événements interruptions
Composants Machines à états
Arcs Réflexes < 10 µs
spécialisés finis (FSM)
Source : Christian Garnier, Laboratoire Temps Réel ISEP, les systèmes temps réel et l’industrie, Décembre 2005
1. L’Architecture ;
5. Et les Langages.
– Monoprocesseur
– Biprocesseurs et Multiprocesseurs
– Ex: SUN Ultra Sparc 5 – 64 bits, 400 MHz, Multitâches, 2 Mo de cache
interne, Calcul à virgule flottante, Architecture UPA (Ultra Port Architecture
) pour le graphique.
Sun Microsystems
- Système d’exploitation
Unix, LynxOS, HPUX, ..., Windows, XP, CE, XP Embedded,
Linux, OS9, etc.
- C, C++ ;
- JAVA ;
- ADA ;
- LABVIEW ;
- WINDEV ;
- HANDEL-C ;
- DELPHI ;
- Etc.
Filtre passe-bas
Capteur Conditionneur Anti-repliement Échantillonneur CAN
Problématique
CAN et échantillonnage erreurs :
• bruit de quantification
• perte d’informations à l’échantillonnage
Solution
Réglage de la dynamique
Réglage de la fréquence d’échantillonnage
Échantillonneur bloqueur
- Prendre un échantillon de la tension d’entrée
- Maintenir cette valeur stable pendant toute la durée de la conversion.
Principe :
Influence des
constantes de
temps de l’E/B
Échantillonneur bloqueur
Solution 1 :
Temps de charge :
Τcharge = RON C
Temps de décharge :
Τdécharge = Rch C
A t=3xRC Vh=0,95Ve
A t=5xRC Vh=0,99Ve
Échantillonneur bloqueur
Solution 2 :
Série de Fourier
Définition : Soit f une fonction 2π périodique intégrable sur [-π, π], on définit :
1 T /2 1 T
T T/2 0
a 0 f(t) dt f(t) dt
T
2 T /2 2 T
n
a
T T / 2 f(t) cos(nwt) dt
T 0 f(t) cos(nnwt) dt , 1 n
b n 2 T/2 f(t) sin(nt) dt 2 T
T T / 2 0 f(t) sin(nwt) dt, 1 n
T
Exemple 1 :
3 2
Soit un signal d’entrée : e(t ) s cos(nwt ) avec w
n
n 1
T
2 k sin(k / Te )
h(t )
T T k 1 k / Te
cos(kw et )
k
h(t ) p cos(kw t ) avec w 2 / T
k e k e e
k 0
ps
[cos (kw nw)t cos (kw nw)t ]
k n 3
e (t ) e(t ).h(t )
*
m
k n
e k e k
2
k 0 n 1
Exemple 1 :
Si le signal d’entrée e(t)=1 cos(2π103 t) + 2 cos(2π 2 103 t) + 3 cos(2π 3 103 t)
Pas de chevauchement
Chevauchement de spectre
L’échantillonnage provoque la superposition, sur le spectre initial du signal, du même spectre décalé de
fe, 2fe, 3fe,...nfe.
Théorème de Shannon :
(a) signal temporel original S (bleu) et échantillonné Se (rouge), (b) spectres correspondants
(a) signal temporel original S (bleu) et échantillonné Se (rouge), (b) spectres correspondants
(a) signal temporel original S (bleu) et échantillonné Se (rouge), (b) spectres correspondants
Dans la pratique, en studio la fréquence d'échantillonnage peut monter jusqu'à 96 kHz
Résolution : 12 Bits
Conversion : 75 Ksps
Temps de conversion : 12,25µs
Tension de réf. Interne : 4096 mv
Interface série : 3 fils
Compatible : SPI , QSPI et Microwire
Mode : A approximations successives
SHDN \: 1
Utilisation de la tension de référence
interne de 4096 mv
Les Interruptions
Généralités
Généralités (2)
SE
Vue ascendante Gestionnaire de ressources
Généralités (3)
- Exécution des E/S à faible débit (terminaux, imprimantes) ou haut débit (disques, bandes),
- Lancement des outils du système (compilateurs, environnement utilisateur,...) et des outils pour
l'administrateur du système (création de points d'entrée, modification de privilèges,...),
- Réseaux.
Appels Système :
- Interface entre le système d’exploitation et les programmes d’application qui s’exécutent en mode
non privilégié (mode utilisateur)
- Les appels systèmes sont réalisés au moyen d’instructions spécifiques «Traps » ou interruptions
logicielles qui permettent le passage en mode privilégié appelé mode noyau (ou kernel)
Mode noyau :
- Le code et les données utilisés par le SE ne sont accessibles qu’en mode noyau
- Les instructions de modification de la table de segments mémoire ne sont permises qu’en mode noyau
- Les instructions de lecture et d’écriture sur les ports d’entrée/sortie ne sont permises qu’en mode noyau
Application
CALL
Bibliothèque
TRAP Mode utilisateur Mécanisme des Traps
Mode noyau
Système
Matériel
- Mono-utilisateur
N’accepte qu’un seul utilisateur à un moment donné
- Contrôle de processus
Ces systèmes sont principalement utilisés en milieu industriel, ils permettent de réagir en temps
garanti à des événements issus de capteurs pour maintenir la stabilité d’un processus industriel
« Feedback »
- Serveurs de fichiers
Ces systèmes contrôlent de gros ensembles d’informations interrogeables à distance Besoin de temps
de réponse court
- Transactionnel
Ces systèmes contrôlent de grandes bases de données modifiées de façon très fréquente Besoin de
temps de réponse court
- Général
Multi-utilisateurs et multi-tâches
Les Processus
Définition
Un processus est une instance d’un programme en cours d’exécution, il est caractérisé par :
- Son code (texte), ses données, sa pile d’exécution, les valeurs courantes des registres du processeur..
Définition
Un processus est créé par d’autres processus (sauf le premier), il est susceptible d’être :
- Suspendu, redémarré, et de recevoir des signaux traitables de façon asynchrones
Définition
Il existe deux niveaux d’exécution :
- Les processus classiques (lourds) possédant chacun leurs données propres
- Les tâches légères ou (Threads) qui peuvent exister au sein de chaque processus lourd
Les Processus
Notion de processus
La notion de processus constitue un modèle simple et efficace pour représenter l’exécution concurrente de
tâches au sein d’un SE multitâches
Le processeur physique commute entre les processus sous la direction d’un Ordonnanceur
A
B
C
D Temps
Dans les SE à temps partagé, tous les processus progressent dans le temps, mais un seul s’exécutent à la fois
Les Processus
Gestion des processus
Pour la mise en œuvre du modèle des processus, le SE dispose d’une table appelé : Table des processus
Pour chaque processus on trouve :
- Les valeurs de son compteur ordinal, son pointeur de pile, et des autres registres du processeur,
- Son numéro de processus, son état, sa priorité, son vecteur d’interruptions, son occupation mémoire,
- La liste des fichiers ouverts par lui, ..
Les Processus
Le BCP comprend :
Les Processus
Le traitement des interruptions par le système s’effectue en appelant la routine de traitement associée à
chaque type d’interruption, dont l’adresse est stockée dans une table indexée appelée Vecteur
d’Interruptions.
Les Processus
Gestion des interruptions (2) Sauvegarde
du contexte
Programme normal
Déclenchement
de l’interruption Routine
d’interruption
Reprise normale
du programme
Restauration du
du contexte
Les Processus
Communication inter-processus
Certains processus :
- Ont besoin de coopérer nécessité de moyen de communication et de synchronisation
- Ou se trouvent en compétition pour une ressource système, soit à cause de la non partageabilité d’une
ressource, soit que les instructions peuvent provoquer des interblocages.
Lorsque plusieurs processus doivent être exécutés simultanément il faut réaliser un choix pour
ordonnancer dans le temps les processus prêts sur le processeur.
Pour les systèmes de traitement par lots, l’algorithme de traitement est relativement simple Exécution
du programme suivant de la file dés qu’un emplacement mémoire se libère
Les Processus
Les Processus
Les différentes techniques d’ordonnancement
Ordonnancement circulaire : (round robin ou tourniquet) mécanisme d’ordonnancement le plus simple.
Il consiste à attribuer à chaque processus un quantum de temps pendant lequel il a le droit de s’exécuter.
Ordonnancement de priorité : Mécanisme de priorité afin de favoriser certaines classes de processus par
rapport à d’autres en fonction des besoins.
Ordonnancement du plus court d’abord : Ce type d’ordonnancement s’applique lorsqu’on dispose d’un
ensemble de tâches dont on peut connaître la durée à l’avance (ex: transactions journalières bancaires).
Ordonnancement dicté par une politique : Ce type d’ordonnancement permet de garantir à l’utilisateur
une performance annoncé (peut être utilisé pour les systèmes temps réel)
Les Sémaphores
L’idée est d’utiliser une variable entière pour compter le nombre de réveils en attente et d’encapsuler
cette variable dans un objet système manipulable par des appels systèmes spécifiques.
Une des fonctions d'un SE est d'offrir au programmeur un modèle de manipulation des fichiers agréable et
indépendant du matériel utilisé.
- Les appels système permettent de créer des fichiers, de les supprimer, de lire et d'écrire dans un fichier.
- Les fichiers sont regroupés en répertoires arborescents; ils sont accessibles en énonçant leur chemin
d'accès
- Le SE gère également la protection des fichiers.
PWML
Départ: ST
LE
PORTA
PONT H MOTEUR
PWM
Gauche:
µContrôleur
Droite: PONT H MOTEUR
RI
Stop: PWMR
END
PWML PWMR
170/255 170/255
MOT G MOT D
PWML PWMR
170/255 170/255
MOT G MOT D
PWML PWMR
90/255 170/255
MOT G MOT D
PWML PWMR
90/255 170/255
PWML = 0
PWMR = 0
PWML = 170 PWML = 90
ST=0
NO
YES NO
END=0
LE=1
YES NO YES
STOP
PWML = 0 PWM1 = 0;
PWMR = 0 Mais … PWM2 = 0;
la complexitéLes éléments du
modèle utilisé
du programme croît se traduisent
ST=0 directement
trop
NO vite avec le nombre(*PORTA & 0x80);
while
YES
de cas à prendre
LE=1
YES NO
en compte.
if (*PORTA & 0x40) {
PWM2 = 120;
PWMR = 120 PWMR = 90 } else {
PWM2 = 90;
}
Echo Batterie
Emetteur Ultrason
ultrason faible
Température
TIMER PORTB excessive
Référence PWML
Départ: ST atteinte Trop d’événements
LE
PORTA
PONT H MOTEUR
PWM
Gauche: =>
Automate
Droite: µContrôleur trop complexe
PONT H MOTEUR
RI
Stop: PWMR
END Octet Fin de
Émis/reçu conversion
RS232 ADC
Définition
Les systèmes d’exploitation modernes sont basés sur des processeurs, ils doivent assurer :
- Le passage d’une tâche à l’autre est assuré par un ensemble d’algorithmes appelé
Ordonnanceur (Scheduler en anglais).
Contraintes
Les systèmes à contraintes temps réel doivent répondre à trois critères fondamentaux :
1. Le déterminisme logique : les mêmes entrées appliquées au système doivent produire les mêmes
effets.
2. Le déterminisme temporel : une tâche donnée doit obligatoirement être exécutée dans les délais
impartis, on parle d‘échéance.
3. La fiabilité : le système doit être disponible. Cette contrainte est très forte dans le cas d'un système
embarqué car les interventions d'un opérateur sont très difficiles voire même impossibles. Cette
contrainte est indépendante de la notion de temps réel mais la fiabilité du système sera d'autant plus
mise à l'épreuve dans le cas de contraintes dures.
La théorie de l'ordonnancement
C’est une branche de la recherche opérationnelle qui s'intéresse au calcul de dates d'exécution optimales de
tâches.
Un problème d'ordonnancement peut être considéré comme un sous-problème de planification dans lequel
il s'agit de décider de l'exécution opérationnelle des tâches planifiées.
Définition
Un problème d'ordonnancement consiste à organiser dans le temps :
La théorie de l'ordonnancement
Définition
Une tâche est une entité élémentaire localisée dans le temps par une date de début et/ou de fin, dont la
réalisation nécessite une durée, et qui consomme un moyen selon une certaine intensité.
Certains modèles intègrent la notion de date due, une date à laquelle la tâche doit être finie; dans ces
cas, le retard induit une pénalité.
Selon les problèmes, les tâches peuvent être exécutées par morceaux, ou doivent être exécutées sans
interruption ; on parle alors respectivement de problèmes préemptifs et non préemptifs.
Lorsque les tâches ne sont soumises à aucune contrainte de cohérence, elles sont dites indépendantes.
Plusieurs tâches peuvent constituer une activité et plusieurs activités peuvent définir un processus.
La théorie de l'ordonnancement
Les contraintes
Les contraintes expriment des restrictions sur les valeurs que peuvent prendre simultanément les variables
de décision. On distingue :
les contraintes de cohérence technologique, ou contraintes de gammes, qui décrivent des relations
d'ordre entre les différentes tâches ;
les contraintes de disponibilité des ressources qui précisent la nature et la quantité des
moyens disponibles au cours du temps. Toutes ces contraintes peuvent être formalisées sur la
base des distances entre débuts de tâches ou potentiels.
La théorie de l'ordonnancement
Les contraintes
Les contraintes expriment des restrictions sur les valeurs que peuvent prendre simultanément les variables
de décision. On distingue :
les contraintes de cohérence technologique, ou contraintes de gammes, qui décrivent des relations
d'ordre entre les différentes tâches ;
les contraintes de disponibilité des ressources qui précisent la nature et la quantité des
moyens disponibles au cours du temps. Toutes ces contraintes peuvent être formalisées sur la
base des distances entre débuts de tâches ou potentiels.
La théorie de l'ordonnancement
Les Objectifs
Dans la résolution d'un problème d'ordonnancement, on peut choisir entre deux grands types de stratégies,
visant respectivement à l'optimalité des solutions, ou plus simplement à leur admissibilité.
L'approche par optimisation suppose que les solutions candidates à un problème puissent être ordonnées
de manière rationnelle selon un ou plusieurs critères d'évaluation numériques, construits sur la base
d'indicateurs de performances. On cherchera donc à minimiser ou maximiser de tels critères.
- Dormante : la tâche est présente en mémoire mais n’a pas été activée. Elle n’essaye donc pas de
prendre le contrôle du CPU.
- Active (en Exécution) : c’est la tâche qui détient actuellement le contrôle du CPU.
- Prête : la tâche dispose de toutes les ressources nécessaires à son exécution, mais une tâche plus
prioritaire possède pour le moment le contrôle du CPU. Dès que cette dernière le libérera, ce sera la
plus prioritaire de toutes les tâches prêtes qui deviendra la tâche active.
- En attente : une tâche est dans cet état lorsqu’elle requière l’arrivée d’un signal extérieur (libération
d’une ressource, expiration d’un délai,…).
- Interrompue : l’exécution de la tâche a été suspendue par l’arrivée d’un signal d’interruption et le
CPU est en train de traiter cette dernière.
Politique d’ordonnancement
1. C’est un ensemble d’algorithmes utilisés par l’Ordonnanceur pour décider quelle tâche doit
être exécutée à un instant donné.
2. La politique d’un système Multi-Utilisateurs non temps réel est d’allouer à chaque tâche
une portion (quantum) de temps processeur.
3. Une tâche peut être suspendue involontairement par un RTOS ou endormi par lui-même.
Ceci servira pour faire des delay de période fixe ou attendre (Block) la disponibilité d’une
ressource qui est en cours d’utilisation.
4. Une tâche endormi ou bloquée ne peut pas être exécutée et ne peut pas obtenir des
ressources CPU
Changement de contexte
Problématique :
Changement de contexte
Changement de contexte
Changement de contexte
Étape 3 :
- Au début de la routine Le
CPU place le contexte de la
tâche A dans la pile.
- Le noyau garde une copie
des pointeurs de pile de la
tâche A et de la tâche B qui a
été suspendu
Changement de contexte
Étape 4 :
- Après la sauvegarde du contexte de la tâche A un compteur (par
exemple) est incrémenté a causé la tâche B prête à l’exécution.
- La tache B a une priorité plus élevée que la tâche A, le noyau
sélectionnera la tâche B pour lui allouer le temps CPU après la fin
de la routine d’interruption
Changement de contexte
Étape 5 :
- Le contexte de la tâche B doit
être restauré
- Tout d'abord le noyau doit
retrouver le pointeur de pile
de la tâche B de la copie
sauvé avant d’être suspendu
- Le pointeur de pile de la
tâche B est chargé dans la
pile du processeur
- Ainsi, la pile pointe le top du
contexte de la tâche B
Changement de contexte
Étape 6 :
- Le contexte de la tâche B est complètement restauré dans les registres appropriés
Changement de contexte
Étape 7 :
- Le (PC) étant chargé, le CPU reprend la tâche B là ou elle s’est arrêtée avant de passer à
la tâche A
Notion de Préemption
Notion de Préemption
Il convient avant tout de préciser les différences entre Noyau, Exécutif et Système d‘Exploitation
temps réel :
VxWorks - est aujourd'hui l’Exécutif Temps Réel le plus utilisé dans l'industrie (Société Wind
River). Fiable, portable, totalement configurable et supporte plusieurs processeurs (PowerPC, 68k,
ColdFire, 8086, Pentium, ARM, MCORE, ..
QNX - Développé par la société canadienne QNX Software , QNX est un Système Temps Réel de type
UNIX conforme à la norme POSIX
µC/OS - environnements de très petite taille construits autour de microcontrôleurs. Il est disponible sur un
grand nombre de processeurs et peut intégrer des protocoles standards comme TCP/IP (µC/IP) pour
assurer une connectivité IP sur une liaison série par PPP.
Windows CE - Annoncé par Microsoft comme Système d‘Exploitation Embarqué pour les PDAs
eCOS - (Embeddable Configurable Operating System) fut initialement développé par la société Cygnus et
adapté aux solutions à très faible empreinte mémoire et profondément enfouies.
Le but de POSIX est d'obtenir la portabilité des logiciels au niveau de leur code source indépendamment du
matériel et afin de pouvoir migrer d’un système à l’autre moyennant une compilation des sources du
programme.
Le standard POSIX est divisé en plusieurs sous-standards dont les principaux sont les suivants :
-IEEE 1003.1-1990 : POSIX Partie 1 : Interface de programmation (API) système. Ce standard contient la
définition de ces fonctions (Bindings) en langage C.
- IEEE 1003.2-1992 : Interface applicative pour le shell et applications annexes pour les systèmes de type
UNIX.
-IEEE 1003.1b-1993 : Interface de programmation (API) temps réel. Ajout du support de programmation
temps réel au standard précédent. On parle également de POSIX.4.
1. Amélioration du noyau de linux par des patchs préemptifs à temps de latence réduit pour
satisfaire les besoins d’applications temps réel mou.
2. Développement d’un noyau auxiliaire pour les traitements des tâches à temps réel dur
1. RTAI (Real Time Application Interface) Département d'ingénierie aérospatiale (DIAPM) de l'Ecole
polytechnique de Milan (Politecnico di Milano). Il intègre des améliorations et des corrections
concernant en particulier les modes temps réel et la gestion des nombres flottants.
2. µClinux (prononcer « you see linux ») est l'acronyme de Microcontroller Linux. Le projet µClinux
lancé en janvier 1998 est un portage de Linux version 2.0.x originellement sur des processeurs ne
possédant d'unité de gestion mémoire MMU (Memory Management Unit). Il supporte les processeurs
(Motorola 683xx, Motorola ColdFire, i960 d'Intel, ARM7TDMI et NIOS d'Altera. µClinux basé sur le
noyau Linux 2.4.x est maintenant opérationnel.
1. Les concepteurs des systèmes embarqués temps réel doivent maîtriser le comportement et les
performances des parties Soft et Hard
1. Un Scheduler préemptif de base avec quelques appels systèmes valables et du code source
fourni modifiable ne coûte pas cher (~ $1000)
OS9
• Pas de prédominance d'un
système QNX
• système propriétaires :
- coût (Licence) iRMX
- techniques
(adaptation aux
Lynx-OS
besoins)
- stratégie (maîtrise)
Autres produits Š 1%
Réutilisation
- Approche retenue pour limiter les coûts
IP :
- Conception d’un SOC à partir de blocs prédéfinis
Intellectual Properties
Programmable I/O
• 840 Mbps LVDS
Digital Clock Management
• Precise frequency generation and
phase control
• Both on-chip & off-chip clock synchronization
EmbeddedPowerPC
• 300 MHz
• 420 DMIPS
1000
- Prévision de répartition par secteur pour 2004 :
– Communication : 44% (croissance 24% par an) 800
Nb Soc
– Electronique grand public : 28 % (croissance 43% 600 (M)
par an)
400
– Le reste 28 %
200
- Les outils de conception évoluent moins vite
0
que la technologie 1995 2000 2005
Utilisation d’IP
Problématique
Spécification
Partitionnement
Co-synthèse
Co-simulation
Prototypage.
- Le bus Avalon est un bus de chez Altera utilisé pour le processeur embarqué Nios
- Les maîtres et esclaves du bus Avalon interagit ensemble avec une technique d’arbitrage appelé Slave-Side
- L’arbitrage Slave-side détermine lequel des maître gagne l’accès à l’esclave à un évènement ou plusieurs
maîtres tentent d’accéder au même temps à l’esclave.
Bus partagé
1. Master Interface
2. Slave Interface
SoC vs SoPC
• SoC
– Peu évolutif
– Grandes productions
– Fabrication et test long et coûteux
• System on Programmable Chip
– Prototypage rapide sur FPGA
– Composant reconfigurable à volonté
– Moins de portes logiques disponible
– Consommation plus élevée
– Performances moins bonnes
Processeur
Multiplieurs MEM SW ou HW
CPU
Resources Process Process
Matérielles HW HW
disponibles MEM
Resources Process
Matérielles HW
disponibles
Processeur Région
Transmetteurs HW reconfigurable
T1 Une seule
* Temps de reconfiguration T4 T2 T3
** Contraintes Mémoires T9 Partition
T
6 T
5
T
1
*** Contraintes surfaces T8 0
T7 1 T1
1
constraint T
2
HW HW
Firm IP Process Process
Statique
Hard. IP
Soft. IP Resources
HLE RDP HW
programmable Process
disponibles
IP RDT variables
T1
T3 Partition(
T4 T4 T2
T9 1)
Surface
T6 T5 T1
/Latence Graphe de tâche T8 0 Partition(
T41 T43 T7 T1 n)
1
T42 T1
2
Partie Commande
Matériel et Logiciel
Entrées Sorties
Partie Opérative
Capteurs et Actionneurs
Couplage
Partie opérative et procédé
Procédé
Produit traité
T4CK
T5CK
PIC32MX460F512L
5 Timers
Solution 2 : Pont en H
L298
(2A/PH)
ULN2800 (1A)