测试存储器的方法

文档序号:6762673阅读:143来源:国知局
专利名称:测试存储器的方法
技术领域
本发明涉及有行和列冗余而行方向和列方向的保持道(keepingtrack)有时必须修复的存储器阵列测试方法,以及用于执行该方法的基于存储器的设备。
本发明涉及权利要求1的前述部分部分描述的方法。多年以来集成电路存储器芯片的容量不断增长。大容量存储器,特别是DRAM,的产量低。提供有备用行和备用列从而在测试后分别代替错误的行和列以修复错误的阵列的存储器已成为惯例。在一般的制造中,2%的冗余提供3倍的产量。测试存储器阵列已成为精确的技术,采用预定的内容和预定的顺序在阵列上施加多个测试激励,接着读取存储的内容与预期的响应相比较。激励与预期响应的结合在一起经常称为测试模型。
近来,处理器或其他电路与大量的所谓的嵌入式存储器相结合。这种其他电路的特征对于本发明来说不是很重要。对于数字处理,这种结合经常允许存储器与其他电路间的通信带宽在线路的数目和每条线路的位速率两者上都比分立的存储器与环境间的带宽更大。其他电路在不同方面将存储器与芯片的周围相隔离。嵌入式阵列的IO位端一般比这种结合的数据针多。这样,对阵列的直接读取一般不可行。例如通过签名生成机制将测试限制成一个便宜的芯片上通过/失败确定将不能执行修复操作。
这种修复自己有一种所谓的NP-HARD问题。该问题是分别为存储器中给定的一组出错位位置和给定数量的备用行和列确定以下该处理器是否是可修复的;和如果是哪个出错行和/或列可以被修复。
该问题是NP-HARD,因为找到最佳方式的时间复杂性是备用行和备用列的指数。幸运的是,在大多数实际情况中这是容易处理的,因为假设全错误位图是已知的,涉及的备用行和备用列的数目相对较小。修复策略可以在芯片外(off-chip)处理。但是,由于需要大量的测试模式,外部确认完全响应模式的并串转换将大大的减低测试的执行。另一方面,芯片上存储完全错误模式需要与被测试存储器大小相同的第二存储器,以及适宜的和昂贵的多个策略确定逻辑。
当前,存储器的大规模测试的特定方面不仅要指出需要修复的行和列,还要跟踪需要修复的量并在超出修复能力时尽早给出信号。这是很困难的,因为特定的位错误可能是被修复的行,被修复的列或两者的一部分。在测试期间,由于后来检测到的错误,甚至最佳分配可能需要改变。
因此,一种改进的折衷应当只要求芯片上功能的适当扩展,而另一方面只需要与外部进行小的通信,并提供无损失的压缩响应模式。特别是,芯片上存储空间应保持很低。还有,制造产量的损失应很低。
这样,本发明的一个方面是提供一种方法,它动态地评估至少已部分检测到的错误的配置和根据必须修复策略(Must RepairStrategy)将错误经济地分配至修复工具,并当不再能保证总体修复时尽早发出信号。
因此,根据本发明的一个方面,本发明的特征如权利要求1的特征部分。本发明还涉及用于实现权利要求1的方法的基于存储器的设备。本发明的进一步的方面在附属权利要求中说明。
美国专利5,337,318描述了一种对必须修复的存储器阵列的行和列进行计数的方法,并发出不能修复的信号。但是,本发明允许动态地分配一定的错误至冗余列或冗余行以更好地使用总体修复功能。
本发明的这些和其他方面及优点将在以下参考公开的最佳实施例,特别是参考所附的附图详细讨论,其中

图1,实施本发明的集成电路结构;图1A,图1的结构的操作模式;图2,用于执行9N匹配存储器测试的有限状态机;图3,响应求值器实施例;图4,表示修复分析过程;图5是修复分析硬件的方框图。
图1示出实施本发明的集成电路结构的一个实施例。集成电路芯片20已经有外部管脚或连接焊盘,示为束36,其中可以包含数字数据,模拟信号,扩展和电源信道,安排成有适当的通路宽度和幅值范围的不同子束。以下,不同的电源和控制互连被认为是标准的,并不再详细描述。并且不再描述基本电子存储器功能的操作。当前,芯片区的较大部分用于存储器24,这可以根据不同的技术,例如DRAM或SRAM。
方框22表示最大范围的“被测试的存储器以外”的电路并可以包括处理器功能和/或任何可应用特性的其他存储器或非存储器功能,例如单一目的串行逻辑电路,模拟信号处理,可编程逻辑阵列,和其般不基于作为存储器的统一单元的其他功能。要测试的存储器可以分布在多个物理和/或逻辑分立的阵列,为清楚起见未示出这个特征。
现在,在非测试条件的实施例中,功能块22与存储器24通信,在方框28,30以透明模式控制,这样,信号芯片选通束CEB,写选通束WEB,地址A,数据入DI,数据出DO基本上没有阻碍地传递。这些信号的其他实施例也是可行的。方框22与束36未示出的外部电路单项和/或双向通信数据和控制信号。这种通信一般由方框22提供的内在功能控制。而且,线34通信错误信息,它也可以通过22运行。在现有技术中,术语内置自检BIST是指测试提供通过/失败数据,术语内置自诊断BISD是指测试指向实际找到的错误,而内置自修复BISR有芯片上执行的修复,这样不再需要提供外部指针。本发明涉及BISD方式。
当前,将所有的测试响应线与环境相连接一般是很昂贵的。因此,本发明增加少量硬件和控制,根据其中发现,它可用于分析错误模式以动态地和至少部分地将错误分配至可用冗余。其策略是将低级测试步骤与部分芯片上分析相结合,其结果只需要较少量的存储空间。接着,该少量结果被输出以进行芯片外分析。该输出需要很少时间,和芯片外处理能够在与芯片本身的尺寸限制无关的硬件和软件中完成。
现在,存储器24,特别是通过方框28和30,已提供了方框26中的BISD功能。本发明的不同特征以有利的方式相区别。请注意,本发明的测试方法涉及必须指出所有检测到的错误并只需要芯片区域和测试时间的很小开销的大规模测试。本发明允许一旦特定错误信号通知已被完全分析则自动继续分析。所有得到的错误数据能够自动发信号至外部设备,而不论不同错误发生的实际内部间隔。所使用的装置如果不是最少的则是非常有限的。最后,本发明使用错误分配的动态方法,其中部分决定被延迟。此外,本发明提供发出不可修复信号。
图1A示出图1结构的操作模式。在方框50,控制信号bistEnable控制操作的一般模式BIST空闲,BIST不同活动项被禁止,和BIST外壳是透明的,注意方框28和30,这样对信号的传递只有很小的影响。这个状态在很长时间占主导地位,特别是在制造测试过程已经结束后。BistEnable信号的激活使系统转向方框53的测试过程。测试适当地在两种操作模式52,54之间切换。在模式StimGen52中,例如根据所谓的匹配测试或其他可用的方法,激励生成器28处于控制,并进行存储器测试。该测试产生施加到存储器24的地址A和数据入DI对的一个序列,以最终产生存储器24的数据出DO的相应的序列。此外,激励生成器28发送地址A和相关的希望的响应ER至响应求值器(evaluator)30。一般虽然不限制,希望的响应ER与相关的最后写入与该地址相应的存储器位置的数据DI相同。请注意,一系列地址的DI字序列可以是相互相同的。
现在,在方框30从存储器24接收的数据出DO与适当的数据相比较处于RespEav154模式。在这个方面,参考图2将公开完全多地址测试序列。现在,只要比较未找到数据出与它的希望的响应之间的差异,响应求值器30的挂起信号保持不声明(nonasserted),并进行下一个测试循环。但是,如果比较找到差异,响应求值器30的挂起信号变为声明。并且下一个测试循环保持挂起。在方框54,错误被求值,这将在以下参考图3进行说明。这个信息最终将用在芯片20以外,用于控制物理修复过程,例如采用熔丝烧断。如果方框54的求值完成,挂起信号再次去声明,使得测试能够以其预定的方式继续。本发明不说明物理地址序列或测试模式的内容,因为它不同于采用的特定的测试。最后,测试结束,系统从测试方框53退出。
随后,存储在图5的表中的求值结果被读出,并通信至外部分析和修复设备(未示出)。通信可以通过线路34,通过束36的一个或多个线路或其他而进行。现在,外部设备知道足够的检测到的不同错误以确定是否需要修复方法和需要什么修复方法。通过其自身,这种装置的策略与本发明无关,因为这种装置能够以相同的方式操作,假定存储器位错误在检测时立即出错。在与外部设备的通信执行以后,图1A的系统再次进入方框50。
图2示出用于执行9N匹配测试的有限状态机实施例。为简单起见,只示出不同的状态。在初始化以后,有内容的字W0在一个循环序列中写入,一般写入所有可用地址,每个循环属于单个字位置。接下来,在属于所有或部分先前写入的操作R0再次读出一个位置序列至希望生成字W0,并在相同的地址操作循环将字W1写入当前的字位置。之后为R1/W2所标识的第三数据内容再次执行一次这些读/写循环。接下来,根据R2/W3,为第四数据内容再次执行一次这些循环,紧接着写入之后在没有地址变化的情况下,后者被立即再次读出,由R3标识。接下来,所有的字被再次读出,由R3A标识,用于检查实际存储的内容。这是每个地址位置的9个步骤的最后一个。该图以一个就绪状态和一个空闲状态结束。9N匹配测试调度是通常采用的多种方式中的一种,并且本发明并不特别涉及这种方式。实际上,本发明可以用于地址序列被改变,读地址序列与写地址序列不同,和序列中的连续数据字之间不同的情况。
图3示出本发明使用的响应求值器实施例。为了简化起见,该电路的同步或其他应用的控制未示出。在图的顶部,当前实施例希望的响应模式和实际的响应模式两者有240位长,并在方框60进行高速并行逐位比较。该比较为实施例产生一个240位的当前错误字,它在方框62与实际地址的“修复位信息错误字”逐位与运算(ANDED),它是已检测并存储在图5的表中的所有错误的映象。如果当前字还未发现错误。比较是一个伪操作。如果以前的错误字是非零,在方框66为所有非零模式检测与运算向量(ANDED vector)。如果是,挂起信号保持非声明为“0”,并且测试继续。如果检测未检测到非零模式,执行以下将讨论的修复分析。应当清楚的是分析结果只在少数情况下输出。请注意,为单一的地址和模式未检测到错误还可能由当前模式也未检测到的锚误所产生,例如固定型故障。
以上说明的过程可以进行以下扩展。因为无损失压缩响应信号模式能够以长字符串形式出现,测试器可以在预定的时间每时钟周期只接收一位。即使实际上检测到一些错误,总体运行时间比最小时间稍长一些。估算可修复的不同的错误模式的该超出时间是可能的,从而估算最大的可行的测试时间。现在,在该估算时间长度内不能完成BIST过程的存储器可以认为是不可修复的,从而当前测试可以终止而该电路可以抛弃。为简单起见,该超出检测未在图中示出。最大运行时间的选择是一个关联参数。存储器设计应当指定最大可修复错误模式范围,每个模式与产生的信号位长度相结合。这个长度的最大值,冒着过于悲观的危险,可以指定一个相对更低的值,例如低10%,并用于设定上述的最大阈值信号长度。请注意,总体信号长度可能超过外部测试器的存储器容量。
另一个特征是面向检测的地址排序。该特征基于对于匹配测试逻辑地址排序基本上是任意的这一事实。这种自由度可以用于以许多连续地址有相同的错误模式的方式选择一个地址序列。可以在不知道实际错误的情况下作出选择。例如,因为位线(bitline)错误一般是最常见的错误,可以选择匹配测试的地址排序使得测试在共享存储器物理位线的地址上连续匹配。请注意,存储器阵列内的物理地址不需要在地址位上与逻辑地址相同。在错误位线的情况下,这将导致为特定的位线错误只通信单个全响应信号。特别是,已发现对于特定的存储器技术,列错误有最大的可能性。
图4以伪码的形式示出修复分析过程。另外,图5是进行部分修复分析的芯片上分析硬件的方框图。其中,项70是存储器本身,它在本实施例中有16行,每行16位。在通常的应用中,它将会大的多,并减少相对冗余量。为了更清楚起见,不同的寻址和同步机制,以及所需的数据通路在图5的装置中省略。存储器阵列有三个冗余列72和两个冗余行74,这些数目在实际中一般要大些。
接下来,本实施例有一个必须修复表76,它有R*(c+1)个位置,每个有一个字线地址部分78,它通过关联被寻址,其地址在本实施例中只有四位。表中还有一个错误字部分80,它等于阵列字长并能够包含由它的行地址部分指向的行的错误映象。
本实施例使用图3的修复寄存器64,其宽度等于阵列的字长以表示哪个列当前被设置为修复。最后,每个阵列列有单独的计数器装置82用于记录当前列的错误个数。计数器可以作为短寄存器实现。请注意一个列在确定需要冗余列以前一个列中位错误的个数等于冗余行的个数,它一般在2-16的范围,这样一般最多需要四位寄存器。
芯片上处理基于必须修复策略执行部分修复分析。总体分析策略基于以下陈述。如果c列能够被修复,而一定行i有多个c的错误,这些错误不能全部由列修复。因此,行i必须由备用行修复。
此外,如果r行能够被修复,而一定列j有多过r的错误,这些错误不能全部由行修复。因此,列j必须由备用列修复。
现在,芯片上修复分析按以下操作。首先,实际响应模式与希望的响应模式按位比较以生成差异模式。差异模式与表示先前已被检测的列的修复寄存器相比较。只有在这些列以外发现错误时才执行修复分析。之后,在图5的表的第一字线地址列中扫描当前字线地址。这可由传统的相关的查找机制实现。如果未找到行地址而表有空位置,则实际字线地址和实际错误字被存储在表中。如果不能找到字地址而表是满的,则存储器不能修复,并且测试被终止。为了简单起见,这里未详细描述终止机制。
但是,如果字地址已经在表中出现,首先新错误字与存在的表条目进行或运算(ORED)并被存储。接下来,先前的表条目从新表字中减去并且产生的位被用于增加计数器装置82中分别相关的列计数器。如果该增加导致一个或多过计数器/寄存器溢出,修复寄存器64中的错误位为当前位位置而被设置。它适宜通过将计数器进位位与修复寄存器的已有内容进行或运算(ORING)而实现。
接着以上的说明,有超过可修复列个数的错误个数的表行能增加被修复列的个数。如果该个数超过冗余列的个数,阵列被通知不能修复,而测试过程终止。相似的,如果修复寄存器中被修复的列个数超过冗余列个数,阵列被通知不能修复,而测试过程终止。如果特定的包含存储器的芯片有更多的并联的阵列,其后可以有不同的替换和/或更高级保护策略,但这不在本发明的范围内。表中行个数按以下确定。行位置的第一个数用于存储这样的错误,它的行引起冗余行的替换。在本实施例中,它达到两个位置。行位置的第二个数用于存储其他错误,它们总体引起冗余列的替换。这些错误的个数不能高于冗余列个数与冗余行个数的乘积。这两组行位置可以形成单个阵列的一部分。简化的方法可以只有行位置的第二个数,因为这可以覆盖所有错误分布的大部分。例如,如果两个个数都等于16,部分80可以从272减小到256位置,并使用相同的分析程序策略。
以上,冗余行和/或冗余列可以用与标准行和列相同的方式测试。这需要表部分80更大的宽度和表部分78的更大地址跨度。上述的过程相似地应用于按位组织的阵列,应用于按字组织的阵列更好。请注意互换行和列允许保持其后的策略。
以上,还未处理一些复杂的情况。首先,测试一般基于字进行,因为字是计算机用于信息处理的单元。另一方面,存储器可以基于行组织,行可以包含多个字,例如在该例中一行有240位,它可包含15个字,每字16位。按位组织的存储器将有只有一位的字长度。在测试的最后,修复操作将按行和列组织。
权利要求
1.一种测试存储器阵列的方法,通过将所述阵列连接至一对用于生成行激励序列的激励生成器装置和用于求值所述激励产生的响应序列的响应求值器装置,在非测试条件下控制所述装置对为透明模式,在测试条件下控制所述装置对分别为激励生成模式和响应求值模式,并且在以后的修复条件下允许基于行-和/或列修复干预分别到达可修复的行和列的预定最大值,其特征在于所述测试条件为每个列在芯片上计数错误个数,当到达超过最大可修复行数的错误数后发出当前列“必须被修复”的信号,相对于所述发出的信号,为相关的基于行的修复能力保持依赖于发信号列以外的行的一个或多个进一步的错误,并且在所述测试条件以后通过输出所述信号和所述进一步错误的表示传送至所述修复条件。
2.如权利要求1的方法,为已经列修复的任何错误进行所述保持。
3.如权利要求1的方法,在所述测试条件中以发信号为“必须被修复”的行的形式存储中间测试结果,因为其中的的错误个数超出可修复列的最大个数。
4.如权利要求3的方法,在一个表装置中执行所述存储和计数,该表装置有等于每一个都存储发信号行的标识符的可修复行的个数的第一组条目和等于冗余行个数和冗余列个数的乘积的第二组条目。
5.一种实现权利要求1的方法的基于存储器的装置,包括带有接口装置的存储器阵列,接口装置用于连接所述阵列与一对用于生接收行激励序列的激励生成器装置和根据所述的激励序列输出相应序列的响应序列的响应求值器装置,包括控制装置,用于在非测试条件下控制所述装置对为透明模式,在测试条件下控制所述装置对分别为激励生成模式和响应求值模式,并且在以后的修复条件下允许基于行-和/或列修复干预分别到达可修复的行和列的预定最大值,其特征在于包括芯片上计数装置,用于在所述测试条件为每个列计数错误个数,当到达超过最大可修复行数的错误数后发出当前列“必须被修复”的信号,和存储装置,用于相对于所述发出的信号,为相关的基于行的修复能力保持依赖于发信号列以外的行的一个或多个进一步的错误,和包括输出装置,用于在所述测试条件以后通过输出所述信号和所述进一步错误的表示传送至所述修复条件。
6.如权利要求5基于存储器的装置,其中存储器行容纳整数个数的存储器字。
全文摘要
通过连接所述阵列与一对用于生成行激励序列的激励生成器装置和用于求值所述激励产生的响应序列的响应求值器装置以测试存储器阵列。在非测试条件下控制所述装置对为透明模式,在测试条件下控制所述装置对分别为激励生成模式和响应求值模式,并且在以后的修复条件下允许基于行-和/或列修复干预分别到达可修复的行和列的预定最大值。特别是,所述测试条件为每个列在芯片上计数错误个数,当到达超过最大可修复行数的错误数后发出当前列“必须被修复”的信号。相对于所述发出的信号,为相关的基于行的修复能力保持依赖于发信号列以外的行的一个或多个进一步的错误。在所述测试条件以后通过输出所述信号和所述进一步错误的表示传送至所述修复条件。
文档编号G11C29/12GK1321320SQ00801953
公开日2001年11月7日 申请日期2000年9月8日 优先权日1999年9月15日
发明者E·J·马里尼森, G·E·A·罗斯博格, P·维拉格 申请人:皇家菲利浦电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1