实验一 FPGA使用Verilog HDL设计选择器

1.实验目的

  1. 掌握使用Vivado软件进行设计、仿真的方法。
  2. 掌握FPGA程序的下载方法。
  3. 掌握使用Verilog HDL设计选择器的方法。

2.实验要求

采用Verilog HDL语言设计程序,实现一个四选一数据选择器,并对其进行仿真。

3.实验过程

  1. 打开Vivado软件,新建一个工程。

  2. 新建设计文件,使用Verilog HDL语言设计程序,实现数据选择器功能。

  3. 具体代码如下:

    module mux_4_1(
    in,
    s,
    out
    );

    input[3:0] in;//四个输入端,位宽为4
    input[1:0] s;//两个控制信号,位宽为2
    output out;
    reg out;

    always @(*)begin
    if(s == 2'b00)
    out=in[0];
    if(s == 2'b01)
    out=in[1];
    if(s == 2'b10)
    out=in[2];
    if(s == 2'b11)
    out=in[3];
    end
    endmodule

仿真代码如下:

bash 复制代码
module mux_4_1_stimulation;

reg[3:0]in;
reg[1:0]s;
wire out;

mux_4_1 u_mux_4_1(
    .in(in),
    .s(s),
    .out(out)
);

always #10 in[0]=~in[0];
always #20 in[1]=~in[1];
always #40 in[2]=~in[2];
always #80 in[3]=~in[3];

initial
    begin 
        s=1'b0;
        in=4'b0;
        #160 $stop;
    end;
always #10 s=s+1;
endmodule

其实仿真代码并不是很重要,只不是为了观察自己的实验结果和自己的预期是否一样而已

引脚绑定:这个根据你自己使用的板子哪个对应哪个绑定就行

总结

本次实验旨在通过Vivado软件设计一个四选一数据选择器,并对其进行仿真,以加深对Verilog HDL语言的理解和实践能力。在完成实验过程中,我学会了如何使用Vivado软件进行设计和仿真,以及如何下载FPGA程序。使用Verilog HDL语言编写了一个四选一数据选择器的功能。在设计过程中,我考虑了数据选择器的输入端口、输出端口以及逻辑功能,确保了设计的正确性和完整性。

我对设计进行了仿真,验证了数据选择器的功能和正确性。通过仿真结果,我确认了设计的准确性,并对其进行了必要的调试和优化。通过本次实验,我不仅掌握了使用Vivado软件进行设计和仿真的方法,也加强了对Verilog HDL语言的掌握和应用能力。

相关推荐
brave and determined5 小时前
可编程逻辑器件学习(day26):低主频FPGA为何能碾压高主频CPU?
人工智能·嵌入式硬件·深度学习·学习·fpga开发·云计算·fpga
邮专薛之谦6 小时前
Verilog 语言基础学习
fpga开发
the sun347 小时前
数电基础:移位寄存器、顺序脉冲、序列信号发生器
单片机·嵌入式硬件·fpga开发·数电
海涛高软2 天前
yolov8目标检测训练在rk3588上部署
fpga开发
第二层皮-合肥2 天前
USB3.0专题-硬件的测试
fpga开发
hexiaoyan8272 天前
高速数据采集卡设计方案:886-基于RFSOC的8路5G ADC和8路9G的DAC PCIe卡
fpga开发·高速数据采集卡·光纤pcie卡·通用pcie卡·xc7a100t板卡
嵌入式软硬件攻城狮2 天前
2.FPGA板卡通过电脑映射连接上网
fpga开发·电脑
brave and determined2 天前
可编程逻辑器件学习(day22):“让ARM穿上FPGA的马甲“:赛灵思Zynq的命名哲学与技术革命
arm开发·嵌入式硬件·fpga开发·zynq·fpga设计·嵌入式设计·fpga开发流程
FPGA_小田老师3 天前
FPGA语法基础(二):SystemVerilog 数组清零方法详解
fpga开发·systemverilog·数组清零·systemverilog数组·systemverilog语法
jiushun_suanli3 天前
FPGA(现场可编程门阵列)详解
经验分享·学习·fpga开发