Aufrufe
vor 4 Jahren

Hardware-Entwurf mit VHDL

Hardware-Entwurf mit VHDL

Hardware-Entwurf mit VHDL Prof. Dr.-Ing. Stefan Wolter Elektrotechnik und Informatik X Clock Reset (Mealy) Z Übergangs- Z* Zustands- Ausgangslogik speicher logik Abbildung 6.22: Struktur eines Moore/Mealy-Automaten mit Ausgangsregister vom Typ 1 Auf Kosten der maximalen Taktfrequenz kann die nachteilige Latenzerhöhung des Typs 1 umgangen werden. Dazu muß ausgehend von der Struktur des Typs 1 die Ausgangslogik vor den Zustandsspeicher verschoben werden. Für das Ausgangsschaltnetz wird anstelle des aktuellen Zustands der Folgezustand herangezogen. Die Ausgangslogik liegt dann direkt hinter der Übergangslogik, was zu einer Erhöhung der Verzögerungszeiten der Ausgangssignale führt und dadurch die maximal erreichbare Taktfrequenz herabsetzt. Der Automat hat aber in dieser Form (Typ 2) trotz des Ausgangsregisters keine Latenzerhöhung. Die folgende Abbildung zeigt die Struktur von Typ 2. X Clock Reset Übergangs- Z* Zustandslogik speicher (Mealy) Ausgangslogik Abbildung 6.23: Struktur eines Moore/Mealy-Automaten mit Ausgangsregister vom Typ 2 Schaltwerke mit Registerausgängen vom Typ 2 können nur sinnvoll als Drei-Prozessmodell entworfen werden. Ein Zwei-Prozessmodell ist möglich, würde aber unübersichtlichen VHDL-Quellcode zur Folge haben. Aus dem gleichen Grund sind auch Ein-Prozessmodelle zu vermeiden. VHDL-SYNTHESE 156 Z Y Y Ausgangsregister Ausgangsregister Y_sync Y_sync

Hardware-Entwurf mit VHDL Prof. Dr.-Ing. Stefan Wolter Elektrotechnik und Informatik 6.5.3 VHDL-Modelle für einen Beispielautomaten In diesem Abschnitt werden exemplarisch verschiedene Varianten dargestellt. Das für den Beispielautomaten zugehörige Mealy-Zustandsdiagramm zeigt folgende Abbildung. Inputs / Outputs A, B / Y, Z Reset 1,0/0,(A xnor B) 0,1/0,(A xnor B) Abbildung 6.24: Mealy-Zustandsdiagramm für den Beispielautomaten Der Automat wartet nach einem Reset im Zustand Start solange bis beide Eingänge '0' sind. Dann wechselt er in den Zustand Middle und verharrt dort solange bis beide Eingänge '1' sind. Er wechselt dann in den Zustand Stop und wartet bis einer der Eingänge wieder '0' wird und kehrt dann in den Ausgangszustand zurück. Bei der dargestellten Mealy-Varianten ist nur der Ausgang Z eingangsabhängig. Ein Wechsel von Z ist ausserdem aufgrund der gewählten Ausgangsgleichungen nur bei einem gleichzeitigen Zustandswechsel möglich. Dies gilt insbesondere auch nur für die Übergänge vom Zustand Start zum Zustand Middle und vom Zustand Stop zum Zustand Start. Die Moore-Variante ergibt sich einfach dadurch, dass die Ausgänge wie folgt festgelegt sind: • Zustand Start: Y = Z = '0' • Zustand Middle: Y = Z = '1' • Zustand Stop: Y = '0', Z = '1' -,1/0, (A nor B) 1,-/0, (A nor B) 0,0/0, (A nor B) Start Middle 1,1/0, (A xnor B) 0,0/0, (A xnor B) Im folgenden werden für den Beispielautomaten die im vorherigen Abschnitt behandelten Varianten vorgestellt und bzgl. der Ausgangssignale miteinander verglichen. Der Automat hat folgende Entity: --------------------------------------------------------------------------- ENTITY Beispiel_FSM IS PORT (Reset : IN STD_LOGIC; Clock : IN STD_LOGIC; A : IN STD_LOGIC; B : IN STD_LOGIC; Y : OUT STD_LOGIC; Z : OUT STD_LOGIC); END Beispiel_FSM; --------------------------------------------------------------------------- VHDL-SYNTHESE 157 Stop -,0/1, 1 0,-/1, 1 1,1/1,1

Verification.pdf
VHDL Kompakt - CES
Schaltungsdesign mit VHDL
VHDL Einführung
VHDL Design Guidelines