作者DecadentX (失蹤很久的鑰匙)
看板Electronics
標題[問題] verilog always 合成
時間Mon Jan 8 00:38:31 2007
像下面的例子
訊號線C有用到但沒在always() 裡面
這樣合成出來結果
是一定有問題嗎??
因為發現這樣simulation只會出現 warning
不會 error
RTL sim 正確~~^^
Gate sim 有錯....囧oo
所以想知道寫這樣
到底會合成出來什麼~~
always@( A or B )
begin
if(B && C)
A = B;
else
A = 0;
end
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.31.162.82
※ 編輯: DecadentX 來自: 61.31.162.82 (01/08 00:39)
1F:推 luckyBF:A不用寫在always @ ()裡,但b和c要寫進去 01/08 01:02
2F:→ luckyBF:C不寫的話~應該不會有問題~~但有可能會出現latch我猜D 01/08 01:04
3F:→ DecadentX:為什麼C不寫的話會出現latch??? 01/08 01:11
4F:→ DecadentX:lu大解答一下阿~~大大大XD 01/08 01:12
5F:→ capric:warning應該是指C沒有在sensitivity list中吧 01/08 01:33
6F:推 capric:若C的邏輯有改變,A的值預期應該也要改變 01/08 01:37
7F:→ capric:但是,C不在sensitivity list中,因此,A的值會維持不變 01/08 01:37
8F:推 luckyBF:我只是猜啦XD~~不一定會出現latch啦~~~另外推樓上的 01/08 02:19
9F:→ CuckooBoy:原來還有人跟我一樣也在學Verilog 01/08 08:58
10F:推 sasako:"還有"很多人都在學呀..只要還在寫verilog的人都算是在學習 01/08 16:12
11F:推 Zoomyoyo:喔 sasako 又見面了XD 01/10 00:07