Re: [問題] VERILOG 時脈問題

看板Electronics作者 (模糊地讓我看不清)時間15年前 (2010/08/16 00:40), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/3 (看更多)
※ 引述《zx33571163 (mm)》之銘言: : always@(posedge clk or negedge reset ) : begin : if(!reset) : begin : count=0; : end : else : begin : count1<=0; : buffer<=bufin; : count <=count+1; : begin : if(count==n) : begin : 判斷<=1; : end : end : end : end : end : always@(posedge clk ) : begin : if(判斷==0) : begin : bufout<= 1'bz; : end : else if(判斷==1) : begin : count <=0; : bufout<= buffer; : count1<=count1+1; : begin : if(count1==n) : 判斷<=0; : end : end : end : endmodule : 我這樣寫 : 實際的輸出結果會比我想要的輸出 "慢1個CLOCK" : 請問是哪出問題? : 也就是判斷==1 但bufout晚1個CLOCK出來 這樣不是超級正常的嗎?clk敲到,下1T出現結果,沒有問題壓! flip flop就是這樣動作的壓!為什麼你第一個always有加reset 第二個卻沒有,假如你的sequential電路裡面有if else,那麼 reset就必須加上去,不然在做coding rule check就是會叫你加, 回到原話題,要即時做出動作,就用combinational的寫法... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.169.76.239
文章代碼(AID): #1CQ1Y1Tz (Electronics)
文章代碼(AID): #1CQ1Y1Tz (Electronics)