Verilog, gtkwave out[3],out[2],out[1],out[0]

Здравствуйте, я только что написал код:

//MUX 4-bit 2:1 execise2
module mux_2_1_4_bit (out, a, b, sel);
    output  [3:0]        out;
    input         [3:0]   a;
    input         [3:0]   b;
    input                 sel;

    assign out[0]=sel?a[0]:b[0];
    assign out[1]=sel?a[1]:b[1];
    assign out[2]=sel?a[2]:b[2];
    assign out[3]=sel?a[3]:b[3];

endmodule

С испытательным стендом:

/MUX 4-bit 2:1 execise2 test_bench

module t_exercise2;
    wire [3:0] out;
    reg  [3:0] a;
    reg  [3:0] b;
    reg              sel;
    mux_2_1_4_bit kilimantzaro (out, a, b, sel);

     initial
            begin
             $dumpfile ("t_exercise2.vcd");
             $dumpvars (0,t_exercise2);

               sel=0;

               a=0;
               b=1;

            #10 sel=1;
            end

            initial #20 $finish;
    endmodule

Так как это мой второй код в verilog, как я могу увидеть выходные данные [3],out[2],out[1],out[0] в gtkwave, должен ли я что-то изменить в коде или в gtkwave? Спасибо за вашу помощь!:)

1 ответ

Я использую icarus verilog, я предполагаю, что процедура такая же, так что просто gtkwave t_exercise2. vcdв командной строке и использовать assign out = selection? a:b;

Другие вопросы по тегам