拓冰建站拓冰建站
首页 / 资讯中心 / 正文

Zuken Design Suite DFT插件:板级可测试性设计与DFT DRC实战

做DFT的朋友应该都有这种体会板子画完、布线差不多关场的阶段最怕的不是某根走线绕不过去而是准备测试方案时发现测试点不够、位置不对、间距违反治具规则。以前这些检查要么靠人工翻版图要么等发到测试厂那边拿治具数据回来再改一来一回基本就是一两天。所以当我看到Zuken Design Suite开始加入DFT插件时第一反应是板级可测试性设计终于不用再靠“事后补救”了。这个插件解决的核心问题就是把过去零散的测试点检查、器件访问约束、DRC规则核对直接迁到PCB设计环境里让DFT工程师和硬件工程师在同一套数据上工作。适合正在做板级DFT、SCAN测试、ICT治具设计或者想规范测试点管理的团队参考。我后面会从插件的设计逻辑、规则配置、实操流程、常见坑和团队落地方案几个角度展开。这里说的DFT不是IC设计里的ATPG和Scan Chain综合而是板级DFT也就是面向PCB制造和测试的可测试性设计重点盯的是测试点、探针访问、边界扫描这些环节。1. 为什么要在Zuken Design Suite里做DFT1.1 板级DFT的日常痛点板级DFT工作如果用一句话概括就是在PCB设计阶段为后续的ICT在线测试、飞针测试、边界扫描测试留好“接口”。这里的接口不是软件API而是物理上的测试点、过孔、焊盘以及它们之间的电气连接关系。传统流程里最大的问题不是“不做DFT”而是DFT检查被放到了设计后期。很多团队的做法是PCB布局布线完成Gerber发出去然后DFT工程师拿到ODB或CAD数据在第三方工具里做测试点覆盖率分析。一旦发现测试点缺失或间距不够就得回到原设计里改改完重新出光绘重新评审。我就见过一个项目因为BGA内圈少了一排测试点导致ICT治具探针没法扎到关键信号硬生生把测试方案从ICT改成飞针单板测试时间从几秒变成几分钟量产成本直接上去了。这种痛点的根源是设计工具和DFT工具分家了。设计工程师关心的是布通率和EMCDFT工程师关心的是探针能不能扎到、扎了会不会短路。两边用的不是同一份实时数据沟通全靠导出导入自然会漏。1.2 插件化让DFT规则跟着设计走Zuken Design Suite这次以插件形式加入DFT能力我觉得思路是对的。它不是另外做一套独立工具而是把DFT检查能力嵌进设计环境让规则检查可以随时跑而不是等到最后统一查。插件的好处在于“按需启用”。PCB设计不是所有人都在意DFT模拟板、射频板可能只需要简单的测试点检查数字大板才需要完整规则集。如果用插件形式部署设计团队可以根据项目类型加载不同的DFT模块也不需要强迫每个工程师都去学一套新软件。而且插件更新迭代快DFT规则库变了单独升级插件就行不用动整个Design Suite的版本。我实际用下来最大的感受是检查结果可以直接定位到PCB编辑器里的具体坐标和网络双击错误信息就能跳到对应位置。这种“所见即所得”的体验比脱离设计环境看报告要直观得多。2. DFT插件到底检查什么2.1 DFT DRC规则的核心维度说到DFT插件绕不开的就是DFT DRC。这个DRC不是PCB设计里那种“走线间距”“过孔到焊盘”的物理规则而是专门针对可测试性的规则检查。两者有交集但关注点完全不同。板级DFT DRC最常见的是测试点相关规则测试点焊盘最小尺寸要保证探针能稳定接触。通常要求成品焊盘直径不小于0.8mm到1.0mm具体看治具探针规格。测试点到元件本体、到高大器件、到板边的距离。探针扎下去的时候治具上的探针套筒和导向孔会占用空间旁边元件太高会挡住治具。同一网络上的多个测试点间距。如果间距太小探针同时扎下去可能因为应力叠加把板子压弯。测试点禁止区域比如金手指、螺丝孔、散热片下方、BGA背面禁布区。测试点类型是焊盘、过孔还是专用测试盘。过孔做测试点要小心孔径太小的过孔探针不一定能可靠接触。Zuken Design Suite里的DFT插件把这些检查做成了可配置的Rule Deck。你可以针对不同产品线维护不同规则比如消费电子板允许用0.8mm测试盘军工板可能要求1.0mm以上。规则不是写死的是一套带参数条件的判断逻辑。2.2 存储器件和总线访问的RAM Rule热词里提到的dft drc ram rule指的是DFT规则里针对存储器件的一种约束。板级DFT场景下RAM、Flash、DDR这类器件一直是测试难点。原因很简单这些器件一般是BGA或大的贴片封装引脚密度高而且很多信号是总线形式地址线、数据线成组出现。ICT治具想直接扎到存储器件引脚物理上很难。所以板级DFT对存储器件往往采用“间接测试”思路通过边界扫描芯片或CPU访问存储器而不是用探针直接测。RAM Rule在DFT DRC里的作用是识别出DDR、SRAM、NOR Flash这类器件然后自动套用一组特殊约束。比如存储器件周围一定范围内不要求强制添加测试点因为本来就扎不到存储器件的数据/地址线如果在中间层走线检查是否至少有一端可以访问对DDR等高速总线禁止在线上额外添加测试点或桩线避免影响信号完整性对可编程器件配置链路检查是否预留了JTAG访问链路。我遇到过最典型的情况是设计里DDR3走线拉得很长测试工程师想在所有地址线上加测试点结果SI仿真发现加了测试盘之后信号眼图质量明显下降。后来在DFT规则里加上RAM Rule对这类总线自动豁免测试点要求同时要求切换成边界扫描方案才算把测试和信号完整性之间的冲突解决掉。2.3 测试点插入和覆盖率计算除了检查已有设计DFT插件通常会提供“补充测试点”的功能。Zuken Design Suite里的插件也带了这个能力当某个网络没有可用的物理测试点时插件会建议在某个位置插入一个测试点焊盘并且自动避开禁止区域和已有器件。这里有一个很重要的概念叫测试点覆盖率简单说就是所有需要测试的网络里有百分之多少能通过物理探针接触到。覆盖率不是越高越好但低于一定阈值ICT测试方案就得改。比如消费电子产品通常要求95%以上军工和汽车电子可能是98%甚至更高。插件在计算覆盖率时会把同一网络上的焊盘、过孔、测试点都算进去。一个网络只要有一个可扎的位置就算可测。这个逻辑不复杂但需要设计数据准确尤其是过孔是否被阻焊覆盖、底层是否被元件遮挡这些信息必须来自当前设计文件而不是用户手工维护的Excel。3. 实操过程从加载插件到跑通一次DFT DRC3.1 加载插件和准备设计数据先说明一下Zuken Design Suite的不同产品版本菜单名称略有差异我下面说的流程在eCADSTAR和CR-8000系列里基本通用具体位置可能不太一样但思路一致。插件安装完成之后第一步是在Design Suite的插件管理器里启用DFT模块。启用之后通常会在PCB编辑器里增加一组DFT相关的菜单命令比如“DFT Rule Setup”“Run DFT DRC”“Test Point Report”等。正式开始检查之前我强烈建议先做一次数据清理。DFT DRC的准确性非常依赖设计状态板框是否闭合、铺铜区是否更新、元件高度信息是否完整、BGA封装是否有实体模型。尤其是元件高度治具干涉检查需要知道每个器件高出板面多少。很多DFT规则误报都是因为元件高度没填或者填了默认值。我自己的习惯是先把所有元件的高度属性过一遍至少把最高器件和测试点禁止区域附近的器件高度确认掉。这个环节花不了多少时间但能省掉后面大量误报排查。3.2 配置DFT Rule DeckDFT Rule Deck通常是一份表格化的规则配置里面每一条规则都有对象范围、参数阈值和动作。保存之后可以做版本管理。下面是一个简化后的规则片段方便说明规则的结构RULE TestPoint_SolderPad OBJECT_TYPE: TEST_POINT CONDITION: PAD_DIAMETER 0.8mm ACTION: WARNING MESSAGE: Test point pad diameter below 0.8mm, check fixture probe spec END_RULE RULE TestPoint_Keepout OBJECT_TYPE: TEST_POINT CONDITION: DISTANCE_TO_BOARD_EDGE 5mm ACTION: ERROR MESSAGE: Test point too close to board edge END_RULE RULE RAM_Bus_TestAccess OBJECT_TYPE: COMPONENT CONDITION: COMPONENT_TYPE IN (DDR, SDRAM, SRAM, NOR_FLASH) ACTION: EXEMPT_TP_ON_DATA_BUS MESSAGE: Memory device bus exempt from physical test point requirement END_RULE实际工程里的规则会比这复杂比如间距检查要同时考虑元件本体高度和探针套筒直径。设置规则时有几个参数值得重点确认探针直径决定了最小测试点尺寸。治具探针常见的有100mil、75mil规格100mil探针一般要求测试盘直径不小于0.9mm。测试点间距包括测试点到测试点、测试点到元件、测试点到板边三组值。我见过不少设计测试点尺寸都对但两个测试点之间的距离小于探针套筒外径导致治具没法同时安装两个探针。板边禁布距离。目前电子产品的板边空间很紧张USB、Type-C接口、按键都在边上测试点很容易被挤到板边。建议把板边规则单独设严一点比如距离板边小于3mm直接报ERROR。这些参数从哪里来最好是找测试代工厂要治具设计规范。每个厂的探针规格、套筒尺寸、最小扎点距离都有差异DFT规则应该和实际合作厂商对齐。如果还没有确定测试厂商可以先按IPC-9850或者行业通用值来配置。3.3 运行检查和处理结果规则配置好之后运行DFT DRC一般就是点一个按钮的事。检查速度取决于板子规模和规则数量常规的4层板、两三千个网络基本几十秒内能跑完。跑完之后插件会生成一份报告列出每条违规的类型、坐标、涉及的网络和规则描述。处理DRC结果的时候我的经验是优先级倒着看先看ERROR再看WARNING最后看信息级提示。ERROR通常意味着物理上不可能实现测试比如测试点被PCB安装孔占掉、BGA芯片正下方有测试点WARNING一般是参数裕量问题比如测试盘刚好比规则要求小0.02mm这种可以根据探针实际情况决定要不要豁免。插件一般还支持“一键跳转定位”。点击违规项设计视图会放大到对应位置。这时候我的习惯是直接在这个视觉上下文里判断旁边有没有其他器件干扰留的位置够不够有时候规则检查因为数据不完整报错但实际板子上空间足够这种情况下我会在规则里加豁免区域而不是盲目改设计。跑完一次DRC之后还有一件重要的事生成测试点坐标文件。Zuken Design Suite的DFT插件通常能导出CSV或TXT格式的测试点清单包含网络名、坐标、层、测试点类型等字段。这个文件可以直接发给测试厂做治具编程和飞针程序不需要再人工从图纸里抄坐标了。我建议拿到文件后抽几个点用Fab格式叠图确认一下坐标基准有些工具导出的坐标原点和板框原点不一致这个坑我踩过两次。4. 常见问题与排查技巧实录4.1 插件加载失败或命令不可用DFT插件加载不成功是大家第一次使用最容易遇到的问题。常见原因有三个第一插件版本和Design Suite主程序版本不匹配。EDA软件的插件机制和普通软件插件类似主程序小版本升级后如果插件没有跟着更新可能会因为接口变化导致加载失败。排查方法很简单在插件管理器里查看状态如果显示版本不兼容就重新安装对应版本的插件包。第二许可证模块缺失。DFT功能通常需要额外的License不是所有Design Suite许可都包含。如果你在菜单里找不到DFT相关命令先不要怀疑插件坏了直接查许可状态。第三设计数据库版本太老。有些老版本的PCB设计文件在打开时插件可能无法正确读取里面的元件高度、测试点属性等扩展信息。可以把设计文件另存为新格式再试或者运行一次“数据库修复”。4.2 DRC误报和规则阈值调整DFT DRC跑完报告里几十条违规仔细一看三分之一是误报这种情况我见得太多了。常见误报来源如下元件高度信息缺失导致干涉检查认为所有器件都比探针高实际上那些只是普通的矮阻容件。测试点属性丢失有些焊盘既当正常焊盘又当测试点用但没有标注测试点属性规则就漏掉了这个可测网络。过孔和焊盘的关系。系统可能把某个过孔识别为测试点但实际这个过孔在背面被另一个元件完全覆盖探针根本扎不到。这个问题做手工检查很难发现依赖规则引擎正确判断元件覆盖关系。遇到误报率高的情况我建议不要急着改设计。先导出所有违规清单按网络和坐标分组看看是否有系统性原因。比如如果是某个区域大面积报错大概率是禁布区或元件高度图层没弄对如果是某个封装的所有引脚都报错可能封装里缺少高度属性。规则阈值也需要根据实际情况迭代。比如最小测试点尺寸设成0.8mm结果设计里有用0.7mm焊盘做测试点的传统这就要和测试厂确认探针是否支持。我个人的原则是物理上能用的规则里就放行不能用的一律卡死。规则是给流程服务的不是给设计添堵的。4.3 RAM Rule相关的特殊处理存储器件相关的DFT检查最容易出问题的地方在总线的测试方案选择。RAM Rule如果配置不当要么把本来应该加测试点的网络错误豁免了要么在高速总线上硬加测试点导致SI问题。我碰到过一个实际案例设计里有一颗DDR4颗粒地址线全部走内层表层没有空间加测试点。DFT插件根据RAM Rule自动豁免了这些网络覆盖率卡在92%低于项目95%的目标。后来我们通过边界扫描链路从CPU端访问DDR把覆盖率补到了96%。这个过程里DFT插件的作用是准确识别出哪些网络属于DDR总线范围而不是把DDR电源、地、控制信号也一股脑豁免。如果你打算用插件来做RAM Rule豁免我建议在规则里把豁免范围限定为纯数据线和地址线时钟、复位、片选这类控制信号还是要保留测试点要求。因为这些信号一旦出问题整块板子可能都起不来测试时必须有物理探测手段。4.4 覆盖率报告和跨部门沟通DFT报告不只是给工程师看的还会给项目经理、测试部门、甚至客户看。所以覆盖率报告的可读性很重要。Zuken Design Suite的DFT插件导出的报告里通常会包含总网络数、可测网络数、不可测网络数、按原因分类的明细。如果要做跨部门汇报我一般把它转成一张总表按“物理不可达”“规则禁止”“器件遮挡”“其他”几个维度分类。这样开会的时候大家一眼就能看出覆盖率缺口的主要原因而不是在一片密密麻麻的坐标里翻找。另外提醒一句覆盖率统计口径一定提前对齐。设计工具的覆盖率算的是“理论可探”但测试厂在治具上会额外考虑探针布局冲突最后实际覆盖率可能低几个点。所以自己内部跑出来92%的覆盖率到测试厂那边可能只有90%。该留的余量要留够。5. 团队落地和工具链整合的一些建议5.1 在现有流程里引入DFT插件的过渡策略如果你的团队之前没有在Design Suite里做过DFT检查我建议不要一下子上全套规则而是分三步走。第一步先跑默认规则。插件装上之后用默认的DFT DRC规则全板跑一遍不追求规则完全符合自己的标准先看看当前设计文件的数据质量。很多老设计文件从原理图到PCB的流程里从来没有维护过测试点属性第一次检查结果通常惨不忍睹。这时候重点不是改图而是把规则误报和真实缺失分开。第二步只挑一个正在量产的项目做试点。把项目跑完DFT DRC之后让测试厂实际做一次治具方案对比插件报告的覆盖率和治具厂的评估结果。这个步骤是校准规则阈值的最佳时机你会发现插件里很多参数都能从治具厂的设计规范里找到对应值。第三步固化成项目节点检查项。在PCB设计流程里把“DFT DRC通过”设为投板前的必要条件。以前是设计完再检查DFT现在是检查不过不能投板。这一步最需要管理支持因为意味着DFT规则开始约束设计进度但长远看省下的测试返工成本远远大于前期调整的投入。5.2 与测试仿真和治具设计工具的衔接DFT插件不是万能的它解决的是“设计数据里能不能测”的问题后续的ICT治具设计、飞针路径优化、边界扫描测试向量生成仍然需要专门工具。我在实际工作里是这样安排的Zuken Design Suite里用DFT插件完成设计阶段的规则检查和测试点插入导出测试点文件和ODB数据然后把这些数据交给测试仿真工具做治具探针布局和覆盖率复核边界扫描部分交给专用的边界扫描工具。整个链路里PCB设计工具是数据源头DFT插件保证源头数据符合DFT要求后面的工具才有意义。有一点需要注意DFT插件导出的测试点文件字段命名最好不要自己随意改。治具设计软件往往有固定的字段映射如果你的CSV里网络名大小写不一致、坐标单位混用后期对接非常痛苦。建议一开始就约定统一模板。5.3 插件规则库的版本管理DFT规则不是一劳永逸的。随着产品类型丰富、测试厂商变化规则需要持续调整。我见过一些团队规则存在个人电脑里换个人来做项目规则就变了检查结果完全对不上。我的建议是把DFT Rule Deck当代码一样管理用版本控制工具管理起来。规则文件的每次变更都记录变更原因比如“修改测试点最小尺寸以适配新探针”保持历史可追溯。这样万一量产阶段出现测试问题可以回溯当时用的规则版本判断是设计问题还是规则失配。5.4 一些个人体会最后分享一点自己的感受。DFT插件这类工具看起来只是把检查规则塞进了设计环境但真正落地之后改变的其实是团队的协作节奏。以前DFT工程师和硬件工程师之间的沟通靠邮件和Excel现在靠的是同一套设计数据里的DRC结果反馈周期从几天缩短到几十分钟。从我实际使用的经验看这个插件最适合的场景是产品线多、测试方案迭代快、且DFT工程师疲于应付事后救火的团队。如果你是单板测试量不大、产品结构简单的小团队可以先从最基本的测试点检查用起不要一上来就追求复杂的RAM Rule和覆盖率统计。工具是服务流程的DFT这件事的本质还是让产品在制造之后能被可靠地验证而不是在测试环节返工推倒重来。
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门