vivado 多周期路径与时钟相移

多周期路径与时钟相移

有时,必须在具有相同时钟域的两个时钟域之间定义定时约束时钟周期,但两个时钟之间的相移。在这些情况下,理解正时引擎使用的默认设置和保持关系。如果没有仔细调整两个时钟之间的相移可能导致两个时钟间的逻辑约束过大域。

例如,假设以下内容:

•两个时钟CLK1和CLK2具有相同的波形。

•CLK2偏移+0.3 ns。

正时引擎通过查看两者的所有边缘来计算设置关系波形,并选择启动和捕获时钟上的两个边缘,从而产生更严格的约束。由于时钟相移,定时引擎使用的设置和保持关系可能不是预期的那样。如下图所示。

在该示例中,由于相移而导致的设置约束是0.3ns。这使得它几乎无法实现定时关闭。另一方面,保持检查为-3.7 ns,这也是宽大的。

设置和固定边缘必须进行调整,以符合您的意图。这是通过添加设置乘数为二(2)的多循环约束:

set_multicycle_path 2 -setup -from [get_clocks CLK1] -to [get_clocks CLK2]

这导致将设置要求的捕获边缘向前移动一个周期。这个保持的默认边缘源自设置要求。不需要指定。

在负相移的情况下,如下图所示,两个时钟之间域,用于设置和保持检查的启动和捕获边缘与那些类似来自上一节(单时钟域,无相移)。

对于负相移,通常不需要多周期约束来平衡相移的影响。如果相移太大以至于时钟启动,则会发生异常或者必须调整捕获边缘以保持真实的设置和保持要求。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cckkppll

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值