verilog编写一个二选一或者四选一的模块;
时间: 2023-07-02 20:09:32 浏览: 78
以下是一个简单的Verilog代码实现二选一或四选一的模块:
```
module mux(input [3:0] data_in, // 4个输入数据
input [1:0] select, // 2位选择信号
output reg data_out); // 1个输出数据
always @(*) begin
case (select)
2'b00: data_out = data_in[0]; // 选择信号为 00 时,输出 data_in[0]
2'b01: data_out = data_in[1]; // 选择信号为 01 时,输出 data_in[1]
2'b10: data_out = data_in[2]; // 选择信号为 10 时,输出 data_in[2]
2'b11: data_out = data_in[3]; // 选择信号为 11 时,输出 data_in[3]
endcase
end
endmodule
```
该模块有 4 个输入数据和 2 位选择信号,可以根据选择信号的不同,输出对应的输入数据。其中,`data_out` 是一个寄存器型输出信号,用于存储选中的输入数据。
阅读全文