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

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜全文
楼主: AveryYoung

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

[复制链接]
 楼主| 发表于 2012-12-20 13:59:20 | 显示全部楼层
本帖最后由 AveryYoung 于 2012-12-20 14:05 编辑

回复 10# sjtusonic


    我没太明白的你的意思,

1.other_div_clk的master是clk。div_clk的master也是clk
“如果,other_div_clk的master是clk,那么它也不应该接在reg1/Q”,关键是这句话没明白,“不应该接在reg1/q”?

对了,我想补充一个问题
FAQ中说:为了防止因为在REG/Q段定义generated clock,打断了dff的时序,所以建议在q的后面加上buf后,在buf的out端定义分频时钟的点。
问题:

2.为何在reg的Q端定义generated_clock会打断时序?能举个例子么?非常感谢。
回复 支持 反对

使用道具 举报

发表于 2012-12-20 14:20:23 | 显示全部楼层
本帖最后由 sjtusonic 于 2012-12-20 14:23 编辑

回复 11# AveryYoung


        我没太明白的你的意思,

1.other_div_clk的master是clk。div_clk的master也是clk
“如果,other_div_clk的master是clk,那么它也不应该接在reg1/Q”,关键是这句话没明白,“不应该接在reg1/q”?

对了,我想补充一个问题
FAQ中说:为了防止因为在REG/Q段定义generated clock,打断了dff的时序,所以建议在q的后面加上buf后,在buf的out端定义分频时钟的点。
问题:

2.为何在reg的Q端定义generated_clock会打断时序?能举个例子么?非常感谢。
---------------------------------

1. 打错了,如果other_div_clk的master是clk,那么就是说div_clk与other_div_clk没有master-slave的关系了。在你的“计算时钟latency”的大前提下,它们之间就没有latency的关系。

2.你定义一下reg/Q,然后如果有问题的话,PT会报出一个warning信息,man一下就有解释的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-20 16:55:33 | 显示全部楼层
回复 12# sjtusonic

1. 打错了,如果other_div_clk的master是clk,那么就是说div_clk与other_div_clk没有master-slave的关系了。在你的“计算时钟latency”的大前提下,它们之间就没有latency的关系。

问:
(1)“计算时钟latency”的大前提是什么意思?
(2)下图中红线部分是我单独给代码加上的buf,其余的部分是前端设计。加buf的目的是因为看了faq中的那句话,我才加的。加上buf之后,原本的generate_clock的定义点pin就从REG1/Q移到了buf/O。
我的问题的意思是,
下图红线部分的div_clk定义点是否合理?我感觉应该要将buf做成和“圆圈”之间串联关系,而不是现在的并联关系。

QQ截图20121220163344.png

2.你定义一下reg/Q,然后如果有问题的话,PT会报出一个warning信息,man一下就有解释的。

问题:在上图中,如果将generate_clock定义在REG1/Q端,工具如果没有报告warning,是不是意味着就可以不用加个buf去定义div_clk了?考虑到如果要认为的插入一个latency去模拟buf导致的时钟插入延时,可能会有些预估值和实际值的偏差,对dc的时序分析似乎不利。

3.如果定义了buf之后再去定义generate clock,那么pr之后的generate_clock还应该定义在buf之后么?latency是否还需要保留才能做post route sta,还是去掉latency,添加propagate clock做post route sta?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-29 14:41:16 | 显示全部楼层
回复 6# sjtusonic


    版主你好,


我目前给一个设计定义的分频时钟点都是count_reg_0/Q和count_reg_4/Q;分别定义为2分频和32分频时钟。

dc的时候报告了warning:non-unate path in clock network for clock "div2_clk"("div32_clk");

1.我确定在dc的网表中有xor门,那么这个警告可以不管么?或者应该如何处理?

2.我在论坛上看过这样的问题,有人提出可以不管这个警告,那么我应该如何处理呢?
回复 支持 反对

使用道具 举报

发表于 2012-12-30 21:29:33 | 显示全部楼层
If you do not want both the inverted and non-inverted clock waveforms to reach the clock pin of a sequential device, use the set_clock_sense command to explicitly specify the sense of the signal reaching the clock pin, either positive or negative unate, with respect to the clock source.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-30 22:44:11 | 显示全部楼层
回复 15# sjtusonic


    版主你好
1.请问,造成non-unate的原因是什么?是代码的原因还是其他的?可否举一个例子来说明?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-30 23:46:55 | 显示全部楼层
本帖最后由 AveryYoung 于 2012-12-30 23:49 编辑

回复 15# sjtusonic


    我刚才查了些资料,明白xor gate如果两个输入都不固定的就会有non_unate的现象。问题:

1.对于我所遇到的这个警告,是否可以忽略?

2.通过什么约束可以消去这个warning,同时使得电路function正确?补充一点。设计的div2_clk和div32_clk都是连接positive edge的ff。电路中的所有reg都是工作在posidge clk下。
回复 支持 反对

使用道具 举报

发表于 2012-12-31 08:46:53 | 显示全部楼层
回复 17# AveryYoung


    non-unate 的path会造成其fanout时钟波形被毁掉。
此问题应与前端设计讨论。
通过set_case_analysis可以解决。

前面那段英文解释中有另一解决方法,你也可以试试看
回复 支持 反对

使用道具 举报

发表于 2019-6-5 14:21:24 | 显示全部楼层
学习 学习
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2025-9-30 07:22 , Processed in 0.018499 second(s), 4 queries , Gzip On, Redis On.

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