当前位置: 首页> 娱乐> 影视 > 多周期路径的约束与设置原则

多周期路径的约束与设置原则

时间:2025/7/16 2:26:02来源:https://blog.csdn.net/qq_41467882/article/details/140364222 浏览次数:0次

本节将回顾工具检查建立保持时间的原则,接下来介绍设置多周期后的检查原则。多周期命令是设计约束中常用的一个命令,用来修改默认的建立or保持时间的关系。基本语法如下

默认的建立时间与保持时间的检查方式

DC工具计算默认的建立保持时间关系是基于时钟的活动沿(Active edges),数据必须要在活动沿的前或后可以安全使用,以满足建立或保持时间的要求。

  • 在起始点,活动沿是寄存器的打开沿
  • 在结束点,活动沿是寄存器的关闭沿
  • 对边沿触发的寄存器而言,其上升沿即是它的打开沿,又是它的关闭沿

对高电平有效的latch而言,上升沿是其打开沿,下降沿是其关闭沿,如下图所示

一些建立时间和保持时间的检查举例:

建立时间:5

保持时间:0

建立时间:10

保持时间:0

建立时间:1

保持时间:0

建立时间:20

保持时间:10

由于使用了最严格(最大)保持关系,因此该路径的最小延迟要求为10 ns。这是一个保守的检查,可能不适用于某些设计。可以使用以下命令修改此默认保持关系:

set_multicycle_path 1 -hold -end -from ff1/CP -to ff2/D

设置后保持时间:0

单时钟同向位设计

单时钟多相位设计

多时钟设计

多频时钟设计(一定是同步时钟,相位关系确定)的模型关系如下图所示:

工具默认的检查关系如下所示

  • 对建立时钟的检查是从发起时钟的上升沿起,到距离其最近的捕获时钟的上升沿
  • 对保持时间的检查是从发起时钟到捕获时钟的上升沿

情况1——相对于CLKB

在设置FFA1到FFB2的多周期路径后,工具的检查逻辑如下:

工具会将捕获沿向后推一个时钟周期进行建立时间检查,即在原本的10units 的基础上向后推迟TCLKB,对保持时间的检查同样会向后推一个时钟周期,即60units

情况2——相对于CLKA

在设置FFA1到FFB2的多周期路径后,工具的检查逻辑如下:

工具会设置新的建立时间检查约束为20units(原始的10加上一个额外的clkA周期)。保持时间的检查约束为是10个单位时间,因为clkA的下一条边是20,clkB的同一条边是30。

关键字:多周期路径的约束与设置原则

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: