Menu Close

数字集成电路内置自检模式生成和响应压缩

内置自检模式生成和响应压缩

动机与经济学

定义

内置自检(Built-In Self-Testing,BIST)的过程

BIST模式生成(PG)

BIST响应压缩(RC)

混叠概率

示例

总结

 

BIST的动机

用于现场测试和诊断(比本地自动测试设备便宜)

用于现场测试和诊断的软件测试:

硬件缺陷覆盖率低

诊断分辨率低

操作慢

硬件BIST的优势:

降低系统测试工作量

改善系统维护和维修

改进的组件维修

更好的诊断

 

BIST减轻了昂贵的测试问题 

芯片的逻辑引脚比例持续增加–更难观察

越来越密集的器件和更快的时钟

增加测试生成和应用时间

增加存储在ATE中的测试向量的大小

1 GHz时钟以上的芯片需要昂贵的ATE

很难进行可测试性插入–由于他们是在行为级别进行设计,因此不熟悉门级逻辑的设计人员 在线测试在技术上不再可行

测试工程师的数量

电路测试不能轻易划分

 

典型的质量要求

98%的单一钳滞缺陷覆盖率

100%的互连缺陷覆盖率

拒绝率–十万分之一

 

DFT的BIST的收益和成本

%title插图%num

经济学– BIST成本

芯片面积额外成本:

测试控制器

硬件模式生成器

硬件响应压缩

BIST硬件测试

引脚额外成本- 至少需要1个额外引脚才能激活BIST操作

性能额外成本– 由于BIST而导致的额外路径延迟

良率损失– 由于BIST导致芯片面积增加或更多芯片进入系统

可靠性降低– 由于芯片面积增加

BIST硬件复杂性增加– 在对BIST硬件进行测试时发生

 

BIST的好处

可测的缺陷:

单一组合/时序钳滞缺陷

延迟缺陷

BIST硬件中的单一钳滞缺陷

BIST的好处

降低测试和维护成本

降低测试生成成本

减少测试模式的存储和维护

更简单,更便宜的ATE

可以并行测试多个单元

更短的测试申请时间

可以以功能系统的速度进行测试

 

定义:

Built-in logic block observer, BILBO– 内置逻辑模块观察器,在触发器上添加了额外的硬件,因此可以将它们重新配置为LFSR模式发生器或响应压缩器,扫描链或触发器

并发测试 ( Concurrent testing) – 在正常系统运行期间检测缺陷的测试过程

CUT, Circuit-under-test – 被测电路

耗尽型测试– 将所有可能的2n个模式应用于具有n个输入的电路

不可约多项式 Irreducible polynomial – 无法分解的布尔多项式

LFSR ( Linear feedback shift register )– 线性反馈移位寄存器,生成伪随机码型序列的硬件

原始多项式 ( Primitive polynomial ) – 布尔多项式p(x),可用于计算xn模p(x)的递增幂n,以获得所有小于p(x)的可能非零多项式

拟穷举测试 ( Pseudo-exhaustive testing )– 将电路分成小块重叠的块,并进行详尽的测试

伪随机测试 ( Pseudo-random testing ) – 算法模式生成器,可生成所有可能测试的子集,并具有大多数随机生成模式的属性

标记 ( Signature ) – 区分不良电路和良好电路的任何统计电路属性

TPG ( Test Pattern Generator ) –硬件测试模式生成器

 

BIST过程 

测试控制器–可以在所有PCB上同时激活自测的硬件

每个板控制器仅在非常高的缺陷覆盖率时才激活并行芯片BIST诊断

%title插图%num

图1 BIST过程

 

BIST架构 

%title插图%num

注意:BIST无法测试连线和晶体管:

从输入引脚到输入MUX 从输出到输出引脚

图2 BIST架构

 

BILBO – 同时担任模式发生器( Pattern Generation, PG) 和响应压缩器( response compacter, RC)

%title插图%num

内置逻辑模块观察器(BILBO)- 4种模式:

触发器

LFSR模式发生器

LFSR响应压缩器

触发器扫描链

图3内置逻辑模块观察器

 

复杂的BIST体系结构

%title插图%num

测试时期一:

LFSR1为CUT1和CUT2生成测试

BILBO2(LFSR3)压缩CUT1(CUT2)

测试时期二:

BILBO2为CUT3生成测试模式

LFSR3压缩CUT3响应

图4 复杂的BIST体系结构

 

基于总线的BIST架构

%title插图%num

 

自测控制/广播模式通过总线到达每个被测电路 – 并行模式生成

等待总线操作显示出被测电路对模式的响应:序列化压缩

图5 基于总线的BIST架构

 

模式生成

存储在ROM中- 高成本

穷举

伪拟穷举

伪随机(LFSR)–首选方法

二进制计数器 – 比LFSR使用更多的硬件

改良的计数器

测试模式增强

LFSR结合了ROM中的几种模式

硬件衍射仪– 在ROM中存储的模式附近生成模式簇

 

穷举模式生成

C:\WINNT\Profiles\bushnell\bookfoils\bist\exhaust.tif

每个状态和过渡都起作用

对于n个输入电路,需要全部2n个向量

n> 20不切实际

图6 穷举模式生成

 

拟穷举法

将大电路划分为扇形锥体

从每个输出到影响它的输入的回溯

平行测试扇入锥体

测试数量从28 = 256减少到25 x 2 = 64

不完整的缺陷覆盖

 

伪穷举模式生成

%title插图%num

图7伪穷举模式生成

 

随机模式测试

%title插图%num

A, 上曲线:缺陷覆盖率可以接受的随机模式测试

B, 下曲线:不能接受的随机模式测试

底部:随机模式电阻电路

图8 随机模式测试

 

伪随机模式生成

C:\WINNT\Profiles\bushnell\bookfoils\bist\mcclu1.tif

标准线性反馈移位寄存器(Linear Feedback Shift Register,LFSR)

通过算法产生模式- 可重复

具有大多数理想的随机数属性

不需要涵盖所有2n个输入组合

需要较长的序列才能实现良好的缺陷覆盖率

图9 伪随机模式生成

 

标准LFSR的矩阵方程

%title插图%num

图10 标准LFSR的矩阵方程

 

LFSR实现了Galois领域

伽罗瓦 ( Galois) 域 (数学系统):

x的乘积与LFSR的右移相同

加法运算符是XOR

Ts伴随矩阵:

第1列0,第n个元素始终为1(X0始终馈入Xn-1)

n行的其余部分– 反馈系数hj

其余部分为恒等矩阵I – 表示右移

准穷尽(最大长度)LFSR

循环2n– 1个状态(不包括全0)

1个模式的n 1,n-1个连续的0之一

 

标准n阶段LFSR实施 

C:\WINNT\Profiles\bushnell\bookfoils\bist\mcclu1ckt.tif

自相关 2n– 1位与原始序列相同的任何移位序列,2n 位不同 

如果hi = 0,则该XOR门将被删除

图11 标准n阶段LFSR实施

 

LFSR理论:

无法初始化为全0 – 挂起

如果X是初始状态,则进入状态X,Ts X,Ts2 X,Ts3 X等。

矩阵周期: 最小k使得Tsk = I

K= LFSR周期长度

由特征多项式描述: f(x)= | Ts – I X | = 1 + h1 x + h2 x2 +…+ hn-1x n-1 + xn

LFSR缺陷覆盖率预测

按随机数进行缺陷检测的概率

p(x)dx = 具有x和x + dx的检测概率的可检测缺陷的比例

p(x)dx => 0当0 <= x <=1时

%title插图%num

以检测概率x存在p(x)dx个缺陷

这些缺陷的平均覆盖率为x p(x)dx

%title插图%num 15.6

LFSR缺陷覆盖率和矢量长度估计

随机缺陷检测(Random-fault-detection,RFD)变量:

首先检测到缺陷的矢量数

wi ≡ 带有RFD变量i的缺陷数

因此:

%title插图%num

ns ≡ 模拟的样本大小; N≡ 测试向量数

%title插图%num

方法:使用缺陷采样从缺陷模拟器中估计随机优先检测变量wi

使用公式15.8估算I(n)

通过反转方程式15.6并数值求解来获得测试长度

 

外部XOR LFSR示例

C:\WINNT\Profiles\bushnell\bookfoils\bist\willstandard.tif

特征多项式f(x)= 1 + x + x3(从右到左读取标号)

图12 外部XOR LFSR示例

 

外部XOR LFSR

模式序列,例如LFSR(早先的):

%title插图%num

在多项式中总是有1和xn

重复执行LFSR模式不超过1次 – 重复相同的误差向量,消除缺陷影响

%title插图%num

通用模块化LFSR

C:\WINNT\Profiles\bushnell\bookfoils\bist\mcclusmod.tif

C:\WINNT\Profiles\bushnell\bookfoils\bist\mcclusmodckt.tif

图13 通用模块化LFSR

 

模块化内部XOR LFSR

由伴随矩阵Tm = Ts T描述

内部XOR LFSR – D触发器之间的XOR门

相当于标准的外部XOR LFSR

具有不同的状态分配

更快 – 通常没关系

相同数量的硬件

X(t +1)= Tm x X(t)

f(x)= | Tm – I X | = 1 + h1 x + h2 x2 +…+ hn-1 xn-1 + xn

右移 – 等于乘以x,然后除以特征多项式并存储余数

 

模块化LFSR矩阵

%title插图%num

图14 模块化LFSR矩阵

 

模块化LFSR示例

C:\WINNT\Profiles\bushnell\bookfoils\bist\exammodckt.tif

f(x)= 1 + x2 + x7 + x8

从左至右读取LFSR抽头系数

图15 模块化LFSR示例

 

原始多项式 

希望LFSR生成所有可能的2n – 1模式(全0模式除外)

所需的条件 – 必须具有原始多项式:

Monic– xn项的系数必须为1

模块化LFSR – 所有D 触发器必须从X0到X1,…,再到Xn-1,通过XOR进行右移,后者必须直接反馈到X0

标准LFSR – 所有D 触发器都必须直接从Xn-1到Xn-2,…,再到X0进行右移,后者必须通过XORing反馈网络反馈到Xn-1

对于k = 2n – 1,特征多项式必须将多项式除以1 + xk,但对于较小的k值则不能

有关原始多项式的表,请参见讲义的附录B

如果p(错误)= 0.5,则本原多项式和非本原多项式的行为没有区别

但是p(错误)很少= 0.5,在这种情况下,非原始多项式LFSR用随机属性稳定所需的时间要比原始多项式LFSR更长。

加权伪随机模式生成

%title插图%num

如果所有输入的p(1)为0.5,则pF(1)= 0.58 = 1/256 , pF(0)= 1-1/256 = 255/256

将需要很大数量随机模式来测试F- LFSR p(1)= 0.5上钳滞在的0缺陷

我们不能使用普通的LFSR对此进行测试

IBM–在ATE拥有加权伪随机模式发生器的专利

 

加权伪随机模式发生器

LFSR p(1)= 0.5

解决方案:添加可编程的权重选择并补充LFSR位,以获得除0.5以外的p(1)

典型电路需要2-3个权重码

加权模式发生器大大缩短了伪随机模式的模式长度

加权模式发生器 ( Weighted Pattern Generator )

%title插图%num

%title插图%num

图16 加权模式发生器

 

单元自动机(Cellular Automata,CA)

优于LFSR – 甚至 “更多” 随机

无移位引起的位值相关

可以通过线性移相器使LFSR更加随机

常规连接– 每个单元仅连接到本地邻居

%title插图%num

单元自动机

C:\WINNT\Profiles\bushnell\bookfoils\bist\hybridca.tif

五阶段混合单元自动机

规则150:xc(t + 1)= xc-1(t)⨁xc(t)⨁xc + 1(t)

第90条和第150条CA的替代规则

图17 单元自动机

 

测试模式增强

辅助ROM – 使LFSR达到100%的钳滞缺陷 (SAF) 覆盖率

添加小的ROM 以补充缺失的测试模式

在输入MUX中增加额外的电路模式 – LFSR完成后转移到ROM模式

重要的是要压缩额外的测试模式

使用衍射仪: 在存储的ROM模式附近生成模式簇

将LFSR模式转换为新的向量集

将LFSR和转换硬件放入全扫描链

响应压缩

被测电路对LFSR模式的响应中有大量数据– 例如:

生成500万个随机模式

被测电路有200个输出

导致:500万x 200 = 10亿位响应

在芯片上存储和检查所有这些响应是不经济的

响应必须紧凑

 

定义

混淆 Aliasing – 由于信息丢失,好的机器和某些不良机器的标记匹配

紧凑 Compaction – 大幅减少原始电路响应中的位数 – 丢失信息

压缩 Compression – 减少原始电路响应中的位数 –无信息丢失–完全可逆(可以恢复原始应)

标记分析 Signature analysis – 将良好的机器响应压缩为良好的机器标记。测试期间生成的实际标记,并与良好的机器标记进行比较

转换计数响应压缩 Transition Count Response Compaction – 从0 到1和1 到0转换计数,作为标记

 

转换计数

%title插图%num

图18 转换计数

 

转换计数详细信息

转换次数: 所有m个主要输出:

%title插图%num

为了最大程度地覆盖缺陷:

使C(R0)– 良好的机器转换计数 – 尽可能大或尽可能小

 

LFSR用于响应压缩

使用循环冗余校验码(cyclic redundancy check code, CRCC)生成器(LFSR)进行响应压缩

将电路输出的处理数据位压缩为降序系数多项式

CRCC将输出多项式除以其特征多项式

保留LFSR中的除法余数

测试前必须将LFSR初始化为种子值(通常为0)

测试后 – 将LFSR中的标记与已知的良好机器标记进行比较

关键:必须计算出良好机器的标记

 

模块化LFSR响应压缩器示例

%title插图%num

LFSR种子值为“ 00000”

图19 模块化LFSR响应压缩器示例

 

多项式除法

%title插图%num

图20 多项式除法

符号多项式除法

%title插图%num

图21 符号多项式除法

 

多输入标记寄存器(Multiple-Input Signature Register,MISR)

普通LFSR响应压缩器的问题: 如果在每个主输出(PO)上配置了多输入标记寄存器,则硬件过多

解决方案:MISR – 将所有输出压缩为一个LFSR

行得通,因为LFSR是线性的– 遵守叠加原理

将所有响应叠加在一个LFSR中- 最终余数是每个输出的多项式与特征多项式除法的余数的异或 ( XOR) 的叠加

 

MISR矩阵方程

di(t)– 在时间t上输出i的响应

%title插图%num

图22 MISR矩阵方程

 

模块化MISR示例

%title插图%num

%title插图%num

图23 模块化MISR示例

 

多重标记检查

使用2个不同的测试时期:

第一个具有1个多项式的MISR

第二个具有不同多项式的MISR

降低混叠的可能性 –

两个多项式对同一缺陷的别名重叠的可能性很小

硬件成本低:

第二个MISR多项式的一些异或门 (XOR)

一个两选一多路选择器在两个反馈多项式之间进行选择

 

混叠概率

别名– 不良机器标记和好机器标记相等时

考虑输出处的误差向量e(n)

在时间t的输出上不良机器和好机器不同时,将其设置为1

Pal ≡ 混叠概率

P ≡ 在e(n)中的概率为1

别名限制:

%title插图%num

 

混叠概率图

%title插图%num

图24 混叠概率图

 

其他MISR别名 

MISR在单个输出上比LFSR具有更多的别名

在时间ti时被测电路输出dj出错,接着在时间ti + h时输出dj + h错误,如果MISR在Qj和Qj + h位之间没有反馈抽头,则消除了任何标记错误。

 

混叠定理

定理15.1:假设每个电路输出 dij都有错误的概率p,并且所有输出dij在k位MISR中都是独立的,而不论MISR的初始条件如何,Pal = 1 /(2k)。 不完全正确– 在实践中正确。

定理15.2:在k位MISR中,假设每个输出Pdij都有错误概率p,其中pj概率是独立的,并且所有输出dij是独立的,则Pal = 1 /(2k) 不管初始条件是什么。

实验硬件 

%title插图%num

3位穷尽型二进制计数器,用于模式产生器

图25 实验硬件

 

转换计数器与LFSR 

LFSR的别名f sa1,转换计数器的别名sa1

%title插图%num

图26 转换计数器与LFSR

 

小结

LFSR模式生成器和MISR响应压缩器 – 首选的BIST方法

BIST有额外成本:测试控制器,额外的电路延迟,输入MUX,模式发生器,响应压缩器,DFT初始化电路和测试硬件的检测

BIST的好处:

快速测试延迟和钳滞的缺陷

大幅降低ATE成本

现场测试能力

系统测试中的快速诊断

减少设计测试流程的工作量

降低测试申请时间

 

Posted in 数字集成电路

发表评论

相关链接