1 / 24

OSTRE Optimisation des Systèmes Temps Réel Embarqués

OSTRE Optimisation des Systèmes Temps Réel Embarqués. Yves Sorel http://www-rocq.inria.fr/ ~sorel/work/ostre. P lan. Contexte Programme de recherche L ogiciel Coll a borations Enseignement E quipe P erspectives. Contexte.

shamus
Download Presentation

OSTRE Optimisation des Systèmes Temps Réel Embarqués

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. OSTREOptimisation des SystèmesTemps Réel Embarqués • Yves Sorel • http://www-rocq.inria.fr/~sorel/work/ostre

  2. Plan • Contexte • Programme de recherche • Logiciel • Collaborations • Enseignement • Equipe • Perspectives

  3. Contexte • Entre automatique et informatique : communauté du temps réel et de l’architecture : depuis 1990 méthodologie AAA • Applications : automobile et avionique (AEE, EAST), robotique mobile (CyCab, SAFE), télécom (PROMPT) • Algorithmes applicatifs : contrôle-commande, TSI • Systèmes • Réactifs : événement stimulus - opérations – événement réaction • Temps réel :temps de réaction borné sinon conséquences catastrophiques :contraintes latences(temps de réponse entrée-sortie) cadences (période entrée) • Distribués :puissance calcul, modularité, câblage réduit • Embarqués :minimisation des ressources

  4. Programme de recherche4 axes • Modélisation des STRE : fondée sur la sémantique des langages synchrones et le modèle matériel RTL • Modèlesde graphespour algorithme (fonctionnalités) etarchitecture (multicomposant et circuits intégrés spécifiques) • Implantation transformationde graphes • Optimisation d’implantation temps réel • Génération automatique de code • Tolérance aux pannes

  5. Programme de recherchemodélisationalgorithme architecture • Théorie des graphes, ordre partiel, automate • Spécification Algorithme applicatif (parallélisme potentiel) : hypergraphe orienté factorisé de dépendances de donnée (avec ou sans précédence) et/ou de conditionnement entre opérations (branchements), répétitif infini (réactif), répétitif fini (boucle) • Vérification : langages Synchrones (ordre sur les événements) • Spécification Architecture multicomposant (parallélisme effectif) : graphe orienté de machines séquentielles : processeurs + circuit intégrés spécifiques(ASIC, FPGA) + moyens de communication (mémoire partagée, passage de message) : adapté à conception conjointe logiciel/matériel

  6. Itération n retard filtre adap adap gensig sub filtre visu coeff Programme de recherche modélisation algorithme Filtrea Filtrea Filtrea adap adap adap gensig gensig gensig sub sub sub filtre filtre filtre coeff coeff coeff visu visu visu Dépendance donnée avec ou sans précédence Précédence seulement Dépendance donnée inter-itération

  7. Programme de recherchemodélisation architecture processeur1 processeur2 processeur3 Opr1 Opr2 Opr3 RAM D/P RAM D/P RAM D RAM D/P Com1b SAM Com2b Com1a Com2a Com3a SAM RAM D moyen de communication : passage de msg mémoire partagée CI spécifique RAM D Opr4

  8. Programme de recherchemodélisation implantation • Implantation multicomposant : transformation des graphesd’algorithme et d’architecture, toutes les implantations sont décrites en intention comme la composition de trois relations binaires sur des couples (Gal, Gar) :rout. o dist. o ordo.ou comme une loi composition externe : Gal * Garout = Gal’ • Ajout d’opérations de communication et d’allocation de mémoire • Ajout d’arcs: renforce ordre partiel initial en fonction de l’architecture • Implantation circuit : transformation du graphe d’algorithme par remplacement des opérations par des fonctions logiques, ajout de fonctions logiques pour synthèse du contrôle (boucles, conditionnements) • Conserve les propriétés d’ordre sur les événements

  9. allocP calc1 allocDl in out allocP calc2 allocDl allocD allocD allocD calc1 send receive allocD in out allocD allocD allocD calc2 send receive allocD allocP allocP allocDl allocDl Programme de recherchemodélisation implantation processeur1 processeur2 Opr1 RAM D/P Com1a Com2a RAM D/P Opr2 SAM

  10. Programme de rechercheoptimisation multicomposant • Adéquation : implantation optimisée, choix d’une transformation de graphes qui respecte une contrainte temps réel (1 latence = 1 cadence) et minimise les ressources de calcul et de com. • Caractérisation hétérogène opération/opérateur et dépendance/moyen-de-communication : durée, interférencecalcul/communication • Distribution/ordonnancement calculs et communications : hors lignesans préemption • PB NP-difficile :solution approchée avec heuristiquesrapides (prototypage) : gloutonne (ordonnancement de liste) lentes itératives : voisinage local, global • Fonctions coût latence : flexibilité d’ordonnancement, chemin critique de Gal étiqueté par durées, calculs dans (max,+) • Méta heuristique pour minimisation du nombre de composants

  11. Programme de rechercheoptimisation monoprocesseur • Adéquation : implantation optimisée, choix d’une transformation de graphe (ordonnancement) qui respecte des contraintes temps réel multiples (plusieurs latences et plusieurs cadences) • Caractérisation opération/opérateur (processeur) : durées, périodes • Ordonnancement: hors lignesans préemption • Solution exacte

  12. Programme de rechercheoptimisation circuit • Adéquation : implantation optimisée de l’algorithme respectantune contrainte temps réel (1 latence = 1 cadence) et minimisant le nombre de fonctions logiques lors du remplacement et de la synthèse du contrôle • Défactorisation (data parallélisme) • Refactorisation (pipe-line, retiming) • PB NP-difficile : solution approchée avec heuristiquesrapides (prototypage) : gloutonnelentes itératives : recuit simulé • Fonctions coût pour minimisation latence : chemin critique de Gal étiqueté par durées et nombre de fonctions logiques

  13. Programme de recherchegénération de code multicomposant • Exécutif dédié : Synchronized Distributed Executive • Transformation graphes :ajout sommets système : init. final. E/S, loop, synchronisations calcul communications (sémaphores) • Sans interblocage et à faible surcoût • Chaque sommet remplacé par macro-code indépendant processeur • Code obtenu par macro-génération avec m4 et noyaux d’exécutifs • Noyaux d’exécutif (macros) dépendant processeur pour : • Processeurs : MPC555, MC68332, 80C196, ADSP2160, TMS320C40/C60, i386... • Moyens de communication : links DSP, CAN, RS232, TCP/IP... • Exécutif standard : configuration RTOS (RTlinux, Osek, etc) : priorités fixes avec ou sans préemption

  14. Programme de recherchegénération de code circuit • Transformation de graphe : remplacement des fonctions logiques par des net-list de composants • Sommet factorisé : composant VHDL exécuté sur différentes données • Hyperarc factorisé : signal VHDL • Composant et signaux contrôlés par des compteurs, des multiplexeur, des démultiplexeur et des registres

  15. Tolérance aux pannes • Silence sur panne : pannes processeurs et moyens de communication • Redondance logicielle : automatique réalisée à partir des pannes autorisées • Optimisation : 2 extensions de l’heuristique multicomposant • Fondée sur les communications redondées : première arrivée prise • Fondée sur un mélange de solutions, chacune calculée pour une situation de panne possible

  16. Logiciel Environnement sans rupture d’aide à la Spécification/simulation/implantation optimisée de systèmes distribués temps réel embarqués • Spécification/simulation avec langage orienté métier : exemple Scicos pour spécification de l’environnement et du contrôleur, simulation hybride continu/discret • Implantation optimisée avec AAA/SynDEx : Adéquation Algorithme Architecture implantation distribuée optimisée du contrôleur discret

  17. Logiciel programmation CyCab généralités • Vitesse 30km/h • Moteurs électriques • 4 roues motrices • 2 directions AV, AR • Multi-processeur MPC555 + un Pentium • Bus Can Industrialisé par Robosoft www.robosoft.fr

  18. Logicielspécification/Simulation Scilab/Scicos gratuit sur : www-rocq.inria.fr/scilab Scilab/Scicos Modèle du CyCab Sol Masses Suspension Roues Ecran Moteurs Contrôleur Discret Synthétisé Pilote Joystick, Radio... Codeurs, Caméra... Lois de commande Retards SynDEx

  19. Logiciel implantation temps réel optimisée AAA/SynDEx gratuit sur : www-rocq.inria.fr/syndex Scicos/Scilab Retards Lois de commande AAA/SynDEx Algorithme Architecture Adéquation Distribution/Ordonnancement Heuristiques + Générateur Performances Calculées Contraintes Macro-Exécutifs 386 et 555 + noyaux génériques + libs m4 / gcc CyCab Exécutifs

  20. Logiciel programmation CyCabapplication conduite manuelle

  21. Collaborations • INRIA :SOSSO, METALAU,MAXPLUS, BIP, ESPRESSO, TICK,HIPERCOM, etc • Universitaires : COSI, A2SI, AXIS, LIESIB, LASL, LASMEA, LIP6, LISI, etc • Industriels : • AEE-EAST (Psa, Renault, Sagem, Valeo, DC, Volvo, Opel, Bosh, ZF, Etas, Vector, etc), • PROMPT (Thales-communications, Esterel-Technology, Nokia), ACOTRIS (EADS, Sitia, CS-SI), • SAFE (Robosoft, Frog-Navigation), • Synopsis-Castor, etc

  22. Enseignement • Cours : DEA Orsay système électronique et traitement de l’information, ESIEE, ENSTA • Thèses • Soutenues entre 99 et 2001 • R. Djenidi:coopération Scicos/SynDEx • T. Grandpierre:modèle d’architecture et d’exécutif distribué temps réel • A. Dias:synthèse de circuit intégrés • R. Kocik:data-flow/control-flow, ordonnancement multicontraintes • A. Vicard:formalisation d’implantations temps réel avec des graphes • En cours depuis 2001 • L. Cucu:ordonnancement multicontrainteset tolérance aux pannes • L. Kaouane :synthèse de circuit intégrés • Débute en 2002 • H. Kalla :tolérance aux pannes

  23. Equipe • Y. Sorel, DR2 • C. Macabiau, ingénieur associé • L. Cucu, doctorante INRIA • H. Kalla, doctorant INRIA • L. Kaouane, doctorant ESIEE • T. Grandpierre et R. Kocik, collaborateurs extérieurs ESIEE

  24. Perspective recherche • Modélisation STRE : control-flow/data-flow (TICK /OSTRE), unification multicomposant/circuit conception conjointe HW/SW • Optimisation d’implantation : contraintes temps réel multiples • Monoprocesseur: ordonnancement hors ligne avec préemption, en ligne pour événements apériodiques (HIPERCOM/OSTRE) • Multicomposant : distribution et ordonnancement hors ligne et en ligne avec préemption : solution approchée • Unification heuristiques multicomposant/circuit : conception conjointe logiciel/matériel avec partitionnement automatique : fonction de coût pour choix logiciel/matériel (flexibilité, performance) • Génération de code : exécutif/net-list • Tolérance aux pannes (BIP/OSTRE) : pannes capteurs-actionneurs, pannes intermittentes

More Related