高速 DSP 设计的提前层级规划示例 - 2023.2 简体中文

Versal 自适应 SoC 硬件、IP 和平台开发方法指南 (UG1387)

Document ID
UG1387
Release Date
2023-11-15
Version
2023.2 简体中文

以下示例并不适用于所有设计,但可演示层级的作用。DSP 设计一般允许对设计增加时延。这样可以在设计中添加寄存器,实现时钟频率更高的设计。此外,寄存器还可用于提升布局灵活性。这非常重要,因为时钟频率较高时,信号无法在 1 个时钟周期内遍历裸片。添加寄存器可使难以到达的区域变为可供使用。下图显示了有效的层级规划对于加速时序收敛的作用。

图 1. 有效的层级规划示例

本设计部分分 3 个层级:

  • DSP_i

    在 DSP_i 算法块中,输入和输出将同时寄存。由于器件拥有大量寄存器,因此,这是提升时序预算的首选方法。

  • floorplanning_wrapper_i

    floorplanning_wrapper_i 中有 1 个 CE 信号。CE 信号一般为重负载信号,会导致时序问题,应在布局规划时包含这些信号。通过创建布局规划封装,后续即可根据需要手动对此模块进行布局规划。

    此外,在模块层次已添加 KEEP_HIERARCHY 以确保保留该层级用于布局规划,与任何其他全局综合选项无关。

  • placement_flexibility_wrapper_i

    placement_flexibility_wrapper_i 中,寄存 DATA_IN、VALID_IN、DATA_OUT 和 VALID_OUT 信号。由于并未计划在布局规划中包含这些信号,因此这些信号不包含在 floorplanning_wrapper_i 中。如果这些信号包含在布局规划中,将无法满足布局灵活性的要求。

    此外,只要将 DATA_IN + VALID_IN 或 DATA_OUT 与 VALID_OUT 配对处理,稍后即可添加更多寄存器。如果添加更多寄存器,综合工具可能推断移位寄存器 LUT (SRL),这将强制所有寄存器集中到 1 个组件中,这对于布局灵活性无益。为避免出现此情况,在模块层次已添加 SHREG_EXTRACT 并将其设置为 NO。