ノンブロッキング代入とは
のんぶろっきんぐだいにゅう
Verilogの「<=」の代入。同じタイミングのすべての右辺を先に評価してからまとめて左辺を更新する。フリップフロップの動きと一致するので、順序回路に使う。
この用語の分野: ハードウェア記述言語と検証
のんぶろっきんぐだいにゅう
Verilogの「<=」の代入。同じタイミングのすべての右辺を先に評価してからまとめて左辺を更新する。フリップフロップの動きと一致するので、順序回路に使う。
この用語の分野: ハードウェア記述言語と検証
ノンブロッキング代入では、クロックのエッジで、すべての<=の右辺をまず古い値のまま評価し、そのあとで一斉に左辺を書き換えます。
Verilogのノンブロッキング代入(<=)の動作として正しいものはどれか。ノンブロッキング代入では、2つの右辺(bの古い値1とaの古い値0)を先に評価してから、aに1、bに0を同時に書き込むので、値が入れ替わります。
上の記述で、クロックの立ち上がりの直前にa=0、b=1だった。立ち上がりの後のaとbの値はどうなるか。順序回路をノンブロッキング代入で書くと、すべてのフリップフロップが同時に値を取り込む回路の動きと一致し、記述の順番や、ほかのalwaysブロックとの実行の順番に結果が左右されません。
Verilogで代入の種類を使い分けるときの一般的なガイドラインとして正しいものはどれか。フリップフロップ ブロッキング代入 Verilog 順序回路 組み合わせ回路 テストベンチ SystemVerilog 意図しないラッチ X楽観主義 回帰テスト