快点PCB原创∣聚焦SI问题之总线拓扑结构
时间:10-02
整理:3721RD
点击:
快点PCB原创∣聚焦SI问题之总线拓扑结构
在大学的“微机原理”课程中,大家一定学过PCI总线知识,PCI总线就是典型的“多负载”总线,PCI数据线、地址线都是连接多个负载。
早期的电脑主板会有多个PCI插槽、每个PCI插槽都可以增加一个PCI外设板卡(如:声卡、显卡、网卡 等),每个PCI外设板卡都可以理解为一个负载,外设板卡与CPU之间的通信通过PCI总线连接,例如:Data0信号就要把CPU主板、声卡、显卡、网卡等多块PCB板连接在一起。
PCI总线是典型的并行总线,缺点是占用芯片管脚数量太多,不利于系统数据交换容量的提升。所以,在并行总线的基础上,出现了串行总线、一对差分串行信号的信号速率相当于以往多条单端并行信号的信号速率总和,这需要借助于芯片的SerDes技术。
所谓“总线拓扑结构”,适用于多负载总线,指的是一条总线上的负载间的连接方式。举个简单的例子:A、B、C三个负载通过总线进行连接,物理实现上可以先把A和B进行连接、再把B和C进行连接;也可以先把A和C进行连接、再把C和B进行连接;也可以从A把总线引出、在连接B/C之前在某点进行分叉再连接到B和C。
1. 常见信号拓扑结构
最常见的信号总线拓扑结构有以下四种:
点到点、菊花链、星型、远端簇型。
1.1 点到点拓扑结构
![](../imgqa/pcb/pcb-165130t99lu9l9auu2au3m6501.png)
该拓扑结构简单,整个网络的阻抗特性容易控制,时序关系也容易控制,常见于高速双向传输信号线;常在源端加串行匹配电阻来防止源端的二次反射。
1.2 菊花链拓扑结构
![](../imgqa/pcb/pcb-165137scr8g2yb5rn84cb16502.png)
如上图所示,菊花链拓扑结构也比较简单,阻抗比较容易控制。
菊花链拓扑结构的特征是每个接收端最多只和2个另外的接收端/发送端相连,连接每个接收端的stub线需要较短。该结构的阻抗匹配常在终端做,用戴维南端接比较合适。
1.3 星型拓扑结构
![](../imgqa/pcb/pcb-165142jqcxvxv200mz9m2w6503.png)
星型拓扑结构如上图所示,该总线拓扑结构下PCB布线比较复杂,阻抗不容易控制,但是PCB布线时序比较容易控制,只要控制从驱动端Driver到各个接收端Receiver的布线长度一致即可。星形拓扑结构需要特别在Receiver端做好信号匹配设计、消除终端反射。
1.4 远端簇型拓扑结构
![](../imgqa/pcb/pcb-165148xmavb8a7bqzf7afc6504.png)
远端簇型拓扑结构可以看做是星型拓扑结构的一种变形结构。
远端簇型拓扑结构要求从驱动端Driver到交叉T点的PCB布线长度要远远大于交叉T点到各个接收端Receiver的PCB布线长度,同时交叉T点到各个接收端Receiver的距离要尽量等长,信号匹配设计可以做在交叉T点处。
远端簇型拓扑结构是一种常用于DDR总线的地址、数据线PCB布线设计的拓扑结构。
2. 信号拓扑结构设计关注点
多负载总线的拓扑结构在实际PCB设计实现时,需要关注以下三个方面:
时序、Stub、信号匹配
(1)时序:总线一般会有传输延时、总线间时序关系(相对延时)的要求,在PCB设计实现时需要考虑:从驱动器到接收器的PCB走线长度、一组总线的PCB布线等长设计;
(2)Stub:通俗的说就是PCB走线分叉,Stub长度控制的越短、信号由于分叉造成的反射影响就会越小,信号质量越容易控制。
Stub在哪些情况下存在呢,实际上Stub在实际互连链路中是随处存在的;
比如,PCB的孔一般是通孔、即从TOP面打通到BOTTOM面,而PCB走线的连接如果位于中间某层,从信号传输流向的角度考虑,PCB孔的一部分就会成为Stub,如下图所示:这是PCB过孔的剖面图,信号从红色走线通过过孔连接流向蓝色走线,这时图中标识的蓝色走线以下的过孔孔铜就会是此信号传输链路的Stub、多余无用的走线分叉;
![](../imgqa/pcb/pcb-165202k4844k58p845p1ss6505.png)
再比如,PCB走线直接连接到接收端芯片管脚,这时从互连链路设计表面上看,走线已经不存在Stub了,但对于多负载总线即使在这种理想布线的情况下同样是存在Stub的,因为芯片本身会有封装,封装内也存在铜互连走线,芯片器件封装内的铜互连走线对其它接收端互连链路来说也是一段Stub,只是这段Stub比较短、通常被忽略了而已;
从PCB设计的角度,要控制Stub,一方面要严格按照仿真确定的布线拓扑结构与规则进行布线设计,另一方面在布线设计习惯上要注意不要随意在互连链路上增加过孔Via、尽量将PCB走线连接到芯片管脚或距离芯片管脚很近的Via。
PCB上对于连接器孔Stub有一种Backdrill的加工工艺,就通过增加一次钻孔工序将无用的孔铜去除,通常这种加工工艺用于信号速率超过3.125Gbps以上的信号速率,是否需要Backdrill可以通过信号仿真分析确定,示意图如下:
![](../imgqa/pcb/pcb-165210lgyaxyxfy1rack1a6506.png)
(1)信号匹配:信号不管是在驱动端还是在接收端进行匹配设计,核心思路是控制信号输入输出及阻抗匹配,这部分内容会在下一期进行介绍。
******快点PCB,快乐设计******
在大学的“微机原理”课程中,大家一定学过PCI总线知识,PCI总线就是典型的“多负载”总线,PCI数据线、地址线都是连接多个负载。
早期的电脑主板会有多个PCI插槽、每个PCI插槽都可以增加一个PCI外设板卡(如:声卡、显卡、网卡 等),每个PCI外设板卡都可以理解为一个负载,外设板卡与CPU之间的通信通过PCI总线连接,例如:Data0信号就要把CPU主板、声卡、显卡、网卡等多块PCB板连接在一起。
PCI总线是典型的并行总线,缺点是占用芯片管脚数量太多,不利于系统数据交换容量的提升。所以,在并行总线的基础上,出现了串行总线、一对差分串行信号的信号速率相当于以往多条单端并行信号的信号速率总和,这需要借助于芯片的SerDes技术。
所谓“总线拓扑结构”,适用于多负载总线,指的是一条总线上的负载间的连接方式。举个简单的例子:A、B、C三个负载通过总线进行连接,物理实现上可以先把A和B进行连接、再把B和C进行连接;也可以先把A和C进行连接、再把C和B进行连接;也可以从A把总线引出、在连接B/C之前在某点进行分叉再连接到B和C。
1. 常见信号拓扑结构
最常见的信号总线拓扑结构有以下四种:
点到点、菊花链、星型、远端簇型。
1.1 点到点拓扑结构
![](../imgqa/pcb/pcb-165130t99lu9l9auu2au3m6501.png)
该拓扑结构简单,整个网络的阻抗特性容易控制,时序关系也容易控制,常见于高速双向传输信号线;常在源端加串行匹配电阻来防止源端的二次反射。
1.2 菊花链拓扑结构
![](../imgqa/pcb/pcb-165137scr8g2yb5rn84cb16502.png)
如上图所示,菊花链拓扑结构也比较简单,阻抗比较容易控制。
菊花链拓扑结构的特征是每个接收端最多只和2个另外的接收端/发送端相连,连接每个接收端的stub线需要较短。该结构的阻抗匹配常在终端做,用戴维南端接比较合适。
1.3 星型拓扑结构
![](../imgqa/pcb/pcb-165142jqcxvxv200mz9m2w6503.png)
星型拓扑结构如上图所示,该总线拓扑结构下PCB布线比较复杂,阻抗不容易控制,但是PCB布线时序比较容易控制,只要控制从驱动端Driver到各个接收端Receiver的布线长度一致即可。星形拓扑结构需要特别在Receiver端做好信号匹配设计、消除终端反射。
1.4 远端簇型拓扑结构
![](../imgqa/pcb/pcb-165148xmavb8a7bqzf7afc6504.png)
远端簇型拓扑结构可以看做是星型拓扑结构的一种变形结构。
远端簇型拓扑结构要求从驱动端Driver到交叉T点的PCB布线长度要远远大于交叉T点到各个接收端Receiver的PCB布线长度,同时交叉T点到各个接收端Receiver的距离要尽量等长,信号匹配设计可以做在交叉T点处。
远端簇型拓扑结构是一种常用于DDR总线的地址、数据线PCB布线设计的拓扑结构。
2. 信号拓扑结构设计关注点
多负载总线的拓扑结构在实际PCB设计实现时,需要关注以下三个方面:
时序、Stub、信号匹配
(1)时序:总线一般会有传输延时、总线间时序关系(相对延时)的要求,在PCB设计实现时需要考虑:从驱动器到接收器的PCB走线长度、一组总线的PCB布线等长设计;
(2)Stub:通俗的说就是PCB走线分叉,Stub长度控制的越短、信号由于分叉造成的反射影响就会越小,信号质量越容易控制。
Stub在哪些情况下存在呢,实际上Stub在实际互连链路中是随处存在的;
比如,PCB的孔一般是通孔、即从TOP面打通到BOTTOM面,而PCB走线的连接如果位于中间某层,从信号传输流向的角度考虑,PCB孔的一部分就会成为Stub,如下图所示:这是PCB过孔的剖面图,信号从红色走线通过过孔连接流向蓝色走线,这时图中标识的蓝色走线以下的过孔孔铜就会是此信号传输链路的Stub、多余无用的走线分叉;
![](../imgqa/pcb/pcb-165202k4844k58p845p1ss6505.png)
再比如,PCB走线直接连接到接收端芯片管脚,这时从互连链路设计表面上看,走线已经不存在Stub了,但对于多负载总线即使在这种理想布线的情况下同样是存在Stub的,因为芯片本身会有封装,封装内也存在铜互连走线,芯片器件封装内的铜互连走线对其它接收端互连链路来说也是一段Stub,只是这段Stub比较短、通常被忽略了而已;
从PCB设计的角度,要控制Stub,一方面要严格按照仿真确定的布线拓扑结构与规则进行布线设计,另一方面在布线设计习惯上要注意不要随意在互连链路上增加过孔Via、尽量将PCB走线连接到芯片管脚或距离芯片管脚很近的Via。
PCB上对于连接器孔Stub有一种Backdrill的加工工艺,就通过增加一次钻孔工序将无用的孔铜去除,通常这种加工工艺用于信号速率超过3.125Gbps以上的信号速率,是否需要Backdrill可以通过信号仿真分析确定,示意图如下:
![](../imgqa/pcb/pcb-165210lgyaxyxfy1rack1a6506.png)
(1)信号匹配:信号不管是在驱动端还是在接收端进行匹配设计,核心思路是控制信号输入输出及阻抗匹配,这部分内容会在下一期进行介绍。
******快点PCB,快乐设计******