Return to search

Injection de fautes par reconfiguration dynamique de réseaux programmables

Des techniques d'injection de fautes ont été utilisées depuis de nombreuses années pour évaluer la sûreté de systèmes ou de composants (matériels ou logiciels). Ces techniques sont fondées sur la création délibérée de fautes dans le système à tester, pendant l'exécution d'une application. Les sorties du système, et potentiellement certains signaux internes, sont enregistrés et ces données sont utilisées à la fin des expériences pour analyser le comportement du système en présence de fautes.<br />Le travail présenté dans cette thèse est focalisé sur des injections de fautes au niveau matériel, dans des circuits digitaux. Dans ce contexte, l'utilisation de prototypes a été proposé pour améliorer et accélérer la réalisation des campagnes d'injection. Les réseaux programmables (et en particulier les réseaux de type FPGA) sont de bons candidats pour implémenter de tels prototypes. La reconfiguration d'un FPGA peut toutefois nécessiter un temps assez long, ce qui peut constituer une limitation des techniques basées sur le prototypage, surtout si de nombreuses reconfigurations sont nécessaires pour réaliser l'injection des fautes. Afin de résoudre ce problème, cette thèse propose de mettre à profit les possibilités de reconfiguration partielle (ou locale) de certains réseaux. En utilisant cette possibilité, seule une partie du réseau doit être reconfigurée lorsque des modifications sont requises, ce qui conduit à des gains de temps notables lorsque seules quelques différences existent entre deux configurations successives.<br />Jusque là, le prototypage matériel n'a été employé que pour exécuter l'application sur des versions de circuits modifiées pour injecter les fautes souhaitées. L'injection elle-même était réalisée grâce à des dispositifs ajoutés dans le circuit et commandés par des signaux externes. Ces modifications étaient introduites soit dans la description de haut niveau (par exemple, VHDL comportemental) soit dans la description au niveau portes, avant d'implémenter le prototype. L'idée développée dans cette thèse est non seulement d'exécuter l'application sur un prototype, mais aussi de réaliser l'injection des fautes directement dans le composant (FPGA) en tirant profit des possibilités de reconfiguration. De cette façon, chaque injection (ou suppression) de faute nécessite une reconfiguration partielle du FPGA. En revanche, la description initiale du circuit n'a pas à être modifiée avant l'implémentation du prototype.<br />Cette thèse démontre la faisabilité d'une telle approche, pour deux types de fautes majeurs (les collages et les inversions de bits asynchrones, qui modélisent les fautes de type "Single Event Upset"). Le processus d'injection utilisant la reconfiguration partielle a été automatisé pour ces types de fautes dans le cas de prototypes implémentés sur des réseaux Virtex. Les avantages et les limitations par rapport aux techniques existantes ont été analysés. Enfin, la thèse conclut sur les principaux paramètres devant être optimisés pour implémenter un environnement d'injection de fautes fondé sur la reconfiguration partielle.

Identiferoai:union.ndltd.org:CCSD/oai:tel.archives-ouvertes.fr:tel-00003419
Date19 September 2003
CreatorsANTONI, L.
Source SetsCCSD theses-EN-ligne, France
LanguageEnglish
Detected LanguageFrench
TypePhD thesis

Page generated in 0.0019 seconds