MMCM/PLL 相移模式 - 2023.2 简体中文

Vivado Design Suite 用户指南: 设计分析与收敛技巧 (UG906)

Document ID
UG906
Release Date
2023-10-19
Version
2023.2 简体中文

时序分析期间,可通过设置 MMCM/PLL PHASESHIFT_MODE 属性以两种不同方式对时钟相移进行建模,如下表中所述。

表 1. MMCM/PLL PHASESHIFT_MODE 属性
PHASESHIFT_MODE 属性 相移建模 注释
WAVEFORM 时钟波形修改 通常,set_multicycle_path –setup 约束用于在往来相移时钟的时钟域交汇路径上调整时序路径要求。
LATENCY MMCM/PLL 插入延迟 无需额外多周期路径约束。

AMD FPGA 系列所采用的默认 MMCM/PLL 时钟相移模式不尽相同。但用户可基于 PLL/MMCM 覆盖默认模式。

表 2. 默认 MMCM/PLL 时钟相移处理方式
技术 默认 MMCM/PLL 时钟相移处理方式
7 系列 时钟波形修改 (WAVEFORM)
AMD UltraScale™ 时钟波形修改 (WAVEFORM)
AMD UltraScale+™ MMCM/PLL 插入延迟 (LATENCY)
AMD Versal™ 自适应 SoC MMCM/PLL 插入延迟 (LATENCY)
重要: MMCM/PLL PHASESHIFT_MODE 属性不影响器件配置。它仅影响静态时序分析引擎的裕量计算。由于在 WAVEFORM/LATENCY 模式间可能需要调整时序约束,由此导致工具 QoR 也会受到影响。
重要: 在任意 CLKOUTx 管脚上定义管脚相移并有多个时钟到达 MMCM/PLL 的输入管脚时,PHASESHIFT_MODE=LATENCY 模式无效,并触发“Warning Timing 38-437”警告。在此类情况下,MMCM/PLL 应配置为使用 PHASESHIFT_MODE=WAVEFORM 模式。

在两个时钟之间引入偏差以满足时序时,使用 PHASESHIFT_MODE=LATENCY 尤显便利。将时钟相移设置为负值、空值或正值时,调整时序路径要求无需额外的多周期路径约束。

对于从 7 系列UltraScale 移植到 UltraScale+ 的旧设计,如果在 MMCM/PLL 上未设置 PHASESHIFT_MODE 属性,则会应用默认行为,并且 MMCM/PLL 时钟相移作为延迟时延而不是时钟沿相移来进行建模。在此情况下,需审查旧设计中指定的适用于时钟相移的所有多周期路径约束,并且通常需移除这些约束。通过运行方法检查 (report_methodology) 即可轻松识别这些约束。TIMING-31 用于标记时钟间的多周期路径,其中一个时钟为相移时钟,由 MMCM/PLL 生成(PHASESHIFT_MODE 设置为 LATENCY)。

Clocking Wizard 和 High Speed SelectIO™ Wizard 都提供了在每个 MMCM/PLL 上强制执行时钟相移建模的选项。PHASESHIFT_MODE 属性自动保存在 IP XDC 内。