ET创芯网论坛(EETOP)

您现在是游客状态

请您   登录   或  注册  享受更多权益

电子书:《模拟对话》,共50卷,数百篇精品文章,下载即奖励400信元!
查看: 697|回复: 4

[求助] 请教一个用脚本修setup和hold的问题

[复制链接]
发表于 2018-8-9 08:07:41 | 显示全部楼层 |阅读模式
本人新手,请教各位老师。所谓后端PR用脚本修SEtUP和HOLD是什么意思呀。 是不是把手动修的过程写成脚本。但是每个错误要插的buffer和delay位置和大小都不同同,脚本要怎么处理呀。 本人比较小白,谢谢各位
发表于 2018-8-9 11:02:15 | 显示全部楼层
buffer的位置根据插入目标pin的位置决定,简单来说直接放在目标pin旁边就好了,让工具自己去legalize。pin的位置可以由attribute/property取得,delay的话根据以往经验或者现design中的数值估算就好,注意不同corner间delay的变化就行。

可以关注我的知乎专栏:https://zhuanlan.zhihu.com/c_149714285
定期将有后端基础知识讲解。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-8-9 11:19:52 | 显示全部楼层
回复 2# 阎浮提


    老师关注您专栏很久啦。 亲自解答很激动啊。。。

    因为我比较小白,您上面说的能举个具体例子吗,我还不是很理解。十分感谢
回复 支持 反对

使用道具 举报

发表于 2018-8-9 17:33:12 | 显示全部楼层
回复 3# jiajuntree
以ICC2为例,假设想要修一条hold,我们需要知道的信息至少2个:pin_name和slack。那么粗糙地实现起来就这样:
1. 事先定义以下两个变量:
    set buf_ref "xxx"     ;#要插入的buf/delay cell的ref_name
    set buf_delay "yyy" ;#要插入的buf/delay cell的估算delay值
2. 通过pin_name得到pin位置(左下坐标)
    set pin_location [lindex [get_attribute [get_pins $pin_name] bbox] 0]
3. 计算需要插入的buffer数量
    set buf_cnt [expr round($slack / $buf_delay)] ;四舍五入,也可直接舍弃小数部分或不足1的部分+1,看自己想怎么处理了
4. 插入cell

    set inserted_cells [add_buffer  -lib_cell $buf_ref  -no_of_cells $buf_cnt  $pin_name -new_net_names $preferred_net_prefix -new_cell_names $preferred_cell_prefix]
5. 放置插入的cell


    set_attribute -objects $inserted_cells
-name origin -value $pin_location

set_attribute -objects $inserted_cells
-name physical_status -value legalize_only
6. legalize
    place_eco_cells -legalize_only


对于有很多条hold,foreach就好了。这种方法需要有hold enpoint + slack的信息,至于这个怎么得到,办法比较多,楼主思考思考吧。
除此之外,上面的方法没有解决重复path的问题,也没有在修hold之前check setup的margin,更没有考虑margin不够的情况。不过整体思路就是这样,具体细节楼主努力完善吧。
# BTW,以上代码没有经过实际验证,因此可能有语法错误
回复 支持 反对

使用道具 举报

发表于 2018-8-10 09:15:35 | 显示全部楼层
回复 4# 阎浮提

非常不错,我来试试
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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

小黑屋|手机版|Archiver|ET创芯网 ( 京ICP备:10050787号 京公网安备:110105001212 )

GMT+8, 2019-3-22 20:32 , Processed in 0.055155 second(s), 10 queries , Redis On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表