后仿真与时序验证的疑惑
一个是功能时序验证,一个是时序分析。完全两回事
先搞清动态时序分析和静态时序分析的区别~
你能保证你的testbech可以测试所有情况吗?
你能保证你的testbech能覆盖所有路径吗?
你能容许你的后仿真跑几天才能出结果吗?
对于大的设计你不可能做到上面这些,所以要引入STA!
恩,就跟形式验证和模拟验证的区别一样吧.
布局布线之后的后仿真是不是一方面进行功能验证,但是在时序部分很难覆盖所有时序路径,所以要单独进行STA。我想问的是STA是不是不考虑功能验证?望大侠指点
不考虑,只保证没有时序违约主要检查setup和hold on
功能验证要放在coding的时候做,一般有专门的功能验证方法和软件
如Specman,VERA。
此后的综合,DFT,CTS,布局布线了只需要进行formal verificaiton。
这是功能等价性验证,保证网表功能和前面代码有着等价的功能
所以后面再不需要进行功能验证了。
谢谢!
时序和功能分开验证,
用形式验证来证明布局布线后的网表和RTL的功能相同。
用时序验证工具确保时序关系正确。后仿真都可以免了?
异步逻辑无法进行STA,那只能仿真了?
后仿真是带时序信息的功能仿真,检验带入延时信息后,输出是否是指定的结果。
时序验证,就是只检验时序hold time和setup time是否满足。
时序研证应该包括了后方针,后仿真是时序验证的一个步骤
时序验证包括动态和静态的方法,后仿真是动态的吧。如果用STA,EC,后仿真就不用了,是这个意思.?
时序验证只验证cell到cell之间的setup,hold time不验证function
两个都作就是问了保险。
其实不是后仿不需要,只是这可能花的时间太多,所以人们想用STA+CVE代替。
但是这种方法还是有漏洞的, 因为STA只检查边沿timing,而CVE只看register和combination的抽象功能。
有种情况时,当一个低速pad被用在高速的地方时(快速的变化无法通过pad传出), STA+CVE都查不出问题,
但是后仿就能查出。
现在的策略是:
STA+CVE,如果有时间,挑些critical path来做后仿。
P.S: 后仿的意思是门级仿真吧?带SDF的那种? 因为各个公司对这些名词的定义不尽相同。
CVE是什么?co-verification?那还是动态仿真?
CVE是形式验证,就是将不同层次的模型进行比较,确保一致性。
比如RTL 和 gatelevel netlist.
这也是用工具实现的。
我觉得后仿真还是得做
虽然可以用形式验证保证PR后与RTL逻辑等同,可以用PT保证没有timing violation。
但是这并不能cover到所有的问题。特别是对于一些特殊的设计。比如自己gating clock如果不做后仿真clock都出现毛刺都不知道。
至于异步电路在设计时就需要从结构上保证数据传递时稳定的。根本不用STA。都是flase path
后仿真是带有版图信息的,和时序仿真还是不一样的
像毛刺,冒险等,只能后仿了吧
时序仿真是综合后,P&R之前的,只包括门延迟,后仿真还包括线延迟吧
不错!
后仿真包括静态时序验证,逻辑验证在综合前的仿真中已经进行过了。后仿真除静态时序验证外还包括动态时序分析。
dddddddddddddddd
可惜没钱啊。
学习下!
