动态地隐藏存储器缺陷的方法及装置的利记博彩app

文档序号:6558161阅读:158来源:国知局
专利名称:动态地隐藏存储器缺陷的方法及装置的利记博彩app
技术领域
本发明涉及一种存储器,尤其是一种动态地隐藏存储器缺陷的方法及装置(method and apparatus for dynamically hiding memory defect),本发明尤其适用于具有嵌入式存储器(embedded memory)的晶片。
背景技术
在存储器中的缺陷可能导致系统的误动作(malfunction)及无预警的突然当机(abrupt shutdown without advance warning),这不但要耗费使用者可观的时间,也可能造成难以弥补的损失。然而,在存储器的制造过程中,总是不可避免地有一定比例以上的存储器发生缺陷,通常地,藉由在晶片制造完成后对存储器立即进行测试,以便发现有缺陷的存储器并将其抛弃,不过,存储器的抛弃导致损失,尤其是存储器的容量不断地被提高而制程技术不断地精进,一个晶片只因为极少数的缺陷便被抛弃殊为可惜。为使具有少数存储器缺陷的晶片仍然能够被使用,而毋须抛弃,冗余架构(redundancy scheme)被用来取代(replace)或修补(repair)受损的存储体。典型地,冗余架构的修补方法包括四套程序测试、分析、修补及再测试,在第一套程序中,籍由对存储器施予一系列的测试信号态样(test signal pattern)以侦测发生存储器失效(failure)的位置,接着的分析程序规划并决定为修补缺陷存储器的冗余存储器的最佳化使用,然后在修补程序中烧断熔丝(fuse),以定义线路的连接及不连接,最后再重新测试,以确认修补后的晶片正确地运作。
使用冗余架构来修补存储器虽然可以减少晶片被抛弃,不过这些额外的电路及熔丝占据可观的晶片面积并使电路及制程变复杂,不但增加成本,也使得晶片变大,而此类修补方法须耗费很长的时间在测试程序及分析程序上,亦增加可观的时间及成本。存储器缺陷的发生导致的问题在具有嵌入式存储器的晶片中更形严重,这是因为具有嵌入式存储器的晶片其电路比单独的(stand-alone)存储器晶片复杂许多,嵌入式存储器由于其周围尚有许多的电路,要对其进行测试具有较高的困难度,使用的测试器(tester)昂贵且测试程序更冗长。许多方案被提出来改善这些缺点,例如,Chan等人在美国专利第5,841,784号中提出一种方法及电路,利用一切换电路,使嵌入在一集成电路中的存储器于存储器测试模式期间暂时地耦合至连线接合垫(Interconnect pad),以减少测试时间及成本;Irrinki等人在美国专利第6,067,262号中提供一种具有内建自我测试(built-in-self-test)及内建自我修补(built-in-self-repair)电路的冗余分析方法学(redundancy analysis methodology),使得嵌入式存储器可以被标准的逻辑测试器测试,并允许侦测与操作条件有关的现场错误(field error);Wheater在美国专利第6,073,258号中揭示一种执行二维的冗余计算的方法及装置,以避免测试及修补程序中失效资料的收集。
当较大的嵌入式存储器的需求成长时,因为制程所导致的良率限制也跟着增加,冗余测试虽然典型地被用来作功能性的测试,但此法对于较大的嵌入式存储器经常是不足或不实用的。嵌入式存储器的设计及制造的困难度较高,因此为了存储器缺陷而抛弃晶片所造成的损失亦较大,故具有嵌入式存储器的晶片更希望尽可能减少晶片被抛弃。McClure在美国专利第5,471,431号中提出一种方法及结构,利用熔丝电路从一嵌入式存储器中定义出具有功能的一部份,虽然得到较小的具有功能的嵌入式存储器却使得晶片的抛弃最小化。
然而,前述的习知技艺只能排除当时发现的缺陷,这是静态的或固定的修补,一旦完成修补程序,存储器便是固定不变的,晶片在未来使用后始发现或发生的缺陷将不能被排除,该发生缺陷的晶片最终仍将被抛弃,更严重的是,这些后来的缺陷将造成使用中的晶片误动作或系统当机,因而导致更大的损失。Kablanian在美国专利第5,764,878号中建议一种内建自我修补系统在具有嵌入式存储器的晶片上,每次电脑系统的电源启动(power up)时,自动地执行如前述的测试、修补及再测试等程序,此法可以达到动态地修补存储器缺陷,却必须引入庞大且复杂的电路在晶片上,并且每一次电脑系统的电源启动时皆须经历前述的繁复冗长的程序,而且每一次皆须重新编制存储器的地址对照表,因此并不实用,而一旦存储器缺陷太多,超过冗余的电路能够修补的数量,系统将会当机。Correale Jr.等人在美国专利第6,192,486号中提供一种存储器缺陷操纵电路(memory defect steering circuit),其不使用熔丝进行修补,而在每次电脑系统启动时侦测并回避(bypass)缺陷的存储器,再重新计算有效存储器的大小及改造存储器地址,此法虽然减少存储器的大小,但能够动态地排除存储器缺陷,不过,每次重新计算有效存储器的大小及改造存储器地址仍然不方便,而且增加的改造存储器地址的电路需要占用相当的面积,又在重新映照(remapping)存储器地址时,由于存储器地址是连续性的,不能单独地排除缺陷的存储器,必须从缺陷的存储区的下一个存储区开始使用,在缺陷的存储区后前的存储区皆被浪费了。

发明内容
本发明即为了改善前述习知技艺的缺失而提出一种动态地隐藏存储器缺陷的方法及装置,本发明不使用熔丝来修补存储器,而是将存储器缺陷遮蔽(mask),因而避免了冗长且复杂的分析、修补及再测试的程序,本发明可能导致缩减存储器的大小,但却使得有缺陷的晶片能够被使用,而毋须抛弃。
本发明的目的之一,是利用一种简单且直接的方法及装置,以排除存储器缺陷。
本发明的目的之一,在于减少晶片因为存储器缺陷而被抛弃。
本发明的目的之一,是动态地排除存储器缺陷,在晶片每一次启动时发现并隐藏其中的存储器缺陷。
本发明的目的之一,是避免庞大且冗余的电路被介入晶片中。
本发明的目的之一,是避免因为存储器缺陷而重新运算存储器地址的内容。
本发明的目的之一,是保留了具有嵌入式存储器的晶片上的功能性电路。
本发明的目的之一,是毋须修补存储器。
在一实施例中,对一存储器进行初始测试(initial test),以得知缺陷的存储区(entry),一存储区占用对照表(entry occupied mapping)含有复数个栏位(field),每一个栏位对应该存储器的一个存储区,藉一初始控制装置(initial control apparatus)将每一个缺陷的存储区所对应的占用对照表的栏位一一地加以标示(mark),使其被认为已经被占用,因而该缺陷存储区后续不再被使用,直到关机。
在另一实施例中,提供一备用暂存器仓库(backup registers pool)及一错误存储区记录/控制装置(error entry recorder/controller apparatus),在初始测试存储器后,错误存储区记录/控制装置记录错误存储区,并从备用暂存器仓库选取假代存储区(pseudo entry),每一个假代存储区对应一个错误存储区,在后续的存取该错误存储区时,将被重新导引(redirect)至该错误存储区所对应的假代存储区。
本发明揭示一种方法及装置,以一种不同的观点处理存储器缺陷,特别是具有嵌入式存储器的晶片中的存储器缺陷,此法并不使用熔丝修补存储器,也不处理存储器大小的变化,而是直接遮蔽存储器缺陷,使存储器看起来仍然如同原来完整的样子,对使用者而言,并不知道存储器有缺陷。本方法利用系统启动时原来就已经安排的测试程序得知存储器缺陷的位置,毋须引入额外的测试程序,亦缺乏修补及再测试的程序,因此不必花费冗长的处理时间,而使用简单的装置标示或记录缺陷的存储器,不必增加复杂的处理电路。本发明虽然可能导致存储器的大小减少,却使得晶片仍然能够被使用,而毋须抛弃,并且可以动态地排除存储器缺陷,使系统不致误动作或当机。


图1为本发明的第一个实施例装置;图2为利用图1的装置操作的一个实施例流程;图3为本发明的第二个实施例装置;图4为利用图3的装置操作的一个实施例流程;图5为一错误存储控制电路的实施例流程。
具体实施例方式
图1提供根据本发明的第一个实施例装置的示意图,一个嵌入式存储器100含有N个存储区,将其分别编号为1,2,......,到N,如同已知的,一个存储区占用对照表200被用来指示嵌入式存储器100是空的或是已经被占用,一存储区占用对照表200的栏位的数量与嵌入式存储器100的大小一致,在此实施例中栏位的数量为N,每一个栏位对应一个存储区,例如第一个栏位210对应存储区110,第二个栏位220对应存储区120,第N个栏位230对应最后一个存储区130,每一个栏位中都包含一个一位元的暂存器以标示“0”或“1”,栏位的内容表示其对应的存储区已经被占用或是空的,如图中所示,第一个栏位210的内容为“1”,表示其对应的第一个存储区100已经被占用,而第二个栏位220及最后一个栏位230的内容为“0”,表示其分别对应的存储区120及130都是空的。为了不产生可能的混淆起见,具有该嵌入式存储器100的晶片的其他电路未出示在图中。如同一般的电脑系统,当启动(start up)时,此系统在初始化的程序中自动地测试嵌入式存储器100,在此程序中可以得知失效的存储器的位置,本实施例包括一初始控制装置300,其内容仅包含一简单的控制逻辑,以硬件或软件来实现,内建在具有该嵌入式存储器100的晶片当中,或使用外接式的,在初始化的程序中,初始控制装置300将存储器缺陷所对应的占用对照表的栏位中加以标示,如同图中所表示的,嵌入式存储器100的第一个存储区110经测试为失效,因此初始控制装置300在其对应的存储区占用对照表200的第一个栏位210中写入“1”,代表其指示的存储区110已经被占用了,使得后续的运作中嵌入式存储器100的第一个存储区110不再被使用,亦即,该存储区110在初始化时就被遮蔽了。藉由初始控制装置300在初始化程序中,如同前述地对存储区占用对照表200的适当的栏位写入被占用的标示,而将存储器缺陷一一地隐藏。此法简单且快速,不需要再次验证(verify),也毋需复杂的电路或运算。虽然隐藏存储器缺陷将使得嵌入式存储器100的有效大小减少,但可以使有缺陷的晶片仍然继续地工作,而不必被抛弃,并且,此方法动态地排除存储器缺陷,在每一次启动时皆取得最新的存储器缺陷,避免因为后来的缺陷而造成系统误动作或当机。
利用第一个实施例装置的操作流程例如图2所示的,在步骤S10中,系统的电源被开启或重设(reset),此阶段中具有嵌入式存储器100的晶片也被启动,如同已知的,系统在初始化程序中将会对嵌入式存储器100进行测试作业,这包含三个步骤,在步骤S12中,系统将一个已知的资料写入一个存储区中,然后在步骤S14中,从该存储区读出资料,接着在步骤S16中,将读取的资料与写入的资料加以比较,在步骤S18中,若读取的资料与写入的资料二者相同,则表示被测试的存储区功能正常,在步骤S22中,若所有存储器皆完成测试,则进入其他的程序,否则回到步骤S12,继续测试其他的存储器;反之,在步骤S18中,若发现存储器失误,即读取的资料与写入的资料二者不同,则表示该受测试的存储区受损,因此进入步骤S20中,将该存储区标示为已被占用,此过程例如图1中所示的,初始控制装置300将存储区占用对照表200的第一个栏位210写入“1”,以表示其对应的存储区110为缺陷的。前述步骤不断地重复,直到所有存储器皆被测试完毕。
如图1中所示的,嵌入式存储器100的缺陷存储区110被存储区占用对照表200的第一个栏位210表示为已被占用,此后,存储区110即不再被使用,除非关机,因此,该存储区110在系统初始化的过程中即被隐藏起来。在每一次系统被启动时,前述的过程即被自动地执行一次,因此,该方法动态地隐藏存储器缺陷,下一次系统启动后被隐藏的存储区与这一次被隐藏的存储区可能并不完全相同。在此一实施例中,虽然隐藏存储器缺陷会使得有效的存储器变小,不过如此一来,有存储器缺陷的晶片不必被抛弃,而且也不会因为存储器缺陷而导致系统误动作或当机。此法直接地隐藏存储器缺陷,故不必计算存储器的有效大小,也不必改造存储器的地址。
根据本发明的第二个实施例装置的示意图显示在图3中,如同前述的第一个实施例,此装置包含一嵌入式存储器100及其存储区占用对照表200,然而与前述实施例不同的是,此装置包含一备用暂存器仓库400及一错误存储区记录/控制装置500,备用暂存器仓库400是复数个假代存储区的集合,每一个假代存储区的大小与一个嵌入式存储器100的存储区的大小相同。如同前述的过程一般,当系统启动时,在初始化的程序中嵌入式存储器100被自动地测试,因此得知失效的存储器的位置,错误存储区记录/控制装置500记录嵌入式存储器100中的错误存储区地址并从一备用暂存器仓库400选出相同数量的假代存储区,每一个假代存储区对应一个错误存储区,在后续的存取该错误存储区时,将被重新导引至该错误存储区所对应的假代存储区,例如图中所示的,嵌入式存储器100的第一个存储区110经测试为失效,错误存储区记录/控制装置500从备用暂存器仓库400选取一个假代存储区410代表该缺陷的存储区110,未来,每次存取缺陷的存储区110时,系统被重新导向该假代存储区410。与习知技艺不同,本实施例并不使用熔丝修补存储器,因此存储器电路没有被改变,也毋须再次验证的程序,但是缺陷的存储区被隐藏了,该缺陷存储区的指向被重新引导至假代存储区,此法仍是动态地隐藏存储器缺陷,在每一次电源被开启或重设时,此一记录及安排的过程即被重复一次,而下一次备用暂存器仓库400被选出的假代存储区的数量及其与缺陷的存储区对应的关系可能与这一次不同。在不同的实施例中,可以使用备用(backup)存储器取代前述的备用暂存器仓库400。
与第一个实施例相同的,错误存储区记录/控制装置500可以使用硬件或软件来实现,而备用暂存器仓库400及错误存储区记录/控制装置500可以内建在具有该嵌入式存储器100的晶片当中,或使用外接式的。
图4提供利用图3装置的一个操作流程,在步骤S50中,系统的电源被开启或重设,此阶段中具有嵌入式存储器100的晶片也被启动,依照通常的程序,系统在初始化程序中对嵌入式存储器100进行测试作业,在步骤S52中,一组测试信号态样被写入嵌入式存储器100中,然后在步骤S54中,读出嵌入式存储器100中的资料,接着在步骤S56中,比较读得的信号态样与写入的信号态样是否相同,在步骤S58中,若读出的资料与写入的资料二者相同,则表示被测试的嵌入式存储器100的功能正常,因此依照正常的情况进入其他的程序;反之,则表示该嵌入式存储器100受损,因此进入步骤S60中,开始进行假代存储区的配置(configuration),此时,错误存储区记录/控制装置500记录缺陷的存储区、从备用暂存器仓库400选取假代存储区并分派给缺陷的存储区,例如图3中所示的,假代存储区410被从备用暂存器仓库400中选出,代表嵌入式存储器100的受损存储区110,在完成配置程序后,未来对存储区110的存取将被导引至假代存储区410,直到关机。此法隐藏存储器缺陷并重新导引存储区的存取,故不必计算存储器的有效大小,也不必运算存储器的地址内容。
图5提供一错误存储控制电路的实施例,在此电路中,一配置写入信号WR连接N个及闸,为简化起见,图中仅示出第一个及闸511及最后两个及闸512及513,其他相关的元件亦同,每当嵌入式存储器100的存储区_1至存储器_N的任何一个被测得失效时,一错误发生信号ERR_HAPPEN输入一计数器520累加一次,因此产生一输出0520提供给N个解码器531、......、532及533,每一个解码器产生一输出连接其对应的及闸,例如,解码器_1的输出0531送至及闸511,而每一及闸连接一指向器(pointer)541、......、542及543,例如,及闸511受信号WR及0531控制而输出0511送至指向器_1,后者的输出连接至一比较器551,同样地,比较器共有N个,每一个比较器分别连接一个相对应的指向器,而所有的比较器的另一输入端皆连接一般读写存储区_N信号600,根据相对应的指向器的输出与一般读写存储器_N信号600,每一个比较器的输出一信号至计数记录器561、......、562及563,产生的计数_1、......、计数_N-1、计数_N送至汇总计数记录器585,所有的比较器的输出同时亦连接至一或闸570,以控制多个闸门591至592及593,计数1-N配合一基底地址580产生备用暂存器或存储器地址700。
前述两个实施例装置是可能被结合在一起的,此时,在缺陷的存储区当中,可能有一部份被以图3所示的方式重新导引至假代存储区,而其他的缺陷存储区则被以图1所示的方式加以隐藏,例如备用暂存器仓库400被用罄时,多出的缺陷存储区直接被遮蔽,而没有被安排导引至假代存储区。
以上所述实施例仅系为说明本发明的技术思想及特点,其目的在使熟习此项技艺的人士能够了解本发明的内容并据以实施,当不能以其限定本发明的专利范围,即大凡依本发明所揭示的精神所作的均等变化或修饰,仍应涵盖在本发明的权利要求范围内。
权利要求
1.一种动态地隐藏存储器缺陷的装置,其特征是该存储器含有复数个存储区,该装置包括一备用暂存器仓库;及一错误存储区记录/控制装置,以记录缺陷存储区的地址,并从该备用暂存器仓库选取一假代存储区对应该缺陷存储区,对于该缺陷存储区的存取将被重新导引至该假代存储区。
2.一种动态地隐藏存储器缺陷的方法,其特征是该存储器含有复数个存储区,该方法包括测试该复数个存储区;记录缺陷存储区;及从一备用暂存器仓库选取假代存储区,每一假代存储区对应一缺陷存储区,对于缺陷存储区的存取将被重新导引至其对应的假代存储区。
3.一种动态地隐藏存储器缺陷的装置,其特征是包括一假代存储区,对应该存储器中的一缺陷存储区;及一导引器,以控制在存取该缺陷存储区时指向该假代存储区。
4.如权利要求3所述的动态地隐藏存储器缺陷的装置,其特征是该假代存储区选自一备用暂存器仓库。
5.如权利要求3所述的动态地隐藏存储器缺陷的装置,其特征是该假代存储区选自一备用存储器。
全文摘要
一种动态地隐藏存储器缺陷的方法及装置,该存储器含有至少一缺陷存储区;在一实施例中,一存储区占用对照表包含复数个栏位,每一个栏位对应该存储器的一个存储区,在该存储器的初始测试程序中,将缺陷存储区所对应的占用对照表的栏位加以标示,使其被认为已经被占用,因而该缺陷存储区后续不再被使用;在另一实施例中,从一备用暂存器仓库选取假代存储区,每一个假代存储区对应一个缺陷存储器,后续对缺陷存储区的存取被重新指引至其对应的假代存储区。
文档编号G06F11/26GK1838329SQ20061007499
公开日2006年9月27日 申请日期2002年1月23日 优先权日2002年1月23日
发明者陈韵琪 申请人:旺宏电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1