Verilog 已达到迭代限制10000
我正在使用以下代码Verilog 已达到迭代限制10000,verilog,Verilog,我正在使用以下代码 `timescale 1ns / 1ps module program_counter ( input clock, input reset, input [31:0] in, output reg [31:0] out ); initial begin out <= 32'b0000000000000000
`timescale 1ns / 1ps
module program_counter
(
input clock,
input reset,
input [31:0] in,
output reg [31:0] out
);
initial
begin
out <= 32'b00000000000000000000000000000001;
end
always @(negedge clock)
begin
if(reset)
begin
out <= 32'b00000000000000000000000000000001;
end
else
begin
out <= in;
end
end
endmodule
`时间刻度为1ns/1ps
模块程序计数器
(
输入时钟,
输入复位,
在中输入[31:0],
输出寄存器[31:0]输出
);
首字母
开始
out问题在于初始中的第一行是零延迟。这应该在时间0时驱动。尝试在首字母(#1)上设置延迟
您还希望在一个模块中混合可合成和不可合成代码。这可能不是你想要的
从该模块中去除初始块,并使用具有时间刻度的测试台实例化该模块,该测试台驱动该模块的输入,并具有适当的延迟。32'B00000000000000000001
与32'b1相同代码>32'h****对您来说是较短的。如果您想进行半校准,请将其指定为1,32位适用于int。