2
我的verilog代码是一个加法器,只是使用assign sum = a+b
。问题是,虽然使用cocotb
运行它,但sum
仍然未知,但a
和b
具有有效值。当我使sum
成为reg类型时,它可以工作。verilog with cocotb:assign语句
`timescale 1 ns/1 ps
module adder(input [7:0] a,
input [7:0] b,
output reg [7:0] sum,
output [7:0] sum2);
assign sum2=a+b; //Trouble is here
[email protected](a,b) begin
sum=a+b; //This works
end
`ifdef COCOTB_SIM
initial begin
$dumpfile("adder.vcd");
$dumpvars();
end
`endif
endmodule
你是对的。这是一个错误。 –
我把波形图像显示为一个Gtkwave窗口,提示您使用伊卡洛斯? – user1155120
@ user1155120 GTKWave是一个赠品,但也有一些人也遇到了这个问题。不幸的是,流行Linux发行版的大多数版本库仍然提供了Icarus v0.9.7 – Chiggs