当前位置: 首页> 健康> 养生 > 基于FPGA的多路选择器

基于FPGA的多路选择器

时间:2025/7/27 6:26:34来源:https://blog.csdn.net/weixin_52345779/article/details/140531320 浏览次数:0次

目录

一、组合逻辑

二、多路选择器简介:

三、实战演练


摘要:本实验设计并实现了一个简单的多路选择器,文章后附工程代码

一、组合逻辑

组合逻辑是VerilogHDL设计中的一个重要组成部分。从电路本质上讲,组合逻辑电路的特点是输出信号只是当前时刻输入信号的函数,与其他时刻的输入状态无关,无存储电路,也没有反馈电路。

二、多路选择器简介:

多路选择器是数据选择器的别称,在多路数据传送过程中,能够根据需要将其中任意一路选出来的电路,叫做数据选择器,也称多路选择器或多路开关。

三、实战演练

开发平台:Quartus Prime 18.1Standard Edition                 EP4CE10F17C8(征途PRO系列)

1、实验目标:设计并实现2选1多路选择器,主要功能是通过选通控制信号sel确定选通in_1路或in_2路作为信号输出。当选通控制信号S为1时,信号输出为in_1路信号;当选通控制信号sel为0时,信号输出为in_2信号

2、模块框图:

输入输出信号描述:

3、模块波形图:

4、实验代码

module mux2_1 (input           wire        in_1,input           wire        in_2,input           wire        sel ,
​output          reg         out
);
always @(*) begin//always @(in_1,in_2,sel) beginif(sel == 1'b1)out = in_1;elseout = in_2;
end
endmodule
`timescale 1ns/1ns
module tb_mux2_1 ();reg             in_1;reg             in_2;reg             sel ;wire            out ;       initial beginin_1 <= 1'b0;in_2 <= 1'b0;sel  <= 1'b0;
end
​
always #10  in_1 <= {$random} % 2;
always #10  in_2 <= {$random} % 2;
always #10  sel  <= {$random} % 2;
​mux2_1 mux2_1_inst(. in_1(in_1),. in_2(in_2),. sel (sel ),. out (out )
);
​
endmodule

5、仿真波形图:

7、引脚绑定

6、上板验证:略

7、项目工程

链接:https://pan.baidu.com/s/1WA_O13RfpUoZtocgRJuW0A?pwd=yykl 
提取码:yykl

四、总结

本实验设计并实现了一个简单的多路选择器,并完成了代码的仿真。

参考:[野火]FPGA Verilog开发实战指南

关键字:基于FPGA的多路选择器

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: