Traduction automatique d'une description

Slides:



Advertisements
Présentations similaires
INF3500 : Conception et implémentation de systèmes numériques Pierre Langlois Analyse de machines.
Advertisements

Concepts intermédiaires de VHDL
VHDL pour circuits séquentiels
Introduction à la notion de fonction 1. Organisation et gestion de données, fonctions 1.1. Notion de fonction ● Déterminer l'image d'un nombre par une.
NF04 - Automne - UTC1 Version 09/2006 (E.L.) Cours 5-a Problèmes scalaires instationnaires d’ordre 1 en temps Domaines d’application Notions de schémas.
MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE Université d’Adrar Diagramme d’états-transitions Présenté par Sbai Omar Benothman.
Les commandes externes
MENUS PRINCIPAL RESEAU.
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Exercice On considère un Système de contrôle de température composé de: Capteur, ordinateur Le capteur transmit à chaque heure de la journée la température.
Support et Maintenance SIAN : MDEL partenaires
ATS8500 Standalone Downloader.
Suivi des démarches en ligne via le Gestionnaire de Suivi Services Instructeurs Paris – 29/08/2012.
Modélisation mathématique des systèmes asservis
Session 1 6 mars 2017 Plateforme ICONICS Justine Guégan
Description d’un circuit combinatoire en VHDL
Arithmétique entière en VHDL
Chapitre 01: Structure d'un module VHDL
SNMP - Comment calculer l'utilisation de la Bande passante
Algorithmique demander jeu du pendu.
Architecture de machines Eléments de logique
Commande show ip dhcp binding
Analyse temporelle des systèmes asservis
L’Instruction de Test Alternatif
Analyse Performance Chaine Energie + Problématique
Commande show ip route ccnp_cch ccnp_cch.
Plan du cours Introduction : création de circuits
Réalisation d'agents de surveillance Zephir
Master Réseaux et Systèmes Distribués (RSD) Algorithmique des systèmes
Les Plans d’expériences: Plans Factoriels
Technologies de l’intelligence d’affaires Séance 14
Présentation Structure données abstraite (TDA) Rappel : File
Plan du cours Introduction : création de circuits
Cyber-Sphinx Séance 2.
La technique du pipeline
Synthèse et implémentation de circuits arithmétiques sur FPGA
Tests de boîte blanche.
Recherches sous Elan.
Piloter un robot mbot à distance avec retour vidéo
1ers pas des utilisateurs migrés
Vérification avec UPPAAL de circuits décrits en VHDL avec délais
La Gestion de Production OPT
Analyse de l'architecture abstraite
1. Présentation générale du système
Vérification de l'architecture abstraite
Vérification avec Uppaal de l'architecture
QoS - Configuration de COPS pour RSVP
VALMEM Traduction automatique d'une description comportementale VHDL + annotations temporelles en automates temporisés A. Bara, E. Encrenaz LIP6 VALMEM.
PROGRAMMATION ET ENSEIGNEMENT
Chapter 12: Structures de données
Technologies « Smart Manufacturing »
Plan du chapitre Diagramme de classes Les extensions syntaxiques
Référentiel d’accessibilité des services publics
EDITEUR:HIGH SYSTEM INFO
Programmation Android Première application Android
L1 Technique informatique
Simulation de fautes dans un environnement de communication sans fil
Langages de programmation TP11
SYSTEME DU PREMIER ORDRE
Présentation 9 : Calcul de précision des estimateurs complexes
JDepend - Analyse de la qualité du code Java -
Global Challenge Capteur de nuit Leçon 2.
Elles contiennent des informations autre que géométriques
Design, innovation et créativité
Dématérialisation des
Modélisation des SI et de la connaissance
Python Nicolas THIBAULT
I. Aouichak, I. Elfeki, Y. Raingeaud, J.-C. Le Bunetel
Type Tableau Partie 1 : Vecteurs
Traitement de TEXTE 2 Stage – Semaine 3.
Transcription de la présentation:

Traduction automatique d'une description VALMEM Traduction automatique d'une description comportementale VHDL + annotations temporelles en automates temporisés Je vais vous présenter aujourd’hui mon travail de dea encadré par M. Laurent Vigneron et qui s’intitule la vérification des protocoles cryptographique A. BARA, E. ENCRENAZ LIP6

Situation dans la méthode

Syntaxe VHDL acceptée Architecture : signaux in /out de type bit Entity : VHDL comportemental Affectations concurrentes Processus (forme restreinte)

Modèle d'automates temporisés Réseau d'automates concurrents Horloges Variables discrètes Stocke la valeur courante d'un signal Permet la détection des fronts ('event / 'transaction) Paramètres Délais de propagation des fronts

Principes de traduction (1/2) 1 affectation concurrente : 1 automate temporisé s <= f(a,b,c, ...); front sur a, b, c, ... pour f --> 0 Disjonction de tous les cas !! front sur a, b, c, ... pour f --> 1

Principes de traduction (2/2) 1 process : 1 à 3 automates temporisés Process (a,b,c, ...) begin if a = 1 then s <= b; elsif c = 1 then s <= not b; end Automate condition 1 (optionnel) Automate condition 2 (optionnel) Automate affectation sortie

Insertion des informations temporelles Récupération des délais dans le fichier temporel Affectation aux paramètres des TA Deux paramètres de délais pour chaque signal Front montant / front descendant Intervalle des valeurs de délai pour toutes les configuration d'entrées et front induisant un front sur le signal de sortie

Modélisation de l'environnement Un (réseau d') automate représentant l'évolution des signaux d'entrée est ajouté. Format de fichier environnement. a : 5 up, 20 down; b : 10 down, 25 up; clock ck with thi 15 tlo 10 ncycles 2; d : 20 up;

Programme VHDL2TA Vhdl2Ta b_up c_0 d_0 a_up 4 b_dn c_1 d_1 a_dn 3 a <= b or c xor d; process (a,b) begin if a = 1 then... Fichier temporel b : 5 up, 20 down; c : 10 down, 25 up; d : 15 up; Fichier environnement VHDL comportemental Vhdl2Ta Un protocole de sécurité est un ensemble des règles d’échange de message entre agents communicants Réseau d'automates temporisés (Hytech, Uppaal)

Exemples passés Exemples de programme VHDL passés sur le programme : BLUEB_LSV : abstraction manuelle de SPSMALL lors du projet BLUEBERRIES (1 mot de 1 bit). BLUEB_LSV2 : extension de BLUEB_LSV avec deux points mémoires. D-flip-flop [Clariso & Cortadella]. And-or [Clariso & Cortadella]. Circuit BRO1 [Brozowski]. Circuit BRO2 [Brozowski]. SPSMALL extraite par Pirouz (avec des délais à 1).

Exemples – BLUEB_LSV (1/5)‏ Architecture complète abstraite dans le projet BLUEBERRIES (1 mot de 1 bit) / simplifications manuelles. Traduction (Hytech [HHW95], Uppaal [LPY97]): 1291 lignes dans la description en Uppaal (en hytech- 1553 lignes). 27 automates + l'automate asscocié à l'environnement. 28 horloges. 28+4 variables discrètes. 62 paramètres.

Exemples – BLUEB_LSV (2/5)‏ AFTG de l'implémentation SPSMALL (SP1) [CEFX06 (wseas)].

Exemples – BLUEB_LSV (3/5)‏ Environnement pour SP1:

Exemples – BLUEB_LSV (4/5)‏ Temps de réponse + setup optimums (SP1): Résultats cités dans [CEFX06] Résultats obtenus par le programme

Exemples – BLUEB_LSV (5/5)‏ Temps de réponse + setup optimums (SP2): Résultats cités dans [CEFX06] Résultats obtenus par le programme

Exemples – BLUEB_LSV2 (1/5)‏ Extension de l'architecture précédente avec deux points mémoires. Traduction (Hytech, Uppaal): 2026 lignes dans la description en Uppaal (en hytech- 2026 lignes). 34 automates + l'automate asscocié à l'environnement. 35 horloges. 35+4 variables discrètes. 78 paramètres.

Exemples – BLUEB_LSV2 (2/5)‏ AFTG de l'implémentation SP2.

Exemples – BLUEB_LSV2 (3/5)‏ Environnement pour SP1:

Exemples – BLUEB_LSV2 (4/5)‏ Temps de réponse + setup optimums (SP1): Résultats cités dans [CEFX06] & [Xu06] Résultats obtenus par le programme

Exemples – BLUEB_LSV2 (5/5)‏ Temps de réponse + setup optimums (SP2) [CEFX06]: Résultats cité dans [Xu06] & [CEFX06] Résultats obtenus par le programme

Exemples – D-flip-flop (1/2)‏ D-Flip-flop (Clariso & Cortadella) : Délais considérés dans [ACEF08] Temps de réponse ∈ [23,26]

Exemples – D-flip-flop (2/2)‏ Le graphe d'atteignabilité obtenu avec les tests :

Exemples – And-or‏ (1/2) And-or (Clariso & Cortadella) : Délais considérés dans [ACEF09]

Exemples – And-or‏ (2/2) Tests avec 1 environnement :

Exemples – BRO1 Le circuit 3 décrit dans [Fri09] : Tous les délais dee portes sont dans [83,85]. Analyse exhaustive, cité dans [Fri09], est confirmée :

Exemples – BRO2 Le circuit 4 est décrit dans [Fri09]: Tests réalisés : Les délais de portes (yi) = 5ns, temps de stabilité = 20ns pour ce pattern. (y3) = (y5) = 2.5ns, temps de stabilité = 35ns.

Exemples – SPSMALL1*2 Architecture complète abstraite automatiquement par LIP6 dans VALMEM Adaptations préalables à la traduction : bit_vector --> bit retrait de 8 processus (monstrueux) signaux non connectés supprimés Les délais des portes et des latchs sont tous mis à 1. Traductions : Sans opt : 90 automates / 90 horloges / 112 var / 178 paramètres Avec opt : 56 automates / 56 horloges / 68 var / 134 paramètres Le graphe d'atteignabilité est construit (en utilisant uppaal)

Autres circuits envisagés GASP FIFO (FIFO asynchrone) Cortadella & Clariso Ring Oscillator Rambus

Limitations actuelles Syntaxe VHDL Type bit uniquement (pas de bit_vector / std_logic) Process très limités Combinatoire !!! Taille des automates (combinatoire des transitions). Produit d'automates avant l'analyse : Outil HyTech limité à une dizaine d'automates

Bibliographie [ACEF08]. É. André, Th. Chatain, E. Encrenaz and L. Fribourg. An Inverse Method for Parametric Timed Automata. In RP'08, ENTCS 223, pages 29-46. Elsevier Science Publishers, 2008. [ACEF09] E.André, T. Chatain, E. Encrenaz, L. Fribourg, An inverse method for parametric timed automata, International Journal of foundations of Computer Sciences, vol 20, no 5, pages 819-836, World Scientific Publishing Company. [CEFX06]. R. Chevallier, E. Encrenaz, L. Fribourg, W. Xu, Timing Analysis of an Embedded Memory: SPSMALL, WSEAS 10th international conference on circuits, july 2006, Greece.

Bibliographie [Fri09]. Laurent Fribourg, Analyse temporisée des systèmes concurrentes : l'exemple illustratif des circuits numériques, ETR 2009. [HHW95]. T. A. Henzinger, P. Ho, and H. Wong-Toi. A user guide to HyTech. In TACAS, page 41-71, 1995. [LPY97]. K. Larsen, P. Pettersson, and W. Yi. UPPAAL in a Nutshell. International Journal on Software Tools for Technology Transfer, 1:134–152, 1997. [Xu06]. W. Xu, Timing Analysis of SPSMALL, internal report, june 06.

Merci pour votre attention