存储器构成了 VLSI 电路的很大一部分。存储系统设计的目的 是存储大量数据。[1] 存储器不包括逻辑门和触发器。因此,需要不同的故障模型和测试算法来测试存储器。
MBIST 是一种自测试和修复机制,它通过一组有效的算法来测试存储器,以检测典型存储器单元内可能存在的所有故障,无论是卡住 (SAF)、转换延迟故障 (TDF) 、耦合 (CF) 或邻域模式敏感故障 (NPSF)。它使用内置时钟、地址和数据生成器以及读/写控制器逻辑来生成测试的测试模式。
Basic Memory Model
典型的存储器模型由连接成二维阵列的存储器单元组成,因此必须在阵列结构的背景下分析存储器单元的性能。在阵列结构中,存储单元由两个基本组件组成:“存储节点”和“选择设备”。“选择设备”组件有助于对存储器单元进行寻址以在阵列中读/写。存储器的扩展限制受到这两个组件的影响。
如上图 1 所示,行和地址解码器确定需要访问的单元地址。根据行和列解码器上的地址,选择相应的行和列,然后将其连接到读出放大器。读出放大器放大并发送数据。
同样,我们可以访问需要写入数据的所需单元格。特殊电路用于从数据总线将值写入单元中。对于解码器,我们 测试 soc 验证功能 是否可以根据地址总线中的地址访问所需的单元。对于放大器和驱动器,我们检查它们是否可以正确地将值传入和传出单元。
以下故障模型足以进行内存测试:
- Stuck-At fault
- Transition fault
- Coupling fault
- Neighborhood pattern sensitive fault (NPSF)
- Address decoder faults
MBIST Model
在自动测试设备上测试制造的芯片设计验证的过程涉及使用外部测试模式作为激励。在测试仪上分析设备的响应,将其与作为测试模式数据的一部分存储的Golden响应进行比较。MBIST 通过将所有这些功能放置在芯片本身内存周围的测试电路中,使这一过程变得容易。它实现了有限状态机 (FSM) 来生成激励并分析来自存储器的响应。
这个额外的自测试电路充当高级系统和存储器之间的接口。该接口可以最大程度地减少测试嵌入式存储器的挑战,因为它有利于可控性和可观察性。FSM提供内存测试的测试模式;这大大减少了对内存测试的外部测试模式集的需求。
MBIST Algorithms
存储器通过特殊算法进行测试,可以检测存储器中发生的故障。许多不同的算法可用于测试 RAM 和 ROM。下面描述的是用于测试存储器的两种最重要的算法。这些算法可以用最少的测试步骤和测试时间检测内存中的多个故障。
- Checkerboard Algorithm
- March Algorithm
Memory Built-in Self Repair (BISR)
内存修复分两步实现。第一步是分析MBIST控制器在可修复存储器测试期间诊断出的故障,第二步是确定修复签名以修复存储器。所有可修复存储器都具有保存修复签名的修复寄存器。
BIRA(内置冗余分析)模块有助于根据内存故障数据和实施的内存冗余方案计算修复签名。它还确定内存在生产测试环境中是否可修复。修复签名将存储在 BIRA 寄存器中,以供 MBIST 控制器或 ATE 设备进一步处理。
然后,修复签名被传递到修复寄存器的扫描链,以进行后续的 Fusebox 编程,该编程位于芯片设计级别。保险丝盒的读写通过 TAP(测试访问端口)和连接存储器与保险丝的专用修复寄存器扫描链进行控制。然后,修复信息从扫描链中扫描出来,进行压缩,并通过施加高压脉冲将其即时烧录到 eFuse 阵列中。
片上复位时,来自 eFuse 的修复信息会自动加载到修复寄存器中并解压缩,这些寄存器直接连接到存储器。这会导致所有冗余的记忆都被修复。最后,对修复后的存储器运行BIST,验证存储器的正确性。
Reference:
- Memory Testing: MBIST, BIRA & BISR | An Insight into Algorithms and Self Repair Mechanism