硬體描述語言與驗證
Verilog的非阻塞賦值(<=)的動作,下列何者正確?
- A賦值的瞬間左邊就被更新,下一行會使用該新值
- B先評估同一時間點的所有右邊,之後再一併更新左邊
- C捨棄賦值的結果,不做任何變更
查看答案與解析
正確答案:B. 先評估同一時間點的所有右邊,之後再一併更新左邊
在非阻塞賦值中,於時脈邊緣時,所有<=的右邊會先以舊值評估,之後再同時改寫左邊。這與以相同時脈動作的眾多正反器在邊緣之前同時取入值的實際電路動作相同。因此,對於以時脈動作的序向電路的描述,原則上應使用非阻塞賦值。
- A. 那是阻塞賦值(=)的動作。
- B. 正確。與正反器同時取入值的動作一致。
- C. 值會被更新。