對于繪制硬件圖時如何解釋阻塞和非阻塞分配,我有些困惑。我們是否必須推斷出非阻塞分配會給我們一個寄存器?那么根據(jù)此陳述c <= a+b ,c將是注冊權(quán),而不是a和b?module add (input logic clock, output logic[7:0] f); logic[7:0] a, b, c; always_ff @(posedge clock) begin a = b + c; b = c + a; c <= a + b; end assign f = c; endmodule
3 回答

慕森王
TA貢獻(xiàn)1777條經(jīng)驗 獲得超3個贊
傳統(tǒng)的Verilog智慧全都錯了。使用阻塞分配給局部變量沒有問題。但是,切勿將阻塞分配用于同步通信,因為這是不確定的。
時鐘總是塊內(nèi)的非阻塞分配將始終根據(jù)語義來推斷觸發(fā)器。
時鐘內(nèi)的阻塞分配是否始終阻塞會觸發(fā)觸發(fā)器,這完全取決于其使用方式。如果可以在分配變量之前讀取該變量,則將推斷出一個觸發(fā)器。否則,這就像一個臨時變量,它將導(dǎo)致一些組合邏輯。
- 3 回答
- 0 關(guān)注
- 723 瀏覽
添加回答
舉報
0/150
提交
取消