PDFprof.com Search Engine



CEG4566/CSI4541 – Conception de systèmes temps réel SIGE

PDF
Images
List Docs
:

CEG4566/CSI4541 – Conception de systèmes temps réel SIGE
Techniques marketing et statistiques appliquées à l'e-business
INSTALLATION D'UN SYSTEME DE CLIMATISATION A EAU
Étude expérimentale modélisation et optimisation d'un procédé de
Modélisation et analyse d'une machine à absorption/compression
Conception d'un contrôleur de température d'unpdf
école de technologie supérieure
Exercices et problèmes de statistique et probabilités
La santé vient en mangeant et en bougeant !
La santé en mangeant et en bougeant
Chaine d'instrumentation météorologique : du composant au logiciel
Next PDF List

1CEG4566/CSI4531 - SIGE - Hiver 2013RNMCEG4566/CSI4541 - Conception de systèmes temps réelSIGE - U.

Ottawa - Hiver 2013Chapitre II - Structure des systèmes en temps réel3CEG4566/CSI4531 - SIGE - Hiver 2013RNM?Couche physique (niveau 0): circuits logiques qui représentent le fondement matériel de l"ordinateur.?Couche microprogrammée (niveau 1): l"architecture de la couche microprogrammée constitue l"architecture de base de la machine (micro-architectureou micromachine).

La programmation au niveau 1 est souvent complexe (contraintes temporelles, particularités des composants logiques, synchronisation, décomposition d"instructions machine en microinstructions, etc ), souvent le microprogramme est écrit en ROM.?Couche machine conventionnelle ou traditionnelle (niveau 2): souvent c"est l"architecture du microprocesseur (registres internes, modes d"adressage, types d"instructions, etc ), ça évite au programmeur d"aller toucher à la couche microprogrammée.????Couche système d"exploitation (niveau 3): de la même façon qu"un interpréteur tournant au niveau 1 exécute des programmes de niveau 2, un interpréteur tournant au niveau 2 peut exécuter des programmes écrits en langage de niveau 3.

Cet interpréteur est appelésystèmes d"exploitationce qui a conduit à appeler "couche système d"exploitation" le niveau 3.?Couche langage d"assemblage (niveau 4): contrairement aux couche 1, 2 et 3 cette couche est réalisée par traduction et non par interprétation (traduireun programme en langage sourcevers un programme en langage cible, ou programme objet).

Le traducteur peut être soit un assembleursoit un compilateur.????Couche des langages d"application (niveau 5): des applications souvent écrites en langages évolués.2.1.

Rappels: Les différentes couches d"un système informatique4CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.1.

Rappels: Les différentes couches d"un système informatique (suite)5CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.2.

Architecture: Systèmes classiques vs système en temps réelNote:Certains des mécanismes de l"interaction avec le monde extérieur utilisés dans les systèmes 'classiques" peuvent être utilisés dans les systèmes en temps réel, d"autres ne permettent pas de prendre en compte les contraintes du temps réel.

6) CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.2.1.

Interaction avec le monde extérieur dans les systèmes 'classiques"a) Interaction par scrutation cyclique (mode scrutation ou programmé)NonNonLe périphérique 1 a-t-il quelque chose à communiquer ?Sauvegarde du contextePassage au sous-programme de serviceRestitution du contexteLe périphérique 2 a-t-il quelque chose à communiquer ?Le périphérique 3 a-t-il quelque chose à communiquer ?OuiOuiOuiNonNonAAAMode programméAvantages ? Inconvénients ?7CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.2.1.

Interaction avec le monde extérieur dans les systèmes 'classiques"b) Mode Interruption (cas d"urgence)CPUE/SDemande d'interruptionInt. autoriséeBUSVers périphériqueAvantages ? Inconvénients ?8CEG4566/CSI4531 - SIGE - Hiver 2013RNMRelier directement le périphérique à la mémoire sans intervention de la CPUTrès grande vitesse de transfert de donnéesTrois techniques : - DMA par arrêt du microprocesseur- DMA par vol de cycle- DMA multiplexéAvantages ? Inconvénients ?2.2.1.

Interaction avec le monde extérieur dans les systèmes 'classiques"c) Accès direct à la mémoireE/SE/SCPUCPUMémoireMémoireCPUCPUMémoireMémoireE/SE/S9CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.2.1.

Interaction avec le monde extérieur dans les systèmes 'classiques"Conclusions•Dans les interactions précédentes, une grande partie du temps processeur est consacrée à autre chose qu"à l"application.•C"est pour mieux utiliser le processeur qu"on a introduit la notion de tâche.•Le traitement d"un événement externe est partagé entre un événement immédiat, effectué par le gestionnaire des interruptions et un traitement différé confié à une tâche (un code séquentiel dédié à un seul traitement).•Plusieurs tâches peuvent s"exécuter concurremment, ce qui permet de récupérer les temps morts. •D"où l"importance de prendre en compte tous les aspects d"ordonnancement et de synchronisation10CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.2.2.

Entrées/sorties spécialisées et entrées/sorties projetées en mémoireCPUMemoryMemoryDevicesDevicesDataAddressEntrées/sorties spécialisées11CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.2.2.

Entrées/sorties spécialisées et entrées/sorties projetées en mémoireMemoryMemoryCPUDevicesDevicesDataAddressEntrées/sorties projetées en mémoire12CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.3.

Structures matérielles du système temps réelChaîne d"acquisition et de restitution de donnéesExemple typique d"un système de contrôle-commande industriel13CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.3.

Structures matérielles du système temps réelExemple d"un signal électrique tout ou rien fourni par un capteur ou reçu par un actionneur pour le contrôle de l"éclairement d"une lampe (cellule photoélectrique fonctionne en tout ou rien (bloquée/saturée))Exemple d"un signal électrique analogique fourni par un capteur ou reçu par un actionneur pour le contrôle de l"éclairement d"une lampe(Cellule photoélectrique fonctionne en régime linéaire)14CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.3.

Structures matérielles du système temps réel2.3.

1) Mise en situation #1Badge depéageAudio & vidéoLumièresVitessesSurveillanceTableaude bordDétecteurde sommeilGPSAirbagSiègeAnticollisionABSSuspensionContrôle moteurDirection15CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.3.

Structures matérielle du système temps réel2.3.

1) Mise en situation #1 - Anatomie des organes embarquésLes organes embarqués seront classés en 4 catégories : CC, FSM, CALC et WEB.• CC : Contrôle continu, traitement du signalLois de pilotages équations différentielles, filtrage numérique, Matlab / Scilab• FSM : Automates finis, graphes de transitionIHM, contrôle discret, protocoles, sécurité, etc.Simulation visuelle, vérification formelle• CALC : Calcul intensifNavigation, cryptage, traitement d"images (TVHD = 1 Gops)Langages classiques, circuits dédiés, machines VLIW, etc.• WEB : Navigation, audio/vidéo, jeuxInteraction graphique / audio / vidéoRéseaux flots de données, JavaPar exemple, dans l"exemple précédent : GPS = CALC + FSMAirbag = CC + FSMContrôle moteur = CC + FSM+ CALCAudio/Vidéo = WEB + CALC + FSMDirection, suspension = CCLumière = FSM16CEG4566/CSI4531 - SIGE - Hiver 2013RNMTrop compliqué pour nous!(pour l"instant)2.3.

Structures matérielle du système temps réel2.3.

1) Mise en situation #1 - Anatomie des organes embarqués17CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.3.

Structures matérielle du système temps réel2.3.

2) Mise en situation #2 - ArchitectureUn système embarqué simple de contrôle de température et de pression qui doivent être maintenues dans un certain intervalle.TSPSwitchADCADCDACÉcranChauffageThermocouplesTransducteurDe pressionPompe/ValveÀ noter que la température T et la pression P sont deux systèmes indépendant (et concurrent).18CEG4566/CSI4531 - SIGE - Hiver 2013RNML"implémentation logicielle peut prendre l"une des formes suivantes:Un programme unique est utilisé, il ignore la concurrence logique entre T, P et S; On n"a pas besoin d"un OS spécifique.T, P et S sont écrits dans un langage de programmation séquentiel, soit comme des programmes séparés ou comme des procédures distinctes dans un même programme.

On utilisera l"OS pour la création et l"interaction entre les programmes/processus.Un programme concurrent unique qui prend en compte la structure logique de T, P et S.

On n"a pas besoin d"OS sauf pour les aspects run-time.Question:Quelle est la meilleure approche? Donner les avantages et les inconvénients de chacune d"elle.Travail personnel à faire: Écrire un programme qui implémente l"une de ces solutions.

Choisir le langage approprié.2.3. Structures matérielle du système temps réel2.3. 2) Mise en situation #2 - Programmation19CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.3. Structures matérielle du système temps réel2.3.

3) Mise en situation #3 - Description d"un exemple de chaîne industrielle commandée par calculateur(Extrait du livre "traitement des signaux et acquisition de données", Francis Cottet, DUNOD)Afin de donner un exemple sur la diversité des problèmes rencontrés dans la mise en place des systèmes de mesure et de commande en temps réel, étudions un système qui doit commander une enceinte thermostatée.Opérations à réaliser :?régulation en température de l"enceinte (chauffage par résistance électrique)?mesure de la température intérieure (thermocouple)?vérification de la fermeture de la porte de l"enceinte (simple contact électrique)?allumage d"une lampe témoin (lorsque la température de consigne est atteinte)20CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.3.

Structures matérielle du système temps réel2.3.

3) Mise en situation #3 - Description d"un exemple de chaîne industrielle commandée par calculateur4 interfaces nécessitant toutes des adaptations21CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.3.

Structures matérielle du système temps réel2.3.

3) Mise en situation #3 - Description d"un exemple de chaîne industrielle commandée par calculateurInterface 1 (liaison thermocouple - calculateur)C"est une entrée analogique, d"un signal faible (quelques dizaines de mV) nécessite un montage du type ampli+CANRemarque: T=f(V) caractéristique non-linéaire, fournie par le fabricant, donc à prendre en compte au niveau des calculs.22CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.3.

Structures matérielle du système temps réel2.3.

3) Mise en situation #3 - Description d"un exemple de chaîne industrielle commandée par calculateurInterface 2 (liaison contact électrique - calculateur)Interrupteur à deux positions : +15V (porte ouverte)0V (porte fermée)Adaptation (+15V, 0V ?TTL)e" = e[R2/(R1+R2)] avec R2=10KΩet R1=20KΩ23CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.3.

Structures matérielle du système temps réel2.3.

3) Mise en situation #3 - Description d"un exemple de chaîne industrielle commandée par calculateurInterface 3 (liaison lampe - calculateur)Lampe alimentée en 110V alternatif, utilisation d"un relais permettant de commuter le secteur sur la lampe tout en réalisant l"isolement électrique. 24CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.3.

Structures matérielle du système temps réel2.3.

3) Mise en situation #3 - Description d"un exemple de chaîne industrielle commandée par calculateurInterface 4 (liaison calculateur - résistance électrique)La résistance électrique nécessite une puissance de commande importante, solution= CNA + ampli.puissance.25CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.3.

Structures matérielle du système temps réel2.3.

3) Mise en situation #3 - Description d"un exemple de chaîne industrielle commandée par calculateurConclusion :Pour un exemple simple comme celui ci, on observe la diversité des types d"interfaces à mettre en oeuvre.À noter qu"on a pas abordé la partie programmation pour cet exemple.Travail personnel:Revoir les notes du cours architecture des ordinateurs.26CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.4.

Conversions analogique/numérique et numérique analogiqueIl existe deux catégories de convertisseurs :-les Convertisseurs Analogique Numérique(CAN) qui vont transformer les tensions analogiques en signaux logiques aptes à être traités par calculateur (numérisation des signaux). - les Convertisseurs Numérique Analogique(CNA) qui vont convertir les signaux logiques en tension analogique.

Plusieurs types de convertisseurs sont disponibles dans chaque catégorie, qui se différencient par leur précision, leur vitessede traitement de l"information, leur prix Remarque :Il n"y a pas 'le convertisseur à tout faire" qui soit bon partout : on devra faire un choix en fonction de ses besoins.

Convertisseurs A/N et N/A27CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.4.

Conversions analogique/numérique et numérique analogiqueLes signaux porteurs d"informations sont pratiquement toujours de type analogique.Si l"on veut traiter un signal par voie numérique, il faut le représenter au préalable par une suite de valeurs ponctuelles prélevées régulièrement (à pas constant) ou irrégulièrement (à pas variable).

Un tel prélèvement est appelééchantillonnage.Figure: (a) L"échantillonneur-Bloqueur (à voir plus bas) (b) Signal d"entrée analogique. (c) Échantillonnage du signal analogique (d) Signal de sortie qui va aller au CAN.28CEG4566/CSI4531 - SIGE - Hiver 2013RNM1.

Transformation Réversible ou irréversibleQuestion: Doit-on pouvoir reconstituer le signal analogique de départ à partir des échantillons prélevés ou non ?Note: Histogramme du signal, valeur moyenne, puissance, etc. ne permettent pas la reconstitution du signal.2.4.

Conversions analogique/numérique et numérique analogique2 notions importantes: 29CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.4.

Conversions analogique/numérique et numérique analogiqueOn voit donc que l"effet de l"échantillonnage est de périodiser le spectre du signal analogique de départ. Cette périodisation se fait à un rythme 1/T en fréquence ou 2π/T, en pulsation.Figure : Effet de l"échantillonnage sur le spectre du signal d"entréeLorsque la fréquence d"échantillonnage n"est pas suffisante, les spectres répétés se chevauchent. On parle de repli spectralCe phénomène est illustré par la figure suivante :Figure: Répétition spectrale lorsque la cadence d"échantillonnage n"est pas suffisante2 notions importantes: 2.

Repli spectral30CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.5. Notion de temps dans les systèmes temps réel2.5.

1) Système temps réel mou•Application typiques : Vidéo/jeux, Communication (modem, GSM, etc.) •Caractéristiques :Pas de besoin critique de ressources.Généralement la puissance CPU est suffisante.Allocation dynamique des ressources.Dégradation de la qualité de service quand le système atteint sa limite de charge.2.5.

2) Système temps réel dur•Application typiques : Contrôle- commande, systèmes critiques, etc.•Caractéristiques :Précision temporelle très élevée.E/S précises, retard minimum.Ressources souvent limités (CPU, mémoire, batterie).Les performances au maximum de la charges sont prédictibles.31CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.5.

Notion de temps dans les systèmes temps réel2.5.

3) Modèle d"interaction avec les événements•Avantages :Architecture pipeline.Supporte les systèmes apériodiques.Utilise peu la CPU.•Inconvénients :Concurrence imprédictible.L"inertie du système introduit des retards dans la réponse.Difficilement décomposable.Aucun avantage pour les événements périodiques.2.5.

4) Modèle d"interaction avec le temps•Avantages :Architecture pipeline.Supporte les systèmes périodiques.

Concurrence prédictible.Comportement déterministe.Retard en E/S minimal.Décomposable.Peut être distribué.•Inconvénients :Grande utilisation de la CPU.Émulation des systèmes apériodiques.32CEG4566/CSI4531 - SIGE - Hiver 2013RNM2.5.

Notion de temps dans les systèmes temps réel2.5.5 Échelle de temps et temps de réponse•Le rythme d"évolution de l"environnement détermine l"échelle de temps relative à une contrainte temps réel.•Le temps de réponse d"un système en temps réel est la durée entre la présentation des entrées à un système et l"apparition des sorties suite aux traitements effectués sur ces entrées par le système.•Le temps de réponse permet d"exprimer la contrainte et est lié àl"échelle de temps d"évolution de l"environnement.2.5.

6) Sévérité des contraintes et échelle de temps•La sévérité et l"échelle de temps d"une contrainte ne sont pas nécessairement liées.•Combinaison possible de niveaux de sévérité et d"échelles de temps différentes dans un même système.•La sévérité des contraintes est généralement une caractéristique prédominante dans un système temps réel.•Le temps de réponse est plus souvent liéà la technologie et aux ressources matérielles utilisées.33C