Verilog:如何让信号在时钟上升沿后具有特定的延迟?

问题描述 投票:0回答:2

我有一个测试台模块,如下所示:

`timescale 1ns / 1ps
module RandomDelay_tb;
    reg t_clk=1;
    reg t_rst_n=1;
    reg t_input_signal = 1;
    wire t_out_signal;
    MyModle r1(t_clk,t_rst_n,2'b11,t_input_signal,t_out_signal);
    initial
    begin
            t_rst_n = 0;
            #930 t_rst_n = 1;
    end

    always
        #100 t_clk = ~t_clk;
    always
        #50  t_input_signal = ~ t_input_signal;

endmodule

在此模块中,

t_input_signal
的频率是
t_clk
的两倍。我想修改它,使其具有与
t_clk
相同的切换周期,即 100ns,但在时钟信号边沿之后有一个延迟,例如 10ns。

换句话说,我希望

t_input_signal
成为
t_clk
,但移动了 10ns。

我怎样才能实现这样的事情?

verilog fixtures test-bench
2个回答
1
投票

有多种方法,但查看您的代码,最少的输入量是:

always @(t_clk )
   t_input_signal <= #10 t_clk;

0
投票

@老屁

有没有办法让这个延迟可配置?

© www.soinside.com 2019 - 2024. All rights reserved.