什么是Min Period检查?

电子说

1.3w人已加入

描述

 

 

主要内容:

什么是Min Period检查?

ICC/ICC2/PT/Innovus检查Min Period的命令

怎么修复Memory上的Min Period问题?

1、什么是Min Period检查?

在.lib中,触发器、latch、Memory这些时序期间的clock input pin上会定义min_period属性来规定它上面时钟的最小周期(也就是最高频率),例如:

pin(CLK) {             direction : input;             capacitance : 0.046 ;             clock         : true;                   min_pulse_width_low   : 0.126;                   min_pulse_width_high  : 0.056;                   min_period            : 1.258; }

  在这个例子中,时钟到达CLK pin的最小周期是1.258。 在.lib中,最小周期也可以通过minimum_period属性来定义: 

minimum_period() { constraint : 9.5; /* min_period */ when : "SE"; sdf_cond : "SE == 1’B1"; }

  在Innovus/Tempus中可以用命令report_constraint -check_type clock_period来检查min period问题,如果想得到详细的报告,可以加上-verbose选项:

tempus > report_constraint -check_type clock_period -verbose Check type : clock_period --------------------------- Path 1: MET ClockPeriod Check with Pin ROM_512x16_0_INST/CLK Ending Clock Edge:    ROM_512x16_0_INST/CLK (v) checked with trailing edge of 'm_clk' Beginning Clock Edge: ROM_512x16_0_INST/CLK (v) triggered by trailing edge of 'm_clk' Path Groups: {m_clk} Other End Arrival Time         20.911 - ClockPeriod                   1.258 + Phase Shift                  40.000 = Required Time                59.653 - Arrival Time                 20.926 = Slack Time                   38.727      Clock Fall Edge                 20.000      + Clock Network Latency (Prop)  0.926      = Beginpoint Arrival Time       20.926       --------------------------------------------------------       Pin                    Cell         Delay  Arrival  Edge                                                    Time              --------------------------------------------------------       ROM_512x16_0_INST/CLK  rom_512x16A  -      20.926   v         --------------------------------------------------------

Min Period Slack的计算公式如下: Skew = launch edge arrival – capture edge arrival Slack = Clock_period – min_period constraint – Skew + CPPR Slack =  40 - 1.258 -  (0.926 - 0.911) + 0 Slack = 38.727 这个报告也可以通过下面的命令指定Clock pin来得到: report_timing -check_type clock_period -to xx/CLK  

Innovus/Tempus中Pin/port上的clock-period检查

report_constraint命令对于指定Pin/Port的检查只支持DRV的检查,如果report_constraint后边制定了特定的Pin/Port而没有加drv_violation_type 选项,那么工具会报告下面的Warning: **WARN: (TCLCMD-1470):     Pins/ports are only supported with '-drv_violation_type' option 如果想报告指定Pin/Port上的Clock Period,可以用下面的命令而非report_constraint: report_timing -check_type clock_period  

2、ICC/ICC2/PT/Innovus检查Min Period的命令

星球链接:https://t.zsxq.com/0eRYPFqHF  

3、怎么修复Memory上的Min Period问题?

星球链接: https://t.zsxq.com/0dyamXhRS   参考文献: Cadence: What is min (minimum) clock period check and how is this check performed?  
        责任编辑:彭菁

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分