铺铜在设计PCB板时很重要,为了加深理解,笔者写下这篇学习的过程。首先要理解什么是正片和负片,结合网上的资料来理解一下:
( Q9 [9 H8 h8 c0 @. K+ _正片实际就是能在底片上能看到的就是存在的
负片实际上就是在底片看到的就是不存在的1 x1 s9 v9 P! ]0 u; B呵呵,梳理一下,正片和负片从名字上就看出是相反的,下面的二张图最能说明区别了,很容易理解。 2 N! O9 ^3 s" n. [
/ c6 P+ y+ @8 G$ k2 [6 C上图是正片,黑色部分是铺铜,白色部分是过孔和焊盘。
X/ N* d v% b' z# e
! Y. P3 n' y1 @! D$ b- G
上图是负片,白色空白部分是铺铜,而黑色区域是过孔或者焊盘。
$ K+ I/ U6 t6 Q, a正片的优点是如果移动元件或者过孔需要重新铺铜,有较全面的DRC校验。
负片的优点是移动元件或者过孔不需重新铺铜,自动更新铺铜,没有全面的DRC校验。$ w c5 f2 V% s" z: U: q4 r
4 d. u3 ]& o* ^: D4 F! O- \& q可以在上图看到热风焊盘,分为正热风焊盘和负热风焊盘
6 G1 S0 O! j# ]* `1 h7 |( B$ p
/ o. l6 z+ i- `4 l" U% l9 i
这二种焊盘是针对内层中的正片或者负片的。也可以在选择焊盘时预览。
7 b$ a8 G1 g6 M7 S接着要理解动态铜箔和静态铜箔的概念和区别 ' M8 M X8 r, J0 e5 ? Z
所谓动态就是能自动避让元件或者过孔,所谓静态就是要手动避让,其实他们有不同的设置主要是对动态铜箔的设置,可以通过shape->Global Dynamic Params来设置铜箔的参数。 - o* W+ \+ i2 c
铺铜的主要步骤是建立Shape.
0 g! Q: J2 E: o b' t% b我们先学习一下如何建立Shape,可以在菜单栏上看到Shape : [* ~( @8 e0 ]$ \- [9 e7 n
& B) S; F' K" E7 h7 \5 [0 G) m+ n下面根据cadence的一本书中的实例来看看,如何为平面层建立Shape。) ^6 A% X! w+ E+ g
使用Shape的菜单项为VCC电源层建立Shape
% a, s |- ^4 d+ G- q点击Shape->
olygon命令,并在options选项中设置为下。 ( y: L. q! L# l: K- z
4 J& ] k# T( P9 R! v
注意Assign net name我们设置新建的Shape的网络名为Vcc并且为静态的Static solid,然后在Route Keepin区域中沿着边缘绘制出这个Shape形状。
. t; Z$ C! k, O g& p使用Z-copy命令为GND地层建立Shape
( C; H' \. }7 J' o5 \4 Z6 z1 G在Edit-Z-Copy命令
" i5 f& e/ e) Z( ]; T1 E6 w, {修改Options如图 6 {9 t# u+ Z# i, F( e' K
& O- c2 _* Q# A- p% L0 B然后点击刚才设置的VCC的Shape创建完毕。
0 Q) W) M4 a1 S4 v' J- U: ^6 ]$ V& y选择Shape菜单中的Select Shape or Void,然后用鼠标选中刚才创建的GND shape并右键选中Assign Net为复制成的GND Shape创建网络名,具体的Options为 & H% a) q8 H5 _2 H5 k3 z* i# U' _
+ E( j* s% j1 z$ K. U至此我们使用二种方法制作了VCC和GND的Shape 。; X1 }2 P7 b+ Q) p( V
接着我们要为了适应不同的电压对铺铜平面进行分割 0 E$ i2 c& B! Y
我们可以使用Add->line的Anti Etch对铺铜平面进行分割
" \; P* L' G% H3 X& n( ^使用Anti Etch来分割平面 , F. a- j# r1 J# D" @/ h. h
使用Add->line命令,并且设置Active Class为Anti Etch,线宽为20,然后在已经建立Shape的平面上,画出想要分隔的范围,再用Edit->Split Plane->Create 4 _" n; S$ H+ \5 A) f# A/ x1 T
7 G k |7 S( o# I1 ]: i: A/ @
然后选择你分配给的电压网络,例如我这里是1.8V
2 Z' b4 t. o8 w7 V- m: H; m, P8 u
% ]- g. F: T" Z/ X% k- h6 g: \/ Y
点击OK完成Shape的分隔 8 Z" w% ^: I" }$ W$ J
; j# B" @3 `1 s7 x K# W, s# f2 x
图中画的有些粗糙,只是为了练习用来说明用。, N" T) ]% v$ T
下面来做一个建立动态Shape的练习,刚刚创建的GND的Shape是一个静态的,可以在那个Options中看到是没有设置动态选项
& G+ f, `% r6 r# H7 Y建立动态Shape
5 V. Q( l: O, ^/ \! q0 `使用Setup->Cross - Section命令设置底片的格式为“Positive"正片格式,然后使用Shape->"Global Dynamic Parameter命令设置动态Shape的相关参数,再使用Editor->Z-Copy命令复制制作新的GND层的Shape,
9 r+ D/ b- C" S8 m) p
1 T- \9 O4 B+ j% t @- u一定要注意这次选择上Create dynamic shape以创建动态的Shape ; j; ?& l* A t- ^! V% S- A. N
然后选择Shape->Select Shape or Void命令设置网络名称为GND.选择Done后制作完成。 0 g; g: ?% u7 ]3 r
另外可以使用使用Shape->"Global Dynamic Parameter命令或者Shape->Select Shape or Void修改已经建好的动态Shape
; r" b3 G* d8 B! i G1 O: Y使用多边形分隔平面 & H6 E4 B$ F# n) T4 g# v
其实在上面建立VCC层的Shape时我们就使用了多边形的命令,只不过只是说沿着Route Keepin布线允许区域完整的走了一圈,现在可以根据个人需要设计多边形的分隔平面。 0 v7 s! s/ S5 W$ _
还是使用Shape -> Polygon命令来创建,创建完成后可使用Shape->Select Shape or Void来选中刚创建的Shape并右键选择Raise Priority来改变Shape的优先级,也就是谁的级别高,级别高的Shape在移动时可以推挤级别低的Shape并保持隔离带。
$ L% C8 N1 v- Y8 j& R8 ?+ l增加挖空的多边形
" q, ~# u& J# d, \' M2 G使用Shape -> Manual Void -> Polygon命令在需要对Shape进行挖空的地方绘制多边形,并且可以使用Shape->Manual Void ->Move移动,Copy拷贝,Delete删除创建的挖空,也可以通过修改Global Dynamic Parameters命令中的Void controls内的相关参数来设置直插和过孔的挖空情况,例如可以将直插元件的挖空连起来。 4 g9 J+ y4 H; N
转换Shape的动、静态
( N4 N: u0 |% w7 k2 Y选择Shape->Change Shape Type然后通过填写Options中的Shape Fill Type为动态或者静态就可以实现转换。N0 x" `' G3 B* ~3 ^6 x
编辑边界并添加Trace # X1 n' c8 Z8 J: _5 i
通过使用Shape->Edit Boundary修改边界,使用布线命令Route ->Connect来增加Trace并且使用过孔使Trace与目标元件相连。
4 T4 ?" ?$ p* j' h+ `) K) |删除孤铜
/ u( `$ N; z# S3 I: l% ^我理解孤铜是指铺铜过程中产生的不平滑而且具有毛刺的形状,也有多余的部分。在网上竟然没有查到他的解释,只是感觉他能够对铺铜造成一定的负面影响,比如信号的干扰等。可以使用Shape->Delete Islands来删除孤铜。可设置某个层的也可以对全部层进行此操作。
7 f% C- e: K- z. k' E8 }分隔复杂的平面
3 Z9 o- X' B# O7 m比较复杂的平面是让铺铜区域包含多个铺铜区域,或者是划分成多个铺铜区域。常用的做法使用增加Anti Etch来划分成二个或者多个部分。能定义分割的平面为正片还是负片模式。; m% }3 R( i4 I% s' Y6 m, ~/ J
定义复杂平面并把它输出底片
" N3 b; K$ \9 i7 L8 B7 e; F9 A. m定义复杂平面可以使用上面练习中的方法在一个平面层上利用Shape->
olygon来画多边形,然后使用Manufacturing->Artwork命令,弹出Artwork Control Form窗口 # ?: j2 @/ D( W4 H4 _
, x G7 z4 v P3 E( D( r在Film Control中选择GND,然后点击Create Artwork生成Photoplot.log文件。
; F2 N- K8 y+ v% I" ]4 \( g6 Y; |添加负平面Shape并孤铜检查
1 P( F+ M7 U! L" s象上面练习中的使用Z-Copy命令创建GND平面层的方法来创建一个负平面的Shape,然后使用Shape->Select Shape or Void来修改一下相关的设置,假如出现如书上的热风焊盘连在一起的情况
+ W& W) P# v6 F6 |
( k4 c5 g* G$ `) ^4 P7 N
点击Setup -Constraints设置Negative plane islands为ON就打开了负负平面孤铜的约束检查功能。
" V* C* e2 ], I# Z这时候会在图上那一圈相连的焊盘上出现DRC的标志,利用Display->Element并对Find页面中仅选择DRC Markers,点击DRC的错误标志,就会显示详细的错误内容,可以看到一个很明显的错误是"SHAPE_ISLAND_OVERSIZE”,是说明孤铜超过尺寸了,下面对出现错误的焊盘进行修改。
7 M7 v: i0 y3 v, {7 L1 g! ?使用Tools->
adstack->Modify Design padstack命令然后用鼠标单击出现问题的焊盘,单击Options中的Edit按钮,就会弹出Pad Designer编辑器,这时候改变 " S- |( U7 p4 Q; A# e
3 }5 t( f1 s, c: V' M: @
更变相关层的AntiPad的Width,使它小一些,然后执行下面操作完成修改。 0 I! \9 q b2 M4 a5 B q6 g
* X+ G/ ?2 o( j% S8 G% x到此重要的铺铜这一课算是补上了,但是总结一下,发现可能练习的比较乱而杂,希望学习的朋友多看几遍
3 i# B5 ~7 }/ S4 I