摘要:多片嵌入式SRAM的测试一般由存储器内建自测试MBIST设计来完成。为了迎接多片SRAM的测试给DFT设计带来的挑战。文中以一款基于SMIC O.13um工艺的OSD显示芯片为例,从覆盖率、面积、测试时间、功耗等方面分析了多片SRAM的MBIST设计,提出了一种可实现多片SRAM的快速高效可测试设计实现方法。
0 引言
随着集成电路的发展,越来越多的ASIC和SoC开始使用嵌入式SRAM来完成数据的片上存取功能。但嵌入式SRAM的高密集性物理结构使得它很容易在生产过程中产生物理故障而影响芯片的良率,所以,SRAM的测试设计显得尤为重要。对于单片或者数量很小的几片嵌入式SRAM,常用的测试方法是通过存储器内建自测试MBIST来完成,实现时只需要通过EDA软件选取相应的算法,并给每片SRAM生成MBIST控制逻辑。但现实中,大型ASIC和SoC设计常常需要使用很多片SRAM,简单采用这种MBIST方法会生成很多块MBIST控制逻辑,从而增大芯片面积,增加芯片功耗,甚至加长芯片测试时间。
本文基于MBIST的一般测试方法来对多片SRAM的可测试设计进行优化,提出了一种通过一个MBIST控制逻辑来实现多片SRAM的MBIST测试的优化方法。
1 MBIST介绍
MBIST意即存储器内建自测试(Memory Build In Self Test),是目前业界用来测试存储器的一种常见方法,其原理是通过多次反复读写SRAM来确定其是否存在制造中的缺陷。MBIST的EDA工具可针对内嵌存储器自动创建BIST逻辑,它支持多种测试算法的自动实现(常用算法为March C+),并可完成BIST逻辑与存储器的连接。此外,MBIST结构中还可包括故障自动诊断功能,方便故障定位和特定测试向量的开发。MB-IST的基本结构如图1所示。
整个SRAM和MBIST控制逻辑构成的整体只是在原有SRAM端口的基础上增加了复位信号rst_n和bist_start信号(为高表示开始测试)两个输入信号,同时增加了test_done(为高表示测试完成)、fail_h(为高表示出现故障)、addr_er(fail_h为高时输出的故障地址有效)等三个输出信号。
2 多片SRAM的MBIST测试结构
基于SMIC 0.13um工艺的OSD (On Screen Display)显示芯片需嵌入地址位宽为8-bit、数据位宽为512-bit。即大小为256x512bit的SRAM来存储大量的客户定制字符。由于Artisan的SPSRAM Generator支持的SRAM模型的最大数据位宽为64 bit,故可通过8片大小为256×64 bit的SRAM来实现。
利用Mentor公司的MBIST Architect选取March3算法可产生两种MBIST结构。其一为每片256x64 bit的SRAM各生成一套MBIST逻辑,以构建MBIST并行结构,图2所示为其并行结构示意图。该方法可对所有MBIST的test_done(完成标志)进行“与”操作,以保证所有SRAM都测试结束;fail_h(失效标志)可进行“或”操作来实现(高有效),只要有一个SRAM出现故障即停止测试,否则表明所有SRAM测试都通过。
第二种方法是针对256×64bit大小的SRAM只生成一套MBIST,然后通过附加的状态机和数字逻辑来对多片SRAM逐一进行测试,即构建如图3所示的MBIST串行结构。当所测的某一个SRAM出现故障即停止测试,若所有SRAM测试结束都未有error信号输出,则表明所有SRAM测试均通过。
来源:维库开发网