Altifigence Academy

22 / 63 · Konzept

Synchrone Zustandsübergänge und die Rolle des Takts

Ein synchrones System als Registergruppe interpretieren, die denselben vorherigen Zustand liest.

Eine Flanke aktualisiert den gesamten Zustand

Für Zustandsvektor QkQ_k und Eingang XkX_k lautet die zentrale synchrone Spezifikation:

Qk+1=F(Qk,Xk),Yk=G(Qk,Xk)Q_{k+1}=F(Q_k,X_k),\qquad Y_k=G(Q_k,X_k)

F ist die Folgezustands-, G die Ausgangsfunktion. Der Takt bestimmt nicht die Berechnung, sondern wann der berechnete Zustand gespeichert wird. Mehrere RegisterRegister Speichert einen Zustand aus mehreren Bits. Die synchronen Register dieses Kurses übernehmen festgelegte Eingaben an Taktflanken. Mehr erfahren bestimmen ihre jeweiligen Folgezustände alle aus demselben vorherigen Gesamtzustand.

Q durchläuft F und erzeugt den nächsten Zustandseingang. Der gespeicherte Wert wird zum Q des folgenden Zeitabschnitts. So werden Berechnung zwischen Flanken und Speicherung an der Flanke getrennt.

Den nächsten Zustand aus dem bisherigen berechnen
  1. Aktueller Zustand Q: Zwischen den Taktflanken halten
  2. F(Q, X): Aus Eingängen und altem Zustand berechnen
  3. An der Flanke speichern: Berechnetes Ergebnis als nächstes Q

Die Taktperiode muss zum langsamsten Pfad passen

Sowohl das Erscheinen eines neuen Registerausgangs als auch der Weg durch die kombinatorische Logik zum nächsten Register benötigen Zeit. Vor der nächsten Flanke muss zusätzlich SetupSetup Mindestzeit vor der Abtastflanke, in der Eingangsdaten stabil sein müssen. Bei Verletzung ist das gespeicherte Ergebnis nicht garantiert. Mehr erfahren erfüllt sein. Kurzer Code garantiert keine hohe Taktfrequenz.

Eine Periode von 10 ns entspricht 100 MHz.

f=1Tf=\frac{1}{T}

Lassen Sie die Einheitenumrechnung nicht weg: Der Kehrwert von 1 ns ist 1 GHz, der von 1 ps 1 THz. Die Simulationsperiode ist ein Eingabezeitplan, kein Messergebnis für die Betriebsfrequenz der realen Schaltung.

Signale zwischen Flanken interpretieren

Registerausgänge halten ihren logischen Zustand bis zur nächsten gültigen Flanke, kombinatorische Ausgänge können sich dazwischen ändern. Synchroner oder asynchroner ResetReset Steuerung zur Rückkehr in einen festgelegten Anfangszustand. Synchron/asynchron und Priorität gegenüber anderen Steuerungen müssen definiert werden. Mehr erfahren erzeugt unterschiedliche Ausnahmen. Die bereitgestellten Übungen verwenden einen Takt und synchronen Reset.

Legen Sie vor dem Lesen des Zeitdiagramms Eingabegültigkeit, Zustandsaktualisierung und Ausgangsbeobachtung fest. Zustandsgleichungen sind genauer als die Softwarevorstellung „pro Takt wird eine Codezeile ausgeführt“.

Selbst ausprobieren

Welche Periode hat ein 200-MHz-Takt? Bei a<=d; b<=a; im selben Takt: Übernimmt b das gerade aktualisierte a?

Erklärung lesen

Die Periode ist 5 ns. b übernimmt a von unmittelbar vor der Flanke. Beide Register berechnen aus dem alten Zustand; der neue Wert d durchläuft daher nicht beide Stufen an einer einzigen Flanke.

Deine Auswahl gilt für diesen Browser. Du kannst sie jederzeit in der Fußzeile ändern.