针对基于锁存器的存储器来减少面积的atpg测试方法
技术领域
1.本公开涉及集成电路器件领域,并且具体涉及有助于在测试模式中由锁存器构建的先进先出(fifo)
缓冲器的操作,从而允许完整测试这些fifo缓冲器的写/读路径的电路和技术。
背景技术:
2.集成电路器件(诸如片上系统(soc)和微控制器)的复杂性不断增加,并且定期引入新的高级功能。结果,数字
逻辑占用的此类器件的面积增加,这是不期望的,因为它增加了成本。因此,已进行了减少这种面积消耗的尝试。
3.一个重点领域是减少soc和微控制器中使用的数据先进先出 (fifo)缓冲器的面积。fifo缓冲器通常由触发器形成。一些减少面积的努力集中在利用锁存器替换数据fifo缓冲器的触发器,因为这可以将这样的fifo缓冲器消耗的物理面积减少45%到50%。但是,这会导致完全测试fifo缓冲器的能力出现问题。
4.由锁存器形成的fifo缓冲器4及其相关联的逻辑电路在图1中被示出为附图标记1。此处,待写入fifo缓冲器4的数据首先被写入到写入数据寄存器2,然后适当地借助并通过写入逻辑电路3传递到fifo缓冲器4来执行写入。待从fifo缓冲器4读取的数据借助并通过读取逻辑电路5适当地传递到读取数据寄存器6。注意,写入数据寄存器2和读取数据寄存器6是在测试模式中使用的扫描链的一部分。测试逻辑7对fifo缓冲器4、扫描链的写入数据寄存器2部分、写入逻辑电路3、fifo缓冲器4、读取逻辑电路5和扫描链的读取数据寄存器6部分进行操作,以例如使用已知技术(例如自动测试模式生成(atpg)测试和逻辑内置自测(lbist)测试)在fifo缓冲器4上执行测试。
5.为了使用atpg测试和lbist测试来测试fifo缓冲器4,fifo 缓冲器4内的锁存器在测试过程期间的适当时间,通过由测试逻辑7 将经断言的使能
信号应用到它们的使能引脚而变得透明,从而使能将数据从写入数据寄存器2通过fifo缓冲器4到读取数据寄存器6的正确传递,并且使得能够测试fifo缓冲器4在其锁存使能引脚上的固定0故障。但是,这种测试能力比预期的要有限,只有从写入数据寄存器2通过fifo缓冲器4到读取数据寄存器6的整个数据路径作为整体被测试,这意味着无法单独测试从写入数据寄存器2到fifo 缓冲器4的数据路径,以及单独测试从fifo缓冲器4到读取数据寄存器6的数据路径。此外,无法测试fifo缓冲器4在其锁存使能引脚上的固定1故障。
6.因此,需要进一步开发利用锁存器作为其存储元件的fifo缓冲器领域,以能够对这些fifo缓冲器执行更大范围的测试。
技术实现要素:
7.本文公开了可以在功能模式和测试模式中操作的系统,系统包括:写入数据寄存器,其通过时钟信号来计时并且被配置为存储待写入数据;读取数据寄存器,其通过时钟信号来计时并且被配置为存储所读取的数据;先进先出(fifo)缓冲器,其由锁存器组组成,锁
存器组通过使能信号来使能,并且锁存器组被布置为存储多个字,其中每次可以由写入地址信号选择一个字来将数据从写入数据寄存器写入锁存器组中,并且每次字可以由读取地址信号选择一个来将锁存器组中存储的数据读出到读取数据寄存器中;控制电路装置,其被配置为接收写入请求信号和写入地址信号,并且生成写入使能信号;其中控制电路装置还被配置为接收读取请求信号和读取地址信号,并且生成读取使能信号;以及胶合(glue)逻辑,其被配置为至少从写入使能信号生成内部写入使能信号并且至少从读取使能信号生成内部读取使能信号;其中当系统处于功能模式时,fifo缓冲器的锁存器组由写入使能信号和读取使能信号使能;并且其中当系统处于测试模式时,fifo缓冲器的锁存器组由内部写入使能信号和内部读取使能信号使能。
8.当测试模式是自动测试模式生成(atpg)测试模式时,控制电路装置和胶合逻辑可以通过以下方法协作来在测试模式中操作系统:将扫描控制信号设置为逻辑1并且将转换模式信号设置为逻辑0,从而开始固定测试;以及执行测试设置阶段,以针对atpg测试模式来初始化fifo缓冲器。测试设置阶段可以通过以下方式执行:将扫描复位信号设置为逻辑0,从而将写入数据寄存器和读取数据寄存器置于复位状态;使用外部使能信号来使能fifo缓冲器的锁存器组,从而使得锁存器组透明;移除外部使能信号,从而使得锁存器组锁存;以及将扫描复位信号设置为逻辑1,从而将写入数据寄存器和读取数据寄存器从复位状态释放,同时不向写入数据寄存器提供时钟信号,从而完成测试设置阶段。
9.当测试模式是atpg测试模式时,控制电路装置和胶合逻辑还可以通过以下方式协作来在测试模式中操作系统:通过将atpg测试模式移位到fifo缓冲器来执行移位阶段,使得在最后一次移位之后,写入数据寄存器保存待被移位的最后一位的值;其中,当fifo缓冲器在一个或多个锁存器组的使能输入处经历固定1故障时,fifo缓冲器包含待被移位的最后一位的值,但是当fifo缓冲器在一个或多个锁存器组的使能输入处没有经历固定1故障时,fifo缓冲器此时不包含待被移位的最后一位的值;以及执行捕获阶段,其中,当fifo 缓冲器在一个或多个锁存器组的使能输入处经历固定1故障时,读取数据寄存器保存待被移位的最后一位的值,但是当fifo缓冲器在一个或多个锁存器组的使能输入处没有经历固定1故障时,读取数据寄存器保持逻辑0。
10.当测试模式是逻辑内置自测(lbist)模式时,控制电路装置和胶合逻辑可以通过以下方法协作而在测试模式中操作系统:使用使能信号来将fifo缓冲器的锁存器组使能,从而使得锁存器组变得透明;生成lbist模式并且将lbist模式传递通过fifo缓冲器;以及在 lbist模式的给定数目的位已通过fifo缓冲器之后,将使能信号解除断言,使得当fifo缓冲器在一个或多个锁存器组的使能输入处经历固定1故障时,fifo缓冲器继续通过lbist模式,但是当fifo 缓冲器在一个或多个锁存器组的使能输入处没有经历固定1故障时, fifo缓冲器停止通过lbist模式。
11.胶合逻辑可以包括第一胶合逻辑电路,第一胶合逻辑电路包括:第一触发器,其具有接收扫描使能信号的数据输入、输出以及接收时钟信号的时钟输入;第二触发器,其具有接收第一触发器的输出的数据输入、生成内部扫描使能信号的输出以及接收时钟信号的时钟输入;以及与门,其具有接收扫描使能信号的第一反相输入、接收第一触发器的输出的第二反相输入以及接收内部扫描使能信号的第三非反相输入,其中与门在其输出处生成门控扫描使能信号。
12.胶合逻辑还可以包括第二胶合逻辑电路,第二胶合逻辑电路包括:与门,其具有接收写入请求信号的第一输入和接收门控扫描使能信号的第二输入,并具有输出;第一多路复用器,其具有接收焊盘使能信号的第一数据输入、接收与门的输出的第二数据输入、接收转换模式信号的选择输入以及输出;以及第二多路复用器,其具有接收写入请求信号的第一数据输入、接收第一多路复用器的输出的第二数据输入、接收扫描控制信号的选择输入以及生成内部写入使能信号的输出。
13.胶合逻辑还可以包括第三胶合逻辑电路,第三胶合逻辑电路包括:与门,其具有接收读取有效信号的第一非反相输入、接收内部扫描使能信号的第二反相输入、接收扫描使能信号的第三反相输入以及输出;以及多路复用器,其具有接收读取有效信号的第一数据输入、接收第三胶合逻辑电路的与门的输出的第二数据输入、接收转换模式信号的选择输入以及生成内部读取有效信号的输出。
14.胶合逻辑还可以包括第四胶合逻辑电路,第四胶合逻辑电路包括:与门,其具有接收读取使能信号的第一非反相输入、接收内部扫描使能信号的第二反相输入、接收扫描使能信号的第三反相输入以及输出;以及多路复用器,其具有接收读取使能信号的第一数据输入、接收第四胶合逻辑电路的与门的输出的第二数据输入、接收转换模式信号的选择输入以及生成内部读取使能信号的输出。
15.当控制电路装置和胶合逻辑在测试模式是外部提供时钟信号的自动测试模式生成(atpg)模式时协作以在测试模式中操作系统时,胶合逻辑内使用的电路可以包括第五胶合逻辑电路,第五胶合逻辑电路包括:第一与门,其具有接收写入请求信号的第一输入、接收焊盘使能信号的第二输入以及输出;第二与门,其具有接收转换模式信号的第一非反相输入、接收扫描使能信号的第二反相输入以及输出;第一多路复用器,其具有接收焊盘使能信号的第一数据输入、接收第一与门的输出的第二数据输入、接收第二与门的输出的选择输入以及输出;以及第二多路复用器,其具有接收写入请求信号的第一数据输入、接收第一多路复用器的输出的第二数据输入、接收扫描控制信号的选择输入以及生成内部写入使能信号的输出。
16.当控制电路装置和胶合逻辑在测试模式是外部提供时钟信号的 atpg模式中协作来在测试模式中操作系统时,胶合逻辑内使用的电路还可以包括第六逻辑电路,第六逻辑电路包括:第一与门,其具有接收读取有效信号的第一非反相输入、接收焊盘使能信号的第二反相输入以及输出;第二与门,其具有接收转换模式信号的第一非反相输入、接收扫描使能信号的第二反相输入以及输出;以及多路复用器,其具有接收读取有效信号的第一数据输入、接收来自第一与门的输出的第二数据输入、接收第二与门的输出的选择输入以及生成内部读取有效信号的输出。
17.当控制电路装置和胶合逻辑在测试模式是外部提供时钟信号的 atpg模式时协作以在测试模式中操作系统时,胶合逻辑内使用的电路还可以包括第七逻辑电路,第七逻辑电路包括:第一与门,其具有接收读取使能信号的第一非反相输入、接收焊盘使能信号的第二反相输入以及输出;第二与门,其具有接收转换模式信号的第一非反相输入、接收扫描使能信号的第二反相输入以及输出;以及多路复用器,其具有接收读取使能信号的第一数据输入、接收来自第七逻辑电路的第一与门的输出的第二数据输入、接收第七逻辑电路的第二与门的输出的选择输入以及生成内部读取使能信号的输出。
附图说明
18.图1是现有技术fifo缓冲器、与其操作相关联的电路以及与其测试相关联的电路的高级框图。
19.图2是如本文
所述的fifo缓冲器、与其操作相关联的电路以及与其测试相关联的电路的高级框图。
20.图3是图2的fifo缓冲器以及与其操作相关联的电路的更详细框图。
21.图4是示出图3的各种信号在非测试模式中fifo缓冲器操作期间的状态的时序图。
22.图5a-图5d是逻辑电路的第一实施例的示意框图,逻辑电路用于生成用于图3的fifo缓冲器在非测试和测试模式中操作期间的操作的控制信号。
23.图6是示出在fifo缓冲器操作来执行转换模式测试期间,图5a
‑ꢀ
图5d的各种信号的状态的时序图,其中在测试期间使用的时钟信号由锁相环提供。
24.图7a-图7c是逻辑电路的第二实施例的示意框图,逻辑电路用于生成用于图3的fifo缓冲器在非测试和测试模式中操作期间的操作的控制信号。
25.图8是在fifo缓冲器操作来执行转换模式测试期间,图7a-图 7c的各种信号的状态的时序图,其中在测试期间使用的时钟信号由外部源在焊盘处提供。
具体实施方式
26.以下公开内容使得本领域技术人员能够制作和使用本文所公开的主题。在不脱离本公开的精神和范围的情况下,本文描述的一般原理可以应用于除上面详述的实施例和应用之外的实施例和应用。本公开不旨在限于所示的实施例,而是要符合与本文所公开或建议的原理和特征一致的最宽范围。
27.图2所示是诸如在soc或微控制器中使用的fifo缓冲器14。 fifo缓冲器14由锁存器组(此处被图示为n个d锁存器14[0],..., 14[n])组成,锁存器组从写入数据寄存器12接收数据并将数据输出到读取数据寄存器16。写入逻辑电路装置13将来自写入数据寄存器 12的数据传递到fifo缓冲器14中的所有锁存器,并且读取逻辑电路装置15从fifo缓冲器中的所有锁存器接收数据并将其传递到读取数据寄存器16。fifo缓冲器14的锁存器由使能信号来使能。
[0028]
测试逻辑17对fifo缓冲器14、扫描链的写入数据寄存器12部分、写入逻辑电路装置13、fifo缓冲器14和读取逻辑电路装置15 以及扫描链的读取数据寄存器16部分进行操作,以诸如使用例如自动测试模式生成(atpg)测试和逻辑内置自测(lbist)测试的已知技术对fifo缓冲器14执行测试。作为扫描链的一部分存在的写入数据寄存器12和读取数据寄存器16在测试期间被用于分别将待写入 fifo缓冲器14中的数据移入以及从fifo缓冲器14将读取数据移出。请注意,写入指针寄存器wr_ptr、读取指针寄存器rd_ptr以及接收写入请求信号wr_req和读取请求信号rd_req的控制寄存器如下所述也作为扫描链的一部分存在,并且被用于选择待写入fifo缓冲器 14的锁存器并选择待从fifo缓冲器14读取的锁存器。
[0029]
将fifo缓冲器14的atpg测试使能的操作可以测试两个数据路径(从写入数据寄存器12到fifo缓冲器14,被示出为数据路径a 到b;以及从fifo缓冲器14到读取数据寄存器16,被示出为数据路径b到c),现在参考表1(如下所示)描述图其锁存使能引脚上的固定1故障。
[0030]
表1
[0031][0032][0033]
测试开始于将扫描控制信号设置为逻辑1并将转换模式信号 transition_mode设置为逻辑0来指示固定测试待被执行,并且然后进入测试设置阶段,测试设置阶段针对atpg模式,将fifo缓冲器14 及其相关联的电路初始化。
[0034]
在测试设置阶段开始时,扫描复位信号被设置为逻辑0(例如,经由外部测试设备向焊盘或引脚施加信号),从而将写入数据寄存器 12和读取数据寄存器16复位,强制其内容为逻辑0(表1中写入数据寄存器12的内容被示出为“a out”,并且读取数据寄存器16的内容被示出为“c out”)。然后,fifo缓冲器14的锁存器的使能输入处的使能信号(在表1中示出为“en”)通过外部测试设备将信号施加到焊盘或引脚而被断言,从而使得这些锁存器透明。
[0035]
在非故障情况下(没有一个锁存器在其使能引脚处经历固定1故障),由于锁存器透明,fifo缓冲器14的输出(在表1中被示出为“b out”)将因此为逻辑0,并且当扫描复位信号被设置为逻辑0时,读取数据寄存器16将存储逻辑0。在故障的情况下(其中一个或多个锁存器在其使能引导处经历固定1故障),从fifo缓冲器14输出的一个或多个对应锁存器将保持在逻辑0,并且当扫描复位信号被设置为逻辑0时,读取数据寄存器16将继续存储逻辑0。
[0036]
接着,当仍保持在测试设置阶段时,fifo缓冲器14的锁存器的使能输入处的使能信号被解除断言,导致锁存器锁存。因此,在非故障情况下(其中没有一个锁存器在其使能引脚处经历固定1故障),由于这些锁存器先前输出逻辑0,因此预计它们将继续这样做。因此,预期fifo缓冲器14的输出将为逻辑0,并且当扫描复位信号被设置为逻辑0时,读取数据寄存器16的输出保持在逻辑0。在故障情况下 (其中一个或多个锁存器在其使能引脚处经历固定1故障),由于写入数据寄存器12继续存储逻辑0,从fifo缓冲器14输出的一个或多个对应锁存器将继续为逻辑0。
[0037]
接着,扫描复位信号被设置为逻辑1,将写入数据寄存器12和读取数据寄存器16从它们的复位状态释放。然而,还没有时钟脉冲被提供给写入数据寄存器12,所以写入数据寄存器12的内容保持在逻辑0。
[0038]
在非故障情况下(其中没有一个锁存器在其使能引脚处经历固定 1故障),fifo缓
冲器14的输出将保持在逻辑0,因为其锁存器的使能信号仍然在0处,并且读取数据寄存器16的内容保持在逻辑0处,这是因为还没有时钟脉冲提供给读取数据寄存器16。在故障情况下 (其中一个或多个锁存器在其使能引脚处经历固定1故障),由于写入数据寄存器12的内容仍为逻辑0,因此预期从fifo缓冲器14输出的一个或多个对应锁存器将保持在逻辑0,并且读取数据寄存器16 的内容保持在逻辑0,这是因为还没有时钟脉冲提供给读取数据寄存器16。
[0039]
此时测试设置阶段完成,并且atpg测试模式通过扫描链移入 fifo缓冲器14发生在移位阶段。如图所示,在最后一次移位之后,写入数据寄存器12保存待被移入的最后一位的值,其在表1中由“as”标记。
[0040]
由于此时fifo缓冲器14的使能信号将处于逻辑0,因此在非故障情况下(其中没有一个锁存器在其使能引脚处经历固定1故障),来自写入数据寄存器12的值“as”(可以是逻辑0或逻辑1)还没有被锁存到fifo缓冲器14的输出,并且读取数据寄存器16保存待移入的最后一位的值“cs”(也可以是逻辑0或逻辑1)。在故障情况下(其中fifo缓冲器14的一个或多个锁存器在其使能输入处经历固定 1故障),fifo缓冲器14的一个或多个对应锁存器已变得透明,并且因此来自fifo缓冲器14的一个或多个对应锁存器的输出是值“as”,并且读取数据寄存器16保存待被移入的最后一位的值“cs”。
[0041]
由于最后移位被执行,捕获阶段开始。在捕获阶段期间,不再形成扫描链,并且所捕获的值来自功能路径(非扫描路径)。由于此时到fifo缓冲器14的使能信号将处于逻辑0,因此在非故障情况下(其中fifo缓冲器14的锁存器都没有在它们的使能输入处经历固定1故障),来自写入数据寄存器12的值“ac”(可以是逻辑0或逻辑1)尚未被锁存到fifo缓冲器14的输出,并且因此读取数据寄存器16捕获值“0”。在故障情况下(其中fifo缓冲器14的一个或多个锁存器在其使能输入处经历固定1故障),fifo缓冲器14的一个或多个对应锁存器已变得透明,并且因此在fifo缓冲器14的一个或多个对应锁存器中捕获的输出是值“ac”,而读取数据寄存器16在最后一次移位结束时捕获fifo缓冲器14的值,该值对于在其使能输入处具有固定1故障的锁存器为“as”。当读取数据寄存器16的内容作为扫描链的一部分移出时,这将在下一次移位时创建不匹配。
[0042]
现在描述将fifo缓冲器14的lbist测试使能的操作。最初, fifo缓冲器14的使能输入被断言,使得锁存器变得透明,并且lbist 模式内部生成。在借助fifo缓冲器14馈送给定数目的位之后,fifo 的使能输入被解除断言。在非故障情况下(其中fifo缓冲器14在其使能输入处未经历固定1故障),则读取数据寄存器16在使能输入被解除断言时捕获fifo缓冲器14的输出。因此,当签名从写入读取数据寄存器16的数据生成并且与给定位数的已知无故障签名比较时,将不会出现不匹配。
[0043]
然而,在故障情况下(其中fifo缓冲器14的一个或多个锁存器在其输入处经历固定1故障),fifo缓冲器14的一个或多个对应锁存器保持透明,随着lbist模式继续,从写入数据寄存器12捕获不同的值。因此,当签名从写入读取数据寄存器16的数据生成并与给定位数的已知无故障签名进行比较时,将出现不匹配,从而指示在 fifo缓冲器14的使能输入上存在固定1故障。
[0044]
写入数据寄存器12、写入逻辑13、fifo缓冲器14、读取逻辑 15和读取数据寄存器16的细节可以在图3中到。在所示示例中, fifo缓冲器14由16个锁存器组组成,16个锁存
器被标记为d
n-0
到 d
n-15
,其中d
n-0
为n:0,类似地,d
n-1
为n:0,d
n-2
为n:0,....d
n-15
是 n:0,其中n比fifo缓冲器14的位宽小一,例如31。写入逻辑13 和读取逻辑15被包含在读/写控制器内。写入数据寄存器12存储待写入fifo缓冲器14的数据12(a),被标记为wr_data,并且写入指针 12(b)是指示fifo缓冲器14内待写入数据12(a)的地址wr_addr的另一寄存器。读取数据寄存器16基于来自读取指针16(b)的值存储从 fifo缓冲器14读取的数据16(a)(被标记为rd_data),寄存器指示待读取数据16(a)的地址rd_addr。写/读控制器13/15可操作用于接收写入请求信号wr_req和读取请求信号rd_req,它们分别指示何时请求将来自写入数据寄存器12的数据12(a)写入fifo缓冲器14,以及何时请求从fifo缓冲器14读取数据16(a)到读取数据寄存器16。写/读控制器13/15还可操作用于从写入指针寄存器12(b)和读取指针寄存器16(b)接收写入数据指针12(b)和读取数据指针16(b),并生成 fifo_empty信号和fifo_full信号,fifo_empty信号指示fifo缓冲器14何时未满,fifo_full信号指示fifo缓冲器14何时满。基于 fifo_empty信号和fifo_full信号以及写入请求wr_req和读取请求 rd_req,写/读控制器13/15生成写入使能信号wr_en(它是写入请求信号wr_req的缓冲版本并用作到fifo缓冲器14的锁存器组的使能信号并且便于将数据写入利用wr_addr选择的锁存器组[d
n-0
或 d
n-1
或d
n-2
…
或d
n-15
]中)和读取使能信号rd_en(它是读取请求信号rd_req的缓冲版本,以便于在合适的时间,在利用rd_addr选择的fifo缓冲器14内从锁存器组[d
n-0
或d
n-1
或d
n-2
…
或d
n-15
]中读取数据)。
[0045]
具体地,当fifo缓冲器14未满时,fifo缓冲器14具有不存储当前数据位的一个或多个锁存器。当fifo缓冲器14已满时,fifo 缓冲器14在每个锁存器中存储有当前数据位。fifo_empty信号和 fifo_full信号被写/读控制器13/15用来生成写入使能信号wr_en和读取使能信号rd_en,以确保在fifo缓冲器14已满时不写入数据(使得没有被读出的当前位不被覆盖),并且确保在fifo缓冲器14为空时不读出数据(使得不是当前的位不被读出)。
[0046]
现在附加地参考图4来描述fifo缓冲器14的操作。在初始时间 t0(这不是启动条件,而只是为本描述选择的起始点),当时钟clk 变为高时,注意fifo缓冲器14被逻辑1的fifo_empty信号指示为空,即逻辑0的wr_req如图所示尚未请求写入,写入使能信号wr_en 为逻辑0,写入数据寄存器12(a)包含数据0xabcd_0123,写入指针12(b)被设置为4'b0000,当前存储在fifo缓冲器14中的数据是 0x0000_0000,处于逻辑1的rd_req如图所示已请求读取,读取使能信号由rq_en示出为处于逻辑0,读取数据寄存器当前包含数据 0x0000_0000(与存储在fifo缓冲器14中的数据相同),并且读取有效信号rd_valid也为逻辑1。在时间t1,写入请求信号wr_req转换为逻辑1,写入使能信号wr_en也是如此,这是因为fifo_empty信号为逻辑1。因此,在时间t2,由于基于wr_addr值选择的fifo缓冲器14的锁存器组[d
n-0
或d
n-1
或d
n-2
…
或d
n-15
]之一(由于写入指针12(b)被设置为4'b0000,选择d
n-0
)已通过写入使能信号wr_en的断言变得透明,数据0xabcd_0123被写入fifo缓冲器14的对应锁存器组[d
n-0
]。
[0047]
时钟clk然后转换为逻辑0,并且然后在时间t3,时钟clk再次变高,使得在时间t4,读取使能信号read_en和读取有效信号 rd_valid变为逻辑1,设置读取操作。在时间t4,写入请求wr_req 和写入使能信号wr_en下降到逻辑0,写入数据寄存器12利用待写入的下一数据12(a)加载,下一数据12(a)在此处被示出为 0x0000_0000,写入指针12(b)前进到4'b0001,并且由于写入,fifo 缓冲器14不再为空,并且因此fifo空信号fifo_empty下降到逻
辑0。到时间t5,读取完成,并且因此读取请求信号read_req下降为逻辑0并且读取数据信号rd_valid下降为逻辑0。同样作为读取完成的结果,读取数据寄存器16保存刚刚从fifo缓冲器14的对应锁存器组[d
n-0
]读取的0xabcd_0123的读取数据16(a),并且读取指针16(b) 相应地前进到4'b0001。由于读取完成,fifo缓冲器14现在再次为空,并且fifo空信号fifo_empty再次上升到逻辑1。
[0048]
因此,在两个时钟周期内,完成了从写入数据寄存器12到fifo 缓冲器14的写入,以及然后从fifo缓冲器14到读取数据寄存器16 的读取。
[0049]
以下将描述在被用于执行转换(全速at-speed)测试时,用于为 fifo缓冲器14生成控制信号的逻辑电路。在这些特定实例中,与上述直接写入使能信号wr_en、写入请求信号wr_req、读取使能信号 rd_en和读取请求信号rd_req相反,fifo缓冲器14基于内部写入使能信号int_wr_enan、内部读取使能信号int_rd_en以及由逻辑电路生成的内部读取有效信号int_rd_valid进行操作。
[0050]
现在参考图5a-图5d描述,在接收到用于全速测试的时钟作为锁相环(pll)的输出时,在执行全速测试时用于生成内部写入使能信号int_wr_en、内部读取使能信号int_rd_en和内部读取有效信号 int_rd_valid的逻辑电路。
[0051]
首先参考图5a来描述第一逻辑电路30。第一逻辑电路30包括第一触发器31和第二触发器33,它们均由时钟信号clk计时并且均由复位信号rst_b的补码来复位。第一触发器31在其数据输入处接收扫描使能信号scan_en,并且生成由触发器33的数据输入接收的输出。触发器33的输出产生在与门35的输入处接收的内部扫描使能信号internal_scan_en。与门35还借助反相器来接收扫描使能信号 scan_en作为输入,并且借助反相器接收触发器31的输出,并生成门控扫描使能信号gated_scan_en作为输出。
[0052]
现在参考图5b来描述第二逻辑电路40。第二逻辑电路40包括与门41,与门接收写入请求信号wr_req/写入使能信号wr_en和门控扫描使能信号gated_scan_en作为输入,并且将输出提供给多路复用器43的第一数据输入。多路复用器43具有从使能焊盘接收信号(被标记为en_pin_from_pad)的第二数据输入,并且具有接收转换模式信号transition_mode的选择输入。多路复用器45在其第二数据输入处接收写入请求信号wr_req/写入使能信号wr_en,在其第一数据输入处接收多路复用器43的输出,在其选择输入处接收扫描控制信号 scan_ctrl,并在其输出处产生内部写入使能信号int_wr_en。
[0053]
现在参考图5c来描述第三逻辑电路50。第三逻辑电路50包括与门51,与门51接收读取有效信号rd_valid作为第一输入,借助反相器接收内部扫描使能信号internal_scan_en作为第二输入,借助反相器接收扫描使能信号scan_en作为第三输入,并且向多路复用器 53提供输出。多路复用器53在第二数据输入处接收读取有效信号 rd_valid,在第一数据输入处接收与门51的输出,在其选择输入处接收转换模式信号transition_mode,并且在其输出处生成内部读取有效信号int_rd_valid。
[0054]
现在参考图5d描述第四逻辑电路60。第四逻辑电路60包括与门61,与门61接收读取使能信号rd_en作为第一输入,借助反相器接收内部扫描使能信号internal_scan_en作为第二输入,借助反相器接收扫描使能信号scan_en作为第三输入,并且向多路复用器63提供输出。多路复用器63在其第二数据输入处接收读取使能信号 rd_en,在其第一数据输入处接收与门61的输出,在其选择输入处接收转换模式信号transition_mode,并且在其输出
处生成内部读取使能信号int_rd_en。
[0055]
第一逻辑电路30、第二逻辑电路40、第三逻辑电路50和第四60 逻辑电路是在写/读控制器13/15的功能逻辑部分之上添加的测试胶合和mux逻辑98。
[0056]
现在参考图6来描述当时钟信号clk被接收作为pll的输出时,在转换模式(全速测试)中执行fifo缓冲器14的atpg测试的操作。
[0057]
在时间t0之前,移位阶段被执行,在移位阶段期间,扫描控制信号scan_ctrl、转换模式信号transition_mode和扫描使能信号 scan_en处于逻辑1。
[0058]
捕获在时间t0处开始。在时间t0,扫描使能信号scan_en转换为逻辑0,而内部扫描使能信号internal_scan_en保持在逻辑1。门控扫描使能信号gated_scan_en为逻辑1,内部写入使能信号int_wr_en 为逻辑0,而内部读取使能信号rd_en和内部读取有效信号 int_rd_valid为逻辑0。此时,写入请求信号wr_req、写入使能信号 wr_en、读取使能信号rd_en和有效读取信号rd_valid的逻辑值可以在不影响操作的情况下为1或0。同样此时,来自焊盘的强制使能信号(被标记为en_pin_from_pad)被强制为逻辑0。
[0059]
第一捕获周期在时间t1处开始,其中数据0xabcd_0123被加载到写入数据寄存器12中,并且写入请求信号wr_req和写入使能信号wr_en上升到逻辑1。注意,在时间t0之前,扫描使能信号scan_en 处于逻辑1。因此,返回参考图5a,当时钟信号clk在转换模式中的第一上升沿出现在时间t1处时,触发器31已保存逻辑1。这意味着在时间t1处,当触发器33由时钟信号clk计时时,内部扫描使能信号internal_scan_en被设置为逻辑1。还注意,由于此时扫描使能信号scan_en为逻辑0,当触发器31在时间t1处由时钟信号clk 计时时,其输出被设置为逻辑0。因此,在时间t1处,内部扫描使能internal_scan_en、扫描使能scan_en的补码以及触发器31的输出的补码均为逻辑1,这意味着与门35已接收到所有输入处的逻辑1,并且因此如图6的时序图所示,其输出(即,门控扫描使能信号 gated_scan_en)上升到逻辑1。
[0060]
现在返回参考图5b,注意,此时与门41将在其输入处接收均为逻辑1的写入请求信号wr_req/写入使能信号wr_en和门控扫描使能信号gated_scan_en。因此,与门41的输出将为逻辑1。由于此时转换模式信号transition_mode为逻辑1,多路复用器43选择与门41的输出作为其输出。同样地,如图6的时序图所示,由于此时扫描控制信号scan_ctrl为逻辑1,多路复用器45选择多路复用器43的输出作为其输出,作为内部写入使能信号int_wr_en。
[0061]
由于内部写入使能信号int_wr_en用于fifo缓冲器14的操作,这意味着根据上述fifo操作,基于wr_addr值选择的fifo缓冲器 14的锁存器组之一[d
n-0
或d
n-1
或d
n-2
…
或d
n-15
](wr_addr由作为扫描链的一部分的写入指针寄存器12(b)驱动)将在此时变得透明,从而将数据0xabcd_0123从写入数据寄存器12加载到fifo缓冲器14 的对应锁存器组中。
[0062]
在时钟信号clk的第二上升沿处,第二上升沿发生在时间t2处,如图6的时序图中所反映的,图5a的触发器33将其输入处的逻辑0 传递到其输出,作为内部扫描使能信号internal_scan_en。由于内部扫描使能信号internal_scan_en变为逻辑0,图5a中的与门35的输入变为逻辑0,并且因此如图6所示,门控扫描使能信号 gated_scan_en下降到逻辑0。由于门控扫描使能信号gated_scan_en 下降到逻辑0,图5b的与门41的输入之一变为逻辑0,表示与门41 的输出下降为逻辑0。由于转换模式信号transition_mode仍为逻辑1,多路复用器43仍选择与门41的输出作为输出。由于扫描控制信号 scan_ctrl仍为逻辑1,多路复
用器45仍将多路复用器43的输出作为其输出,结果是逻辑0现在作为内部写入使能信号int_wr_en传递,这反映在图6的时序图中。
[0063]
附加地,由于写入完成,现在可以开始读取。因此,在时间t2 处并且响应于进入转换模式之后的时钟信号clk的第二上升沿,读取使能信号rd_en和读取有效信号rd_valid上升到逻辑1。但是如果最后的移位值是逻辑1,则当它在t2之前也是逻辑1时,如图6 所示,由于此时内部扫描使能信号internal_scan_en下降到逻辑0,由于扫描使能信号scan_en保持在逻辑0,并且由于读取有效信号 rd_valid上升到逻辑1,与门51在其每个输入处具有逻辑1,并且因此输出逻辑1。由于转换模式信号transition_mode仍为逻辑1,因此多路复用器53仍选择与门51的输出作为内部读取有效信号 int_rd_valid传递。因此,如图6的时序图所示,在时间t2处,内部读取有效信号int_rd_valid上升到逻辑1。
[0064]
另外,由于此时内部扫描使能信号internal_scan_en下降到逻辑 0,扫描使能信号scan_en保持在逻辑0,而读取使能信号rd_en上升到逻辑1,与门61在其每个输入处具有逻辑1,并且因此输出逻辑 1。由于转换模式信号transition_mode仍为逻辑1,因此多路复用器 63仍选择与门61的输出作为内部读取使能信号int_rd_en。因此,如图6的时序图中所示,在时间t2处,内部读取使能信号int_rd_en 上升到逻辑1。
[0065]
在时钟信号clk的第三上升沿(即,在时钟信号clk的前一个上升沿开始的时段结束时)处,第三上升沿发生在时间t3处,当基于读取数据寄存器16的rd_addr值(rd_addr从作为扫描链的一部分的读取指针寄存器16(b)驱动)被选择时,从fifo缓冲器14的对应锁存器组读取先前写入fifo缓冲器14的锁存器组的数据 0xabcd_0123完成。因此,在两个时钟周期内,数据0xabcd_0123 已从写入数据寄存器12写入fifo缓冲器14的锁存器组[d
n-0
或d
n-1
或d
n-2
…
或d
n-15
],并且已由读取数据寄存器16从fifo缓冲器14 的锁存器组[d
n-0
或d
n-1
或d
n-2
…
或d
n-15
]读取。
[0066]
在一些情况下,读取有效信号rd_valid和读取使能信号rd_en 可以在时间t3下降到逻辑0。在这种情况下,由于读取有效信号 rd_valid为逻辑0,并且与门51的输出因此下降为逻辑0,并且多路复用器53输出处的内部读取有效信号int_rd_valid将变为逻辑0;同样地,由于读取使能信号rd_en为逻辑0,并且与门61的输出因此下降为逻辑0,并且多路复用器63输出处的内部读取使能信号 int_rd_en将变为逻辑0。在读取有效信号rd_valid和读取使能信号 rd_en时间t3处保持逻辑1的情况下,内部读取有效信号 int_rd_valid和内部读取使能信号int_rd_en保持为逻辑1。
[0067]
在时间t4处,扫描使能信号scan_en上升到逻辑1,指示转换模式测试结束。由于扫描使能信号scan_en上升为逻辑1,与门51 的输出下降为逻辑0,并且多路复用器53输出处的内部读取有效信号int_rd_valid则为逻辑0;同样地,与门61的输出也将下降到逻辑0,并且在多路复用器63的输出处的内部读取使能信号int_rd_en将变为逻辑0。这在图6的时序图中反应。
[0068]
在时间t5处,时钟信号clk的下一上升沿到达,为触发器31 和33计时,使得扫描使能信号scan_en的逻辑1被传递到触发器31 的输出。在时间t6处,下一时钟信号clk的上升沿到达,并且触发器31和33再次被计时。因此,在时间t6处,如图6的时序图所示,触发器31的逻辑1输出通过触发器33作为内部扫描使能信号 internal_scan_en传递。
[0069]
根据以上的描述,请注意,在全速测试期间使用的时钟信号clk 的频率高于其他
情况。
[0070]
现在参考图7a-图7c来描述用于生成内部写入使能信号 int_wr_en、内部读取使能信号int_rd_en和内部读取有效信号 int_rd_valid的逻辑电路,在用于低频转换测试的时钟从焊盘接收的情况下,这些信号用于在低频下执行转换测试。使用从焊盘接收的时钟执行的转换测试是由于ate或焊盘的限制;因此,虽然这是转换测试,但它不是全速高频测试。
[0071]
现在参考图7a来描述第五逻辑电路70。第五逻辑电路70包括接收写入请求信号wr_req/写入使能信号wr_en和来自使能焊盘的信号(被标记为en_pin_from_pad)的第一与门71。第一多路复用器 73在第一输入处接收与门71的输出,在第二输入处接收 en_pin_from_pad,在选择输入处接收与门77的输出,并且将输出提供给多路复用器75。与门77在第一输入处接收转换模式信号 transition_mode并且在第二输入处接收通过反相器的扫描使能信号 scan_en,并且将输出提供到多路复用器73的选择输入。多路复用器 75具有接收写入请求信号wr_req/写入使能信号wr_en的第二输入,接收多路复用器73的输出的第一输入,接收扫描控制信号scan_ctrl 的选择输入以及生成内部写入使能信号int_wr_en的输出。
[0072]
现在参考图7b来描述第六逻辑电路80。第六逻辑电路80包括与门81,与门81借助反相器接收读取有效信号rd_valid和 en_pin_from_pad作为输入,并且将输出提供给多路复用器83。多路复用器83在其第二输入处接收读取有效信号rd_valid,在其第一输入处接收与门81的输出,在其选择输入处接收与门85的输出并且在其输出处生成内部读取有效信号int_rd_valid。与门85在第一输入处接收转换模式信号transition_mode,在第二输入处借助反相器接收扫描使能信号scan_en,并且将输出提供给多路复用器83的选择输入。
[0073]
现在参考图7c来描述第七逻辑电路90。第七逻辑电路90包括与门93,与门93借助反相器来接收读取使能信号rd_en和 en_pin_from_pad作为输入,并且将输出提供给多路复用器91。多路复用器91在其第二输入处接收读取使能信号rd_en,在其第一输入处接收与门93的输出,在其选择输入处接收与门95的输出,并且在其输出处生成内部读取使能信号int_rd_en。与门95在第一输入处接收转换模式信号transition_mode,在第二输入处借助反相器接收扫描使能信号scan_en,并且将输出提供给多路复用器91的选择输入。
[0074]
现在参考图8来描述当从焊盘接收时钟信号clk时,在转换模式(低频)下执行fifo缓冲器14的atpg测试的操作。在时间t0 之前,移位被执行,在移位期间,扫描控制信号scan_ctrl、转换模式信号transition_mode和扫描使能信号scan_en处于逻辑1。
[0075]
在时间t0处,扫描使能信号scan_en被设置为逻辑0,从而开始捕获模式。请注意,此时en_pin_from_pad处于逻辑1。
[0076]
在时间t1处,写入请求信号wr_req和写入使能信号write_en 上升到逻辑1,读取有效信号rd_valid和读取使能信号rd_en也是如此。返回参考图7a,转换模式信号transition_mode为逻辑1且扫描使能信号scan_en为逻辑0意味着与门77在两个输入处具有逻辑 1,并且因此使得多路复用器73选择其第一输入通过作为输出。由于与门71接收到此时均为逻辑1的写入请求信号wr_req和 en_pin_from_pad,因此与门71的输出通过多路复用器73传递作为其输出。由于此时扫描控制信号scan_ctrl为逻辑1,多路复用器75 将多路复用器73的输出作为输出传递,并且因此如在图8中可以观察到的,内部写入使能信号
int_wr_en在时间t1处被设置为逻辑1。这允许此时写入数据寄存器12中的数据0xabcd_0123被写入fifo 缓冲器14的锁存器组[d
n-0
或d
n-1
或d
n-2
…
或d
n-15
]中基于wr_addr 值(wr_addr由作为扫描链的一部分的写入指针寄存器12(b)驱动) 选择的一个锁存器组。
[0077]
在时间t2处,数据写入fifo缓冲器14已完成,并且 ein_pin_from_pad下降为逻辑0。由于此时ein_pin_from_pad为逻辑 0,与门71的输出变为逻辑0,结果是如在图8的时序图中可以观察到的,内部写入使能信号int_wr_en下降到逻辑0,从而结束写入。
[0078]
返回参考图7b,转换模式信号transition_mode为逻辑1且扫描使能信号scan_en为逻辑0意味着与门85在两个输入处均具有逻辑 1,并且因此使得多路复用器83选择其第一输入通过作为输出。由于此时读取有效信号rd_valid为逻辑1且ein_pin_from_pad已下降至逻辑0,与门81在其两个输入处均具有逻辑1,并且因此输出逻辑1,如可以在图8中观察到的,逻辑1由多路复用器83作为内部读取有效信号int_rd_valid传递。返回参考图7c,转换模式信号 transition_mode为逻辑1且扫描使能信号scan_en为逻辑0同样意味着与门95在两个输入处均具有逻辑1,并且因此使得多路复用器91 选择其第一输入作为输出传递。由于此时读取使能信号rd_en为逻辑 1,并且ein_pin_from_pad已下降至逻辑0,与门93在其两个输入处均为逻辑1,并且因此输出逻辑1,如可以在图8中观察到的,逻辑1 由多路复用器91作为内部读取使能信号int_rd_en传递。
[0079]
这设置了在t3处完成的读取,并且因此当基于读取数据寄存器 16的rd_addr值(rd_addr从作为扫描链一部分的读取指针寄存器 16(b)来驱动)进行选择时,可以看到从fifo缓冲器14的对应锁存器组读取先前写入fifo缓冲器14的锁存器组的数据0xabcd_0123。在时间t4处,扫描使能信号scan_en上升到逻辑1,以结束转换模式测试。
[0080]
虽然已针对有限数目的实施例描述了本公开,但是受益于本公开的本领域技术人员将理解,可以设想不脱离本文所公开的本公开范围的其他实施例。因此,本公开的范围应仅由所附权利要求来限制。
技术特征:
1.一种在功能模式和测试模式中操作的系统,所述系统包括:写入数据寄存器,通过时钟信号来计时,并且被配置为存储待写入数据;读取数据寄存器,通过所述时钟信号来计时,并且被配置为在其中存储所读取的数据;先进先出fifo缓冲器,由锁存器组组成,所述锁存器组通过使能信号来使能,并且所述锁存器组被布置为存储多个字,其中每次由写入地址信号可选择一个字来将所述数据从所述写入数据寄存器写入所述锁存器组,并且每次由读取地址信号可选择一个字来将所述锁存器组中存储的数据读出到所述读取数据寄存器中;控制电路装置,被配置为接收写入请求信号和所述写入地址信号,并且生成写入使能信号;其中所述控制电路装置还被配置为接收读取请求信号和所述读取地址信号,并且生成读取使能信号;以及胶合逻辑,被配置为至少从所述写入使能信号生成内部写入使能信号,并且至少从所述读取使能信号生成内部读取使能信号;其中当所述系统处于所述功能模式时,所述fifo缓冲器的所述锁存器组由所述写入使能信号和所述读取使能信号使能;并且其中当所述系统处于所述测试模式时,所述fifo缓冲器的所述锁存器组由所述内部写入使能信号和所述内部读取使能信号使能。2.根据权利要求1所述的系统,其中当所述测试模式是自动测试模式生成atpg测试模式时,所述控制电路装置和所述胶合逻辑通过以下方法协作来在所述测试模式中操作所述系统:将扫描控制信号设置为逻辑1并且将转换模式信号设置为逻辑0,从而开始固定测试;执行测试设置阶段,以针对atpg测试模式通过以下方式来初始化所述fifo缓冲器:将扫描复位信号设置为逻辑0,从而将所述写入数据寄存器和所述读取数据寄存器置于复位状态;使用外部使能信号来使能所述fifo缓冲器的所述锁存器组,从而使得所述锁存器组透明;移除所述外部使能信号,从而使得所述锁存器组锁存;以及将所述扫描复位信号设置为逻辑1,从而将所述写入数据寄存器和所述读取数据寄存器从所述复位状态释放,同时不向所述写入数据寄存器提供所述时钟信号,从而完成所述测试设置阶段。3.根据权利要求2所述的系统,其中当所述测试模式是所述atpg测试模式时,所述控制电路装置和所述胶合逻辑还通过以下方式协作来在所述测试模式中操作所述系统:通过将atpg测试模式移位到所述fifo缓冲器来执行移位阶段,使得在最后一次移位之后,所述写入数据寄存器保存待被移位的最后一位的值;其中当所述fifo缓冲器在所述锁存器组中的一个或多个锁存器组的使能输入处经历固定1故障时,所述fifo缓冲器包含待被移位的最后一位的值,但是当所述fifo缓冲器在所述锁存器组中的一个或多个锁存器组的所述使能输入处没有经历所述固定1故障时,所述fifo缓冲器此时不包含待被移位的最后一位的值;以及执行捕获阶段,其中当所述fifo缓冲器在所述锁存器组中的一个或多个锁存器组的所
述使能输入处经历所述固定1故障时,所述读取数据寄存器保存待被移位的最后一位的值,但是当所述fifo缓冲器在所述锁存器组中的一个或多个锁存器组的所述使能输入处没有经历所述固定1故障时,所述读取数据寄存器保存逻辑0。4.根据权利要求2所述的系统,其中当所述测试模式是逻辑内置自测lbist模式时,所述控制电路装置和所述胶合逻辑通过以下方法协作而在所述测试模式中操作所述系统:使用使能信号来将所述fifo缓冲器的所述锁存器组使能,从而使得所述锁存器组变得透明;生成lbist模式,并且将所述lbist模式传递通过所述fifo缓冲器;以及在所述lbist模式的给定数目的位已通过所述fifo缓冲器之后,将所述使能信号解除断言,使得当所述fifo缓冲器在所述锁存器组中的一个或多个锁存器组的使能输入处经历固定1故障时,所述fifo缓冲器继续通过所述lbist模式,但是当所述fifo缓冲器在所述锁存器组中的一个或多个锁存器组的使能输入处没有经历所述固定1故障时,所述fifo缓冲器停止通过所述lbist模式。5.根据权利要求1所述的系统,其中当所述控制电路装置和所述胶合逻辑在所述测试模式是其中所述时钟信号由锁相环提供的自动测试模式生成atpg模式时协作而在所述测试模式中操作所述系统时,所述胶合逻辑内使用的电路装置包括第一胶合逻辑电路,所述第一胶合逻辑电路包括:第一触发器,具有接收扫描使能信号的数据输入、输出以及接收所述时钟信号的时钟输入;第二触发器,具有接收所述第一触发器的输出的数据输入、生成内部扫描使能信号的输出以及接收所述时钟信号的时钟输入;以及与门,具有接收所述扫描使能信号的第一反相输入、接收所述第一触发器的输出的第二反相输入以及接收所述内部扫描使能信号的第三非反相输入,其中所述与门在其输出处生成门控扫描使能信号。6.根据权利要求5所述的系统,其中当所述控制电路装置和所述胶合逻辑在所述测试模式是其中所述时钟信号由锁相环提供的所述atpg模式时协作而在所述测试模式中操作所述系统时,所述胶合逻辑内使用的电路装置包括第二胶合逻辑电路,所述第二胶合逻辑电路包括:与门,具有接收所述写入请求信号的第一输入和接收所述门控扫描使能信号的第二输入,并且具有输出;第一多路复用器,具有接收焊盘使能信号的第一数据输入、接收与门的输出的第二数据输入、接收转换模式信号的选择输入以及输出;以及第二多路复用器,具有接收所述写入请求信号的第一数据输入、接收所述第一多路复用器的输出的第二数据输入、接收扫描控制信号的选择输入以及生成所述内部写入使能信号的输出。7.根据权利要求6所述的系统,其中当所述控制电路装置和所述胶合逻辑在所述测试模式是其中所述时钟信号由锁相环提供的所述atpg模式时协作而在所述测试模式中操作所述系统时,所述胶合逻辑内使用的电路装置包括第三胶合逻辑电路,所述第三胶合逻辑电路包括:
与门,具有接收读取有效信号的第一非反相输入、接收所述内部扫描使能信号的第二反相输入、接收所述扫描使能信号的第三反相输入以及输出;以及多路复用器,具有接收所述读取有效信号的第一数据输入、接收所述第三胶合逻辑电路的与门的输出的第二数据输入、接收所述转换模式信号的选择输入以及生成内部读取有效信号的输出。8.根据权利要求7所述的系统,其中当所述控制电路装置和所述胶合逻辑在所述测试模式是其中所述时钟信号由锁相环提供的所述atpg模式时协作而在所述测试模式中操作所述系统时,所述胶合逻辑内使用的电路装置包括第四胶合逻辑电路,所述第四胶合逻辑电路包括:与门,具有接收所述读取使能信号的第一非反相输入、接收所述内部扫描使能信号的第二反相输入、接收所述扫描使能信号的第三反相输入以及输出;以及多路复用器,具有接收所述读取使能信号的第一数据输入、接收所述第四胶合逻辑电路的与门的输出的第二数据输入、接收所述转换模式信号的选择输入以及生成所述内部读取使能信号的输出。9.根据权利要求1所述的系统,其中当所述控制电路装置和所述胶合逻辑在所述测试模式是其中所述时钟信号由外部提供的自动测试模式生成atpg模式时协作而在所述测试模式中操作所述系统时,所述胶合逻辑内使用的电路装置包括第五胶合逻辑电路,所述第五胶合逻辑电路包括:第一与门,具有接收所述写入请求信号的第一输入、接收焊盘使能信号的第二输入以及输出;第二与门,具有接收转换模式信号的第一非反相输入、接收扫描使能信号的第二反相输入以及输出;第一多路复用器,具有接收所述焊盘使能信号的第一数据输入、接收所述第一与门的输出的第二数据输入、接收所述第二与门的输出的选择输入以及输出;以及第二多路复用器,具有接收所述写入请求信号的第一数据输入、接收所述第一多路复用器的输出的第二数据输入、接收扫描控制信号的选择输入以及生成所述内部写入使能信号的输出。10.根据权利要求9所述的系统,其中当所述控制电路装置和所述胶合逻辑在所述测试模式是其中所述时钟信号由外部提供的所述atpg模式时协作而在所述测试模式中操作所述系统时,所述胶合逻辑内使用的电路装置还包括第六逻辑电路,所述第六逻辑电路包括:第一与门,具有接收读取有效信号的第一非反相输入、接收所述焊盘使能信号的第二反相输入以及输出;第二与门,具有接收所述转换模式信号的第一非反相输入、接收所述扫描使能信号的第二反相输入以及输出;以及多路复用器,具有接收所述读取有效信号的第一数据输入、接收来自所述第一与门的输出的第二数据输入、接收所述第二与门的输出的选择输入以及生成内部读取有效信号的输出。11.根据权利要求10所述的系统,其中当所述控制电路装置和所述胶合逻辑在所述测试模式是其中所述时钟信号由外部提供的所述atpg模式时协作而在所述测试模式中操作
所述系统时,所述胶合逻辑内使用的电路装置还包括第七逻辑电路,所述第七逻辑电路包括:第一与门,具有接收读取使能信号的第一非反相输入、接收所述焊盘使能信号的第二反相输入以及输出;第二与门,具有接收所述转换模式信号的第一非反相输入、接收所述扫描使能信号的第二反相输入以及输出;以及多路复用器,具有接收所述读取使能信号的第一数据输入、接收来自所述第七逻辑电路的所述第一与门的输出的第二数据输入、接收所述第七逻辑电路的所述第二与门的输出的选择输入以及生成所述内部读取使能信号的输出。12.一种在功能模式和测试模式中操作的系统,所述系统包括:写入数据寄存器,通过时钟信号来计时,并且被配置为存储待写入数据;读取数据寄存器,通过所述时钟信号来计时,并且被配置为存储所读取的数据;先进先出fifo缓冲器,由锁存器组组成,所述锁存器组通过使能信号来使能,并且所述锁存器组被布置为存储多个字,其中每次由写入地址信号选择一个字来将所述数据从所述写入数据寄存器写入所述锁存器组,并且每次由读取地址信号可选择一个字来将所述锁存器组中存储的数据读出到所述读取数据寄存器中;控制电路装置,被配置为接收写入请求信号和所述写入地址信号,并且生成写入使能信号;其中所述控制电路装置还被配置为接收读取请求信号和所述读取地址信号,并且生成读取使能信号;胶合逻辑,被配置为至少从所述写入使能信号生成内部写入使能信号,并且至少从所述读取使能信号生成内部读取使能信号。13.根据权利要求12所述的系统,其中所述胶合逻辑包括第一胶合逻辑电路,所述第一胶合逻辑电路包括:第一触发器,具有接收扫描使能信号的数据输入、输出以及接收所述时钟信号的时钟输入;第二触发器,具有接收所述第一触发器的输出的数据输入、生成内部扫描使能信号的输出以及接收所述时钟信号的时钟输入;以及与门,具有接收所述扫描使能信号的第一反相输入、接收所述第一触发器的输出的第二反相输入以及接收所述内部扫描使能信号的第三非反相输入,其中所述与门在其输出处生成门控扫描使能信号。14.根据权利要求13所述的系统,其中所述胶合逻辑进一步包括第二胶合逻辑电路,所述第二胶合逻辑电路包括:与门,具有接收所述写入请求信号的第一输入和接收所述门控扫描使能信号的第二输入,并且具有输出;第一多路复用器,具有接收焊盘使能信号的第一数据输入、接收与门的输出的第二数据输入、接收转换模式信号的选择输入以及输出;以及第二多路复用器,具有接收所述写入请求信号的第一数据输入、接收所述第一多路复用器的输出的第二数据输入、接收扫描控制信号的选择输入以及生成所述内部写入使能信
号的输出。15.根据权利要求14所述的系统,其中所述胶合逻辑进一步包括第三胶合逻辑电路,所述第三胶合逻辑电路包括:与门,具有接收读取有效信号的第一非反相输入、接收所述内部扫描使能信号的第二反相输入、接收所述扫描使能信号的第三反相输入以及输出;以及多路复用器,具有接收所述读取有效信号的第一数据输入、接收所述第三胶合逻辑电路的与门的输出的第二数据输入、接收所述转换模式信号的选择输入以及生成内部读取有效信号的输出。16.根据权利要求15所述的系统,其中所述胶合逻辑进一步包括第四胶合逻辑电路,所述第四胶合逻辑电路包括:与门,具有接收所述读取使能信号的第一非反相输入、接收所述内部扫描使能信号的第二反相输入、接收所述扫描使能信号的第三反相输入以及输出;以及多路复用器,其具有接收所述读取使能信号的第一数据输入、接收所述第四胶合逻辑电路的所述与门的输出的第二数据输入、接收所述转换模式信号的选择输入以及生成所述内部读取使能信号的输出。17.根据权利要求12所述的系统,其中所述胶合逻辑包括第五胶合逻辑电路,所述第五胶合逻辑电路包括:第一与门,具有接收所述写入请求信号的第一输入、接收焊盘使能信号的第二输入以及输出;第二与门,具有接收转换模式信号的第一非反相输入、接收扫描使能信号的第二反相输入以及输出;第一多路复用器,具有接收所述焊盘使能信号的第一数据输入、接收所述第一与门的输出的第二数据输入、接收所述第二与门的输出的选择输入以及输出;以及第二多路复用器,具有接收所述写入请求信号的第一数据输入、接收所述第一多路复用器的输出的第二数据输入、接收扫描控制信号的选择输入以及生成所述内部写入使能信号的输出。18.根据权利要求17所述的系统,其中所述胶合逻辑进一步包括第六逻辑电路,所述第六逻辑电路包括:第一与门,具有接收读取有效信号的第一非反相输入、接收所述焊盘使能信号的第二反相输入以及输出;第二与门,具有接收所述转换模式信号的第一非反相输入、接收所述扫描使能信号的第二反相输入以及输出;以及多路复用器,具有接收所述读取有效信号的第一数据输入、接收来自所述第一与门的输出的第二数据输入、接收所述第二与门的输出的选择输入以及生成内部读取有效信号的输出。19.根据权利要求18所述的系统,其中所述胶合逻辑进一步包括第七逻辑电路,所述第七逻辑电路包括:第一与门,具有接收读取使能信号的第一非反相输入、接收所述焊盘使能信号的第二反相输入以及输出;
第二与门,具有接收所述转换模式信号的第一非反相输入、接收所述扫描使能信号的第二反相输入以及输出;以及多路复用器,具有接收所述读取使能信号的第一数据输入、接收来自所述第七逻辑电路的所述第一与门的输出的第二数据输入、接收所述第七逻辑电路的所述第二与门的输出的选择输入以及生成所述内部读取使能信号的输出。
技术总结
本公开的实施例涉及针对基于锁存器的存储器来减少面积的ATPG测试方法。本文公开了逻辑电路和技术,逻辑电路和技术用于操作该硬件,以使得能够从锁存器构建先进先出(FIFO)缓冲器,同时允许对那些锁存器的使能引脚进行固定1(stuck-at-1)故障测试,以及测试通过FIFO缓冲器的各个点处的数据路径。缓冲器的各个点处的数据路径。缓冲器的各个点处的数据路径。
技术研发人员:
N
受保护的技术使用者:
意法半导体国际有限公司
技术研发日:
2022.07.26
技术公布日:
2023/2/13