作者arloha (我要去澳洲玩!!!)
站內Electronics
標題[問題] verilog有內建的latch元件嗎?
時間Sat Dec 26 20:03:17 2009
之前上課聽學校老師說在數位設計上盡量避免有latch的出現
在這方面一直不是很了解為何要避免...
另外現在我的設計需要使用latch
不知道在verilog的語法上有沒有直接呼叫latch元件來使用
(就像是structural style裡,可以直接使用and.or之類的元件)
我剛剛試過直接用 latch tch(out,in,en); 這樣來測試...
compile不會出現error但在跑function的時候輸出卻都是零!?
所以想問有沒有人使用過....
如果沒辦法的話....看來只有自己寫一個latch的ocde了
先謝謝各位了!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.45.17.110
1F:推 ilovepachaya:我的作法是直接呼叫simulation model的latch來使用 12/28 14:44
2F:推 gieks:verilog只是描述語言 不會有什麼元件 你說的and/or正確說應 01/02 15:49
3F:→ gieks:叫primitive, 然後是的你可以自己define你的latch primitive 01/02 15:49
4F:→ gieks:回到第一點 只要是大型的數位系統都是flip-flop based 因為 01/02 15:50
5F:→ gieks:時序很好控制 又不易受製程影響造成timing的不確定性 01/02 15:51
6F:→ gieks:再加上, 一般數位電路的verilog會在合成時產生latch都是由於 01/02 15:52
7F:→ gieks:coding style不妥 造成timing violation或根本合出垃圾 01/02 15:53
8F:→ gieks:如果你是直接要有latch的應該不是這種數位電路 是比較特殊功 01/02 15:53
9F:→ gieks:能的吧 01/02 15:53
10F:推 ckcson:一個字, transparency, 當latch enable的時候, Q會隨著D的 04/10 00:05
11F:→ ckcson:變化,而馬上改變, 你有把握關起來的時候取到的剛好是穩定的 04/10 00:06
12F:→ ckcson:D值嗎? 正因為這種不確定性, 所以clock based較易掌握,只要 04/10 00:07
13F:→ ckcson:注意有無setup time,與 hold tim violation即可 04/10 00:09
14F:推 ckcson:latch 要掌握開啟的責任週期 相對不易 04/10 00:12