простой сумматор + тестовый стенд, возвращающий ввод "не волнует" - PullRequest
0 голосов
/ 08 марта 2020

У меня есть простой тестовый стенд для модуля сумматора, но я получаю неправильный ввод:

module adderTestbench;

    wire [31:0] fromAdd;

    adder lol(32'h00000000,fromAdd);


    initial begin //forcing program to be sequential
    #100; //wait 100
    end //end begin

    initial begin
    $display("%h",fromAdd);
    end

endmodule

module adder(addIn,addOut);
input [31:0] addIn;
output reg [0:31] addOut;
always @(addIn) 
begin
addOut <= addIn + 32'h00000004;
end
endmodule

Отображается xxxxxxxx.

Может кто-нибудь объяснить, почему это не так отображается 4, вместо этого он отображает х?

1 Ответ

2 голосов
/ 08 марта 2020

Код, помеченный как "// заставляющий программу быть последовательной" не делает никакой код последовательным.
Ваши два начальных оператора будут по-прежнему выполняться параллельно. Вы, вероятно, имеете в виду:

initial
begin
   #100; //wait 100
   $display("%h",fromAdd);
end
...