EDA365电子工程师网

标题: [讨论求教贴]Swap pins 功能的skill实现 [打印本页]

作者: Coolouba    时间: 2014-7-15 20:36
标题: [讨论求教贴]Swap pins 功能的skill实现
      今天画板子的时候有个想法,想做个swap pins操作的skill,功能就是指定好器件后,选择一个net上的某个焊盘,再选择器件内部的某个pin,实现该焊盘同net电气连接的器件pin和选择的器件pin 进行swap。懒人作用,画sch时不必严格细化pin分配,layout时候swap再反标。
      遍历axl,没有找到和swap相关的内容,找到一个axlShell。于是回Editor尝试了下,直接选中两个pin,然后执行swap pins 命令,可以实现swap,便出了一个思路:
              a.选择器件                 ----  Filter使能symbol选项,选中器件获取dbid
        b.选择器件外Pin1        ----  Filter使能pins选项,获取pin的net
        c.搜索器件内Pin2        ----  遍历symbol的pin list,判断pin的net,找到symbol内与器件外连接的Pin
        d.选择器件内Pin3     ----  Filter使能pin选项,获取pin的dbid
        e.将Pin2和Pin3加入SelectSet
        f.axlShell("swap pins")

        其间为了操作方便,还加入了一些条件限定和高亮设置等。PS:其实步骤c有更简便的关于net操作的axl可用。
        既然发求教贴,结果自然是不成功。问题出在最后一步,执行Shell后,自动清除了SelectSet内容。而先前提到再Editor中选择pins 后直接执行swap是可以的。测试了一下,在Editor中选择pin后,直接用skill获取SelectSetCount,返回0,不清楚是这时候调用了skill清除了set还是Editor中直接操作不能体现在set中?!
        版主行行好回一句吧,要不又得沉了。顶着项目压力玩儿skill真的很憋屈。真希望能搞出来和众大大分享下。
作者: yangwawa    时间: 2014-7-20 17:59
坐沙发看回复
作者: Coolouba    时间: 2014-7-20 20:34
yangwawa 发表于 2014-7-20 17:59
坐沙发看回复

已经写好了一个功能版本,还需要找点时间整理下再贴出来。
作者: yangwawa    时间: 2014-7-21 09:49
Coolouba 发表于 2014-7-20 20:34
已经写好了一个功能版本,还需要找点时间整理下再贴出来。

期待中
作者: kevin890505    时间: 2014-8-13 16:20
1,软件有交换  还是可以满足需求的
2,这种情况么,个人感觉还是严谨些好
作者: szc1983    时间: 2014-8-13 16:42
还是原理图导图比较严谨
作者: Apollo_9    时间: 2015-10-7 09:03
能在PADS 编个脚本吗 ?FPGA的PIN交换




欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2