Diese Seite enthält Designbeispiele für Zustandsmaschinen in VHDL. Eine Zustandsmaschine ist ein sequentieller Schaltkreis, der eine Reihe von Zuständen durchläuft. Die Beispiele enthalten die HDL-Codes zur Implementierung der folgenden Arten von Zustandsmaschinen:
-
4-State-Zustandsmaschine
Die Ausgänge einer Leistungsmaschine hängen sowohl von den Eingängen als auch vom aktuellen Zustand ab. Wenn sich die Eingänge ändern, werden die Ausgänge aktualisiert, ohne auf einen Taktrand zu warten.
-
4-State-Moore-State-Maschine
Die Ausgänge einer Moore-State-Maschine hängen nur vom aktuellen Zustand ab. Die Ausgänge werden nur geschrieben, wenn sich der Status ändert (am Taktrand).
-
Safe-State-Maschine
Dieses Beispiel verwendet den sicheren syn_encoding Syntheseattributwert, um anzugeben, dass die Software zusätzliche Logik einfügen sollte, um einen illegalen Zustand zu erkennen und den Übergang der Zustandsmaschine in den Reset-Zustand zu erzwingen.
-
Vom Benutzer codierte Zustandsmaschine
Dieses Beispiel verwendet das Syntheseattribut syn_encoding, um spezifische Binärcodierungen auf die Elemente eines aufzählten Typs anzuwenden.
Laden Sie die in diesem Beispiel verwendeten Dateien herunter:
- mealy_state_machine_vhd.zip herunterladen
- moore_state_machine_vhd.zip herunterladen
- laden Sie safe_state_machine_vhd.zip herunter
- laden Sie user_encoded_machine_vhd.zip herunter
- VHDL-Vorlage für State Machines herunterladen README-Datei
Jeder ZIP-Download enthält die VHDL-Datei für die Zustandsmaschine und das Blockdiagramm der obersten Ebene.