第一种方法module mux( d1, d2, d3, d4, se1, se2, dout ); input d1; input d2; input d3; input d4; input se1; input se2; output dout; reg dout; always @ (d1 or d2 or d3 or d4 or se1 or se2) case({se1,se2}) 2‘b00 : dout=d1; 2‘b01 : dout=d2; 2‘b10 : dout=d3; 2‘b11 : dout=d4; endcaseendmodule 第二种方法 module mux( d1, d2, d3, d4, se1, se2, dout ); input d1; input d2; input d3; input d4; input se1; input se2; output dout; reg dout; always @ (d1 or d2 or d3 or d4 or se1 or se2) if (!se1) begin if (!se2) dout = d1; else dout = d2; end else begin if (!se2) dout = d3; else dout = d4; end endmodule第三种方法module se( d1, d2, d3, d4, se1, se2, dout ); input d1; input d2; input d3; input d4; input se1; input se2; output dout; reg dout; always @ (d1 or d2 or d3 or d4 or se1 or se2) assign dout=se1?se2?d4:d3:se2?d2:d1;endmodule
时间: 2024-12-21 00:22:57