数字芯片的测试访问架构与测试访问方法与流程

文档序号:29522709发布日期:2022-04-06 23:50阅读:202来源:国知局
数字芯片的测试访问架构与测试访问方法与流程

1.本发明涉及集成电路测试技术领域,具体地涉及一种大规模数字芯片的测试访问架构与测试访问方法。


背景技术:

2.随着集成电路技术的快速发展,越来越多的纯数字芯片应用到了各个领域。在现阶段的纯数字芯片中,soc(system on chip,片上系统)芯片的设计规模较大,往往包含多个独立的内核,所以在对soc芯片进行测试时,需要对soc芯片内的内核进行模块化的测试。目前对于soc芯片进行模块化测试的测试结构主要包括三种:多路选择结构、菊花链结构和分布式结构。
3.对于上述三种测试结构,尤其在对大规模soc芯片进行测试时,存在以下缺点:多路选择结构在将soc芯片内的所有模块串行测试时,易导致测试时间过长;分布式结构在将soc芯片内的所有模块并行测试时,易导致测试功耗过大,烧毁芯片;菊花链结构对于大规模soc芯片不易于设计与实现,增加布线开销。


技术实现要素:

4.本发明实施例的目的是提供一种数字芯片的测试访问架构与测试访问方法,针对大规模数字芯片,采用分布式测试访问机制与多路选择测试访问机制相结合的方式,对所述数字芯片内的所有模块进行分组测试,同一个测试组中的多个测试模块之间采用分布式测试访问机制进行测试,降低了测试时间,同时降低了布局布线开销,另外,各个测试组之间采用多路选择测试访问机制进行测试,降低了测试功耗的同时,降低了扫描端口数量的要求。
5.为了实现上述目的,本发明实施例提供一种数字芯片的测试访问架构,包括:由数字芯片内的所有模块划分的n个测试组;其中,所述n个测试组的每一个测试组中包括多个测试模块,所述每一个测试组中的所述多个测试模块之间被配置为采用分布式测试访问机制进行测试;所述n个测试组之间被配置为采用多路选择测试访问机制进行测试。
6.进一步地,每一个测试组中的测试模块之间的测试时间差值在设定时间范围内。
7.进一步地,所述n个测试组之间的触发器数量总和的差值在设定范围内。
8.进一步地,每一个测试组中的触发器数量总和范围在200万~250万。
9.进一步地,每一个测试组中至少两个测试模块之间存在连接关系。
10.进一步地,还包括:用于传输测试激励数据的串行数据输入端口与串行数据输出端口,其中,所述串行数据输入端口和所述串行数据输出端口分别与所述n个测试组中的每一个测试组连接。
11.进一步地,每个测试组中还包括与每个测试模块相连接的并行数据输入端口和并行数据输出端口。
12.进一步地,还包括:测试控制器,所述串行数据输入端口和所述串行数据输出端口
分别与所述测试控制器连接,用于控制所述n个测试组的测试。
13.进一步地,所述测试控制器还被配置为根据预设时钟逻辑,以多路选择测试访问机制测试所述n个测试组,且对于未进行测试的测试组,关闭其对应的扫描时钟。
14.进一步地,所述测试控制器还被配置为根据预设测试模式,以分布式测试访问机制测试每一个测试组中的测试模块。
15.进一步地,其特征在于,所述数字芯片为soc芯片。
16.相应的,本发明实施例还提供一种数字芯片的测试访问方法,所述测试访问方法应用于如上所述的数字芯片的测试访问架构,所述方法包括:控制n个测试组执行多路选择测试访问机制的测试;以及当执行所述n个测试组中的其中一个测试组的测试时,控制该测试组中的多个测试模块执行分布式测试访问机制的测试。
17.进一步地,所述控制n个测试组执行多路选择测试访问机制的测试包括:根据预设时钟逻辑,以多路选择测试访问机制测试所述n个测试组,且对于未进行测试的测试组,关闭其对应的扫描时钟。
18.进一步地,所述控制该测试组中的多个测试模块执行分布式测试访问机制的测试包括:根据预设测试模式,以分布式测试访问机制测试该测试组中的多个测试模块。
19.进一步地,所述预设测试模式包括:芯片工作模式、非实速测试模式、实速测试的扫描移位模式或实速测试的捕获模式中的至少一者。
20.通过上述技术方案,针对大规模数字芯片,采用分布式测试访问机制与多路选择测试访问机制相结合的方式,对所述数字芯片内的所有模块进行分组测试,同一个测试组中的多个测试模块之间采用分布式测试访问机制进行测试,降低了测试时间,同时降低了布局布线开销,另外,各个测试组之间采用多路选择测试访问机制进行测试,降低了测试功耗的同时,降低了扫描端口数量的要求。
21.本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
22.附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
23.图1是现有技术中对于数字芯片中的测试模块采用的多路选择测试访问机制的架构示意图;
24.图2是现有技术中对于数字芯片中的测试模块采用菊花链结构的架构示意图;
25.图3是现有技术中对于数字芯片中的测试模块采用分布式测试访问机制的架构示意图;
26.图4是本发明实施例提供的一种数字芯片的测试访问架构的示意图;
27.图5是本发明实施例提供的一种数字芯片示例的测试模块互联关系以及测试组划分示意图;
28.图6是本发明实施例提供的图5中测试组划分后的架构示意图;
29.图7是本发明实施例提供的一种数字芯片的测试访问方法的流程示意图。
具体实施方式
30.以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
31.在现有技术中,基于多路选择测试访问机制属于一种分时复用的结构,所有待测模块进行串行测试。以图1所示为例,包括三个待测模块的测试访问结构。为了最小化测试成本,设计者应该尽可能多地使用测试带宽,以达到减少扫描链长度的目的。另外一种常见的测试访问机制为菊花链结构,如图2所示,在该结构中每个待测模块的扫描链与另外一个待测模块的扫描链首位相连形成一个较长的扫描链。还有一种常见的测试访问机制为分布式测试访问机制,在该机制中每个待测模块同时获得各自的扫描链,所以芯片顶层扫描链的数量至少为待测模块的数量,如图3所示,为了有效地利用扫描带宽,在每个待测模块内部尽量使用相同长度的扫描链,这使得每个待测模块之间的扫描链长度一样。
32.其中,对于多路选择测试访问机制,由于大规模soc芯片内的模块较多,进行串行测试会导致测试时间过长。对于分布式测试访问机制,对大规模soc芯片内的所有模块进行并行测试,会导致测试功耗过大,烧毁芯片。对于菊花链测试访问机制,在对大规模soc芯片内的所有模块进行测试时,不易于设计与实现,增加布线开销。因此,综合上述特点,在本技术中将多路选择测试访问机制与分布式测试访问机制相结合,实现了测试功耗与测试时间的平衡。另外,将一个soc芯片中的所有模块进行分组,测试组之间采用多路选择测试访问机制进行测试,降低了扫描端口数量的同时,降低了测试功耗,而测试组中的测试模块之间采用分布式测试访问机制进行测试,降低了测试时间,同时降低布局布线。相较于测试组之间采用分布式测试访问机制进行测试,测试组中的测试模块之间采用多路选择测试访问机制进行测试的方式,本技术后端布线更加容易,不易出现后端扰线的情况。
33.图4是本发明实施例提供的一种数字芯片的测试访问架构的示意图。如图4所示,包括由数字芯片内的所有模块划分的n个测试组,包括测试组1、测试组2、
……
测试组n;其中,所述n个测试组的每一个测试组中包括多个测试模块,所述每一个测试组中的所述多个测试模块之间被配置为采用分布式测试访问机制进行测试;所述n个测试组之间被配置为采用多路选择测试访问机制进行测试。
34.其中,由于每个测试组内的测试模块并行测试,所以每个测试组的测试时间取决于其中测试时间最长的测试模块,而每个测试模块内部扫描链的长度都相同,所以测试时间也就取决于测试向量数量。测试组与测试组之间串行测试,所以整个数字芯片的测试时间是所有测试组的测试时间之和。
35.另外,在对数字芯片进行划分的时候,需要考虑以下三个因素:每个测试模块的测试时间、测试功耗(例如,每个模块的触发器数量)以及测试模块之间的互联关系。
36.其中,每个测试模块的测试时间以及测试功耗取决于每个测试模块的规模及触发器数量,由于每个测试组内的测试模块进行并行测试,那么每个测试组的测试时间就取决于该测试组中测试时间最长的测试模块所需的测试时间,所以在进行测试组划分的时候,应将测试时间近似相等的测试模块划分到一个测试组中。在本技术中,每个测试组中的测试模块之间的测试时间差值可以在设定时间范围内,例如,所述设定时间范围为200万个时钟周期。所以,测试时间相差较大的测试模块一般不会被划分到一个测试组。
37.另外,每个测试模块的测试功耗还可以体现在每个测试模块的触发器数量,因此,
在测试组划分之后,可以保证n个测试组之间的触发器数量总和的差值在设定范围内,例如,所述设定范围为50万个触发器。另外,考虑到芯片等级的测试时间和测试功耗问题,每个测试组内的测试模块数量不宜过多也不宜过少,每一个测试组中的触发器数量总和范围在200万~250万。
38.另外,考虑到后端的布线开销以及测试覆盖率的问题,应根据数字芯片的布局,将通信较多、位置距离比较近的测试模块划分在一个测试组中。其中,每一个测试组中至少两个测试模块之间存在连接关系,该连接关系可以为物理连接、通信连接。另外,间隔不同测试组的测试模块不能划分为一个测试组,例如,依次相邻的测试模块1、2、3,当测试模块1属于测试组a,测试模块2属于测试组b时,那么测试模块3一定不能被划分到测试组a中,以避免扰线情况出现。
39.因此,应将规模相近、位置距离比较近、通信较多的测试模块划分为一个测试组,以达到平衡测试时间,减少布线开销的目的。在具体应用时,可将上述三个因素进行综合考虑,例如,可首先参考测试时间、位置关系以及触发器数量,将规模比较大的核心的测试模块先划分,之后将剩余的测试模块划分为一组。以表1所示的soc芯片包括的测试模块的触发器数量以及图5所示的各个测试模块的互联关系为例,由于pe(processing element,处理单元)属于该数字芯片的核心,而且每个pe包含触发器数量较多,因此,首先将4个相邻的pe划分为一个测试组,得到4个测试组。之后,考虑到剩下的测试模块的触发器数量,将spm(sequential processing machine,顺序处理机)、dma(direct memory access,直接存储器存取)、micc(micro controller,微控制器)、cbuf(control buffer,控制数据集合存储缓冲区)、dbg(debugall,调试控制逻辑)划分为一个测试组,从而得到如图5所示的测试组的划分示意图。其中,最终得到的5个测试组中的触发器数量总和依次为2069240、2069240、2069240、2069240、822016。在上述示例中,由于将核心的测试模块pe划分为4个测试组,即使spm、dma、micc、cbuf、dbg之间的规模差距较大,但是考虑到剩余的测试模块的触发器数量总和较小,仍可将上述测试模块划分为一个测试组,从而得到如图6所示的测试组1pex4,测试组2pex4,测试组3pex4,测试组4pex4,测试组5(spm、dma、micc、cbuf、dbg)。测试组中的测试模块并行测试,测试组之间串行测试。
40.表1
41.测试模块名称触发器数量dma38008pe517310micc3720cbuf29142debugall536spm_four375305
42.另外,如图4所示,所述架构中还包括用于传输测试激励数据的串行数据输入端口11与串行数据输出端口12,其中,所述串行数据输入端口和所述串行数据输出端口分别与所述n个测试组中的每一个测试组连接。
43.进一步地,所述架构中还包括测试控制器13,所述串行数据输入端口和所述串行数据输出端口分别与所述测试控制器连接,用于控制所述n个测试组的测试,以便对测试组
进行统一调度,兼顾测试时间与测试功耗。其中,所述测试控制器还被配置为根据预设时钟逻辑,以多路选择测试访问机制测试所述n个测试组,且对于未进行测试的测试组,关闭其对应的扫描时钟。其中,由于测试组之间采用多路选择测试访问机制,因此在每个当前时刻有且仅有一个测试组处于被测试状态,为了有效地降低测试功耗,可根据预设时钟逻辑,对n个测试组依次进行测试,对于没有被选择测试的测试组,则关闭其对应的扫描时钟,防止无用的触发器翻转。
44.以上述表1给出的示例为例,如图6所示,测试控制器通过串行数据输入端口和所述串行数据输出端口,控制5个测试组,即通过多路选择测试访问机制对不同测试组的测试输入和测试输出进行复用,通过5组扫描时钟scan_clk0~4,对测试组进行选中测试。
45.另外,每个测试组中还包括与每个测试模块相连接的并行数据输入端口和并行数据输出端口(图中未示)。由于测试组中的测试模块是采用分布式测试访问机制进行测试,因此,当测试控制器根据预设时钟逻辑,以多路选择测试访问机制测试所述n个测试组中的一个测试组时,会根据预设测试模式,以分布式测试访问机制测试该测试组中的所有测试模块。其中,所述预设测试模式包括:芯片工作模式、非实速测试模式、实速测试的扫描移位模式或实速测试的捕获模式中的至少一者。
46.例如,在对数字芯片进行时延测试时,需产生数字芯片实际工作频率的测试时钟,这时需要ate(automatic test equipment,自动测试机)提供快速的测试时钟。但是随着数字芯片工作频率的增加,高频率的ate意味着更高的测试成本。同时,有些数字芯片上的管脚速度限制了从数字芯片外传入到数字芯片内的最高频率,因此可参考现有技术在各个测试模块中加入时钟控制结构。
47.其中,各个测试模块内的时钟控制结构由对应的test_mode,at_speed,scan_enable,clk_enable的控制信号对时钟进行控制和切换。其中,test_mode是测试模式使能信号,at_speed是全速时钟信号,scan_enable是扫描使能信号,clk_enable是时钟使能信号。(1)当test_mode信号无效时,数字芯片处于芯片工作模式,occ(on chip clocking,片上时钟)控制器选择锁相环产生的快速时钟作为逻辑电路的工作时钟;(2)当test_mode信号有效,at_speed无效时,数字芯片处在非实速测试模式,时钟控制结构选择ate提供的时钟作为逻辑电路的测试时钟;(3)当test_mode信号有效,at_speed信号有效,scan_enable信号有效时,数字芯片处在实速测试的扫描移位模式,时钟控制结构选择ate提供的时钟作为逻辑电路的测试时钟。(4)当test_mode信号有效,at_speed信号有效,scan_enable信号无效时,数字芯片处在实速测试的捕获模式,时钟控制结构选择锁相环产生的快速时钟作为逻辑电路的测试时钟。clk_enable信号用于对实速测试的捕获时钟进行门控制,用于产生关闭时钟的模式,需要额外一组时钟链对其进行控制。
48.通过本发明实施例的数字芯片的测试访问架构,将多路选择测试访问机制与分布式测试访问机制相结合,实现了测试时间与测试功耗的平衡,降低了布线开销。另外,在对数字芯片的测试模块划分为测试组时,综合考虑测试模块的测试时间、测试功耗以及互联关系,合理对测试模块进行测试组划分。
49.相应的,图7是本发明实施例提供的一种数字芯片的测试访问方法的流程示意图。如图7所示,所述方法应用于如上所述的数字芯片的测试访问架构,所述方法包括如下步骤:
50.步骤701,控制n个测试组执行多路选择测试访问机制的测试;以及
51.步骤702,当执行所述n个测试组中的其中一个测试组的测试时,控制该测试组中的多个测试模块执行分布式测试访问机制的测试。
52.其中,可根据预设时钟逻辑,以多路选择测试访问机制测试所述n个测试组,且对于未进行测试的测试组,关闭其对应的扫描时钟。通过设置n个扫描时钟,通过预设时钟逻辑,选择其中一个测试组进行测试时,为了降低测试功耗,关闭其他未进行测试的测试组的扫描时钟。例如,当soc芯片中的测试模块划分为5个测试组时,则可设置5个扫描时钟,根据预设时钟逻辑,选择对应的一个测试组进行测试,从而实现测试组的统一调度,兼顾测试时间与测试功耗。
53.另外,当执行所述n个测试组中的其中一个测试组的测试时,可根据预设测试模式,以分布式测试访问机制测试该测试组中的多个测试模块。其中,所述预设测试模式包括:芯片工作模式、非实速测试模式、实速测试的扫描移位模式或实速测试的捕获模式中的至少一者。其中,可将上述四种预设测试模式按照顺序,并行测试所述测试组中的所有测试模块。
54.通过上述测试方法,将多路选择测试访问机制与分布式测试访问机制相结合,平衡了测试时间与测试功耗。
55.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
56.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
57.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
58.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
59.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
60.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。存储器是计算机可读介
质的示例。
61.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
62.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
63.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1