Circuits multi-horloges: métastabilité et synchronisation

Slides:



Advertisements
Présentations similaires
ORTHOGRAM PM 3 ou 4 Ecrire: « a » ou « à » Référentiel page 6
Advertisements

LES NOMBRES PREMIERS ET COMPOSÉS
[number 1-100].
1. Résumé 2 Présentation du créateur 3 Présentation du projet 4.
Page 1 Retour sur le e- tourisme. Page 2 Quelques chiffres…
FORMATION DE FAISCEAU.
Courants et tensions. Courant électrique. Potentiel – tensions.
« Systèmes électroniques »
Distance inter-locuteur
1. ami 2. compagnon 3. amant 4. frère 5. père 6. maître 7. éducateur 8
Réseau ATB du CClin Paris-Nord – résultats 2011 LL, 22/11/ Réseau antibiotiques du CClin Paris-Nord : Résultats 2011 Coordination: Dr François LHÉRITEAU.
Analyse temps-fréquence
Architecture des processeurs généralistes haute performance
Capteurs et Actionneurs
Les numéros
Les identités remarquables
Performances 1 Évolution : Performance. Performances 2 Évolution : Mémoire.
Les éléments de mémorisation
Analyse de la variance à un facteur
2 1. Vos droits en tant quusagers 3 1. Vos droits en tant quusagers (suite) 4.
1 7 Langues niveaux débutant à avancé. 2 Allemand.
1 Ne laissez aucune perturbation vous échapper Tester la qualité du réseau électrique dans les systèmes d'alimentation de secours.
Le Concept. Régulation électronique LonWorks communicante pour application poutre froide.
Mr: Lamloum Med LES NOMBRES PREMIERS ET COMPOSÉS Mr: Lamloum Med.
1 5 octobre 2011 / paw Présentation du 7 octobre 2011.
Etienne Bertaud du Chazaud
Interagir avec un objet mixte Propriétés physiques et numériques Céline Coutrix, Laurence Nigay Équipe Ingénierie de lInteraction Homme-Machine (IIHM)
1 Cours numéro 3 Graphes et informatique Définitions Exemple de modélisation Utilisation de ce document strictement réservée aux étudiants de l IFSIC.
Application des algorithmes génétiques
Vuibert Systèmes dinformation et management des organisations 6 e édition R. Reix – B. Fallery – M. Kalika – F. Rowe Chapitre 1 : La notion de système.
Gestion des Périphériques
Synchronisation et communication entre processus
1 Choisir une catégorie. Vous recevrez la réponse, vous devez donner la question. Cliquez pour commencer.
Pourquoi les réseaux de neurones de type « perceptron multicouche » conviennent-ils à l’apprentissage Stéphane Canu, INSA de Rouen , PSI André Elisseeff,
Cours de physique générale I Ph 11
1 Guide de lenseignant-concepteur Vincent Riff 27 mai 2003.
GRAM 1 CE2 Je sais transformer une phrase affirmative en phrase négative.
Thèse de Doctorat Troisième cycle de Physique présentée par Mr NZONZOLO Maître es Science Étude en simulation des effets des paramètres macroscopiques.
Titre : Implémentation des éléments finis sous Matlab
Projet poker 1/56. Introduction Présentation de léquipe Cadre du projet Enjeux Choix du sujet 2.
22 janvier 2013 Commercialiser en 2013 ! Que de variables à ajuster ! 1.
LES NOMBRES PREMIERS ET COMPOSÉS
Représentation des systèmes dynamiques dans l’espace d’état
Systèmes mécaniques et électriques
Représentation des systèmes dynamiques dans l’espace d’état
DUMP GAUCHE INTERFERENCES AVEC BOITIERS IFS D.G. – Le – 1/56.
1 Licence dinformatique Algorithmique des graphes Problèmes dordonnancement. Utilisation de ce document strictement réservée aux étudiants de l IFSIC dans.
Notre calendrier français MARS 2014
Année universitaire Réalisé par: Dr. Aymen Ayari Cours Réseaux étendus LATRI 3 1.
Titre : Implémentation des éléments finis en Matlab
3ème partie: les filtres
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
Comment rendre une femme heureuse…
P.A. MARQUES S.A.S Z.I. de la Moussière F DROUE Tél.: + 33 (0) Fax + 33 (0)
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
Traitement de différentes préoccupations Le 28 octobre et 4 novembre 2010.
ECOLE DES HAUTES ETUDES COMMERCIALES MARKETING FONDAMENTAL
1/65 微距摄影 美丽的微距摄影 Encore une belle leçon de Macrophotographies venant du Soleil Levant Louis.
Nom:____________ Prénom: ___________
Biologie générale 5ème année
LES COURSES SUR PISTE.
LES PILES ET FILES.
Exercice de vérification 1 p
Les Chiffres Prêts?
1 Formation à l’usage éco-performant de votre pc 1 ère Partie.
Introduction à SolidWorks
Les systèmes mono-puce
Prototypage virtuel de système sur puce pour une simulation rapide et fidèle Séminaire Collège de France, 29 Janvier 2014 Laurent Maillet-Contoz STMicroelectronics.
Transcription de la présentation:

Circuits multi-horloges: métastabilité et synchronisation Gérard Berry Collège de France Chaire Algorithmes, machines et langages http://www.college-de-france.fr/site/gerard-berry gerard.berry@college-de-france.fr Cours 4, 5 mars 2014

Les systèmes embarqués du XXIe siècle Bien plus complexes, distribués,  déterministes plusieurs fonction sur chaque SoC ou ECU, plusieurs horloges coordination des sous-systèmes réseaux embarqués : NoC, PAN, LAN, Time-Triggered, etc. Mélange de styles contrôle continu + automates, systèmes distribué, moins déterministes GALS, temps continu + discret en simulation, etc. Interfaces asynchrones et l’orchestration de services best effort depuis le Web asynchrone G. Berry, Collège de France 05/03/2014

Les circuits du XXIe siècle SPI I2C LIN CAN USB Ethernet WIFI DOCSIS Compo DISPLAY Audio H.265 CORE ITC MMU TIMER UART PRCMU PWM DAC ADC GPU MEM CTLR CPU CORE ITC MMU TIMER UART Capteur CPU CORE ITC MMU TIMER UART IPs multiples, horloges multiples, réseaux (NoCs) protocoles de communication et gestion d’énergie complexes Nécessité de niveaux de simulation multiples Construire le logiciel avant le chip  simulation TLM G. Berry, Collège de France 05/03/2014

Quelques grandes questions Quels sont les caractéristiques des temps propres des acteurs? indéterminés, imprécis, précis, continus, discrets, localement réguliers, localement variables, etc. Quels rapports entre les temps des acteurs? asynchrones, synchrones, vibratoires, etc. Comment traiter des données de temporalités différentes? Quels sont les principaux styles architecturaux? synchrone réparti, GALS, synchronisation molle, simulations discrètes, continues, mixtes continues / discrètes, etc. G. Berry, Collège de France 05/03/2014

Cours et séminaires 2014 5 mars : circuits multi-horloges GALS, métastabilité 5 mars : temps réel réparti faiblement synchronisé 5 mars : A. Benveniste (INRIA) 12 mars : synchronisation d’horloges en distribué 5 mars : : synchronisation sur puce à échelle arbitraire 5 mars : : F. Anceau (CNAM / UPMC) 19 mars : coopération de modèles de temps 5 mars : : modélisation et simulation de systèmes 5 mars : : physiques 5 mars : : K-J. Åström (Lunds Univ, Sweden) G. Berry, Collège de France 05/03/2014

Cours et séminaires 2014 26 mars : circuits cycliques et logiques constructive 5 mars : modélisations hybrides continues / discrètes 5 mars : M. Pouzet (ENS Paris) 2 avril : Jouer avec le temps 5 mars : : systèmes parallèles temps-réel 5 mars : : A. Cohen (INRIA) et M. Duranton (CEA) 9 avril : Cerveau, cognition et temps 9 avril : V. van Vassenhove (Neurospin) 9 avril : compléments et réponse aux questions 9 avril : G. Berry, Collège de France 05/03/2014

Que vous soyez physiquement présents ou internautes, envoyez toutes vos questions à gerard.berry@college-de-france.fr Et inscrivez vous sur la liste de diffusion, en page d’accueil du cours http://www.college-de-france.fr/site/gerard-berry/index.htm#course G. Berry, Collège de France 05/03/2014

Pourquoi plusieurs horloges ? Difficulté de distribuer précisément des horloges sur une grande surface Mais voir le séminaire de François Anceau après ce cours! Composants (IPs) variés, venant de vendeurs variés, et ayants des fréquences propres différentes CPUs, DSPs, GPUs, MPEG, USB, WiFi, radio, contrôle de RAMs, DMAs, gestion d’énergie, etc. Introduction d’horloges arrêtables et réglables en fréquence pour économiser l’énergie baisser la fréquence permet de baisser le voltage et l’énergie dissipée dépend du carré du voltage G. Berry, Collège de France 05/03/2014

Distribution d’horloges du Pentium 4 G. Berry, Collège de France 05/03/2014

Horloges multiples du Pentium 4TM G. Berry, Collège de France 05/03/2014

Horloges réalignées sur l’Itanium TM G. Berry, Collège de France 05/03/2014

Horloges multiples synchrones  même phase mésochrones :  décalage de phase constant Même fréquence plésiochrones :  décalage de phase variable Fréquences différentes harmoniques  rapports rationnels asynchrones  rapports inconnus / variables G. Berry, Collège de France 05/03/2014

Horloges asynchrones  métastabilité zone h1 zone h2 1 1 G. Berry, Collège de France 05/03/2014

Références métastabilité / synchroniseurs Histoire : My Work on All Things Metastable (Me and My Glitch) Histoire : T. J. Chaney, http://www.arl.wustl.edu/~jst/cse/260/glitchChaney.pdf ‎ RG-IEEE : Metastability and Synchronizers: A Tutorial RG-IEEE : Ran Ginosar, IEEE Design & Test, Sept/Oct. 2011 RG-14 : Fourteen Ways to Fool your Synchronizer RG-14 : Ran Ginosar, Proc. ASYNC conf., 2003 RG-SC : Ginosar-Synchronization-Color.pdf RG-14 : Ran Ginosar, communication personnelle DK : Synchronization and Arbitration in Digital Systems RG-14 : D. J. Kinniment, Wiley, 2007. G. Berry, Collège de France 05/03/2014

Synchroniseur mésochrone source RG-IEEE G. Berry, Collège de France 05/03/2014

Synchroniseur mésochrone prendre la plus vieille valeur disponible Attention, avec 2 registres seulement, risque de métastabilité au début ou à la fin ! G. Berry, Collège de France 05/03/2014

Flip-Flop (registres) et Latch, vision théorique source : RG-SC FF  2 latchs opposés (Master / Slave) transparent opaque G. Berry, Collège de France 05/03/2014

Réalisation d’un latch transparent Q D clk h source : DK b clk1, D1  h0, b1  Q1  Q0 clk1, D0  h1, b0  Q1  Q0 clk0  h1, b1  QQ, QQ G. Berry, Collège de France 05/03/2014

Contraintes électriques d’un latch clk ω w T clk s setup h hold D délai long sortie 1, 0 ou glitch métastabilité G. Berry, Collège de France 05/03/2014

Bons et mauvais comportements du latch source : RG-SC G. Berry, Collège de France 05/03/2014

Longs délais et métastabilité source : RG-SC G. Berry, Collège de France 05/03/2014

Fréquence d’erreurs d’échantillonnage FR  1 / T fréquence réceptrice FE  fréquence du changement de l’entrée w  sh largeur de la bande interdite Err  fréquence d’erreur potentielle Err  FEw  T  FEFRw Exemple réaliste: FR  1GHz FE  100 MHz w  20 ps  T  50 Err  108  10 9  2  10 11 Err  2 10 6 Oups, 2 millions de fois par seconde ! G. Berry, Collège de France 05/03/2014

Métastabilité : Chaney et Molnar, 1970+ My Work on All Things Metastable OR: (Me and My Glitch) March 2012 Thomas J. Chaney G. Berry, Collège de France 05/03/2014

Modèle analogique d’un latch métastable C : capacité R : résistance -A : amplificateur négatif VA0, VB1 VA1, VB0 stable VAVB0,5 métastable bruit thermique source : RG-IEEE G. Berry, Collège de France 05/03/2014

Entrée en métastabilité d’un latch pas  100 ps pas  1 ps pas  0,1 fs source : RG-SC G. Berry, Collège de France 05/03/2014

Effet du voltage de départ V0 source : RG-SC G. Berry, Collège de France 05/03/2014

Sortie de métastabilité source : RG-SC G. Berry, Collège de France 05/03/2014

La loi exponentielle explosion exponentielle du voltage, passage au seuil des transistors source : RG-IEEE G. Berry, Collège de France 05/03/2014

Temps de résolution et MTBF Probabilité de rester métastable après un temps t : et / où  dépend du montage,   1 FO4 (“not” à 4 sorties) S : durée de stabilisation visée S : valable pour toute suite de latchs ! 𝑒 S/ MTBF  FEFRw S  T S  2T G. Berry, Collège de France 05/03/2014

MTBF de résolution du registre Temps de résolution S  1 cycle   d  10ps : temps d’une porte élémentaire (FO4) N  #d par T : nb de portes (FO4) sur un chemin critique MTBF  N2/4  d  eN/2 N Fréq. GHz MTBF (s) MTBF intuitif 16 6,25 1,9 106 rien du tout ! 32 3,12 2,2 103 pas grand chose ! 48 2,08 152 pas terrible ! 64 1,56 8.1 105 9,3 jours, mieux 100 1 1,3 1014 4 106 ans  128 0,78 2,6 1020 8,1 1012 ans !!! G. Berry, Collège de France 05/03/2014

Le synchroniseur 2-FF de base rarement métastable mais souvent lent et souvent non-déterministe S  T jamais métastable, jamais lent mais souvent non-déterministe ! S  2T Si on s’y prend bien, la métastabilité et le long délai s’échangent contre le non-déterminisme G. Berry, Collège de France 05/03/2014

Désastre garanti Chaque synchroniseur peut être non-déterministe source RG-14 Chaque synchroniseur peut être non-déterministe indépendamment des autres ! G. Berry, Collège de France 05/03/2014

Protocole de synchronisation Source RG-IEEE G. Berry, Collège de France 05/03/2014

Synchroniseur 4 phases clk clk source RG-14 G. Berry, Collège de France 05/03/2014

G. Berry, Collège de France 05/03/2014

Simulation Esterel v7 multi-horloges visualisation Esterel Studio G. Berry, Collège de France 05/03/2014

Mauvais design FF1 FF2 Mauvaise valeur échantillonnée par FF2 source RG-14 Mauvaise valeur échantillonnée par FF2 si FF1 se stabilise trop lentement ! G. Berry, Collège de France 05/03/2014

Mauvaise optimisation gagner un registre et un cycle source RG-14 FF Mauvaise valeur échantillonnée par FF si R1 se stabilise trop lentement ! G. Berry, Collège de France 05/03/2014

Presque bon mais pas portable ! d8 source RG-14 CPU 60-100 MHz Modem 55 MHz Supprimer l’acknowledge A est dangereux, car il dit aussi si les données utilisées ont été lues Passage du CPU à 200 MHz  incorrect ! G. Berry, Collège de France 05/03/2014

Reset et Clear doivent être synchronisés source : RG14 Évitent la métastabilité si RESET trop près de CLOCK G. Berry, Collège de France 05/03/2014

Synchroniseurs sûrs ou agressifs source RG-SC G. Berry, Collège de France 05/03/2014

FIFO multi-horloges Une FIFO F découple temporellement l’émetteur et le récepteur Tant que F non pleine, l’émetteur peut écrire à chaque cycle, et le lecteur peut lire à chaque cycle tant que F non vide Mais dans le cas multihorloge, on ne peut pas détecter exactement F pleine / F vide ! => Approche conservative, toujours du côté sûr : dire plein à l’émetteur même si pas vraiment plein, et vide au récepteur même si pas vraiment vide Simulation and Synthesis Techniques for Asynchronous FIFO Design Clifford E. Cummings, Sunburst Design, Inc. Proc. ESNUG San Jose 2003 G. Berry, Collège de France 05/03/2014

Fifo bi-horloges Pour contrôler le non-déterminisme, les pointeurs doivent impérativement être passés en code Gray ! wclk  horloge de l’émetteur rclk  horloge du récepteur G. Berry, Collège de France 05/03/2014

Pourquoi le code Gray? gray(n)  bin(n) oux bin(n/2) 0000 1 0001 2 0011 3 0010 4 0110 5 0111 6 0101 7 0100 8 1100 9 1101 10 1111 11 1110 12 1010 13 1011 14 1001 15 1000 gray(n)  bin(n) oux bin(n/2) Un seul bit change de n à n+1 pour un pointeur reçu, au plus un bit peut changer en 3 ticks au lieu de 2 le pointeur peut avancer de - 0 si changement pas vu - 1 si changement vu ou changement précédent vu avec 1 cycle de retard - 2 si changement et changement précédent vus ensembles tests plein / vide sûr dans tous les cas ! G. Berry, Collège de France 05/03/2014

C’est-y pas beau, le code Gray ? source http://lordikc.free.fr/wordpress/?p=12 G. Berry, Collège de France 05/03/2014

Conclusion Passer d’une zone d’horloge à une autre, c’est toute une aventure (à ne pas laisser aux débutants) Mais tout est bien compris désormais (merci D. Chaney, R. Ginosar et tous les autres) Et l’évolution se fait vers des réseaux sur puce (NoCs, Network Fabrics), qui utilisent les techniques précitées Mais ce sera pour une autre année ! G. Berry, Collège de France 05/03/2014