verilog用模块调用的方式实现4选1选择器组合成16选1选择器
用5个 4选1 组成就可以了
module mux16(
input [15:0] din,
input [3:0] sel,
output dout
);
wire y0,y1,y2,y3;
mux4 mux4_0(
.a(din[0]),
.b(din[1]),
.c(din[2]),
.d(din[3]),
.sel(sel[1:0]),
.y(y0)
);
mux4 mux4_1(
.a(din[4]),
.b(din[5]),
.c(din[6]),
.d(din[7]),
.sel(sel[1:0]),
.y(y1)
);
mux4 mux4_2(
.a(din[8]),
.b(din[9]),
.c(din[10]),
.d(din[11]),
.sel(sel[1:0]),
.y(y2)
);
mux4 mux4_3(
.a(din[12]),
.b(din[13]),
.c(din[14]),
.d(din[15]),
.sel(sel[1:0]),
.y(y3)
);
mux4 mux4_4(
.a(y0),
.b(y1),
.c(y2),
.d(y3),
.sel(sel[3:2]),
.y(dout)
);
endmodule
温馨提示:答案为网友推荐,仅供参考
相似回答