在线咨询 切换到宽版
eetop公众号 创芯大讲堂 创芯人才网

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜全文
查看: 10262|回复: 18

[求助] 求助,如何定义dc下分频时钟的问题(FAQ中的疑惑)

[复制链接]
发表于 2012-12-17 15:37:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
在后端FAQ中提到:

定义时钟的技巧中提到的,将分频计数器的Q端后面加上一个buf,然后从buf的输出点定义generated_clock,我有些疑问。

1.用多大的buf比较好?
2.如果主时钟clk和分频时钟之间有时序交互,需要分析时序路径,那么-from clk -to div2_clk的路径已经变成了从clk到buf输出端的路径,而不是从clk到分频输出端Q的路径,这地时序是否有影响?
3.如果主时钟的uncertainty为0.5ns已知,那么其分频时钟的uncertainty应该取多少?比如2分频和32分频。
 楼主| 发表于 2012-12-17 22:02:14 | 显示全部楼层
求助,求助。
回复 支持 反对

使用道具 举报

发表于 2012-12-18 08:35:48 | 显示全部楼层
1.用多大的buf比较好?
用个跟前面reg/Q端驱动能力匹配的就好,后面的CTS会管。

2.如果主时钟clk和分频时钟之间有时序交互,需要分析时序路径,那么-from clk -to div2_clk的路径已经变成了从clk到buf输出端的路径,而不是从clk到分频输出端Q的路径,这地时序是否有影响?
设置propagated之后就不会有影响了。

3.如果主时钟的uncertainty为0.5ns已知,那么其分频时钟的uncertainty应该取多少?比如2分频和32分频。
从电路行为上来估计,应该是2*0.5ns吧。再适当加些裕量吧。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-19 13:22:10 | 显示全部楼层
回复 3# sjtusonic


    谢谢你的解答,但仍然有些疑惑

1.真实的时钟是从count_reg的Q端输出的,但是如果加了buf后从buf的输出O作为定义的generate_clock。那么在没有propagate_clock属性时(也就是pre route的dc下timing分析),主时钟clk和分频clk_div之间的时序检查报告的检查结果时间时间应该是不一样的吧?

2.即使定义了propagate clock在post route的情况下做分析,定义的是分频是时钟仍然是是及格buf的O端,工具如何在检查从clk 到clk2的时序,data_arrival_time是从clk域下的情况来分析,data_require_time是中div_clk来分析,但是div_clk因为多加了一个buf的延时,分析出来的data_require_time似乎不够准确吧?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-19 13:34:25 | 显示全部楼层
回复 3# sjtusonic


    如下图的一个时序分析情况,在没有考虑propagate_clock时,也就是preroute时的dc下timing分析:
QQ截图20121219132708.png
如果div_clk定义在一个buf之后,
    假设REG2的CK端收到div_clk的时间为T(也就是REG2下对setup的data_require_time检查),而如果将div_clk定义到buf_clk之前时这个data_require_time的时间就会变成T+Tbuf。显然两者的timing分析结果不一样。

如果定义了propagate_clock,也就是post route之后,工具会如何考虑到加上buf后的data_require_time我不太理解。
generate_clock的pin还是定义在buf之后,工具分析这个timing应该仍然是T这个时间,是如何和真是情况一致的?
回复 支持 反对

使用道具 举报

发表于 2012-12-19 13:39:43 | 显示全部楼层
回复 4# AveryYoung


    算时序是要算各个时钟的latency的,buf的延迟含在latency中。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-19 14:16:38 | 显示全部楼层
本帖最后由 AveryYoung 于 2012-12-19 14:46 编辑

回复 6# sjtusonic


    你好的,你的意思是说,在pre分析的时候,要把div_clk定义一个latency,这个latency的值大小要和buf上的延时一致或者更大么?
然后在propagate的情况将latency都去掉?

分频时钟的latency不是会集成主时钟的latency属性么?可以给一个约束值定义分频的latency么?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-19 14:43:06 | 显示全部楼层
回复 6# sjtusonic


    2.png
对于上图的情况,如果在插了buf后,将div_clk定义在buf的输出端;而设计中有别的other_div_clk。
那么根据这样的情况,从div_clk到REG2的D端的时序就无法计算了吧?因为没有这样的路径了,
但是如果将div_clk定义在REG1的Q端,这条路径就存在了。
回复 支持 反对

使用道具 举报

发表于 2012-12-19 15:52:07 | 显示全部楼层
回复 7# AveryYoung


    可以为分频时钟指定自己的latency
回复 支持 反对

使用道具 举报

发表于 2012-12-19 15:55:07 | 显示全部楼层
回复 8# AveryYoung


"
    对于上图的情况,如果在插了buf后,将div_clk定义在buf的输出端;而设计中有别的other_div_clk。
那么根据这样的情况,从div_clk到REG2的D端的时序就无法计算了吧?因为没有这样的路径了,
但是如果将div_clk定义在REG1的Q端,这条路径就存在了。"

从你的图中来看,other_div_clk的master是div_clk,那么它应该接在buf的fanout后面。

如果,other_div_clk的master是clk,那么它也不应该接在reg1/Q
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

手机版| 小黑屋| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-9-30 07:34 , Processed in 0.024045 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表