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

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜全文
查看: 25300|回复: 35

[求助] 急!!STA和形式验证都过了,后仿却报出了关于recrem的时序违例

[复制链接]
发表于 2020-11-14 15:36:45 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 ZHZIC 于 2020-11-14 15:37 编辑

STA和形式验证都过了之后,我用VCS进行后仿,报了很多关于recrem的时序违例,具体的语句是下面这样子:
"/home/IC/Desktop/work/tamc18_std_cell/tcb018gbwp7t_290a/TSMCHOME/digital/Front_End/verilog/tcb018gbwp7t_270a/tcb018gbwp7t.v", 5136: Timing violation in tb_top_spi.u_top_spi.master.master_ctrl.cstate_reg_0_
    $recrem( posedge CDN:4000799, posedge CP:4000441, limits: (-71,706) );
输出波形显示如下::
image.png
不知道这种时序违例应该怎么解决啊,需要去哪里找出问题?明明STA已经验证了的啊,为什么后仿还会出问题。。。
还有这个recrem是什么意思?
对了,我用PT写sdf文件的选项是这样的:
write_sdf -context verilog -significant 4 $OUT_PATH/${WORKING_DESIGN}_setuphold_recrem.sdf -version 3.0 -include {SETUPHOLD RECREM}
PT在写sdf文件的时候,出现了一个warning:
Warning: The sum of the setup and hold values in the cell 'slave/slave_shift_reg_8_' for the arc between pins 'CPN' and 'D' is negative, which is not allowed. To make it positive, the minimum hold value has been adjusted from 0.089503 to 0.100946.  (SDF-036)
不知道有没有影响。
跑VCS时的选项如下:
vcs -R -full64 -fsdb -f flist.f -l top_spi.log -timescale=1ns/1ps +neg_tchk -negdelay +define+NTC+RECREM
因为马上要流片了,有没有前辈帮忙看一下啊,非常感谢
image.png


发表于 2024-8-2 17:47:29 | 显示全部楼层
本帖最后由 IC菜鸟无敌 于 2024-8-2 17:48 编辑


   
phoenixson 发表于 2020-11-16 08:14
除此之外还要看timing_disable_removal_recovery_check 是否已经打开,这里看应该是没有打开 ...


timing_disable_removal_recovery_check默认不打开吧,本来就是要不打开
回复 支持 反对

使用道具 举报

发表于 2024-6-20 21:12:27 | 显示全部楼层


   
jake 发表于 2020-11-15 22:07
经过两个flop, 最后出来的作为“全局”复位。 这个“全局”只限同一个时钟域 -- 这两个flop用哪个时钟, ...


最近学习到的设计,确实是这样的
回复 支持 反对

使用道具 举报

发表于 2024-6-13 14:53:53 | 显示全部楼层
本帖最后由 easonjake333 于 2024-6-13 16:26 编辑


   
thjan65 发表于 2020-11-14 20:39
$recrem( posedge CDN:4000799, posedge CP:4000441, limits: (-71,706) );表示min: -71ps, max:706ps, 但 ...


这个是不是违反了recovery,应该是在复位信号到来的前706ps到前71ps之间clk不能跳变,但是这里在前358ps时钟上升沿就已经到了,所以出现了违例。(最近刚刚了解这部分知识,如有不对,还请大佬指正)
回复 支持 反对

使用道具 举报

发表于 2022-4-12 14:42:25 | 显示全部楼层
学习学习
回复 支持 反对

使用道具 举报

发表于 2022-2-12 14:08:35 | 显示全部楼层
本帖最后由 马工 于 2022-2-12 14:17 编辑

1111111111111111111111111111111111111
回复 支持 反对

使用道具 举报

发表于 2021-2-25 08:42:59 | 显示全部楼层


   
jake 发表于 2021-2-24 22:43
是的,经典做法


受教 谢谢
回复 支持 反对

使用道具 举报

发表于 2021-2-24 22:43:14 | 显示全部楼层


   
fangwang85 发表于 2021-2-23 22:34
请教下,如果用了异步复位 同步释放的电路,这个RESET 是不是可以false path的。 set_false_path -from [ ...


是的,经典做法

回复 支持 反对

使用道具 举报

发表于 2021-2-24 12:34:53 | 显示全部楼层


   
jake 发表于 2020-11-16 23:48
友情提示,这个做法其实有个坑。
set_input_delay 9 -clock CLK RESET
大多实际运用场景是无法保证这个  ...


请教下,如果用了异步复位 同步释放的电路,这个RESET 是不是可以false path的。 set_false_path -from [get_ports RESET_IN]后面开启enable_recovery_removal_arcs 即可
回复 支持 反对

使用道具 举报

发表于 2021-2-24 12:22:40 | 显示全部楼层


   
jake 发表于 2020-11-15 04:01
贴一个简单复位同步电路,供参考。 为了简略,这个图没有画出时钟的 DFT MUX.  

如果时钟在复位撤销时还在 ...


受教 谢谢
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2025-9-22 02:42 , Processed in 0.024433 second(s), 5 queries , Gzip On, Redis On.

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