ハードウェア記述言語と検証

HDLで書く状態機械(ステートマシン)の基本的な構成として正しいものはどれか。

  1. A状態を覚えるメモリだけで、論理回路は使わない
  2. B出力を決める回路だけで、状態は覚えない
  3. C今の状態を覚えるレジスタ、次の状態を決める組み合わせ回路、出力を決める組み合わせ回路
答えと解説を見る

正解:C. 今の状態を覚えるレジスタ、次の状態を決める組み合わせ回路、出力を決める組み合わせ回路

状態機械は、今の状態をフリップフロップのレジスタに覚えておき、今の状態と入力から次の状態を組み合わせ回路で決め、クロックのエッジで状態を更新します。出力は今の状態(と入力)から組み合わせ回路で決めます。通信の手順の制御や、自動販売機、信号機の制御など、手順に従って動く回路の多くは状態機械として書かれます。

  • A. 次の状態を決める論理が必要です。
  • B. 状態を覚えるレジスタが必要です。
  • C. 正しい。状態はクロックで更新します。
この分野を解く 分野ページへ

ハードウェア記述言語と検証のほかの問題

  1. 上の状態機械の記述で、2つ目のalwaysブロックの先頭に「next = state;」を書いている理由として正しいものはどれか。
  2. ミーリ型の状態機械の特徴として正しいものはどれか。
  3. 状態機械の状態の符号化で、ワンホット符号化の特徴として正しいものはどれか。
  4. 3つの状態を持つ状態機械で、状態を覚えるのに必要なフリップフロップの数の組み合わせとして正しいものはどれか(バイナリ符号化/ワンホット符号化)。
  5. 上の4ビットのカウンタで、countが15のときにクロックが立ち上がると、countはいくつになるか。