作者:FPGA探索者,文章来源:FPGA探索者微信公众号
在FPGA开发过程中不可避免的要使用到一些IP,有些IP是很复杂的,且指导手册一般是很长的英文,仅靠看手册和网络的一些搜索,对于复杂IP的应用可能一筹莫展。
这里以Xilinx为例,在Vivado中使用SRIO高速串行协议的IP演示如何使用官方例程和手册进行快速使用,在仔细阅读参考官方例程后进行一些修改就可以应用在实际项目中。
1. 导入IP
点击“IP Catalog”,选择要使用的IP,双击3处配置IP。
2. 配置IP
点击左上角可以阅读官方的IP说明手册、IP更新信息、常见问题及解决方式。根据实际的需求配置IP的参数,如工作时钟等。
在“Shared Logic”选项中(SRIO、Aurora、JESD204等使用GT的IP核中常常有此选项),如果选择“Include Shared Logic inExample Design”(推荐方式),则在IP核外部的示例工程中生成时钟、复位等必要逻辑,且这些逻辑作为共享逻辑,加入使用多个IP核时,可以共享一些复位等信号,且这些时钟、复位可以被使用者修改;
当选中“Include Shared Logic in Core”(简单)选项时,时钟、复位逻辑等逻辑被包含在IP核中,对其他的IP不可见,这些逻辑也不能被修改(Read-Only)。
下图中左边是“IncludeShared Logic in Example Design”,右边是“Include Shared Logic in Core”,可见不同配置下IP对外呈现的时钟、复位和GT的一些引脚是不同的。
3. 阅读手册
点击“Product Guide”可以转到Xilinx的DocNav中,查看、阅读、下载各FPGA器件手册、开发板资料、IP手册。Xilinx官方手册和配套例程是最具参考价值的资料,没有其他。虽然是英文版,但是借助翻译软件及关键词查找,还是能够进行阅读。
4. 生成例程
选择OOC编译,等编译完成后,右键“Open IPExample Design”,打开IP对应配置下的测试工程,选择指定路径,自动打开新生成的测试工程。
5. 阅读示例工程,仿真分析
工程中包含了时钟、复位及输入输出、AXI总线协议等必要的配置,包含TestBench仿真测试文件,阅读分析源码,仿真查看波形,通过少量更改可以下板测试,ILA监测,参考示例工程,在实际应用中即可使用。
选择“Include Shared Logic inExample Design”(推荐方式),则在IP核外部的示例工程中生成时钟、复位等必要逻辑,且这些逻辑作为共享逻辑,加入使用多个IP核时,可以共享一些复位等信号,且这些时钟、复位可以被使用者修改;
选中“Include Shared Logic in Core”(简单)选项时,时钟、复位、GT收发器配置是包含在IP核内部,对其他的IP不可见,这些逻辑也不能被修改(Read-Only),不对外呈现。
运行仿真即可查看波形,加入内部信号的波形到窗口,可以分析内部的信号,包括物理层PHY、协议层LOG等多个信号。(加入内部信号的方式可以参考matlab与FPGA数字滤波器设计(6)—— Vivado 中使用 Verilog 实现并行 FIR 滤波器/截位操作)