Vous êtes sur la page 1sur 28

28/01/2013

Un Systme Temps Rel, cest quoi ?


Selon laspect abord, on choisit une dfinition qui sapproche le plus de la problmatique traite :
claude.baron@insa-toulouse.fr

Systmes Temps Rels


Caractrisation dun systme temps rel

systme rapide systme en interaction directe avec un procd physique systme ractif systme qui ne fournit pas de rponse en diffr systme avec un comportement prdictible systme qui travaille sur des donnes fraches systme robuste etc.

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

Caractrisation dun STR Caractrisation systme Dfinition etdun Positionnement fonctionnant en temps rel dun systme temps rel
Les systmes temps rel : dfinitions, exemples Les concepts associs Plusieurs notions de temps rel : soft vs hard real time Lvaluation du respect des dlais Temps rel et systmes embarqus Conception dun STR : tapes du cycle de vie Quelques exemples

Un Systme Temps Rel, cest quoi ?


Un STR se compose d'un systme ou d'une application devant rpondre en un temps fini et spcifi des stimuli gnrs par le monde extrieur. Exemples :
contrleur de vitesse pour voiture, systme de gestion d'un robot d'entreprise, pilotage automatique de TGV, systme de surveillance d'une centrale nuclaire contrleur de machine a laver..

D'une manire gnrale, les STR se caractrisent par les consquences dramatiques qui peuvent survenir lorsque les rsultats obtenus ne satisfont pas certains critres de cohrence logique mais surtout temporelle.
3 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 4

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

28/01/2013

Systmes temps rel : premire approche

Dfinition dun systme temps rel


Il existe une multitude de dfinitions.
Pouget propose : Le temps rel est le pilotage tout instant dun systme volutif dans le temps Elloy se veut plus prcis : Peut tre qualifie de temps rel (ou "temps contraint", ou "ractif") toute application dont le droulement est assujetti lvolution dynamique dun procd extrieur qui lui est connect et dont il doit contrler le comportement .

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

Dfinition dun systme temps rel

Dfinition dun systme temps rel


Nous pouvons dire
quun systme temps rel est un systme qui contrle (ou pilote) un procd physique une vitesse adapte lvolution du procd contrl. Il gnre des donnes en sortie partir des donnes dentre et contrle le comportement du procd auquel il est associ, et cela quelles que soient les conditions dutilisation.

In computer science, real-time computing, or reactive computing, is the study of hardware and software systems that are subject to a "real-time constraint"i.e., operational deadlines from event to system response.
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 7 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 8

28/01/2013

Real time system definition


A real time system may be one where its application can be considered (within context) to be mission critical Ex : anti-lock brakes (ABS)

Consquences de la dfinition
Un STR reoit des vnements manant du procd contrler ; ces vnements peuvent tre priodiques ou non
le systme doit ragir avant un dlai ou une date fixe aucun vnement ne doit tre rat par le systme

The real-time constraint in this system is the time in which the brakes must be released to prevent the wheel from locking

L'important est de respecter l'chance


Ne pas ragir temps (rsultat juste hors dlai) peut tre considr comme une dfaillance catastrophique Un systme Temps Rel est souvent critique et doit souvent tre tolrant aux pannes (mcanismes de tolrance aux dfaillances : rplication, programmation N-version, vrification formelles)

Real-time computations can be said to have failed if they are not completed before their deadline, where their deadline is relative to an event A real-time deadline must be met, regardless of system load
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 9 C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

10

Diffrents types de systmes


Bien qu'il existe une grande varit de systmes informatiques, on peut toutefois choisir la dynamique de rponse comme critre de distinction :
les systmes transformationnels : le temps de rponse importe peu les systmes interactifs (ou en-ligne) : on souhaite une rponse dans un dlai court les systmes temps-rel : toute rponse doit tre obtenue dans un laps de temps court et prdfini

Diffrents types de systmes


Systme transformationnels :
mode de traitement bas sur le train de travaux ordre d'excution indpendant du facteur temps mais dtermin de faon optimiser l'exploitation des ressources (coteuses et prsentes en nombre limit)

Systme transformationnel : activit de calcul : lit ses donnes et ses entres lors du dmarrage, fournit ses sorties, puis meurt

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

11

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

12

28/01/2013

Diffrents types de systmes


Systme interactif (ex. secteur bancaire, rservations places) : Dbut d'excution des programmes conditionn par l'occurrence de requtes mises partir de priphriques (ex. terminaux) Simultanit des transactions entre le calculateur et l'environnement temps de rponse <qqs millisec qqs sec> Equit du service assure par une politique de "temps partag :
le temps de rponse un instant donn ne dpend que de la charge inflige au calculateur cet instant une valeur juge excessive du temps de rponse ne pourra tre considre comme une erreur de fonctionnement.
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 13

Diffrents types de systmes


=> Systme interactif : systme en interaction quasi permanente avec son environnement, y compris aprs l'initialisation du systme la raction du systme est dtermine par les vnements reus et par l'tat courant (fonction des vnements et des ractions passs) le rythme de l'interaction est dtermin par le systme et non par l'environnement

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

14

Diffrents types de systmes


Systme temps-rel : Doit ragir en-ligne et dans le respect de contraintes temporelles des sollicitations mises par un environnement extrieur, en des temps de rponse en relation avec la constante de temps dominante dans cet environnement La notion de promptitude le diffrencie d'un systme transactionnel Real-time programs must execute within strict constraints on response time.
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 15

Diffrents types de systmes


=> Systme temps-rel : systme en interaction permanente avec son environnement la raction du systme est dtermine par les vnements reus et par l'tat courant (fonction des vnements et des ractions passes) le rythme de l'interaction est dtermin par l'environnement et non par le systme. => capacit pouvoir apprhender un flux d'vnements asynchrones issus d'un processus, sans perdre un seul de ces vnements et de traiter chacun d'eux en un temps dtermin.
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 16

28/01/2013

Systmes temps rel ou ractifs


Terminologie "temps-rel" directement lie l aptitude du systme informatique ragir face l'occurrence d'vnements externes asynchrones, avec la contrainte pour les temps de rponse (ou temps de raction) d'tre suffisamment petits vis vis de la vitesse d'volution de ces vnements . C'est d'ailleurs pourquoi ce type de systme est galement qualifi de systme ractif.

Caractrisation dun STR Caractrisation systme Dfinition etdun Positionnement fonctionnant en temps rel dun systme temps rel
Les systmes temps rel : dfinitions, exemples Les concepts associs Plusieurs notions de temps rel : soft vs hard real time Lvaluation du respect des dlais Temps rel et systmes embarqus Conception dun STR Quelques exemples

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

17

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

18

Plusieurs concepts associs la dfinition


Pour parfaire la dfinition prcdente, il convient dajouter deux concepts majeurs, qui se dclinent tous les niveaux de lapplication :
Le concept du JUSTE ET TEMPS Le concept du MME CAUSE MME EFFET

Plusieurs concepts associs la dfinition


Le concept du JUSTE ET TEMPS
Axiome : Lensemble des traitements raliser pour gnrer les sorties est fait correctement dans le temps imparti, partir de donnes dentre valides => respecter les contraintes temporelles de lapplication => travailler avec des donnes cohrentes
spatialement temporellement
toute image de la donne doit tre la mme dans tout le systme toute volution dune donne doit se propager dans le systme dans un temps born connu lavance, de prfrence le plus faible possible

=> respecter la dure de vie de la donne

Le concept du MME CAUSE MME EFFET


Laxiome prcdent se rpte toujours, quelle que soit loccurrence des vnements dans le systme
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 19 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 20

28/01/2013

Caractrisation dun STR Caractrisation systme Dfinition etdun Positionnement fonctionnant en temps rel dun systme temps rel
Les systmes temps rel : dfinitions, exemples Les concepts associs Plusieurs notions de temps rel : soft vs hard real time Lvaluation du respect des dlais Temps rel et systmes embarqus Conception dun STR : architecture Quelques exemples

Plusieurs notions de temps rel


Constat : difficult de raliser des systmes temps rel Essayer de les diffrentier des autres systmes informatiques par la prise en compte de contraintes temps rel dont le respect est aussi important que lexactitude du rsultat. Tentative de dissocier le vrai du faux en utilisant un qualificatif :

Hard Real Time Soft Real Time

Real-time systems, as well as their deadlines, are classified by the consequence of missing a deadline.

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

21

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

22

Plusieurs notions de temps rel


Rappel :

Plusieurs notions de temps rel


Deux types de STR :
rigide (dur) : garantit que les tches critiques finissent temps souple (lche) : moins restrictif; une tche critique est prioritaire sur les autres et conserve cette priorit jusqu' ce qu'elle se termine li la notion de criticit du systme
Thus, the goal of a hard real-time system is to ensure that all deadlines are met, but for soft real-time systems the goal becomes meeting a certain subset of deadlines in order to optimize some application specific criteria.

Non Temps Rel

seule lexactitude de la rponse est importante temps de rponse : prcision de lhorloge taille de lOS non importante

A non-real-time system is one for which there is no deadline, even if fast response or high performance is desired or preferred

Temps rel
Une application TR est une application o la correction des rsultats dpend des chances et de la prdictibilit de lapplication comme des rsultats des calculs. A system is said to be real-time if the total correctness of an operation depends not only upon its logical correctness, but also upon the time in which it is performed.
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 23

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

24

28/01/2013

Notion de criticit
Cette dpendance aux contraintes temporelles peut parfois prendre un caractre critique
rappel : les STR durs sont ceux pour lesquels le non respect des contrainte temporelles entranent des dfaillances du systme qui peuvent avoir des consquences catastrophiques

Notion de criticit
5 niveaux de criticit :
A : Un dfaut du systme ou sous-systme tudi peut provoquer un problme catastrophique - Scurit du vol ou atterrissage compromis Crash de l'avion B : Un dfaut du systme ou sous-systme tudi peut provoquer un problme majeur entranant des dgts srieux voire la mort de quelques occupants C : Un dfaut du systme ou sous-systme tudi peut provoquer un problme srieux entranant un dysfonctionnement des quipements vitaux de l'appareil D : Un dfaut du systme ou sous-systme tudi peut provoquer un problme pouvant perturber la scurit du vol E : Un dfaut du systme ou sous-systme tudi peut provoquer un problme sans effet sur la scurit du vol
25 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 26

Criticit gravit de la situation qui rsulterait d'un manquement au respect des spcifications temporelles
Le degr de criticit est fonction des consquences des dviations par rapport un comportement nominal Ces consquences peuvent concerner la sret des personnes et des biens, la scurit, l'accomplissement des missions, la rentabilit conomique.

Mission critical refers to any factor of a system (equipment, process, procedure, software, etc.) whose failure will result in the failure of business operations.
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel

Notion de criticit
Objectifs atteindre Plus le niveau de criticit est proche du niveau A, plus le nombre d'objectifs tenir est lev Niveau E : Le dveloppement logiciel n'est soumis aucune contrainte particulire. Niveau D : Le logiciel doit tre document ; la liste de documents fournir est fixe par la norme. Pralablement au dveloppement, des plans doivent tre tablis pour fixer les mthodes de dveloppement, de vrification, de gestion de configuration, d'assurance qualit. Il faut assurer et vrifier la traabilit entre les spcifications du systme, les spcifications de haut niveau du logiciel, et les vrifications. Tout ce qui est spcifi doit tre formellement vrifi : la couverture fonctionnelle doit tre assure. Les documents doivent aussi tre formellement vrifis. Le logiciel doit tre gr en configuration, par exemple toutes les volutions du code source doivent tre justifies Un service Qualit indpendant doit assurer le respect de la norme en inspectant les sorties du cycle de vie du logiciel. Niveau C : en plus des contraintes du niveau D : Des rgles de dveloppement doivent tre fixes au pralable (sur les phases de spcification, conception et codage) Les contraintes de traabilit et de vrification s'appliquent galement aux phases de conception et de codage du logiciel. Les exigences de bas niveau (ou exigences de conception) doivent tre formellement vrifies. La couverture structurelle, ou couverture de code, doit tre vrifie et analyse : toutes les instructions du code doivent avoir t excutes et testes, tous les carts doivent tre justifis. Ces contraintes amnent souvent devoir passer des tests unitaires. Niveau B : en plus des contraintes du niveau C : La couverture de code au niveau "dcision" est requise. Les activits de dveloppement et de vrification doivent tre confies des quipes indpendantes. Niveau A : en plus des contraintes du niveau B : La couverture de code au niveau "condition"/"dcision" est requise.

Notion de criticit
Documents fournir Les processus lis au dveloppement de logiciels embarqus aronautiques soumis aux normes ED-12B / DO-178B s'accompagnent de l'dition de plusieurs documents : Avant le dveloppement, phase de planification : Plan des aspects logiciels relatifs la certification : en particulier ce document prcise le niveau de criticit retenu, et par quels moyens on prvoit de remplir les objectifs des normes ED-12B / DO-178B Plan de dveloppement logiciel Plan de vrification du logiciel Plan de gestion de configuration du logiciel Plan d'assurance qualit du logiciel Rgles de spcifications du logiciel Rgles de conception du logiciel Rgles de codage du logiciel Concernant le processus de dveloppement proprement dit : Spcifications des exigences du logiciel Description de la conception du logiciel Concernant le processus de vrification : Cas et procdures de vrification du logiciel Rsultats de la vrification du logiciel : Rsultats de tests unitaires Rsultats de tests d'intgration Rsultats de tests Analyse de la couverture de code Revue de chaque document du logiciel Concernant le processus de gestion de configuration : Index de la configuration du logiciel Index de l'environnement du cycle de vie du logiciel Concernant le processus d'assurance qualit : Enregistrements relatifs la qualit Compte-rendu de revue de conformit Rsum des travaux raliss
27 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 28

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

28/01/2013

Notion de criticit
Niveau de Criticit

Pour aller plus loin Caractrisation dun systme Mcanismes en de tolrance aux fautes fonctionnant temps rel
Exemple : la tolrance aux fautes sur les Airbus

5 niveaux DAL (Design Assurance Level) tablis par les tudes de sret de fonctionnement fixent le DAL pour le matriel et le logiciel conformment aux normes de scurit (SAE ARP4754 "Certification considerations for HighlyIntegrated and Complex Aicraft Systems") ou directives de l'avionneur (ABD100, ABD200,...) le DAL d'un sous-systme peut tre diffrent du niveau systme la condition que le DAL du systme soit atteint par une architecture matrielle/logicielle adquate (redondance, tolrance aux fautes)
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 29 C. Baron

Prcautions dutilisation des COTS

INSA Dpartement GEI

Introduction aux systmes temps rel

30

Notion de criticit
Deux notions de criticit face aux manquements d'une chance :
Contraintes temps rel strictes : le dpassement d'une chance est catastrophique Contrainte temps rel relatives : le dpassement d'une chance peut tre tolr (dans une certaine mesure) => Temps rel Dur / Temps rel Lche ! => dans le cas des systme Temps Rel Dur, on cherchera obtenir un comportement prvisible, dterministe et fiable

Le temps rel : classification des STR


Temps Rel trs contraint ( hard )
lexactitude reste importante mais le temps de rponse est primordial La validit du calcul dcroit rapidement aprs une certaine chance Une contrainte de temps est dite dure si une lgre violation des contraintes a pour consquence une variation significative de la valeur calcule Lincapacit respecter un temps de rponse rend le systme dfaillant taille du noyau: entre 5 et 100 Ko

=> utilisation de techniques mathmatiques (ordonnancement, valuation des pires cas)

=> dans le cas des systmes Temps Rel Lche, on cherchera minimiser la probabilit de rater une chance plusieurs fois de suite...
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 31 C. Baron

Ex : installation nuclaire, quipement mdical, contrle arien


INSA Dpartement GEI Introduction aux systmes temps rel 32

28/01/2013

Le temps rel : classification des STR


Temps rel dur : garantit que les tches critiques finissent temps Consquences :
tous les dlais du systme doivent tre limits dicte les fonctions disponibles :
mmoire auxiliaire limite ou manquante, donnes stockes dans la mmoire court terme ou dans la ROM (mmoire morte, non volatile) majorit des caractristiques volues absentes (eg mmoire virtuelle) : elles tendent loigner l'utilisateur du matriel et cette sparation cre des incertitudes, comme la quantit de temps qu'une opration emploiera.

Le temps rel : classification des STR


Realtime applications can be classified as either hard or soft realtime.

Hard real-time?
Hard realtime applications require a response to events within a predetermined amount of time for the application to function properly. If a hard realtime application fails to meet specified deadlines, the application fails. While many hard realtime applications require high-speed responses, the granularity of the timing is not the central issue in a hard realtime application. Ex : missile guidance control system where a late response to a needed correction leads to disaster.
33 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 34

Ne peut tre mlang avec un systme multitche classique

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

Le temps rel : classification des STR


Hard Real Time Systems
used when it is imperative that an event is reacted to within a strict deadline. implicitly implies that not reacting in a certain interval of time would cause great loss in some manner (damaging the surroundings physically or threatening human lives) Ex : a car engine control system is a hard real-time system because a delayed signal may cause engine failure or damage

Le temps rel : classification des STR


Hard Real Time Systems
typically found interacting at a low level with physical hardware, in Embedded systems ex: early video game systems had hard real-time requirements because of the nature of the graphics and timing hardware.

Other examples of hard real-time embedded systems include medical systems such as heart pacemakers and industrial process controllers
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 35 C. Baron

Atari 2600

Cinematronics vector graphics

INSA Dpartement GEI

Introduction aux systmes temps rel

36

28/01/2013

Le temps rel : classification des STR


Hard Real Time Systems
In the context of multitasking systems the scheduling policy is normally priority driven (preemptive schedulers) Other scheduling algorithms include Earliest Deadline First, which, ignoring the overhead of context switching, is sufficient for system loads of less than 100%. New scheduling systems, such as an Adaptive Partition Scheduler, assist in managing large systems with a mixture of hard real-time and non real-time applications.
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 37

Le temps rel : classification des STR

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

38

Le temps rel : classification des STR


Temps Rel contraint ( firm )
une faible probabilit de manquer une chance peut tre tolre ( firm real time)
Ex : autorisation des cartes bancaires

Le temps rel : classification des STR


Temps Rel peu contraint ( soft )
lexactitude est plus importante que le temps de rponse La performance est dgrade mais nempche pas le systme de rpondre dans les dlais Souvent le cas des STR (seule une partie est TR hard) La conception peut tre plus flexible, comprhensible et maintenable taille du noyau : entre 100Ko et 1M octets Ex : tlphonie, systmes avec oprateur humain

Infrequent deadline misses are tolerable, but may degrade the system's quality of service. The usefulness of a result is zero after its deadline. The usefulness of a result degrades after its deadline, thereby degrading the system's quality of service
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 39 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 40

10

28/01/2013

Le temps rel : classification des STR


Temps rel souple (lche) : une tche critique est prioritaire sur les autres et conserve cette priorit jusqu' ce qu'elle se termine
les dlais du noyau doivent aussi tre borns une tche TR ne peut rester indfiniment en attente pour que le noyau l'excute objectif atteindre, facile mlanger avec d'autres systmes utilit plus limite que les STR rigides :
cause de l'absence de contrle d'chances, ils ne peuvent tre utiliss pour le contrle industriel et la robotique. cependant ils sont utiles pour le multimdia, la ralit virtuelle et certains projets scientifiques (exploration sous-marine)

Le temps rel : classification des STR


Soft real-time ?
Soft realtime applications do not fail if a deadline is missed Some soft realtime applications can process large amounts of data or require a very fast response time, but the key issue is whether or not meeting timing constraints is a condition for success Ex : airline reservation system where an occasional delay is tolerable, but unwanted

ont besoin des caractristiques volues des OS qui ne peuvent tre supportes par les STR rigides. cause des utilisations largies de la fonctionnalit TR souple, on constate le dveloppement d "extensions TR" pour les OS classiques (cf Unix, Linux, )
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 41 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 42

Le temps rel : classification des STR

Hard vs. Soft Real Time Systems

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

43

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

44

11

28/01/2013

Hard vs. Soft Real Time Systems


Temps Rel Dur versus Temps Rel Mou
Caractristique Temps de Rponse Peak-load performance* Contrle du rythme Sret Dimension des fichiers de donnes Type de redondance Intgrit des donnes Dtection d'erreurs Temps Rel Dur Exigence stricte Prdictible Environnement Souvent critique Petite/moyenne Active Court terme Autonome Temps Rel Mou Souhaite Dgrade Ordinateur Non critique grande Check-point recovery Long terme Assist par l'utilisateur

Caractrisation dun STR Caractrisation systme Dfinition etdun Positionnement fonctionnant en temps rel dun systme temps rel
Les systmes temps rel : dfinitions, exemples Les concepts associs Plusieurs notions de temps rel : soft vs hard real time Lvaluation du respect des dlais Temps rel et systmes embarqus Conception dun STR : architecture Quelques exemples

* The maximum instantaneous load or the maximum average load over a designated interval of time
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 45 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 46

Evaluation du respect des dlais


Prouver thoriquement que les limites temporelles ne seront jamais dpasses quelle que soit la situation pour un systme temps rel prtendu strict vrification appele "test d'acceptabilit" ou "analyse de faisabilit" fait appel la thorie de l'ordonnancement dpend de l'ordonnanceur utilis et des caractristiques des tches du systme :
ex : pour un systme souple, on pourra se contenter de mesures statistiques obtenues sur un prototype

Evaluation du respect des dlais


Condition de charge
Pour tout systme de n tches, la condition suivante est ncessaire mais pas suffisante sa faisabilit :

Une valeur suprieure 1 signifierait que le systme ncessite plus de temps d'excution que le processeur ne peut en fournir

Avec Ci le temps de calcul de la tche n i et Ti sa priode

Temps de rponse dans le cas le plus dfavorable (worst case)

la plus longue dure entre l'activation de cette tche et son instant de terminaison parmi tous les scnarios possibles d'excution du systme Une tche est faisable si son temps de rponse dans le pire des cas est infrieur ou gal son chance Un systme est faisable si toutes les tches qui le composent sont faisables
INSA Dpartement GEI Introduction aux systmes temps rel 48

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

47

C. Baron

12

28/01/2013

Caractrisation dun STR Caractrisation systme Dfinition etdun Positionnement fonctionnant en temps rel dun systme temps rel
Les systmes temps rel : dfinitions, exemples Les concepts associs Plusieurs notions de temps rel : soft vs hard real time Lvaluation du respect des dlais Temps rel et systmes embarqus Conception dun STR Quelques exemples

Le temps rel et lembarqu


systme embarqu : systme informatis spcialis qui constitue une partie intgrante dun systme plus large ou une machine. combinaison de logiciel et matriel, avec des capacits fixes ou programmables, spcialement conu pour un type dapplication. composante primordiale dun systme (i.e. un avion, une voiture) dont lobjectif est de commander, contrler et superviser ce systme. systme enfoui (embedded system)
49 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 50

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

Le temps rel et lembarqu


caractriss par :

Le temps rel et lembarqu


Systme embarqu : dispositif informatique intgr au dispositif physique dont il assure le contrle et (ou) la commande et dont il partage les contraintes d'environnement (spatial, automobile...) caractris par
l'environnement dans lequel il fonctionne (temprature, humidit, radiations, vibrations, chocs, taille, poids) la performance qu'on attend de lui ses interfaces avec l'environnement
51 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 52

- Encombrement mmoire (mmoire limite, pas de disque)


- Consommation dnergie (batterie : point faible des SE) - Poids et volume - Autonomie - Mobilit - Communication (! la communication affecte la batterie) - Contraintes de temps rel - Contraintes de scurit - Cot de produits en relation avec le secteur cible

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

13

28/01/2013

Embedded system
An embedded system is a computer system designed to perform one or a few dedicated functions, often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. Embedded systems control many devices in common use today. The key characteristic is being dedicated to handle a particular task; This task may require very powerful processors. ex : air traffic control systems may usefully be viewed as embedded, even though they involve mainframe computers and dedicated regional and national networks between airports and radar sites (each radar probably includes one or more embedded systems of its own). Since the embedded system is dedicated to specific tasks, design engineers can optimize it to reduce the size and cost of the product and increase the reliability and performance.

Le temps rel et lembarqu

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

53

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

54

Le temps rel et lembarqu


Caractristique essentielle d'un systme embarqu : forte interaction entre le matriel informatique et son instrumentation (capteurs et actionneurs d'origine mcanique, lectromcanique (lectrovanne) ou lectronique, chantillonneurs, convertisseurs... ) Fiabilit et performance de linstrumentation doivent tre pris en considration lors de la conception globale du systme (dfinition de modes de fonctionnement dgrad ?..)

Systmes embarqus en avionique


nouveaux concepts d'architecture avionique modulaire intgre (IMA) o initialement utilise dans les avions de chasse o base sur des logiciels COTS o permet de partager des ressources de calcul communes o regroupe les logiciels applicatifs

Architecture A380 = IME (Integrated Modular Electronics) (technologie Avionics Full Duplex switch Ethernet )

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

55

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

56

14

28/01/2013

Evolution du logiciel embarqu


A380 30 millions lignes de code
A330/340

Evolution du logiciel embarqu

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

57

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

58

Embarqu : impratifs spcifiques


criticit : les systmes embarqus sont souvent critiques, et les systmes critiques sont presque toujours embarqus ractivit : interagir avec lenvironnement une vitesse impose par celui-ci induit des impratifs de temps de rponse => l'informatique embarque est souvent base sur un systme temps rel autonomie : remplir la mission pendant de longues priodes sans intervention humaine intervention humaine impossible raction humaine trop lente ou insuffisamment fiable robustesse, scurit et fiabilit : environnement souvent hostile, pour des raisons physiques (chocs, variations de temprature, impact d'ions lourds, ...) ou humaines (malveillance) => la scurit (rsistance aux malveillances) et la fiabilit (continuit de service) sont souvent rattaches la problmatique des SE contraintes non fonctionnelles (occupation mmoire, consommation d'nergie, ...)
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 59

Le temps rel et lembarqu

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

60

15

28/01/2013

Notion annexe : la certificabilit


Systme certifiable
concerne gnralement des systmes auTemps Rel trs contraint (applications critiques) caractristique non lie aux performances mais au processus de dveloppement La norme DO-178C (Software considerations in airborne
systems and equipment certification)

Pour aller plus loin Caractrisation dun systme fonctionnant en temps rel
Cours systemics

fixe les conditions de scurit applicables aux logiciels critiques de l'avionique dans l'aviation commerciale et l'aviation gnrale prcise les contraintes de dveloppement lies l'obtention de la certification d'un logiciel d'avionique

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

61

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

62

Caractrisation dun STR Caractrisation dun systme dun systme temps rel fonctionnant en temps rel
Dfinition et Positionnement

STR de contrle/commande : exemple


Systme contrl (environnement) chars Vanne Dtecteur de niveau haut H
U.C.

information

Les systmes temps rel : dfinitions, exemples Les concepts associs Plusieurs notions de temps rel : soft vs hard real time Lvaluation du respect des dlais Temps rel et systmes embarqus Conception dun STR :
Mission Architecture fonctionnelle Architecture organique Implantation Exemple : contrle des gouvernes A320
INSA Dpartement GEI Introduction aux systmes temps rel 63

vnement L Capteur de niveau

Systme de contrle mesure

(ordinateur de maintenance et interface HM)

Ltat de l'environnement doit imprativement tre cohrent avec celui peru par la partie contrleuse Les informations dcrivant l'environnement doivent :
tre reues frquence rgulire par les tches de scrutation afin d'assurer la cohrence entre le systme contrleur et l'environnement, tre traites dans un temps donn, de sorte qu'elles restent cohrentes avec lvolution de l'environnement, tre propages temps afin de ne pas pnaliser les tches dpendant de la tche de scrutation.
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 64

Quelques exemples
C. Baron

16

28/01/2013

Schma gnral dun STR : exemple


nature et complexit de l'application, on dcompose le systme temps-rel en :
le systme contrl le systme de contrle
Systme informatique de contrle temps rel
actionneurs actuateurs

Dveloppement dun STR

capteurs

PROCEDE

Mission

Environnement

Systme contrl = environnement (procd) quip d'une instrumentation qui ralise l'interface avec le systme de contrle. Systme de contrle = lments matriels (microprocesseurs) + lments logiciels dont la conjonction permet un traitement automatique des donnes
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 65 C. Baron

Architecture gnrale : fonctionnelle et organique

Choix dimplantation : OS, langage

INSA Dpartement GEI

Introduction aux systmes temps rel

66

Mission
Ensemble de fonctionnalits qui doivent se drouler
sur le systme complet (systme contrler + systme info) en respectant des performances en tenant compte
de contraintes denvironnement de contraintes de ralisation (masse, volume, consommation, qualit des logiciels, rutilisation de lexistant, ) des exigences de fiabilit, de tolrance aux fautes, dexploitation (cf. cahier des charges)

Mission

Exemple : commande de vol d'un avion de combat


mission : stabiliser un avion naturellement instable
calcul des lois de commandes (calcul des ordres de gouvernes) asservissement des gouvernes

formaliser les besoins du client et de les valider :


recenser tous les vnements ( signaux d'interruption) et tats (mesures) qui traduisent l'volution du comportement du procd

assujetti la dynamique de l'avion : boucle de contrle de dure = 1ms entres = tat et assiette de l'avion + ordres pilote sorties = ordres de gouvernes + alarmes indispensable : l'avion est incontrlable sans ce systme
Haut degr de tolrance aux pannes systme rparti (plusieurs calculateurs relis par un rseau constitu de bus de terrain)
Introduction aux systmes temps rel

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

67

C. Baron

INSA Dpartement GEI

68

17

28/01/2013

Dveloppement dun STR

Architecture fonctionnelle
Fonctionnement gnral : boucle infinie
Tant que TOUJOURS faire Acquisition des entres (donnes capteurs, mesures) Calcul des ordres envoyer au procd Emission des ordres Fin tant que

Mission
Description et expression des contraintes temps rel Reprsentation simultane de lvolution logique et

Mais, deux modes de fonctionnement :


1. fonctionnement cyclique (time driven ou systme "synchrone" (mais pas le mme "synchrone" que les " langages synchrones") 2. fonctionnement vnementiel (event driven) => fonctionnement mixte : base de traitements priodiques et apriodiques (dclenchs sur vnements)

Architecture gnrale : Prdiction et estimation des temps de rponse fonctionnelle et organique


Slection de larchitecture, du matriel et du logiciel Le matriel conditionne les cots de production Le logiciel conditionne les cots de dveloppement Choix dimplantation Choix ::OS, OS,langage langage Compromis et quilibre matriel-logiciel

temporelle du systme

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

69

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

70

Architecture fonctionnelle
1. Fonctionnement Cyclique

Architecture fonctionnelle
2. Fonctionnement Evnementiel

scrutation d'une mmoire d'entre priodiquement (polling)


=> chantillonnage des entres sur l'horloge du systme => activation du systme chaque top d'horloge
A chaque top d'horloge faire Lecture de la mmoire des entres Calcul des ordres envoyer au procd mission des ordres Fin

activation du systme chaque vnement (notion d'interruption)


A chaque interruption faire Lecture de l'information arrive Activation du traitement correspondant mission des ordres issus de ce traitement Fin

Mais : systme peu "ractif" si l'environnement produit des informations des frquences diffrentes => oblige prvoir toutes les ractions du systme dans la mme boucle : problme de performance => ou oblige imbriquer des boucles de frquences multiples : difficults de ralisation, lisibilit du code, volution
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 71

Mais : Que faire si une interruption survient alors que le systme est en train de traiter une interruption prcdente ? => notion de priorit des interruptions => notion de "tche" associe une ou plusieurs interruptions => mcanisme de premption et de reprise de tche => gestion de l'excution concurrente des tches (ordonnancement) => Un systme temps rel est souvent un systme multitche incluant un gestionnaire de tches (Ordonnanceur)
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 72

18

28/01/2013

Architecture organique en couches


3. Contrle commande de lensemble. Effectue lensemble des traitements :
de supervision : interface avec lutilisateur de contrle commande : gestion des entressorties des boucles dasservissements et/ou des arcs rflexes pour ceux qui ne sont pas traites par les capteurs actionneurs intelligents

Deux axes de communication privilgis


Laxe vertical permet la transmission des ordres ainsi que la remonte des informations de contrle commande et des donnes enregistrer. Laxe horizontal supporte la communication inhrente aux traitements de synchronisation entre les diffrents lments constitutifs de lapplication, ainsi que la communication entre les systmes adjacents.
73 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 74

2.

Peuvent tre

Partie oprative : ensemble des capteurs et actionneurs formant linterface entre le procd et la partie commande.
lmentaires (relais, ...) ou intelligents (camra, ...) : assurer le traitement des boucles dasservissement et/ou les arcs rflexes

1. Procd quil faut contrler

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

Problmes darchitecture
Pour supporter un logiciel temps-rel, larchitecture (matriel + OS) doit tre prdictible : temps dexcution des instructions changement de contexte oprations avec la mmoire traitement des interruptions Implications Les mmoires cache et les processeurs superscalaires sont vits La tolrance aux fautes est supportes dans le matriel (self-checking, voting and monitoring) Support pour des communications rapides et prdictibles (e.g. pas de Ethernet, ou alors amlior)
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 75

Solutions darchitecture
La mise en oeuvre dapplication temps rel passe gnralement par lutilisation de systmes dexploitation temps rel, et de langages de programmation synchrones*. Choix dun OS Choix dun langage de programmation
* Un langage synchrone est optimis pour la programmation de systmes ractifs (souvent interrompus et devant rpondre dans des dlais courts). Les applications, de plus en plus nombreuses, se situent beaucoup dans le domaine de lembarqu.
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 76

19

28/01/2013

Implementation
The needs of real-time software are often addressed in the context of real-time operating systems, and synchronous programming languages*, which provide frameworks on which to build real-time application software.

Dveloppement dun STR

Mission

*A synchronous programming language is a computer programming language optimized for programming reactive systems (systems that are often interrupted and must respond quickly). Many such systems are also called realtime systems, and are found often in embedded uses. The term 'reactive' is chosen to avoid ambiguities that occur sometimes when using the term 'realtime'. They are of growing importance.
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 77 C. Baron

Architecture gnrale : fonctionnelle et organique

Choix dimplantation Choix ::OS, OS,langage langage

INSA Dpartement GEI

Introduction aux systmes temps rel

78

Quels choix pour le concepteur ?


1. Architecture matrielle : au niveau systme et composant
doit prendre en compte tous les types de contrainte, y compris des contraintes de distance physique ou de poids chaque composant doit se charger de ses entres / sorties, de son interface et des moyens dinterconnexion

(4.) Choix dun OS?


Un OS TR s'utilisera de prfrence un OS non TR dans le cas d'exigences imprieuses de temps de rponse Un OS TR possde des contraintes de temps fixes et bien dfinies Le traitement doit tre effectu dans les contraintes dfinies sinon le systme tombera en panne Deux grandes catgories d'O.S. temps rel :
=> les OS Temps Rel d'origine (Tornado, QNX, )
offre une gestion fine des priorits offrent des primitives systme rapides, en temps born (gestion des interruptions, des smaphores) pas de mmoire virtuelle, mais verrouillage de pages en mmoire centrale minimisation de l' "overhead" (le temps pris par le systme pour s'excuter et se grer lui-mme) => la solution au Temps Rel Dur
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 80

2. Modle de communication: modle interne de communication entre processus dun composant et modle de communication entre composants.
plusieurs solutions : envoi de messages, rendez-vous, choix du support physique: time triggered (1553, Arinc429, TTP), temps rel (CAN, AFDX), classique (Ethernet, Wifi)

3. Technologie des calculateurs : PC, terminal, processeur, SOC, 4. Operating system et ordonnancement : operating system temps rel (VxWorks, PikeOS, Arinc 653,), micro kernel, pas OS 5. Formalismes et langages daide au dveloppement: programmation
la main (C, Ada,), langages semi formel de haut niveau (AADL, UML), langages et formalismes formels de haut niveau (SCADE, Lustre, SDL, automates temporiss)
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 79

20

28/01/2013

(5.) Choix dun langage


Quels critres pour le choix de langage de programmation de systmes temps rel ?

C. Baron

(5.) Choix dun langage


ADA (ADA95) :
Standard international large diffusion portabilit et rutilisabilit aises qualit des Ateliers Logiciel prennit abstraction face la cible et aux excutifs temps rel simplicit de programmation, matrise des temps d'excution (est-il possible de prdire ces temps) modularit du dveloppement et du programme qualit du code gnr (correction et performance) => concept offert :
typage fort, programmation objet... programmation multitche, synchronisation par rendez-vous et smaphore, gestion des exceptions
Introduction aux systmes temps rel 82

Standard international large diffusion portabilit et rutilisabilit aises qualit des Ateliers Logiciel associs (outils de test, d'analyse, de gestion de configuration) prennit (20 30 ans par exemple dans l'avionique) abstraction face la cible et aux excutifs temps rel simplicit de programmation, notamment pour la programmation de tches ou processus communicants matrise des temps d'excution (est-il possible de prdire ces temps) modularit du dveloppement et du programme qualit du code gnr (correction et performance du code gnr par les compilateurs)
INSA Dpartement GEI Introduction aux systmes temps rel 81

? ? ?

C. Baron

INSA Dpartement GEI

(5.) Choix dun langage


C (usage gnral) associ un O.S. Temps Rel :
Standard international large diffusion portabilit et rutilisabilit aises qualit des Ateliers Logiciel prennit abstraction face la cible et aux excutifs temps rel simplicit de programmation matrise des temps d'excution (est-il possible de prdire ces temps) modularit du dveloppement et du programme qualit du code gnr (correction et performance)
Intrt
rapidit du codage et du code compatible Unix

(5.) Choix dun langage


Les langages synchrones :
Standard international large diffusion portabilit et rutilisabilit aises qualit des Ateliers Logiciel prennit abstraction face la cible et aux excutifs temps rel simplicit de programmation matrise des temps d'excution (est-il possible de prdire ces temps) modularit du dveloppement et du programme qualit du code gnr
Intrt

? ? ? ? ?

Problmes
peut tre utilis comme un assembleur => peu lisible, peu certifiable
83 C. Baron

dterminisme simplicit preuves formelles compilation correcte en C (et donc rapidit d'excution)
Introduction aux systmes temps rel

Problmes
langages trop simples (pas d'algorithmique) excution centralise en une seule boucle
84

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

INSA Dpartement GEI

21

28/01/2013

Choix : synthse
Plusieurs voies :
programmation associe un O.S. / programmation sans O.S. smantique synchrone / smantique asynchrone
Smantique synchrone (Lustre, Esterel)
dures des actions considres "nulles" (ngligeables devant la dynamique de l'environnement) rduction de la concurrence des tches en un programme squentiel dterminisme et simplicit mais excution centralise en une seule boucle possibilit de vrifier formellement le comportement du systme
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel

Dveloppement dun STR

Smantique asynchrone (Ada)


plusieurs tches concurrentes entrelacement de ces tches synchronisation par rendezvous et smaphore risque de non dterminisme risque de complexit du comportement

Mission

Architecture gnrale : fonctionnelle et organique

Choix dimplantation Choix ::OS, OS,langage langage

85

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

86

Mise en uvre : exemple

Mise en uvre : exemple


Spcification dtaille de la mission
=> l'ensemble des exigences que le systme doit satisfaire
le systme doit traduire en ordres de dflection des gouvernes les ordres de pilotage venant du pilote ou de pilote automatique (facteur de charge) Le systme doit maintenir l'avion dans son domaine de vol quelles que soient les commandes du pilote ou du pilote automatique Le systme doit tre dterministe (fonctionnellement et temporellement) ... Compte tenu de la dynamique de l'avion, les ailerons et la gouverne de direction doivent tre asservis une priode minimale de 10ms Compte tenu de la dynamique de l'avion, la gouverne de profondeur doit tre asservie une priode minimale de 30ms ... La perte de contrle la fois des ailerons et des spoilers est catastrophique (taux de panne de 10-9) La perte de contrle de la profondeur est catastrophique (taux de panne de 10-9) La perte de contrle des spoilers, des ailerons, de la direction et de la profondeur ne doit pas tre cause par une panne unique
87 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 88

systme de contrle des gouvernes A320


C. Baron INSA Dpartement GEI Introduction aux systmes temps rel

22

28/01/2013

Mise en uvre : exemple


Conception gnrale
=> l'architecture matrielle du systme Choix de conception : systme ralis en informatique 9 calculateurs
2 calculateurs redondants pour les becs et les volets (SFCC1 et 2) 2 calculateurs redondants pour la direction (FAC1 et 2) 3 calculateurs redondants pour les spoilers, la profondeur et le trim (SEC1, 2 et 3) 2 calculateurs redondants pour les ailerons, la profondeur et le trim (ELAC1 et 2), suppls en cas de panne par les calculateurs des spoilers (SEC1, 2 et 3) chaque calculateur doit tre "fail-silent" chaque calculateur doit tre caractris par un taux de panne infrieur ou gal 10-3 panne par heure de fonctionnement ...

Mise en uvre

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

89

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

90

Mise en uvre : exemple


Communication entre systmes repartis

Mise en uvre : exemple


conception gnrale (suite)
Choix de conception : chaque calculateur est de type COM - MON

NSS (Network Server System) : serveur de systme en rseau colonne vertbrale de l'architecture rseau de l'A380 une partie ddie au domaine avionique lautre contient les informations et documents relatifs aux oprations de vol connecte au monde extrieur (change scuris de
donnes montantes et descendantes, plans de vols et aroports, documentation technique numrique, systme de divertissement de bord IFE et connexions sans fil)
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 91 C. Baron

deux parties COM et MOM fonctionnellement identiques mais ralises diffremment comparaisons des sorties des deux parties o si accord, alors mission des sorties vers l'extrieur o si dsaccord, alors le calculateur est isol de son environnement (plus aucune sortie)

inputs

Calculat. - COM

interrupt.

outputs

Calculat. - MON

comparateur

INSA Dpartement GEI

Introduction aux systmes temps rel

92

23

28/01/2013

Mise en uvre : exemple


conception gnrale (suite)
Choix de conception :
Dans chaque calculateur : identification des tches des tches de calcul des ordres de dflexion de gouverne (lois de pilotage) des tches d'asservissement des gouverne (lois d'asservissements) une tche de surveillance et consolidation des entres des tches de logique d'engagement

Mise en uvre : exemple


conception gnrale (suite)
Choix de conception :
Calculateurs SEC1, 2 et 3
une tche de calcul des ordres de dflexion du spoiler X de priode = 40 ms une tche de calcul des ordres de dflexion de la profondeur de priode = 40 ms ... une tche d'asservissement du spoiler X de priode = 10 ms une tche d'asservissement de la profondeur de priode = 20 ms ... une tche de surveillance et consolidation des entres de priode = 10 ms une tche de logique d'engagement de la tche de calcul des ordres de dflexion du spoiler X de priode = 120 ms une tche de logique d'engagement de la tche d'asservissement du spoiler X de priode = 80 ms
Logique engagt Loi asserv Gi Surveillance des entres Logique engagt Loi pilot Gi Loi asserv Gi Loi pilot Gi
Introduction aux systmes temps rel 94

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

93

C. Baron

INSA Dpartement GEI

Mise en uvre : exemple


conception dtaille
Choix de conception : Choix dun langage : chaque tche sera code en LUSTRE Choix dun OS : choix d'un ordonnancement statique (cyclique) => dcoupage du temps en tranche de 10 ms et allocation (statiques) des tches dans ces tranches les tches de priodes 10 ms sont excutes dans toutes les tanches les tches de priodes 20 ms sont excutes dans une tranche sur deux => seule IT prise en compte = top d'horloge (toutes les 10 ms) => l'ordonnancement statique sera cod en C etc. => pas d'OS temps rel

Mise en uvre : autres exemples


Exemple :
systme des commandes de vol Airbus :
- dcomposition du systme en plusieurs tches cycliques atomiques - programmation des tches en Lustre et d'une bibliothque d'oprateurs en assembleur - ralisation " la main" d'un squenceur en C => pas d'O.S. => systme "time driven"

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

95

C. Baron

INSA Dpartement GEI

Architecture logicielle (tche) d'un calculateur voie COM ou MON

Introduction aux systmes temps rel

96

24

28/01/2013

Mise en uvre : autres exemples


Exemple :
systme de reconfiguration du rseau lectrique (partie non critique) Airbus
dcomposition du systme en plusieurs tches cycliques non atomiques programmation en ADA et en Lustre utilisation d'un O.S. avec une politique d'ordonnancement la RMA

Mise en uvre : autres exemples

Exemple :
Calculateur de mission Rafale
dcomposition du systme en plusieurs tches cycliques non atomiques programmation en ADA, C++, Esterel utilisation d'un O.S. avec une politique d'ordonnancement la RMA

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

97

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

98

Caractrisation dun STR Caractrisation systme Dfinition etdun Positionnement fonctionnant en temps rel dun systme temps rel
Les systmes temps rel : dfinitions, exemples Les concepts associs Plusieurs notions de temps rel : soft vs hard real time Lvaluation du respect des dlais Temps rel et systmes embarqus Conception dun STR Quelques exemples

Exemples tous domaines confondus

Robotique mdicale
C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 99 C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 100

25

28/01/2013

Diversification des systmes temps rel


La taille et la nature des systmes temps-rel sont trs divers...

Quelques exemples
Ex 1. asservissement par contrle numrique
capteur procd actionneur
rsultat u(t)

Les plus grands (point de vue gographique) : systmes de contrle tlmtrique (secteurs lectricit, ptrole, transport ferroviaire) commande et contrle de sites loigns partir d'une unique salle de supervision Plus petits (en taille) mais plus complexes (nature des lois de commande), les systmes de contrle de missile ou de navigation arienne se diffrencient des prcdents :

mesure y(t)

Process

A/D

yk

soit e(t) = r(t) y(t)


rfrence r(t)

A/D

rk

Loi de contrle calcul

uk

D/A

u(t) va dpendre de 3 termes :


un terme proportionnel e(t) un terme proportionnel l'intgrale de e(t) un terme proportionnel la drive de e(t) on approxime l'intgrale par la mthode du trapze on approxime la drive pour l'intervalle [(k-1)T, kT ] par (ek-ek-1) / T
Introduction aux systmes temps rel 102

ordre de grandeur des temps de rponse (milliseconde radar, heure contrle de ractions chimiques) criticit des fonctions qu'ils remplissent dans leur environnement

soit T la priode d'chantillonnage du signal


C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 101

alors : uk = uk-1 + ek + ek-1 + ek-2


INSA Dpartement GEI

C. Baron

Quelques exemples

Quelques exemples
Ex. contrle numrique
Rgulation ou asservissement simple

pour programmer la boucle :


crer un timer de priode T chaque interruption du timer faire les conversions analogique-numrique de y et r calculer u faire la conversion numrique-analogique de u fin de la boucle

le choix de T est important il peut tre souhaitable de pouvoir le modifier concepts mis en jeu

gestion du temps gestion des interruptions interaction avec l'utilisateur

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

103

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

104

26

28/01/2013

Quelques exemples
Ex2. contrle, supervision, pilotage

Quelques exemples (4)


Ex 3. contrleur de vol

tous les 1/180 s faire


lecture/validation des capteurs slectionns chaque 6 cycles (30 Hz) : tches avionique lecture claviers, slection mode normalisation des donnes, transformation des coordonnes mise jour des rfrences de trajectoire chaque 6 cycles (30 Hz) : calculs loi de contrle phase 2 pour la drive loi de contrle phase 2 du roulis loi de contrle phase 2 du travers chaque 2 cycles (90 Hz) : en utilidant les rsultats de 2 cycles loi de contrle phase 1 pour la drive loi de contrle phase 1 du roulis et coordination des 2 axes calcul de la loi de contrle globale sortie des commandes pour les actionneurs auto-test
Introduction aux systmes temps rel 106

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

105

C. Baron

INSA Dpartement GEI

Quelques exemples (4)


Ex 3. contrleur de vol

Quelques exemples
Ex4. contrle arien

rponses commandes

tous les 1/180 s faire


lecture/validation des capteurs slectionns chaque 6 cycles (30 Hz) : tches avionique lecture claviers, slection mode normalisation des donnes, transformation des coordonnes mise jour des rfrences de trajectoire chaque 6 cycles (30 Hz) : calculs loi de contrle phase 2 pour la drive loi de contrle phase 2 du roulis loi de contrle phase 2 du travers chaque 2 cycles (90 Hz) : en utilidant les rsultats de 2 cycles loi de contrle phase 1 pour la drive loi de contrle phase 1 du roulis et coordination modle cyclique facile implmenter des 2 de axes difficile le faire voluer calcul de la loi de contrle globale trs difficile actionneurs mettre en uvre quand le sortie des commandes pour les systme contrler se complexifie un peu auto-test
Introduction aux systmes temps rel 107

hirarchie des contrles


contrleur de trafic arien gestionnaire de vol contrleur de vol

donnes locales (mto...) calculateur navigation calculateur

contrleur de traffic arien

calculs complexes (optimisation) fiabilit respect des chances temporelles

gestionnaire de vol

calculateur

contrleur de vol

donnes locales de vol


C. Baron INSA Dpartement GEI Introduction aux systmes temps rel 108

C. Baron

INSA Dpartement GEI

27

28/01/2013

Quelques exemples
Ex5. contrleur de trafic arien

Quelques exemples
Ex6. navigation arienne

CPU

CPU

CPU

base de donnes des lments de vol

rseau de communication

rseau de communication processeur de visualisation processeur de surveillance des trajectoires

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

109

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

110

Quelques exemples
Ex7. contrle d'un groupe d'ascenseurs

Et encore beaucoup dautres exemples

Beaucoup d'autres systmes ont des contraintes temporelles

4 ascenseurs dans la cage d'escalier d'un mme btiment, desservant les mmes tages deux boutons d'appel par palier, pour monter ou descendre 1 bouton par tage dans chaque ascenseur partage optimum des ressources

bases de donnes contrle de vols salles de march multimdia compression/dcompression transmission

contrle des "priphriques" (portes palires, indicateurs le modle du gnrateur cyclique ne fonctionne plus sonores et visuels, etc...) avec activation de tches par vnements contrleur centralis
dcentralisation de tches sur des processeurs annexes systme multi-processeur et multi-tches synchronisation et communication entre les tches modle asynchrone

par exemple, un ascenseur en marche s'arrtera un tage o l'appel a t demand si et seulement si il va dans la bonne direction quand il passera l'tage concern et si il n'est pas en limite de surcharge recherche de l'quilibrage du service entre les diffrents ascenseurs

Parmi la multitude dexemples, il convient de distinguer


ceux qui utilisent rellement des systmes temps rel de ceux qui y ressemblent

Ex :

La gestion dune salle de march, avec tout le traitement des donnes boursires, ne fait ainsi pas appel de vritables systmes temps rel, car on attend du systme quil fournisse des informations justes, mais dans un dlai qualifi dau mieux Par contre, le systme de pilotage automatique du mtro parisien de la ligne 14 (Mtor) assure le contrle complet de lensemble des mtros prsents sur la ligne.
Introduction aux systmes temps rel 112

C. Baron

INSA Dpartement GEI

Introduction aux systmes temps rel

111

C. Baron

INSA Dpartement GEI

28