为了能够有效地检测存储器芯片,必须分析半导体存储器的结构,确定和选择几种能够有效检验存储器功能的图形,使之既能达到检测目的,又使测试量限定在允许范围之内。但实际应用中,由于每种测试图形都有其局限性,再加上各个生产厂家以及各种型号存储器的特性不完全一致,现在还没有最佳的统一测试方法。
根据FLASH芯片的特点,我们主要改进并使用了以下几种办法:
4.1 奇偶校验图形检验法
奇偶校验图形检验法[6]是一种比较适合存储器测试的方法。在奇偶性图形检验法中,向存储单元矩阵写入的数据图案是根据存储单元选址地址码的奇偶性而定的。如果存储单元的行地址码和列地址码中有偶数个1,其奇偶性为0,则在该存储单元中写入“0”(或“1”);如果有奇数个1,其奇偶性为1,则在该存储单元中写入“1”(或“0”);存储单元矩阵存入的信号数据将是行地址码和列地址码之间的异或关系,其算法如下:
式中Pr为行地址的奇偶性,Pc为列地址的奇偶性。
FLASH芯片奇偶性图形功能检测的流程是:首先根据算法写入背景图形,然后逐位读出并检验结果的正确性,再将芯片数据擦除,以反码图形重复上述测试过程。其总的测试步数为M=4N。
由于奇偶性图形是不对称的,任何一位的地址译码器失效都会引起本应写入互为反码数据的两个存储单元之一重复选址,并且第二次选址改变了第一次选址时写入的内容,而另一个存储单元未被访问。因此地址奇偶性图形可以很好地检验出地址译码器的故障。
奇偶性图形每次都把整个存储器单元写完后再整体读出,没有反复擦除的过程(整个过程只需擦除两次),非常适用于FLASH芯片测试。
4.2 齐步法
齐步法[6]是对存储器的每个单元依次进行检验的一种方法。首先从第一个存储单元开始,逐个对每个单元进行取反和检验,直到最后一个单元检测结束才完成一遍扫描。然后,在背景为反码的情况下,从第一个存储单元开始,逐个对每个单元进行取反和检验,直到最后一个单元检测结束。整个过程就像所有单元一起向前走步一样,因此称为“齐步法”。根据FLASH芯片特点,我们改变在反码背景条件下走步的过程,把它改造如下,形成了适合的齐步算法。
在图2中给出了测试FLASH齐步法的测试流程:
在测试之前,每个存储单元具有信息“1”。首先在存储矩阵中写入背景图案(初始状态为全“1”),然后从地址A0开始选址进行读“1”,写“0”,读“0”操作,并检验读出结果。接着,依次到下一个选址单元重复该操作(读“1”,写“0”,读“0”),直到全部存储单元(A=N-1)重复完为止。再在读操作方式下对全部存储单元进行一次正向扫描读出,检查有无正向对反向的多重写入问题。然后将存储器输入擦除,使之全部单元为全“1”。进而开始反向扫描:从最高地址AN-1开始执行读“1”,写“0”,读“0”操作,逐位进行上述操作过程,直至最终地址为AN-1,最后对全部存储单元进行读“0”扫描,以检验读出结果的正确性。
用这种测试算法检测存储芯片,可使每个存储单元都被访问。既能保证每个存储单元都能存储“1”和“0”数据,又能保证每个存储单元都受到周围其他单元的读“1”、读“0”和写“1”、写“0”的打扰。齐步法总的测试步数为:
式(3)中,W表示写操作,R表示读操作,Q表示“1”, 表示“0”。Bij表示存储器第i行j列的存储单元。如WBij(Q)就表示对第i行j列的存储单元进行写“1”操作所用的时间。
由式(3)可知,其测试步数共9N,且整个过程只需两次擦除操作,可见它是一种即快速又有效的方法。
4.3 移动变反法
移动变反测试法[6]是按顺序变反每个地址存储单元数据的方法。它需要在变反前后读出每个存储单元的数据,而且,还必须借助于前进和后退的地址寻址序列产生地址跳跃,地址以20、21…、2n-1次方的增量变化(n是地址位数)。按照以上规律进行地址跳变后,再对每个地址进行三次操作:读、写和读即可完成一个循环。
以上操作的目的主要在于地址间产生有效相互打扰,但显然如果以整个芯片为单元进行上述操作需要多次擦除数据,因此对FLASH测试芯片应做如此改进:以扇区为单元完成操作。假设FLASH芯片有N个扇区,移动变反法的功能测试先要以“1”为背景图案写入全部存储单元。首先,在第一个扇区,对A0存储单元读出并验证是“1”,再将该存储单元改写成“0”,最后读出该存储单元的信息以证明新写入的“0”仍存于该存储单元中。第一扇区测试地址按有效位的阶20递增,对每个存储单元都要重复上述的读“1”,写“0”读“0”的操作过程,需要测试步长为3n(n为该扇区的存储单元数)才能使全部的存储单元都变成“0”。这次测试的地址序列是递增1的,即由地址最低位A0增加到最高位A(n-1),对A(n-1)存储单元进行读“1”,写“0”和读“0”验证。