请教与后仿有关的问题(negative timing check)!
阅读ncverilog的手册中与check timing相关的章节,里面提到setup timing/hold timing 可以为负?为什么?
ncverilog对于这种‘setup timing' 和 ’hold timing‘ 为负的情况有两种处理方式:(1)把时钟或数据delay以后再分析;(2)直接分析; 为什么? 选用哪种方式比较好呢?
smic库提供的verilog model文件也有两个:smic.v 和 smic_neg.v; 两个文件的区别在于前者不支持’negative timing check', 后者支持。这两个文件在综合/STA/P&R 时会用到吗?
自己顶一下 希望高手能指点一下
有这方面的高手指点一下,版内奖励!
仿真工具会把负值转为零,对时序会产生影响
负值只是简单的转化为零嘛?
关注!
要变为+的才行....具体的我还在研究中,
负值的原因是电路结构的原因,这个问题在 数字设计透视 里面有描述,不属于错误
smic.v 和 smic_neg.v的区别是如果你的电路要用到下降沿工作就要用smic_neg.v,比较常见的是ddr电路。
‘setup timing' 和 ’hold timing‘ 为负我想是因为在lib库里有关于负延时的定义,所以产生的sdf中也有,pt是可以分析的,ncverilog好久不用,忘了
不是特别赞同9楼的说法,首先,verilog model用在simulation不是Timing Analysis,其次,Setup/Hold为负值,说明这个FF或Latch本身就具有一定的保持数据的能力,其实这个特征更利于timing closure,通过查阅如何计算setup和hold的slack你变可以发现,当然对于本来就为负值的FF你用zero(0)来check timing依然OK的话,那么你的design的timing就又有保障!见仁见智。
不错,顶一下
setup 时间可以为负值,这于时钟起点设置有关吧。
有些单元本身的setup/hold就为负的
还是不太明白,希望高手可以深入解析一下~
还是不太明白,希望高手可以深入解析一下~
因为cell本身的clk内部有延迟,或者data有延迟啊,所以相对为负值
关注!
setup和hold有负值很常见,只要setup+hold不是负的就行啊。
给的verilog标注_neg是说delay可以是负值吧,不相关constraint(输入transition太大可导致delay为负值)
个人愚见
关注!
专业,楼上业内人士啊
18楼专业