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

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 9229|回复: 22

[原创] skill脚本 求赞赏 检查project是否调用了不合适的library

[复制链接]
发表于 2019-1-30 15:28:10 | 显示全部楼层 |阅读模式

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

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

x


当我要备份library时,如何确保这个library没有调用其他library中的cell呢?谢谢
账户已登录 发表于 2019-1-30 09:43






checkLib.il.txt (981 Bytes, 下载次数: 122 ) ;这个不要钱;
checkLib.il.txt (981 Bytes, 下载次数: 36 ) ;这个赏2块;
checkLib.il.txt (981 Bytes, 下载次数: 71 ) ;这个赏5块。

附件内容都是一样的,求大爷们赏,我想升级-_-。
下面是详细说明:
;check one library.定义CheckLib函数,遍历一个library中的所有cell,调用CheckCell函数检查一个cell中是否使用了非法的library。
procedure(CheckLib(lib)
    foreach(cellID ddGetObj(lib)->cells
        cell=celllD->name|
        CheckCell(lib cell) ;This function is defined below.
    );end foreach
    printf("*_* Library %s is finished. ********\n" lib)
);end procedure CheckLib

;check one cell.
;检查一个cell,let定义局部变量,printf打印一些进度信息,lib_list定义正常设计所用到的library,
dbOpenCellViewByType(lib cell "schematic" "" "r")以只读方式打开每个cell的schematic view
,foreach遍历cell中的每个器件,member判断这个器件的libaray是否属于lib_list,如果不属于,打印提示信息。dbClose关闭cellview。
procedure(CheckCell(lib cell)
  let((cv instID)
    printf("*_* Cell: %s begins! \n" cell)
    lib_list=list("basic" "analogLib")      ;add used library in this list.
        when(cv=dbOpenCellViewByType(lib cell "schematic" "" "r")
            foreach(instID cv~>instances
                unless(member(instID~>libName lib_list)
                printf("X*X-  %s: %s, refers to unexpected library: %s with cell: %s.\n" cell instID~>name instID~>libName instID~>cellName)
                );end unless
            );end foreach instID
            dbClose(cv)
        );end when cv
    printf("*_* Cell: %s is finished! \n" cell)
  );end let
);end procedure CheckCell
发表于 2019-1-30 17:03:59 | 显示全部楼层
支持一个试试
 楼主| 发表于 2019-1-30 17:06:43 | 显示全部楼层
咦?为什么我看到我的3个附件下载价格都是1金币呢?不支持同一附件设置不同价格么?
 楼主| 发表于 2019-1-30 17:07:36 | 显示全部楼层
回复 2# terry8876

谢谢,谢谢,(跳跃,鼓掌,飞吻)~
发表于 2019-1-31 09:07:58 | 显示全部楼层
点赞点赞,感谢楼主帮忙,谢谢分享
发表于 2019-1-31 21:20:27 | 显示全部楼层
thanks
发表于 2019-2-11 15:41:46 | 显示全部楼层
你这个跑的时候会一直打开窗口关闭窗口哇?
发表于 2019-2-21 14:14:37 | 显示全部楼层
感谢分享!
发表于 2019-2-24 21:26:59 | 显示全部楼层
感谢分享,楼主强啊!!!
 楼主| 发表于 2019-2-25 09:02:13 | 显示全部楼层
回复 7# hccaiwh

程序执行过程中,不会弹出窗口的。

dbOpenCellViewByType和dbClose是对数据库的操作,不会打开和关闭窗口。

skill中,有的功能会提供两种函数,一种是图形接口的,会弹出窗口界面;另一种是程序化的,不会弹出窗口。
以上两种函数,加上图形界面上的操作(菜单、按钮、鼠标等),一共有三种实现功能的方式,下图以virtuoso layout suite L为例,展示了同一功能可能的不同实现方式:
a.png
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-12-22 03:00 , Processed in 0.022457 second(s), 7 queries , Gzip On, Redis On.

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