一种用于检测存储器译码电路的测试图形的生成方法

文档序号:6010682阅读:141来源:国知局
专利名称:一种用于检测存储器译码电路的测试图形的生成方法
技术领域
本发明涉及一种用于检测存储器译码电路的测试图形的生成方法。
背景技术
现有的对非挥发存储器电路比如FLASH存储器的测试图形数据主要包括全0,全1,棋盘格数据,对角线数据以及一些其他的数据比如5555,AAAA等。其中对角线数据可用于检测存储器的译码电路,同时可用于检测或非型闪烁存储器(NOR FLASH)的过擦除问题。但要写成对角线的图形数据,必须要求测试人员完全了解存储器阵列的架构。而且对于测试人员来说,不同的产品内部架构不同,存储阵列中每个BIT的物理位置和地址的对应关系也不同,需要分别开发向量来产生相应的对角线数据。因此对角线的测试方法不具备普遍性。

发明内容
本发明提供的一种用于检测存储器译码电路的测试图形的生成方法,用于检测存储器内的译码电路是否正常,具有普遍性,不同的存储器都可以用该方法来生成用于检测译码电路的测试图形,还可使译码电路测试图形和其他的测试图形相互兼容,省去写入2种测试图形之间的阵列清空操作,节省测试成本。为了达到上述目的,本发明提供一种用于检测存储器译码电路的测试图形的生成方法,该方法包含以下步骤
步骤101、清空阵列;
步骤102、初始化X方向地址;
即将X方向地址设置成首地址;
步骤103、在给定的约束条件下,由X方向地址计算出Y方向地址;
步骤104、在给定的约束条件下,由X方向地址计算出所要写入的数据;
步骤105、在X方向地址和步骤103得到的Y方向地址所决定的地址中,写入步骤104得到的数据;
步骤106、判断X方向的地址是否是最后一个,若是,执行步骤108,若否,执行步骤
107 ;
步骤107、X方向地址加I,执行步骤103 ;
步骤108、结束。所述的约束条件能保证最终产生的数据测试图形能被另一种其他的数据测试图形所兼容,也就是说,本方法产生的需要被编程的点,在另一种其他的数据测试图形中也一定是被编程的。用本方法产生的数据测试图形,每条位线上有且只有一个点会被编程。本发明能有效的测试X方向(字线字W0RDLINE)译码电路和Y方向(位线BITLINE)译码电路(包括字线字W0RDLINE间短路或位线BITLINE间短路),提供了全覆盖的测试方法,能广泛应用于非挥发存储器测试的测试中,测试人员可以在不需要了解存储阵列各BIT详细的物理位置的情况下使用该方法写出译码电路的测试向量,具有普遍性,该方法能和其他测试图形兼容以节省测试成本。


图I是本发明的流程 图2是本发明的实施例I的流程 图3是本发明的实施例2的流程 图4是测试图形的不意 图5是阵列地址示意图。
具体实施例方式以下跟据图I 图5,具体说明本发明的较佳实施例
存储阵列中X方向地址用来译码选中相应的字线W0RDLINE,Y方向地址用来译码选中相应的位线BITLINE组(比如I个字节BYTE或I个字WORD),每个位线BITLINE组由若干条位线BITLINE组成,表现为I个字节BYTE (或字WORD)中的I个比特BIT的数据。如图I所示,是一种用于检测存储器译码电路的测试图形的生成方法,该方法包含以下步骤
步骤101、清空阵列;
步骤102、初始化X方向地址;
即将X方向地址设置成首地址;
步骤103、在给定的约束条件下,由X方向地址计算出Y方向地址;
约束条件是为了保证声称的测试图形能和另一种测试图形(比如棋盘格图形)所兼容,即本发明所计算出的阵列中要写的点,在另一种测试图形中也将是被写的,这样在做完本发明的测试后,不需要再做对被测阵列清空的操作,而是可以直接进行另一种测试图形匕如棋盘格图形)的测试。步骤104、在给定的约束条件下,由X方向地址计算出所要写入的数据;
步骤105、在X方向地址和步骤103得到的Y方向地址所决定的地址中,写入步骤104得到的数据;
步骤106、判断X方向的地址是否是最后一个,若是,执行步骤108,若否,执行步骤
107 ;
步骤107、X方向地址加I,执行步骤103 ;
步骤108、结束。通过以上流程,每个由X方向地址所决定的字线W0RDLINE被选中且只被选中I次,这样就对每个X方向译码电路进行了唯一性的测试。对于每个X方向地址,都会产生一个Y方向地址和数据,不同的X方向地址自然会产生不同的Y方向地址和数据,这保证了 Y方向地址和数据的唯一性。方法中也会保证Y方向地址的全覆盖性。因此所有Y方向译码电路得到测试。一般非挥发存储器的位线BITLINE数量会多于字线W0RDLINE的数量,整个存储阵列呈现一个长方形。本发明的原则其实就是将长方形的存储阵列分割成若干正方形的子阵列,每个子阵列中的每个字线WORDLINE上有且只有I个BIT被写数据,每个子阵列中的每个位线BITLINE上有且只有I个BIT被写数据。生成的测试图形如图4所示,黑点为被编程为O的BIT,白色部分代表I的BIT。写入的测试图形中,每个位线BITLINE上有且仅有一个BIT被写入数据,这可以用来检测NOR FLASH的过擦除现象。
实施例I:
一个NOR FLASH存储器存储阵列的全地址是A
;X方向译码电路的地址是A[6:14],译码出512条WORDLINE ;Y方向译码电路的地址是A
,译码出64个WORD,每个WORD都是位宽16位,因此共有64*16=1024条BITLINE。存储阵列可被分成2个正方型的阵列(每个阵列都是512*512),数据DATA0 DATA3以及DATA7 DATAlO位于正方型的阵 列A中,数据DATA4 DATA7以及DATA8 DATA 15位于正方型的阵列B中。阵列地址示意图如图5所示。阵列被擦除的话所有BIT都是I状态;BIT被选中编程的话是O状态。棋盘格的测试图形的生成原则是当Α0~Α6~Α10=0 Γ表示异或)则该WORD编OOOOh的数据,否则该WORD保持FFFFh的擦除状态。用于检测存储器译码电路的测试图形的生成方法的流程如图2所示,该方法包含以下步骤
步骤201、首先对阵列进行擦除操作,将阵列所有BIT都清空到I状态。步骤202、将X方向地址初始化成OOOh。步骤203、通过X方向地址计算出Y方向地址,计算过程中加入和棋盘格测试图形兼容的约束条件。计算公式为A5=A14,A4=A13,A3=A12,A2=A11,A1=A10,A0=A6~A10。如果一个设计中棋盘格测试图形是当满足A0~A6~A10=0时写全O数据的话,这个公式都能被使用。步骤204、通过X方向地址计算出所要写入的数据。写入的数据其实是由A7,AS和A9通过逻辑计算出来的。计算公式为
A-1=A8 ;A-2=A7 ;A_3=A9 ;
DATAO=!(!Α-1&!Α-2&!Α-3)
DATAl=!(!A-1&IA-2&A-3)
DATA2=! (!A-1&A-2&IA-3)
DATA3=!(!A-1&A-2&A-3)
DATA4=DATA0
DATA5=DATA1
DATA6=DATA2
DATA7=DATA3
DATA8=!(A-l&!A-2&!A-3)
DATA9=! (A-1&IA-2&A-3)
DATAlO=!(A-1&A-2&IA-3)
DATAll=!(A-1&A-2&A-3)DATA12=DATA8
DATA13=DATA9
DATA14=DATA10
DATA15=DATA11
以上的DATA0 DATA15每一个代表一个BIT的数据。可以看出,对于所要写的WORD,只有2个BIT会需要写0,其他都维持I。如果一个存储阵列能分成2个正方形阵列,而且数据DATA(T DATA3以及DATA7 DATAlO位于正方型的阵列I中,数据DATA4 DATA7以及DATA8 DATA15位于正方型的阵列2中的话,以上公式都能被使用。步骤205、在步骤203得到的地址上写入计算出的数据(205)。 具体来说,将X方向A6114地址以及上面计算得到的Y方向Α(ΓΑ5地址进行拼接得到Α(ΓΑ14的一个全地址;然后通过写入操作在FLASH的这个地址写入一个WORD的数据,该数据就是步骤204计算得到的DATA0 DATA15的16个BIT的数据(1W0RD=16BIT)。FLASH的写入操作有公开的写命令方法。步骤206、判断X方向的地址是否是最后一个,若是,执行步骤208,若否,执行步骤207 ;
步骤207、X方向地址加I,执行步骤203 ;
步骤208、结束。
实施例2:—个NOR FLASH存储器存储阵列的全地址是A
;X方向译码电路的地址是A[6:14],译码出512条WORDLINE ;Y方向译码电路的地址是A
,译码出64个WORD,每个WORD都是位宽16位,因此共有64*16=1024条BITLINE。存储阵列可被分成2个正方型的阵列(每个阵列都是512*512),数据DATA0 DATA3以及DATA7 DATA10位于正方型的阵列A中,数据DATA4 DATA7以及DATA8 DATA 15位于正方型的阵列B中。阵列地址示意图如图5所示。阵列被擦除的话所有BIT都是I状态;BIT被选中编程的话是O状态。反棋盘格的测试图形的生成原则是当Α0~Α6~Α10=1 Γ表示异或)则该WORD编OOOOh的数据,否则该WORD保持FFFFh的擦除状态。用于检测存储器译码电路的测试图形的生成方法的流程如图3所示,该方法包含以下步骤
步骤301、首先对阵列进行擦除操作,将阵列所有BIT都清空到I状态。步骤302、将X方向地址初始化成OOOh。步骤303、通过X方向地址计算出Y方向地址,计算过程中加入和反棋盘格测试图形兼容的约束条件。计算公式为A5=A14,A4=A13,A3=A12,A2=A11,Al=AlO,AO= ! (A6~A10)。如果一个设计中反棋盘格测试图形是当满足A0~A6~A10=1时写全O数据的话,这个公式都能被使用。步骤304、通过X方向地址计算出所要写入的数据。写入的数据其实是由A7,AS和A9通过逻辑计算出来的。计算公式为A-1=A8 ;A-2=A7 ;A_3=A9 ;
DATAO=!(!A-l&!A-2&!A-3)
DATAl=!(!A-1&IA-2&A-3)
DATA2=! (!A-1&A-2&IA-3)
DATA3=!(!A-1&A-2&A-3)
DATA4=DATA0DATA5=DATA1DATA6=DATA2DATA7=DATA3DATA8=!(A-l&!A-2&!A-3)
DATA9=! (A-1&IA-2&A-3)
DATAlO=!(A-1&A-2&IA-3)
DATAll=!(A-1&A-2&A-3)
DATA12=DATA8
DATA13=DATA9
DATA14=DATA10
DATA15=DATA11
以上的DATA0 DATA15每一个代表一个BIT的数据。可以看出,对于所要写的WORD,只有2个BIT会需要写0,其他都维持I。如果一个存储阵列能分成2个正方形阵列,而且数据DATA(T DATA3以及DATA7 DATAlO位于正方型的阵列I中,数据DATA4 DATA7以及DATA8 DATA15位于正方型的阵列2中的话,以上公式都能被使用。步骤305、在步骤303得到的地址上写入计算出的数据。具体来说,将A6 A14地址以及上面计算得到的Α(ΓΑ5的地址进行拼接得到Α(ΓΑ14的一个全地址;然后通过写入操作在FLASH的这个地址写入一个WORD的数据,该数据就是前面计算得到的DATA0 DATA15的16个BIT的数据(1W0RD=16BIT)。FLASH的写入操作有公开的写命令方法。步骤306、判断X方向的地址是否是最后一个,若是,执行步骤308,若否,执行步骤307 ;
步骤307、X方向地址加I,执行步骤303 ;
步骤308、结束。尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。
权利要求
1.一种用于检测存储器译码电路的测试图形的生成方法,其特征在于,该方法包含以下步骤 步骤101、清空阵列; 步骤102、初始化X方向地址; 即将X方向地址设置成首地址; 步骤103、在给定的约束条件下,由X方向地址计算出Y方向地址; 步骤104、在给定的约束条件下,由X方向地址计算出所要写入的数据; 步骤105、在X方向地址和步骤103得到的Y方向地址所决定的地址中,写入步骤104得到的数据; 步骤106、判断X方向的地址是否是最后一个,若是,执行步骤108,若否,执行步骤107 ; 步骤107、X方向地址加I,执行步骤103 ; 步骤108、结束。
2.如权利要求I所述的用于检测存储器译码电路的测试图形的生成方法,其特征在于,所述的约束条件能保证最终产生的数据测试图形能被另一种其他的数据测试图形所兼容,也就是说,本方法产生的需要被编程的点,在另一种其他的数据测试图形中也一定是被编程的。
3.如权利要求I所述的用于检测存储器译码电路的测试图形的生成方法,其特征在于,用本方法产生的数据测试图形,每条位线上有且只有一个点会被编程。
全文摘要
一种用于检测存储器译码电路的测试图形的生成方法,先清空阵列,然后初始化X方向地址,在给定的约束条件下,由X方向地址计算出Y方向地址,并计算出所要写入的数据,最后在X方向地址和步骤103得到的Y方向地址所决定的地址中,写入得到的数据,遍历X方向地址并重复以上操作。本发明用于检测存储器内的译码电路是否正常,具有普遍性,不同的存储器都可以用该方法来生成用于检测译码电路的测试图形,还可使译码电路测试图形和其他的测试图形相互兼容,省去写入2种测试图形之间的阵列清空操作,节省测试成本。
文档编号G01R31/3183GK102798816SQ20111013834
公开日2012年11月28日 申请日期2011年5月26日 优先权日2011年5月26日
发明者董艺, 周军, 刘剑海 申请人:上海复旦微电子集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1