一种芯片低功耗测试电路和方法与流程

文档序号:14712822发布日期:2018-06-16 00:45阅读:262来源:国知局
一种芯片低功耗测试电路和方法与流程

本发明涉及芯片测试技术,尤其涉及一种芯片低功耗测试电路和方法。



背景技术:

随着超大规模芯片设计发展到深亚微米时代,功耗成为高性能芯片最主要的设计目标,所有的设计必须围绕特定的低功耗目标完成。而在测试(test)状态下,在目前普遍采用的基于扫描链(scan chain)的设计中,其功耗一般比普通工作状态高出数倍。这样的高功耗远远超过芯片的设计目标,给设计和测试过程带来相当大的困难。因此,高性能的超大规模芯片必须考虑低功耗测试(low power test)。由于低功耗的需要,深亚微米阶段的芯片必须有基于时钟门控(clock gate,简称CG)的设计,设计时会加入大量时钟门控以控制功耗。但是现有的基于低功耗测试的芯片设计还存在着时钟门控数量多,控制难度大,与基于扫描链的测试架构兼容性差,测试功耗可控性差的问题。



技术实现要素:

为了克服现有技术的不足,本发明的目的在于提供一种芯片低功耗测试电路和方法,其能解决现有的基于低功耗测试的芯片设计存在的时钟门控数量多,控制难度大,与基于扫描链的测试架构兼容性差,测试功耗可控性差的问题。

本发明的目的之一采用以下技术方案实现:

一种芯片低功耗测试电路,包括扫描链和多个测试控制模块,所述测试控制模块包括至少一个第一时钟门控单元,所述第一时钟门控单元包括扫描端、逻辑驱动端和时钟输出端,所述时钟输出端用于输出逻辑时钟信号;所述扫描端用于从所述扫描链获取扫描控制信号,所述逻辑驱动端分别连接于一控制与门,所述控制与门包括逻辑输入端、控制输入端和输出端;

所述逻辑输入端用于获取测试向量的逻辑信号,所述控制输入端用于获取功耗控制信号,所述输出端连接于所述逻辑驱动端;

所述控制与门用于将获取的功耗控制信号以及逻辑信号运算后通过所述输出端输出至所述第一时钟门控单元,所述第一时钟门控单元用于根据所述控制与门的输出切换至工作状态或关断状态。

进一步地,至少有一个测试控制模块包括多个第一时钟门控单元,且同一测试控制模块中的所有第一时钟门控单元相应的控制输入端相连接,用于获取同一路功耗控制信号。

进一步地,所述测试控制模块还包括第二时钟门控单元,所述第二时钟门控单元均包括时钟输入端;

至少有一个第一时钟门控单元的时钟输出端上连接有多个第二时钟门控单元,所述第二时钟门控单元用于通过所述时钟输入端从所述第一时钟门控单元获取逻辑时钟信号。

进一步地,所述芯片低功耗测试电路还包括解码模块,所述解码模块连接于所述控制与门的控制输入端和所述扫描链;

所述解码模块用于从所述扫描链获取功耗指令,并根据功耗指令输出多路功耗控制信号至相应的控制输入端。

进一步地,所述解码模块包括解码器和边界控制单元,所述解码器用于从所述扫描链获取功耗指令,并根据功耗指令输出多路解码控制信号,所述边界控制单元用于根据边界控制信息将多路解码控制信号处理为多路功耗控制信号。

进一步地,所述解码模块输出的多路功耗控制信号中至少有两路为1。

本发明的目的之二采用以下技术方案实现:

一种芯片低功耗测试方法,芯片包括多个第一时钟门控单元,所述芯片低功耗测试方法包括以下步骤:

将所有的第一时钟门控单元划分为多个测试控制模块中,第一时钟门控单元包括逻辑驱动端;

将所述第一时钟门控单元的逻辑驱动端连接至控制与门的输出端;

在扫描链中设置功耗寄存器,并将功耗寄存器连接于控制与门的控制输入端;

发送功耗寄存向量至功耗寄存器;

根据所述功耗寄存向量生成多路功耗控制信号,并将各功耗控制信号传输至一控制与门的控制输入端;

对芯片进行功耗分析。

进一步地,所述测试控制模块中包括一个或多个第一时钟门控单元,同一测试控制模块中的第一时钟门控单元连接于同一控制与门。

进一步地,所述芯片低功耗测试方法还包括以下步骤:

在功耗寄存器与各控制与门的控制输入端之间设置解码模块;

所述根据所述功耗寄存向量生成多路功耗控制信号,并将各功耗控制信号传输至一控制与门的控制输入端,具体为:

解码模块根据功耗寄存向量生成多路功耗控制信号,并将各功耗控制信号传输至相应控制与门的控制输入端。

进一步地,所述解码模块包括解码器和边界控制单元,所述解码器用于从功耗寄存器获取功耗寄存向量,并根据功耗寄存向量输出多路解码控制信号,所述边界控制单元用于根据边界控制信息将多路解码控制信号处理为多路功耗控制信号。

相比现有技术,本发明的有益效果在于:通过将第一时钟门控单元的逻辑驱动端连接于一控制与门,可以通过功耗控制信号控制第一时钟门控单元工作或关断,从而增强了芯片低功耗测试过程中时钟门控单元的可控性,易化了控制难度,与基于扫描链的测试架构兼容性更好。

附图说明

图1为时钟门控基本单元的结构示意图;

图2为本发明实施例的一种芯片低功耗测试电路的结构示意图;

图3为本发明实施例的另一种芯片低功耗测试电路的结构示意图;

图4为本发明实施例的另一种芯片低功耗测试电路的结构示意图;

图5为本发明实施例的另一种芯片低功耗测试电路的结构示意图。

具体实施方式

下面,结合附图以及具体实施方式,对本发明做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。

如图1所示为一个时钟门控(CG)基本单元的结构,其中CK是时钟输入端;ECK是时钟输出端,用于输出逻辑时钟信号,以驱动其后连接的一组寄存器等时序逻辑(logic);TE是扫描端,由扫描链控制,使得在测试生效时时钟门控关断。因此这个时钟门控CG所连接的后续元件在测试时的功耗就取决于逻辑驱动端E的值。当E=0时,时钟门控关断,这个时钟门控CG所连接的后续元件产生的功耗低;当E=1时,时钟门控打开,这个时钟门控CG所连接的后续元件产生功耗高。

如图2和图3所示,芯片低功耗测试电路包括扫描链和多个测试控制模块,即CG组。如图4和图5所示,测试控制模块均包括两个第一时钟门控单元,在另一实施例中,测试控制模块可以包括一个第一时钟门控单元,也可以包括大于两个第一时钟门控单元。

第一时钟门控单元包括扫描端TE、逻辑驱动端E和时钟输出端ECK,时钟输出端ECK用于输出逻辑时钟信号;扫描端TE用于从扫描链获取扫描控制信号,逻辑驱动端E分别连接于一控制与门。

控制与门包括逻辑输入端、控制输入端和输出端,其中逻辑输入端用于获取测试向量的逻辑信号,可以连接于扫描链;如图4和图5所示,可以连接于逻辑电路logic。控制输入端用于获取功耗控制信号LPE,输出端连接于第一时钟门控单元的逻辑驱动端E。

控制与门用于将获取的功耗控制信号LPE以及逻辑信号运算后通过输出端输出至第一时钟门控单元,第一时钟门控单元用于根据控制与门的输出切换至工作状态或关断状态。

本发明实施例提供的芯片低功耗测试电路,通过将第一时钟门控单元的逻辑驱动端连接于一控制与门,可以通过功耗控制信号控制第一时钟门控单元工作或关断,从而增强了芯片低功耗测试过程中时钟门控单元的可控性,易化了控制难度,与基于扫描链的测试架构兼容性更好。

作为优选的实施方式,至少有一个测试控制模块包括多个第一时钟门控单元。如图4和图5所示,同一测试控制模块中的各第一时钟门控单元相应的控制与门的控制输入端相连接,用于获取同一路功耗控制信号LPE。因此,同一路功耗控制信号LPE就可以控制整组第一时钟门控单元,即同一测试控制模块中的第一时钟门控单元,可以做到同时关断,可以简化控制。

每一个时钟域(clock domain)可包含多个测试控制模块。每个测试控制模块包含的第一时钟门控单元的数量多少可以由功耗控制的精细度要求决定。例如要求每个时钟域可关掉50%功耗,则至少需要将第一时钟门控单元划分至两个测试控制模块。

作为优选的实施方式,如图5所示,测试控制模块还包括第二时钟门控单元,即CG组右侧的时钟门控单元CG,所述第二时钟门控单元均包括时钟输入端CK。至少有一个第一时钟门控单元的时钟输出端上连接有多个第二时钟门控单元,第二时钟门控单元用于通过时钟输入端从第一时钟门控单元获取逻辑时钟信号。

因此,实现了将时钟门控单元CG分层设置。根据功耗控制的需要,只需控制较高层级的时钟门控单元CG,如第一时钟门控单元,由于高层级的时钟门控单元CG关断则下层的时钟门控单元CG也失去了时钟信号,因此下层的时钟门控单元CG,如第二时钟门控单元就无需直接控制,可以进一步简化控制。

作为本发明实施例的进一步改进,如图2和图3所示,芯片低功耗测试电路还包括解码模块。解码模块连接于控制与门的控制输入端和扫描链;解码模块用于从扫描链获取功耗指令,并根据功耗指令输出多路功耗控制信号LPE至相应的控制输入端。

作为优选的实施方式,解码模块可以为N-hot解码器。解码器输入为M个信号,由扫描链中的M个扫描寄存器控制,输出为K个LPE信号。N-hot解码器输出的K路功耗控制信号LPE中至少有N路为1,有当N≥2时,解码模块输出的多路功耗控制信号中至少有两路为1,可以用来进行跨时钟域路径测试;当不需要进行跨时钟域路径测试时,优选的可以使用1-hot解码器。

当解码模块的扫描寄存器的个数M增加时,可在功耗限制下提供更多组测试控制模块的控制组合。

如图2所示,解码模块为2-hot解码器,K=4,N=2,M=3。3个扫描寄存器构成输入,4路功耗控制信号LPE构成输出;当输入为000、001、010、011、100、101、110、111时,输出为0011、0110、1100、1001、1010、0101、0101、0101。当输入为110和111时为多余输入,可重复最后一个解码0101以满足2-hot解码器的要求。在满足功耗限制条件下,也可使用这些多余输入使得多余两路功耗控制信号LPE为1。

如图3所示,芯片低功耗测试电路包括16个测试控制模块,即CG group 4,分别具有一个用于获取功耗控制信号LPE的控制输入端。

作为另一优选的实施方式,解码模块包括3个解码器。3个解码器分别为M=2,K=4的解码器、M=3,K=8的解码器、M=4,K=16的解码器;即2-to-4解码器、3-to-8解码器、4-to-16解码器。

各解码器用于从扫描链获取功耗指令,并根据功耗指令输出多路解码控制信号。

如图3所示,2-4解码器的输出的4路解码控制信号分别可以影响测试控制模块的集合{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}。3-8解码器的8个输出分别影响测试控制模块的集合{1,2},{3,4},{5,6},{7,8},{9,10},{11,12},{13,14},{15,16}。4-16解码器的16个输出分别控制一个测试控制模块。2-4解码器,3-8解码器和4-16解码器可以分别控制最多1/4数目的测试控制模块,1/8数目的测试控制模块,1/16数目的测试控制模块所连接元件的功耗,因此三个解码器同时可提供任意由{1/4,1/8,1/16}组合出来的功耗区间。当各测试控制模块中以及所连接元件的总功耗均相等时,芯片低功耗测试电路可以进行1/16精度的功耗测试。

作为另一优选的实施方式,解码模块还包括边界控制单元。边界控制单元可以由一系列与门和或门搭建。边界控制单元用于根据边界控制信息将多路解码控制信号处理为多路功耗控制信号。

如图3所示,解码模块中各解码器的输出端分别连接于一个与门的一个输入端,各与门的另一个输入端连接于扫描链的边界扫描(JTAG)寄存器。边界控制单元根据该寄存器的边界控制信息将多路解码控制信号处理为多路功耗控制信号。三个寄存器通过与门控制解码器的输出。以4-16解码器,3-8解码器和2-4解码器的顺序为例,三个寄存器的值组成JTAG控制值,即边界控制信息。当JTAG控制值为000时,芯片低功耗测试电路可测试的功耗区间为0-0,当JTAG控制值为001时,芯片低功耗测试电路可测试的功耗区间为1/4-1/4,当JTAG控制值为010时,芯片低功耗测试电路可测试的功耗区间为1/8-1/8,其他对应关系如下[011,1/4-3/8],[100,1/16-1/16],[101,1/4-5/16],[110,1/8-3/16],[111,1/4-7/16]。可见给定一个50%以下的功耗区间,本发明提供的芯片低功耗测试电路可以根据相应的控制值以保证功耗在区间之内,且最小可控区间1/16。

选择带边界控制单元的1-hot解码器,可以满足要求可调功耗控制区间并且跨时钟路径的情况。对于只要求简单控制功耗的情况,例如不超过20%最高功耗,但有跨时钟路径的情况,可选择不带边界控制单元的简单N-hot(N≥2)解码器,这也是最常见的情况。对于最简单情况,即只要求不超过某个最高功耗百分比,又没有跨时钟路径的情况,可选择不带边界控制单元的简单1-hot解码器。此种设计硬件开销最小。

解码器可以用常用的硬件描述语言,例如verilog,在设计中实现。所有控制寄存器需要在扫描链上,对于有使用压缩解压缩结构的扫描链,最好不对控制寄存器的扫描链压缩,以方便控制。

对于需要跨时钟域且需要可控功耗区间所应用的解码电路,除了需要保证控制寄存器插入在扫描链上,还需要确定功耗区间,据此决定JTAG控制位的值,然后再生成测试向量。如果需要改变功耗控制区间,则需要重新生成测试向量。

在扫描链的测试向量生成后,可以在软件中做功耗分析。根据相应寄存器随时钟变化的比率估算功耗。如果需要精确功耗分析,可以对产生的测试向量做仿真,然后用专用功耗分析软件分析瞬时功耗和热点。

在芯片低功耗测试时,芯片上可能会有无法消除的热点,测试向量不能通过。为了调试目的,可以在生成测试向量时降低功耗,排除过高功耗的影响。这可以通过在生成测试向量时强制设定相关寄存器的值实现。例如可以只打开某个测试控制模块,从而达到只测试这个测试控制模块的目的。

在调试通过后,可以逐步调高功耗区间,允许更多的测试控制模块同时打开,在保证生产测试向量通过的前提下,可以减少测试数据和时间,降低工作量和成本。

作为本发明实施例的进一步改进,芯片低功耗测试电路还包括第三时钟门控单元。第三时钟门控单元具体为控制难以被测试到寄存器的时钟门控单元。寄存器的测试难度可以使用现有的ATPG工具估计。对于一个特定的功耗限制要求,我们需要选择一个合理的阈值T(%),代表这个百分比以下的寄存器功耗不受控制。例如T=5%,表示有5%的寄存器可以不加入以上功耗控制,这部分的时钟门控单元可以由扫描链独立进行测试或者不加入功耗测试。对于其余的时钟门控单元,则可以将其归为第一时钟门控单元或第二时钟门控单元,由此可以保证测试质量。

本发明实施例还提供了一种芯片低功耗测试方法,芯片包括多个第一时钟门控单元。芯片低功耗测试方法包括以下步骤:

步骤S110、将所有的第一时钟门控单元划分为多个测试控制模块中,第一时钟门控单元包括逻辑驱动端。

首先,根据设计对象和低功耗的具体需求,初步确定需要控制的时钟门控单元。根据低功耗限制,初步确定测试控制模块个数的范围。例如最小可控功耗区间为1/16,则不能划分少于16个测试控制模块。

作为优选的实施方式,根据设计对象的时钟门控单元的层级结构,可以确定是否可以只控制部分上级时钟门控单元,从而简化设计。需要控制的时钟门控单元即为第一时钟门控单元。例如对于16个测试控制模块,即CG组的例子,可以从最高层级开始,如果第一层时钟门控单元少于16个,则还需加入对第二层时钟门控单元的控制。依次类推,直到可以控制多于16个时钟门控单元,并且各个时钟门控单元控制的功耗都显著到不可忽略为止。每个时钟门控单元控制的功耗可以通过现有的商用软件分析,例如Synopsis公司的Design Compile,Cadence公司的RTL Compiler等。

如果设计对象无明确的时钟门控单元层级结构,则通过上述商用软件可以分析每个时钟门控单元控制的功耗。对于控制功耗可忽略的时钟门控单元,不需控制。对于控制功耗高于规定最小可控区间的,则需修改需求或修改设计,例如设计时加入更多时钟门控单元。

步骤S120、将第一时钟门控单元的逻辑驱动端连接至控制与门的输出端。

步骤S130、在扫描链中设置功耗寄存器,并将功耗寄存器连接于控制与门的控制输入端。

控制与门用于将从功耗寄存器获取的功耗控制信号LPE以及从功耗寄存器获取的逻辑信号运算后通过输出端输出至第一时钟门控单元的逻辑驱动端,第一时钟门控单元用于根据控制与门的输出切换至工作状态或关断状态。

作为优选的实施方式,测试控制模块中包括一个或多个第一时钟门控单元,同一测试控制模块中的第一时钟门控单元连接于同一控制与门。

作为优选的实施方式,至少有一个测试控制模块包括多个第一时钟门控单元。如图4和图5所示,同一测试控制模块中的各第一时钟门控单元相应的控制与门的控制输入端相连接,用于获取同一路功耗控制信号LPE。因此,同一路功耗控制信号LPE就可以控制整组第一时钟门控单元,即同一测试控制模块中的第一时钟门控单元,可以做到同时关断,可以简化控制。

每一个时钟域(clock domain)可包含多个测试控制模块。每个测试控制模块包含的第一时钟门控单元的数量多少可以由功耗控制的精细度要求决定。例如要求每个时钟域可关掉50%功耗,则至少需要将第一时钟门控单元划分至两个测试控制模块。

作为优选的实施方式,如图5所示,测试控制模块还包括第二时钟门控单元,即CG组右侧的时钟门控单元CG,所述第二时钟门控单元均包括时钟输入端CK。至少有一个第一时钟门控单元的时钟输出端上连接有多个第二时钟门控单元,第二时钟门控单元用于通过时钟输入端从第一时钟门控单元获取逻辑时钟信号。

因此,实现了将时钟门控单元CG分层设置。根据功耗控制的需要,只需控制较高层级的时钟门控单元CG,如第一时钟门控单元,由于高层级的时钟门控单元CG关断则下层的时钟门控单元CG也失去了时钟信号,因此下层的时钟门控单元CG,如第二时钟门控单元就无需直接控制,可以进一步简化控制。

步骤S140、发送功耗寄存向量至功耗寄存器。

对芯片进行功耗检测时,向功耗寄存器输入功耗寄存向量,然后根据功耗寄存向量区控制开启或关闭相应的第一时钟门控单元,实现芯片的低功耗测试。

步骤S150、根据功耗寄存向量生成多路功耗控制信号,并将各功耗控制信号传输至一控制与门的控制输入端。

功耗寄存器的输出可以直接与各控制与门的控制输入端的连接,也可以通过解码模块连接。

步骤S160、对芯片进行功耗分析。属于现有技术,不再赘述。

作为优选的实施方式,芯片低功耗测试方法还包括以下步骤:

步骤S170、在功耗寄存器与各控制与门的控制输入端之间设置解码模块。

步骤S150根据功耗寄存向量生成多路功耗控制信号,并将各功耗控制信号传输至一控制与门的控制输入端,具体为:解码模块根据功耗寄存向量生成多路功耗控制信号,并将各功耗控制信号传输至相应控制与门的控制输入端。

作为优选的实施方式,解码模块包括解码器和边界控制单元,解码器用于从功耗寄存器获取功耗寄存向量,并根据功耗寄存向量输出多路解码控制信号,边界控制单元用于根据边界控制信息将多路解码控制信号处理为多路功耗控制信号。

解码模块的结构、作用已经在前述电路的实施例部分有说明,在此不再赘述。

本发明实施例提供的芯片低功耗测试方法,通过将第一时钟门控单元的逻辑驱动端连接于一控制与门,可以通过功耗控制信号控制第一时钟门控单元工作或关断,从而增强了芯片低功耗测试过程中时钟门控单元的可控性,易化了控制难度,与基于扫描链的测试架构兼容性更好。

上述实施方式仅为本发明的优选实施方式,不能以此来限定本发明保护的范围,本领域的技术人员在本发明的基础上所做的任何非实质性的变化及替换均属于本发明所要求保护的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1