尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

Cadence Allegro 0402封装设计全流程:从IPC标准到实战避坑

Cadence Allegro 0402封装设计全流程:从IPC标准到实战避坑 1. 从零开始为什么0402封装值得单独拎出来讲如果你刚开始接触Cadence Allegro或者刚从Altium Designer这类工具转过来可能会觉得画一个0402电阻电容的封装有什么难的不就是两个焊盘加一个丝印框吗网上下个库直接用不就好了我刚开始也是这么想的直到自己亲手在Allegro里从头到尾做了一遍才发现这里面门道不少踩的坑一个接一个。网上那些所谓的“标准库”焊盘尺寸五花八门丝印框有的压在焊盘上有的离得太远装配层更是经常缺失。直接拿来用轻则影响焊接良率重则导致整板返工。所以我决定把这个最基础、也最考验基本功的0402封装设计过程从头到尾、掰开揉碎了写下来。这不仅仅是一个“操作步骤记录”更是一次对Allegro封装设计底层逻辑的梳理。0402封装麻雀虽小五脏俱全它涵盖了表贴封装设计的所有核心环节焊盘栈Padstack的定义、封装符号Package Symbol的绘制、各层焊盘层、丝印层、装配层、阻焊层、钢网层的规范以及设计约束的考量。搞懂了0402再去做0603、0805甚至更复杂的QFN、BGA你会发现思路是相通的只是复杂度增加了而已。本文的目标是让你看完之后能够独立、自信地在Allegro中创建出一个符合IPC标准、满足自家生产工艺要求的0402封装。我们会用到两个核心工具Pad Designer和PCB Editor。过程中我会穿插大量我踩过的坑和总结的经验比如焊盘尺寸到底该在IPC标准基础上加多少补偿、丝印线宽设多少才不会被PCB厂抱怨、如何设置原点能让布局工程师爱不释手等等。这些细节往往是官方教程里不会明说但又实实在在影响效率和质量的“干货”。2. 设计前的必修课理解0402封装的“标准”与“变数”动手画图之前我们必须先搞清楚我们要画的是什么。很多人一上来就打开软件这是不对的。设计封装尤其是像0402这种微小尺寸的第一步永远是查资料、定标准。2.1 解读0402的命名与实物尺寸首先“0402”这个代号是英制单位代表的是元件的长和宽0.04英寸 x 0.02英寸换算成公制大约是1.00mm x 0.50mm。但请注意这只是元件本体的尺寸我们设计焊盘时绝对不能直接用这个尺寸。你需要找到计划使用的具体元件的官方数据手册Datasheet。以某品牌0402电阻为例在其Datasheet的“包装信息”章节通常会提供一个推荐的焊盘图形Land Pattern和尺寸。这个推荐图形是芯片制造商根据IPC标准测试后给出的可靠性最有保障。如果找不到官方推荐或者你想建立一个自己公司的通用库那么就需要依据IPC标准。最常用的是IPC-7351《表面贴装设计和焊盘图形标准通用要求》。对于0402这类无引线芯片元件Chip ComponentsIPC-7351给出了三种密度级别的焊盘设计最密Density Level A、适中Density Level B、最疏Density Level C。最密级A用于产品空间极端受限且组装工艺水平极高的场合。焊盘尺寸最小对贴片和焊接精度要求苛刻。适中级B这是最常用、也最推荐的级别。它在焊接可靠性、工艺宽容度和空间占用之间取得了最佳平衡。绝大多数消费电子、工业控制产品都采用这个级别。最疏级C用于对可靠性要求极高、空间不敏感或者生产工艺相对粗糙比如手工焊的场合。焊盘尺寸最大焊接强度最高但占用面积也最大。对于我们这次设计我强烈建议选择IPC-7351 Density Level B作为基准。它的焊盘设计原则是焊盘宽度X等于元件端头宽度W或略小焊盘长度Y向外延伸以提供足够的焊接面积和工艺偏差余量。2.2. 确定我们的设计目标参数光有标准还不够我们需要把它转化成具体、可执行的数字。同时必须考虑PCB板厂的实际加工能力工艺补偿。假设我们基于一款常见0402电阻的数据手册和IPC-7351 Level B并咨询板厂后得到如下一组设计目标参数参数项描述计算/取值依据最终值 (mm)元件本体长度 (L)元件自身长度Datasheet典型值1.00元件本体宽度 (W)元件自身宽度Datasheet典型值0.50元件端头宽度 (b)元件金属化焊端的宽度Datasheet最小值-最大值范围取中值0.30IPC焊盘长度 (Y)焊盘在长度方向的尺寸IPC-7351 Level B公式计算0.60IPC焊盘宽度 (X)焊盘在宽度方向的尺寸通常取b的 0.9~1.0 倍0.28焊盘中心距 (P)两个焊盘中心之间的距离L (Y - b)/2 - 少许内缩 近似取L1.00焊盘补偿后宽度考虑蚀刻补偿后的实际绘制宽度X 板厂补偿值 (如0.05mm)0.33焊盘补偿后长度考虑蚀刻补偿后的实际绘制长度Y 板厂补偿值 (如0.05mm)0.65阻焊开窗尺寸阻焊层比焊盘每边大多少通常单边大0.05mm~0.075mm焊盘每边外扩0.05mm钢网开孔尺寸钢网层尺寸通常等于或略小于焊盘为防止锡珠常内缩0.05mm~0.1mm焊盘内缩0.05mm重要经验这里的“板厂补偿值”至关重要。PCB生产过程中的图形转移和蚀刻会导致实际铜箔图形比设计图形略小。这个差值因板厂工艺能力而异常见在0.05mm~0.1mm之间。务必在项目初期与你的PCB板厂确认这个补偿值并在设计所有焊盘时统一加上。我吃过亏按理想尺寸画完板子回来发现焊盘比预期小了一圈导致小尺寸元件焊接不良。所以我们最终要在Pad Designer里创建的焊盘其Regular Pad的尺寸就是0.65mm x 0.33mm的矩形。这个尺寸已经包含了IPC标准推荐值和工艺补偿。3. 核心工具实战用Pad Designer打造精准焊盘焊盘Padstack是封装的基石。在Allegro的体系里焊盘是一个独立于封装存在的对象可以被多个封装复用。我们用Pad Designer这个独立工具来创建和编辑它。3.1 Pad Designer界面与参数详解打开Pad Designer你会看到上下两个主要区域Parameters和Layers。第一步设置单位与精度在Parameters页签下Units: 选择Millimeter。我强烈建议在封装库这个层面统一使用公制mm因为元件数据手册和PCB厂工艺都用公制避免单位换算错误。Decimal places: 设置为2。对于04020.01mm的精度足够设置过高如4有时会导致无谓的计算和显示问题。第二步定义钻孔信息针对表贴焊盘因为我们做的是**表面贴装SMD**焊盘没有通孔所以钻孔相关参数必须清空或设为无效Drill/Slot hole: 保持None。Drill diameter: 清空或输入0。Plating: 选择Non-Plated。这里是新手巨坑很多人以为SMD焊盘选Plated错了。Plated是指孔壁镀铜用于通孔。SMD焊盘是表贴铜皮没有孔所以必须是Non-Plated。Offset X/Y: 保持0。第三步分层定义焊盘图形核心切换到Layers页签。这里是定义焊盘在不同层上表现为什么样子的地方。对于SMD焊盘我们主要关心以下几层BEGIN LAYER这是顶层Top Layer的布线层。SMD焊盘就放在这一层。Regular Pad: 选择Rectangle在Width和Height中分别填入我们计算好的尺寸0.65和0.33。Thermal Relief和Anti Pad对于SMD焊盘这两项必须设为Null。它们只对连接到负片Negative Plane的内电层或底层通孔焊盘有意义。DEFAULT INTERNAL对于纯SMD焊盘这一层通常也保持Null。因为信号不会从焊盘中间穿过。END LAYER对于单面贴装的0402元件只在顶层所以这一层也设为Null。如果是双面贴装的器件很少见才需要在这里也定义焊盘。SOLDERMASK_TOP这是顶层阻焊开窗层。阻焊漆会在这里开窗露出铜皮以便焊接。Regular Pad: 通常选择Rectangle尺寸要比BEGIN LAYER的焊盘每边大0.05mm~0.075mm。这是为了确保阻焊漆不会覆盖到焊盘边缘影响焊接。计算宽度 0.33 0.052 0.43mm长度 0.65 0.052 0.75mm。填入0.75和0.43。Thermal Relief和Anti Pad设为Null。PASTEMASK_TOP这是顶层钢网层。用于制作SMT贴片时刷锡膏的钢网。Regular Pad: 通常选择Rectangle尺寸等于或略小于BEGIN LAYER的焊盘。略小是为了防止锡膏过量导致焊接短路锡珠。一种常见做法是直接和BEGIN LAYER焊盘尺寸一致。更精细的做法是每边内缩0.05mm。这里我们采用保守策略设为一致0.65x0.33。Thermal Relief和Anti Pad设为Null。避坑提示在Layers列表里你可能还会看到SOLDERMASK_BOTTOM和PASTEMASK_BOTTOM。对于只在顶层放置的0402封装务必检查这两层是否被意外设置了图形。如果它们不是Null可能会导致PCB制版或钢网制作错误。最稳妥的方法是在右侧的Views窗口选择Single layer mode然后一层一层检查确保只有BEGIN LAYERSOLDERMASK_TOPPASTEMASK_TOP这三层有有效图形其余全是Null。第四步保存焊盘文件点击File - Save As给你的焊盘起个名字。命名最好有规则例如smd065r033表示SMD焊盘尺寸0.65x0.33mm矩形。保存后会生成一个.pad文件。这个文件需要放在你的封装库路径下并且后续在PCB Editor中调用。4. 在PCB Editor中构建完整的0402封装符号焊盘准备好了现在进入PCB Editor来组装完整的封装符号Package Symbol。4.1 创建新封装与参数设置启动PCB Editor选择File - New。在Drawing Type中选择Package symbol给文件起名例如R0402。注意保存路径要设置到你的封装库目录。进入界面后首先设置设计参数Setup - Design Parameters。Design页签确认Units为MillimeterSize根据封装大小选A或B就行。Text页签建议将Setup Text Sizes中的Width和Height都设为0.1mm左右这样丝印文字不会太大。4.2 放置焊盘与设定原点放置焊盘点击菜单Layout - Pins或使用快捷键F3前提是已设置好快捷键。右侧控制面板会打开。在Padstack栏点击浏览按钮找到你刚才用Pad Designer创建的.pad文件并选中。Connect和Mechanical一般保持默认。在命令窗口你会看到Enter pin location的提示。这时我们需要输入两个焊盘的坐标。关键计算我们之前定下的焊盘中心距P1.00mm。假设我们将封装原点设置在两个焊盘的正中心。1号焊盘坐标x -0.5 0向左偏移半个间距2号焊盘坐标x 0.5 0向右偏移半个间距在命令栏依次输入以上坐标并回车两个焊盘就放置好了。设定封装原点原点设置至关重要它影响后续布局时抓取元件的手感。对于两脚器件最佳原点就是两个焊盘的中心点也就是我们刚才假定的(0,0)点。使用Setup - Change Drawing Origin命令。在命令窗口输入x 0 0将原点设置到绝对坐标(0,0)。你也可以用鼠标捕捉到两个焊盘中间的那个点。经验之谈将原点设在几何中心能让布局工程师在旋转、对齐元件时非常顺手。千万不要把原点随便设在某个焊盘上或器件角落。4.3 绘制装配层与丝印层焊盘是电气的核心但封装的可读性和可制造性还需要其他层来定义。装配层Package Geometry / Assembly_Top这一层给装配图Assembly Drawing使用代表元件的最大外形轮廓。切换到Package Geometry层并选择Assembly_Top子层。使用Add - Rectangle命令或相应图标。绘制一个矩形将两个焊盘和元件本体都包含在内。对于0402可以画一个大约1.2mm x 0.7mm的矩形中心在原点。这只是一个示意轮廓比实际本体稍大即可。丝印层Package Geometry / Silkscreen_Top这是PCB板上白色的油墨用于标识元件位置和方向。切换到Package Geometry层并选择Silkscreen_Top子层。绘制外框使用Add - Line命令线宽建议设为0.15mm6mil。这是板厂工艺能稳定实现又不至于太粗的常用值。绘制一个“U”形框开口朝向1号焊盘我们通常定义1号焊盘为起始端。框体距离焊盘边缘至少保持0.15mm的间距防止丝印印到焊盘上影响焊接。添加极性或方向标记对于电阻通常不需要。对于电容尤其是钽电容需要在正极通常是1号焊盘旁边加一个“”号或涂实心点。使用Add - Text命令在Silkscreen_Top层添加。4.4 添加位号与值标签Labels封装需要被PCB设计识别所以要添加必要的文本标签。添加RefDes位号执行Layout - Labels - RefDes命令。在右侧控制面板确保Layer为Package Geometry / Silkscreen_Top也有人喜欢放在Assembly_Top看公司规范。在封装上方空白处点击放置文本。默认文本是*这没关系在PCB设计中它会自动替换为具体的R1、C2等。添加Device Type和Value可选同样使用Layout - Labels下的Device和Value命令。可以将它们放在丝印层但更常见的做法是放在Assembly_Top层因为丝印层空间有限。Device可以写R电阻或C电容Value可以写10K或0.1uF作为示意。4.5 设定封装边界Package Boundary这是17.2及以后版本强调的一个步骤用于DRC检查和3D显示。切换到Package Geometry层选择Place_Bound_Top子层。使用Add - Rectangle命令绘制一个矩形。这个矩形应该严格等于或略大于元件的最大实体外形包括焊盘和元件本体。对于0402可以画一个约1.6mm x 0.8mm的矩形完全覆盖焊盘和丝印“U”形框。作用在PCB布局时当两个元件的Place_Bound重叠DRC会报出间距错误防止元件在物理上重叠。5. 设计验证与封装库管理封装画完了别急着用。必须经过严格的检查。5.1 封装完整性检查焊盘核对用Tools - Padstack - Modify Design Padstack检查每个焊盘的层定义是否正确尺寸是否与设计目标一致。间距测量使用Display - Measure工具检查焊盘中心距是否为1.00mm焊盘边缘到丝印框的距离是否大于0.15mm。原点确认确保原点在封装中心。可以画两条过原点的辅助线看看是否对称。层显隐检查在Color Dialog中关闭所有层然后依次只打开Pin、Package Geometry/Silkscreen_Top、Package Geometry/Assembly_Top、Package Geometry/Place_Bound_Top检查每层图形是否正确、有无多余元素。5.2 创建焊盘与封装的调用关系在Allegro中封装文件.dra并不“包含”焊盘文件.pad而是“调用”它。这意味着如果你修改了.pad文件所有调用它的封装都会自动更新。这是Allegro库管理的一大优势。确保你的.pad文件和.dra文件放在同一个设计库目录或者在一个被padpath环境变量指定的路径下。在PCB Editor中打开封装使用Tools - Padstack - Refresh可以刷新焊盘信息。5.3 建立公司封装库规范个人学习可以随意但在团队中必须建立规范命名规范如R0402_65R33表示0402电阻焊盘0.65x0.33mm矩形。C0402_65R33表示电容。目录结构清晰的文件夹区分padstacks、symbols、devices等。检查清单为封装创建制定一份Checklist包括尺寸、层定义、原点、丝印间距等必查项。每个新封装入库前必须由另一人依据清单检查。画好一个0402封装可能只需要半小时。但理解背后的每一个参数为什么这么设如何规避生产风险如何让后续布局布线更顺畅这才是花时间学习的价值所在。下次当你从库中调用这个自己亲手打造的0402封装时心里会是踏实的。因为你知道从标准到补偿从焊盘到丝印每一个细节都经过了考量它不再是一个冰冷的图形而是一个可靠的生产单元。
返回列表