计数器的输出未在Verilog仿真中显示为已初始化

伊斯顿科

为确保计数器正常运行,我在运行模拟时遇到了一些麻烦。我的柜台的代码是:

module counter(
    input clk, rst,
    output reg [16:0] counterout
    );
always @(posedge(clk), posedge(rst))
begin
     if (rst) counterout <= 0;
     else if (clk) counterout <= counterout + 1;
end
endmodule

和我的测试代码:

`timescale 1ns / 1ps
module testbench();

reg clock;
reg rst;
wire [16:0] out;

counter test(
    .clk(clock),
    .rst(rst),
    .counterout(out)
);

integer k = 0;

initial
begin
    rst = 0;
    clock = 0;
    #100 ;
    
    for(k = 0; k < 1000; k = k+1)
    begin
        #5 clock = clock + 1;
    end
    #5 $finish;
end
endmodule

不幸的是,当我运行仿真时,它显示的输出从未初始化。知道为什么吗?

在此处输入图片说明

环面

您的计数器仍然未知,因为您没有重置它。计数器需要将rst信号重置为1,但是您的测试台始终驱动rst为0。这是更改测试台以重置计数器的一种方法。

initial
begin
    rst = 1; // Assert reset
    clock = 0;
    #100 ;
    rst = 0; // Release reset

    for(k = 0; k < 1000; k = k+1)
    begin
        #5 clock = clock + 1;
    end
    #5 $finish;
end

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用测试平台模拟VHDL计数器,该输出为输出提供“未初始化”,如何解决?

在LabVIEW中初始化计数器

在 Common Lisp 中初始化计数器变量

动态结构初始化和计数器实现

数组和初始化多个计数器

如何从键/初始计数对列表中初始化计数器?

为什么仿真中JK触发器的输出为红色?

减少对象数组并使用JavaScrip更新初始化的计数器

添加新商品时如何初始化计数器

初始化字典,循环浏览列表,在字典中添加单词并增加计数器

类的静态计数器值无法初始化数组

如何在VBA Excel中初始化我的计数器

在 for 循环外初始化计数器无法按预期工作

格式化计数器的输出

通过 Verilog 计数器

对象已初始化,但仍为null

如何初始化“泡菜计数器”列表的唯一ID并将其存储在文件中并检索它?

尽管尝试了所有方法仍无法在C中初始化我的数组计数器

处理:如果在抽奖中进行更改,我将在哪里初始化计数器?

为什么我无法在输出中获得计数器的值?它显示为“上面的按钮已被{{计数器}}次单击。”

仿真器SD卡显示为“已移除”

Verilog 仿真中端口大小的意外警告

排序/格式化计数器输出

结构初始化器未显示?

尝试生成范围内的数字并将生成的数字添加到计数器中以显示为输出

重置后,jquery计数器显示为零

Verilog中的纹波进位计数器,带有4个模块和x个输出

在检查器中设置为统一时,未在单元测试中初始化的成员字段

行为异常,已初始化的地图被报告为空