[問題] counter的hold time violation怎麼解?
各位前輩大家好,
小弟是初心者,現在遇到一個問題,試了很多寫法沒辦法解,
想請益一下,
目前在synthesis後gate level的模擬會跑出hold time violation的警告,
我只知道可以塞buffer讓Td增加就可以解,
但是計數器電路的buffer我不知道怎麼塞,
想請教各位前輩解惑一下,謝謝。
這是警告訊息:
Warning! Timing violation
$setuphold<hold>( negedge CKN &&& (flag == 1):
932871 PS, negedge D:932955 PS, 0.152 : 152 PS, 0.106 : 106 PS );
File: ./umc18_neg.v, line = 6843
Scope: TEST.RM.counter_reg_1_ Time: 932955 PS
這是我的計數器程式碼:
always @(negedge CLK)
begin
if (RESET==1'b1)
counter <= 6'b0;
else if (IN_VALID==1'b0)
counter <= 6'b0;
else
counter <= counter + 6'b1;
end
再麻煩各位前輩不盡指教><
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.143.165.12
※ 文章網址: https://www.ptt.cc/bbs/Electronics/M.1463579427.A.82B.html
推
05/18 22:05, , 1F
05/18 22:05, 1F
推
05/18 22:11, , 2F
05/18 22:11, 2F
→
05/18 22:14, , 3F
05/18 22:14, 3F
推
05/18 22:56, , 4F
05/18 22:56, 4F
→
05/18 22:56, , 5F
05/18 22:56, 5F
推
05/18 22:59, , 6F
05/18 22:59, 6F
→
05/18 22:59, , 7F
05/18 22:59, 7F
推
05/18 23:02, , 8F
05/18 23:02, 8F
→
05/19 00:52, , 9F
05/19 00:52, 9F
→
05/19 10:07, , 10F
05/19 10:07, 10F
→
05/19 10:09, , 11F
05/19 10:09, 11F
推
05/19 11:23, , 12F
05/19 11:23, 12F
推
05/19 12:21, , 13F
05/19 12:21, 13F
→
05/19 15:30, , 14F
05/19 15:30, 14F
→
05/19 15:30, , 15F
05/19 15:30, 15F
推
05/22 21:50, , 16F
05/22 21:50, 16F