Circuits numériques. synchrones. se des automates. version 1.0. Alain Greiner PHY 568

Documents pareils
Logique séquentielle

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

IFT1215 Introduction aux systèmes informatiques

VIII- Circuits séquentiels. Mémoires

Les portes logiques. Voici les symboles des trois fonctions de base. Portes AND. Portes OR. Porte NOT

Conception de circuits numériques et architecture des ordinateurs

FONCTION COMPTAGE BINAIRE ET DIVISION DE FRÉQUENCE

ELP 304 : Électronique Numérique. Cours 1 Introduction

Système binaire. Algèbre booléenne

QUESTION 1 {2 points}

Conception de circuits numériques et architecture des ordinateurs

ASR1 TD7 : Un microprocesseur RISC 16 bits

Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.

Acquisition et conditionnement de l information Les capteurs

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

GPA770 Microélectronique appliquée Exercices série A

EP A1 (19) (11) EP A1 (12) DEMANDE DE BREVET EUROPEEN. (43) Date de publication: Bulletin 2011/26

La conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA)

Concevoir son microprocesseur

Organisation des Ordinateurs

Université de La Rochelle. Réseaux TD n 6

On distingue deux grandes catégories de mémoires : mémoire centrale (appelée également mémoire interne)

2.1 Le point mémoire statique Le point mémoire statique est fondé sur le bistable, dessiné de manière différente en Figure 1.

Chapitre 4 : Les mémoires

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Algèbre binaire et Circuits logiques ( )

Les fonctions logiques

MPI Activité.10 : Logique binaire Portes logiques

Le transistor bipolaire

LA MESURE INDUSTRIELLE

Modules d automatismes simples

Equipement. électronique

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

Manipulations du laboratoire

I- Définitions des signaux.

Architecture : Circuits numériques et éléments d architecture

INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE

Représentation d un entier en base b

Programmation linéaire

BCI - TPSP - Processeurs et Architectures Numériques

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Annexe 6. Notions d ordonnancement.

COMMUNICATION ENTRE DEUX ORDINATEURS PAR LASER MODULE EN CODE MORSE OU BINAIRE.

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

Patentamt JEuropaisches. European Patent Office Numéro de publication: Office européen des brevets DEMANDE DE BREVET EUROPEEN

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

CH.6 Propriétés des langages non contextuels

Logiciel de Base. I. Représentation des nombres

Gestion réactive des opérations de maintien et d actualisation réglementaire et technologique des systèmes complexes.

Electron S.R.L. - MERLINO - MILAN ITALIE Tel ( ) Fax Web electron@electron.it

La solution à vos mesures de pression

TD Architecture des ordinateurs. Jean-Luc Dekeyser

Fiche technique CPU 314SC/DPM (314-6CG13)

Caractéristiques techniques

Chapitre 5 : Flot maximal dans un graphe

CORRECTION TP Multimètres - Mesures de résistances - I. Mesure directe de résistors avec ohmmètre - comparaison de deux instruments de mesure

Eléments de Théorie des Graphes et Programmation Linéaire

WebSphere MQ & Haute Disponibilité

Système d automation TROVIS 6400 Régulateur compact TROVIS 6493

Objectifs. Clustering. Principe. Applications. Applications. Cartes de crédits. Remarques. Biologie, Génomique

Représentation des Nombres

PHP. Performances. Audit et optimisation LAMP. Julien Pauli. Cyril Pierre de Geyer. Guillaume Plessis. Préface d Armel Fauveau

Précision d un résultat et calculs d incertitudes

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Systèmes d information et bases de données (niveau 1)

Systèmes de communications numériques 2

Contribution à la conception par la simulation en électronique de puissance : application à l onduleur basse tension

- Instrumentation numérique -

Architecture des ordinateurs. Robin FERCOQ

UE 503 L3 MIAGE. Initiation Réseau et Programmation Web La couche physique. A. Belaïd

Systèmes d exploitation

Série D65/D75/D72 Afficheurs digitaux modulaires

EMETTEUR ULB. Architectures & circuits. Ecole ULB GDRO ESISAR - Valence 23-27/10/2006. David MARCHALAND STMicroelectronics 26/10/2006

Les diagrammes de modélisation

Hiérarchie matériel dans le monde informatique. Architecture d ordinateur : introduction. Hiérarchie matériel dans le monde informatique

G.P. DNS02 Septembre Réfraction...1 I.Préliminaires...1 II.Première partie...1 III.Deuxième partie...3. Réfraction

Transmissions série et parallèle

Architecture des ordinateurs Introduction à l informatique

Journées MATHRICE "Dijon-Besançon" DIJON mars Projet MySafeKey Authentification par clé USB

Conception Systèmes numériques VHDL et synthèse automatique des circuits

Eléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm)

Télécommunications. Plan

CHAPITRE VI ALEAS. 6.1.Généralités.

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

Métriques de performance pour les algorithmes et programmes parallèles

Conception Systèmes numériques VHDL et synthèse automatique des circuits

Chapitre 2 : communications numériques.

FONCTION DE DEMANDE : REVENU ET PRIX

Les droites (d 1 ) et (d 2 ) sont sécantes en A Le point A est le point d intersection des 2 droites

Plus courts chemins, programmation dynamique

Fonctions de la couche physique

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

Parallélisme et Répartition

TD 1 - Transmission en bande de passe

NanoSense. Protocole Modbus de la sonde Particules P4000. (Version 01F)

CHAPITRE VIII : Les circuits avec résistances ohmiques

SSNL126 - Flambement élastoplastique d'une poutre droite. Deux modélisations permettent de tester le critère de flambement en élastoplasticité :

Conception des systèmes répartis

Recueil d'exercices de logique séquentielle

Transcription:

Circuits numériques synchrones et synthèse se des automates version 1.0

Plan Opérateurs combinatoires Circuits numériques synchrones Eléments mémorisants Modèle des automates synchrones Synthèse des automates 2

Opérateur combinatoire : Additionneur 4 bits A = Σ a i * 2 i = a 3 *2 3 + a 2 * 2 2 + a 1 * 2 1 + a 0 * 2 0 B = Σ b i * 2 i = b 3 *2 3 + b 2 * 2 2 + b 1 * 2 1 + b 0 * 2 0 a[3:0] b[3:0] Adder s[3:0] 3

Additionneur 1 bit a i + b i + c i r i s i La somme de trois bits de même poids numérique peut prendre trois valeurs : 0, 1, 2, 3 Cette somme peut se recoder sur deux bits r i et s i (r i a un poids numérique double de s i ) a i b i c i r i s i 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 Table de vérité 4

Schéma possible pour l additionneur l 1 bit s i = a i xor b i xor c i r i = (a i and b i ) or (b i and c i ) or (a i and c i ) a i b i r i c i s i 5

Opérateur combinatoire : Multiplexeur 4 bits Un multiplexeur permet de sélectionner une donnée parmi 2 a[3:0] b[3:0] 1 0 sel x[3:0] Pour tous les bits x i : x i = (sel and a i ) or ((not sel) and b i ) 6

Schéma possible de multiplexeur 1 bit ai bi sel xi x i = (sel and a i ) or ((not sel) and b i ) 7

Temps de propagation Les portes logiques sont caractérisées par des temps de propagation : un événement sur une entrée peut créer un événement sur la sortie après un temps Tp(A->S) A S VDD tension B = 1 VDD/2 A S Tp(A->S) Le temps de propagation dépend de la capacité de charge et de la puissance de la porte. temps 8

Propagation des événements Un opérateur combinatoire est une structure orientée : Les événements se propagent des entrées vers les sorties! D=1 C=1 B=1 A X Y S S Y X A temps => Il ne doit pas y avoir de rebouclage dans un bloc combinatoire 9

Chaîne longue additionneur 4 bits a 3 b 3 a 2 b 2 a 1 b 1 a 0 b 0 0 s 3 s 2 s 1 s 0 La chaîne longue traverse 6 portes «nand» et une porte «xor» 10

Graphe de causalité Les nœuds représentent les événements sur les signaux Les arcs représentent les relations de causalité entre événements a b a b c r g x p c g x p r s s Schéma en portes logiques (opérateur combinatoire) Graphe de causalité (orienté et acyclique) 11

Plan Opérateurs combinatoires Circuits numériques synchrones Eléments mémorisants Modèle des automates synchrones Synthèse des automates 12

Circuits numériques synchrones Combi Combi Combi Combi CK 13

Le rôle stabilisateur des registres Q0 Q1 Q2 Q3 D Dans l opérateur combinatoire, les temps de propagation entre les signaux Q1,Q2,Q3,Q4 et le signal D sont très différents CK Les signaux de sortie des registres (Qi) sont stables pendant tout le cycle Les signaux d entrée des registres ne doivent être stables qu au moment du front montant d CK. CK Qi D 14

Le skew CKext CKz CKy CKz Le signal de synchronisation CK est une abstraction. Le réseau physique de distribution du signal CK n est pas parfait : les résistances et capacités intrinsèques des fils, ainsi que les amplificateurs intermédiaires introduisent des déphasages entre les signaux Cki qui parviennent aux registres. Définition : le skew est un majorant de la valeur absolue du déphasage entre deux signaux d horloge Cki et CKj 15

Chaînes longues Q0 Q1 Q2 Q3 D Pour qu un circuit numérique synchrone fonctionne correctement, il faut que le temps de propagation le la chaîne combinatoire la plus longue Tpmax entre deux registres soit inférieur au temps de cycle TC. Ta CKi Tpmax Tsu CKj Il faut tenir compte du temps d accès Ta et du temps de pré-établissement Tsu des registres, ainsi que du «skew» Tout opérateur combinatoire doit respecter la condition suivante : Ta(CK->Qi) + Tpmax(Qi->D) + Tsu(D->CKj) < TC - skew 16

Chaînes courtes Q D Un dysfonctionnement de type «chaîne courte» se produit lorsque le temps de propagation minimal entre deux registres est plus court que le déphasage entre les deux signaux d horloge (skew). CKi CKj Il faut ici également tenir compte du temps d accès Ta du registre source et du temps de maintien Th du registre destination. Tout opérateur combinatoire doit respecter la condition suivante : Ta(CK->Q) + Tpmin(Q->D) > Th(D->CKj + skew 17

Le triple rôle des registres Les registres ont une triple fonction : Mémorisation : stocker une valeur qui sera utilisée plus tard. Ceci impose que l écriture dans les registres soit conditionnelle. Synchronisation : assurer que toutes les données d un même opérateur combinatoire sont simultanément disponibles Stabilisation : garantir que les signaux d entrée des opérateurs combinatoires sont stables pendant toute la durée du cycle. 18

Plan Principe des circuits numériques synchrones Opérateurs combinatoires Eléments mémorisants Modèle des automates synchrones Synthèse des automates 19

Bi-stable Tout dispositif de mémorisation statique (durée de mémorisaton illimitée) contient une structure rebouclée possédant deux états stables. Q NQ Les deux états sont : Q = 0 / NQ = 1 NQ = not Q Q = 1 / NQ = 0 Q = not NQ 20

Bascule R/S R S Q NQ R S Q NQ 1 1 Q -1 NQ -1 Mémorisation 0 1 1 0 Écriture d un 1 1 0 0 1 Écriture d un 0 0 0 1 1 Inutilisé Une «bascule» R/S est un bistable inscriptible 21

Définition du Latch CK Q D Q 0 Q -1 Mémorisation 1 D Transparence CK CK D Un latch est un «demi-registre» Q 22

Schéma possible d un d latch D Q CK Q 0 Q -1 Mémorisation 1 D Transparence CK 23

Définition de la bascule D (D flip-flop) flop) Une bascule D permet de «mémoriser» 1 bit L écriture d une nouvelle valeur a lieu lors du front montant du signal CK L entrée D doit être stable un peu avant (Tsu) et un peu après (Th) le front La sortie Q change de valeur au plus une fois par cycle après le front (Ta) Tsu Th CK D Q D Q CK Ta 24

Réalisation d une Bascule D Latch«maître» Latch «esclave» D Q D Q On réalise une bascule D à échantillonnage sur front en utilisant deux latchs en série. 25

Ecriture conditionnelle 0 Din 1 D Q Dout Wen CK Lorsque le signal d autorisation d écriture vaut 0, on re-écrit la valeur déjà pstockée dans le registre. 26

Plan Principe des circuits numériques synchrones Opérateurs combinatoires Réalisation des éléments mémorisants Modèle des automates synchrones Synthèse des automates 27

Automates d éd états synchrones Entrées CK T Etat G Tout système numérique synchrone peut être modélisé par un automate : Fonction de transition : NextEtat <= T(Etat, Entrées) Fonction de génération : Sorties <= G(Etat, Entrées) Sorties 28

Automates d éd états synchrones CK Entrées n T p Etat G m Sorties Si on a : - n bits d entrée Ei - m bits de sortie Sj - p bits mémorisés Rk Il faut définir : - p fonctions booléennes dépendant de (n+p) variables pour la transition NR k = Τ k (E i, R k ) - m fonctions booléennes dépendant de (n+p) variables la génération S j = Γj(E i, R k ) 29

Automates de Moore et de Mealy T T Etat Etat G G Cas général : Automate de Mealy Cas particulier : La fonction de génération ne dépend que de l état! Automate de Moore 30

Représentation graphique d un d automate Les nœuds {i} représentent les états Les arcs (i,j) représentent les transitions f i,i f m,m Chaque arc (i,j) est étiqueté par une expression Booléenne f i,j ne dépendant que des signaux d entrée, et définissant la condition de transition. f i,j j i f m,i f i,k m f l,m l Dans le cas d un automate de Moore, les signaux de sortie ne dépendent que de l état : chaque nœud est donc étiqueté par la valeur des signaux de sortie. f j,k k f k,l 31

Automate déterministed Pour qu un automate possède un comportement déterministe, il faut respecter les conditions suivantes : Existence d un mécanisme matériel d initialisation permettant de forcer l automate dans un état initial connu. Condition d orthogonalité : pour tout état i, et pour toute configuration des entrées, il y a un seul état successeur de l état i. f i,j. f i,k = 0 si j différent de k Condition de complétude : pour toute configuration des entrées, il y a toujours un état successeur de l état i. Σ j f i,j = 1 32

Automates communicants Un système numérique synchrone est souvent conçu comme un ensemble d automates fonctionnant en parallèle, et communicant entre eux. T0 T1 T2 CK R0 R1 R2 G0 G1 G2 33

Inconvénient nient des Automates de mealy Dans un automate de mealy, Il existe une dépendance combinatoire entre les entrées et les sorties! ceci introduit des chaînes longues traversant plusieurs composants. Il devient impossible de caractériser le comportement temporel de chaque automate indépendamment des autres. 34

Plan Principe des circuits numériques synchrones Opérateurs combinatoires Réalisation des éléments mémorisants Modèle des automates synchrones Synthèse des automates 35

Exemple : Détection D d une séquence Problème à résoudre : On cherche a réaliser un dispositif matériel possédant un seul bit d entrée E et une seul bit de sortie S. L entrée E est échantillonnée à chaque cycle. La sortie S passe à 1 pendant un cycle chaque fois que l entrée E a la valeur 1 pendant 3 cycles consécutifs. CK E T Etat G S 36

1) construction du graphe de l automate not E E Z not E U not E T E Signification des états : E not E D E - Z : le dernier bit reçu valait 0 - U : les 2 derniers bits reçus valaient 0,1 - D : les 3 derniers bits reçus valaient 0,1,1 - T : les 3 derniers bits reçus valaient 1,1,1 37

2) Choix du codage des états Etat R1 R0 X0 X1 X2 X3 «Z» 0 0 1 0 0 0 «U» 0 1 0 1 0 0 «D» 1 0 0 0 1 0 «T» 1 1 0 0 0 1 codage binaire (sur 2 bits) codage «one hot» (un bit par état) Dans la suite de l exemple, on utilisera le codage binaire 38

3) Construction de la table de vérité R1 R0 E NR1 NR0 S 0 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 0 0 0 1 1 1 0 0 1 0 0 0 0 0 1 0 1 1 1 0 1 1 0 0 0 1 1 1 1 1 1 1 Fonction de transition : NR1 = E and ( R1 or R0) NR0 = E and ( R1 or (not R0)) Fonction de génération : S = R1 and R0 39

4/ Synthèse logique E NR1 NR0 On traduit les expressions Booléennes représentant la fonction de transition et la fonction de génération en un schéma en portes. CK R1 R0 Pour cet exemple, il faut 3 portes «and», 2 portes «or», un inverseur et 2 bascules «D». S 40

Généralisation Cette méthode de synthèse est systématique et a été automatisée dans des outils de CAO/VLSI. On peut générer le schéma en portes pour des automates possédant plusieurs centaines d états. Le facteur limitant est la taille de la table de vérité dont la complexité est proportionnelle à 2 n+p (n nombre de bits d entrée, p nombre de bascules) 41