推 r901042004: 應該是testbench的問題,把input設為negedge改值 08/06 17:03
→ r901042004: 應該就沒問題了 08/06 17:04
→ yuehyueh24: 我tb 是negative edge給值 之後會產生一個write burs 08/06 18:35
→ yuehyueh24: t的訊號讓state從idle進入w_w 08/06 18:35
→ bh2142: 你這樣我們不太好隔空抓藥 08/06 20:46
→ yuehyueh24: 我把整個檔案連同testbench都放到雲端了 08/06 20:59
推 bakerly: 你的awready_m_inf和awvalid_m_inf是不是和wns =>wcs用不 08/06 21:39
→ bakerly: 同個clk產生的 08/06 21:39
→ yuehyueh24: 我全部都是用同一個clock source在跑的 08/06 21:49
推 r901042004: 你的PATTERN.v產生的訊號也要用<=才可以 08/06 22:46
→ r901042004: always@(posedge clk)裡面的訊號需要改 clk本身不用 08/06 22:47
推 mmonkeyboyy: blocking / non-blocking assignment 08/06 22:52
推 r901042004: 常常模擬出問題都是tb用blocking但是design用 08/06 22:53
→ r901042004: non-blocking 08/06 22:53
→ yuehyueh24: 喔喔原來是這樣 看來我tb寫的太隨便了 謝謝r大幫忙 08/06 22:58
推 r901042004: 你改成tb用negedge 或是加上delay都可以 08/06 23:02
→ r901042004: 不客氣~ 08/06 23:02
推 mmonkeyboyy: = = 這根本該寫到Q&A裡了 這算非常常犯的錯 08/06 23:03
推 r901042004: m大要不要寫一篇請版主置底 哈哈 08/06 23:12
→ yuehyueh24: 抱歉我太粗心了 不過至少學到一課了 08/06 23:19
推 mmonkeyboyy: 最近太忙沒空寫 XD 我有寫在那裡我忘了 網上某處 08/06 23:20
→ mmonkeyboyy: 沒事 這也不是你的錯 這跟教你的人比較有關 08/06 23:21
推 nonodamn: 想借此篇問negedge給值跟delay後給值哪種方式較好? 08/07 16:25
→ nonodamn: 主要針對合成完的post-sim 08/07 16:27
推 mmonkeyboyy: 這要看你的設計 我一般都是建議初期規格定什麼就用 08/07 23:21
→ mmonkeyboyy: 一般來說 原本電路是posedge 就別做什麼negedge 08/07 23:22
→ mmonkeyboyy: 我主要都是希望能和直實電路有連通性 就算寫的TB 08/07 23:23
→ mmonkeyboyy: 不是真正的電路也一樣 愈 intitive的 v code在後期 08/07 23:24
→ mmonkeyboyy: 做design space exploration/verification/sign off 08/07 23:24
→ mmonkeyboyy: 等 出了狀況時可以很清楚知道是那個環節錯了 08/07 23:24
→ mmonkeyboyy: 不過這個是我自己工作的法則 08/07 23:37
→ mmonkeyboyy: sunburst design有一些東西可以看看 尤其是mismatch 08/07 23:37
→ mmonkeyboyy: 通常我在教人寫code還蠻GY的 限制很多 這樣出錯好 08/07 23:38
→ mmonkeyboyy: 找非常多 一般我的postsim 都是之前就做好on/off 08/07 23:39
→ mmonkeyboyy: 一些東西而已 都是compiling flags 08/07 23:40
推 r901042004: 基本上是給合成設定的input/output delay值 08/08 00:54
→ r901042004: 也就是Spec需要的delay值 08/08 00:55