DFT 三月算法?棋盘式 2

DFT 三月算法?棋盘式 2
Photo by Tamanna Rumee on Unsplash

5.为什么从内存结构的角度看 March 似乎很直观

5.1 如何访问

SRAM 考虑一个银行:

  • 使用地址总线选择特定行(字行)
  • 通过连接到该行的 位线读取或写入单元格的值
  • 每次只能确定控制 "一个地址"

因此,测试的基本单元自然是这样的。

"选择一个地址 → 执行读/写序列 → 移动到下一个地址"

这个流程本身与 March 元素的定义几乎以 1:1 的比例重叠。


5.2 如何捕获地址解码器故障?

例如,在一个地址:

  • 解码器故障导致 两行同时亮起
  • 在此地址,w1可能会导致预期单元格为 1,以及相邻行中的单元格

现在在另一个地址:

  • 我们预期相邻单元格为r0,但我们读取了1

如果您多次重复 r0, r1, 像三月 C- 一样上上下下,您肯定会在某一时刻读到 "非预期单元格一起打开并覆盖 "的值。

这就是 March C- 检测 地址解码器故障的机制。


5.3 如何捕捉耦合故障:

耦合故障是指以下情况。

当在攻击单元上执行特定操作(写入、切换)时,相邻单元(受害者)的值不被更改或保持的故障

March C- 是:

  • 在对任何单元格执行 w1 操作后,我们立即使用 r0r1 检查其相邻单元格,重复多次,上下方向相反。

在这个过程中:

    • 为了找到 "只有当相邻单元格的图案处于某种状态时才会显示的故障",我们强制进行了各种相对排序。
  • 这比简单地编写/读取一次棋盘模式要花费更多时间,但却能提供更高的故障覆盖率。
  • 现在,让我们将我们在实践中经常听到的棋盘放到上下文中。
  • 让我们从单行定义开始。
  • 按位计算:
    • 图案 A:0x55...(...0101 0101)
    • 图案 B:0xAA... (...1010 1010)
  • 按地址,这通常是:
    • 偶数地址 → 0x5555_5555
    • 奇数地址 → 0xAAAA_AAAA
  • 或者您可以反过来,这样 0 和 1 就会像棋盘一样在 水平(按位) 和垂直(按地址) 方向交替出现。
  • 相反的模式称为反棋盘。
  • All-0、All-1 模式当然很重要。
    • w0 → r0w1 → r1足以覆盖Stuck-at 故障。
      • 位线/字线之间的短路/桥
      • 耦合故障
      • 邻近模式敏感故障 (NPSF)
      • 当两个单元具有不同的值(0/1)
      • 当邻区具有特定的模式(例如 010/101)
      • 如果两个单元都为 0,短路可能不明显,因为它是 0,只有当一个单元为 0 而另一个单元为 1 时,电流才会使值失真。
      • March 算法 =
        ↑, ↓ + (r0, w1, r1, w0 ...)=
        操作序列
      • 棋盘式 =
        数据背景
      1. 将数据背景设置为 solid 0 / solid 1 / checkerboard / inverse-checkerboard 中的一种
      2. 在该状态下执行 March 算法序列
      • 第 1 步:用棋盘格填充整个内存。
      • 第 2 步:在该状态下执行 March C-↑(rX, wY) 元素。
      • 第 3 步:切换到反棋盘并再次行进。
      • 消费类 SoC:
        • March C- @ solid 0/1
        • 必要时添加一个简短的棋盘序列
      • 汽车/服务器级 SoC:
        • March C- @ solid 0/1
        • March C- @ checkerboard / inverse-checkerboard
        • 添加面向 NPSF 的 March SS 算法,以实现诊断覆盖目标。
      1. 产品性质
        • 消费电子 SoC → "中等质量 + 较短测试时间"
        • 汽车/安全关键型 → "极高可靠性 + 可接受较长测试时间"
      2. 目标 DPPM/PPM、标准要求
        • ISO 26262 诊断覆盖范围
        • 晶圆厂/客户覆盖范围指南
      3. 存储器特性
        • 单端口/双端口/多端口 SRAM
        • 寄存器文件、CAM、ROM、eDRAM、eFlash 等:eFlash/eFuse/NVM 包括程序/擦除/保持测试
        • 多端口 SRAM 使用 March 变体,端口之间的读/写组合用于端口交互故障
      • 检查其是否符合公司标准/客户要求
        • 示例)March C- + March LA + Checkerboard
        • 新项目的DFT 工程师将这些算法作为默认设置,仅针对不寻常的内存(eFlash、特殊 SRAM 等)进行调整
        1. 逻辑测试和存储器测试在理念上是不同的:
          • 逻辑:扫描 + ATPG,以门级故障为重点
          • 存储器:逐地址顺序访问,以单元/邻域/解码器故障为重点
        2. 行进算法是一种通过行进地址来重复读/写序列的测试。
          • 方向(↑/↓)+操作(r0/r1/w0/w1)的组合是关键
        3. 基本概念是 March X,实际操作以 March C- 为基础
        4. 棋盘不是一种算法,而是一种背景。
          • March C- @ solid 0/1 表示单元格本身,
          • March C- @ checkerboard/inverse-checkerboard 表示相邻交互。
        5. 算法的选择由 MBIST 插入步骤中的工具选项决定。
          • 这并不像阅读论文和选择一个漂亮的 March,然后在创建向量时将其穿上,
          • 它是在 DFT 架构/MBIST 插入时通过查看测试要求、内存特性和测试时间来确定的。

6.2 为什么是棋盘格(不能是 All-0/All-1)


Checkerboard pattern = 一种数据背景,其中存储单元的排列方式使相邻单元格总是具有相反的值,例如
010101... / 10101010...

6.1 什么是棋盘格图案:

6. 棋盘背景和三月算法


如果不符合,则可以通过添加更多 March 元素、添加背景等方式对其进行定制。此外,许多公司在 BU / 公司层面都有一套标准的 MBIST 算法:在实践中,单个工程师从头开始设计 March 算法的情况非常罕见标准模板 + 一些定制是更常见的情况。


요약:供 DFT/ATPG 工程师牢记的要点

总而言之,以下几点对 DFT/ATPG 工程师非常有用。有了这些知识,您就能更好地了解如何在芯片设计会议上控制 DFT 团队,而且在阅读 MBIST 规范或代工厂指南时也会更加得心应手。当您需要设计自己的 定制 March + 背景时,这个框架将是一个很好的起点。

过渡故障也在一定程度上得到了覆盖。这些故障通常只在以下情况下可见。例如,如果两个单元发生弱短路:因此,从测试的角度来看:

我们希望创建一种 "相邻单元始终具有相反值 "的情况,以尽可能多地刺激
bitline / cell / wordline 之间的干扰。

最简单的方法是使用棋盘模式。


6.3 西洋跳棋和三月棋的关系

这里有一点很容易混淆。换句话说,这样的结构更容易理解。例如:这就是您经常在 MBIST 工具脚本中看到的配置。

算法:行进 C-
背景:实心 0/1棋盘式反棋盘式

我们正交地定义了算法和背景,这种组合提高了故障覆盖率。在实际产品规格中,它看起来像这样。


7.从 MBIST 的角度来看,何时以及如何决定 March/Checkerboard?"

最后,让我们来总结一下
"在设计流程中何时决定该测试向量/算法?"这个问题。

7.1 算法选择标准

在现实世界中,选择算法的过程通常可以总结如下。

测试要求 + 存储器特性 + 测试时间(ATE 成本) + 工具/库默认值

在实践中,内存编译器/IP 供应商通常会提供推荐的 March 集。

"This SRAM macro achieves XX% fault coverage based on March C- + Checkerboard"

作为 DFT 工程师,您可以使用这些信息并

Enjoyed this article?

Get deep-dive semiconductor analysis and career insights delivered weekly. Free forever — no paywall, no upsell. Funded by sponsorships with a strict editorial firewall (Editorial Standards).

Work with me

Consulting · Collaboration · Support

Paid 1:1 technical consulting, speaker invitations, collaboration proposals, or just want to say thanks — all welcome.

View options →
VLSI Korea Free forever · No paywall · Weekly semiconductor insights from practicing engineers
Support