避开PCB假八层结构的温柔陷阱---浅谈六层板的叠层
https://blog.csdn.net/qijitao/article/details/51505611
作者:王辉东 一博科技高速先生团队队员
在《PCB的筋骨皮》一文中,我们提出了当板厚在1.6mm及以上时,怎样避免使用假八层的叠层,而导致PCB成本增加的问题。感觉大家的回答很踊跃哈,看来这个问题还是比较典型的。本来想截取一些回答放在这里,不过篇幅的关系,大家可以自己去上一篇文章,看看文章后面的精选答复。
在此文中我们结合平时的设计经验,提出了自己的见解,希望给大家一个答案,请大家指导分享。
什么是假八层
我们常规的六层板叠层,是L2-3一张芯板(core),L4-5(core)一张芯板,其它的用PP加铜箔,最后压合在一起而成的。如图一所示。

图一
但是六层板板厚在1.6mm及以上时,如果要进行常规阻抗控制(单线50欧姆,差分100欧姆),在层叠上会导致3、4层之间的厚度较高,超过3个7628半固化片的厚度。因大部分工厂PP最多只能叠3张(超过3张压合时,PP经高温由半固化状态转变成液态后容易从PNL板边流失)。这时候在生产上通常会用一个光板(没有铜皮的芯板或者把常规芯板两面的铜箔蚀刻掉)添加在3、4层之间来辅助达到预期的层叠厚度,这就是通常所说的假八层。其实那并不是真正的八层板,而是为了满足板子阻抗的需要,而出现的一种特殊叠层方式。比如下图六层板因阻抗或设计所限,中间多用了一张光板,两张芯板加一张光板,这本来是八层的叠构设计,实际做出来是六层的效果。这种就叫假八层板(实际是真六层板)。
当然这只是假八层其中的一种情况,如下图所示,3、4层之间用了2张7628半固化片加一个假芯板的方案,这个做法会增加成本。

图二
你注意到了吗?
图一用的是两张芯板(core),而图二中用的是三张芯板(core),成本有很大的差异。
那么我们怎样去避免这种情况的出现呢,我们推荐了以下几种做法,请大家参考借鉴。
2、非高密时的解决方案
三个布线层方案
这个答案有人回复了:如果可以实现3个布线层完成设计,那么六层板完全可以设计成为常规层叠。或者关键信号线(高速信号)数量不多,区域集中,也可以使用这个层叠方案,局部高速信号区域对应的相邻层铺地铜,做成局部3层布线(L1&L4&L6)。叠层如下(阻抗计算从略,大家可以自己算算,后面也是一样只写层叠)

图三
缺点:关键信号多的情况下,三个层无法满足布线需求。
较宽线宽方案
板子的密度不高,没有小间距的器件,可以使用比较大的线宽进行设计的板子(比如8mil左右线宽)叠层和阻抗控制如下:

图四
缺点:以上层叠方案,阻抗线设计为表层8~9mil左右,内层6~10mil
存在小间距器件时,以上方案比较难于布线。
3、非高速时的解决方案
在一些没什么高速信号,阻抗控制的要求可以稍微降低一点,比如保证各层阻抗一致,但是阻抗的中心值为60~65欧姆,差分线控制在105欧姆左右,叠层和阻抗控制如下:

图五
缺点:这个层叠方案有一定的技术风险,需要评估高速信号的反射。
(篇幅关系,提高阻抗的方案对高速信号的影响,会在后面的文章进行分析)
4、总结
其他方案还有1、2,5、6作为布线层,3、4为电源地平面的方案,这个方案需要表层走线极短,只进行Fan out的设计,同时1、2之间,5、6之间的阻抗差距极大。
另外在PCB设计时将阻抗设计成共面阻抗,此将叠层厚度调整厚,线宽加大,线到周围铜箔的间距调小也可以实现非假八层的方案来满足阻抗需求及降低成本。
当然,大家的回复里面还有其他方案:比如把板厚改成1.2mm,这需要考虑机械结构的要求,一般情况下无法实现。
其实,明眼人会说上面的所有方案都是有局限性的:
信号较杂乱,必须要4个布线层才能完成布线
有高密的BGA,无法走较宽的线
速率较高,DDR3/4,高速串行总线,控其他阻抗担心有风险
……
高速先生想说的就是:您的板子都高速又高密了,然后付出接近八层板的成本,却只得到六层板的性能,您真的不知道该怎么办吗?
避开PCB假八层结构的温柔陷阱---浅谈六层板的叠层的更多相关文章
- 数据层的多租户浅谈(SAAS多租户数据库设计)
在上一篇“浅析多租户在 Java 平台和某些 PaaS 上的实现”中我们谈到了应用层面的多租户架构,涉及到 PaaS.JVM.OS 等,与之相应的是数据层也有多租户的支持. 数据层的多租户综述 多租户 ...
- [转载]数据层的多租户浅谈(SAAS多租户数据库设计)
原文:http://www.ibm.com/developerworks/cn/java/j-lo-dataMultitenant/index.html 在上一篇“浅析多租户在 Java 平台和某些 ...
- 网络划分和各层协议以及webservice 浅谈
最近在公司做一些和其他外部系统接口调用的工作,遇到一些网络传输的问题,趁周末的时间记录.整理一下. 提到网络我们不得不提网络的分层架构: 我们通常听到 网络七层架构/五层架构/四层架构,但是不了解很容 ...
- 浅谈service、DAO层引入(转)
转自 http://www.4u4v.net/mvc-simple-enough-on-the-introduction-of-service-dao-layer.html MVC是web开发中常见的 ...
- 硬件工程师必须掌握的PCB叠层设计内容
总的来说叠层设计主要要遵从两个规矩: 1. 每个走线层都必须有一个邻近的参考层(电源或地层); 2. 邻近的主电源层和地层要保持最小间距,以提供较大的耦合电容; 下面列出从两层板到八层板的叠层来进行示 ...
- 傅里叶叠层成像FP(Fourier Ptychographic Imaging)查资料
傅里叶叠层成像FP(Fourier Ptychographic Imaging) 傅里叶叠层显微术(FPM)是一种新型的计算显微成像技术,FPM与传统显微术照明方式不同,常采用可编程LED阵列进行不同 ...
- 浅谈传输层协议TCP和UDP
在当今因特网的层次结构中,传输层的协议主要有两种,其一为Transmission Control Protocol,即TCP:其二为User Datagram Protocol,即UDP. 1.TCP ...
- 《FPGA全程进阶---实战演练》第三章之PCB叠层
1.双面板 在双层板设计layout时,最好不要不成梳状结构,因为这样构成的电路,回路面积较大,但是只要对较重要的信号加以地保护,布线完成之后将空的地方敷上地铜皮,并在多个过孔将两个地连接起来,可以弥 ...
- MLDS笔记:浅层结构 vs 深层结构
深度学习出现之前,机器学习方面的开发者通常需要仔细地设计特征.设计算法,且他们在理论上常能够得知这样设计的实际表现如何: 深度学习出现后,开发者常先尝试实验,有时候实验结果常与直觉相矛盾,实验后再找出 ...
随机推荐
- CSS属性去除图片链接时的虚线框
CSS 之outline (轮廓)是绘制于元素周围的一条线,位于边框边缘的外围,可起到突出元素的作用.outline 属性是一个简写属性,用于设置元素周围的轮廓线.注释:轮廓线不会占据空间,也不一定是 ...
- linux to extract contents between patterns
参考:http://stackoverflow.com/questions/19177721/extract-lines-between-two-patterns-from-a-lfile awk ' ...
- Python字节码与解释器学习
参考:http://blog.jobbole.com/55327/ http://blog.jobbole.com/56300/ http://blog.jobbole.com/56761/ 1. 在 ...
- ccf 201809-3 元素选择器
一.思路: 1.将结构化文档的每一行处理成一个节点(可定义一个结构体,成员包含标签tag.属性id.层级level.祖先所在行数father). 2.然后整个结构化文档就成了一个树形结构,可从任一节点 ...
- (转)关于SimpleDateFormat安全的时间格式化线程安全问题
想必大家对SimpleDateFormat并不陌生.SimpleDateFormat 是 Java 中一个非常常用的类,该类用来对日期字符串进行解析和格式化输出,但如果使用不小心会导致非常微妙和难以调 ...
- loadrunner 快捷键
lr 不同的界面切换 crt f6lr:选中要查找的内容 ctrl +f3 超找文本 选中所有字母大写 ctl +shift+ u;小写
- 如何判断索引是否生效--explain
explain 显示了MySql 如何使用索引来处理select语句以及连接表. 使用方式在select 前面加上 explain就可以了 示例:explain select id , name ta ...
- python基础类型(字典:dict)
字典的介绍: 字典(dict)Python中唯一的一个映射类型.他是以{}括起来的键值对组成,在dict中key是唯一的.在保存的时候,根据key来计算出一个内存地址,然后将key-value保存到这 ...
- 用户积分排行榜功能-Redis实现
一.排行榜功能简介 排行榜功能是一个很普遍的需求.使用 Redis 中有序集合(SortedSet)的特性来实现排行榜是又好又快的选择. 一般排行榜都是有实效性的,比如交通数据流中的路口/路段的车流量 ...
- c# 编程--结构体
结构体:由多种简单类型,组合成一种复杂的类型.使用这种复杂的类型来解决生活中的实际例子. 一.结构体定义:struct 结构体的名子{ public 类型名 变量名; .....} ...