2014-11-22 3 views
0

Я хочу написать код в verilog, для Ring Oscillator. Я новичок в Verilog.
Вот мой код:
Кольцевой генератор Код 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.
Вот мой Test Bench:

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

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

Как я могу изменить значение Z для включения осциллятора?

ответ

2

Вам необходимо добавить экземпляр вашего проектного модуля в тестовый стенд. Например:

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 
+1

Спасибо :) Я исправлю это. – user3540595

Смежные вопросы