PCB设计论坛
直播中

靓仔峰

9年用户 1120经验值
擅长:可编程逻辑
私信 关注
[经验]

一个Layout工程师的成长经历

一个Layout工程师的成长经历通常是这个样子的:
  • 画一个简单的板子,比如电源
  • 画一个带MCU的板子,通常包含一个最小系统
  • 画一个带CPU的板子,需要做CPU和Memory、Ethernet等复杂接口的连接,需要做阻抗匹配和Length tuning

简单的板子怎么Lay都没问题,下文主要以一个主板为例,介绍下通用主板Layout的一般顺序,也欢迎有更好方案的工程师提出自己的建议。
Part.1 连接所有管脚
1 设置基本规则
设计规则是重要的,可能的话把通用规则做一个模板,每次设计时直接导入。

以下给出一个主板常用的规则示例(单位:mm):
  • 导线(Track):0.1 / 0.1 (间距 / 线宽)
  • 过孔(VIA):0.45 / 0.2 (直径 / 钻孔)
  • 差分对(Diff Pair):0.1 / 0.1 / 0.1(P+ / Gap / N-)

2 设置基本的层叠结构
参考这篇文档:如何确定PCB的层数?

主要是靠经验,不需要特别准确,可以多添加一些层,以后用不到可以删除。
3 Memory Layout
CPU、Memory布局完成之后(需要考虑预留出“线长调制”的空间),最先要考虑的是如何连接CPU和Memory,也就是优先扇出CPU的Memory区域,然后扇出内存(如果是内存slot的话也需要扇出)。完成CPU和Memory(或Memory Slot)的基本连接。

4 CPU扇出(Fanouts)
扇出CPU建议从中间位置开始,优先级依次为:

  • 电源:电源一般都在CPU的中间位置。
  • 去耦电容:去偶电容是Layout中非常重要的器件,它们必须尽可能的接近电源管脚。
  • 精密电阻/电容:通常用来做参考的精密电阻/电容,一般都在器件管脚和地之间,连线应尽可能的短(走线较宽或阻抗较小)。
  • 串联电阻/电容:串联电阻通常离输出管脚很近;又如PCIE的TX发送端,通常要接一个串联的电容,也需要尽可能的靠近TX管脚;又比如Crystal晶振
  • 端接电阻:端接电阻(Termination resistor)也需要尽可能的靠近管脚。
  • 上拉/下拉电阻:上拉/下拉电阻不是必须离管脚很近,但是有可能的话也可以靠近一点,这样可以给其它网络留出更多的走线空间。注意,如果上拉/下拉电阻被用作端接电阻,那也需要尽可能的靠近管脚。
  • Bootstrap电阻

5 扇出其它BGA器件(如FPGA
6 总线(如PCI、ISA)
优先走宽度大的总线,比如PCI、ISA,因为它们需要的Track最多。如果开始的时候不走,后面走会非常困难。注意,开始布总线之前,确定所有过孔Via已经摆放完毕了。不论是时钟、晶振还是其它器件,都必须先完成“扇出”,即摆放过孔并用短线将焊盘和过孔相连,因为只有所有的过孔都就位后,才能准确判断导线的走线空间。否则,极有可能发生Layout后期过孔没处摆放从而需要重新布线的情况。不用担心,过孔的位置之后还可以调整。
在一些特殊的场合,也不绝对是宽度大的总线优先,开始Layout之前,要做整体的Planning,有可能的话,先走可以靠近板边的总线,这样可以为其它信号留出更多的走线空间。
在这个阶段走总线的时候记住三点:
  • 只需要把网络连起来,走线不需要完美,因为后面还会反复调整
  • 电源(Power supply & rail)尽量用粗一点儿的Track。因为后期为了阻抗匹配,可能会批量修改相同宽度的track,通常会改的更小(比如0.1mm或0.075mm),当然电源Track不需要修改。如果电源和其它导线的初始值一样,就会给批量修改造成不便。
  • 不要在意DRC,这个阶段修改DRC错误纯属浪费时间。

7 初步完成差分对布线
差分对通常是高速信号,而且比较特殊,是“成对”出现的,因此需要更多的走线空间。
通常有哪些差分对呢?PCI Express,Sata,时钟Clock,Ethernet,USB等。
8 先连接比较长的总线,再走管脚较多的总线
之前说过,同一组的总线信号,要使用相同的拓扑结构,这对于较长的信号来说最不容易做到,因此优先连接。
9 完成局部的走线
通常是小范围内的连接,比如电源器件、连接器、模拟电路等。典型的例子是RS232接插件到tranceiver芯片的连接。
10 连接剩余的信号线(如LED)
剩下的这些信号不太重要,可以随便连接,用多少Via走多长你可以自己决定。
11 连接电源网络(这也可以是第一步)
设计并添加电源平面。如果你的设计比较复杂或者电源层数量被限制,那就应该在Layout的初期就进行电源平面的规划。
12 进行DRC检查并解决错误
Part.2 优化Layout
1 完成最终的层叠结构
如果你的设计需要做阻抗匹配(通常单端50欧,差分对70/90/100欧),就需要设计完整的层叠结构,包括以下信息:
  • PCB的材料,包括铜箔(Copper foil)、基材(Core)及预浸材料(Prepreg)
  • 可选的标准铜箔厚度:5um,12um,18um,35um,70um
  • 可选的标准Prepreg厚度:65um,100um,180um
  • 可选的标准基材厚度:0.15mm,0.20mm,0.36mm,0.46mm,0.56mm,0.71mm,1mm,1.2mm,1.5mm,2.0mm,2.4mm,3.2mm

当然,你也可以把设计层叠结构的任务丢给PCB板厂。只要告知板厂层的定义、顺序以及需要做到的阻抗,板厂会提供建议板卡的层叠结构并给出每一层的信号走线宽度(以达到阻抗要求)。

2 根据层叠结构定义差分对规则
根据层叠结构或板厂给出的尺寸,定义差分对宽度、间距、非耦合长度、匹配线长等规则
3 对内存(Memory)进行初步的线长调制
不需要非常精确,目的是大致确定信号调制线长后需要占用多大的空间

4 初步进行差分对的线长调制
不需要非常精确,目的是根据阻抗要求调制线长后确定差分对需要的空间


5  添加缝合孔(Via Stitching)
对关键信号添加缝合孔。

缝合孔的使用方法参见:使用Via Stitching消除串扰和EMI
6 对其它信号做初步的线长匹配(如时钟Clock)
7 检查大电流的导线
检查大电流导线的宽度以及与平面相连的过孔数量及尺寸,有必要的话可以添加或修改铺铜(Polygon)。
8 检查电源平面
从源头开始检查,确认与电源平面相连的导线和过孔可以承受足够大的电流
9 一一检查所有的网络
仔细检查每一个网络连接。反复确认关键连接,比如时钟信号中断信号之间的间距是否足够大。
10 对差分对及简单的信号进行最终的线长匹配(优化)
11 对内存接口进行最终的线长匹配
12 锁定重要的导线
对于比较重要的Track,比如内存接口,在工具中进行锁定(Lock),不再允许移动或修改
13 添加丝印层信息(比如时间、版本等)
14 添加生产制造信息(比如钻孔表、颜色、公差等)


回帖(1)

廖润锋

2019-12-16 17:30:27
456456456456456456464656
举报

更多回帖

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