Verilog错误-Quartus II-循环必须在X次迭代内终止

Verilog错误-Quartus II-循环必须在X次迭代内终止,verilog,hdl,Verilog,Hdl,我正在研究一个非常简单的RiSC16 CPU的verilog实现,我在尝试使用Quartus II Web Edition编译时遇到了一个问题。我的代码如下: reg j; initial begin pc = 0; rf[0] = `ZERO; rf[1] = `ZERO; rf[2] = `ZERO; rf[3] = `ZERO; rf[4] = `ZERO; rf[5] = `ZERO; rf[6] = `ZERO; rf[7] = `ZERO; for(j=0;j<200;

我正在研究一个非常简单的RiSC16 CPU的verilog实现,我在尝试使用Quartus II Web Edition编译时遇到了一个问题。我的代码如下:

reg j;
initial begin
pc = 0;
rf[0] = `ZERO;
rf[1] = `ZERO;
rf[2] = `ZERO;
rf[3] = `ZERO;
rf[4] = `ZERO;
rf[5] = `ZERO;
rf[6] = `ZERO;
rf[7] = `ZERO;
    for(j=0;j<200;j=j+1) begin // THis is line 38
        m[j] = 16'd0; 
    end
end

在这一点上我完全不知所措。以前有人经历过吗?某个地方有语法错误吗?

因为
j
被声明为1位,它的唯一值是0和1;它不能达到200,并且的
循环将是无限的。声明如下:

reg [7:0] j; // 0 to 255
或作为


因为
j
被声明为1位,所以它的唯一值是0和1;它不能达到200,并且
循环将是无限的。声明如下:

reg [7:0] j; // 0 to 255
或作为

integer j;