0
点赞
收藏
分享

微信扫一扫

Cadence OrCAD: FPGA原理图批量交换pin pinswap(excel法)

Cadence OrCAD: FPGA交换pin pinswap(excel法)

背景

最近FPGA项目layout工程师发过来一个对应关系表格,改原理图的同时顺便学习了用excel来做pin swap的方法。这个方法只适用于同一类型的网络(例如,全是net alias,全是off page connector)。
软件:OrCAD SPB 16.6

比如今天给过来的excel表格没有原网络名,只有目标网络名
原始原理图(pin的编号没什么规律,在FPGA原理图中比较常见):

layout工程师提供的excel(却没有给原网络名),有些网络不用改名

获得新旧网络名称的对照表


选中元件和网络,右键-edit properties-Pins,复制一份Net NameNumber,就是引脚编号-旧网络名对应关系。
这边先使用VLOOKUP(A2,$D$2:$E$7,2,0),找到与旧网络名对应的新网络名。

  1. 参数1:查找的值(在查找范围的第1列中查找),这里设置为引脚编号
  2. 参数2:查找范围。使用$固定查找的行号和列号,这样往下拖动的时候查找范围不变。
  3. 参数3:需要获取的数据,这边设置为第2列,更新的网络名。
  4. 参数4:默认选0,即完全匹配。
    如下所示。可以看到,对于不需要交换的引脚,显示为#N/A,不是太方便,做一些小改进。

加入判断NA的函数IFNAIFNA(VLOOKUP(A2,$D$2:$E$7,2,0),B2),如果NA,就让新网络名=旧网络名,如下:

至此,获得了一个新旧网络名的对照表。(不知道layout工程师为啥不直接给我这个。。)

批量替换

还是刚才的右键-edit properties,这次打开aliases选项卡,单击Name,全选整列,复制出旧网络名。

同样还是VLOOKUP,如下:(当然,突然发现之前随便做的例子都不需要这一步,已经是按顺序排好了)

再选中new一列,复制,回到OrCAD中粘贴就可以了。(注意new这一行也需要复制
批量修改完成,虽然还是比较麻烦,但是至少比手动修改上百个网络轻松一些,并且不会出错。

补充信息

  1. 有时候会用到(有些页面用不了ctrl+C/V,比如批量编辑off page connector时):ctrl+insert复制,shift+insert粘贴。
  2. excel中选中整行,shift+鼠标(放在分栏处出现拖动符号)拖动,可以交换两行位置。
  3. 同样方法,可以检查修改后的pin-net name对应关系,和要求的pin swap是否正确对应。
举报

相关推荐

0 条评论