【发布时间】:2021-11-01 22:21:26
【问题描述】:
【问题讨论】:
标签: verilog fpga test-bench
【问题讨论】:
标签: verilog fpga test-bench
co 是 X(未知),因为它是对依赖于 current 的表达式的连续赋值,即 X。current 是 X,因为您将其声明为 reg 和 reg 类型在时间 0 默认为 X,然后您永远不会将其分配给已知值。
您的测试台始终将rst 驱动为0。这意味着第8 行永远不会执行。第 10 行将在 clk 的每个上升沿执行,但 current 将保持在 X。X+1 返回 X。
您需要正确重置您的设计。在时间 0,您应该通过设置 rst=1 来断言复位。延迟一段时间后,您应该释放重置设置rst=0。
initial begin
clk = 0;
rst = 1; // Assert reset
#20;
rst = 0; // Release reset
#10;
en = 1;
init = 1;
end
【讨论】:
您的计数器复位为高电平有效。您永远不会将其设置为 1。您需要将其设置为 1 至少一个时钟周期。
【讨论】: