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

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜帖子
楼主: 着着着火了

[调查] skill实用性调查

[复制链接]
发表于 2025-6-20 10:24:39 | 显示全部楼层
您好,请问把所有库中的cell,调到一个layout view中验证DRC模块拼接起来有没有问题?应该怎么写skill?应用场景:比如画好的逻辑标准单元,全部调在一起跑DRC,再看一下相互直接拼接有没有问题。刚刚接触skill,知道用if循环可以完成,但是没有思路。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-6-20 11:48:22 | 显示全部楼层


   
玖雨 发表于 2025-6-20 10:24
您好,请问把所有库中的cell,调到一个layout view中验证DRC模块拼接起来有没有问题?应该怎么写skill?应用 ...


所有库中的cell,可以通过ddGetObj("libName")~>cells获取,然后通过foreach()遍历。

调用用dbCreateInst(),拼接什么的就通过bBox加上一定的算法,基本就出来了。
回复 支持 反对

使用道具 举报

发表于 2025-6-20 14:27:24 | 显示全部楼层


   
着着着火了 发表于 2025-6-20 11:48
所有库中的cell,可以通过ddGetObj("libName")~>cells获取,然后通过foreach()遍历。

调用用dbCreateIns ...


好的,直接遍历循环调出来就可以,拼接算法就不弄了。谢谢~
回复 支持 反对

使用道具 举报

发表于 2025-6-20 15:59:19 | 显示全部楼层


   
着着着火了 发表于 2025-6-20 11:48
所有库中的cell,可以通过ddGetObj("libName")~>cells获取,然后通过foreach()遍历。

调用用dbCreateIns ...


麻烦帮看一下哪里有问题?


   

        

                
  1. procedure(addCreateStdTop()
  2.         lib="lay_ms2010_standcell"
  3.         let((cellview allcells d_master x)
  4.         cellview=geGetEditCellView()
  5.         allcells=ddGetObj(lib)~>cells~>name
  6.        
  7.         foreach(cell allcells
  8.                 d_master=dbOpenCellViewByType(lib cell "layout")
  9.                 x=caadr(d_cellview~>bBox)-0.2
  10.                         if(cellview~>instances==nil
  11.                         then dbCreateInst(cellview d_master nil list(0 0) "R0")
  12.                         else dbCreateInst(cellview d_master nil list(x 0) "R0")
  13.                 dbSave(cellview)
  14.                         );end if
  15.                 );end for
  16.         );end let
  17. );end por

  18. hiSetBindKey("Layout" "<Key>F12"    "adCreateStdTop()");
            

   

    复制代码


回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-6-20 18:09:51 | 显示全部楼层


   
玖雨 发表于 2025-6-20 15:59
麻烦帮看一下哪里有问题?


x=caadr(d_cellview~>bBox)-0.2



dbClose()搭配dbOpenCellViewByType()使用。保存可以在最后再执行。
回复 支持 反对

使用道具 举报

发表于 2025-6-20 18:27:13 | 显示全部楼层


   
着着着火了 发表于 2025-6-20 18:09
x=caadr(d_cellview~>bBox)-0.2



                               
登录/注册后可看大图

                               
登录/注册后可看大图


麻烦您看一下这是什么原因?
回复 支持 反对

使用道具 举报

发表于 2025-6-20 18:29:46 | 显示全部楼层


   
着着着火了 发表于 2025-6-20 18:09
x=caadr(d_cellview~>bBox)-0.2


function addCreateStdTop redefined
t
>
mgc_calibre_realtime_Btn1Down() mouseSingleSelectPt()
nil
adCreateStdTop()
*Error* eval: unbound variable - if
ERROR

麻烦看一下这是为什么?

回复 支持 反对

使用道具 举报

发表于 2025-6-20 19:05:19 | 显示全部楼层


   
duanpeng 发表于 2023-11-10 10:05
你好 有个问题想请教一下,有一些脚本在group里面使用结果是在group外面呈现的,有什么办法是可以让他在gro ...


可以创建时获取group再加进去
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-6-23 10:28:59 | 显示全部楼层


   
玖雨 发表于 2025-6-20 18:27
麻烦您看一下这是什么原因?


不知道为什么报if没定义的错,但你的dbClose()用错了,我指出的那个错误也没改对
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2025-7-9 04:36 , Processed in 0.152460 second(s), 6 queries , Gzip On, MemCached On.

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