iverilog возвращает бред при тестировании 4-битного сумматора
Точно следуя моему руководству профессора, его компьютер возвращает значения, отличные от моих. Я трижды проверил, и мой код идентичен его в любом случае. Вот тестовая партия:
module RCA_4_tb;
reg [3:0] a, b;
reg cin;
wire [3:0] sum;
wire cout;
initial
begin
$dumpfile("RCA_test.vcd");
$dumpvars(0, RCA);
$monitor("%d + %d = %d%d", a, b, cin, cout, sum);
#0 a = 4'd3; b = 4'b1010; cin = 1'b0;
#100 a = 4'd8; b = 4'b0100; cin = 1'b0;
#100 a = 4'b0010; b = 4'b0100; cin = 1'b0;
#50 $finish;
end
RCA_4 RCA(sum,cout,a,b,cin);
endmodule
1 ответ
Я не могу комментировать (только отвечаю на данный момент), но у вас (?) Может быть неправильное назначение портов для кода создания экземпляра вашего модуля или ошибка в вашем коде RCA_4. Не могли бы вы поделиться кодом для RCA_4?
Вы используете примитивные ворота или RTL в RCA_A?