FPGA基本实验(Xilinx Vivado)

该教程涵盖从基础到进阶的FPGA实验,包括项目创建、编译与下载,使用VIO调试工具,组合逻辑(译码器)验证,计数器波形仿真与ILA逻辑分析仪的应用,多周期时序逻辑设计,以及移位寄存器和DDS的实践。通过这些实验,学习者将深入理解FPGA设计与调试技巧。

实验1:项目创建、编译和下载

本阶段,结合开发板配套资料,请掌握以下技能

  • 创建Vivado工程,正确选择芯片信号
  • 查阅电路板的原理图,找到一个连接在 FPGA IO上的LED
  • 学习使用Vivado的 VIO调试工具,这是一个虚拟的拨码开关,非常有用
  • 首先使用基于Verilog代码的流程,例化VIO对象,设定VIO为1比特输出,连接VIO的输出到LED
  • 编写管脚位置约束文件,让VIO的输出到LED上。
  • 编译下载电路,在VIO调试工具中设定数值,观察LED的发光变化
  • 做完以上流程后,可以在IPI (IP Integrator )中,以Block拼图的方式,例化VIO模块,再做一遍上述功能。当基于标准总线AXI-MM,AXI-Streaming设计FPGA电路时,IPI工具非常有用。

实验2:FPGA译码器组合逻辑

  • 本阶段主要是把 “Verilog新手上路” 教程中的组合逻辑用硬件验证一下
  • 用VIO替代拨码开关,控制LED的状态

实验3:计数器波形仿真和signalTap

  • 本实验要点1:用硬件测试一下时序逻辑计数器
  • 本实验要点2:学会使用片上逻辑分析仪 ILA,该模块非常重要,是不可或缺的调试手段。
  • 首先用代码例化的方式调用ILA,这是传统方法,较为繁琐。
  • 然后使用IPI的Block方式,例化 计数器模块(把RTLmodule 拖入IPI Block视图即可),以及例化ILA模块。
  • 理解FPGA片上逻辑分析仪的“触发—采集—存储”模块的工作原理

实验4:时间基准电路和带使能的多周期计数器

  • 本实验要点1:多周期电路的工作原理
  • 所谓多周期,即电路带有使能端口,电路仅在使能信号有效的时钟周期动作。
  • 使能信号通常由其他模块生成,生成的途径有2种方式
    1. 对时钟计数生成
    2. 根据外部输入的信号经过逻辑计算生成
    3. 本实验中后级计数器的计数使能由前级计数器对时钟计数生成
  • 本实验要点2:片上逻辑分析仪 ILA 的分段触发捕获
  • 其工作原理为:ILA的存储器被被分为N个区段
  • 每次触发信号有效后,抓取数据,填充一个区段
  • 直到全部区段被填充满,ILA工作结束。

实验5:多周期时序逻辑 移位寄存电路

  • 本实验要点,在理解多周期电路工作原理的基础上,练习经典时序逻辑电路,移位寄存器的使用

实验6:计数器、ROM和DDS

  • 本实验要点,练习使用计数器模块和ROM模块
  • 使用这两个模块生成 FPGA信号处理中最常用的电路单元 DDS
  • 理解 DDS的工作原理,其中最重要的是DDS是如何生成特定频率的正弦波形
  • 理解不同的频率字字长设定和ROM地址空间大小,对生成波形的频率精度的影响。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值