题解 | #四选一多路器#
四选一多路器
https://www.nowcoder.com/practice/cba4617e1ef64e9ea52cbb400a0725a3
`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; always @(*) begin case (sel) 2'b00: mux_out=d3; 2'b01: mux_out=d2; 2'b10: mux_out=d1; 2'b11: mux_out=d0; endcase end //*************code***********// endmodule
说明一下上面需要注意的几个点:
- case语句需要在always中使用
- sel为00时不一定选择d0,需要根据题目要求来
- 在always中,对mux_out进行赋值,需要是reg型,所以需要重新定义mux_out,注意定义mux_out时,别忘了前面的位数!
各位兄台加油!