简单加法器 + 测试台返回 "dont care" 输入
simple adder + testbench returning "dont care" input
我有一个加法器模块的简单测试台,但我得到了错误的输入:
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,而是显示 x?
标记为"//强制程序顺序执行的代码"不会使任何代码顺序执行。
您的两个初始语句仍将 运行 并行。你的意思可能是:
initial
begin
#100; //wait 100
$display("%h",fromAdd);
end
我有一个加法器模块的简单测试台,但我得到了错误的输入:
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,而是显示 x?
标记为"//强制程序顺序执行的代码"不会使任何代码顺序执行。
您的两个初始语句仍将 运行 并行。你的意思可能是:
initial
begin
#100; //wait 100
$display("%h",fromAdd);
end