对应各 CDC 路径的约束 - 2023.2 简体中文

适用于 FPGA 和 SoC 的 UltraFast 设计方法指南 (UG949)

Document ID
UG949
Release Date
2023-11-29
Version
2023.2 简体中文

如果 CDC 总线使用格雷编码(例如,FIFO)或者如果需要限制 1 个或多个信号上的 2 个异步时钟之间的时延,则必须使用 set_max_delay 约束及 -datapath_only 选项来忽略这些路径上的时钟偏差和抖动,并覆盖时延要求的默认路径要求。通常使用源时钟周期作为最大延迟值就足够了,这只是为了确保在任意给定时间,CDC 路径上最多仅存在一项数据。

当时钟周期之间的比率较高时,选择源时钟周期和目标时钟周期的最小值同样足以降低传输时延。简单标准的异步 CDC 路径的源时序单元与目标时序单元之间不应存在任何逻辑,因此实现工具很容易就可以满足“Max Delay Datapath Only”(仅最大延迟数据路径)约束。

某些异步 CDC 路径要求在总线的各个位之间施加偏移控制,而无需对总线时延施加约束。使用总线偏移约束可防止接收时钟域在同一时钟沿上锁存总线的多个状态。您可使用 set_bus_skew 命令来对总线设置总线偏移约束。例如,您可将 set_bus_skew 应用于使用格雷编码代替“Max Delay Datapath Only”(仅最大延迟数据路径)约束的 CDC 总线。欲知详情,请访问此链接以参阅 Vivado Design Suite 用户指南:使用约束(UG903) 中的相应内容。

对于不需要时延控制的路径,您可定义 1 个点对点伪路径约束。