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

EETOP 创芯网论坛 (原名:电子顶级开发网)

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 9990|回复: 10

[求助] ICC抽取sdf文件后用NC-verilog仿真,有很多timing violation,导致数据不能正常存储

[复制链接]
发表于 2013-6-9 22:15:59 | 显示全部楼层 |阅读模式

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

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

x
今天用ICC做完APR之后,用write_sdf 命令导出了sdf文件。因为刚入门不久,所以不太会用STA和形式验证的工具,就用APR后抽出的网表和sdf文件来做仿真。用的是cadence的NC-verilog。但是发现仿真时会报很多警告: 图像3.png

我用ICC导出sdf文件的命令是write_sdf ./final1.sdf
在ICC里面仔细查过了,没有timing violation。求教大神有没有知道可能是什么原因啊?求指导!
 楼主| 发表于 2013-6-9 22:16:51 | 显示全部楼层
还有十几天就要流片了,着急啊。。。。。每天这样熬着精神快奔溃了。
发表于 2013-6-14 15:32:17 | 显示全部楼层
你先从两个方面去排查一下
1.看看testbench种输入的激励,时序上对不对。
2.时序约束file中是不是对应该约束的时钟都做了约束,比如一些false path
这两个都没有问题后,那就要根据timing violation的information一个个去查了
 楼主| 发表于 2013-6-14 16:12:25 | 显示全部楼层
回复 3# wendy.gg.yang


   你好,请问如何确定是否得到约束了呢?小弟刚刚入门,很多还不懂
发表于 2013-6-15 14:19:05 | 显示全部楼层
timing violation问题:你可以先分析下是不是这个时序错误会导致设计fail,如果只是假错,在Nc_verilog选项中,notiming check选项,就可以了
 楼主| 发表于 2013-6-16 13:06:56 | 显示全部楼层
回复 5# shadow201314


   你好,我在ICC上检查时序是没有问题的,但是在仿真时会报错,提示有时序违约。如果不checktiming的话,数据是错误的,看来真的不是假错了。不过在ICC上查对应路径的slack很充足啊,没有违约的。。。。
发表于 2013-6-17 15:56:30 | 显示全部楼层
回复 6# dennisi123


   这样的情况的话可能的问题:   1.查看下你输入的激励,看是否由不合理的激励引起接口上的violation;
   2.如果你是多个apr综合后拼接到一起仿真的话,你可能不止要查检当前的icc时序,要联通前面的时序,一起做接口时序查检;
   3.如果你仿真时候连着真正的模拟电路进行仿真的话,你可能还要把模拟电路的coupling影响考虑在内。
希望对你有帮助@
发表于 2013-6-18 09:38:45 | 显示全部楼层




    个人感觉NCSIM对SDF的支持性不如VCS做的好。建议使用VCS做后仿真!
 楼主| 发表于 2013-6-18 10:17:23 | 显示全部楼层
回复 9# freedos


   你好,感谢您的回答!我现在用NCverilog和VCS仿真都出现了TimingViolation,我昨天在NC仿的时候加了+notimingcheck命令,结果就没有Violation了(因为没有检查时序),不过从结果上来看还是基本可以实现的,和综合后仿真的结果是一样的。请问这样子可以了吗?要做更详尽的测试与仿真已经没有时间了。
发表于 2013-6-18 13:58:23 | 显示全部楼层


回复  freedos


      你好,感谢您的回答!我现在用NCverilog和VCS仿真都出现了TimingViolation,我昨天在NC仿的时候加了+notimingcheck命令,结果就没有Violation了(因为没有检查时序),不过从结果上来看还是基本可以实现的,和综合后仿真的结果是一样的。请问这样子可以了吗?要做更详尽的测试与仿真已经没有时间了。
dennisi123 发表于 2013-6-18 10:17



你使用+NOTIMINGCHECKS这个仿真选项之后,相当于不检查时序,当然没有timing violation。

我刚才看了你的截图,是有setup 的timing violation。不知道你是进行哪个Corner的仿真?

我觉得你可以从以下几个方面来着手:
1,如果马上要流片,时间不足,那么,首先进行Formality形式验证,保证网表和rtl功能一致性;
2,马上进行STA分析,使用OCV来进行STA分析,对SDC约束文件,一定要有丰富经验的人员来保证,同时和设计人员来逐条查看其设置是否合理;
3,如果以上两步均正确,那么,如果你的设计很少采用异步逻辑的话,基本可以保证95%的正确性;
4,同时继续查找后仿真的问题,我看了下是setup 的timing violation,故你先降频来运行仿真。
  比如你原来仿真主时钟是30MHz,那么先25MHz的情况下来运行仿真,看有没有timing violation。
5,另外,严格仔细的查找你的后仿真的仿真参数选项。最好你把你仿真的参数选项,以及你的$sdf_annotate任务全部贴在下面,让我们都看看,检查下。

供你参考。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2025-4-22 20:16 , Processed in 0.029797 second(s), 10 queries , Gzip On, MemCached On.

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