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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 445|回复: 2

[求助] 请问如何通过skill脚本实现下述功能?

[复制链接]
发表于 5 天前 | 显示全部楼层 |阅读模式
500资产
如图,想用skill脚本找以下结构:M1为PCH5类型的管子,其源端连接VDD1,其漏端连接另一种类型PCH18管子的Gate端,请问如何通过脚本能筛选出该M1管?


074d765529b0db0a32ecdb9c3c2150e.jpg
发表于 5 天前 | 显示全部楼层
;; 定义筛选函数
procedure(selectTransistors()
    let((cvId cellName sourceNet drainNet targetCellName)
        ;; 获取当前打开的电路图
        cvId = geGetEditCellView()

        ;; 定义目标Cell name和Net
        cellName = "PCH5"
        targetCellName = "PCH18"
        sourceNet = "VDD1"

        ;; 遍历电路图中的所有实例
        foreach(inst cvId~>instances
            ;; 检查实例的Cell name是否为PCH5
            when(inst~>cellName == cellName
                ;; 获取源端和漏端的Net
                sourceNetObj = inst~>terminals~>net
                drainNetObj = inst~>terminals~>net

                ;; 检查源端是否连接到VDD1
                when(sourceNetObj~>name == sourceNet
                    ;; 检查漏端是否连接到PCH18的管子
                    foreach(connectedInst drainNetObj~>instances
                        when(connectedInst~>cellName == targetCellName
                            ;; 输出符合条件的管子
                            printf("Found PCH5 instance: %L\n", inst)
                            printf("Connected to PCH18 instance: %L\n", connectedInst)
                        ) ;; when
                    ) ;; foreach
                ) ;; when
            ) ;; when
        ) ;; foreach
    ) ;; let
) ;; procedure



deepseek写的,你看看能不能用
 楼主| 发表于 3 天前 | 显示全部楼层


522526tl 发表于 2025-2-15 22:58
;; 定义筛选函数
procedure(selectTransistors()
    let((cvId cellName sourceNet drainNet targetCellNa ...


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

本版积分规则

关闭

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

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

GMT+8, 2025-2-20 06:17 , Processed in 0.014929 second(s), 6 queries , Gzip On, Redis On.

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