【发布时间】:2018-01-18 21:49:09
【问题描述】:
在使用 Quartus II 进行编译时,verilog 代码出现错误
错误 (10119):DE1_SOC_golden_top.v(313) 处的 Verilog HDL 循环语句错误:具有非常量循环条件的循环必须在 250 次迭代内终止
第 313 行是 #50 时钟 = ~clock;
测试台模块的代码是
module test;
// Inputs
reg clock;
reg reset;
reg start;
// Outputs
wire [3:0] d0;
wire [3:0] d1;
wire [3:0] d2;
// Instantiate the Unit Under Test (UUT)
stopwatch uut (
.clock(clock),
.reset(reset),
.start(start),
.d0(d0),
.d1(d1),
.d2(d2)
);
initial
begin
clock = 0;
forever
#50 clock = ~clock;
end
initial begin
// Initialize Inputs
reset = 0;
start = 0;
// Wait 100 ns for global reset to finish
#100;
reset = 1;
#100;
reset = 0;
#100;
start = 1;
// Add stimulus here
end
结束模块
任何纠正相同的建议。我正在产生 0.1 秒的延迟..
【问题讨论】:
-
Quartus 是综合。您通常只使用测试台进行模拟,因为它们通常包含不可综合的代码(如永远循环)。
-
好吧,你的意思是我应该使用原始代码进行编译,并且只测试代码进行模拟......对。
标签: verilog