このページは、VHDL のステートマシン向けのデザイン例で構成されています。ステートマシンとは、いくつかの状態を経て進む順序回路のことです。例では、以下のタイプのステートマシンを実装するための HDL コードを提供しています。
-
4-State Mealy ステートマシン
Mealy ステートマシンの出力は、入力と現在の状態の両方に依存します。入力が変更された場合、クロック・エッジを待たずに出力が更新されます。
-
4State Moore ステートマシン
Moore ステートマシンの出力は、現在の状態にのみ依存します。出力は,状態が変化したとき (クロック・エッジ) にのみ書き込まれます。
-
Safe ステートマシン
この例では、syn_encoding 合成属性値を安全に使用し、ソフトウェアが不正な状態を検出し、ステートマシンを強制的にリセット状態に移行させるための、追加ロジックを挿入する必要があることを述べています。
-
ユーザー・エンコード・ステートマシン
この例では、syn_encoding 合成属性を使用して、列挙型の要素に特定の バイナリー・エンコーディングを適用します。
この例で使用しているファイルをダウンロード:
- mealy_state_machine_vhd.zip をダウンロード
- moore_state_machine_vhd.zip をダウンロード
- safe_state_machine_vhd.zip をダウンロード
- user_encoded_machine_vhd.zip をダウンロード
- ステートマシン向け VHDL テンプレートをダウンロード
各 zip ファイルには、ステートマシンの VHDL ファイルと、トップレベル・ブック図が含まれています。