La Logique Séquentielle I

Transcription

La Logique Séquentielle I
La Logique Séquentielle I
Flip-flops et …
PHYS-F-314
Gilles de Lentdecker et Kael Hanson
Université Libre de Bruxelles
Service de Physique des particules élémentaires
Bascule SR (SR « Flip-Flop »)
Le circuit ci-dessous à gauche est la plus fondamentale porte logique qui contient
une mémoire de son état précédent. Considérons ce qui se passe quand les deux
entrées sont 1: si Q est 1 il entraîne Q’ d’être 0 qui soutient Q étant 1; si Q est 0 le
résultat est inversé à cause de la symétrie du circuit. Il y a deux états possibles et,
alors que S et R sont 1, le circuit « rappelle » le dernier état. Voilà, nous avons créé
une mémoire!
Si on souhaite de changer l’état, il est possible par changer S ou R: si S devient 0 et R
reste à 1, il force Q à 1 et Q’ à 0. Si S demeure 1 et R est baissé à 0, puis Q’ est 1 et Q
est 0. Notez que l’activation est « logic low » : S et R agent quand ils sont à 0. Il y a
également une version ci-dessous à droit qu’agit en logique positive (à vérifier).
S R Q Q’ 1 1 1 0 0 1 0 1 1 0 0 0 1 1 pas de changement Mis en œuvre d’un bascule SR en portes OU-NON et qui a R et
S « active-high. »
2 Verrous
D LE S R Q 0 1 1 0 0 1 1 0 1 1 X 0 1 1 hold Un verrou transparent (transparent latch) recopie son entrée ou tient fixé l’état de
son entrée au point précédent en fonction d’un signal de contrôle. On peut
construire cette porte d’une bascule SR et quelques portes par réfléchir sûr le
tableau de fonctionnement à droit …
S = I'+LE'
R = I + LE'
€
D LE S Q R 3 The Edge-Triggered D Flip-Flop
Même si le bascule SR semble très utile, en réalité il est rarement utilisé, or plus populaire sont les « clocked » flip-flops
dont le type « D » est le plus populaire. Ici c’est la réalisation de le circuit intégré ’74 « positive edge-triggered type D
flip-flop. » Suit la titre, ce circuit n’agit que à le front montant (en général il y a également les modelés qui agit à le
descendant) d’un signal « horloge. » Allons regarder au fonctionnement en détail. On note immédiatement que le côté
droit est simplement une SR – donc j’étiquette ces points dans le circuit S et R. Lors CLK est 0 R et S sont 1, et en
suivant les règles de la SR la sortie demeure pas changée.
Y S R X CLK D X Y R S Q Q’ 0 0 1 0 1 1 1 0 1 0 0 1 0 1 1 1 1 0 0 1 0 1 0 1 0 1 1 1 1 1 0 1 1 0 1 0 1 0 1 1 1 0 1 0 pas de changement pas de changement 4 Verrous et registres
LE OE’ Dn In On H H L L L H H H H H L H l1 L L L H h1 H H H L L L Z H L H H Z L L l1 L Z L L h1 H Z ‘573 octal D-­‐type transparent latch et le tableau de foncDonnement. Notez 1: le minuscules l et h signifie l’état avant l’événement LE  0. Aussi à savoir: l’état interne est préservé même si la sorDe est en Z. CP OE’ Dn In On LE2 1 l1 L L LE2 1 h1 H H LE2 0 l1 L Z LE2 0 h1 H Z ‘574 octal D-­‐type flip-­‐flop posiDve edge triggered. Notez 1: le miniscules ici indiquent l’état avant le front d’horloge CP. Notez 2: LE = front montant – la registre n’est sensible qu’à l’aWaque d’horloge. If you are sDll confused about the difference between latches and registers, note that the latch’s output is dependent on the level of the LE signal while the register’s output is dependent on the rising edge of the clock signal 5 JK Flip Flop
Le bascule en type « JK » opère similairement à le D bascule avec un double entrée comme la SR (J ~ S
et K ~ R). Il étend la fonctionnalité de la SR par munir une opération quand J = K = 1 : inverser la
sortie. Il est plus général que le D et peut être configuré d’agir comme le D.
J K CLK Qn+1 0 0 TE Qn 0 1 TE 0 1 0 TE 1 1 1 TE Qn’ En particular, notez bien la cercle à l’entrée d’horloge: il précise que la ‘112 soit un JK de type qui
déclenche à le rebord arrière. Même si les JKs sont plus versatiles que les bascules D, les D’s sont
beaucoup plus populaire, spécifiquement dans la logique programmée où les JK’s sont difficiles de
trouver en « hardware. » Pour le plupart, FPGAs implémente D’s.
6 Compteurs en cascade
Q4 Q3 Q2 Q1 CLR CLK 7 Les automates finis FINITE STATE MACHINES
8 L’exemple FSM : distributeur automatique
Disons que vous avez la tâche pour réaliser un distributeur des colas. Chaque cola coût 1 EUR et la machine prend 1 EUR, et 50/20/10 EUR cent espèces. Vous dessinez la FSM montré à droit où chaque état est marqué par le montant qui reste à payer: il y a 11 états et chaque état possède 1, 2, ou 3 sorDes en foncDon de la prochaine espèce reçue. Énumérez chaque état comme un adresse binaire – vous avez besoin de 4 registres de tenir l’état de la FSM. Une tableau parDel de la progression des états est: Q3 0 0 0 0 0 0 0 … 1 État en entrée Q2 Q1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 … … 0 0 Q0 0 0 0 1 1 1 0 … 1 C10 1 0 0 1 0 0 1 … 1 AcAon C20 0 1 0 0 1 0 0 … 0 C50 0 0 1 0 0 1 0 … 0 D3 0 0 0 0 0 0 0 … 1 État en sorAe D2 D1 0 0 0 1 1 0 0 1 0 1 1 1 0 1 … … 0 1 D0 1 0 1 0 1 0 1 … 0 start
0000
10
20
20
50
90
0001
50
50
40
0110
10
10
30
0111
80
0010
10
70
0011
10
20
20
10
20
50
0101
60
0100
10
20
50
50
10
20
1000
50
10
1001
10
20
10
On doit trouver les combinaisons des OU/ET/NON qui saDsfait l’expression logique: Dn = f(Qi; C10; C20; C50) Je menDonne qu’il soit également possible d’énumérer le choix d’espèce en 2 chiffres binaires: 00 = 0.10 EUR; 01 = 0.20 EUR; 10 = 0.50 EUR, peut être. Ceci est déjà un problème très difficile de réaliser en portes discrètes. receive cola
1010
9 Le compteur comme une FSM
Q2 Q1 Q0 UP D2 D1 D0 0 0 0 1 0 0 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 1 1 0 1 0 0 0 0 1 0 1 1 1 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 0 0 1 1 1 0 1 1 1 1 0 1 0 1 0 1 0 0 1 1 0 1 1 1 1 1 1 0 0 1 0 1 1 1 1 1 0 0 0 1 1 1 0 1 1 0 Les limitaDons d’un compteur en cascade étaient présentés. Ici est un mis en œuvre d’un compteur synchrone de 3-­‐bits uDlisant la concepDon de la FSM. Nous énumérons les états dans le tableau … ajoutons la possibilité de préciser la direcDon par le signal UP – vrai indique que le compteur se croisse à chaque pas, faux qu’il décrémente. Les relaDons logiques pour marcher travers les états sont: D 0 = Q 0ʹ′
D 1 = Q 0 ⊕ UP ⊕ Q 1
D 2 = (Q 0 ⊕ UP)(Q 1 ⊕ UP) ⊕ Q 2
€
10 Simulation du compteur synchrone
11 

Documents pareils