电力电子技术
直播中

武文嘉

7年用户 180经验值
私信 关注

Mentor Graphics应用的PCB设计复用介绍

  引言
  随PCB板趋向小型化、多层化与复杂化。特别是高速印制板,需要经过很长时间的反复调试才可以定型。如果已有一个定型的设计(A),现需要一个部分电路与其相同或相似的设计(B),传统设计流程如下:



  图1:传统设计流程图
  由此流程图可以看出,设计B采用设计A的思想,人工重复了设计A的设计过程。
  实现方法
  Board STAtiON作为一个大型的EDA软件,不仅应用范围广、功能强,而且所有设计文件都以ASCII码格式保存,允许用户修改设计数据,PCB设计的复用提供了基础。
  打开一个PCB设计,其主要文件结构如下:
  Schematic路径下为原理图数据文件;Design_geom路径下为物理器件(Geometry)数据文件;Pcb路径下为印制板数据文件,其中comps为元器件(Component)数据文件,包括器件标号(Reference)、逻辑符号(Symbol)、对应物理器件(Geometry)、在印制板上的位置(Board_location)以及特性(Properties)等信息;Nets为网表数据文件;traces为印制板连线数据文件,包括网表名称(NET)、连线宽度、所在物理层,起始及终止点坐标等信息。一个设计下的文件远不至于此,但其它文件均可由Board Station自动生成或者派生。



  图2:Board Station软件主要文件结构
  Board Station包括Design Architect、Librarian、Package、Layout、Fablink五个模块。假设设计A是现在正在进行的设计,设计B为需要复用的设计。首先,在Design Architect模块打开设计A ,将设计B被复用部分的原理图拷贝到设计A;然后,将设计B被复用部分的物理器件(Geometry),从设计B的Design_geom路径下拷贝到设计A的Design_geom路径下;第三步,将设计B被复用部分的元器件(Component)数 据从设计B 的comps文件拷贝到设计A的comps文件中;第四步,参考设计B Nets文件中被复用部分的网表(NET)数据,修改设计A的Nets文件中的相应部分;最后,将设计B的traces文件拷贝到设计A的pcb路径下,实现PCB设计复用。
  应用举例
  以下以设计A为正在进行的设计,设计B为被复用的设计,举例说明PCB设计复用的实现方法。



  图3:设计B的印制板图及原理图



  图4:设计A的原理图
  按照以下步骤执行:
  1. 在Design Architect模块照图4画设计A的原理图,存储。
  2. 进入设计A的Librarian模块,建立物理器件(Geometry)以及映射文件(mapping file)等。
  若图4中的器件U1、U2、R1、R2、R3、R4中任何一个对应的物理器件(Geometry)与图3中相应器件的物理器件(Geometry)不同,将设计B的Design_geom路径下相应的物理器件(Geometry)拷贝到设计A的Design_geom路径下。即器件U1、U2、R1、R2、R3、R4在设计A和设计B中的物理器件(Geometry)必须相同。
  为了保证图4中的器件U1、U2、R1、R2、R3、R4所对应的物理器件(Geometry)在设计A和设计B的印制板上位置相同,将设计B的印制板Geometry(Board)由设计B的Design_geom路径下拷贝到设计A的Design_geom路径下,然后在Librarian模块对其进行修改。完成所有功能后,存储并退出。
  3. 进入设计A的Package模块,建立逻辑符号(Symbol)与物理器件(Geometry)的对应关系,完成所有功能后,存储并退出。
  4. 修改设计A的comps文件。
  在Board Station软件的任何一个模块中,采用下拉菜单MGC-->Notepad-->Open-->Edit...
  打开设计B的comps文件,将与器件U1、U2、R1、R2、R3、R4有关行选中并复制(Copy)。
  打开设计A的comps文件,将与器件U1、U2、R1、R2、R3、R4有关行选中并删除(Delete),然后粘贴(Paste)。
  即器件U1、U2、R1、R2、R3、R4在设计A和设计B的comps文件中的内容必须相同。 5. 修改设计A的Nets文件。
  # BOARD STATION NETS FILE FORMAT 1.0
  # Application : PACKAGE v8.*.1 Thu May 20 11:2*6 PDT 1999
  # date : Saturday October 14, 2000; 04:30:40 #
  NET '/N$2' U3-4 U7-2
  NET '/N$3' U3-5 U6-2
  NET '/N$4' U3-1 U8-1 U4-2
  NET '/N$7' U2-14 U3-7
  NET '/N$8' U2-13 U3-6
  NET '/N$9' U2-18 U3-9
  NET '/N$10' U2-17 U3-8
  NET '/N$29' R1-2 U2-3
  NET '/N$30' R2-2 U2-4
  NET '/N$40' R3-2 U2-7
  NET '/N$41' U2-8 R4-2
  NET '/N$45' U1-14 U3-11
  NET '/N$46' U1-13 U3-13
  NET '/N$47' R1-1 U1-18
  NET '/N$48' R2-1 U1-17
  NET '/N$49' R3-1 U1-16
  NET '/N$50' U1-15 R4-1
  NET 'GROUND' U5-2 U3-10 U7-1 U8-2 U6-1 U1-10 U2-10
  NET 'VCC' U5-1 U3-20 U4-1 U1-20 U2-20 (表1:设计A的Nets文件)
  # BOARD STATION NETS FILE FORMAT 1.0
  # Application : PACKAGE v8.*.1 Thu May 20 11:2*6 PDT 1999
  # date : Monday November 20, 2000; 12:52:50 #
  NET '/N$9' R1-1 U1-18
  NET '/N$23' R3-2 U2-7
  NET '/N$25' R5-2 U2-13
  NET '/N$27' R7-2 U2-17
  NET '/N$230' R2-2 U2-4
  NET '/N$231' R4-2 U2-8
  NET '/N$232' R6-2 U2-14
  NET '/N$233' R8-2 U2-18
  NET '/N$234' R1-2 U2-3
  NET '/N$235' R2-1 U1-17
  NET '/N$236' R3-1 U1-16
  NET '/N$237' R4-1 U1-15
  NET '/N$238' R5-1 U1-14
  NET '/N$239' R6-1 U1-13
  NET '/N$240' R7-1 U1-12
  NET '/N$241' R8-1 U1-11
  NET 'GROUND' U1-10 U2-10
  NET 'VCC' U1-20 U2-20 (表2:设计B的Nets文件)
  在Board Station软件的任何一个模块中,采用下拉菜单MGC-->Notepad-->Open-->Edit...
  参考表2修改表1,即将设计A的Nets文件与设计B的Nets文件中连结相同管脚的NET名称改为相同,例如:在设计B的Nets文件中第一行为NET '/N$9' R1-1 U1-18,则将设计A的Nets文件中的相应行NET '/N$47' R1-1 U1-18,改为NET '/N$9' R1-1 U1-18。
  若设计A的Nets文件中修改后的NET名称与原有的NET名称相同,修改原有的NET名称。
  # BOARD STATION NETS FILE FORMAT 1.0
  # Application : PACKAGE v8.*.1 Thu May 20 11:2*6 PDT 1999
  # date : Saturday October 14, 2000; 04:30:40
  #
  NET '/N$2' U3-4 U7-2
  NET '/N$3' U3-5 U6-2
  NET '/N$4' U3-1 U8-1 U4-2
  NET '/N$7' U2-14 U3-7
  NET '/N$8' U2-13 U3-6
  NET '/N$99' U2-18 U3-9
  NET '/N$10' U2-17 U3-8
  NET '/N$234' R1-2 U2-3
  NET '/N$230' R2-2 U2-4
  NET '/N$23' R3-2 U2-7
  NET '/N$231' U2-8 R4-2
  NET '/N$45' U1-14 U3-11
  NET '/N$46' U1-13 U3-13
  NET '/N$9' R1-1 U1-18
  NET '/N$235' R2-1 U1-17
  NET '/N$236' R3-1 U1-16
  NET '/N$237' U1-15 R4-1
  NET 'GROUND' U5-2 U3-10 U7-1 U8-2 U6-1 U1-10 U2-10
  NET 'VCC' U5-1 U3-20 U4-1 U1-20 U2-20 (表3:修改后的设计A的Nets文件)
  6. 拷贝设计B的traces文件到设计A
  打开下拉菜单MGC-->Design Management-->Copy Object...
  在Options...选项中选择:
  * Update All References
  * Overwrite All File Conflicts
  * Create Destination
  这样,就将设计B中印制板上的所有与设计A相关的连线拷贝到了设计A的印制板上。
  7. 进入设计A的Layout模块,不需要进行任何操作,即出现图5所示界面。




  图5:设计B被复用部分印制板图
  至此,完成设计B到设计A的PCB 设计复用。
  结束语
  Board Station软件作为一个大型EDA软件,不仅可以进行板级设计,也可进行系统级、门级的设计以及原理图仿真、板级仿真等。本文仅讨论了在PCB设计中的一点技巧,希望能为系统级、门级等设计的复用以及仿真复用提供参考。



更多回帖

发帖
×
20
完善资料,
赚取积分