-
-
-
-
-
-
-
HomeSite map
SoC/Offres d'emplois/Stages/2010-2011/Robustesse (ALSOC) Print page

Evaluation de la robustesse des circuits embarqués

Contexte et positionnement

 

La robustesse d’un système caractérise la capacité de ce dernier à réagir « convenablement » même lorsqu’il évolue dans un environnement perturbé. Les perturbations peuvent provenir d’un environnement inadapté ou partiellement défaillant, ou bien produisant des pics de tension qui modifient l’état interne du système. L’analyse des capacités de robustesse d’un système est un problème important qui intervient dans les différentes étapes de conception d’un système intégré sur puce : d’un point de vue algorithmique lors des différentes étapes de spécification et raffinements et dans la mise en œuvre de mécanisme de protection par blindage ou redondance au niveau du circuit implanté.

L'équipe LabSoC de Telecom ParisTech développe un environnement appelé DIPLODOCUS [AM+06], dont l'objectif principal est la conception et le partitionnement de système sur puces et de systèmes intégrés, à un haut niveau d'abstraction, et selon l'approche dite en "Y" (Application, architecture, mapping). Plus précisément, l'environnement DIPLODOCUS propose de décrire l'application sous la forme de tâches abstraites communicantes. Le langage permettant de décrire ces tâches se focalise sur le contrôle : par exemple, les données sont abstraites, seuls des nombres d'échantillons de données peuvent être échangés entre tâches via des canaux de communication. L'architecture matérielle est décrite indépendamment de l'application sous la forme de noeuds matériels abstraits: noeuds d'exécution (e.g., CPU, accélérateurs matériels), noeuds de communication (i.e., bus) et noeuds de stockage (par exemple, mémoires). L'ensemble de ces abstractions permet de réaliser des simulations extrêmement rapides [KA+09] et des vérifications formelles [KA+10], soit sur l'application directement, soit sur la projection de cette application sur une architecture matérielle. L'ensemble de l'approche est implantée sous la forme d'un profil UML supporté par l'outil open-source TTool [A+08].

Les équipes ALSOC et MOVE du LIP6 ont développé, dans le cadre du projet ANR FME3, un cadre méthodologique permettant l’analyse de robustesse de circuits décrits au niveau RTL et soumis à des fautes transitoires [BB+09]. A l’issue de ce projet, différentes classes de robustesse ont été définies, ainsi que les outils algorithmiques de mesure de robustesse associés ; les expérimentations menées sur différents circuits décrits au niveau RTL montrent la pertinence de l’approche [BB+10].

Dans la pratique, la conception de systèmes complexes suit une méthodologie dans laquelle les applications sont initialement décrites à un niveau d’abstraction bien plus haut que le niveau RTL : ce dernier apparaît une fois que les choix architecturaux et de partitionnement ont été effectués. Il est intéressant d’analyser la robustesse d’un système dès les premières étapes de sa conception, et d’étudier comment le cadre méthodologique mis en place au niveau RTL peut évoluer pour des systèmes plus abstraits.

Finalité du stage

Le travail demandé consiste à étendre la plate-forme d’analyse de robustesse adaptée pour les descriptions RTL pour l’analyse de systèmes plus abstraits. Dans ce contexte, de nombreuses questions sont à étudier : 

 

  • Quels sont les liens entre le niveau de description abstrait et le niveau d’implantation (RTL) ? Il convient de définir les fautes pouvant survenir vis-à-vis du modèle abstrait et d’analyser leurs répercussions sur les fautes au niveau concret. Ceci induira très probablement la définition de nouveaux modèles de faute au niveau RTL.
  • La classification de la robustesse définie au niveau RTL est-elle adaptée pour des descriptions de haut niveau ? Ces dernières sont basées sur des mécanismes de communication asynchrone, et leur contrôle dépend peu des données. Faut-il introduire de nouvelles classes de robustesse, ou bien raffiner certaines classes déjà définies pour les applications orientées contrôle de flux ?

 

Pour répondre à ces questions, nous envisageons les étapes suivantes :

  1. Identification des caractéristiques du niveau d’abstraction des descriptions d’applications dans l’approche DIPLODOCUS et l'outil TTool. Identification des types de fautes survenant au niveau de description TML.

 

  1. Analyse de l’adéquation des modèles de fautes et classes de robustesse avec ces caractéristiques et propositions d’extension des modèles de fautes, de la classification ou des algorithmes sous-jacents pour prendre en considération les nouvelles caractéristiques.

 

  1. Application à une étude de cas : Carte à puce de type JavaCard, modélisée en DIPLODOCUS

Encadrement

Emmanuelle Encrenaz emmanuelle.encrenaz(at)lip6(.)fr

Denis Poitrenaud denis.poitrenaud(at)lip6(.)fr

Pré-requis

Modélisation des systèmes concurrents par systèmes de transitions ; Notions de vérification par model-checking ; Architecture, méthodes et outils de conception des systèmes embarqués sur puce.

Bibliographie

[AM+06] L. Apvrille, W. Muhammad, R. Ameur-Boulifa, S. Coudert and R. Pacalet, "A UML-based Environment for System Design Space Exploration", 13th IEEE Int. Conf. on Electronics, Circuits and Systems (ICECS'2006), Nice, France, December 2006

[A+08] L. Apvrille, "TTool for DIPLODOCUS: An Environment for Design Space Exploration", Proc. of the 8th Annual Int. Conf. on New Technologies of Distributed Systems (NOTERE'2008), Lyon, France, June 2008

 [BB+10] S. Baarir, C. Braunstein, E. Encrenaz, J.-M. Ilié, T. Li, I. Mounier, D. Poitrenaud, S. Younes, Quantifying Robustness by Symbolic Model checking, Int. workshop on Hardware Verification (HWVW'10), satellite event of  Int. Conf. on Computer Aided Verification (CAV'10), Edimburgh, Scotland, jul. 2010.

[BB+09] S. Baarir, C. Braunstein, R. Clavel, E. Encrenaz, J.-M. Ilié, R. Leveugle, I. Mounier, L. Pierre, D. Poitrenaud, Complementary Formal Approaches for Dependability Analysis, IEEE 24th Int. Symp. Defect and Fault Tolerance in VLSI Systems (DFT 2009), pp. 331-339. IEEE Computer Society, Chicago, Illinois, USA, oct. 2010.

[KA+09] D. Knorreck, L. Apvrille,  R. Pacalet, "Fast Simulation Techniques for Design Space Exploration", Proceedings of the 47th Int. Conf. on Objects, Models, Components, vol. 33, pp. 308-327, Patterns, DOI: 978-3-642-02571-6, Zurich, Switzerland, June 2009

[KA+10] D. Knorreck, L. Apvrille, R. Pacalet, "Formal System-level Design Space Exploration", the 10th annual IEEE international conference on New Technologies of Distributed Systems (NOTERE'2010), Tozeur, Tunisia, June 2010.

[Lev10]           R. Leveugle, “Early Robustness Evaluation of Digital Integrated Systems”, Invited Presentation for a special session on Robustness in ECSI Forum on Design Languages (FDL), Southampton, UK, sept. 2010.

 [MI+08] S. Mitra, R. Iyer, K. Trivedi, , J. Tschanz, “Reliable Systems: Models, Metrics and Design Techniques”, Tutorial of 28th ACM & IEEE Int. Conf. on Computer-Aided Design (ICCAD’08), San Jose, California, USA, nov. 2008

LIP6 LIP6-SoC LIP6 CNRS UPMC