这个verilog有问题求大神帮忙module paoma(clk1,out,fangxiang,shijian);input clk1,fangxiang;
input[4:0] shijian;
output[11:0] out;
reg[11:0] out;
integer t;
initialt=0;
always@(posedge clk)
begin if(fangxiang==0&&shijian>5'd10)
begin
case(t)
0:out=12'b000000000001;
1:out=12'b000000000010;
2:out=12'b000000000100;
3:out=12'b000000001000;
4:out=12'b000000010000;
5:out=12'b000000100000;
6:out=12'b000001000000;
7:out=12'b000010000000;
8:out=12'b000100000000;
9:out=12'b001000000000;
10:out=12'b010000000000;
11:out=12'b100000000000;
12:begin t=-1;
out=12'b000000000000;
end
endcase
t=t+1;
endelse if(fangxiang==1&&shijian>5'd10)
begin
case(t)
0:out=12'b100000000000;
1:out=12'b010000000000;
2:out=12'b001000000000;
3:out=12'b000100000000;
4:out=12'b000010000000;
5:out=12'b000001000000;
6:out=12'b000000100000;
7:out=12'b000000010000;
8:out=12'b000000001000;
9:out=12'b000000000100;
10:out=12'b000000000010;
11:out=12'b000000000001;
12:begin t=-1;
out=12'b000000000000;
end
endcase
t=t+1;
endelse
begin
out=12'b000000000000;
t=0;
end
endendmodule
å ç¹é误
RTL 代ç ä¸è½åºç° integer å initial
å¯åå¨è¦ç¨<= èµå¼ï¼è¯´æä½ è¿ä¸ææ¶åº
æ¶åºçalwaysçææå表åªè½æclockåreset
ç»åé»è¾çalwaysçææå表æè½æä¿¡å·
ä¸ä¸ªalwayså ï¼ çå¼å·¦è¾¹åªæä¸ä¸ªåé
å°æéè¦å®ä¹ä¸ä¸ªåé为æå·¥ä½ï¼ç¨ä»ä¹è¯å¥å®ä¹å¢ï¼
ä½
追çå¯åå¨ç¨ reg声æï¼ç¶å always@(posedge clock or negedge reset),ç¨<=èµå¼
ç»åé»è¾ ç¨wire 声æ ç¨assignèµå¼
å°±è¿ä¹ç®å