Sequentielle Logik

Im Automatenheorie, Sequentielle Logik ist eine Art von Art von Logikkreis deren Ausgabe hängt vom gegenwärtigen Wert seiner Eingangssignale und von der ab Reihenfolge der vergangenen Eingänge, der Eingangsgeschichte. [1][2][3][4] Dies steht im Gegensatz zu Kombinationslogik, deren Ausgabe nur der vorliegenden Eingabe ist. Das heißt, sequentielle Logik hat Zustand (Erinnerung) Während die Kombinationslogik nicht der Fall ist.

Sequentielle Logik wird zum Konstruktion verwendet Finite-State-Maschinen, ein grundlegender Baustein in allen digitalen Schaltkreisen. Praktisch alle Schaltungen in praktischen digitalen Geräten sind eine Mischung aus kombinations- und sequentieller Logik.

Ein vertrautes Beispiel für ein Gerät mit sequentieller Logik ist a Fernsehgerät Mit "Channel Up" und "Channel Down" -Tasten.[1] Durch das Drücken der Taste "UP" wird dem Fernseher eine Eingabe angezeigt, in der er zum nächsten Kanal über dem, den er derzeit empfängt, wechselt. Wenn sich der Fernseher auf Kanal 5 befindet, schaltet das Drücken von "Up" um Kanal 6. Wenn sich der Fernseher jedoch auf Kanal 8 befindet und das "Up" auf "9" drückt, um "9" zu seiten. Damit die Kanalauswahl korrekt funktioniert, muss sich der Fernseher bewusst sein, welchen Kanal er derzeit erhält, der durch frühere Kanalauswahl bestimmt wurde.[1] Der Fernseher speichert den aktuellen Kanal als Teil seiner Zustand. Wenn ein "Kanal -Up "- oder" Kanal -Down "-Einpuls gegeben wird, berechnet die sequentielle Logik der Kanalauswahlschaltung den neuen Kanal aus der Eingabe und dem aktuellen Kanal.

Digitale sequentielle Logikschaltungen werden in unterteilt in synchron und asynchron Typen. In synchronen aufeinanderfolgenden Schaltungen ändert sich der Status des Geräts nur zu diskreten Zeiten als Antwort auf a Taktsignal. In asynchronen Schaltkreisen kann sich der Status des Geräts jederzeit als Reaktion auf die Änderung der Eingänge ändern.

Synchrone sequentielle Logik

Fast alle sequentiellen Logik heute ist heute getaktet oder synchron Logik. In einer synchronen Schaltung, und elektronischer Oszillator genannt Uhr (oder Uhrengenerator) erzeugt eine Sequenz von sich wiederholenden Impulsen, die als die genannt werden Taktsignal die an alle Speicherelemente in der Schaltung verteilt ist. Das grundlegende Speicherelement in der sequentiellen Logik ist das Flip Flops. Die Ausgabe jedes Flip-Flops ändert sich nur, wenn sie durch den Taktimpuls ausgelöst werden. Daher beginnt die Logiksignale im gesamten Schaltkreis gleichzeitig in regelmäßigen Abständen, die von der Uhr synchronisiert sind.

Die Ausgabe aller Speicherelemente (Flip-Flops) in der Schaltung zu einem bestimmten Zeitpunkt, die von ihnen enthaltenen Binärdaten werden als die genannt Zustand der Schaltung. Der Zustand der Synchronschaltung ändert sich nur auf Taktimpulsen. In jedem Zyklus wird der nächste Zustand durch den aktuellen Zustand und den Wert der Eingangssignale bei der Taktpuls bestimmt.

Der Hauptvorteil der synchronen Logik ist seine Einfachheit. Die logischen Tore, die die Operationen für die Daten ausführen, erfordern eine begrenzte Zeit, um auf Änderungen ihrer Eingaben zu reagieren. Das nennt man Ausbreitungsverzögerung. Das Intervall zwischen Taktimpulsen muss so lang genug sein, damit alle Logik -Tore Zeit haben, auf die Änderungen zu reagieren, und deren Ausgänge auf stabile Logikwerte "ablegen", bevor der nächste Taktpuls auftritt. Solange dieser Zustand erfüllt ist (ignoriert bestimmte andere Details), ist die Schaltung garantiert stabil und zuverlässig. Dies bestimmt die maximale Betriebsgeschwindigkeit der Synchronschaltung.

Die Synchronlogik hat zwei Hauptnachteile:

  • Die maximal mögliche Taktrate wird durch den langsamsten logischen Pfad in der Schaltung bestimmt, auch als kritischer Pfad bezeichnet. Jede logische Berechnung von der einfachsten bis zum komplexesten muss in einem Taktzyklus abgeschlossen werden. Logische Pfade, die ihre Berechnungen schnell vervollständigen, sind die meiste Zeit im Leerlauf und warten auf den nächsten Uhrenpuls. Daher kann die synchrone Logik langsamer sein als eine asynchrone Logik. Eine Möglichkeit, synchrone Schaltungen zu beschleunigen Pipelining. Diese Technik wird ausgiebig eingesetzt in Mikroprozessor Design und hilft, die Leistung moderner Prozessoren zu verbessern.
  • Das Taktsignal muss auf jeden Flip-Flop in der Schaltung verteilt werden. Da es sich bei der Uhr normalerweise um ein Hochfrequenzsignal handelt, verbraucht diese Verteilung eine relativ große Menge an Strom und löst viel Wärme ab. Sogar die Flip-Flops, die nichts tun Abwärme im Chip. Bei tragbaren Geräten mit begrenzter Batteriestrom wird das Taktsignal auch dann fortgesetzt, wenn das Gerät nicht verwendet wird und Strom verbraucht.

Asynchrone sequentielle Logik

Die asynchrone sequentielle Logik wird nicht durch ein Taktsignal synchronisiert. Die Ausgänge der Schaltung ändern sich direkt als Reaktion auf Änderungen der Eingänge. Der Vorteil einer asynchronen Logik besteht darin, dass sie schneller als die synchrone Logik sein kann, da die Schaltung nicht auf ein Taktsignal warten muss, um Eingänge zu verarbeiten. Die Geschwindigkeit des Geräts ist möglicherweise nur durch die begrenzt Ausbreitungsverzögerungen des Logik -Tore Gebraucht.

Eine asynchrone Logik ist jedoch schwieriger zu gestalten und unterliegt Problemen, die nicht in synchronen Designs auftreten. Das Hauptproblem ist, dass digitale Speicherelemente empfindlich auf die Reihenfolge reagieren, dass ihre Eingangssignale eintreffen. Wenn zwei Signale zu einem ankommen Flip Flops oder fast zur gleichen Zeit, in die der Schaltkreis eingeht, kann davon abhängen, in welchem ​​Signal das Signal zuerst an das Tor gelangt. Daher kann die Schaltung in den falschen Zustand gehen, abhängig von kleinen Unterschieden in der Ausbreitungsverzögerungen der logischen Tore. Dies wird a genannt Rassenbedingung. Dieses Problem ist in synchronen Schaltungen nicht so schwerwiegend, da sich die Ausgänge der Speicherelemente nur bei jedem Taktpuls ändern. Das Intervall zwischen Taktsignalen ist so lang genug, dass die Ausgänge der Speicherelemente "regeln" können, sodass sie sich nicht ändern, wenn die nächste Uhr kommt. Daher sind die einzigen Timing -Probleme auf "asynchrone Eingaben" zurückzuführen. Eingänge in die Schaltung von anderen Systemen, die nicht mit dem Taktsignal synchronisiert sind.

Asynchrone sequentielle Schaltkreise werden typischerweise nur in wenigen kritischen Teilen von ansonsten synchronen Systemen verwendet digitale Signalverarbeitung Schaltungen.

Das Design der asynchronen Logik verwendet unterschiedliche mathematische Modelle und Techniken aus synchroner Logik und ist ein aktives Forschungsbereich.

Siehe auch

Verweise

  1. ^ a b c Vai, M. Michael (2000). VLSI -Design. CRC Press. p. 147. ISBN 0849318769.
  2. ^ Cavanagh, Joseph (2006). Sequentielle Logik: Analyse und Synthese. CRC Press. S. ix. ISBN 0849375649.
  3. ^ Lipiansky, Ed (2012). Elektrik-, Elektronik- und digitale Hardware -Essentials für Wissenschaftler und Ingenieure. John Wiley und Söhne. p. 8.39. ISBN 978-1118414545.
  4. ^ Dally, William J.; Harting, R. Curtis (2012). Digitales Design: Ein Systemansatz. Cambridge University Press. p. 291. ISBN 978-0521199506.

Weitere Lektüre

  • Katz, R und Boriello, G. Zeitgenössisches Logikdesign. 2. Aufl. Prentice Hall. 2005. ISBN0-201-30857-6.
  • Zvi Kohavi, Niraj K. Jha. Wechsel und endliche Automatentheorie. 3. Aufl. Cambridge University Press. 2009. ISBN978-0-521-85748-2
  • V. O. Vasyukevich. (2009). Asynchrone logische Elemente. Venejunktion und Sequenzung - 118 p.