Re: [問題] verilog語法問題
※ 引述《yaote ()》之銘言:
: 小弟最近寫verilog遇到一些問題
: reg input
: always@(posedge Clk or negedge nReset)
: begin
: if(State ==2 )
: input <= 1;
: end
: 照理來說,這邊的input將會在下一個Clk cycle才會賦值,並不會在當下給值,
: 因為他宣告為reg,我要怎麼用才會進去那個state馬上給值呢?
感恩,接下來有各問題,如果我把他改寫成
always@(posedge Clk or negedge nReset)
begin
if(State == 2)
begin
if(enable) input<=1;
else input<=0;
if(counter == 10)
State <= 3;
end
end
如果我把他在加個counter迴圈和enable,counter沒滿就繼續在State2然後如果看
enable=1就input=1,可是這樣寫也如同上面會再下一個clock cycle給值,如果按
照之前大大所寫的再下面做一個always@(State)這樣會馬上賦值,可是他在State改
變的時候才會重新給input值,我counter沒滿State維持不變,這樣input也不會跟
著改變,然後我又不想多一個State來判斷enable,該怎麼辦?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 152.78.254.5
※ 編輯: yaote 來自: 152.78.254.5 (01/30 00:52)
→
01/30 10:28, , 1F
01/30 10:28, 1F
→
01/30 10:31, , 2F
01/30 10:31, 2F
討論串 (同標題文章)