[問題] verilog的小問題

看板Electronics作者 (basketball)時間16年前 (2009/05/17 16:09), 編輯推噓2(2012)
留言14則, 7人參與, 7年前最新討論串5/5 (看更多)
請問各位大大,為什麼我以下的程式中, d1不會如我所預期的dealy一個clock才有值 呢? always@(posedge clk_HBF2 or posedge reset) begin if(reset==1) d1<=0; else d1<=data_in; end 但如果我用subblock的方式去呼叫, subblock f1(.out(out),.clk(clk),.in(data_in)); 就可以看到dealy的效果,請問是為什麼呢??? 我應該怎麼寫會比較好呢?請大大幫忙,謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.136.208.195

05/17 20:21, , 1F
因為兩種東西跑出來的實際電路不同
05/17 20:21, 1F

05/17 23:06, , 2F
大大是指的是合成後嗎?
05/17 23:06, 2F

05/17 23:44, , 3F
對 不過我主修機械...你...參考就好
05/17 23:44, 3F

05/18 18:47, , 4F
你的f1就是上面那個always block嗎,如果是的話那相當不合
05/18 18:47, 4F

05/18 18:47, , 5F
理,一定有其它地方錯了....
05/18 18:47, 5F

05/18 22:59, , 6F
不何理是指??
05/18 22:59, 6F

05/19 02:26, , 7F
有waveform圖嗎? 還是更完整的程式?
05/19 02:26, 7F

05/19 11:35, , 8F
你call的subblock少了一根reset, 我假設是你打漏了,在這
05/19 11:35, 8F

05/19 11:36, , 9F
個前題下,不應該會有任何不同,這就是我說的不合理。
05/19 11:36, 9F

05/20 00:12, , 10F
因為你的data_in 為module port, 同時rising edge 給值
05/20 00:12, 10F

05/20 00:13, , 11F
請以falling edge 給值,或加入input delay
05/20 00:13, 11F

05/25 23:45, , 12F
這有時候跟你testbench給值的時間有關係 正如樓上講的
05/25 23:45, 12F

11/11 15:09, , 13F
有waveform圖嗎 https://noxiv.com
11/11 15:09, 13F

01/04 21:56, 7年前 , 14F
因為兩種東西跑出來的實 http://yofuk.com
01/04 21:56, 14F
文章代碼(AID): #1A3yOmzS (Electronics)
文章代碼(AID): #1A3yOmzS (Electronics)