CN117890753A - 芯片测试方法、寄存器、电子设备和存储介质 - Google Patents
芯片测试方法、寄存器、电子设备和存储介质 Download PDFInfo
- Publication number
- CN117890753A CN117890753A CN202211220804.3A CN202211220804A CN117890753A CN 117890753 A CN117890753 A CN 117890753A CN 202211220804 A CN202211220804 A CN 202211220804A CN 117890753 A CN117890753 A CN 117890753A
- Authority
- CN
- China
- Prior art keywords
- clock
- signal
- pulse
- chip
- signals
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 189
- 239000013598 vector Substances 0.000 claims abstract description 63
- 238000012545 processing Methods 0.000 claims abstract description 40
- 230000009471 action Effects 0.000 claims abstract description 24
- 238000000034 method Methods 0.000 claims abstract description 21
- 230000005540 biological transmission Effects 0.000 claims abstract description 18
- 230000003993 interaction Effects 0.000 claims abstract description 17
- 230000000694 effects Effects 0.000 claims abstract description 14
- 230000006870 function Effects 0.000 claims description 14
- 230000001360 synchronised effect Effects 0.000 claims description 10
- 238000010998 test method Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 9
- 102100027063 Overexpressed in colon carcinoma 1 protein Human genes 0.000 description 4
- 101710120324 Overexpressed in colon carcinoma 1 protein homolog Proteins 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/2851—Testing of integrated circuits [IC]
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/2851—Testing of integrated circuits [IC]
- G01R31/2882—Testing timing characteristics
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3177—Testing of logic operation, e.g. by logic analysers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Theoretical Computer Science (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
本申请提出一种芯片测试方法、寄存器、电子设备和存储介质,涉及芯片测试技术领域。该方法包括:在扫描模式下,获取外部加载的测试向量;在测试向量的作用下,分别对多个原始时钟信号进行时长延迟和脉冲处理,获得多个时钟脉冲信号,时钟脉冲信号为具有预设延迟时长且以脉冲信号的形式表征的时钟信号,多个时钟脉冲信号之间没有交互路径且能够实现其承载的逻辑数据有序传输;在移位模式下,基于移位信号的作用将时钟脉冲信号输出至芯片外部,时钟脉冲信号用于对芯片的数据处理功能进行测试。减少测试向量的数量,提升测试效率,并且,多个时钟脉冲信号之间没有交互路径且能够实现其承载的逻辑数据有序传输。
Description
技术领域
本申请涉及芯片测试技术领域,具体涉及一种芯片测试方法、寄存器、电子设备和存储介质。
背景技术
随着电路工艺的不断演进,电路的尺寸不断减小,电路的集成度和复杂度与日俱增。大规模集成电路(如,大规模芯片或超大规模芯片等)通常会包括数量众多的时钟,以控制不同电路的工作状态。如果两个时钟之间存在交互路径,则不能使用同一条测试向量进行切换测试;而且,这两个时钟之间不会做时间检测(timing check),若两个时钟同时进行切换测试,并形成两个时钟之间的数据传递,而这种数据传递是没有时序保障的,易导致传输的数据存在逻辑错误,降低通信数据的传输准确性。因此,需要采用不同的测试向量对不同的时钟的控制性能进行测试。
通常在扫描测试过程中,会基于不同的时钟产生不同的测试向量(pattern),即在一个时钟周期内只会产生一个脉冲信号。但这会造成pattern过多,且,无法使用一个pattern来同时测试两个不同的时钟的工作性能,降低了测试效率。
发明内容
本申请提供一种芯片测试方法、寄存器、电子设备和存储介质。
本申请实施例提供一种芯片测试方法,方法包括:在扫描模式下,获取外部加载的测试向量;在测试向量的作用下,分别对多个原始时钟信号进行时长延迟和脉冲处理,获得多个时钟脉冲信号,时钟脉冲信号为具有预设延迟时长且以脉冲信号的形式表征的时钟信号,多个时钟脉冲信号之间没有交互路径且能够实现其承载的逻辑数据有序传输;在移位模式下,基于移位信号的作用将时钟脉冲信号输出至芯片外部,时钟脉冲信号用于对芯片的数据处理功能进行测试。
本申请实施例提供一种寄存器,该寄存器为对芯片进行测试的扫描链中的寄存器,寄存器包括:多个时钟域和多个芯片测试时钟电路,每个芯片测试时钟电路与一个时钟域连接;其中,寄存器的工作模式包括扫描模式和移位模式;在扫描模式下,寄存器获取外部加载的测试向量;在测试向量的作用下,芯片测试时钟电路分别对多个时钟域输出的原始时钟信号进行捕获,并对多个原始时钟信号进行时长延迟和脉冲处理,获得多个时钟脉冲信号,其中,时钟脉冲信号为具有预设延迟时长且以脉冲信号的形式表征的时钟信号,多个时钟脉冲信号之间没有交互路径且能够实现其承载的逻辑数据有序传输;在移位模式下,芯片测试时钟电路基于移位信号的作用将时钟脉冲信号输出至芯片外部,时钟脉冲信号用于对芯片的逻辑数据的处理功能进行测试。
本申请实施例提供一种电子设备,包括:一个或多个处理器;存储器,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本申请实施例中的任意一种芯片测试方法。
本申请实施例提供了一种可读存储介质,该可读存储介质存储有计算机程序,计算机程序被处理器执行时实现本申请实施例中的任意一种芯片测试方法。
根据本申请实施例的芯片测试方法、寄存器、电子设备和存储介质,通过在扫描模式下,获取外部加载的测试向量,以使在一个测试向量中可以对多个原始时钟信号进行处理,加快对原始时钟信号的处理速度;在测试向量的作用下,分别对多个原始时钟信号进行时长延迟和脉冲处理,获得多个时钟脉冲信号,以使不同的时钟脉冲信号能够具有不同的预设延迟时长且以脉冲信号的形式表征的时钟信号,减少测试向量的数量,提升测试效率,并且,多个时钟脉冲信号之间没有交互路径且能够实现其承载的逻辑数据有序传输;在移位模式下,基于移位信号的作用将时钟脉冲信号输出至芯片外部,以便使用该时钟脉冲信号对芯片的数据处理功能进行测试,提升芯片内的逻辑数据的处理准确性。
关于本申请的以上实施例和其他方面以及其实现方式,在附图说明、具体实施方式和权利要求中提供更多说明。
附图说明
图1示出本申请实施例提供的多个时钟的关系示意图。
图2示出本申请实施例提供的不同的测试向量与时钟之间的关系示意图。
图3示出本申请实施例提供的芯片测试方法的流程示意图。
图4示出本申请实施例提供的对芯片内部的各个模块进行测试的场景示意图。
图5示出本申请实施例提供的对芯片进行整体测试的场景示意图。
图6示出本申请实施例提供的寄存器的组成方框图。
图7示出本申请实施例提供的芯片测试时钟电路的组成方框图。
图8示出本申请实施例提供的芯片测试时钟电路的工作时序图。
图9示出本申请实施例提供的在一个测试向量中的不同阶段的时钟之间的时序切换示意图。
图10示出能够实现根据本发明实施例的芯片测试方法和装置的计算设备的示例性硬件架构的结构图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
芯片测试通常包括:扫描(SCAN)测试、存储器内建自测试(Memory Build-In-SelfTest,MBIST)、边界扫描(Boundary scan))测试和IP测试,根据芯片的电路结构不同,对应的测试方式不同。
其中,SCAN测试可以占到整个芯片的测试时长的70%以上。SCAN测试用于检测芯片内部的逻辑功能是否正确,在可测试性技术(Design For Testability,DFT)中,将一些特殊结构在设计阶段植入电路,以便设计完成后对电路进行测试。例如,将多个寄存器串联成扫描链(scan chain),然后,对扫描链上的多个寄存器进行扫描测试,以确定芯片中的各个寄存器的逻辑功能是否正确。
例如,利用自动测试向量生成(Automatic Test Pattern Generation,ATPG)工具生成扫描的测试向量(pattern);在确定进入移位(Shift)模式时,将pattern加载到寄存器上;在确定进入捕获(Capture)模式时,捕获与pattern相关的信息;在确定再次进入Shift模式时时,将捕获到的与pattern相关的信息输出到芯片外部,以供测试人员进行分析,从而确定芯片内部的各个寄存器之间的逻辑关系是否正确。
在传统的SCAN测试过程中,每条pattern的测试效率与该pattern对应的捕获模式下的时钟并行度有关,当一个pattern中所有时钟都能进行工作时,对应的时钟并行度最高,则该pattern的测试效率最高。在传统的ATPG工具中,认为无交互路径(talk)的至少两个时钟才是同步时钟,才可以使用一个pattern对至少两个时钟进行并行测试。而在复杂的电路中,由于多个时钟之间的连接关系错综复杂,使得不同的时钟之间存在复杂的交互路径,从而使SCAN测试中的pattern数量急剧增加,降低了测试效率。
图1示出本申请实施例提供的多个时钟的关系示意图。如图1所示,第一时钟101、第二时钟102和第三时钟103之间都存在交互路径,任意两个不同的时钟之间不会做时序检查(timing check),若在任意两个时钟之间进行数据传输,易导致传输的数据存在逻辑错误(如,需要先接收第一时钟101对应的数据,再接收第二时钟102对应的数据,才能拼接为正确的数据;但实际是先接收了二时钟102对应的数据,然后才接收到第一时钟101对应的数据,从而导致接收到的数据顺序错误)。
因此,以上三个时钟需要分别使用三个不同的pattern对其进行测试,例如,图2示出本申请实施例提供的不同的测试向量与时钟之间的关系示意图。如图2所示,第一测试向量用于测试第一时钟101对应的第一时钟信号;第二测试向量用于测试第二时钟102对应的第二时钟信号;第三测试向量用于测试第三时钟103对应的第三时钟信号。但上述操作,在实际测试的过程中,增加了pattern的数量,且,无法使用一个pattern来同时测试两个不同的时钟的工作性能,降低了测试效率。
本申请提供一种芯片测试方法、寄存器、电子设备和存储介质,以解决上述问题。
图3示出本申请实施例提供的芯片测试方法的流程示意图。该方法可应用于寄存器。如图3所示,本申请实施例中的芯片测试方法包括但不限于以下步骤。
步骤S301,在扫描模式下,获取外部加载的测试向量。
其中,测试向量可以理解为芯片的真值表,例如,使用ATPG工具向芯片中的寄存器发送一系列的时序,而在芯片的输出管脚中对输出的时序进行比较,从而确定该芯片是否存在逻辑错误。测试向量不仅可以承载测试指令,也可以作为庞大测试数据的载体。具体实现时,还可以采用适应芯片设计的时序波形来表征该测试向量。
不同的测试向量对应的格式不同,但都可以实现对芯片的逻辑功能的测试,以降低测试成本。
步骤S302,在测试向量的作用下,分别对多个原始时钟信号进行时长延迟和脉冲处理,获得多个时钟脉冲信号。
其中,时钟脉冲信号为具有预设延迟时长且以脉冲信号的形式表征的时钟信号,多个时钟脉冲信号之间为没有交互路径且能够实现其承载的逻辑数据有序传输。
步骤S303,在移位模式下,基于移位信号的作用将时钟脉冲信号输出至芯片外部。
其中,时钟脉冲信号用于对芯片的数据处理功能进行测试。
在本实施例中,通过在扫描模式下,获取外部加载的测试向量,以使在一个测试向量中可以对多个原始时钟信号进行处理,加快对原始时钟信号的处理速度;在测试向量的作用下,分别对多个原始时钟信号进行时长延迟和脉冲处理,获得多个时钟脉冲信号,以使不同的时钟脉冲信号能够具有不同的预设延迟时长且以脉冲信号的形式表征的时钟信号,减少测试向量的数量,提升测试效率,并且,多个时钟脉冲信号之间没有交互路径且能够实现其承载的逻辑数据有序传输;在移位模式下,基于移位信号的作用将时钟脉冲信号输出至芯片外部,以便使用该时钟脉冲信号对芯片的数据处理功能进行测试,提升芯片内的逻辑数据的处理准确性。
本申请还提供另一种实施方式,其中,测试向量包括捕获使能信号。步骤S302中的在测试向量的作用下,分别对多个原始时钟信号进行时长延迟和脉冲处理,获得多个时钟脉冲信号,包括:分别对每个原始时钟信号做如下处理:在捕获使能信号的作用下,确定预设延迟时长;在原始时钟信号中添加预设延迟时长,获得待处理时钟信号;基于捕获使能信号的使能信息,将待处理时钟信号转换为时钟脉冲信号。
其中,待处理时钟信号为具有预设延迟时长的时钟信号。
需要说明的是,不同时刻捕获到的原始时钟信号对应的预设延迟时长不同,因此,对应的,不同时刻的待处理时钟信号对应的预设延迟时长也不同。
例如,在时刻1先获得原始时钟信号1,则为该原始时钟信号1确定第一预设延迟时长(如,2毫秒(ms));在时刻1的下一时刻(如,时刻2)又获得原始时钟信号2,则可为该原始时钟信号2确定第二预设延迟时长(如,4ms),以保证原始时钟信号1和原始时钟信号2所承载的逻辑数据可以有序传输。
通过在原始时钟信号中添加预设延迟时长,获得待处理时钟信号,以使不同的原始时钟信号获得不同的预设延迟时长,便于对多个原始时钟信号进行同步处理;基于捕获使能信号的使能信息,将待处理时钟信号转换为时钟脉冲信号,以脉冲信号的形式表征具有不同预设延迟时长的时钟信号,能够更清晰的表征不同的时钟信号在不同时刻的作用时刻,从而更便于对多个时钟信号进行处理。
在一些具体实现中,基于捕获使能信号的使能信息,将待处理时钟信号转换为时钟脉冲信号,包括:基于捕获使能信号的使能时刻确定待处理时钟信号的脉冲时刻;基于捕获使能信号的使能数量确定待处理时钟信号的脉冲数量;依据待处理时钟信号的脉冲时刻和待处理时钟信号的脉冲数量,生成时钟脉冲信号。
其中,每个时钟脉冲信号包括至少一个脉冲循环。
需要说明的是,当确定捕获使能信号进行使能时,其使能时刻即为待处理时钟信号的脉冲时刻,以体现捕获使能信号的作用时刻,并且,捕获使能信号的使能数量能够确定最终获得的待处理时钟信号的脉冲数量,从而更准确的体现捕获使能信号的作用数量,将待处理时钟信号的脉冲时刻和待处理时钟信号的脉冲数量进行综合分析,从而可以生成时钟脉冲信号。
例如,若待处理时钟信号的脉冲时刻分别为时刻1和时刻3,待处理时钟信号的脉冲数量为2,则可确定生成的时钟脉冲信号需要在时刻1上有一个脉冲循环,在时刻3上有一个脉冲循环,以体现捕获使能信号的作用,使时钟脉冲信号更准确。
在一些具体实现中,在原始时钟信号中添加预设延迟时长,获得待处理时钟信号,包括:获取原始时钟信号的起始时刻;将起始时刻与所述预设延迟时长之和作为更新后的起始时刻;以更新后的起始时刻作为待处理时钟信号的起始时刻,以原始时钟信号的携带的信息作为待处理时钟信号对应的信息,获得待处理时钟信号。
其中,多个待处理时钟信号之间为同步的信号。
例如,原始时钟信号的起始时刻为时刻A,与该原始时钟信号对应的预设延迟时长为3ms,则更新后的起始时刻为(时刻A+3ms)对应的时刻,从而以该更新后的起始时刻作为待处理时钟信号的起始时刻,将原始时钟信号进行顺序迁移,从而获得待处理时钟信号。因使用原始时钟信号的携带的信息作为待处理时钟信号对应的信息,因此,待处理时钟信号实际上是经过时钟顺延的原始时钟信号。
通过上述操作,能够使多个原始时钟信号之间可以相互错开,从而使多个待处理时钟信号之间能够进行同步,便于对数据的传输,并在对芯片的时钟进行测试的过程中,能够使用同一个测试向量对多个以进行了同步的时钟信号进行并行处理,减少测试向量的数量,从而提升测试效率。
在一些具体实现中,相邻两个待处理时钟信号之间的延迟时差大于预设时长阈值,预设时长阈值为保证相邻两个待处理时钟信号所承载的逻辑数据可进行有序传输的时长。
若相邻两个待处理时钟信号之间的延迟时差小于或等于预设时长阈值,则会导致两个待处理时钟信号所承载的逻辑数据存在偏差,降低数据传输的可靠性;而通过将相邻两个待处理时钟信号之间的延迟时差设置为大于预设时长阈值,无需再对相邻两个待处理时钟信号进行时序检查,就能够保证相邻两个待处理时钟信号所承载的逻辑数据可进行有序传输,保证数据传输的准确性。
在一些具体实现中,时钟脉冲信号包括多个不同阶段内获得的时钟脉冲信号;相邻两个阶段间的时钟脉冲信号基于暂停时钟进行时钟的切换。
其中,不同阶段用于表征在对芯片进行测试的过程中,需要获取的数据的不同时刻,通过暂停时钟对相邻两个阶段内的时钟脉冲信号进行时钟的切换,有利于顺序获得不同阶段内的测试数据,提升对芯片的测试准确性。
在一些具体实现中,芯片包括至少两个处理模块;在确定对芯片进行内部测试的情况下,分别在两个处理模块内部执行在扫描模式下,获取外部加载的测试向量的步骤。
其中,在对芯片进行内部(intest)测试时,不同的处理模块之间都没有交互路径,因此,只需要针对一个处理模块,将其在扫描模式下的获得的原始时钟信号的并行度提高到最大,即可实现全芯片的扫描工作时钟的并行度最大。
需要说明的是,对芯片进行intest测试中所使用的测试向量的数量,占总测试向量的数量比例较大,因此,通过对intest测试中所使用的测试向量的数量的减少,能够极大的减少芯片的整体测试中所使用的测试向量的数量。
图4示出本申请实施例提供的对芯片内部的各个模块进行测试的场景示意图。如图4所示,当处于芯片的内部测试模式时,可分别对第一模块401和第二模块402进行测试,即分别在上述两个模块中执行步骤S301~步骤S303,从而加快对不同的模块的测试速度。
其中,可采用时分复用的同步控制模式,分别对上述两个模块进行测试,以提升测试效率。例如,可在ATPG工具中,使用“set_clock_restrition_off”命令来对不同的时钟信号进行限制和制约,以使ATPG工具能够在测试向量的产生过程中,允许出现多个捕获(capture)时钟
进一步地,还可以针对每一个capture时钟,增加循环(cycle)的定义,以实现在不同的阶段获得不同脉冲(pulse)数量的捕获时钟。
而针对芯片的整体测试过程中,可以将芯片中的各个模块作为一个整体进行测试,例如,图5示出本申请实施例提供的对芯片进行整体测试的场景示意图。如图5所示,当处于芯片的整体测试模式时,需要将第一模块401和第二模块402作为一个整体进行测试,从而在该芯片的内部,执行步骤S301~步骤S303,以完善对芯片的不同管脚的测试。
通过测试数据表明,在上述内部测试模式和/或整体测试模式中执行步骤S301~步骤S303,相对于常规的测试方式,能够使测试向量的数量减少至少12%,并使ATPG的运行时长减少26%,极大地提高了对芯片的测试速度,提升测试效率。若在多个时钟之间存在交互路径越多,则对应的测试效果越明显。
下面结合附图,详细介绍根据本发明实施例的设备。图6示出本申请实施例提供的寄存器的组成方框图。寄存器600为对芯片进行测试的扫描链中的寄存器。
如图6所示,寄存器600包括但不限于如下模块:多个时钟域610和多个芯片测试时钟电路620,每个芯片测试时钟电路620与一个时钟域610连接。
其中,寄存器600的工作模式包括扫描模式和移位模式;在扫描模式下,寄存器600获取外部加载的测试向量;在测试向量的作用下,芯片测试时钟电路620分别对多个时钟域610输出的原始时钟信号进行捕获,并对多个原始时钟信号进行时长延迟和脉冲处理,获得多个时钟脉冲信号;在移位模式下,芯片测试时钟电路620基于移位信号的作用将时钟脉冲信号输出至芯片外部,时钟脉冲信号用于对芯片的逻辑数据的处理功能进行测试。
例如,图7示出本申请实施例提供的芯片测试时钟电路的组成方框图。如图7所示,芯片测试时钟电路620包括:延迟控制模块621、时钟门控模块622和时钟复用模块623。
其中,延迟控制模块621的输入端用于获取捕获使能信号;时钟门控模块622的第一输入端与延迟控制模块621的输出端连接,时钟门控模块622的第二输入端连接时钟域610,以捕获时钟域610输出的原始时钟信号;时钟复用模块623的第一输入端与时钟门控模块622的输出端连接,时钟复用模块623的第二输入端用于获取移位信号。
延迟控制模块621,用于在捕获使能信号的作用下,确定预设延迟时长。
时钟门控模块622,用于在时钟域610输出的原始时钟信号中添加预设延迟时长,获得待处理时钟信号,待处理时钟信号为具有预设延迟时长的时钟信号;并基于捕获使能信号的使能信息,将待处理时钟信号转换为时钟脉冲信号。
时钟复用模块623,用于获取时钟门控模块622的输出端输出的具有延迟时长的时钟脉冲信号,并在移位信号的作用下,通过时钟复用模块623的输出端将时钟脉冲信号输出至芯片外部。
需要说明的是,芯片测试时钟电路620包括:片上时钟控制器(On-chip ClockControllers,OCC),其中,芯片测试时钟电路620能够控制不同时钟信号的延迟时长,即是一种可控制延迟的OCC,其能够自由地控制capture时钟输出的延迟时长。
例如,在可控制延迟的OCC处于捕获使能信号的控制下时,时钟门控模块622能够基于延迟控制模块621确定的预设延迟时长,在时钟域610输出的原始时钟信号中添加预设延迟时长,并基于捕获使能信号的使能信息,将待处理时钟信号转换为时钟脉冲信号,以使时钟复用模块623可以获得具有不同的预设延迟时长的时钟脉冲信号。
其中,在一个测试向量的作用下,能够使多个时钟脉冲信号之间没有交互路径且可实现多个时钟脉冲信号所承载的逻辑数据有序传输。
在捕获使能信号的作用下,分别对不同的时钟域输出的原始时钟信号在不同阶段依次进行时长延迟,并将获得预设延迟时长的待处理时钟信号转换为时钟脉冲信号,且不同阶段对应的时钟脉冲信号之间的时长延迟差大于预设时长阈值,从而保证任意相邻的两个时钟脉冲信号所承载的逻辑数据为有序传输的数据,换句话说,任意相邻的两个时钟脉冲信号之间可进行同步工作。
例如,设置预设时长阈值为Dmax,任意相邻的两个时钟脉冲信号对应的预设延迟时长分别为Dx和Dy,则|Dx-Dy|>Dmax。其中,x、y均为大于或等于1的整数。
图8示出本申请实施例提供的芯片测试时钟电路的工作时序图。如图8所示,在捕获使能信号的作用下,不同的OCC输出的时钟脉冲信号不同。OCC-1对应第一时钟延迟时长D1,对应获得OCC-1输出时钟;OCC-2对应第二时钟延迟时长D2,对应获得OCC-2输出时钟;……;OCC-N对应第N时钟延迟时长DN,对应获得OCC-N输出时钟。
其中,OCC-N表示第N个OCC输出的时钟脉冲信号。相邻的时钟脉冲信号对应的时钟延迟时长均满足上述预设时长阈值的要求,即|D2-D1|>Dmax、……、|DN-DN-1|>Dmax,N为大于或等于1的整数。
通过上述操作,能够实现不同的OCC输出的时钟脉冲信号所承载的数据是有时序保证的,换句话说,不同的OCC对应的输出时钟是同步的时钟。
在一些具体实现中,时钟门控模块622,包括:依次连接的脉冲时刻确定子模块(图中未示出)、脉冲数量确定子模块(图中未示出)和生成子模块(图中未示出)。
其中,脉冲时刻确定子模块,用于基于捕获使能信号的使能时刻确定待处理时钟信号的脉冲时刻;脉冲数量确定子模块,用于基于捕获使能信号的使能数量确定待处理时钟信号的脉冲数量;生成子模块,用于依据待处理时钟信号的脉冲时刻和待处理时钟信号的脉冲数量,生成时钟脉冲信号。
例如,如图8所示,针对双脉冲信号,OCC输出时钟对应的脉冲数量和脉冲编号为:
OCC-1对应的脉冲循环为:cycle 0和cycle 1;
OCC-2对应的脉冲循环为:cycle 2和cycle 3;
……;
OCC-N对应的脉冲循环为:cycle 2N和cycle 2N+1。
又例如,针对单脉冲信号,OCC输出时钟对应的脉冲数量和脉冲编号为:
OCC-1对应的脉冲循环为:cycle 0;
OCC-2对应的脉冲循环为:cycle 1;
……;
OCC-N对应的脉冲循环为:cycle N。
通过不同的脉冲数量和脉冲编号,能够使不同的OCC能够在同一个捕获使能信号的作用下,依次输出多个时钟脉冲信号,从而能够使多个时钟脉冲信号可以并行进行数据的处理,提高捕获时钟的并行处理度,从而减少测试向量的总数量,提高每一条测试向量的测试效率。
通过时钟门控模块622中依次连接的脉冲时刻确定子模块、脉冲数量确定子模块和生成子模块,能够实现分阶段的脉冲出多个具有不同延迟时长的时钟信号,以使在一个捕获使能信号的作用下,使多个时钟脉冲信号可以并行进行数据的处理。
不同阶段的时钟之间还可以进行时序的切换。例如,图9示出本申请实施例提供的在一个测试向量中的不同阶段的时钟之间的时序切换示意图。如图9所示,在测试向量1的作用下,可以依次获得处于第一阶段中的时钟信号A、处于第二阶段中的时钟信号B和处于第三阶段中的时钟信号C。
在对不同阶段内的时钟信号进行切换时,可以基于暂停时钟进行时钟的切换。例如,先采用set_clock_groups[时钟信号A,时钟信号B,时钟信号C]将三个时钟信号设置为同步时钟;然后,在ATPG工具中构造时钟控制定义(Clock Control Definition,CCD)的控制方式时,针对每一个由OCC控制的原始时钟信号,增加暂停时钟的定义。例如,在CCD中设置多个脉冲循环(如,atpg_cycle 1、atpg_cycle 2、atpg_cycle 3等)。对芯片进行测试时,能够在测试向量1的作用下,若获得一个暂停时钟,则能够使时钟信号A切换至时钟信号B,或,由时钟信号B切换至时钟信号C。实现在同一个测试向量上能够分阶段的脉冲出多个原始时钟信号,以便覆盖更多的错误点位,提升对芯片的测试准确性。
需要说明的是,本实施例中的寄存器600能够实现本申请实施例中任一种芯片测试方法。
根据本申请实施例的设备,通过在扫描模式下,寄存器获取外部加载的测试向量,以使在一个测试向量中可以对多个原始时钟信号进行处理,加快对原始时钟信号的处理速度;在测试向量的作用下,芯片测试时钟电路分别对多个时钟域输出的原始时钟信号进行捕获,并对多个原始时钟信号进行时长延迟和脉冲处理,获得多个时钟脉冲信号,以使不同的时钟脉冲信号能够具有不同的预设延迟时长且以脉冲信号的形式表征的时钟信号,减少测试向量的数量,提升测试效率,并且,多个时钟脉冲信号之间没有交互路径且能够实现其承载的逻辑数据有序传输;在移位模式下,芯片测试时钟电路基于移位信号的作用将时钟脉冲信号输出至芯片外部,以便使用该时钟脉冲信号对芯片的逻辑数据的处理功能进行测试,提升芯片内的逻辑数据的处理准确性。
需要明确的是,本发明并不局限于上文实施例中所描述并在图中示出的特定配置和处理。为了描述的方便和简洁,这里省略了对已知方法的详细描述,并且上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图10示出能够实现根据本发明实施例的芯片测试方法和装置的计算设备的示例性硬件架构的结构图。
如图10所示,计算设备1000包括输入设备1001、输入接口1002、中央处理器1003、存储器1004、输出接口1005、以及输出设备1006。其中,输入接口1002、中央处理器1003、存储器1004、以及输出接口1005通过总线1007相互连接,输入设备1001和输出设备1006分别通过输入接口1002和输出接口1005与总线1007连接,进而与计算设备1000的其他组件连接。
具体地,输入设备1001接收来自外部的输入信息,并通过输入接口1002将输入信息传送到中央处理器1003;中央处理器1003基于存储器1004中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器1004中,然后通过输出接口1005将输出信息传送到输出设备1006;输出设备1006将输出信息输出到计算设备1000的外部供用户使用。
在一个实施例中,图10所示的计算设备可以被实现为一种电子设备,该电子设备可以包括:存储器,被配置为存储程序;处理器,被配置为运行存储器中存储的程序,以执行上述实施例描述的芯片测试方法。
在一个实施例中,图10所示的计算设备可以被实现为一种芯片测试系统,该芯片测试系统可以包括:存储器,被配置为存储程序;处理器,被配置为运行存储器中存储的程序,以执行上述实施例描述的芯片测试方法。
以上所述,仅为本申请的示例性实施例而已,并非用于限定本申请的保护范围。一般来说,本申请的多种实施例可以在硬件或专用电路、软件、逻辑或其任何组合中实现。例如,一些方面可以被实现在硬件中,而其它方面可以被实现在可以被控制器、微处理器或其它计算装置执行的固件或软件中,尽管本申请不限于此。
本申请的实施例可以通过移动装置的处理器执行计算机程序指令来实现,例如在处理器实体中,或者通过硬件,或者通过软件和硬件的组合。计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码。
本申请附图中的任何逻辑流程的框图可以表示程序步骤,或者可以表示相互连接的逻辑电路、模块和功能,或者可以表示程序步骤与逻辑电路、模块和功能的组合。计算机程序可以存储在存储器上。存储器可以具有任何适合于本地技术环境的类型并且可以使用任何适合的数据存储技术实现,例如但不限于只读存储器(ROM)、随机访问存储器(RAM)、光存储器装置和系统(数码多功能光碟DVD或CD光盘)等。计算机可读介质可以包括非瞬时性存储介质。处理器可以是任何适合于本地技术环境的类型,例如但不限于通用计算机、专用计算机、微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、可编程逻辑器件(FGPA)以及基于多核处理器架构的处理器。
通过示范性和非限制性的示例,上文已提供了对本申请的示范实施例的详细描述。但结合附图和权利要求来考虑,对以上实施例的多种修改和调整对本领域技术人员来说是显而易见的,但不偏离本发明的范围。因此,本发明的恰当范围将根据权利要求确定。
Claims (13)
1.一种芯片测试方法,其特征在于,所述方法包括:
在扫描模式下,获取外部加载的测试向量;
在所述测试向量的作用下,分别对多个原始时钟信号进行时长延迟和脉冲处理,获得多个时钟脉冲信号,所述时钟脉冲信号为具有预设延迟时长且以脉冲信号的形式表征的时钟信号,多个所述时钟脉冲信号之间没有交互路径且能够实现其承载的逻辑数据有序传输;
在移位模式下,基于移位信号的作用将所述时钟脉冲信号输出至芯片外部,所述时钟脉冲信号用于对所述芯片的数据处理功能进行测试。
2.根据权利要求1所述的芯片测试方法,其特征在于,所述测试向量包括捕获使能信号;
所述在所述测试向量的作用下,分别对多个原始时钟信号进行时长延迟和脉冲处理,获得多个时钟脉冲信号,包括:
分别对每个所述原始时钟信号做如下处理:
在所述捕获使能信号的作用下,确定所述预设延迟时长;
在所述原始时钟信号中添加所述预设延迟时长,获得待处理时钟信号,所述待处理时钟信号为具有所述预设延迟时长的时钟信号;
基于所述捕获使能信号的使能信息,将所述待处理时钟信号转换为所述时钟脉冲信号。
3.根据权利要求2所述的芯片测试方法,其特征在于,所述基于所述捕获使能信号的使能信息,将所述待处理时钟信号转换为所述时钟脉冲信号,包括:
基于所述捕获使能信号的使能时刻确定所述待处理时钟信号的脉冲时刻;
基于所述捕获使能信号的使能数量确定所述待处理时钟信号的脉冲数量;
依据所述待处理时钟信号的脉冲时刻和所述待处理时钟信号的脉冲数量,生成所述时钟脉冲信号;其中,每个所述时钟脉冲信号包括至少一个脉冲循环。
4.根据权利要求2所述的芯片测试方法,其特征在于,所述在所述原始时钟信号中添加所述预设延迟时长,获得待处理时钟信号,包括:
获取所述原始时钟信号的起始时刻;
将所述起始时刻与所述预设延迟时长之和作为更新后的起始时刻;
以所述更新后的起始时刻作为所述待处理时钟信号的起始时刻,以所述原始时钟信号的携带的信息作为所述待处理时钟信号对应的信息,获得所述待处理时钟信号,其中,多个所述待处理时钟信号之间为同步的信号。
5.根据权利要求4所述的芯片测试方法,其特征在于,不同时刻捕获到的所述原始时钟信号对应的所述预设延迟时长不同。
6.根据权利要求4所述的芯片测试方法,其特征在于,相邻两个所述待处理时钟信号之间的延迟时差大于预设时长阈值,所述预设时长阈值为保证相邻两个所述待处理时钟信号所承载的逻辑数据可进行有序传输的时长。
7.根据权利要求4所述的芯片测试方法,其特征在于,所述时钟脉冲信号包括多个不同阶段内获得的时钟脉冲信号;
相邻两个阶段内的所述时钟脉冲信号基于暂停时钟进行时钟的切换。
8.根据权利要求4所述的芯片测试方法,其特征在于,所述芯片包括至少两个处理模块;
在确定对所述芯片进行内部测试的情况下,分别在两个所述处理模块内部执行所述在扫描模式下,获取外部加载的测试向量的步骤。
9.一种寄存器,其特征在于,所述寄存器为对芯片进行测试的扫描链中的寄存器,所述寄存器包括:多个时钟域和多个芯片测试时钟电路,每个所述芯片测试时钟电路与一个所述时钟域连接;
其中,所述寄存器的工作模式包括扫描模式和移位模式;
在所述扫描模式下,所述寄存器获取外部加载的测试向量;
在所述测试向量的作用下,所述芯片测试时钟电路分别对多个所述时钟域输出的原始时钟信号进行捕获,并对多个所述原始时钟信号进行时长延迟和脉冲处理,获得多个时钟脉冲信号,其中,所述时钟脉冲信号为具有预设延迟时长且以脉冲信号的形式表征的时钟信号,多个所述时钟脉冲信号之间没有交互路径且能够实现其承载的逻辑数据有序传输;
在所述移位模式下,所述芯片测试时钟电路基于移位信号的作用将所述时钟脉冲信号输出至芯片外部,所述时钟脉冲信号用于对所述芯片的逻辑数据的处理功能进行测试。
10.根据权利要求9所述的寄存器,其特征在于,所述芯片测试时钟电路包括:延迟控制模块、时钟门控模块和时钟复用模块;
所述延迟控制模块的输入端用于获取捕获使能信号;所述时钟门控模块的第一输入端与所述延迟控制模块的输出端连接,所述时钟门控模块的第二输入端连接时钟域,以捕获所述时钟域输出的原始时钟信号;所述时钟复用模块的第一输入端与所述时钟门控模块的输出端连接,所述时钟复用模块的第二输入端用于获取所述移位信号;
所述延迟控制模块,用于在所述捕获使能信号的作用下,确定预设延迟时长;
所述时钟门控模块,用于在所述原始时钟信号中添加所述预设延迟时长,获得待处理时钟信号,所述待处理时钟信号为具有预设延迟时长的时钟信号;并基于所述捕获使能信号的使能信息,将所述待处理时钟信号转换为时钟脉冲信号;
所述时钟复用模块,用于获取所述时钟门控模块的输出端输出的具有所述延迟时长的时钟脉冲信号,并在所述移位信号的作用下,通过所述时钟复用模块的输出端将所述时钟脉冲信号输出至芯片外部。
11.根据权利要求10所述的寄存器,其特征在于,所述时钟门控模块,包括:依次连接的脉冲时刻确定子模块、脉冲数量确定子模块和生成子模块;
所述脉冲时刻确定子模块,用于基于所述捕获使能信号的使能时刻确定所述待处理时钟信号的脉冲时刻;
所述脉冲数量确定子模块,用于基于所述捕获使能信号的使能数量确定所述待处理时钟信号的脉冲数量;
所述生成子模块,用于依据所述待处理时钟信号的脉冲时刻和所述待处理时钟信号的脉冲数量,生成所述时钟脉冲信号。
12.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1至8中任一项所述的芯片测试方法。
13.一种可读存储介质,其特征在于,所述可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的芯片测试方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211220804.3A CN117890753A (zh) | 2022-10-08 | 2022-10-08 | 芯片测试方法、寄存器、电子设备和存储介质 |
PCT/CN2023/083190 WO2024074017A1 (zh) | 2022-10-08 | 2023-03-22 | 芯片测试方法、寄存器、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211220804.3A CN117890753A (zh) | 2022-10-08 | 2022-10-08 | 芯片测试方法、寄存器、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117890753A true CN117890753A (zh) | 2024-04-16 |
Family
ID=90607378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211220804.3A Pending CN117890753A (zh) | 2022-10-08 | 2022-10-08 | 芯片测试方法、寄存器、电子设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117890753A (zh) |
WO (1) | WO2024074017A1 (zh) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5991888A (en) * | 1997-09-26 | 1999-11-23 | Advanced Micro Devices, Inc. | Test clock modes |
JP2000097996A (ja) * | 1998-09-28 | 2000-04-07 | Ando Electric Co Ltd | 半導体試験装置 |
US6877123B2 (en) * | 2001-12-19 | 2005-04-05 | Freescale Semiconductors, Inc. | Scan clock circuit and method therefor |
TW200801550A (en) * | 2006-01-06 | 2008-01-01 | Koninkl Philips Electronics Nv | IC testing methods and apparatus |
US7793179B2 (en) * | 2006-06-27 | 2010-09-07 | Silicon Image, Inc. | Test clock control structures to generate configurable test clocks for scan-based testing of electronic circuits using programmable test clock controllers |
KR100907254B1 (ko) * | 2007-08-30 | 2009-07-10 | 한국전자통신연구원 | Ieee 1500 래퍼를 갖는 시스템 온 칩 및 그것의 내부지연 테스트 방법 |
US8407544B2 (en) * | 2010-04-16 | 2013-03-26 | Advanced Micro Devices, Inc. | Method and apparatus for AC scan testing with distributed capture and shift logic |
US11237587B1 (en) * | 2020-12-14 | 2022-02-01 | Qualcomm Incorporated | On-chip clock controller (OCC) manager based turbo capture clocking |
CN114690018A (zh) * | 2020-12-28 | 2022-07-01 | 上海寒武纪信息科技有限公司 | 一种集成电路芯片的测试方法、装置和存储介质 |
-
2022
- 2022-10-08 CN CN202211220804.3A patent/CN117890753A/zh active Pending
-
2023
- 2023-03-22 WO PCT/CN2023/083190 patent/WO2024074017A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024074017A1 (zh) | 2024-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6510534B1 (en) | Method and apparatus for testing high performance circuits | |
US4720811A (en) | Microprocessor capable of stopping its operation at any cycle time | |
US6055658A (en) | Apparatus and method for testing high speed components using low speed test apparatus | |
EP1927004B1 (en) | Scan testing methods | |
KR20010033037A (ko) | 속도 관련 결함을 테스트하기 위해 멀티플렉서 스캔플립플롭을 이용하는 방법 및 장치 | |
CN114076883B (zh) | 老化电路、芯片老化测试方法及芯片 | |
CN114121132B (zh) | 测试电路、测试装置及其测试方法 | |
US11120187B1 (en) | Semiconductor integrated circuit, circuit designing apparatus, and circuit designing method | |
CN114280454B (zh) | 芯片测试方法、装置、芯片测试机及存储介质 | |
US4477902A (en) | Testing method for assuring AC performance of high performance random logic designs using low speed tester | |
CN114113802B (zh) | 测试电路、测试装置及其测试方法 | |
US7464311B2 (en) | Apparatus and method for device selective scans in data streaming test environment for a processing unit having multiple cores | |
US20140115409A1 (en) | Self-test design for serializer / deserializer testing | |
CN117890753A (zh) | 芯片测试方法、寄存器、电子设备和存储介质 | |
GB2313686A (en) | Shift register | |
CN111443275B (zh) | 电路测试系统及电路测试方法 | |
US20060248422A1 (en) | Sequential Scan Based Techniques to Test Interface Between Modules Designed to Operate at Different Frequencies | |
US7380184B2 (en) | Sequential scan technique providing enhanced fault coverage in an integrated circuit | |
US8521463B2 (en) | System for performing electrical characterization of asynchronous integrated circuit interfaces | |
US10896275B2 (en) | Verification apparatus and method for verifying operation of integrated circuit | |
US11768239B1 (en) | Method and apparatus for timing-annotated scan-chain testing using parallel testbench | |
CN102830339A (zh) | 半导体设备 | |
KR102278648B1 (ko) | 피시험 디바이스를 테스트하기 위한 방법 및 장치 | |
CN112924854B (zh) | 任意波形格式生成方法、装置、测试设备和存储介质 | |
JP2864880B2 (ja) | 半導体メモリic試験装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
CB02 | Change of applicant information |
Country or region after: China Address after: 518055, 2nd Floor, ZTE Industrial Park, No. 2 Chuangyan Road, Xili Community, Xili Street, Nanshan District, Shenzhen City, Guangdong Province, China Applicant after: SANECHIPS TECHNOLOGY Co.,Ltd. Address before: 518055 Zhongxing Industrial Park, Liuxian Avenue, Xili street, Nanshan District, Shenzhen City, Guangdong Province Applicant before: SANECHIPS TECHNOLOGY Co.,Ltd. Country or region before: China |
|
CB02 | Change of applicant information |