1 / 35

Objectifs :

Unité 6: Logique séquentielle. Objectifs : À la fin ce cette unité, vous comprendrez le fonctionnement des circuits séquentiels (à mémoire) utilisés dans les ordinateurs. Pour y arriver, vous devrez avoir atteint les objectifs suivants : - décrire le fonctionnement d'un automate fini;

fawn
Download Presentation

Objectifs :

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Unité 6: Logique séquentielle • Objectifs : • À la fin ce cette unité, vous comprendrez le fonctionnement des circuits séquentiels (à mémoire) utilisés dans les ordinateurs. • Pour y arriver, vous devrez avoir atteint les objectifs suivants : • - décrire le fonctionnement d'un automate fini; • - distinguer un circuit asynchrone d'un circuit synchrone; • - synthétiser un circuit séquentiel synchrone simple; • - analyser un circuit séquentiel synchrone simple. 166

  2. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • Dans les circuits combinatoires, les signaux de sortie ne dépendent que des signaux d ’entrée présents au même instant. • Dans les circuits séquentiels, il y a de la rétroaction : les signaux de sortie ne dépendant pas uniquement des entrées, mais aussi de leur séquence. Le circuit se rappelle des entrées et des états antérieurs : il a une mémoire du passé. • L’étude des circuits combinatoires repose sur l’algèbre de Boole. Celle des circuits séquentiels repose sur la théorie des automates finis. 167

  3. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.1 Concept d’automate fini • Un automate fini possède un nombre fini d’éléments et de mémoires. • Un automate fini ne peut prendre que 2n états appelés états internes, où n est le nombre de bits de mémoire. • On peut caractériser un automate par : • • Sa fonction de transfert • • Sa table de transition • • Son diagramme d’états ou de transition 168

  4. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.1 Concept d’automate fini • Exemple : • Diagramme d’état ou de transition Table de transition q(t) e(t) 0 1 0 0 1 1 0 1 q(t) e(t) 0 1 0 0 0 1 1 1 entrée / sortie 1/0 q=0 q=1 0/0 1/1 q(t+1) 0/1 état état s(t) Fonction de transfert : q(t+1) = e(t) s(t) = q(t) 169

  5. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.1 Concept d’automate fini • Automate de Moore • q(t+1) = f [e(t), q(t)] • s(t) = g [q(t)] e(t) Logique combinatoire Logique combinatoire s(t) État q(t) Les états futurs dépendent des entrées présentes e(t) et des états internes présents q(t). Les sorties ne dépendent que des états internes présents q(t). 170

  6. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.1 Concept d’automate fini • Automate de Mealy • q(t+1) = f [e(t), q(t)] • s(t) = g [e(t), q(t)] e(t) s(t) Logique combinatoire État q(t) q(t) Les sorties s(t) dépendent des états internes présents q(t) et des entrées présentes e(t). 171

  7. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.2 Circuits asynchrones et synchrones • Dans les circuits asynchrones, la sortie est modifiée dès qu’il y a un changement de l’état des entrées. • Dans les circuits synchrones, la sortie ne change qu’après un signal d’horloge. Les circuits synchrones sont plus simples à synthétiser et à analyser. • 5.3.3 Bistables • L’élément de base de tout circuit séquentiel est le bistable (bascule, flip-flop), qui est un circuit, lui-même asynchrone, qui servira d’élément de mémoire pour les circuits synchrones ou asynchrones. 172

  8. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.3 Bistables • Bistable RS S Q2 On observe que si S = 0 et R = 0, le circuit est dans l’un de deux états stables : Q1 = 0 et Q2 = 1 ou Q1 = 1 et Q2 = 0. Q1 R 0 0 1 0 0 1 1 0 0 1 0 0 173

  9. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.3 Bistables • Bistable RS S Q2 Si S = 1 et R = 0, alors Q1= 1 et Q2 = 0. C’est la transition «SET». Si S = 0 et R = 1, alors Q1 = 0 et Q2 = 1. C ’est la transition «RESET». Q1 R 1 0 0 1 1 0 0 1 1 0 0 1 174

  10. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.3 Bistables • Bistable RS S Q2 Si S = 1 et R = 1, alors Q1= 0 et Q2 = 0. Mais cette combinaison n’est pas désira-ble, car si on remet nos entrées simul-tanément à 0, on ne peut pas prévoir l’état final du circuit. On remarque que dans les trois autres cas, Q2 = Q1. Q1 R 1 0 0 0 0 1 175

  11. Qn+1 = Sn+ Rn.Qn 1 1 Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.3 Bistables • Bistable RS • On résume ce comportement dans le tableau suivant : Sn Rn 0 0 1 0 1 0 0 1 0 1 1 1 0 0 S Q stable set reset Q R interdit Ou encore : 176

  12. Qn+1 = Sn+ Rn.Qn ou Qn+1 = Cn.Qn + Cn(Sn+Rn.Qn) Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.3 Bistables • Bistable RS avec horloge S Q C Q R S Q C R Q 177

  13. Qn+1 = Dn ou Qn+1 = DnC + QnC Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.3 Bistables • Bistable D avec horloge C Dn Qn+1 0 0 Qn 0 1 Qn 1 0 0 1 1 1 D Q D Q C Q C Q L’inverseur élimine complètement la possibilité d’avoir la com-binaison 1-1 à l’entrée des NOR. 178

  14. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.3 Bistables • Bistable T asynchrone • Bistable T synchrone Qn+1 = TnQn + TnQn S Q C R Q D Q C Q T ou T T Q Qn+1 = CnQn + Cn(TnQn + TnQn) S Q C R Q C T C T Q 179

  15. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.3 Bistables • Application : registre D de 4 bits D3 D2 D1 D0 D Q C Q D Q C Q D Q C Q D Q C Q écriture lecture D3 D2 D1 D0 180

  16. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.3 Bistables • Application : décaleur à droite Q3 Q2 Q1 Q0 0 D3 Q C Q D2 Q C Q D1 Q C Q D0 Q C Q horloge Qn+1 = Dn = 0 Qn+1 = Dn = Qn Qn+1 = Dn = Qn , etc. 3 3 2 2 3 1 1 2 181

  17. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.3 Bistables • Application : compteur binaire asynchrone modulo-16 A B C D Q T Q Q T Q Q T Q Q T Q horloge horloge A 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 B 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 C 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 D 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 182

  18. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.3 Bistables • Bistables déclenchés par une montée ou une descente de l’horloge (edge-triggered) • Dans les circuits précédents, il est sous-entendu que le signal d’horloge est court, i.e. de l’ordre du temps de réponse du circuit. Sinon, un circuit comme celui du bistable T pourrait bas-culer plusieurs fois pendant le temps où l’horloge est 1. • Ces circuits sont représentés par les diagrammes suivants : D Q Q D Q Q Qn+1 = Dn Leur sortie change seulement au moment de la transition, selon la valeur de D à cet instant précis. 183

  19. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Pour faire la synthèse d’un circuit séquentiel, on établit d’abord son diagramme de transition. • On contruit ensuite sa table d’états. • On réalise le circuit combinatoire associé à chaque bistable. • On réalise le circuit combinatoire associé à chaque sortie. 184

  20. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 1 : compteur binaire synchrone modulo-4 sans entrée • Diagramme de transition Table d’états Q1Q2 01 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0 00 10 11 185

  21. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 1 : compteur binaire synchrone modulo-4 sans entrée • Réalisation au moyen de bistables D 0 0 0 1 0 1 0 1 1 0 1 0 1 0 1 1 1 1 1 1 0 0 0 0 D2 Q2 C Q2 D1 Q1 C Q1 186

  22. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 1 : compteur binaire synchrone modulo-4 sans entrée • Réalisation au moyen de bistables T synchrones • Pour le tableau, si , sinon , • et si , sinon . 0 0 0 1 0 1 0 1 1 0 1 1 1 0 1 1 0 1 1 1 0 0 1 1 1 T2 Q2 C Q2 T1 Q1 C Q1 187

  23. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 2 : compteur binaire synchrone modulo-4 avec entrée • Diagramme de transition Table d’états 0/01 x 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 1 0 1 0 1 1 1 1 1 0 1 1 1 1 1 0 0 1/01 1/10 01 Q1Q2 0/00 00 10 0/10 1/00 11 1/11 0/11 188

  24. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 2 : compteur binaire synchrone modulo-4 avec entrée • Réalisation au moyen de bistables T xn xn 0 1 00 0 0 01 0 1 11 0 1 10 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 0 0 0 1 1 1 0 1 1 1 0 0 1 0 0 0 1 0 1 1 1 0 1 1 1 0 1 1 0 0 1 1 1 0 0 1 1 189

  25. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 2 : compteur binaire synchrone modulo-4 avec entrée • Réalisation au moyen de bistables T synchrones x x T1 Q1 C Q1 T2 Q2 C Q2 Nous ne nous sommes pas préoccupés des sorties, puisque selon Le diagramme de transition, il est évident qu’elles sont égales à et respectivement. 190

  26. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 2 : compteur binaire synchrone modulo-4 avec entrée • Réalisation au moyen de bistables D xn xn 0 1 00 0 0 01 0 1 11 1 0 10 1 1 0 1 00 0 1 01 1 0 11 1 0 10 0 1 xn 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 0 1 0 1 1 1 0 1 0 1 0 0 1 0 1 0 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 191

  27. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 2 : compteur binaire synchrone modulo-4 avec entrée • Réalisation au moyen de bistables D D2 Q2 C Q2 D1 Q1 C Q1 x x 192

  28. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 3 : Système de contrôle de feux de circulation Les feux alternent de A à B à chaque coup d’horloge quand x = 0. Dans l’état A, la circulation se fait dans la direction NS, dans l’état B, dans la direction EO. Un piéton peut traverser après avoir appuyé sur le bouton (x = 1) car quand x =1, on passe à l’état C dans lequel les feux sont sous deux rouges pour la durée d’une horloge ou tant que le bouton est enfoncé. x = 0 A B x = 0 x = 1 x = 1 x = 0 C x = 1 193

  29. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 3 : Système de contrôle de feux de circulation • Cette réalisation un peu naïve présente quelques problèmes : • Si un malin appuie sans cesse sur le bouton, la circulation automobile est complètement paralysée. D’autre part, comme le système une fois dans l‘état C retourne toujours dans l’état A, il se pourrait qu’on n’arrive presque jamais dans l’état B s’il y a fréquemment des piétons. 194

  30. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 3 : Système de contrôle de feux de circulation • Une meilleure réalisation serait la suivante : x = 0 Entrée Sortie présente x présente 0 1 z1z2 A B C 0 1 B A D 1 0 C B B 0 0 D A A 0 0 État présent A B x = 0 x = 1 x = 1 x = 0 ou 1 C D État suivant 195

  31. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 3 : Système de contrôle de feux de circulation • Codage des états : on attribue arbitrairement • Q1Q2 = 00 représente A • Q1Q2 = 01 représente B • Q1Q2 = 10 représente C • Q1Q2 = 11 représente D Entrée Sortie présente x présente 0 1 z1z2 00 10 10 0 1 01 00 11 1 0 10 01 01 0 0 11 00 00 0 0 État présent État suivant 196

  32. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 3 : Système de contrôle de feux de circulation • Table de transition Entrée État État Sorties Bistables x présent suivant présentes D1D2 Q1Q2 Q1+Q2+ z1z2 0 00 01 01 01 0 01 00 10 00 0 10 01 00 01 0 11 00 00 00 1 00 10 01 10 1 01 11 10 11 1 10 01 00 01 1 11 00 00 00 197

  33. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 3 : Système de contrôle de feux de circulation • Tables de Karnaugh pour les entrées des bistables : Q1Q2 Q1Q2 x x 00 01 11 10 0 0 0 0 0 1 1 1 0 0 00 01 11 10 0 1 0 0 1 1 0 1 0 1 D2 D1 198

  34. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 3 : Système de contrôle de feux de circulation • Tables de Karnaugh pour les sorties : Q1Q2 Q1Q2 x x 00 01 11 10 0 0 1 0 0 1 0 1 0 0 00 01 11 10 0 1 0 0 0 1 1 0 0 0 z2 z1 199

  35. Unité 6: Logique séquentielle • 5.3 Circuits séquentiels • 5.3.4 Synthèse d’un circuit séquentiel • Exemple 3 : Système de contrôle de feux de circulation • Circuit : x D1 Q1 Q1 z1 D2 Q2 Q2 z2 horloge 200

More Related