请教一个Verilog的问题,testbench仿真之后的输出一直是高阻态
请教一个Verilog的问题,testbench仿真之后的输出一直是高阻态一个四选一的选择器module mux4_1(d0,d1,d2,d3,s0,s1,EN_n,data_out);
input d0,d1,d2,d3;
input s0,s1;
input EN_n;
output reg data_out;
always @ (d0 or d1 or d2 or d3 or s0 or s1 or EN_n)
if(EN_n)
data_out <= 1'bz;
else
case ({s1,s0})
2'b00: data_out <= d0;
2'b01: data_out <= d1;
2'b10: data_out <= d2;
2'b11: data_out <= d3;
default: data_out <= 1'dx;
endcase
endmodule
这里是testbench// *****************************************************************************
// Generated on "11/03/2012 13:14:20"
// Verilog Test Bench template for design : mux4_1
//
// Simulation tool : ModelSim-Altera (Verilog)
//
module mux4_1();
// test vector input registers
reg EN_n;
reg d0;
reg d1;
reg d2;
reg d3;
reg s0;
reg s1;
// wires
wire data_out;
initial
begin
EN_n <= 1;
d0 <= 1;
d1 <= 0;
d2 <= 1;
d3 <= 0;
s0 <= 0;
s1 <= 0;
forever #10 {s1,s0} <= $random;
end
initial
#5000 EN_n <= 0;
initial
#10000
$stop;
endmodule
仿真之后的结果如图
输出值一直是HiZ
不知何故 子模块例化都没有,不高阻才怪呢 mitchell 发表于 2012-11-3 17:46 static/image/common/back.gif
子模块例化都没有,不高阻才怪呢
// assign statements (if any)
mux4_1 (
// port map - connection between master ports and signals/registers
.EN_n(EN_n),
.d0(d0),
.d1(d1),
.d2(d2),
.d3(d3),
.data_out(data_out),
.s0(s0),
.s1(s1)
);那一定是这个了。。。
我以为没什么用。。
页:
[1]