如何将2to1 MUX(4bit输入)做成门级代码?

问题描述 投票:0回答:0

我对 Verilog 真的很菜鸟。 我正在尝试制作一个 2 到 1 的多路复用器,它有两个 4 位输入和 4 位输出以及 1 位选择信号。 我可以将代码制作为行为代码,如下所示,但我无法将其转换为门级代码。

module mux2to1_4bit(out,in0,in1,sel);
output [3:0] out;
input [3:0] in0, in1;
input sel;
reg [3:0] out;

always @ (*) begin
case(sel)
1'b0: out =in0;
1'b1: out =in1;
endcase end
endmodule

下面是我的门级改造

module mux2to1_4bit(out,in0,in1,sel);
output  [3:0] out;
input [3:0] in0, in1;
input sel;
wire [3:0] t0,t1;
wire selbar;

and (t0, in1, sel), (t1, in0, selbar);
not (selbar, sel);
or (out, t0, t1);
endmodule

我有这个错误:原始输出连接必须是一个标量网络。

verilog gorilla
© www.soinside.com 2019 - 2024. All rights reserved.