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

Verilogでmoduleを使う目的として正しいものはどれか。

  1. A入力と出力の端子(ポート)を持つ回路の部品を定義し、ほかのmoduleの中で使えるようにする
  2. Bプログラムの実行を一時的に止める
  3. Cシミュレーションの結果を画面に表示する
答えと解説を見る

正解:A. 入力と出力の端子(ポート)を持つ回路の部品を定義し、ほかのmoduleの中で使えるようにする

moduleは、入力と出力のポートを持つ回路のまとまりを定義する単位で、加算器やカウンタ、CPU全体などを表します。定義したmoduleは、別のmoduleの中で部品として何度でも使え(インスタンス化)、ポートを配線でつないで大きな回路を組み立てます。基板の上に部品を並べて配線するのと同じように、回路を階層的に作れます。

  • A. 正しい。回路を階層に組み立てる単位です。
  • B. 実行を止める機能ではありません。
  • C. 表示には$displayなどを使います。
この分野を解く 分野ページへ

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

  1. Verilogのwire型とreg型の違いとして正しいものはどれか。
  2. 上のVerilogのassign文が表す回路として正しいものはどれか。
  3. 上のVerilogの記述が論理合成で作る回路として正しいものはどれか。
  4. Verilogのノンブロッキング代入(<=)の動作として正しいものはどれか。
  5. 上の記述で、クロックの立ち上がりの直前にa=0、b=1だった。立ち上がりの後のaとbの値はどうなるか。