本文为您介绍RTL(Register Transfer Level)开发平台所使用的工程模式及目录介绍,并为您提供示例框架帮助您理解并使用。

工程模式

Vivado设计套件是由FPGA厂商发布的集成设计环境,具有Project和NoProject两种工程模式,F3实例的RTL开发平台采用的是NoProject模式。两种工程模式的具体说明如下所示:

  • Project 模式

    该模式需要创建一个整体的工程,例如:XXX_prj.xpr,然后导入所需要的RTL代码和约束文件,最终生成bit文件。

  • NoProject 模式

    该模式需要将多个DCP文件整合成一个DCP文件,然后运行布局布线后,最终生成bit文件。

工程主目录介绍

工程目录包含主目录和source目录。source目录下是PR区域的相关工程文件,主目录下是运行工程的脚本文件,主目录的具体说明如下:
脚本名称 描述
compiling.sh 运行整体工程的脚本,最终生成xclbin加载文件。
create_design.tcl 可以在vivado Tcl Console中执行的脚本,该脚本以usr_top.v为顶层创建的工程,被run_synth.tcl调用之后,生成了用户的dcp文件custom_logic.dcp。您在使用时,必须编辑该文件,将您自己的文件添加到该脚本中。
mem_design.tcl 在vivado Tcl Console中执行的脚本,该脚本重新实例化了 DDR IP文件,需要和config.v文件一起使用。由于在动态加载区域有三个DDR控制器, 该文件可以根据实际用户使用个数来实例化真实的DDR个数。
run_synth.tcl 需要和create_design.tcl合并使用。
run.tcl 整体运行的脚本,被compiling.sh调用。
generate_dcp.tcl 该脚本在整合成一个完整的dcp文件后,将生成最终的dcp文件和bit文件。您可以根据自己的需要进行策略修改。

RTL示例框架

在RTL模式下,我们提供了一个基于如下框架的 参考示例Image 27.png
  • 您可以在示例代码的如下位置,添加{ PCI_DEVICE(0x1ded, 0x1004), },完成device id的修改,即可直接使用其中的工具进行测试。AR65444软件和工具的相关说明请前往XIlinx官网查看。Image 30
  • 您可以在vivado界面的Tcl Console中执行create_design.tcl,建立用户工程,测试综合过程。
  • 整体工程完成之后,您可以通过vivado打开dcp文件,然后查看资源、时序和布线结果等信息。

FaaS F3 RTL使用指南

FaaS F3 RTL的官方使用指南,请参见f3实例RTL开发最佳实践