24小时联系电话:18217114652、13661815404

中文

您当前的位置:
首页>
电子资讯>
技术专题>
基于SoC的PCB设计

技术专题

基于SoC的PCB设计


PCB设计要尽早的评估SoC的能力,将确保制造,组装和测试将以很少的问题和高成品率进行。在开发基于SoC的PCB设计时,SoC的附加功能将提供丰富的功能优势。但是,与此同时,这些功能可能给PCB制造过程带来其他挑战。因此,制定用于设计,开发,测试和生产最终PCB的有效计划是良好的商业惯例。PCB设计过程中的几个步骤包括可以增强功能的区域,这些功能可以提高PCB制造的简易性和生产PCB的成品率。从SoC本身到设计过程再到最终板测试的过程中的许多元素,都应进行审查,以寻求可能影响PCB最终可制造性的改进。

大小很重要

SoC器件具有一定的固有复杂性。整个系统打包成一个缩略图大小的单个硅封装。小型物理结构中有许多接口,时钟,信号,协议和电源连接。系统尺寸的减小不能保证减少PCB实施问题。在某些情况下,这种物理上的减少会增加设计底层PCB时将遇到的挑战数量。

为了在同一个小型封装中容纳如此多的功能组合,芯片的设计人员通常使用一种巧妙的方法将多个功能组合分配给同一引脚。例如,在德州仪器(TISitara AM3358处理器上,可以为同一引脚分配UARTI 2 C,通用I / OGPIO),精简千兆媒体独立接口(RGMII)以太网或电机驱动脉冲宽度调制(PWM)功能,仅代表少数可用接口。

在同一个物理结构(I / O单元)上使用多个接口的时间分配是开发低成本系统解决方案的好方法。在许多方面,这可以帮助降低整体系统成本并利用不断缩小的硅工艺。但是,像这样使用I / O引脚多路复用可能会在PCB层提出一些挑战。

使用具有复杂I / O引脚多路复用方案的SoC来实现系统提出了一个挑战,因为对于所有可能的I / O引脚定义组合而言,相同的PCB布局并不是很好的。图1显示了来自同一SoC的两个不同I / O选择的PCB布局。在电路设计A中,一组引脚配置用于UARTSD / MMC卡,GPIO和电机控制。在电路设计B中,使用RGMII类型的接口为以太网总线配置了相同的引脚组。

请注意,在原理图级别上,在两种设计之间进行更改似乎没有太多困难,因为它只是用适当的选择(例如RS-232收发器与以太网物理层或PHY)替换了终端设备/电路 。但是,在审查PCB布局实现时,对不同接口的要求发生了巨大变化,这表明必须对PCB布局和随后的布线进行哪些重大更改才能开发出坚固的PCBUARTSD / MMC卡,GPIO和电机控制将被布线到可放置在PCB上空间不同位置的多个设备。相比之下,以太网总线将被布线到单个设备,即以太网PHY,该设备可能会放置在与SoC相当近的位置。

取决于接口连接的相同SoC引脚的布线差异表明,为什么没有一种单一的全球正确方法来布局适用于所有设计的基于SoCPCB。相反,每个设计都需要注意这些细节,以很大程度地降低可制造性问题的风险。SoC制造商的参考设计可以帮助展示常见电路设计的实用实现。

图1

1. SoC连接来自同一组引脚的不同功能信号集的能力可能会在PCB布局上产生很大差异。这些布局显示了同一SoC的两种不同实现之间布线差异的示例。在第一个示例中,引脚用于UARTSD / MMC卡,GPIO和电机控制。在第二个示例中,相同的引脚用于RGMII以太网PHY连接。

提前计划

到第一批PCB到达时,可以检查许多设计问题。快速设计PCB的过程与设计初期可以验证哪些项目有很大关系。过程中的步骤可以帮助将高风险项目移到过程中的较早位置,从而使您有更多时间从设计或实现中可能的错误中恢复。但是,必须仔细考虑一些PCB设计过程,以满足每个步骤的先决条件(图2)。

图2

2.此图显示了标准PCB开发流程中流程类型的简化图形示例。过程中的主要步骤被封装为设计流程中的主要模块。

当然,在常见的PCB构建环境中,主要目标是使用原理图设计来构建有形的实际PCB。可以使用几种不同的材料来生成PCB。对于此讨论,假定使用刚性FR-4材料。FR-4覆铜玻璃环氧板的复杂物理和材料特性超出了本文的范围。但是,PCB材料的这些非常细微的细节可能会导致重要的设计决策,从对PCB的要求一直贯穿到测试和生产制造。作为PCB要求和设计步骤的一部分,它有助于理解这些细节,因为诸如铜的重量和PCB的绝缘层厚度之类的细节将决定堆叠并控制PCB的布线约束。

在某些情况下,将板的物理参数留给布局人员似乎很容易。但是,即使只是对底层的PCB基板有一个粗略的了解,也可以做出更好的决定,从而影响许多项目,并具有某些特征,例如PCB的尺寸以及可以在PCB上放置的设备。

例如,FR4材料在其横向和纵向尺寸上都具有一定程度的柔韧性。如果不解决这个问题,那么如果板上出现无法预料的机械应力,那么SoC大小的球栅阵列(BGA)可能会导致焊球粘结失败。以不同的方式,安装PCB可能会增加热故障和PCB扭曲/机械挠曲的问题,具体取决于机箱/机架组件。

尽管从PCB设计过程的第一角度来看,最终生产板是关键指标,但早期原型PCB的使用和实际需求是整个PCB流程中的重要一步。尽管仔细查看了设计活动并核对了清单,以确认是否满足设计约束,但设计中的错误仍会漏出并显示在最终PCB上。因此,早期的原型板对于消除SoC板设计中的错误和误判很重要。

PCB设计中进行尽职调查时会发生什么错误?即使是基于SoC的好意图的PCB设计也可能出错:

①PCB设计师,需求团队,布局人员或PCB制造合作伙伴之间的通信错误

②设计范围太大,未满足要求

③元件占用错误

④机械放置错误(连接器/电缆间隙问题,显示器安装问题等)

⑤对电路板要求的误解

⑥电气设计错误

⑦电源问题

⑧接口信号噪声问题

⑨设备/子母板连接器的方向

⑪设备地址分配错误

⑫PCB配置选件功能问题

⑬组件可用性问题

⑭制造商对组件修订的更改

建立目标

近年来,仿真技术已得到显着改进,采用仿真技术的工具可以用来尝试捕获某些这类问题。尽管要花很大的力气来模拟设计,验证机械间隙,确认设计要求并思考配置选项如何很大程度地减少潜在错误(所有这些活动都是好的设计实践),但要增加设计进度以完成所有这些步骤实际上可能超出电路板发展限制所允许的范围。

PCB设计过程的早期,推动明确和简洁的设计目标非常重要。在设计阶段对这些设计目标进行阐述之前,这些设计目标可能看起来比较笼统且含糊。留下的模糊目标留下了误解的机会,这将表现为PCB故障,可能会影响最终PCB的直接构建进度。

例如,如果必须使用特定的NAND闪存,但I / O电压电平不清楚,则该电路可以设计为同时支持1.8 V3.3 V,也可以设计为单个电压值。为了无缝连接到SoC,必须在SoC上相应的电源轨上匹配此I / O电压电平。这会给电路板增加不必要的复杂性和风险。如果对需求有任何疑问,复审可以澄清这些问题。

元件在PCB上的放置会对最终PCB的可制造性产生巨大影响。组件的放置会影响设备间的间隙,制造取放效率,电缆的出入和间隙以及焊接轮廓差异。尽管它们通常是相关的,但这与前面解释的I / O复用问题不同。

诸如铅与无铅组件彼此相邻放置之类的问题会使设置PCB的正确焊接轮廓变得更加困难。(现在,随着焊接技术的改进,这不再是一个问题。)通常,无铅组件需要较高的焊料,例如250°C,而铅组件可能需要220°C2由于差分热对流,将这些组件彼此紧邻放置会影响可制造性。对于只有几个焊球和较低热质量的超小型BGA组件(例如分立封装中的单个浇口)尤其如此。

如果一个特定组件具有严格的布线约束,则可能会限制其他组件在特定区域内的放置。例如,诸如DDR3的高速接口需要恒定的参考平面并与其他接口有效隔离。这将限制其他设备在DDR3存储设备一定距离内的放置。

SoC类型的设计中,许多异构外围设备通常必须在同一PCB上运行。准备基于优先级的布局分析可以帮助确保最终PCB正常运行。在组件放置之前对PCB进行平面规划有助于揭示潜在的布线,电源和机械问题。

通常,PCB会根据PCB及其所用最终产品的计划用途而对连接器的放置施加一定的物理限制。有时,SoC具有多组I / O,可以将特定接口映射到这些I / O。使用PCB的平面图可以揭示SoC引脚的I / O映射的更好组合,这将在PCB上提供更好的机械结构。

电路板

3中的放置显然会提供更好的板,比其他板更容易布局和构建。平面图的设备在空间上最适合布线,因为每个接口的适当SoC球的位置都靠近主板上外部设备的位置。图4展示了一个平面图,该图的组件与SoC处理器上的相应接口球分开放置。这将需要相互交叉的布线通道,并消耗宝贵的PCB功率和信号布线面积。请记住,只有太多的层可以布线信号,功率和成本的增加才能获得更多的布线层。

图3

3.此示例显示了一个在信号走线位置方面支持良好布线的布局。

图4

4.此示例显示了一个布局/平面图,这将使布线更加困难且成本更高,因为它需要更多的物理位置用于信号走线。

虽然从这个角度看设计似乎很明显,但有时其他PCB要求(例如连接器放置)将迫使发生不好的放置。仅考虑原理图的电气连接时,查看PCB的平面图可能会显示出可能不直观的问题。

作为基于SoC的设计中的一般规则,逃逸SoC的球阵列是首要考虑的问题,不仅对于信号,而且对于电源和接地连接。如果低成本PCB是一个重要的限制因素,那么从SoC封装上的所有焊球布线信号的方式就会受到限制。例如,在15mm x 15mm x 0.8mm的封装中,大多数球阵列都已安装,如果将支撑组件放置在不利的位置或与SoC距离较远的位置,则布线逃逸可能会更加困难。计划的板子尺寸。

无论出于何种原因将设计分成多块PCB都会增加复杂性。如果PCB约束要求使用多块PCB,则必须进行额外的规划和验证,以维持关键接口上的信号完整性并确保正确的机械间隙。

这是使用早期原型来支持空间成分分析并验证不会产生生产问题的另一个示例。在物理结构中引入第二块(或更多块)板会增加另一个维度,即组件可能不会在单个PCB解决方案上相互干扰。

应急准备

尽管现代组件已变得万无一失,但研究PCB设计中计划的组件以很大程度地减小对端板构建的影响仍然很重要。有些组件的包装细节不明显。尽管许多IC和分立元件都有标准封装,但某些封装具有特殊的属性,使它们容易受到焊接错误和其他组装错误的影响,例如非标准的引脚焊盘几何形状或分配。例如,在图5中,瞬时按钮开关乍一看将使针脚1和2短路在一起,而针脚3和4基于每对针脚的接近程度短路。但是数据表中的器件原理图表明实际上已连接了其他引脚。

图5

5.该图显示了组件的引脚位置如何与引脚定义背道而驰。

使用具有此类不规则性的组件会给整个PCB设计流程带来更多风险。虽然可以补偿不规则性,但在有很多其他细节需要在生成用于PCB制造的图案之前进行验证和检查的情况下,很容易错过这些细节。

PCB可制造性的主要问题在于组件的选择。作为硬件板设计师,我们通常专注于板细节。但是,如果所选设备的可用性存在问题,那么有关组件的简单细节(例如,用于设计的所选组件的产品寿命)可能会给PCB构建计划带来灾难。

更糟糕的情况是,如果没有其他设备或第二个来源,则该组件不再可用。然后通常必须重新设计PCB,以容纳替换组件。重新设计的另一个明显问题是检查新组件是否会导致旧组件已经解决的任何新问题。如果SoC与某些外部设备紧密耦合,则基于SoC的设计可能会有其他要求。

如前所述,PCB材料也可能对基于SoC的设计的可制造性产生重大影响。PCB本身的结构将由一些总体设计要求所决定,例如成本,尺寸,PCB外形等。正常的PCB要求与整体PCB物理尺寸有关时,要求越小越好。较小的物理尺寸会减少用于布线和放置元件的空间。在考虑因任何原因导致的布局和布线问题的解决方案时,简单的更改(例如,仅在PCB上添加更多的层)乍看起来似乎很有吸引力,但可能不是正确的答案。

考虑一个带有中央SoC处理器的120 x 95毫米PCB,该处理器采用17 x 17毫米封装,并带有一个0.65毫米间距的625球阵列。板上还会有其他器件,其中有些可能是BGA型封装。PCB正确布局的主要挑战将是SoC的布线问题。根据设计中SoC实际使用的信号数量,将每个SoC引脚布线到PCB上的目标可能很困难。

尽管信号是布线工作的一方面,但配电网络(PDN)同样重要。在当今的现代SoC处理器中,功率传输对于很大程度地减少难以诊断的不稳定运行时故障非常重要。这是一种解决方案不适用于所有实施的地方。如果成本和进度都没有问题,那么常见的解决方案就是增加层数并使用更复杂,更小的通孔类型(图6)。


图6

6.使用内部层布线信号的能力是使用较小的盲孔和掩埋过孔的重要好处。但是,应在此利益与电路板的额外成本之间进行权衡。

当整体PCB尺寸缩小时,这种方法通过减小信号和电源垂直过渡区(过孔)的物理体积并增加可布线性,有效地补偿了空间上XY总体可布线区域和体积的减少(记住,布线采用3D方式)。 Z轴面积。不利的一面是,每增加一对额外的层对都会增加PCB成本和时间。

此外,由于需要在外层的制造粘附之前进行钻孔,所以使用除特定直径和焊盘尺寸的通孔以外的任何东西都会增加制造步骤。而且,由于物理尺寸的直径小而使用非机械钻头会增加PCB的制造成本。在过去的十年中,该行业的进步很大,但是具有微通孔和盲孔/埋孔的12层板的成本仍然与仅具有通孔的四层或六层板的成本不相等。

测试与大局

应分别评估每个设计,以确定好的解决方案。例如,SoC通常会运行大量的布线,并且还需要相当数量的电源网络平面,部分平面或宽走线。通常,添加层将有助于布线从SoC逃脱,但是从最终成本的角度来看,带有额外层的PCB的额外成本可能无法忍受。

指定和跟踪PCB的特定放置和信号设计约束很重要。指定这些约束的过程可能会冲销一些可以尽早解决的竞争需求。至少,这些限制有助于以小组型组织中更主动的姿态指导布局。这确实有助于显示关键信号,例如DDR3MIPI,以太网RGMII等,以及在放置和布局期间如何确定这些信号的优先级以改善其迹线的信号完整性。

毕竟,由于某些接口的某些信号完整性要求,PCB物理区域将具有某些主要的布线位置,这些位置会由于层的特性而导致特定组件之间的距离较短,参考平面位置较大且波前飞行时间更快。通过将关键网络作为目标来占据这些主要的布线位置,由于串扰问题,电源噪声问题,组件容限问题等等,最终的PCB具有较低的PCB故障风险。

即使设计被证明可以在规格范围内起作用,也不能保证每个生产单元都可以在该规格范围内起作用。由于与构建基于SoC的现代PCB相关的许多变量,诸如组件公差,焊接事故,组装错误,PCB制造错误,布局问题和普通人为错误等项目可能会导致生产PCB产生良率问题。

因此,寻求高成品率最终PCB的正确PCB开发过程应包括某种类型的诊断测试。这些测试应在包装和运输之前在每个生产板上进行。SoC处理器类型的板包括多个异构接口,这些接口均具有特定的功能要求。因此,诊断测试应包括针对这些接口中的每个接口的一个或多个测试。知道并明确定义PCB的要求在这里可以带来很大的好处,因为它使理解,定义和编写使PCB在制造时达到通过/不通过状态所需的测试变得容易。

通常,开发这些诊断测试的步骤包括:

①定义需要进行功能测试的重要接口/电源

②根据电路要求确定这些测试的优先级。

确定每个测试所需的测试范围。

开发测试。

检查原型板上的测试。

生成诊断测试的优化运行版本。

可以基于已知要求和特定板的感知风险来调整测试良率覆盖率。通常,由于板诊断测试开发成本和生产时产生的运行时成本,硬件板的100%测试覆盖率在财务上不可行。因此,如果设计已被证明可以工作,则由于设计固有的风险较低,因此在生产测试中无需寻求完整的硬件测试范围。

尽量不要由与开发板载SoC生产软件相同的软件开发人员来编写诊断测试。起初,这似乎适得其反。由于软件开发人员从他们的工作中了解硬件,因此可以肯定的是,通过使用它们编写硬件板诊断测试,可以节省时间和资源。但是,实际上情况恰恰相反。

有时,对硬件非常熟悉的软件设计人员可能会盲目使用与生产软件/固件相同的软件实现,并将其放入诊断测试代码中。诊断测试的目的是消除潜在的硬件问题。因此,由正常软件开发团队以外的其他人编写这些测试将允许测试软件以不同的方式控制硬件,即使在加载和运行生产软件之前,这些方式也可能会确实显示出潜在的问题。

这是另一个领域,拥有早期原型板非常重要,因为它们可以用于早期诊断测试开发,从而改善了硬件设计,因为早期测试可以消除硬件设计中的早期错误或PCB要求的不正确实现。早期的原型板还为诊断测试提供了额外的好处,即在最终获得功能齐全且经过测试的PCB时,可以作为软件团队的故障排除指南,因为如果开发过程中遇到问题,它们可以参考这些测试。

这些测试通常在没有操作系统的情况下编写,以确保它们具有更少的依赖性并提供更简单的硬件管理技术。诊断测试开发的最终一步是将测试优化为可以在每个生产板上运行的运行时可执行代码。

至关重要的是不要跳过此步骤,因为生产板的单位测试时间应最小化,因为每秒钟的测试时间要花费一定的时间。尽管如此,诊断测试还是值得开发和执行的成本,因为它可以提高PCB的良率。此外,由于可以观察到有关设计的重要测试时间数据并将其发送到PCB设计人员,以更新PCB的下一版本,因此可改善整个PCB的可制造性。

结论

从这些示例可以看出,PCB开发过程中的几个步骤将对PCB的可制造性产生更大的影响。了解这些问题并开发出一种将其潜在影响最小化的方法,可以大大提高项目设计阶段的PCB可制造性。


请输入搜索关键字

确定