首页> 中国专利> 基于IEEE 1500标准兼容SRAM/ROM的MBIST控制器结构系统

基于IEEE 1500标准兼容SRAM/ROM的MBIST控制器结构系统

摘要

本发明公开了一种基于IEEE1500且兼容嵌入式SRAM和ROM存储器测试的测试结构及测试方法,该测试结构结合了嵌入式核测试标准IEEE1500和内建自测试(BIST)的方法,该测试结构支持对多个不同种类的嵌入式SRAM和ROM进行内建自测试。该结构由嵌入式SRAM和ROM的测试壳封装与MBIST控制器两部分构成。测试封装壳解决了嵌入式SRAM和ROM的测试访问、测试隔离和测试的控制问题。MBIST控制器根据测试算法生成SRAM测试所需的测试激励数据、控制封装壳Wrapper、进行响应分析、输出测试结果,通过MISR来完成对ROM中数据的数据压缩操作。应用该测试结构及测试方法,能够检测出嵌入式SRAM和ROM存储器存在故障,有利于嵌入式SRAM和ROM存储器的测试复用,可以有效的提高SoC的集成效率,同时减少MBIST系统的硬件消耗。

著录项

  • 公开/公告号CN103310852A

    专利类型发明专利

  • 公开/公告日2013-09-18

    原文格式PDF

  • 申请/专利权人 桂林电子科技大学;

    申请/专利号CN201310174317.2

  • 发明设计人 谈恩民;金锋;

    申请日2013-05-13

  • 分类号G11C29/56;

  • 代理机构桂林市华杰专利商标事务所有限责任公司;

  • 代理人巢雄辉

  • 地址 541004 广西壮族自治区桂林市七星区金鸡路1号

  • 入库时间 2024-02-19 20:52:29

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-05-23

    未缴年费专利权终止 IPC(主分类):G11C29/56 专利号:ZL2013101743172 申请日:20130513 授权公告日:20151104

    专利权的终止

  • 2015-11-04

    授权

    授权

  • 2013-10-23

    实质审查的生效 IPC(主分类):G11C29/56 申请日:20130513

    实质审查的生效

  • 2013-09-18

    公开

    公开

说明书

技术领域

本发明涉及SoC芯片,具体是SoC芯片中嵌入式存储器,更具体是SoC芯片中嵌入式存储器的测试。

背景技术

对嵌入式存储器的测试一般采用内建自测试(BIST)方法,这种方法可以实现对嵌入式存储器的故障检测,但是现有的方法只能对同一类的嵌入式存储器进行故障检测,不能使用一个MBIST(存储器内建自测试)控制器来完成对多个不同种类的嵌入式存储器的测试工作。

一般在同一块SoC芯片中包含多个不同种类的嵌入式存储器,如果为每一种存储器都设计一个对应的MBIST控制器,那么整个SoC芯片的MBIST系统的硬件消耗将会很大,这不利于降低测试成本,也不利于MBIST技术的推广和发展。

发明内容

本发明在充分研究IEEE 1500标准与内建自测试(BIST)的基础上,提出一种可进行测试复用且兼容SRAM/ROM测试的测试结构和方法。因而本发明的目的是提供一种基于IEEE 1500标准兼容SRAM/ROM的MBIST控制器结构系统,以支持对多个不同种类的嵌入式SRAM和ROM进行内建自测试,从而降低测试成本,提高SoC集成与测试的设计效率。 

为了实现发明目的,本发明的设置了March算法状态机和多输入线性反馈移位寄存器MISR的MBIST控制器分别连接着外设的测试系统接口、围绕被测嵌入式SRAM和ROM内核的基于IEEE 1500标准的测试壳Wrapper和响应分析器,基于IEEE 1500标准的测试壳Wrapper与响应分析器连接,基于IEEE 1500标准的测试壳Wrapper和响应分析器均嵌入到系统芯片内部。

测试系统接口主要负责传送控制信号,如状态模式控制信号(即测试模式信号)、测试开启信号以及系统复位等;

MBIST控制器负责测试矢量的自动生成、测试结果的判定;MBIST控制器可以兼容测试多个SRAM和ROM内核,为测试系统提供同步时钟信号和其它控制信号,以达到控制测试访问机制的目的,最终完成对测试矢量的施加和对测试响应数据的比对分析等工作。

Wrapper主要负责对测试矢量的施加和对测试响应数据的捕获;Wrapper围绕着被测嵌入式SRAM和ROM内核,接收MBIST控制器送来的控制信号、指令信号、测试地址数据、测试激励数据,并将测试响应数据输出到响应分析器,测试矢量和控制信号通过Wrapper传送到被测内核,完成测试激励的施加工作,解决了嵌入式SoC的测试访问、测试控制和观察机制等测试问题。

响应分析器主要对捕获到的测试响应数据进行分析,并将分析结果传送给MBIST控制器。

在MBIST控制器中,March算法状态机之后连接指令译码器和控制信号生成器,指令译码器后分别连接数据背景生成器、地址生成器和读写信号生成器,数据背景生成器、地址生成器和读写信号生成器均连接输出数据缓存器,数据比较器分别连接数据背景生成器和多输入线性反馈移位寄存器MISR。

A.March算法状态机用于实现March算法,输出相应的控制指令和测试矢量。

B.指令译码器将从March算法状态机输出的指令进行译码,从而为地址生成器、数据背景生成器和读写信号生成器提供控制信号。

C.读写信号生成器根据指令信号产生操作存储器所需的读写信号。

D.地址生成器按照指令产生递增或递减的存储器地址信号。

E.数据背景生成器根据被测存储器的字位宽来产生相应的测试背景信号。

F.控制信号生成器根据March算法状态机产生的控制信号产生WIR所需的WIP信号。

G.输出数据缓存器用于将并行数据转换成串行数据,最后将转换后的串行数据从WSI接口输出。

H.数据比较器用于将测试响应数据与预期值进行比较,从而判断被测对象是否存在故障。

I.多输入线性移位寄存器MISR负责将捕获到的ROM测试响应数据进行压缩处理,最后得到ROM中所存储的数据的特征值。

本发明中所述测试壳Wrapper中,由与被测嵌入式存储器的端口数目相同数量的WBC前后串接而成的边界寄存器WBR与串行输入/输出接口WSI/WSO、并行输入/输出接口WPI/WPO及SRAM/ROM内核连接,旁路寄存器WBY与边界寄存器WBR并联于串行输入/输出接口WSI/WSO之间,指令寄存器WIR分别连接边界寄存器WBR、旁路寄存器WBY和控制接口WIP。

测试壳Wrapper中的各组成单元符合IEEE 1500标准功能描述。

其中,

A.边界寄存器WBR (Wrapper Boundary Register,又叫测试壳边界寄存器)的基本组成单元为WBC ( Wrapper Boundary Cell,测试壳边界单元 ),WBR由与被测嵌入式存储器的端口数目相同数量的WBC前后串接而成,通过控制WBR的工作状态,可以完成对测试激励的施加和测试响应的捕获操作,从而实现对被测SRAM/ROM内核的可观察性和可控性。

B.旁路寄存器WBY (Wrapper Bypass Register,测试壳旁路寄存器 )是IEEE 1500标准所严格规定的,其功能是用于旁路其它的寄存器,在不要对SRAM/ROM内核进行测试时,提供一条数据快速传输通道。WBY的结构较为简单,一般只包含一个寄存器。

C.指令寄存器WIR (Wrapper Instruction Register,测试壳指令寄存器 )用于解析从MBIST控制器传送来的指令信息,将指令转换成对WBR或WBY的控制信号,从而达到控制被测SRAM/ROM内核的目的。

D.接口包括测试壳Wrapper串行输入/输出接口(WSI/WSO)、测试壳Wrapper并行输入/输出接口(WPI/WPO)和测试壳Wrapper接口端(WIP)。串行或并行输入/输出接口为测试矢量提供一条串行或并行的输入输出通道,WIP是Wrapper与MBIST控制器之间进行数据流交换的接口。

本发明中的MBIST控制器产生的对测试壳Wrapper控制的状态模式控制信号有正常模式、测试模式和旁路模式三种测试模式信号。

MBIST控制器设置赋值为被测对象ID号的总线宽度为n位的总线SelectIP[n-1:0],总线SelectIP[n-1:0]分别与多路选择器M1、多路选择器M2和多路选择器M3连接,多路选择器M1连接测试壳Wrapper的串行输入接口WSI,多路选择器M2连接测试壳Wrapper的指令寄存器WIR,多路选择器M3连接测试壳Wrapper的串行输出接口WSO。其中,n等于被测嵌入式存储器的数目,即n个SRAM/ROM内核。

外设的测试系统接口为一个Avalon总线接口,接口信号包括:clk,reset_n,chipselect,address,write,writedata,read,readdata和byteenable,以及非Avalon信号的测试完成信号finish、故障指示信号error。接口的各信号功能描述如表1所示.

表1

模块信号Avalon信号类型        信号功能描述clkclk系统时钟reset_nreset_n系统复位信号,低电平有效chipselectchipselect片选信号addressaddress寄存器偏移地址writewrite写使能信号writedatawritedata写数据readread读使能信号readdatareaddata读数据byteenablebyteenable字节使能finish非Avalon信号系统测试结束信号error非Avalon信号故障指示信号

本发明的基于IEEE 1500标准且兼容嵌入式SRAM/ROM的MBIST控制器结构系统的测试工作原理如下所述:

假设该系统中被测对象为n个SRAM和n个ROM内核,SRAM支持读和写操作,采用March算法来生成SRAM所需的测试矢量,使用有限状态机的技术来进行硬件上的实现,SRAM测试的核心是March算法状态机,它位于MBIST控制器内部。对于ROM的测试,采用MISR来完成ROM的测试数据响应压缩工作,同样它也是MBIST控制器的组成部分。对每个被测存储器核(n个SRAM和n个ROM内核)都进行了分类编号,每一个存储器都有一个唯一的ID号,ID号的最高位用于指示被测存储器是SRAM还是ROM,其中‘1’代表SRAM,‘0’表示ROM;ID号的次最高位用于指示被测存储器的字位宽,其中‘1’代表被测存储器的字位宽为16bit,‘0’表示8bit;余下的各位用于表示被测存储器的序号。只要获取到ID号就可以查找到相应存储器内核的基本信息,如存储器的容量,存储器中字的位宽,把以上信息汇总整理成一张表格存储于MBIST控制器中,MBIST就可以根据这些信息来自动生成相应的测试矢量。

系统中总线宽度为n位的总线SelectIP[n-1:0]信号的值为被测对象的ID号,SelectIP[n-1:0]总线的位宽n等于被测嵌入式存储器的数目,它的作用是传送多路选择器M1、M2、M3所需的控制信号,其中M1、M2、M3用于决定哪个存储器处于被测状态。当SelectIP[n-1:0]总线上的数据为“110…00”时,多路选择器M1就会将MBIST控制器的WSI与SRAM1(第一个被测的SRAM内核,下同)的Wrapper进行连接,同时多路选择器M2会将MBIST控制器的SelectWR信号(是IEEE1500标准中定义的信号,用于选通WIR)与SRAM1的WIR进行连接,而此时多路选择器M3就会将MBIST控制器的WSO信号与SRAM1的串行输出接口WSO进行连接。此时SRAM1处于测试模式下,而那些没有被选中的存储器内核将处于正常的工作模式(正常模式)下。

    同理,当SelectIP[n-1:0]总线上的数据为“100…00”时,系统就对SRAM2进行测试。

SelectIP[n-1]是SelectIP[n-1:0]总线的最高位,SelectIP[n-1]用于选择不同存储器所对应的数据通道,当SelectIP[n-1]=1,表示此次测试的嵌入式存储器类型为SRAM内核;当SelectIP[n-1]=0,表示此次测试的嵌入式存储器类型为ROM内核; 

控制信号生成和传输:由March算法状态机控制控制信号生成器生成控制信号;由控制信号控制测试壳Wrapper接收MBIST控制器送来的测试激励数据、地址数据、SRAM读写信号,并控制测试壳Wrapper将SRAM生成的测试响应数据传送到响应分析器再返回到测试控制器。

ROM测试矢量的生成和传输:ROM的测试矢量通过地址生成器和读写信号生成器来产生。测试矢量通过WSI移入WBR,最终加载到被测嵌入式ROM内核。

地址数据生成和传输:由地址生成器生成地址数据,地址数据送入输出数据缓存器,然后将地址数据串行送入边界寄存器,边界寄存器将地址数据送入SRAM和ROM。

测试激励数据生成和传输:由数据背景生成器生成测试激励数据,测试激励数据送入输出数据缓存器,然后将将测试激励数据串行送入边界寄存器,边界寄存器将测试激励数据送入SRAM。

测试响应数据取得和传输:当SelectIP[n-1]=1时,将SRAM中生成的测试响应数据通过WSI传输到响应分析器再到输入数据缓存器,数据比较器从数据背景生成器取得期望数据来与捕获到的测试响应数进行比较;当SelectIP[n-1]=0时,将ROM中生成的测试响应数据通过WSI传输到响应分析器再到输入数据缓存器,数据比较器将期望特征值与计算得到的特征值进行比较。

旁路寄存器:在不需要对当前嵌入式SRAM和ROM内核进行测试时,MBIST控制器的测试模式选择信号Mode11和Mode10的值分别为0和1 。此时嵌入式SRAM和ROM内核处于旁路模式,MBIST控制器生成的测试数据不再通过WBR,测试数据选择WBY作为通过的路径。

本发明的另一目的是提供一种通过基于IEEE 1500标准兼容SRAM/ROM的MBIST控制器结构系统进行测试的方法。

本发明所述的上述的测试方法,包含主要步骤如下所述:

A.系统复位

对MBIST测试系统进行复位,使整个系统的起始状态处于可知和可控的状态。

B.模式的选择

系统共有三种模式,正常模式、旁路模式和内测试模式,所以在开始测试前,必须通过状态模式控制信号确定好模式为内测试模式。

C.被测对象的选择

首先选择类型:本系统支持对SRAM内核和ROM内核的测试,必须为测试系统指定一种被测存储器类型:SRAM内核或ROM内核。

由MBIST控制器采用对SelectIP[n-1] 赋值来选择不同类型存储器:SRAM内核或ROM内核。

然后选择存储器:对于存在n个被测嵌入式存储器的情况,还必须选中哪一个存储器为被测对象,那些没有被选中的存储器将处于正常模式。

由MBIST控制器给予指令确定SelectIP[n-1:0]总线的值对应的被测对象的ID号,同时就决定了多路选择器M1、多路选择器M2、多路选择器M3各自的连接对象和SelectWR信号选通WIR的对象,从而决定选定ID号的存储器处于被测状态。

D.当被测对象为SRAM内核时

首先执行March算法中的第i个March元素,当执行到第i个March元素的第j个操作时,判断本次操作有无故障。如果有故障,系统立即报错并且停止测试。如果本次操作没有故障,继续判断第j个操作是否被施加到SRAM内核的最后一个存储单元,如果不是,则地址+1后再执行第i个March元素的第j个操作及后续步骤;如果是,则判断是否为最后一个操作。如果不是最后一个操作,则j+1后返回重复;如果是,则判断是否为最后一个元素。如果不是,则i+1后返回重复;如果是,则测试工作最终结束。

E. 当被测对象为ROM内核时

如果被测对象为ROM内核时,系统首先读取ROM内核的第k个存储单元的数据,然后将其传送给MBIST控制器中的MISR进行数据压缩处理,处理操作完成后,判断当前的存储单元是否为ROM内核的最后一个单元,如果不是,那么对k加1,即读取第k+1个存储单元的数据,同样对其进行数据压缩处理,直到执行到最后一个存储单元为止。当所有的存储单元的数据都被读取和压缩完后,MBIST控制器会将实际计算出的ROM中数据的特征值与预期特征值进行比较,如果两者一致,说明被测ROM无故障,测试结束。如果两者不一致,那么系统报错并立即停止测试进程。

附图说明

图1  本发明的存储器内建自测试结构框图;

图3  SRAM/ROM的Wrapper封装结构图;

图2  MBIST控制器结构图;

图4  本发明的存储器内建自测试工作原理示意图;

图5  Avalon总线接口信号图 ;

图6  MBIST系统测试流程图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式进行详细描述。

见图1。设置了March算法状态机和多输入线性反馈移位寄存器MISR的MBIST控制器分别连接着外设的测试系统接口、围绕被测嵌入式SRAM和ROM内核的基于IEEE 1500标准的测试壳Wrapper和响应分析器,基于IEEE 1500标准的测试壳Wrapper与响应分析器连接,基于IEEE 1500标准的测试壳Wrapper和响应分析器均嵌入到系统芯片内部。

见图2。在MBIST控制器中,March算法状态机之后连接指令译码器和控制信号生成器,指令译码器后分别连接数据背景生成器、地址生成器和读写信号生成器,数据背景生成器、地址生成器和读写信号生成器均连接输出数据缓存器,数据比较器分别连接数据背景生成器和多输入线性反馈移位寄存器MISR。

所述测试壳Wrapper中(见图3),由与被测嵌入式存储器的端口数目相同数量的WBC前后串接而成的边界寄存器WBR与串行输入/输出接口WSI/WSO、并行输入/输出接口WPI/WPO及SRAM/ROM内核连接,旁路寄存器WBY与边界寄存器WBR并联于串行输入/输出接口WSI/WSO之间,指令寄存器WIR分别连接边界寄存器WBR、旁路寄存器WBY和控制接口WIP。

MBIST控制器产生的对测试壳Wrapper控制的状态模式控制信号有正常模式、测试模式和旁路模式三种测试模式信号。

见图4。MBIST控制器设置赋值为被测对象ID号的总线宽度为n位的总线SelectIP[n-1:0],总线SelectIP[n-1:0]分别与多路选择器M1、多路选择器M2和多路选择器M3连接,多路选择器M1连接测试壳Wrapper的串行输入接口WSI,多路选择器M2连接测试壳Wrapper的指令寄存器WIR,多路选择器M3连接测试壳Wrapper的串行输出接口WSO。其中,n等于被测嵌入式存储器的数目,即n个SRAM/ROM内核。

外设的测试系统接口为一个Avalon总线接口(见图5),接口信号包括:clk,reset_n,chipselect,address,write,writedata,read,readdata和byteenable,以及非Avalon信号的测试完成信号finish、故障指示信号error。

基于IEEE 1500标准且兼容嵌入式SRAM/ROM的MBIST控制器结构系统的测试工作步骤如下所述(见图6):

A.系统复位

对系统进行复位,使整个系统的起始状态处于可知和可控的状态。

B.模式的选择

通过状态模式控制信号确定好模式为内测试模式。

C.被测对象的选择

首先选择类型:本系统支持对SRAM内核和ROM内核的测试,必须为测试系统指定一种被测存储器类型:SRAM内核或ROM内核。

然后选择存储器:存在n个被测嵌入式SRAM/ROM存储器内核,选中一个存储器为被测对象,那些没有被选中的存储器将处于正常模式。

D.当被测对象为SRAM内核时

首先执行March算法中的第i个March元素,当执行到第i个March元素的第j个操作时,判断本次操作有无故障。如果有故障,系统立即报错并且停止测试。如果本次操作没有故障,继续判断第j个操作是否被施加到SRAM内核的最后一个存储单元,如果不是,则地址+1后再执行第i个March元素的第j个操作及后续步骤;如果是,则判断是否为最后一个操作。如果不是最后一个操作,则j+1后返回重复;如果是,则判断是否为最后一个元素。如果不是,则i+1后返回重复;如果是,则测试工作最终结束。

E. 当被测对象为ROM内核时

如果被测对象为ROM内核时,系统首先读取ROM内核的第k个存储单元的数据,然后将其传送给MBIST控制器中的MISR进行数据压缩处理,处理操作完成后,判断当前的存储单元是否为ROM内核的最后一个单元,如果不是,那么对k加1,即读取第k+1个存储单元的数据,同样对其进行数据压缩处理,直到执行到最后一个存储单元为止。当所有的存储单元的数据都被读取和压缩完后,MBIST控制器会将实际计算出的ROM中数据的特征值与预期特征值进行比较,如果两者一致,说明被测ROM无故障,测试结束。如果两者不一致,那么系统报错并立即停止测试进程。

以嵌入式SRAM/ROM存储器内核为测试对象,对测试结构进行功能验证,验证结果如表2所示。验证结果表明,基于IEEE 1500的嵌入式SRAM和ROM测试结构能够准确的检测出存储器存在的故障; MBIST控制器可以实现对多个不同种类的嵌入式存储器进行测试,减少了测试系统的硬件消耗,提高了SoC集成与测试的效率。

表2

序号验证内容验证结果1正常模式通过3无故障通过4呆滞1故障通过5呆滞0故障通过6地址译码故障通过7转换故障通过8桥接故障通过

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号