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

VerilogなどのHDLで書いた記述と、C言語などのソフトウェアのプログラムとの大きな違いとして正しいものはどれか。

  1. AHDLの記述は、同時に並行して動く回路を表している
  2. BHDLの記述は、上の行から1行ずつ順番に実行される命令の並びである
  3. CHDLでは、変数や条件分岐を使えない
答えと解説を見る

正解:A. HDLの記述は、同時に並行して動く回路を表している

HDLは見た目がプログラムに似ていますが、書いた内容は論理合成によってゲートやフリップフロップの回路になります。回路の各部分は常に同時に動いているので、複数のassign文やalwaysブロックは書いた順番に関係なく並行して働きます。ソフトウェアのように「この処理が終わったら次」と考えると、思った回路にならないので、どんな回路ができるかを想像しながら書くことが大切です。

  • A. 正しい。各部分の回路は常に同時に動いています。
  • B. それはソフトウェアの考え方です。
  • C. HDLでも、信号や条件分岐を使えます。
この分野を解く 分野ページへ

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

  1. Verilogでmoduleを使う目的として正しいものはどれか。
  2. Verilogのwire型とreg型の違いとして正しいものはどれか。
  3. 上のVerilogのassign文が表す回路として正しいものはどれか。
  4. 上のVerilogの記述が論理合成で作る回路として正しいものはどれか。
  5. Verilogのノンブロッキング代入(<=)の動作として正しいものはどれか。