La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Guy GOGNIAT Université de Bretagne Sud Laboratoire LESTER

Présentations similaires


Présentation au sujet: "Guy GOGNIAT Université de Bretagne Sud Laboratoire LESTER"— Transcription de la présentation:

1 Contribution au domaine de la conception des Systèmes Embarqués Reconfigurables
Guy GOGNIAT Université de Bretagne Sud Laboratoire LESTER CNRS FRE 2734 Habilitation à Diriger des Recherches Lorient, Vendredi 26 octobre 2007 Source: Xcell Journal Issue 58

2 Agenda Quelques faits marquants…
Domaines de recherche et contributions Systèmes embarqués (HW/SW codesign) Architectures reconfigurables Sécurité des systèmes embarqués Et demain… Enseignement et recherche…

3 Quelques faits marquants…
IP Based design NoC MPSoC RTOS Cryptoprocesseur MPSoC Adaptatif Architecture Profil MARTE SystemC UML TLM Langage Cœur de processeur Blocs DSP Mémoire Architectures reconfigurables Gros grain Reconfiguration dynamique Saut en complexité des FPGA Reconfigurable Faire apparaître chaque axe séparément et indiqué sur la droite les points marquants : Architecture : Intégration massive/communication nœud critique du système/intégration des services => RTOS/Besoin d’adaptativité Outil/Langage : Élévation du niveau d’abstraction, abstraction matériel/logiciel/besoin de méthodologies orientée MDA afin de facilité l’interaction entre domaine de compétence FPGA étendu: rupture en 1999 avec intégration de composant de complexité élevée, compétition agressive entre les fabricants de FPGA en tirant profit des évolutions technologiques, objectif coller aux applications avec un accroissement de la granularité (de nombreux travaux académiques avaient montré la voie). Intégration de processeur, cœur de processeur. Reconfiguration dynamique notamment pour le domaine de la radio logicielle militaire JTRS Application : complexité, diversité et performances accrues, challenge au niveau des architectures Radio Logicielle AES ECC 2,5G (100kbit/s) 3G (2Mbit/s) 4G (1Gbit/s) MPEG2 MPEG4 H264 Application EASI Tools Suite (Beach Solutions) PICO Express (Synfora) Platform Architect (CoWare) Catapult C (Mentor Graphics) Outils industriels 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010

4 Quelques faits marquants…
Circuit multistandard WLAN (802.11a et MCCDMA)/ST Microelectronics 2003 Intégration grain fin/gros grain Hiérarchie de bus Conception à base d’IP Saut en complexité des FPGA Architectures reconfigurables Gros grain Cryptoprocesseur Circuit MP211 pour les applications téléphone cellulaire/NEC 2005 MPSoC Multiprocesseur Processeurs dédiées Cryptographie 2D/3D Traitement image/signal Archi 1 : intégration gros grain/grain fin, hiérarchie de bus – conséquence des études sur les architectures gros grain Archi 2 : intégration de plusieurs processeur – toujours des bus, mais apparition de processeur de crypto pour des applications mobiles. Besoin de sécuriser les échanges. 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010

5 Quelques faits marquants…
SoC pour la HDTV Laurent Ducousso/STMicroelectronics Colloque national 2007/GDR SoC-SiP 60-62 millions de lignes de code embarqué 4-5 millions de lignes de code RTL (700 bibliothèques RTL) 16 processeurs embarqués 115 domaines d’horloge Chiffrement de toutes les communications avec les mémoires externes Architecture de communication-5Goctet/s Saut majeur en complexité Limite des solutions à base de bus MPSoC Adaptatif Circuit Tera-scale/Intel 2007 Intégration massive Migration vers le tout processeur Processeurs dédiés Réseau de communication Archi 3 : niveau de complexité extrême, réutilisation indispensable. Besoin d’élévation des niveaux de conception pour appréhender une telle complexité. Limite des solutions à base de bus. Débit trop important entre les composants, chiffrement également présent Archi 4 : intégration massive, migration vers le tout processeur + processeurs spécifiques. Intégration de réseau pour mettre en œuvre les communications. 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010

6 Saut en complexité des FPGA à l’Université de Bretagne Sud
Axes de recherche… ECC Cryptoprocesseur Protection FPGA (bitstream) Protection des données Monitoring pour la sécurité Système sécurisé 3DES Sécurité des systèmes embarqués AES 3G UMTS (2Mbit/s) Saut en complexité des FPGA Cœur de processeur Blocs DSP Mémoire Exploration et estimation de performance (FPGA) Impact consommation Exploration multigrain Auto reconfiguration partielle Architectures reconfigurables Architectures reconfigurables Gros grain Reconfiguration dynamique Profil MARTE Élévation du niveau d’abstraction Architecture PACM/multiPACM Pré-partitionnement Conception MDA/UML MPSoC RTOS IP Based design Systèmes embarqués (HW/SW codesign) Faire apparaître chaque axe 1 – Architecture reconfigurable avec quelques points clés sur l’axe et mettre à droite les motivations Besoin d’outil, étude de la consommation car intégration dans les systèmes, outils gros grain, reconfiguration dynamique 2 – Systèmes embarqués Élévation du niveau d’abstraction, UML, MDA, génération de code, partitionnement fonctionnel, Prise en compte RTOS 3 – Sécurité, critique dans les systèmes, encore des solutions partielles, très orientée soft, besoin d’efficacité. Ajouter en bas quelques dates clés me concernant, séjour US MDA ESL design MPSoC Adaptatif Maître de conférences à l’Université de Bretagne Sud Séjour USA 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010

7 Axes de recherche… SoC Dénominateur commun
Système sur silicium (SoC) Interaction entre les axes de recherche Outils de conception Architecture des systèmes 2 Doctorants [Bilavarn 2002/T], [Bossuet 2004/T] 4 DEA/Masters [Bossuet 2001/D], [Rouxel 2002/D], [Piriou 2003/D], [Delahaye 2003/D] 4 projets de recherche (France, USA, Europe) [DARSoC 2003], [EPICURE 2003], [POMARD 2004], [AETHER 2008] Outils Axe 1 Systèmes embarqués HW/SW codesign Axe 2 Architectures reconfigurables SoC 4 Doctorants [Rouxel 2006/T], [Maalej 2007/T], [Aoudni 200X/T], [Vidal 20XX/T] 4 DEA/Master [Chaboun 1999/D], [Maalej 2002/D], [Naoufel 2002/D], [Loukil 2005/D] 4 Projets de recherche (France, Tunisie) [MACGTT 2002], [A3S 2005], [PROSYR 2006], [MOPCOM 2009] Architectures Comment ces axes interagissent Mettre pour chaque axe le nombre d’étudiants, de projets, de publis… 1 Doctorant [Vaslin 200X/T] 1 Post-doc [Wanderley 2007/P] 4 DEA/Masters [Guillot 2004/D], [Dumérat 2005/D], [Zui 2007/D], [Ducloyer 2007/D] 4 projets de recherche (France, USA) [SecureFPGA 2004], [SANES 2005], [SecureNIOS 2007], [ICTeR 2008] Axe 3 Sécurité des systèmes embarqués

8 Agenda Quelques faits marquants…
Domaines de recherche et contributions Systèmes embarqués (HW/SW codesign) Architectures reconfigurables Sécurité des systèmes embarqués Et demain… Enseignement et recherche…

9 Systèmes embarqués (HW/SW codesign)
Besoin d’abstraction Complexité des applications/plateformes d’exécution Haut niveau d’efficacité temporelle/énergétique Réduction du cycle de vie/coût de conception Conception multidisciplinaire Les modèles permettent de modéliser et spécifier à la fois l’application et l‘architecture matérielle de façon indépendante. Chaque modèle peut représenter différentes niveaux d’abstraction où le passage entre les différents niveaux peut s’effectuer par transformation de modèles. L’approche MDA permet donc d’avoir des modèles exprimant des systèmes à des niveaux de représentation différents. Le passage d’un niveau à un autre s’effectue par transformation de modèles. Ces transformations n’ont pas été abordés ni traité dans mes travaux. Dans le cadre des travaux présenté aujourdh’ui nous nous intéressons principalement au plus haut niveau afin de pouvoir spécifier au plus tôt dans le flot de conception au concepteur la faisabilité de système et procéder à des étapes d’analyses à partir de représentation haut niveau.

10 Positionnement des travaux
Approche de conception MDA/UML Samuel Rouxel [2006] Collaborations scientifiques associées PROSYR CMCU 2003 – 2006 A3S RNRT 2003 – 2005 MOPCOM ANR/RNTL – Pôle de compétitivité Images et Réseaux 2007 – 2009 Mem Proc IP Bridge cop Partitionnement logiciel/matériel Synthèse des communications Compilation du logiciel Synthèse du matériel Intégration système VHDL C Spécification Fonctionnelle + contraintes Accélérateur coprocesseur RTOS SystemC UML UML MDA/UML/SystemC pour systèmes reconfigurables Jorgiano Vidal [2010] Spécification Fonctionnelle + contraintes SystemC Partitionnement fonctionnel Issam Maalej [2007] Performance RTOS Samuel Rouxel [2006] Accélérateur coprocesseur Partitionnement logiciel/matériel RTOS Synthèse du matériel Synthèse des communications Compilation du logiciel VHDL C Intégration système Prototypage rapide Yassine Aoudni [2007] Proc Mem Bridge cop Bridge Mem Proc IP Mem Proc IP

11 Partitionnement fonctionnel
Pré-partitionnement de l’application sur une architecture multiprocesseur [Maalej 2007] Permet d’appréhender la complexité des futures architectures composées de centaines de processeurs Étape d’exploration qui permet de réduire l’espace des solutions Basé sur une architecture générique multi-PACM Processeur, accélérateur, coprocesseur, mémoire Six métriques guident l’exploration Analyse d’identité (IA) Distribution mémoire (MEM) Distribution des communications (EDE, DEIC, CIC) Contraintes de débit (Tc) Application t1 t3 Analyse de l’application par le concepteur Analyse des tâches t5 t2 t4 Etape de Pré-exploration Optimisation multiobjectif Partitions Modèle d’architecture PACM multiprocesseur t1 t2 t3 t4 t5 PACM1 PACM2 Architecture PACM1 PACM2 Proc Mem Bridge IP t5 t3 t4 t1 t2 Etape d’exploration (e.g. codesign) [Maalej 2007] I. Maalej, « Exploration haut niveau des architectures multiprocesseurs : analyse et métriques », Thèse de doctorat, Université de Bretagne Sud, 16 octobre 2007

12 Exploration de l’application UMTS
Analyse de l’espace des métriques EDE DEIC CIC MEM IA Tc Espace des métriques pour la solution 1 Données échangées dans le cluster1 Données échangées dans le cluster2 Données échangées entre les clusters Distribution des échanges de données pour a solution 1 EDE DEIC CIC MEM IA Tc Espace des métriques pour la solution 2 Distribution des échanges de données pour a solution 2 Données échangées dans le cluster2 Données échangées dans le cluster1 Données échangées entre les clusters

13 Exploration de l’application AC3
Combinaison pré-exploration et exploration Exploration par CODEF [Auguin 2001] Espace d’exploration composé de 37 solutions Exploration par GAMA2 et CODEF Espace d’exploration réduit à 21 solutions Temps (ms) 1500 Pareto 1 architecture CODEF 3 architectures GAMA² et CODEF Exploration guidée de l’espace de conception 1400 1300 1200 1100 1000 900 Surface (mm2) 800 15 20 25 30 35 40 45 [Auguin 2001] M. Auguin, L. Capella, F. Cuesta, et E. Gresset. ”CODEF: a System Level Design Space Exploration Tool” ICASSP, pages , Salt Lake City, USA, Mai 2001

14 Model Driven Architecture pour la radio logicielle
Approche de conception dirigée par les modèles [Rouxel 2006] Définition d’un flot de conception unifié autour du langage UML Conception au niveau système Basé sur une approche MDA Définition du profil A3S Vérification non fonctionnelle afin de garantir La définition correcte du système L’ordonnançabilité de la solution Lien entre le modeleur UML (Objecteering) et l’outil XAPAT Modélisation et Caractérisation d’une Plateforme SoC Hétérogène Application à la Radio Logicielle Voici le flot développé et dont la méthodologie sera présentée juste après. Nous proposons au concepteur un modeler UML que le concepteur de Radio Logicielle peut utilisé pour … …. Manuellement à partir de bibliothèque de composants renseignés par . Nous proposons également un outil de vérifications et d’analyse afin de valider le système spécifier. Tout ceci autour d’une formalisation UML réfléchie apporté par le profil UML développé. [Rouxel 2006] S. Rouxel, «Modélisation et Caractérisation d’une Plate-Forme SoC Hétérogène : Application à la Radio Logicielle », Thèse de doctorat, Université de Bretagne Sud, 5 décembre 2006

15 Modélisations, Vérifications et Analyses
Spécification et analyse Modélisation de l’application (diagramme d’activité) Modélisation de la plateforme d’exécution (diagramme de déploiement) Vérification de la conception Partitionnement logiciel – matériel Vérification du déploiement Analyse de l’ordonnançabilité du système et des taux d’utilisation des ressources Passerelle entre les outils Objecteering et RTDT via XAPAT Génération du graphe de tâches de l’application Prise en compte du partitionnement (message : Les vérifications et analyses) types de vérifications : Cohérences (construction , sémantiques et syntaxique). Une partie découle de la conformité aux métamodèles du profil UML. Un arbre de vérification scrute séquentiellement le respect de la modélisation, utile pour la validité de l’analyse de faisabilité. Types d’analyses : Outils mis en oeuvre : XAPAT : analyse de la structure UML pour produire un graphe de tâche utilisé par l’outil d’analyse d’ordonnançabilité RTDT. Évaluation de l’overhead des OS! XAPATool outil développé au LESTER RTDT outil codesign du LESTER dont on a ôté/soustrait l’algorithme de partitionnement automatique. Intégré en aval un outil de codesign où l’on masque la partie partitionnement automatique.

16 Système Radio Logiciel UMTS
Exploration des solutions pour la configuration 1 Débit (117 kbits/s) Temps d’exécution DSP1 DSP2 FPGA Plateforme DSP Émetteur 96,6% 2,4% - 10 ms Récepteur 185,5% 4,6% 19,27 ms Plateforme DSP et FPGA 11,4% 3,4% 66% 7,96 ms 17,1% 71,2% 9,44 ms Exploration de différents scénarios d’exécution Évaluation de plusieurs partitionnements Uniquement à base de DSP Combinaison DSP et FPGA Reconfiguration du système pour plusieurs débits Configuration 1 : 117 kbits/s Configuration 2 : 950 kbits/s Exploration des solutions pour la configuration 2 Débit (950 kbits/s) Temps d’exécution DSP1 DSP2 FPGA Plateforme DSP Émetteur 96,6% 5,1% - 10,33 ms Récepteur 185,5% 5% 19,33 ms Plateforme DSP et FPGA 11,4% 66% 8,29 ms 17,2% 71,2% 9,49 ms Plateforme DSP et FPGA permet de respecter les contraintes

17 Agenda Quelques faits marquants…
Domaines de recherche et contributions Systèmes embarqués (HW/SW codesign) Architectures reconfigurables Sécurité des systèmes embarqués Et demain… Enseignement et recherche…

18 Architectures reconfigurables
Intégration croissante des composants reconfigurables dans les systèmes embarqués Besoin d’évaluation de l’apport de ces solutions dès les premières étapes de conception Exploration de l’espace de conception et estimation de performance Caractère dynamique des applications plus fortement marqué Besoin de reconfiguration dynamique au niveau applicatif mais également au niveau architectural Les architectures reconfigurables correspondent à une cible privilégiée Comment et quand reconfigurer un système devient un enjeu majeur

19 Positionnement des travaux
Synthèse logique Mapping technologique Compilation du logiciel Compilation reconfigurable gros grain Place&Routage Spécification RTL (VHDL) Configuration (FPGA) Synthèse comportementale Spécification fonctionnelle (C pour le matériel) Processeur Accélérateur coprocesseur « système » Partitionnement Spécification fonctionnelle « système » Systèmes adaptatifs Milad El Khodary [2009] Collaborations scientifiques associées MACGTT CNRS 2000 – 2002 EPICURE RNTL 2001 – 2003 POMARD CNRS 2003 – 2004 AETHER IST-FET 2006 – 2008 Partitionnement Spécification fonctionnelle (C pour le matériel) Exploration architectures reconfigurables hétérogènes Lilian Bossuet [2004] Exploration espace de conception/FPGA Sébastien Bilavarn [2002] Compilation reconfigurable gros grain Synthèse comportementale Compilation du logiciel Spécification RTL (VHDL) Synthèse logique Mapping technologique Place&Routage Reconfiguration dynamique Jean Philippe Delahaye [2003] Configuration (FPGA) Auto reconfiguration dynamique Pierre Bomel [2007] Processeur Accélérateur coprocesseur

20 Exploration des architectures reconfigurables
Définition d’une architecture multi grain pour un ensemble d’applications [Bossuet 2004] Spécification de l’application/de l’architecture Exploration de l’espace de conception Évaluation des performances [Bossuet 2004] L. Bossuet, «Exploration de l’espace de conception des architectures reconfigurables», Thèse de doctorat, Université de Bretagne Sud, 10 septembre 2004

21 Estimation des performances
L’application est caractérisée sous l’angle des communications Paramètre impactant très fortement la consommation de l’architecture Projection de l’application sur l’architecture 3 stratégies utilisées afin d’anticiper l’impact des outils de synthèse Estimation du taux d’utilisation des ressources Estimation de la hiérarchie des communications Guide le processus d’exploration par raffinements successifs Spécification de l’application (graphe ACG) Spécification de l’architecture Outil de projection architecturale niveau 1 69% niveau 2 10% niveau 3 21% 58% 25% 17% 41% 35% 24% Minimum Intermédiaire Maximum 68.8% 100% 93.8% Add Sub Mul Div Comp Logic Estimation du taux d’utilisation des ressources Estimations de la distribution hiérarchique des communications

22 De la projection à l’exploration architecturale
Nombre d’éléments fonctionnels Point d’arrivée Point de départ Taille des clusters Taille des mémoires Exploration des paramètres de l’architecture Caractéristiques des niveaux hiérarchiques Évaluation des performances Approche interactive Concepteur/outil de projection

23 Exploration pour MPEG2 et AES
Architecture obtenue suite au processus d’exploration pour MPEG2 Élément hiérarchique de niveau 3 Élément hiérarchique de niveau 2 Élément hiérarchique de niveau 2 MULT ALU RAM Cluster 1 COMP LUT RAM Cluster 2 Cluster 1 Cluster 2 Exploration de l’architecture pour l’application MPEG2 Application Taux d’utilisation Distribution des communications ADD/SUB MUL COMP LUT Niveau 3 Niveau 2 Niveau 1 MPEG2 67,0% 70,0% 13,0% 2,0% 29% 8% 63% Adéquation de l’architecture « MPEG2 » pour l’application AES Architecture obtenue suite au processus d’exploration pour AES Application Taux d’utilisation Distribution des communications ADD/SUB MUL COMP LUT Niveau 3 Niveau 2 Niveau 1 AES* - 36% 14% 50% Élément hiérarchique de niveau 3 de niveau 2 Cluster 3 COMP LUT RAM MULT ALU Exploration de l’architecture pour l’application AES Application Taux d’utilisation Distribution des communications ADD/SUB MUL COMP LUT Niveau 3 Niveau 2 Niveau 1 AES 63,8% 100% 93,8% 21% 10% 69% Exploration de l’architecture pour l’application AES Application Taux d’utilisation Distribution des communications ADD/SUB MUL COMP LUT Niveau 3 Niveau 2 Niveau 1 AES 63,8% 100% 93,8% 21% 10% 69%

24 Reconfiguration dynamique
Adaptation dynamique des systèmes La reconfiguration dynamique ouvre de nouvelles perspectives Accélérer l'exécution de primitives de calculs comparé à une exécution logicielle Favoriser la flexibilité dynamique comparé à une solution dédiée Autoriser différents compromis dynamiquement en termes de débit, surface, latence, fiabilité, consommation afin de respecter les contraintes dynamiques d'un système Ce paradigme d’exécution s’installe progressivement mais durablement dans les systèmes embarqués Maturité encore insuffisante notamment de part des méthodologies de conception et des outils associés

25 Système Radio Dynamiquement Reconfigurable
Changement dynamique d’une chaîne de modulation [Delahaye 2003] Modules fixes (changement de fréquence – sélection de PLL ) Module dynamique (changement de mapping – 8PSK/QPSK) Control Data 50 MHz SDRAM Full Bitstream Partial Bitstream Data transfer Configuration transfer (bitstream) CP3 FPGA Virtex 1000 E CPLD CP4 CP2 CP0 DSP C62 Partial Module Fixed Bus Macro DSP Code 8PSK mapping Bits to symbol coding 810 KHz Oversampling Source coding simulation Reconfiguration Filtering IF Transposition 8PSK/QPSK modulation chain QPSK mapping Légende : 270 KHz 1.08 MHz 1.08 MHz Bits to symbol coding Fixed part Reconfigurable part 540 KHz [Delahaye 2003] J-P. Delahaye, «Systèmes Radio Dynamiquement Reconfigurables sur Architecture Hétérogène», Mémoire de DEA, Université de Paris Sud Orsay, 10 septembre 2003

26 Vers l’endo reconfiguration…
Auto-reconfiguration partielle du système [Le Cunff 2006] Le PowerPC reconfigure la matrice via le module IP_ICAP Stockage des bitstreams en mémoire externe Reconfiguration 2D Modular + Difference Based Design Système reconfigurable FPGA PLB B PowerPC U S M Reconfigurable Area PLB BRAM A Controller C to R OPB O bridge OPB OPB_GPIO (I, II, III) On - board memory On - Board Controller : MEMORY OPB_SysAce IP_ICAP [Le Cunff 2006] B. Le Cunff, «Reconfiguration dynamique et auto-reconfiguration Xilinx Virtex II Pro», Mémoire de projet MASTER, Université de Bretagne Sud, Mars 2006

27 Vers l’auto adaptation…
Connexion systématique des systèmes au réseau Déporter le stockage des bitstreams vers un serveur externe [Bomel 2007] Évolution dynamique des systèmes Réduction significative du problème de stockage Définition d’une couche d’abstraction « ultra légère » DPR [Bomel 2007] Xilinx [2006] Lagger Williams [2004] Vitesse 375 – 400 K 40 K 17 K 32 K Mémoire (octets)  100K  1M  1M [Bomel 2007] P. Bomel, «A Networked, Lightweight and Partially Reconfigurable Platform», Rapport interne LESTER, Université de Bretagne Sud, septembre 2007

28 Agenda Quelques faits marquants…
Domaines de recherche et contributions Systèmes embarqués (HW/SW codesign) Architectures reconfigurables Sécurité des systèmes embarqués Et demain… Enseignement et recherche…

29 Sécurité des systèmes embarqués
Courtesy Lilian Bossuet

30 Attaques d’un système embarqué communicant
Attaque logicielle à distance Vers, virus, cheval de Troie Attaques matérielles passives Analyses des canaux cachés Attaques matérielles actives réversibles Injection de fautes Actives irréversible Découpage du circuit AES RAM KEY RSA µP turbo code

31 Plusieurs niveaux de sécurité
Le système est sécurisé Protection des Entrées/Sorties, de la configuration La matrice reconfigurable est sécurisée Protection du Bus, de la mémoire, du processeur L’ accélérateur matériel est sécurisé

32 Défense en profondeur Au niveau système Au niveau architecturale
monitoring des traitements du systèmes pour détecter les attaques (bus, accélérateur, cœur de processeur, mémoire), augmenter la flexibilité et gestion des mises à jour Au niveau architecturale implémentation efficace de cœur de cryptographie, détection de fautes, augmenter la flexibilité Au niveau logique protection contre les attaques sur canaux cachés Au niveau circuit résistance au sabotage (package), capteur, etc.

33 Positionnement des travaux
Collaborations scientifiques associées SecureFPGA – UMASS 2003 – 2004 SANES ERE DGA 2004 – 2005 ICTER ANR 2006 – 2008 SecureNIOS – UMASS Approche Système/Architecture Sécurité et NoC Jean Philippe Diguet [2007] Architecture système sécurisée Guy Gogniat [2004] Compression et protection du code Eduardo Wanderley [2007] Intégrité et confidentialité Romain Vaslin [2008] Accélérateur hachage Sylvain Ducloyer [2007] Protection du bitstream Lilian Bossuet [2003] Monitoring pour processeur Tilman Wolf [2006]

34 Intégrité et confidentialité des données
Les systèmes embarqués utilisent généralement de la mémoire externe Les données et les instructions sont échangées de façon non protégée sur le bus entre le processeur et la mémoire Menaces Lecture non autorisée des données Injection de code ou altération des données Piratage de la mémoire Zone sécurisée Bus d’adresses SoC Mémoire externe Bus de données Objectif Garantir la confidentialité et l’intégrité des données stockées dans la mémoire externe et transférées dans la mémoire cache du processeur embarqué Courtesy Reouven Elbaz

35 Intégrité et confidentialité des données
Zone sécurisée Zone non sécurisée Protection des données en mémoire externe [Vaslin 2007] Basé sur l’utilisation d’un mécanisme de chiffrement du type OTP Intégration d’une solution d’intégrité basée sur un CRC « chiffré » Protection contre les attaques du type « Spoofing » Injection d’une donnée malveillante « Splicing » Permutation spatiale des données en mémoire « Replay » Permutation temporelle des données sur le bus Bus d’adresses SoC Mémoire externe Bus de données [Vaslin 2007] R. Vaslin, G. Gogniat, J-P. Diguet, R. Tessier, W. Burleson, High Efficiency Protection Solution for Off-Chip Memory in Embedded Systems, ERSA’07, June 25-28, 2007, Las Vegas, Nevada, USA

36 Scénario d’exécution Plusieurs niveaux de compromis sécurité vs. Performance en fonction de l’environnement OTP + CRC32 OTP + CRC8 11 cycles pour traiter une requête en lecture mémoire Probabilité de collision 2-32 3 cycles pour traiter une requête en lecture mémoire Probabilité de collision 2-8

37 Performances Dégradation des performances par rapport à une solution non protégée Inférieure à 10% pour OTP + CRC8 Entre 10% et 30% pour OTP + CRC32 Surcoût temporel inférieur par rapport aux solutions actuelles Surcoût mémoire résultant du stockage des Time Stamps et des CRC Proportionnel à la taille du code et des données Plus coûteux avec CRC8 que CRC32 car davantage de CRC à mémoriser 768 776 600 AEGIS PE-ICE OTP + CRC32 512 AES Overhead mémoire (Koctets) 100 200 300 400 500 600 700 800

38 Architecture sécurisée pour les systèmes embarqués
SAFES (SecurityArchitecture For Embedded Systems) [Gogniat 2007] S’appuie sur les propriétés intrinsèques des architectures reconfigurables dynamiquement afin de contrer les attaques Basé sur l’utilisation de moniteur qui détectent tout comportement anormal Politique de sécurité dynamique que vise à adapter le niveau de sécurité en fonction de la menace La sécurité est coûteuse, essentiel de la mettre en oeuvre au bon moment [Gogniat 2007] G. Gogniat,T. Wolf, W. Burleson, J-P. Diguet, L. Bossuet, and R. Vaslin, « Reconfigurable hardware for high-security/high-performance embedded systems: The SAFES perspective », à paraître dans IEEE TVLSI Special Section on Configurable Computing

39 Primitive de sécurité – Approche dynamique de la sécurité
Coeur de la primitive (fonction cryptographique) Contrôleur de sécurité de la primitive (SPC) Contrôleur de sécurité du système (SSC) Datapath AlP_Register ArP_Register Input FSM Output FSM Start Reset Done SPC SSC Fault Battery level Communication Channel Quality Attacks System_state Req FPGA Security primitive Quatre implémentations sont considérées pour l’algorithme AES Non feedback mode without security (N_FB) Pipeline Feedback mode without security (FB) Iterative Feedback mode with fault detection (FB_FD) Parity-based error detection Feedback mode with fault tolerance (FB_FT) Triple module redundancy technique Adaptation en ligne Accroissement de la réactivité du système face aux menaces Performance Securité

40 Surveillance – Moniteur de sécurité
Surveillance pour la primitive de sécurité AES Le moniteur Surveille l’activité sur le bus (adresse mémoire) Plusieurs scénarios peuvent être considérés pour détecter un comportement anormal « Counter-based » « Cross-coupling » Génération des sous clés Chiffrement d’un bloc

41 Agenda Quelques faits marquants…
Domaines de recherche et contributions Systèmes embarqués (HW/SW codesign) Architectures reconfigurables Sécurité des systèmes embarqués Et demain… Enseignement et recherche…

42 Et demain… Dynamically… Self test & detect Isolate errors Confine Reconfigure, and Adapt Virtualisation Architecture « Tera-scale » Auto-adaptation Architecture MPSoC Adaptatif RTOS distribué NoC adaptatif Mutation [Borkar 2007] Adoption SystemC++ Généralisation UML Langage Profil MARTE Méta langage Parallélisme explicite RTOS distribué sécurisé Virtualisation des plateformes Auto reconfiguration Pervasive computing Jeu d’instructions dynamiquement reconfigurable Reconfigurable FPGA orienté sécurité Endo reconfiguration généralisée Bio inspirée Faire apparaître chaque axe séparément et indiqué sur la droite les points marquants : Architecture : Intégration massive/communication nœud critique du système/intégration des services => RTOS/Besoin d’adaptativité Outil/Langage : Élévation du niveau d’abstraction, abstraction matériel/logiciel/besoin de méthodologies orientée MDA afin de facilité l’interaction entre domaine de compétence FPGA étendu: rupture en 1999 avec intégration de composant de complexité élevée, compétition agressive entre les fabricants de FPGA en tirant profit des évolutions technologiques, objectif coller aux applications avec un accroissement de la granularité (de nombreux travaux académiques avaient montré la voie). Intégration de processeur, cœur de processeur. Reconfiguration dynamique notamment pour le domaine de la radio logicielle militaire JTRS Application : complexité, diversité et performances accrues, challenge au niveau des architectures 4G (1Gbit/s) Graphique 3D Intelligence distribuée Application Sécurité Environnement virtuel Parallelism Exhibition tool Security driven design flow Compilation en ligne Outils industriels Auto exploration Dynamic Computation Pattern Extraction Synthèse en ligne 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 [Borkar 2007] S. Borkar « Thousand Core Chips A Technology Perspective » Intel Corp. June 7, 2007

43 RTOS sécurisé pour les systèmes embarqués
Gestion dynamique de la sécurité au niveau de l’OS Mise en place d’une politique de sécurité afin d’optimiser les performances Plusieurs niveaux de sécurité associés aux tâches Solution dédiée à l’embarqué par rapport à AEGIS/XOM… Filtrage des zones mémoires Politique de sécurité dynamique ?

44 Software Defined Radio
Reconfiguration dynamique d’un NoC intégré à une plate-forme radio logicielle compatible SCA Abstraction des ressources de communication Reposer sur une structure de communication flexible et performante Adapter dynamiquement en fonction des besoins Mise en évidence des possibilités d'un NoC afin d'adapter les performances et les chemins de communications dynamiquement Allocation dynamique de « Time-Slot TDMA » Allocation dynamique de liaisons séries pour des réseaux du type commutation de paquets Allocation dynamique de chemins de communication pour des réseaux du type communication de circuits Déterminer le coût induit par la mise en œuvre de couches d'abstraction Essentiel afin de garantir la portabilité et l'extensibilité des applications Positionner les communications au centre du développement

45 MDA pour systèmes adaptatifs
Flot de conception MOPCOM Unification de l’exploration Lien entre les mondes UML/MARTE, TLM et SystemC Raffinement progressif de la solution Depuis le niveau fonctionnel jusqu’au niveau RTL / « embedded C » Prise en compte du caractère dynamique de l’application et des supports d’exécution Simulation SystemC multi niveaux Applications H264 et récepteur radiofréquence

46 Pervasive computing Environnement adaptif avec découverte dynamique de nouveaux services et déploiement en ligne Architecture auto-adaptative Optimisation consommation, débit, ressources mémoire, communication… Efficacité énergétique Besoin de validation de ce nouveau paradigme de calcul Définition d’un simulateur SystemC permettant d’évaluer des politiques de déploiement dynamique Basé sur des profils des applications et des plateformes d’exécution Prise en compte du caractère temps réel des systèmes

47 Agenda Quelques faits marquants…
Domaines de recherche et contributions Systèmes embarqués (HW/SW codesign) Architectures reconfigurables Sécurité des systèmes embarqués Et demain… Enseignement et recherche…

48 Enseignement et recherche…
Indissociable L’enseignement prépare les futurs chercheurs, ingénieurs, enseignants… La recherche source d’inspiration pour l’enseignement Besoin de mettre en place une démarche de qualité afin d’anticiper les évolutions à venir Internationalisation, environnement numérique, « project based learning », valorisation… Mutation de l’enseignement Passer d’un mode d’enseignement linéaire où l’étudiant est spectateur à un mode interactif ou l’étudiant devient acteur Favoriser la créativité, développer les forces de proposition, mettre en place les mécanismes nécessaires à la prise d’autonomie Encourager et soutenir l’enseignant dans sa démarche pédagogique Soutenir l’initiative et encourager l’audace Nécessité d’innovation et de remise en question

49 Enseignement et recherche…
Le monde de l’enseignement et de la recherche est en pleine mutation Osons imaginer de nouvelles pistes, favorisons les dynamiques de créations et encourageons la prise de risque Le doute est un moteur de créativité

50 Contribution au domaine de la conception des Systèmes Embarqués Reconfigurables
Guy GOGNIAT Université de Bretagne Sud Laboratoire LESTER CNRS FRE 2734 Habilitation à Diriger des Recherches Lorient, Vendredi 26 octobre 2007 Source: Xcell Journal Issue 58


Télécharger ppt "Guy GOGNIAT Université de Bretagne Sud Laboratoire LESTER"

Présentations similaires


Annonces Google