查看波形 - 活动hdl

时间:2017-11-24 22:05:12

标签: verilog hdl active-hdl

我对verilog和active-hdl很新。我有一个问题,如果有人可以就此向我提出建议,我将不胜感激。

我无法在波形查看器上看到第二层模块的波形。更准确地说,子模块中的信号显示Z或X.

请注意,我已通过工具/偏好设置/模拟/访问设计对象启用了读/写访问权限。

例如,我在tb模块中生成clk并将其连接到clk_mod,尝试在clk_mod中查看clk,但是对于clk,它仅显示“Z”而“i”仅显示“X”。

`timescale 1ns/100ps

module tb;
reg clk;
clk_mod dut(.clk(clk));    

initial
    begin
        clk = 0;
        forever
            #5 clk = ~clk;
    end
endmodule


module clk_mod (input clk);

reg i;
always @(posedge clk) 
    begin
        i=10;   
    end 

endmodule

1 个答案:

答案 0 :(得分:0)

我认为你的tb缺乏模拟退出。您应该将以下语句添加到tb模块(作为单独的语句):

 initial #20 $finish;

这将在步骤20完成模拟,如果您使用正确的工具,应该为您创建波形。

另外,您将i声明为单位注册,因此,您无法适应“' 10'进去。因此,您的波形应该显示切换时钟和单个事务的“i'来自' x'到' 0'。

我猜你应该宣布'我'这样:

reg [3:0] i;