`timescale 1ns/1ns
module mux4_1(
input [1:0]d1,d2,d3,d0,
input [1:0]sel,
output [1:0]mux_out
);
//*************code***********//
//输出wire
assign mux_out = (sel == 2'b11)?d0:((sel == 2'b10)?d1:((sel == 2'b01)?d2:d3));
//输出reg
/*always@(*)begin
case(sel)
2'b11: mux_out = d0;
2'b10: mux_out = d1;
2'b01: mux_out = d2;
2'b00: mux_out = d3;
default:;
endcase
end
*/
//*************code***********//
endmodule
此题要求输出定义要是wire类型,也就是说不能使用always块 也就只能通过三元运算符的嵌套使用。

京公网安备 11010502036488号