回顾 LED 工程建立流程后,本篇介绍数据选择器工程的实现方法。
数据选择器是从多个输入逻辑信号中选择一个输出的电路。例如电影票 A 和 B 对应输入信号 in1 与 in2,检票员对应选择信号 sel,电影院对应输出信号 out。

真值表如下:

当 sel 为 0 时,out 等于 in1;sel 为 1 时,out 等于 in2。
新建工程后,使用 Verilog 实现:
module mux_2to1(
input wire in1,
input wire in2,
input wire sel,
output reg out
);
always @(*) begin
if (sel == 1'b1)
out = in2;
else
out = in1;
end
endmodule
代码分析:in1、in2、sel 为 wire 类型,用于传递信号;out 为 reg 类型,用于存储状态并在 always 块中循环更新逻辑。
验证电路正确性:

RTL 视图与设计一致。仿真波形分析:
第一组波形中 sel 恒为 0,out 跟随 in1。

第二组波形中 sel 恒为 1,out 跟随 in2。

仿真设置提示:Tool name 选项卡中选择 Modelsim 而非 Modelsim-Altera,避免报错。









