您可以使用 report_clock_interaction
Tcl 命令查看时钟之间的关系。该报告显示了源时钟和目标时钟构成的矩阵。每个单元中的颜色都表示时钟之间的交互类型,其中包括时钟间的所有现有约束。下图显示了 1 个时钟交互报告样本。
图 1. 时钟交互报告样本
下表解释了此报告中每种颜色的含义。
颜色 | 标签 | 含义 | 备注 |
---|---|---|---|
黑 | No path:无路径 | 这些时钟域之间无交互。 | 主要用于参考,除非您希望这些时钟域发生交互。 |
绿 | Timed:已完成时序约束 | 这些时钟域间有交互,而且路径已完成时序约束。 | 主要用于参考,除非您不希望这些时钟域之间出现任何交互。 |
青 | Partial False Path:部分伪路径 | 交互时钟域的某些路径因用户例外而未完成时序约束。 | 确保确实需要相应的时序例外。 |
红 | Timed (unsafe):已完成时序约束(不安全) | 这些时钟域间有交互,而且路径已完成时序约束。但是,这些时钟似乎为独立(因而异步)时钟。 | 检查这些时钟是否应声明为异步,或者是否应共享公用基准时钟源。 |
橙 | Partial False Path (unsafe):部分伪路径(不安全) | 这些时钟域间有交互。这些时钟似乎为独立(因而异步)时钟。但是,只有部分路径因例外而未完成时序约束。 | 检查时序例外未覆盖某些路径的原因。 |
蓝 | User Ignored Paths:用户忽略的路径 | 在这些时钟域之间存在交互,并且由于时钟组或伪路径时序例外,导致路径未完成时序约束。 | 确认这些时钟应为异步时钟。另外,检查是否已正确写入对应 HDL 代码,以确保在时钟域之间实现正确同步和可靠的数据传输。 |
浅蓝 | 仅最大延迟数据路径 | 这些时钟域之间存在交互,并且通过 set_max_delay -datapath_only 对路径进行时序约束。 |
确认时钟处于异步状态且指定的延迟正确。 |
在创建任何伪路径或时钟组约束之前,矩阵中出现的颜色只有黑、红和绿。由于默认情况下所有时钟都已完成时序约束,因此对异步时钟进行去耦的过程至关重要。异步时钟去耦失败通常会导致设计严重过约束。