1. Wrapper Cell与Wrapper Chain基础概念
在芯片测试领域,Wrapper Cell和Wrapper Chain是DFT(Design for Test)技术中的核心组件。简单来说,Wrapper Cell就像给芯片的每个输入输出端口安装的"测试开关",而Wrapper Chain则是把这些开关串联起来的"测试通道"。想象一下你家客厅的灯光系统:每个灯泡相当于一个Wrapper Cell,而串联它们的电线就是Wrapper Chain。当你想检查某个灯泡是否正常时,不需要拆开整个天花板,只需要通过电线逐个测试即可。
Wrapper Cell主要分为两种类型:
- Shared Wrapper Cell:复用设计中原有的触发器(Flip-Flop),不增加额外硬件开销
- Dedicated Wrapper Cell:专门为测试设计的独立单元,提供更完整的控制功能
在实际项目中,我经常遇到工程师纠结该用哪种Wrapper Cell。我的经验是:如果项目对芯片面积极其敏感,比如可穿戴设备芯片,优先考虑Shared类型;如果是汽车电子等对可靠性要求高的场景,则建议使用Dedicated类型,虽然会多占用5-10%的面积,但测试覆盖率能提升20%以上。
2. Internal Mode工作原理解析
2.1 内部测试模式配置
Internal Mode就像给芯片做"胃镜检查"——专门检查模块内部的逻辑是否正确。在这种模式下,测试数据流向是这样的:
- 输入Wrapper Chain像传送带一样把测试数据(Launch)送入待测模块
- 模块内部逻辑处理这些数据
- 输出Wrapper Chain再从模块内部捕获(Capture)响应数据
配置时有个关键细节:如果是Shared Wrapper Cell,它的扫描使能信号SE是由SCAN_EN和int_ltest_en两个信号做或运算控制的。这就好比你家有两个电闸,只要任意一个合上,灯泡就会亮。我在某次28nm工艺项目中发现,如果这个或门时序没做好,会导致测试数据错位,后来通过插入缓冲器解决了这个问题。
2.2 典型应用场景
最适合使用Internal Mode的场景包括:
- 新开发模块的功能验证
- 工艺制程迁移后的逻辑确认
- 时钟域交叉(CDC)检查
去年我参与的一个蓝牙SOC项目就遇到典型案例:射频模块在Internal Mode下测试正常,但系统集成后通信不稳定。后来发现是Wrapper Chain配置时漏掉了两个关键控制信号,导致部分边界寄存器没被覆盖。这个教训告诉我们:Internal Mode虽然强大,但配置必须完整。
3. External Mode工作原理解析
3.1 外部测试模式配置
External Mode则像是"关节检查",重点测试模块之间的连接接口。它与Internal Mode正好形成镜像:
- 输入Wrapper Chain改为捕获(Capture)来自上级模块的数据
- 输出Wrapper Chain变为向接口逻辑发送(Launch)测试数据
这里有个容易混淆的点:Shared Wrapper Cell的SE信号在External Mode下是由SCAN_EN和ext_ltest_en控制的。我建议在RTL编码时就做好清晰注释,否则后期调试会非常痛苦。曾经有个项目因此耽误了两周工期,最后是通过在测试模式寄存器中增加明确的状态标识才解决的。
3.2 典型应用场景
External Mode特别适合以下情况:
- 系统级集成测试
- 接口协议一致性验证
- 信号完整性检查
最近一个汽车MCU项目就展示了External Mode的价值:在测试CAN总线接口时,发现某些特定报文组合会导致信号畸变。通过External Mode的精准控制,我们定位到是PHY芯片驱动强度不足的问题,避免了潜在的召回风险。
4. 两种模式的对比与选型指南
4.1 技术参数对比
| 对比维度 | Internal Mode | External Mode |
|---|---|---|
| 数据流向 | Launch输入/Capture输出 | Capture输入/Launch输出 |
| 测试重点 | 模块内部逻辑 | 模块间接口 |
| SE信号生成 | SCAN_EN | int_ltest_en |
| 典型覆盖率 | 85%-95% | 70%-85% |
| 配置复杂度 | 中等 | 较高 |
4.2 实际选型建议
根据我参与过的20+个芯片项目经验,给出以下实用建议:
- 初期验证阶段:先用Internal Mode确保各模块自身功能正常,再使用External Mode检查接口
- 问题定位阶段:如果系统测试失败,先用External Mode排除接口问题
- 回归测试阶段:建议两种模式交替运行,某次测试中同时启用两种模式发现了时钟偏移问题
有个容易忽视的细节:在7nm以下工艺中,由于信号衰减更严重,建议External Mode测试时适当降低扫描频率。我们在某个5nm项目中就因此避免了误报问题。
5. 常见问题与调试技巧
5.1 典型故障现象
- 数据错位:通常由于SE信号时序不满足
- 覆盖率不足:检查Wrapper Cell是否覆盖所有关键信号
- 测试时间过长:优化Wrapper Chain长度,某项目通过分组策略将测试时间缩短40%
5.2 实战调试方法
- 先确认Wrapper Cell类型(Shared/Dedicated)
- 检查控制信号生成逻辑
- 使用波形工具抓取Launch/Capture时序
- 必要时插入测试点(Test Point)
最近帮助客户解决的一个典型案例:测试某图像处理芯片时,External Mode下始终有4个寄存器无法捕获数据。最终发现是电源岛(Power Island)划分导致测试电压不足,通过修改测试序列解决了问题。
6. 进阶应用与优化
6.1 混合模式配置
在某些复杂场景下,可以同时启用两种模式的部分功能。比如:
- 输入链用Internal Mode
- 输出链用External Mode
这种配置特别适合带嵌入式存储器的模块测试,我们在LPDDR5接口测试中就取得了不错的效果。
6.2 低功耗测试技巧
对于移动设备芯片:
- 分区域唤醒测试
- 动态调整扫描频率
- 采用脉冲式供电策略
实测数据显示,这些技巧可降低测试功耗30%以上,某智能手表芯片因此延长了50%的续航时间。