Error (10106): Verilog HDL Loop error at fsm_exp.v(12): loop must terminate within 5000 iterations

在写一程序是报错,程序如下
module fsm_exp(clk,a,b,yout);
output [15:0] yout;
input clk;
input [7:0] a,b ;
//input [7:0] b ;

reg [15:0] yout;
reg [15:0] ytmp;
reg [1:0] cnt;
always @(posedge clk) begin
//ytmp=16'b0000000000000000;
for(cnt=0;cnt<4;cnt=cnt+1)
ytmp=a[cnt]*b[cnt]+ytmp;
end
always @ (*)
begin yout<=ytmp;end
endmodule
我刚接触到verilog语言,能力有限,没能找到错误,还望大家指教。

第1个回答  2017-01-05
我也遇到过这样的错误,for循环里面的变量cnt你可以改为用integer定义,reg定义的好像不行,可以的话请采纳哦~
第2个回答  2012-04-25
尽量不要使用for语句,可以改为if语句,cnt的大小为if后的判定语句
相似回答