Verilog测试台和下降沿设置信号

时间:2016-06-16 19:46:29

标签: verilog

我有一个模块,我正在使用测试平台进行测试。我的问题出现了,因为我的模块设计为在上升沿触发所有信号,而测试平台在下降沿分配值。具体来说,我有以下内容 -

assign sig_module = sig_tb && reg_module

在测试平台中,我有

@ (negedge clk);
sig_tb <= 1'b1;

reg_module就是这样 -

always @ (posedge clk)
    reg_module <= !sig_tb;

现在,由于sig_tb在负边缘的测试平台中设置为高,触发器编码为在上升沿切换,因此在模拟中,信号sig_module高半个周期,从时间sig_tb在负边缘被断言到时间reg_module在下一个上升沿被置为无效。

这是我的问题。我明白为什么会这样,但我不明白我做错了什么。当我的模块被合成时,不会有任何信号在下降沿发生变化,因此测试平台显示的情况永远不会发生。用于测试此类情况的方法是什么?到现在为止,我过去只是将所有输入信号注册到我的模块中。因此,这个问题不会出现。我当前的模块无法容忍额外的周期延迟。

0 个答案:

没有答案