微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC验证交流 > 用NCverilog 仿真,加入sdf后,工具提示将负值变为0了,求大神解答~

用NCverilog 仿真,加入sdf后,工具提示将负值变为0了,求大神解答~

时间:10-02 整理:3721RD 点击:

RT,NCverilog提示:ncelab: *W,SDFNL1 (/Plib/digital/chart35/layout_used_SE/lib/chart35.v,11729|5): Attempt to annotate a negative va
lue to a 1 limit timing check in instance (shiftreg_test.t1.u3.latch238_reg_15_), setting to 0 <./final1.sdf, lin
e 253950>.

求哪位大侠知道怎样让仿真工具不把负值变为0呢?
我打开ncverilog的命令是: ncverilog -f ncscript1
ncscript1的内容如下:
testbench3.v
-v /Plib/digital/chart35/layout_used_SE/lib/chart35.v
-v /home/LHG/zzyu/houfang0606/final1.v
+ncaccess+rwc -s +gui+neg_tchk

final1.v是PR后抽出的网表。
之前发了好几个帖子都沉了。还有十天就要流片了。急急急。

没有人遇到和我相同或相似的问题吗?

继续自己顶,求高手解答!

确实遇到过这样的问题,这样必须保证后仿时使用的lib的verilog file中timingcheck和sdf中的函数一致,比如sdf中如果要生成负的hold,那么必须使用的是$setuphold函数,而不是setup,hold分别独立,lib的•v 档中也是一样的。
ps:如果即便hold从负值变成了0,你的后仿还是可以过的话,那就没有什么问题

搞定了没?
写sdf的时候,sdf版本指定为3.0可以解决这个问题。
但是ncverilog似乎读不进去3.0版本的CONDELSE结构.....
摸索中.....

加+neg_tchk试过没有?这个是避免负反标被仿真器认为是0

遇到过,不过这样不会有问题的,0就好了。

原来如此 学习了!

PT产生SDF文件的时候也会检查setup+hold是否负数

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top