字节使能存储器内建自测试(MBIST)算法的制作方法

专利2022-06-29  97


相关申请的交叉引用

本申请要求于2017年10月13日提交的题为“byteenablememorybuilt-inself-test(mbist)algorithm(字节使能存储器内建自测试(mbist)算法)”的美国临时申请no.62/572,385的权益,该临时申请的内容由此通过援引全部明确纳入于此。

本文描述的各个方面和实施例涉及计算机存储器系统,并且尤其涉及可用于测试存储器单元是否正确地操作的存储器内建自测试(mbist)算法。

背景

现代的片上系统(soc)设计通常在单个芯片上具有显著数目的嵌入式存储器。这些存储器可分散在设备周围,而不是集中在一个位置。通常,这些存储器具有不同的类型和大小。附加地,这些存储器可进一步被嵌入在嵌入式核内部。这种结构给测试芯片上的所有存储器带来了挑战,因为测试接入可能仅限于几个输入/输出(i/o)引脚。内建自测试(bist)逻辑被频繁用于测试soc内的此类嵌入式存储器,因为bist逻辑提供了一种简单且低成本的测试方法而几乎不影响性能。可能需要特定测试来测试设备上的所有存储器,该测试被称为存储器内建自测试(mbist)。随着设备获得性能和功能性,支持该性能和功能性的存储器数目也随之增加,测试那些存储器的需求也在增加。像其他bist逻辑一样,mbist逻辑可提供运行一种或多种算法以验证存储器功能性并测试特定存储器错误的能力。如此,一般需要优化mbist算法以检测可发生在给定存储器设备中的故障。

概述

以下给出了与本文中所公开的一个或多个方面和/或实施例相关的简化概述。如此,以下概述既不应被视为与所有构想的方面和/或实施例相关的详尽纵览,以下概述也不应被认为标识与所有构想的方面和/或实施例相关的关键性或决定性要素或描绘与任何特定方面和/或实施例相关联的范围。因此,以下概述的唯一目的是在以下给出的详细描述之前以简化形式呈现与关于本文中所公开的机制的一个或多个方面和/或实施例相关的某些概念。

根据各个方面,用于存储器内建自测试(mbist)的方法和装置可被配置成:从mbist控制器加载测试程序,执行测试程序,以及确定通过/未通过结果并将其写入读出寄存器。例如,在各个实施例中,测试程序可包括一个或多个写操作,该一个或多个写操作被配置成:在断言字节使能信号时将存储在多个存储器位单元中的数据从第一值改变为第二值,以便测试与存储器位单元相关联的稳定性;由于字节使能模式应力而创建dc和ac噪声;检查全速字节使能模式定时;以及执行可被设计成验证是否在数据输入(din)引脚处接收到数据的自检算法。在执行(诸)写操作之后,任何存储与预期值不同的值的存储器位单元可未通过mbist。

根据各个方面,一种用于执行存储器内建自测试(mbist)的方法可包括:执行从mbist控制器加载的测试程序,其中所执行的测试程序包括一个或多个写操作,该一个或多个写操作被配置成在断言字节使能信号时将存储在多个存储器位单元中的数据从第一值改变为第二值;在执行该一个或多个写操作之后读取存储在该多个存储器位单元中的数据;以及将mbist通过/未通过结果写入读出寄存器,其中该mbist通过/未通过结果指示关于该多个存储器位单元中从其读取的数据不同于预期值的任何存储器位单元的故障。在各个实施例中,该一个或多个写操作可被配置成根据在奇数和偶数存储器地址之间交替的一个或多个旋转模式来改变存储在该多个存储器位单元中的数据。例如,在各个实施例中,该一个或多个旋转模式可包括以奇数存储器地址开始的第一旋转模式和以偶数存储器地址开始的第二旋转模式,并且该一个或多个旋转模式可各自包括其中在存储在该多个存储器位单元中的数据已被初始化为第一值之后将存储在该多个存储器位单元中的数据改变为第二值的一次或多次迭代。

根据各个方面,一种装置可包括:读出寄存器;存储器内建自测试(mbist)控制器,其被配置成存储包括一个或多个写操作的测试程序,该一个或多个写操作被配置成在断言字节使能信号时将存储在多个存储器位单元中的数据从第一值改变为第二值;以及存储器读/写控制器,其被配置成:执行存储在该mbist控制器中的测试程序;在执行与该测试程序相关联的该一个或多个写操作之后读取存储在该多个存储器位单元中的数据;以及将mbist通过/未通过结果写入读出寄存器,其中该mbist通过/未通过结果指示关于该多个存储器位单元中从其读取的数据不同于预期值的任何存储器位单元的故障。

根据各个方面,一种设备可包括:用于执行包括一个或多个写操作的测试程序的装置,该一个或多个写操作被配置成在断言字节使能信号时将存储在多个存储器位单元中的数据从第一值改变为第二值;用于在执行与该测试程序相关联的该一个或多个写操作之后读取存储在该多个存储器位单元中的数据的装置;以及用于将mbist通过/未通过结果写入读出寄存器的装置,其中该mbist通过/未通过结果指示关于该多个存储器位单元中从其读取的数据不同于预期值的任何存储器位单元的故障。

根据各个方面,一种非瞬态计算机可读存储介质可在其上记录有存储器内建自测试(mbist)指令,其中这些mbist指令可使测试装置:执行包括一个或多个写操作的测试程序,该一个或多个写操作被配置成在断言字节使能信号时将存储在多个存储器位单元中的数据从第一值改变为第二值;在执行与该测试程序相关联的该一个或多个写操作之后读取存储在该多个存储器位单元中的数据;以及将mbist通过/未通过结果写入读出寄存器,其中该mbist通过/未通过结果指示关于该多个存储器位单元中从其读取的数据不同于预期值的任何存储器位单元的故障。

基于附图和详细描述,与本文中所公开的各方面和各实施例相关联的其他目标和优点对于本领域技术人员而言将是明显的。

附图简述

对本文描述的各个方面和实施例及其许多伴随优点的更完整领会将因其在参考结合附图考虑的以下详细描述时变得更好理解而易于获得,附图仅出于解说目的被给出而不构成任何限定,并且其中:

图1解说了根据各个方面的用于根据存储器内建自测试(mbist)算法来测试存储器电路的示例性装置。

图2解说了根据各个方面的包括写驱动器和负位线升压电路系统的示例性存储器电路。

图3解说了根据各个方面的其中写辅助电路可提供负位线升压的示例性写驱动器。

图4解说了根据各个方面的被配置成针对某些潜在的故障状况来测试以图2和/或图3中示出的方式实现的存储器电路的示例性存储器内建自测试(mbist)算法。

图5a-5c解说了根据各个方面的其中通过图4中示出的mbist算法的一个或多个存储器电路未通过在自动测试装备(ate)处执行的功能组合测试的测试结果。

图6解说了根据各个方面的被配置成检测可以按其他方式逃脱使用图4中示出的mbist算法的检测的某些故障状况的示例性增强型mbist算法。

图7解说了可根据本文描述的各个方面和实施例来配置的示例性电子设备。

详细描述

在以下描述和相关附图中公开了各个方面和实施例以示出与各示例性方面和实施例相关的具体示例。替换方面和实施例在相关领域的技术人员阅读本公开之后将是显而易见的,且可被构造并实施,而不背离本文公开的范围或精神。附加地,众所周知的元素将不被详细描述或可被省去以免模糊本文中所公开的各方面和实施例的相关细节。

措辞“示例性”在本文中用于意指“用作示例、实例、或解说”。本文中描述为“示例性”的任何实施例不必被解释为优于或胜过其他实施例。同样,术语“实施例”并不要求所有实施例都包括所讨论的特征、优点、或操作模式。

本文所使用的术语仅描述了特定实施例并且不应当被解读成限定本文中所公开的任何实施例。如本文中所使用的,单数形式的“一”、“某”和“该”旨在也包括复数形式,除非上下文另有明确指示。本领域技术人员将进一步理解,如在本文中所使用的术语“包括”、“具有”、“包含”和/或“含有”指定所陈述的特征、整数、步骤、操作、要素、和/或组件的存在,但并不排除一个或多个其他特征、整数、步骤、操作、要素、组件和/或其群组的存在或添加。

此外,各个方面和/或实施例可根据将由例如计算设备的元件执行的动作序列来描述。本领域技术人员将认识到,本文中所描述的各种动作能由专用电路(例如,专用集成电路(asic))、由正被一个或多个处理器执行的程序指令、或由这两者的组合来执行。附加地,本文中所描述的这些动作序列可被认为是完全体现在任何形式的非瞬态计算机可读介质内,该非瞬态计算机可读介质上存储有一经执行就将使相关联的处理器执行本文中所描述的功能性的相应计算机指令集。由此,本文中所描述的各个方面可以用数种不同形式来实施,所有这些形式都已被构想成落在所要求保护的主题内容的范围内。另外,对于本文中描述的每个方面,任何此类方面的对应形式可在本文中被描述为例如“被配置成执行所描述的动作的逻辑”和/或被配置成执行所描述的动作的其他结构组件。

顾名思义,存储器内建自测试(mbist)逻辑提供了可使存储器进行自我测试的一种机制。除其他目的之外,mbist可用于确保高可靠性并缩短维修周期。mbist也可用于技术人员可访问性受到限制或降低制造过程中的测试成本的场景。例如,mbist可降低存储器测试成本,因为存储器测试所需的时间更少并且降低了测试设置的复杂性。通常,需要检查的输入/输出(i/o)信号的数目减少。

一般而言,bist架构可包括与待测电路(cut)或待测设备(dut)对接的测试生成器。待测电路从测试生成器接收输入并输出响应。测试控制器可被连接到测试生成器和比较器设备。测试控制器可生成用于测试模式(例如,测试算法)的一个或多个控制信号,其中该一个或多个控制信号可被提供给测试模式生成器和待测电路。测试模式生成器可生成所需的测试模式和恰适的读/写信号。比较器设备可基于与来自测试信号的预期输出的比较来评估待测电路的响应。

例如,根据各个方面,图1解说了用于根据存储器内建自测试(mbist)算法来测试存储器电路的示例性装置100。如图1所示,装置100可包括片上系统(soc)102、通信总线104、测试数据输出(tdo)106和瞬时结果108。在各个实施例中,通信总线104可以是ieee1149.1总线,或者可以是提供必要的输出能力的任何合适的通信总线。在soc102内是宏110,其纳入mbist控制器112内的一个或多个mbist协议(例如,实现一种或多种mbist算法的指令)以及可根据该一个或多个mbist协议来测试的各个存储器114、116、118、120。mbist控制器112可包括由soc102的原始装备制造商创建的测试协议。然而,本领域技术人员将领会,其他附加的mbist测试协议也可被包括在mbist控制器112内。尽管解说了存储器114-120,但是在实际设备中,存储器的数目可能大得多,其中多达数百个或更多个存储器需要mbist验证。存储器114-120可通过存储器接口122链接到mbist控制器112,该存储器接口122可以是可从mbist控制器112向待测存储器114-120传递测试指令并从待测存储器114-120向mbist控制器112传递结果的任何合适的接口。

根据各个方面,一种测试存储器114-120的办法可以是以串行方式测试各个存储器114-120。例如,测试可从设置阶段开始,在此阶段期间,一个或多个mbist算法和时钟标准被指定并被加载到mbist控制器112中。一旦设置阶段已经完成,就开始mbist测试,其中依次测试存储器114-120,直到已经测试完所有n个存储器为止。在测试阶段已经完成之后,结果读出阶段开始。在结果读出阶段中,从各个存储器114-120顺序读出结果,直到已经读出所有结果为止。当所有结果都被读出并被写入读出寄存器中的对应位时,测试结束。在另一办法中,可测试存储器114-120并且并行读出结果。例如,在并行测试和读出办法中,测试类似地从设置阶段开始,在此阶段期间,一个或多个测试算法和时钟值被编程到mbist控制器112中。在设置完成之后,测试开始,其中存储器114-120可被测试,并在继续到下一存储器之前立即读出结果,直到所有n个存储器都已经被测试和读出为止。至此,测试已完成,其中测试和读出两者均在同一时间点完成。一般而言,本领域技术人员将领会,以上描述仅旨在是解说性的,并且其他合适的办法可被用来使用恰适的mbist算法测试各个存储器114-120。

根据各个方面,图2解说了包括写驱动器和负位线升压电路系统的示例性存储器电路200。在各个实施例中,如将在下面进一步详细描述的,可使用恰适的mbist算法来适当地测试存储器电路200。然而,首先,将作为背景描述存储器电路200的解说性特征。

更具体地,在各个实施例中,如图2所示的存储器电路200可包括耦合至一对交叉耦合的反相器204-1、204-2的互补数据输入引脚202-1、202-2,该对交叉耦合的反相器204-1、204-2可被耦合至可根据图2所示的参数来操作的局部升压电路系统。此外,每个交叉耦合的反相器204-1、204-2可包括可对真(q)数据节点或补(qb)数据节点充电的p型金属氧化物半导体(pmos)晶体管。q数据节点可通过n型金属氧化物半导体(nmos)存取晶体管206-1耦合至位线(bl),而qb数据节点可通过另一nmos存取晶体管206-2耦合至补位线(blb)。在其中改变位单元的二进制内容的写操作期间,pmos晶体管之一将首先导通并对其数据节点充电,而对应的nmos存取晶体管206-1、206-2正尝试通过对应的位线或补位线将同一节点放电。因此,相对于交叉耦合的反相器204-1、204-2中的对应pmos晶体管,nmos存取晶体管206-1、206-2必须相对更强,使得尽管在与pmos晶体管对抗的情况下也可将数据节点相对较快地放电。为了增强nmos存取晶体管206-1、206-2,一种办法是在对应的位线上提供负电压,而不是仅在写操作期间将该位线接地。如图2中描绘的,由负位线(nbl)升压电路系统210提供的这一负电压可增加与交叉耦合的反相器204-1、204-2中的pmos晶体管相比的nmos存取晶体管206-1、206-2的强度,使得nmos存取晶体管206-1、206-2可快速地将对应的数据节点放电。一般而言,耦合电容器可被用来向位线提供负电压。然而,这可能是有问题的,因为对位线的负升压不仅取决于耦合电容,而且还取决于位线电容,其可取决于给定存储器配置和工艺角中的位单元的数目而变化。取决于存储器配置和工艺角,负升压可能太小,导致写入失败。相反,负升压可能太大,导致设备损坏。

因此,为了满足对改进的负位线辅助架构的一般需求,图3解说了其中写辅助电路可提供负位线升压(例如,图2所示的nbl升压电路系统210)的示例性写驱动器300。一般而言,本领域技术人员将领会,如图2所示的存储器电路200以及如图3所示的写驱动器300具有各种结构相似性,使得本文所描述的各个方面可被应用于存储器电路200和/或写驱动器300中的一者或两者。

参考图3,写驱动器300可包括一对互补写信号gdin和gdin_n,其表示将被写入到耦合至由真位线(bl)和补位线(blb)形成的一对位线的存储器单元(未解说)中的位(q)的二进制值。负升压信号302可在写操作期间发起负位线升压。在这一实现中,负升压信号302是高态有效信号,使得通过将负升压信号302从其默认接地状态断言为电源电压电平来发起位线升压操作。反相器310可将负升压信号302反相以驱动另一对反相器315、320和nmos晶体管m0的栅极。因此,在位线升压时段之外的默认操作期间,晶体管m0导通。晶体管m0的源极接地,而其漏极充当一对反相器(未解说)的接地端子(在此标示为pmos升压帽325),该对反相器以与图2所示的一对交叉耦合的反相器204-1、204-2类似的方式耦合至一对互补写信号gdin和gdin_n。在各个实施例中,耦合至写信号gdin的反相器可将该写信号gdin反相以驱动真位线bl,并且耦合至补写信号gdin_n的反相器可类似地将该补写信号gdin_n反相以驱动补位线blb。由于写信号的互补性质,这些反相器中的一个反相器将保持其位线被充电,而另一反相器将在晶体管m0导通时通过pmos升压帽325将其位线接地。关于图3所示的存储器电路200和/或写驱动器300的结构和功能的进一步细节可在题为“adaptivenegativebitlinewriteassist(自适应负位线写辅助)”的共同拥有的美国专利no.9,455,028中提供,该专利的内容由此通过援引全部明确纳入于此。

根据各个方面,如上所提及,存储器内建自测试(mbist)逻辑提供了一种可允许存储器进行自我测试的机制。如此,mbist可被用于在技术人员可访问性受到限制或降低制造过程中的测试成本的场景中确保高可靠性并缩短维修周期,用于检测操作期间可能出现的某些故障状况,等等。此外,如以上关于图2所示的存储器电路200以及如图3所示的类似的写驱动器300所讨论的,负升压过小可潜在地导致写入失败,而负升压过大可潜在地导致设备损坏。在使用倾向于具有增强的电气特性的使用finfet技术制造的晶体管来实现存储器电路200和/或写驱动器300的情况下,后者尤其令人担忧。例如,由于窄而高的鳍提供了增强的电气特性,使用finfet技术实现的晶体管也往往是机械上较弱的结构,这意味着有时可在此类器件中发生鳍弯曲和裂纹,尤其是在由于可在字/字节使能(wby)模式期间产生的应力而存在直流(dc)噪声的情况下。如此,当互补位线bl/blb被驱动为高时,尤其是在字节使能模式期间,存在潜在的位单元稳定性问题(例如,鳍裂纹)。一种解决位单元稳定性问题的可能办法是要使互补位线bl/blb保持浮动。此外,因为位单元稳定性问题可导致故障,所以mbist算法可被用来检测至少此类潜在故障(例如,通过创建可能引起鳍裂纹和/或字节使能模式应力的状况)。例如,图4解说了一种此类mbist算法400。更具体地,如将在本文中参考下表1更详细地解释的,mbist算法400可被设计成检测位单元稳定性问题并由于字节使能模式应力而创建dc噪声。如表1中所示,图4中所示的mbist算法400的测试时间可需要14xn个循环,其中n为2m且m是存储器地址的数目。

更具体地,图4中所示的mbist算法400可包括其中在框410向所有存储器单元写入初始值的第一遍。例如,参考表1,‘init-0’指令可被用于向所有存储器地址写入零(0),由此可开启字节使能模式(wby_n),并且将被写入存储器单元的数据输入(din)值为零(0)。再次参考图4,在框420,随后可在关闭字节使能模式(wby_n=0)的情况下执行虚设写,其中在虚设写期间的din值可以是一(1)。然而,因为字节使能模式已关闭,所以虚设写不应导致任一个或多个存储器单元的值发生变化,由此预期输出(dout)为零(0)。再次参考图4,在框430,可随后在开启字节使能模式(wby_n=1)的情况下执行读操作,其中可将din值从一(1)改变为零(0),并且预期输出(dout)保持为零(0)。该操作可由于字节使能模式应力而创建dc噪声;然而,由于din值和字节使能模式位基本同时改变,因此可能会引起潜在的定时问题,因为din值有时可能在操作期间在字节使能模式位之后改变。如此,mbist算法400可能并不总是根据最差情形场景来创建dc噪声,这意味着具有某些故障的存储器电路可潜在地通过mbist算法400,如下所述。

根据各个方面,再次参考4,可采用分支440以返回到框410,以便执行mbist算法400的第二遍。具体而言,如参考下表1所解释的,第二遍一般可与第一遍类似,除了在框410执行的初始化操作可包括向所有存储器单元写入一(1)的‘init-1’指令。在框420执行的虚设写可随后在关闭字节使能模式时采用零(0)值作为din值,使得预期dout值仍为一(1)。以与第一遍类似的方式,随后在框430在开启字节使能模式的情况下执行读操作,以由于字节使能模式应力而创建dc噪声。在已经执行第二遍之后,可在框450向读出寄存器写入通过/未通过结果,其中实际dout值不同于如表1所示的预期dout值的任何存储器单元被指示为未通过。

表1:字节使能mbist算法

根据各个方面,如上所提及,当存储器设备通过mbist但是稍后在自动测试装备(ate)执行的调试示出某些故障时可能出现潜在的问题。例如,以上简要提及了图4所示的mbist算法400的某些限制,包括由此din和字节使能值同时改变的定时问题,这并不总是会创建最差情形状况。有时这些限制可能保持未知,直到在ate被用于进行进一步的功能测试的时候和/或情况下。例如,图5a-图5c解说了其中具有图2和/或图3中所示的(诸)配置的一个或多个存储器电路通过了图4中所示的mbist算法400并且随后被发现未通过在自动测试装备(ate)处执行的功能组合测试的各种测试结果。例如,图5a解说了示出在25摄氏度的温度下的个体存储器设备的功能组合测试结果的各个什穆图(shmooplot)522、537、548、533、586。在什穆图522、537、548、533、586中的每一者中,每个正方形表示在温度保持恒定在25摄氏度的情况下在给定电压(vdd_mx)和频率处的通过/未通过结果,其中白色正方形指示存储器通过了在那些参数处的功能组合测试,并且其中阴影正方形指示存储器未通过在那些参数处的功能组合测试。如从图5a中所示的什穆图522、537、548、533、586将显而易见的是,故障模式在测试结果中表现出反映异常的孔和/或壁,其中这些故障一般对vdd_mx和频率敏感。此外,在图5b中,什穆图522、537、548、533、586中的故障在较高温度下更加明显,如图5b解说了在110摄氏度下的功能组合通过/未通过结果。值得注意的是,如上所指示,图4中和上表1中所示的mbist算法400针对与图5a-5b中所示的什穆图522、537、548、533、586相对应的任何存储器设备都不是未通过。此外,通过/未通过结果可以是不可重复的。例如,图5c解说了第一什穆图586-1以及第二什穆图586-2,第一什穆图586-描绘了给定存储器设备在恒定温度和各种vdd_mx和频率组合处的第一次测试运行的通过/未通过结果,第二什穆图586-2描绘了同一存储器设备在相同温度、vdd_mx和频率组合处的第二次测试运行的通过/未通过结果。如图5c所示,第一次运行的通过/未通过结果与第二次运行的通过/未通过结果是不同的,由此可能需要优化上述mbist算法400以检测可发生在如图2中解说的存储器电路200和/或如图3中解说的写驱动器300中的潜在故障。

更具体地,参考图2中作为示例示出的存储器电路200,图5a-5c中指示的(诸)ate故障可以是某些状况导致存储器电路200中的位翻转的结果。例如,基于利用一个或多个故障芯片的动态激光激励(dls),可能的故障位置可在sram写驱动器上,特别是在nmos存取晶体管206-1可在存储器字节使能模式期间导致位翻转场景的位置处。具体而言,敏感位置可以是n沟道金属氧化物半导体(nmos)晶体管m1的漏极,其将驱动存储器阵列中的互补位线bl/blb。在此位置停驻激光的情况下,实验结果已示出nmos晶体管m1变得更漏电并递送高漏极电压,这可消除来自nbl升压电路系统210的负升压。这可进而增加写入存储器电路200(例如,sram单元)的难度。例如,在字节使能模式期间的潜在位单元干扰可能是通过nbl升压电路系统210将nmos存取晶体管206-1、206-2驱动到较低电压电平引起的,该较低电压电平可随后在写复用器(wm)阶段之后被传递到位线bl/blb。当数据输入引脚202-1、202-2与位单元数据相反时,字节使能模式将nmos晶体管m1、m2断开,并关闭通过wm阶段的电荷共享。切换字节使能模式可随后在位线bl/blb中创建直流(dc)噪声和交流(ac)噪声,使得位单元中的数据可翻转。

因此,为了检测该潜在故障,如图4中和表1中所示的mbist算法400可被修改以检测位单元稳定性问题,由于字节使能模式应力而创建dc和ac噪声,并执行自检算法,由此待测存储器电路可能会在该待测存储器电路的数据输入引脚处未接收到数据的情况下未通过。相反,图4中和表1中所示的mbist算法400仅由于字节使能模式应力而创建dc噪声,并且不包括任何自检算法来发现到达存储器级的数据(即,存储器可在没有数据到达数据输入引脚的情况下通过mbist算法400)。如下表所示,增强型mbist算法的测试时间可需要20xn a个循环,其中n为2m,m是存储器地址的数目,并且a是可潜在地被去除的测试步骤空闲时间。

更具体地,根据各个方面,图6解说了可检测可按其他方式逃脱使用图4中示出的mbist算法400的检测的某些故障状况的示例性增强型mbist算法600,其将在本文中参考以下提供的表2来解释。

在各个实施例中,在框610,在所有存储器单元已经被写入第一初始值之后,可根据第一字节使能旋转模式跨所有存储器单元执行写-读-比较操作。例如,如表2中所示,‘init-0’指令可首先向所有存储器地址写入零(0),由此可开启字节使能模式(wby_n),并且将被写入存储器单元的数据输入(din)值为零(0)。在第一字节使能旋转模式中,可以为每个奇数存储器地址开启字节使能模式(wby_n=‘5555’),并且为一(1)的值可随后到达针对每个奇数存储器地址的din信号,导致对应的预期输出(dout)为‘00ff’。在第一字节使能旋转模式中,可随后为每个偶数存储器地址开启字节使能模式(wby_n=‘aaaa’),并且为一(1)的值可随后到达针对每个偶数存储器地址的din信号,导致对应的预期输出(dout)为‘ff00’。第一旋转模式可以按交替模式针对每个奇数存储器地址和每个偶数存储器地址执行写-读-比较操作一次或多次,由此由于来自切换字节使能模式的应力而创建ac以及dc噪声。如上所提及,由于切换字节使能模式而导致的此类dc/ac噪声可潜在地翻转存储在存储器单元中的数据的值,由此在奇数和偶数存储器地址之间交替并且尝试将所有存储器地址从零改变为一可检测到在从存储器地址读取的任何实际dout值不同于如表2所示的预期dout值的时候和/或情况下发生的此类位翻转。此外,因为在框610的写-读-比较操作仅模拟可在操作期间使用字节使能模式的一种潜在方式(即,根据交替的奇偶模式来将数据从零改变为一),所以附加指令/操作可用于模拟在待测存储器电路中可能出现的其他潜在应力状况。

因此,在各个实施例中,在框620,在所有存储器单元已经被写入第二初始值之后,可根据第一字节使能旋转模式跨所有存储器单元执行进一步的写-读-比较操作。例如,在框620,‘init-1’指令可向所有存储器地址写入一(1),由此可开启字节使能模式(wby_n),并且将被写入存储器单元的数据输入(din)值为零(1)。在第一字节使能旋转模式中,可以为每个奇数存储器地址开启字节使能模式(wby_n=‘5555’),并且为零(0)的值可随后到达din信号以将每个奇数存储器地址从一改变为零,导致对应的预期输出(dout)为‘00ff’。在第一字节使能旋转模式中,可随后为每个偶数存储器地址开启字节使能模式(wby_n=‘aaaa’),并且为零(1)的值可随后到达针对每个偶数存储器地址的din信号,导致对应的预期输出(dout)为‘ff00’。第一旋转模式可以按交替模式针对每个奇数存储器地址和每个偶数存储器地址执行写-读-比较操作一次或多次,由此由于来自切换字节使能模式的应力而创建ac以及dc噪声。

在各个实施例中,在框630,在所有存储器单元已经被写入第一初始值之后,可随后根据第二字节使能旋转模式跨所有存储器单元执行又进一步的写-读-比较操作。例如,框630可与框610基本类似,因为‘init-0’指令首先向所有存储器地址写入零(0)。然而,不是按根据奇偶模式遍历存储器地址的方式执行后续写-读-比较操作,而是框630可以按根据偶奇模式遍历存储器地址的方式执行后续写-读-比较操作。换言之,第二字节使能旋转模式执行与第一字节使能旋转模式相同的写-读-比较操作,除了顺序相反。如此,在框640,可以按与以上关于框620所描述的类似的方式来执行写-读-比较操作,除了顺序再次相反,使得框640首先遍历所有偶数存储器地址,并随后遍历奇数存储器地址。因此,在框640,在所有存储器单元被初始化/写入第二初始值(即,一)之后,可根据第二(偶奇)字节使能旋转模式来执行写-读-比较操作。

表2:增强型字节使能mbist算法

根据各个方面,再次参考图6,可在框650在与增强型mbist算法相关联的各个指令已经完成之后向读出寄存器写入通过/未通过结果,其中实际dout值被确定为不同于如表2所示的预期dout值的任何存储器单元被指示为未通过。此外,如图6中所示的mbist算法600可包括固有的自检算法,其中关于数据未进入din信号的任何存储器单元都可能发生故障(例如,由于字节使能模式应力所创建的dc和ac噪声,这可以是可检测的,因为该算法被精细定时以在din到达之前切换字节使能模式,由此数据未能到达din信号可指示由于先前引入的字节使能模式应力而导致的故障)。

根据各个方面,图7解说了具有一个或多个存储器电路的示例性电子设备700,该一个或多个存储器电路可以如图2和图3中解说的来配置,并且根据图6中解说的且在以上进一步详细描述的增强型字节使能mbist算法来恰适地测试。

例如,图7中所示的电子设备700可以是包括至少一个中央处理单元(cpu)710的基于处理器的系统,该至少一个中央处理单元(cpu)710包括处理器712和用于快速访问临时存储的数据的高速缓存716。根据各个实施例,cpu710可被耦合至系统总线720,该系统总线720可互耦合包括在电子设备700中的各种其他设备。如对于本领域技术人员将显而易见的是,cpu710可在系统总线720上交换地址、控制和数据信息,以与包括在电子设备700中的其他设备进行通信,该其他设备可包括合适的设备。例如,如图7中所解说的,包括在电子设备700中的各设备可包括存储器子系统730(其可包括静态存储器732和/或动态存储器734)、一个或多个输入设备722、一个或多个输出设备724、网络接口设备726、以及显示控制器740。在各种实施例中,输入设备722可包括任何合适的输入设备类型,包括但不限于输入键、开关、语音处理器等。输出设备724可类似地包括任何合适的输出设备类型,包括但不限于音频、视频、其他视觉指示器等。网络接口设备726可以是被配置成允许交换去往和来自网络780的数据的任何设备,该网络780可包括任何合适的网络类型,包括但不限于有线或无线网络、专用或公用网络、局域网(lan)、广域网(wlan)和因特网。网络接口设备726可支持期望的任何类型的通信协议。cpu710可在系统总线720上接入存储器子系统730。

cpu710还可在系统总线720上接入显示控制器740,以控制发送到显示器770的信息。显示控制器740可包括存储器控制器742和存储器744,以存储响应于与cpu710的通信而要被发送到显示器770的数据。显示控制器740经由视频处理器760向显示器770发送要显示的信息,该视频处理器760将要显示的信息处理成适合于显示器770的格式。显示器770可包括任何合适的显示器类型,包括但不限于阴极射线管(crt)、液晶显示器(lcd)、等离子显示器、led显示器、触摸屏显示器、虚拟现实耳机和/或任何其他合适的显示器。

本领域技术人员将领会,信息和信号可使用各种不同技术和技艺中的任何一种来表示。例如,贯穿上面说明始终可能被述及的数据、指令、命令、信息、信号、比特、码元和码片可由电压、电流、电磁波、磁场或磁粒子、光场或光粒子、或其任何组合来表示。

此外,本领域技术人员将领会,结合本文所公开的各方面描述的各种解说性逻辑块、模块、电路和算法步骤可被实现为电子硬件、计算机软件、或两者的组合。为清楚地解说硬件与软件的这一可互换性,各种解说性组件、块、模块、电路、以及步骤在上面是以其功能性的形式作一般化描述的。此类功能性是被实现为硬件还是软件取决于具体应用和施加于整体系统的设计约束。技术人员可针对每种特定应用以不同方式来实现所描述的功能性,但此类实现决策不应被解读为脱离本文描述的各个方面和实施例的范围。

结合本文所公开的各方面描述的各种解说性逻辑块、模块、以及电路可用设计成执行本文所描述的功能的通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其他可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,该处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合(例如dsp与微处理器的组合、多个微处理器、与dsp核协作的一个或多个微处理器、或其他此类配置)。

结合本文中所公开的各方面描述的方法、序列和/或算法可直接在硬件中、在由处理器执行的软件模块中、或在这两者的组合中体现。软件模块可驻留在ram、闪存存储器、rom、eprom、eeprom、寄存器、硬盘、可移动盘、cd-rom或本领域中所知的任何其他形式的非瞬态计算机可读介质中。示例性非瞬态计算机可读介质可被耦合至处理器以使得该处理器能从/向该非瞬态计算机可读介质读/写信息。在替换方案中,非瞬态计算机可读介质可以被整合到处理器。处理器和非瞬态计算机可读介质可驻留在asic中。asic可驻留在iot设备中。在替换方案中,处理器和非瞬态计算机可读介质可以是用户终端中的分立组件。

在一个或多个示例性方面,本文中所描述的功能可在硬件、软件、固件或其任何组合中实现。如果在软件中实现,则各功能可以作为一条或多条指令或代码存储在非瞬态计算机可读介质上或藉其进行传送。计算机可读介质可包括存储介质和/或通信介质,其包括可促成计算机程序从一地向另一地转移的任何非瞬态介质。存储介质可以是能被计算机访问的任何可用介质。作为示例而非限定,此类计算机可读介质可包括ram、rom、eeprom、cd-rom或其他光盘存储、磁盘存储或其他磁存储设备、或能用于携带或存储指令或数据结构形式的期望程序代码且能被计算机访问的任何其他介质。任何连接也被正当地称为计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、dsl、或诸如红外、无线电、以及微波之类的无线技术从web网站、服务器、或其他远程源传送而来,则同轴电缆、光纤电缆、双绞线、dsl、或诸如红外、无线电、以及微波之类的无线技术就被包括在介质的定义之中。本文中可互换地使用的术语盘(disk)和碟(disc)包括cd、激光碟、光碟、dvd、软盘和蓝光碟,它们常常磁性地和/或用激光来光学地再现数据。以上的组合应当也被包括在计算机可读介质的范围内。

尽管前面的公开示出了解说性方面和实施例,但是本领域技术人员将领会,在其中可作出各种变更和修改而不会脱离如所附权利要求定义的本公开的范围。此外,根据本文中所描述的各个解说性方面和实施例,本领域技术人员将领会,上述任何方法中的和/或所附任何方法权利要求中所叙述的功能、步骤、和/或动作不必按任何特定次序来执行。再进一步,就任何元素以单数形式在以上描述或在所附权利要求中叙述而言,本领域技术人员将领会,单数形式也构想了复数,除非显式地声明了限定于单数形式。


技术特征:

1.一种用于执行存储器内建自测试(mbist)的方法,包括:

执行从mbist控制器加载的测试程序,其中所执行的测试程序包括一个或多个写操作,所述一个或多个写操作被配置成在断言字节使能信号时将存储在多个存储器位单元中的数据从第一值改变为第二值;

在执行所述一个或多个写操作之后读取存储在所述多个存储器位单元中的所述数据;以及

将mbist通过/未通过结果写入读出寄存器,其中所述mbist通过/未通过结果指示关于所述多个存储器位单元中从其读取的所述数据不同于预期值的任何存储器位单元的故障。

2.根据权利要求1所述的方法,其特征在于,所述一个或多个写操作被配置成根据在奇数存储器地址和偶数存储器地址之间交替的一个或多个旋转模式来改变存储在所述多个存储器位单元中的所述数据。

3.根据权利要求2所述的方法,其特征在于,所述一个或多个旋转模式包括以所述奇数存储器地址开始的第一旋转模式和以所述偶数存储器地址开始的第二旋转模式。

4.根据权利要求3所述的方法,其特征在于,所述一个或多个旋转模式各自包括其中在存储在所述多个存储器位单元中的所述数据已被初始化为所述第一值之后将存储在所述多个存储器位单元中的所述数据改变为所述第二值的一次或多次迭代。

5.根据权利要求4所述的方法,其特征在于,所述一次或多次迭代包括在存储在所述多个存储器位单元中的所述数据已被初始化为零之后将存储在所述多个存储器位单元中的所述数据改变为一的第一迭代、以及在存储在所述多个存储器位单元中的所述数据已被初始化为一之后将存储在所述多个存储器位单元中的所述数据改变为零的第二迭代。

6.根据权利要求1所述的方法,其特征在于,所述测试程序是根据在要被写入所述多个存储器位单元的所述第二值到达数据输入信号之前断言所述字节使能信号的定时来执行的。

7.根据权利要求6所述的方法,其特征在于,所述mbist通过/未通过结果指示关于所述多个存储器位单元中与所述第二值对应的数据未到达所述数据输入信号的任何存储器位单元的故障。

8.根据权利要求1所述的方法,其特征在于,所述一个或多个写操作被配置成:在断言所述字节使能信号时改变存储在所述多个存储器位单元中的所述数据,以由于写驱动器与负位线升压电路系统之间的耦合而创建直流和交流噪声。

9.根据权利要求8所述的方法,其特征在于,所述写驱动器与所述负位线升压电路系统之间的所述耦合在所述字节使能信号被切换时创建所述直流和交流噪声。

10.根据权利要求8所述的方法,其特征在于,所述耦合在所述负位线升压电路系统与所述写驱动器中被布置成驱动包括所述多个所述存储器位单元的存储器阵列中的一条或多条互补位线的n型金属氧化物半导体(nmos)之间。

11.一种装置,包括:

读出寄存器;

存储器内建自测试(mbist)控制器,所述mbist控制器被配置成存储包括一个或多个写操作的测试程序,所述一个或多个写操作被配置成在断言字节使能信号时将存储在多个存储器位单元中的数据从第一值改变为第二值;以及

被配置成执行以下操作的存储器读/写控制器:

执行存储在所述mbist控制器中的所述测试程序;

在执行与所述测试程序相关联的所述一个或多个写操作之后读取存储在所述多个存储器位单元中的所述数据;以及

将mbist通过/未通过结果写入所述读出寄存器,其中所述mbist通过/未通过结果指示关于所述多个存储器位单元中从其读取的所述数据不同于预期值的任何存储器位单元的故障。

12.根据权利要求11所述的装置,其特征在于,所述一个或多个写操作被配置成根据在奇数存储器地址和偶数存储器地址之间交替的一个或多个旋转模式来改变存储在所述多个存储器位单元中的所述数据。

13.根据权利要求12所述的装置,其特征在于,所述一个或多个旋转模式包括以所述奇数存储器地址开始的第一旋转模式和以所述偶数存储器地址开始的第二旋转模式。

14.根据权利要求13所述的装置,其特征在于,所述一个或多个旋转模式各自包括其中在存储在所述多个存储器位单元中的所述数据已被初始化为所述第一值之后将存储在所述多个存储器位单元中的所述数据改变为所述第二值的一次或多次迭代。

15.根据权利要求14所述的装置,其特征在于,所述一次或多次迭代包括在存储在所述多个存储器位单元中的所述数据已被初始化为零之后将存储在所述多个存储器位单元中的所述数据改变为一的第一迭代、以及在存储在所述多个存储器位单元中的所述数据已被初始化为一之后将存储在所述多个存储器位单元中的所述数据改变为零的第二迭代。

16.根据权利要求11所述的装置,其特征在于,所述测试程序是根据在要被写入所述多个存储器位单元的所述第二值到达数据输入信号之前断言所述字节使能信号的定时来执行的。

17.一种设备,包括:

用于执行包括一个或多个写操作的测试程序的装置,所述一个或多个写操作被配置成在断言字节使能信号时将存储在多个存储器位单元中的数据从第一值改变为第二值;

用于在执行与所述测试程序相关联的所述一个或多个写操作之后读取存储在所述多个存储器位单元中的所述数据的装置;以及

用于将mbist通过/未通过结果写入读出寄存器的装置,其中所述mbist通过/未通过结果指示关于所述多个存储器位单元中从其读取的所述数据不同于预期值的任何存储器位单元的故障。

18.根据权利要求17所述的设备,其特征在于,所述一个或多个写操作被配置成根据在奇数存储器地址和偶数存储器地址之间交替的一个或多个旋转模式来改变存储在所述多个存储器位单元中的所述数据。

19.根据权利要求18所述的设备,其特征在于,所述一个或多个旋转模式包括以所述奇数存储器地址开始的第一旋转模式和以所述偶数存储器地址开始的第二旋转模式。

20.根据权利要求19所述的设备,其特征在于,所述一个或多个旋转模式各自包括其中在存储在所述多个存储器位单元中的所述数据已被初始化为所述第一值之后将存储在所述多个存储器位单元中的所述数据改变为所述第二值的一次或多次迭代。

21.根据权利要求20所述的设备,其特征在于,所述一次或多次迭代包括在存储在所述多个存储器位单元中的所述数据已被初始化为零之后将存储在所述多个存储器位单元中的所述数据改变为一的第一迭代、以及在存储在所述多个存储器位单元中的所述数据已被初始化为一之后将存储在所述多个存储器位单元中的所述数据改变为零的第二迭代。

22.根据权利要求17所述的设备,其特征在于,所述测试程序是根据在要被写入所述多个存储器位单元的所述第二值到达数据输入信号之前断言所述字节使能信号的定时来执行的。

23.一种其上记录有存储器内建自测试(mbist)指令的非瞬态计算机可读存储介质,所述mbist指令被配置成使测试装置:

执行测试程序,其中所执行的测试程序包括一个或多个写操作,所述一个或多个写操作被配置成在断言字节使能信号时将存储在多个存储器位单元中的数据从第一值改变为第二值;

在执行与所述测试程序相关联的所述一个或多个写操作之后读取存储在所述多个存储器位单元中的所述数据;以及

将mbist通过/未通过结果写入读出寄存器,其中所述mbist通过/未通过结果指示关于所述多个存储器位单元中从其读取的所述数据不同于预期值的任何存储器位单元的故障。

24.根据权利要求23所述的非瞬态计算机可读存储介质,其特征在于,所述一个或多个写操作被配置成根据在奇数存储器地址和偶数存储器地址之间交替的一个或多个旋转模式来改变存储在所述多个存储器位单元中的所述数据。

25.根据权利要求24所述的非瞬态计算机可读存储介质,其特征在于,所述一个或多个旋转模式包括以所述奇数存储器地址开始的第一旋转模式和以所述偶数存储器地址开始的第二旋转模式。

26.根据权利要求25所述的非瞬态计算机可读存储介质,其特征在于,所述一个或多个旋转模式各自包括其中在存储在所述多个存储器位单元中的所述数据已被初始化为所述第一值之后将存储在所述多个存储器位单元中的所述数据改变为所述第二值的一次或多次迭代。

27.根据权利要求26所述的非瞬态计算机可读存储介质,其特征在于,所述一次或多次迭代包括在存储在所述多个存储器位单元中的所述数据已被初始化为零之后将存储在所述多个存储器位单元中的所述数据改变为一的第一迭代、以及在存储在所述多个存储器位单元中的所述数据已被初始化为一之后将存储在所述多个存储器位单元中的所述数据改变为零的第二迭代。

28.根据权利要求23所述的非瞬态计算机可读存储介质,其特征在于,所述测试程序是根据在要被写入所述多个存储器位单元的所述第二值到达数据输入信号之前断言所述字节使能信号的定时来执行的。

技术总结
一种用于存储器内建自测试(MBIST)的方法和装置可被配置成:从MBIST控制器加载测试程序,执行该测试程序,以及确定通过/未通过结果并将其写入读出寄存器。例如,在各个实施例中,测试程序可包括一个或多个写操作,该一个或多个写操作被配置成:在断言字节使能信号时将存储在多个存储器位单元中的数据从第一值改变为第二值,以便测试与存储器位单元相关联的稳定性;由于字节使能模式应力而创建DC和AC噪声;检查全速字节使能模式定时;以及执行可被设计成验证是否在数据输入(Din)引脚处接收到数据的自检算法。在执行(诸)写操作之后,任何存储与预期值不同的值的存储器位单元可被标识为未通过MBIST。

技术研发人员:G·希科;F·阿迈德;C·郑
受保护的技术使用者:高通股份有限公司
技术研发日:2018.09.06
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-47425.html

最新回复(0)