作者b20415 (b20415)
看板Electronics
標題[問題] ncverilog 指令 (ncseq_udp_delay)
時間Tue Jul 21 19:59:59 2020
各位大大好,
小弟的電路因為有一部分是屬於gate level
所以需要在ncverilog後面加上這個指令 ncseq_udp_delay+1ns來避免假的hold time影響
電路的行為
但就在加入這個指令後,發現#delay的作用全消失了
例如:
assign #1 A = B;
這個A就完全與B切齊
但如果是reg
A <= #1 B;
這種就完全正常,有delay的功能
感覺#delay用在wire上被無效化了
想請問大大們有人知道這個指令的實際功用 以及 對#delay的影響嗎?
網路上只能查到是賦予UDP時序電路一個delay而已
謝謝各位!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.73.133.234 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Electronics/M.1595332801.A.8F4.html
1F:→ hank821017: 試了一下 改用-add_seq_delay 1ns可以保住原本的delay07/22 00:00
2F:推 mmonkeyboyy: udp跟latch/ff 有關的07/22 10:34
3F:推 mmonkeyboyy: 我在想是不是它自帶有把#取消的功能 因為兩個有衝突07/22 10:40
4F:→ mmonkeyboyy: 一般我會在postsim用 再把 delay取消07/22 10:41
5F:→ mmonkeyboyy: 所以你看到的delay 就是 ff來的07/22 10:41
6F:→ mmonkeyboyy: +2ns 然後看是不是delay其實是變 2ns07/22 10:42
7F:→ mmonkeyboyy: 就代表你所有的#都被取消了07/22 10:42
8F:→ b20415: 謝謝各位的回覆,已知這個設定會使inter-assignment delay08/10 19:59
9F:→ b20415: 失效08/10 19:59
10F:→ b20415: 後來的解法是使用1F大大說的,-add_seq_delay hierarchy<time>,08/10
20:01
11F:→ b20415: 讓部分module吃到#delay設定就好08/10 20:01
※ 編輯: b20415 (114.137.167.247 臺灣), 08/10/2020 20:01:45
※ 編輯: b20415 (114.137.167.247 臺灣), 08/10/2020 20:02:31
※ 編輯: b20415 (114.137.177.60 臺灣), 08/11/2020 09:48:23