1、创建
DRC
豁免和
Methodology
豁免
create_waiver
的附加实参的数量和类型取决于需豁免的
DRC
和
Methodology
违例。极少数
DRC
和
Methodology 违例(
如
TIMING-9
)
不含其他实参
,
因为消息为通用消息而非专用消息。其他
DRC
和
Methodology
违例可能包含多 个字符串和不同类型的对象。
2创建
CDC
豁免
CDC
豁免的定义较为简单
,
因为每个
CDC
违例都仅引用源和目标元素的
2
个管脚或端口对象。使用命令行选项
- rom/
-to
来指定源和目标管脚或端口。
CDC
豁免无法通过
-string
/
-objects
来定义。
3、CDC
规则优先级
默认情况下
,
“
Report CDC
”
(
CDC
报告
)
针对每个端点和每个时钟对仅报告
1
个违例。如果针对任一特定时钟对存 在多个违例,
则仅报告优先级最高的
CDC
违例。
CDC
规则按优先级从高到低排序
,
如下表所示。
4、报告豁免
建议验证豁免的违例是否符合预期。必须在定义豁免后且最终比特流之前执行此操作。
“
Report CDC
”
(
CDC
报告
)
、“
Report DRC
”
(
DRC
报告
)
和“
Report Methodology
”
(
方法论报告
)
命令支持 多种报告模式:
• 默认情况下
,
report_cdc
、
report_drc
和
report_methodology
命令仅报告未豁免的违例。
• 请使用
-waived
来强制
report_cdc
、
report_drc
和
report_methodology
命令仅报告已豁免的违例。必 须复审报告,
确认所有已豁免的违例都符合预期。
• 使用
-no_waiver
可强制
report_cdc
、
report_drc
和
report_methodology
命令在不应用豁免的情况下 运行。在此模式下,
所有违例无论是否豁免都会包含在报告中。 在命令行和 GUI
的“
Report
”对话框窗口中提供了
3 种报告模式。
5、导出豁免
作为设计约束的一部分
,
豁免将自动保存在检查点内
,
并从检查点复原。豁免保存在明文
XDC
和二进制约束中。
write_xdc
和
write_waivers
命令可用于将豁免导出为独立
XDC
文件。可通过
read_xdc
或
source
命令将 XDC 重新加载到
Vivado
工具中。