dhbighead 发表于 2012-11-3 17:40:46

请教一个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:35

子模块例化都没有,不高阻才怪呢

dhbighead 发表于 2012-11-3 17:49:48

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]
查看完整版本: 请教一个Verilog的问题,testbench仿真之后的输出一直是高阻态