专栏前言
本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网
 
分析
通过波形示意图我们可以发现,当sel为0,1,2时,输出mux_out分别为d3,d2,d1,那么sel=3时,输出一定为d0,因此我们只需要用case语句分别判断输入的四种情况即可。
`timescale 1ns/1ns
module mux4_1(
input [1:0]d1,d2,d3,d0,
input [1:0]sel,
output[1:0]mux_out
);
//*************code***********//
    reg [1:0] mux_out_tmp ;
    always@(*) begin
        case(sel) 
            2'b00: mux_out_tmp = d3 ; 
            2'b01: mux_out_tmp = d2 ; 
            2'b10: mux_out_tmp = d1 ; 
            2'b11: mux_out_tmp = d0 ; 
            default: mux_out_tmp = d3 ; 
        endcase
    end 
    assign mux_out = mux_out_tmp ; 
//*************code***********//
endmodule 


















