欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 养生 > 静态时序分析:时钟标记(作为数据使用的时钟)及其分析方式

静态时序分析:时钟标记(作为数据使用的时钟)及其分析方式

2025/4/3 10:50:40 来源:https://blog.csdn.net/weixin_45791458/article/details/146268285  浏览:    关键词:静态时序分析:时钟标记(作为数据使用的时钟)及其分析方式

相关阅读

静态时序分析https://blog.csdn.net/weixin_45791458/category_12567571.html?spm=1001.2014.3001.5482


引言

        一般情况下,设计中的时钟路径和数据路径是严格区分开的:时钟路径即从时钟源对象(时钟定义点)到触发器的时钟引脚,数据路径即从触发器的时钟引脚到另一个触发器的数据引脚,如图1所示。根据这个定义,发射路径由发射触发器的时钟路径和数据路径组成,而捕获路径由捕获触发器的时钟路径组成。

图1 时钟路径和数据路径的定义

        虽然不常见,但有些时候时钟信号也会连接到触发器的数据引脚,如图2所示,本文就将讨论这种情况。

图2 作为数据使用的时钟

时钟标记

        从时钟源对象开始,工具会遍历整个时钟网络并进行标记:如果某个单元引脚的扇出中存在触发器时钟引脚,则该单元引脚is_clock_used_as_clock属性被设置为true;如果某个单元引脚的扇出中存在触发器数据引脚,则该单元引脚is_clock_used_as_data属性被设置为true。

        以图2为例,可以使用下面的命令报告设计中所有is_clock_used_as_clock属性或is_clock_used_as_data属性为true的引脚。

get_pins -filter "is_clock_used_as_clock==true"
{u1/A u1/Y u2/A u2/Y o_reg/CK} 
get_pins -filter "is_clock_used_as_data==true"
{u1/A u1/Y u3/A u3/Y o_reg/D}

作为数据使用的时钟的时序分析

        以图2为例,此时的输入端口clk到触发器的时序分析时就像普通输入端口那样,会计算真实发射路径上的延迟和转换时间(即使时钟为理想时钟也是如此,这是因为此时的时钟路径与数据路径重合了),并且此时无需指定输入延迟,数据自身就是时钟,如图3所示。

图3 作为数据使用的理想时钟

        但可能出现问题,对于理想时钟来说,如果使用真实发射路径上的延迟和转换时间,时钟网络的高扇出而可能造成很大的延迟和转换时间,这在时钟树综合前是过于悲观的。如果将enable_clock_to_data_analysis变量(默认值为false)设置为true,则对于发射路径则会使用set_clock_latency命令和set_clock_transition命令设置的延迟和转换时间。

        对于捕获路径,则会根据时钟的种类(理想or传播)使用相应的延迟和转换时间的计算策略,就如一般情况下那样,图4展示了时钟为传播时钟情况下的时序分析报告,注意使用-full_clock选项和-transition_time以报告完整的时序路径和转换时间。

图4 作为数据使用的传播时钟

版权声明:

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

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

热搜词