确定内核的布局位置 - 2022.1 简体中文

Vitis 统一软件平台文档 应用加速开发 (UG1393)

Document ID
UG1393
Release Date
2022-05-25
Version
2022.1 简体中文

要确定内核的布局位置,需要以下两项信息:

  • 硬件平台的每个 SLR 中的可用资源 (.xsa)。
  • 每个内核所需的资源。

通过这两项信息,您将确定目标平台的每个 SLR 中可布局的一个或多个内核。

执行这些计算时请谨记,系统基础架构可以使用 10% 的可用资源:

  • 如果内核必须跨 SLR 边界,则可以使用基础架构逻辑将内核连接到 DDR 接口。
  • 在 FPGA 中,资源也用于信号布线。在 FPGA 中永远不可能使用 100% 的可用资源,因为信号布线也需要资源。

可用的 SLR 资源

Vitis 软件平台版本说明 中可找到各版本支持的各平台的每个 SLR 的可用资源。下表显示了目标平台示例。在此示例中:

  • SLR 描述指明了哪个 SLR 包含静态区域和/或动态区域。
  • 其中列出了每个 SLR 可用的资源(LUT、寄存器、RAM 等)。

这使您能够确定每个 SLR 中有哪些资源可用。

表 1. 硬件平台的 SLR 资源
区域 SLR 0 SLR 1 SLR 2
SLR 描述 器件底部;专属于动态区域。 器件中间;由动态和静态区域资源共享。 器件顶部;专属于动态区域。
动态区域 Pblock 名称 pfa_top_i_dynamic_region_pblock _dynamic_SLR0 pfa_top_i_dynamic_region_pblock _dynamic_SLR1 pfa_top_i_dynamic_region_pblock _dynamic_SLR2
计算单元布局语法 set_property CONFIG.SLR_ASSIGNMENTS SLR0[get_bd_cells<cu_name>] set_property CONFIG.SLR_ASSIGNMENTS SLR1[get_bd_cells<cu_name>] set_property CONFIG.SLR_ASSIGNMENTS SLR2[get_bd_cells<cu_name>]
动态区域中可用的全局存储器资源
存储器通道;系统端口名称 bank0 (16 GB DDR4) bank1(16 GB DDR4,位于静态区域)

bank2(16 GB DDR4,位于动态区域)

bank3 (16 GB DDR4)
动态区域中的大致可用互连结构资源
CLB LUT 388K 199K 388K
CLB 寄存器 776K 399K 776K
块 RAM 拼块 720 420 720
UltraRAM 320 160 320
DSP 2280 1320 2280

内核资源

System Estimate(系统估算)报告中可获取每个内核的资源。

完成硬件仿真或硬件运行后,在Assistant视图中会提供System Estimate报告。此报告的示例如下所示。

图 1. 系统估算报告

  • FF 是指每个 SLR 的平台资源中记录的 CLB 寄存器。
  • LUT 是指每个 SLR 的平台资源中记录的 CLB LUT。
  • DSP 是指每个 SLR 的平台资源中记录的 DSP。
  • BRAM 是指每个 SLR 的平台资源中记录的块 RAM tile。

此信息可帮助您确定每个内核的正确 SLR 分配。