串联 PCIe UltraScale+ 工具流程示例 - 1.3 简体中文

UltraScale+ 器件 Integrated Block for PCI Express 产品指南 (PG213)

Document ID
PG213
Release Date
2022-11-16
Version
1.3 简体中文

本章节演示了以 UltraScale+ 参考板为目标的从始至终的整个 Vivado® 工具流程。此流程描述中的路径和指针假定使用默认组件名称 pcie4_ultrascale_plus_0

  1. 创建新的 Vivado 工程时,请选择先前表格中所示的受支持的器件/封装。
  2. Vivado IP 目录中,展开Standard Bus Interfaces > PCI Express (标准总线接口 > PCI Express),然后双击 UltraScale+ PCI Express Integrated Block即可打开“Customize IP”(自定义 IP)对话框。
    图 1. Vivado IP 目录
  3. 在“Customize IP”对话框的“Basic”(基本)选项卡中,请确保选中下列选项:
    • “Mode”(模式):Advanced(高级)
    • PCIe Block Location”(PCIe 块位置):X1Y2
      注释: 根据先前表格,针对目标器件使用所需的 PCIe 块位置。此设计示例目标为 VU9P。
    • “Tandem Configuration or Dynamic Function eXchange”(串联配置或 Dynamic Function eXchange):Tandem PCIe (串联 PCIe)。
      图 2. Tandem PCIe
  4. 设计示例软件通过“Vendor ID”(供应商 ID)和“Device ID”(器件 ID)连接至器件。供应商 ID 必须为 16'h10EE,器件 ID 必须为 16'h903F。在“PF0 IDs”选项卡中,请设置:
    • “Vendor ID”(供应商 ID):10EE
    • “Device ID”(器件 ID):903F
    注释: 另一种解决方案是 Vendor ID 和 Device ID 均可更改,并通过更新驱动和主机 PC 软件来匹配新的值。
    图 3. ID
  5. 执行其它 PCIe 自定义操作,然后选择OK(确定)以生成该核。

    生成核后,在 Vivado IDE 的“Sources”(源)选项卡中会显示核的层级。

  6. 在“Sources”选项卡中右键单击该核,然后选择Open IP Example Design(打开 IP 设计示例)。

    这样即可创建 Vivado 的新实例,并在 Vivado IDE 中自动加载设计示例工程。

  7. 运行综合与实现。

    单击 Flow Navigator 中的Run Implementation(运行实现)。单击OK首先运行综合直至完成。这样设计会运行完整的工具流程,最终结果是生成支持串联 PCIe 的已完全布线的设计。

  8. 设置 PROM 或闪存设置,并请求 2 个显式 bit 文件。
    通过以下步骤设置相应的设置以便为 PROM 或闪存器件正确生成比特流:
    • 修改 PCIe IP 约束文件中的约束(例如,pcie4_ultrascale_plus_0_tandem)。
    • 通过设置下列属性(如设计示例约束文件中所示)请求 2 个显式比特流:
    set_property HD.OVERRIDE_PERSIST FALSE [current_design]
    set_property HD.TANDEM_BITSTREAMS Separate [current_design]

    HD.TANDEM_BITSTREAMS 的其它值包括用于 Tandem PROM 解决方案的 Combined(默认值)和为整个器件生成标准单阶比特流的 None。如需了解更多信息,请参阅 器件编程

  9. 生成比特流。
    完成综合和实现后,请单击 Flow Navigator 中的Generate Bitstream(生成比特流)。这样会在 runs 目录中创建并放置以下 2 个文件:
    xilinx_pcie4_uscale_plus_ep_tandem1.bit|
    xilinx_pcie4_uscale_plus_ep_tandem2.bit
  10. 为阶段 1 生成 PROM 文件。

    Vivado Tcl Console(Tcl 控制台)中运行以下命令以创建 UltraScale+ 开发板上支持的 PROM 文件。

    write_cfgmem -format mcs -interface BPI -size 256 -loadbit “up 0x0
    xilinx_pcie4_uscale_plus_ep_tandem1.bit” xilinx_pcie4_uscale_plus_ep_tandem1.mcs