DFT内建自测试BIST技术详解:实现芯片自主测试能力

概述

内建自测试(Built-In Self-Test, BIST)是一种将测试功能集成到芯片内部的DFT技术。通过在芯片内部集成测试生成器和响应分析器,BIST技术能够在无需外部测试设备的情况下对芯片进行自主测试,显著提高了芯片的可测试性和测试效率。

本文将深入探讨BIST技术的基本原理、实现方法和应用实践,帮助读者全面理解BIST技术的关键要点。

BIST技术基本原理

2.1 BIST概念

BIST技术通过在芯片内部集成测试逻辑,实现以下功能:

自主测试生成:

  • 在芯片内部生成测试向量
  • 无需外部测试设备提供测试数据
  • 支持多种测试模式

自主响应分析:

  • 在芯片内部分析测试响应
  • 自动判断测试结果是否正确
  • 提供测试结果反馈

故障检测与定位:

  • 检测芯片内部的故障
  • 定位故障位置
  • 支持故障诊断

2.2 BIST架构

BIST架构主要包括以下组件:

测试生成器(Test Pattern Generator, TPG):

  • 生成测试向量
  • 支持伪随机测试和确定性测试
  • 控制测试向量的生成方式

响应分析器(Response Analyzer, RA):

  • 分析测试响应
  • 比较实际响应和期望响应
  • 判断测试结果

测试控制器(Test Controller):

  • 控制BIST的操作流程
  • 管理测试模式的切换
  • 协调各个组件的工作

被测电路(Circuit Under Test, CUT):

  • 需要测试的芯片内部电路
  • 接收测试向量并产生测试响应
  • 是BIST的测试对象

2.3 BIST工作流程

BIST的工作流程通常包括以下步骤:

初始化阶段:

  • 配置BIST控制器
  • 设置测试模式和参数
  • 准备测试环境

测试生成阶段:

  • TPG生成测试向量
  • 将测试向量施加到CUT
  • 记录测试向量的数量和类型

测试执行阶段:

  • CUT执行测试向量
  • 产生测试响应
  • RA分析测试响应

结果分析阶段:

  • RA比较实际响应和期望响应
  • 判断测试是否通过
  • 生成测试结果报告

清理阶段:

  • 停止BIST操作
  • 恢复芯片的正常工作模式
  • 输出测试结果

BIST实现方法

3.1 伪随机BIST

伪随机BIST是最常用的BIST方法,通过伪随机测试生成器生成测试向量。

原理:

  • 使用线性反馈移位寄存器(LFSR)生成伪随机测试向量
  • 伪随机测试向量具有良好的故障检测能力
  • 测试向量数量较少,测试时间短

LFSR结构:

         ┌──────┐    ┌──────┐    ┌──────┐
         │  FF0 │───►│  FF1 │───►│  FF2 │───► ... ──► 输出
         └──┬───┘    └──┬───┘    └──┬───┘
            │           │           │
            └───────────┴───────────┘
                       │
                    ┌──▼──┐
                    │ XOR │
                    └─────┘

特点:

  • 实现简单,面积开销小
  • 测试向量生成速度快
  • 故障检测效率高
  • 可能存在故障检测盲区

3.2 确定性BIST

确定性BIST通过确定性测试生成器生成特定的测试向量。

原理:

  • 使用ROM或PLA存储预计算的测试向量
  • 测试向量针对特定的故障模型进行优化
  • 故障检测覆盖率高

结构:

         ┌──────────┐
         │  ROM/PLA │───► 测试向量输出
         │(测试向量)│
         └──────────┘
              ▲
              │ 地址
         ┌────┴────┐
         │ 计数器  │
         └─────────┘

特点:

  • 故障检测覆盖率高
  • 测试向量针对性强
  • 面积开销较大
  • 测试向量生成时间较长

3.3 混合BIST

混合BIST结合了伪随机BIST和确定性BIST的优点。

原理:

  • 使用伪随机BIST进行初步测试
  • 对伪随机测试无法检测的故障,使用确定性测试
  • 平衡测试覆盖率和面积开销

结构:

         ┌─────────────┐
         │ 测试控制器  │───► 选择测试模式
         └──────┬──────┘
                │
       ┌────────┴────────┐
       │                 │
┌──────▼──────┐   ┌──────▼──────┐
│ 伪随机TPG   │   │ 确定性TPG   │
│   (LFSR)    │   │  (ROM/PLA)  │
└──────┬──────┘   └──────┬──────┘
       │                 │
       └────────┬────────┘
                ▼
         ┌──────────┐
         │  多路器  │───► CUT
         └──────────┘

特点:

  • 兼顾测试覆盖率和面积开销
  • 测试效率高
  • 实现复杂度适中

3.4 响应分析方法

BIST的响应分析方法主要包括:

签名分析(Signature Analysis):

  • 使用LFSR对测试响应进行压缩
  • 生成一个签名(Signature)
  • 比较签名与期望签名,判断测试结果

并行比较(Parallel Comparison):

  • 将测试响应与期望响应进行逐位比较
  • 检测响应中的错误位
  • 提供详细的故障信息

累加器方法(Accumulator Method):

  • 使用累加器对测试响应进行求和
  • 比较累加结果与期望结果
  • 判断测试是否通过

BIST设计流程

4.1 设计规划阶段

在RTL设计初期,需要制定BIST策略:

BIST范围确定:

  • 确定哪些模块需要BIST支持
  • 考虑模块的复杂度和可测试性
  • 制定BIST的实现方案

BIST类型选择:

  • 根据模块特性选择合适的BIST类型
  • 考虑测试覆盖率和面积开销的权衡
  • 确定BIST的测试模式

BIST参数设置:

  • 设置LFSR的长度和反馈多项式
  • 确定测试向量的数量
  • 设置响应分析器的参数

4.2 RTL实现阶段

在RTL代码中实现BIST功能:

TPG实现:

  • 实现伪随机测试生成器(LFSR)
  • 实现确定性测试生成器(ROM/PLA)
  • 确保测试向量的质量和多样性

RA实现:

  • 实现签名分析器
  • 实现响应比较逻辑
  • 确保响应分析的正确性

测试控制器实现:

  • 实现BIST的状态机
  • 支持测试模式的切换
  • 协调各个组件的工作

接口设计:

  • 设计BIST的控制接口
  • 提供测试启动、停止和结果查询功能
  • 确保BIST与外部系统的兼容性

4.3 综合与验证阶段

BIST实现完成后,需要进行综合和验证:

综合:

  • 使用DFT工具对BIST电路进行综合
  • 确保综合后的电路满足时序和面积要求
  • 优化BIST电路的性能

功能验证:

  • 验证BIST电路的基本功能
  • 测试各种测试模式的执行
  • 确保BIST电路不影响芯片的正常功能

故障模拟:

  • 使用故障模拟工具验证BIST的故障检测能力
  • 计算BIST的测试覆盖率
  • 分析未检测故障的原因

时序验证:

  • 验证BIST电路的时序约束
  • 确保BIST的操作满足时序要求
  • 考虑BIST时钟和系统时钟的关系

BIST应用实践

5.1 应用一:存储器BIST

存储器是芯片中最容易出现故障的部分,BIST技术在存储器测试中应用广泛。

测试场景:

  • 检测存储器的固定型故障
  • 检测存储器的地址解码器故障
  • 检测存储器的读写故障

测试方法:

  • 使用March算法进行存储器测试
  • 结合伪随机测试和确定性测试
  • 生成测试向量并分析响应

优势:

  • 提高存储器的测试覆盖率
  • 减少对外部测试设备的依赖
  • 降低测试成本

5.2 应用二:逻辑BIST

逻辑BIST用于测试芯片的组合逻辑和时序逻辑。

测试场景:

  • 检测组合逻辑的固定型故障
  • 检测时序逻辑的跳变故障
  • 检测逻辑电路的桥接故障

测试方法:

  • 使用伪随机测试生成器生成测试向量
  • 使用签名分析器分析测试响应
  • 支持多种测试模式

优势:

  • 提高逻辑电路的测试覆盖率
  • 支持在线测试和离线测试
  • 提高测试效率

5.3 应用三:系统级BIST

系统级BIST用于测试整个芯片系统。

测试场景:

  • 测试芯片的各个功能模块
  • 验证模块之间的接口
  • 检测系统级故障

测试方法:

  • 采用分层BIST架构
  • 支持并行测试和串行测试
  • 提供系统级测试结果

优势:

  • 实现芯片的全面测试
  • 支持芯片的自诊断和自修复
  • 提高系统的可靠性

BIST设计挑战与解决方案

6.1 面积开销挑战

问题: BIST电路会增加芯片面积,影响芯片成本。

解决方案:

  • 优化BIST电路的设计,减少面积开销
  • 采用共享BIST资源,减少重复电路
  • 考虑BIST电路的复用,在正常模式下实现其他功能

6.2 测试覆盖率挑战

问题: 伪随机BIST可能存在故障检测盲区,导致测试覆盖率不足。

解决方案:

  • 使用混合BIST方法,结合伪随机测试和确定性测试
  • 在关键路径上插入测试点,提高测试覆盖率
  • 优化测试向量生成算法,提高故障检测效率

6.3 时序挑战

问题: BIST电路的时序约束可能与系统时序冲突。

解决方案:

  • 使用独立的测试时钟,避免与系统时钟冲突
  • 设置合理的时序约束,确保两种模式都能满足要求
  • 采用时序优化技术,如时钟树综合、缓冲器插入等

6.4 功耗挑战

问题: BIST测试过程中的功耗可能超过芯片正常工作功耗。

解决方案:

  • 使用低功耗BIST技术,减少测试功耗
  • 优化测试向量,减少不必要的翻转
  • 采用分段测试策略,减少同时测试的模块数量

BIST技术未来发展趋势

7.1 AI驱动的BIST优化

人工智能技术正在应用于BIST优化。

发展方向:

  • 机器学习算法优化测试向量生成
  • AI辅助的故障检测和诊断
  • 智能BIST控制器设计

7.2 自适应BIST

自适应BIST可以根据芯片特性动态调整测试方案。

发展方向:

  • 芯片级自适应测试
  • 基于芯片良率的测试策略调整
  • 动态测试覆盖率优化

7.3 三维BIST

随着3D IC技术的发展,BIST需要考虑垂直方向的测试。

发展方向:

  • 3D BIST架构设计
  • 硅通孔测试技术
  • 多层芯片协同测试策略

总结

BIST技术是一种将测试功能集成到芯片内部的DFT技术,通过在芯片内部集成测试生成器和响应分析器,实现芯片的自主测试。本文详细介绍了BIST技术的基本原理、实现方法和应用实践。

在实际工程中,需要根据芯片的具体需求,综合考虑测试覆盖率、面积开销、功耗和测试时间等因素,制定合理的BIST设计策略。同时,随着技术的不断发展,BIST技术也在不断演进,需要关注最新的技术趋势和工具发展。

参考文献

[1] IEEE Standard for Test Access Port and Boundary-Scan Architecture, IEEE Std 1149.1-2013.

[2] Abramovici, M., Breuer, M. A., & Friedman, A. D. (1994). Digital systems testing and testable design. IEEE Press.

[3] Waicukauski, J. A., Lindbloom, B. L., Rajski, J., & Tamarapalli, V. (1998). Scan-based BIST for IP cores. IEEE Design & Test of Computers, 15(1), 32-40.

[4] Rajski, J., Tyszer, J., Kassab, M., & Mukherjee, N. (2004). Embedded deterministic test for low-cost manufacturing test. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 23(5), 776-792.

[5] Nadeau-Dostie, B., et al. (2002). Test vector compression using Golomb codes. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 21(3), 340-348.

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐