创建 CDC 豁免 - 2023.2 简体中文

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

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

CDC 豁免的定义较为简单,因为每个 CDC 违例都仅引用源和目标元素的 2 个管脚或端口对象。请使用命令行选项 -from/-to 来指定源和目标管脚或端口。CDC 豁免无法通过 -string/-objects 来定义。

重要: CDC 豁免不受源和目标时钟影响,仅受源和目标管脚影响。因此,从 GUI 或者从某些 CDC 违例对象创建豁免时,如果这些对象引用不同时钟对的相同源和目标管脚,则可能会导致生成如下警告:WARNING: [Vivado_Tcl 4-935] Waiver ID 'CDC-7' is a duplicate and will not be added again。

以下命令用于在源管脚 U_CORE/U00_TOP/sr_reg[3]/C 与目标管脚 U_CORE/U10/ar_reg[3]/CE 之间创建 CDC-1 豁免。

create_waiver -id {CDC-1} -description "CDC violations" \
-from [get_pins {U_CORE/U00_TOP/sr_reg[3]/C}] \
-to [get_pins {U_CORE/U10/ar_reg[3]/CE}]

如果省略命令行选项 -from-to,则豁免引擎会将缺失的选项作为通配符来处理。

以下 2 条命令效果相同,用于豁免端点管脚 U_CORE/U10/ar_reg[3]/CE 的所有 CDC-1,与起点无关:

create_waiver -id {CDC-1} -description "CDC violations" \
-from {*PIN} \
-to [get_pins {U_CORE/U10/ar_reg[3]/CE}]
create_waiver -id {CDC-1} -description "CDC violations" \
-to [get_pins {U_CORE/U10/ar_reg[3]/CE}]