Ring Oscillator Verilog代码

时间:2014-11-22 18:25:22

标签: verilog

我想用verilog编写代码,用于Ring Oscillator。我是Verilog的新手。
这是我的代码:

module RingOsci(enable, w1, w2, w3);
    input enable;
    output w1, w2, w3;
    wire w4;

    and (w4, enable, w3);
    not #2(w2, w1);
    not #2(w3, w2);
    not #2(w1, w4);
endmodule

但总是,W_i是Z.
这是我的测试台:

module RingOsciTB();
    reg en;
    wire out1, out2, out3;

    initial begin
        en = 1'b0;
        #20
        en = 1'b1;
    end
endmodule

如何更改Z值以启用振荡器?

1 个答案:

答案 0 :(得分:5)

您需要在测试平台中添加设计模块的实例。例如:

module RingOsciTB();
    reg en;
    wire out1, out2, out3;

RingOsci dut (
        // Inputs:
    .enable  (en),
        // Outputs:
    .w1      (out1),
    .w2      (out2),
    .w3      (out3)
);

    initial begin
        en = 1'b0;
        #20
        en = 1'b1;
    end
endmodule