Cadence Skill 论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4850|回复: 2

[已解决] 请问怎么获取到所有diff_pair的vias

[复制链接]
发表于 2015-9-7 15:17:16 | 显示全部楼层 |阅读模式
本帖最后由 leilei4908 于 2015-9-8 17:15 编辑

目的是检查同一位置diffpair的via是不是同一种(根据via的名字)
截图201509071515.png

DiffPairs = axlDBGetDesign()->diffpair
foreach(DiffPair DiffPairs
    XNets = DiffPair->groupmembers
    foreach(XNet XNets
        if(XNet->type then    ;如果是XNets
            Nets = nconc(Nets XNet->groupMembers)
        else                           ;如果是Nets(Nets的type是nil)
            Nets = append1(Nets XNet)
        )
    )
    ......
)
详细内容就不展开了
注意如果DiffPair不含XNets,那么groupMembers指向的是Nets

发表于 2015-9-7 17:54:13 | 显示全部楼层
你要获取到差分的网络,然后获取网络上的VIA,再判断过孔是不是一致。
 楼主| 发表于 2015-9-7 18:21:09 | 显示全部楼层
vivienluo 发表于 2015-9-7 17:54
你要获取到差分的网络,然后获取网络上的VIA,再判断过孔是不是一致。

这样判断的话,数据处理量会很大
关键就是网络上的via怎么获取
首先获取所有DiffPair,然后依次获取XNet,Net,branch,children,最后根据children的objType是否是via获得所有的DiffPair的via
是不是这样的思路?
DiffPairs = axlDBGetDesign()->diffpair
XNets = car(DiffPairs)->groupMembers
Nets = car(XNets)->groupMembers
branches = car(Nets)->branches
children= car(branches)->children
objType = car(children)->objType
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|网站地图|Cadence Skill 论坛 ( 蜀ICP备13024417号 )

GMT+8, 2024-11-27 14:50 , Processed in 0.149620 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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