【发布时间】:2021-12-17 23:31:28
【问题描述】:
我不明白为什么模拟器会发出警告以及电路为什么不能正常工作。
这是 Verilog 代码:
`timescale 1ns/1ns
module circuitIVEightBitAssign(input [7:0]a,flag,output [7:0]b);
assign #(143) b = flag ? ~a : (~(a) + 1'b1) ;
endmodule
这是测试台:
`timescale 1ns/1ns
module circuitIVAllTB();
wire [7:0]b1;
reg [7:0]a;
reg flag;
circuitIVEightBitAssign g2(a,flag,b1);
initial begin
#10
flag = 0;
a = 8'b00000000;
#500
a = 8'b11111111;
#500
a = 8'b00000111;
#500
flag = 1;
#500
flag = 0;
#500
$stop;
end
endmodule
警告是:
** 警告:(vsim-3015) [PCDPC] - 端口大小 (8) 与端口“标志”的连接大小 (1) 不匹配。端口定义位于: C:/Users/Ali/OneDrive/Desktop/CA2_00FALL/circuitIVEightBitAssign.v(2)。 时间:0 ns 迭代:0 实例:/circuitIVAllTB/g2 文件: C:/Users/Ali/OneDrive/Desktop/CA2_00FALL/circuitIVAllTB.v 行:6
但是,flag 是 1 位的。为什么 modelsim 会给我这个警告?
【问题讨论】:
标签: verilog simulation system-verilog modelsim test-bench