CN111610435B - 用于控制时钟门控单元的控制电路、芯片及控制方法 - Google Patents

用于控制时钟门控单元的控制电路、芯片及控制方法 Download PDF

Info

Publication number
CN111610435B
CN111610435B CN202010443228.3A CN202010443228A CN111610435B CN 111610435 B CN111610435 B CN 111610435B CN 202010443228 A CN202010443228 A CN 202010443228A CN 111610435 B CN111610435 B CN 111610435B
Authority
CN
China
Prior art keywords
user
register
gate
output
input
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.)
Active
Application number
CN202010443228.3A
Other languages
English (en)
Other versions
CN111610435A (zh
Inventor
刘君
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN202010443228.3A priority Critical patent/CN111610435B/zh
Publication of CN111610435A publication Critical patent/CN111610435A/zh
Application granted granted Critical
Publication of CN111610435B publication Critical patent/CN111610435B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318555Control logic

Abstract

一种用于控制时钟门控单元的控制电路、芯片及控制方法,该控制电路包括第一控制模块和第二控制模块;第一控制模块包括第一功能逻辑电路、第一用户定义寄存器和第一逻辑门,第二控制模块包括扫描寄存器、第二用户定义寄存器、第三用户定义寄存器、多路选择器和第二逻辑门;在扫描寄存器与第一功能逻辑电路或第二功能逻辑电路存在线性相关性的情况下,第二控制模块通过用户定义向量配置第三用户定义寄存器的输出端的电平,以使多路选择器选择第二输入端作为输入,第二控制模块通过ATPG工具产生的增量向量对第一功能逻辑电路或第二功能逻辑电路进行测试。本申请实施例可以增加第一功能逻辑电路和第二功能逻辑电路的测试覆盖率。

Description

用于控制时钟门控单元的控制电路、芯片及控制方法
技术领域
本申请涉及芯片技术领域,具体涉及一种用于控制时钟门控单元的控制电路、芯片及控制方法。
背景技术
在芯片技术中,时钟门控单元尤其是集成时钟门控(integrated clock gating,ICG)单元被大量使用,用来对时钟的开关进行控制从而用来降低功耗。图1是一个用于上升沿有效时钟的集成时钟门控单元。CK端是时钟输入端,ECK端是使能时钟输出端。E端是门控使能端,TE端是测试使能端。E端一般是由功能逻辑控制,TE端一般是由可测性设计(designfor test,DFT)逻辑来控制。当E端或TE端有一个以上电平值为1时门控导通,两个电平值都为0时门控关闭。
目前,TE端一般采用扫描使能信号和一个寄存器逻辑相或后的值来控制,在不同的测试模式下,控制TE端为1或0,当TE端为0时,由寄存器的值和门控E端的值来决定是否导通门控。当TE端为1时,控制时钟门控单元导通。当TE端为0时,由寄存器的值和门控E端的值来决定是否导通门控,但是不确定该寄存器是否串入扫描链及其位置,当E端前面逻辑锥深度比较深或短链间线性相关性时,部分逻辑无法测试,会损失测试覆盖率。
发明内容
本申请实施例提供一种用于控制时钟门控单元的控制电路、芯片及控制方法,可以增加第一功能逻辑电路和第二功能逻辑电路的测试覆盖率。
本申请实施例的第一方面提供了一种用于控制时钟门控单元的控制电路,所述控制电路包括第一控制模块和第二控制模块;所述第一控制模块包括第一功能逻辑电路、第一用户定义寄存器和第一逻辑门,所述第二控制模块包括扫描寄存器、第二用户定义寄存器、第三用户定义寄存器、多路选择器和第二逻辑门,所述时钟门控单元驱动第二功能逻辑电路;
所述第一功能逻辑电路的输出端连接所述第一逻辑门的第一输入端,所述第一用户定义寄存器的输出端连接所述第一逻辑门的第二输入端,所述第一逻辑门的输出端连接所述时钟门控单元的门控使能端;
所述扫描寄存器的输出端连接所述多路选择器的第一输入端,所述第二用户定义寄存器的输出端连接所述多路选择器的第二输入端,所述第三用户定义寄存器的输出端连接所述多路选择器的控制端,所述多路选择器的输出端连接所述第二逻辑门的第一输入端,所述扫描寄存器的控制端连接所述第二逻辑门的第二输入端,所述第二逻辑门的第二输入端连接扫描使能信号,所述第二逻辑门的输出端连接所述时钟门控单元的测试使能端;所述时钟门控单元的使能时钟输出端连接所述第二功能逻辑电路的时钟输入端;
在所述扫描寄存器与所述第一功能逻辑电路存在线性相关性或所述扫描寄存器与所述第二功能逻辑电路存在线性相关性的情况下,所述第二控制模块通过用户定义向量配置所述第三用户定义寄存器的输出端的电平,以使所述多路选择器选择所述多路选择器的第二输入端作为输入,所述第二控制模块通过自动测试向量生成ATPG工具产生的增量向量对所述第一功能逻辑电路或所述第二功能逻辑电路进行测试。
本申请实施例的第二方面提供了一种芯片,包括逻辑功能电路、时钟门控单元和本申请实施例第一方面所述的控制电路,所述控制电路在用于在对所述芯片进行测试时控制所述时钟门控单元是否导通。
本申请实施例的第三方面提供了一种用于控制时钟门控单元的控制方法,所述方法应用于本申请实施例第一方面所述的控制电路,所述控制电路包括第一控制模块和第二控制模块;所述第一控制模块包括第一功能逻辑电路、第一用户定义寄存器和第一逻辑门,所述第二控制模块包括扫描寄存器、第二用户定义寄存器、第三用户定义寄存器、多路选择器和第二逻辑门,所述时钟门控单元驱动第二功能逻辑电路;
所述第一功能逻辑电路的输出端连接所述第一逻辑门的第一输入端,所述第一用户定义寄存器的输出端连接所述第一逻辑门的第二输入端,所述第一逻辑门的输出端连接所述时钟门控单元的门控使能端;
所述扫描寄存器的输出端连接所述多路选择器的第一输入端,所述第二用户定义寄存器的输出端连接所述多路选择器的第二输入端,所述第三用户定义寄存器的输出端连接所述多路选择器的控制端,所述多路选择器的输出端连接所述第二逻辑门的第一输入端,所述扫描寄存器的控制端连接所述第二逻辑门的第二输入端,所述第二逻辑门的第二输入端连接扫描使能信号,所述第二逻辑门的输出端连接所述时钟门控单元的测试使能端;所述时钟门控单元的使能时钟输出端连接所述第二功能逻辑电路的时钟输入端;
所述方法包括:
在所述扫描寄存器与所述第一功能逻辑电路存在线性相关性或所述扫描寄存器与所述第二功能逻辑电路存在线性相关性的情况下,通过用户定义向量配置所述第三用户定义寄存器的输出端的电平,以使所述多路选择器选择所述多路选择器的第二输入端作为输入,通过自动测试向量生成ATPG工具产生的增量向量对所述第一功能逻辑电路或所述第二功能逻辑电路进行测试。
本申请实施例中的控制电路,在扫描寄存器与第一功能逻辑电路存在线性相关性或扫描寄存器与第二功能逻辑电路存在线性相关性的情况下,第二控制模块通过用户定义向量配置第三用户定义寄存器的输出端的电平,以使多路选择器选择多路选择器的第二输入端作为输入,第二控制模块通过自动测试向量生成ATPG工具产生的增量向量对第一功能逻辑电路或第二功能逻辑电路进行测试。由于扫描寄存器的输出不对控制时钟门控单元的测试使能端起作用,消除了扫描寄存器与第一功能逻辑电路或第二功能逻辑电路存在的线性相关性,ATPG工具产生的增量向量可以对第一功能逻辑电路或第二功能逻辑电路中由于线性相关性未检测到的故障点进行测试,可以增加第一功能逻辑电路和第二功能逻辑电路的测试覆盖率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术提供的一种集成时钟门控单元的结构示意图;
图2是本申请实施例提供的一种用于控制时钟门控单元的控制电路;
图3是本申请实施例提供的另一种用于控制时钟门控单元的控制电路;
图4是本申请实施例提供的另一种用于控制时钟门控单元的控制电路;
图5是本申请实施例提供的另一种用于控制时钟门控单元的控制电路;
图6是本申请实施例提供的一种芯片的结构示意图;
图7是本申请实施例提供的一种用于控制时钟门控单元的控制方法的流程示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
请参阅图1,图1是现有技术提供的一种集成时钟门控单元的结构示意图。如图1所示,该集成时钟门控单元是上升沿有效时钟的集成时钟门控单元。该集成时钟门控单元可以由一个锁存器、一个与门和一个或门组成。CK(clock)端是时钟输入端,ECK(enabledclock)端是使能时钟输出端。E(enable)端是门控使能端,TE端是测试使能端。E端一般是由功能逻辑控制,TE端一般是由可测性设计(design for test,DFT)逻辑来控制。当E端或TE端有一个以上电平值为1时门控导通,两个电平值都为0时门控关闭。门控导通时,CK端的时钟信号传输到ECK端,门控关闭时,CK端的时钟信号无法传输到ECK端。
可测试性设计(design for test,DFT)是在芯片设计过程中,加入可测性逻辑。DFT技术就是把DFT逻辑加入到芯片设计中,然后等芯片制造回来,通过事先加入的DFT逻辑对芯片进行体检,挑选出合格的芯片。
请参阅图2,图2是本申请实施例提供的一种用于控制时钟门控单元的控制电路。该控制电路包括第一控制模块10和第二控制模块20;所述第一控制模块10包括第一功能逻辑电路11、第一用户定义寄存器31和第一逻辑门41,所述第二控制模块20包括扫描寄存器21、第二用户定义寄存器32、第三用户定义寄存器33、多路选择器51和第二逻辑门42,所述时钟门控单元200驱动第二功能逻辑电路12;
所述第一功能逻辑电路11的输出端连接所述第一逻辑门41的第一输入端,所述第一用户定义寄存器31的输出端连接所述第一逻辑门41的第二输入端,所述第一逻辑门41的输出端连接所述时钟门控单元200的门控使能端;
所述扫描寄存器21的输出端连接所述多路选择器51的第一输入端(图2中多路选择器51的0端),所述第二用户定义寄存器32的输出端连接所述多路选择器51的第二输入端(图2中多路选择器51的1端),所述第三用户定义寄存器33的输出端连接所述多路选择器51的控制端,所述多路选择器51的输出端连接所述第二逻辑门42的第一输入端,所述扫描寄存器21的控制端连接所述第二逻辑门42的第二输入端,所述第二逻辑门42的第二输入端连接扫描使能信号,所述第二逻辑门42的输出端连接所述时钟门控单元200的测试使能端;所述时钟门控单元200的使能时钟输出端连接所述第二功能逻辑电路12的时钟输入端;
在所述扫描寄存器21与所述第一功能逻辑电路11存在线性相关性或所述扫描寄存器21与所述第二功能逻辑电路12存在线性相关性的情况下,所述第二控制模块20通过用户定义向量配置所述第三用户定义寄存器33的输出端的电平,以使所述多路选择器51选择所述多路选择器51的第二输入端作为输入,所述第二控制模块20通过自动测试向量生成ATPG工具产生的增量向量对所述第一功能逻辑电路11或所述第二功能逻辑电路12进行测试。ATPG是生成向量的一种软件算法,可以用不同企业的工具来实现ATPG向量的生成。
本申请实施例中,用户定义寄存器,也可以称为用户定义测试数据寄存器(User-defined Test Data Register,UDTR),UDTR是符合电气和电子工程师协会标准(Instituteof Electrical and Electronics Engineers standard,IEEE std)1149.1协议的用户定义测试数据寄存器,其时钟信号为jtag_clk,上电复位值为0。用户定义寄存器可以由D触发器组成,用户定义寄存器的输入端为D端,输出端为Q端,时钟端为CLK。CLK端接入时钟信号jtag_clk。当CLK端无电平脉冲时,无论来D端为何值,用户定义寄存器的Q端的状态保持不变,当CLK端有脉冲作用(即上升沿或下降沿)时,若Q端当前的值与D端输入的值相同,则Q端保持不变,如果Q端当前的值与D端输入的值不同,则Q端翻转。
其中,第一用户定义寄存器31、第二用户定义寄存器32、第三用户定义寄存器33可以按照一定顺序(比如,31、32、33的顺序,顺序可以自由确定)串连形成联合测试行为组织(Joint Test Action Group,jtag)链。jtag链中的所有用户定义寄存器依次相连,一个用户定义寄存器的输出连接另一个用户定义寄存器的输入。用户定义寄存器输入的值(用户定义向量)在测试开始前可由用户配置,通过jtag链中的第一个用户定义寄存器移入,最后一个用户定义寄存器移出。用户定义向量,也可以称为jtag向量。用户定义向量的值由测试机通道连接到芯片输入管脚输入。jtag向量的维数与jtag链中的用户定义寄存器的数量相关,jtag向量的维数大于或等于jtag链中的用户定义寄存器的数量。
用户定义向量,是用户预先配置的,用于控制jtag链中的用户定义寄存器的输出的电平。不同的用户定义向量,可以对应不同的测试模式。当jtag链中的用户定义寄存器的输出的配置好的电平后,ATPG工具可以根据jtag链中的各个用户定义寄存器的输出的电平以及需要测试的模块的电路结构,计算并生成用于测试的ATPG向量。
第一逻辑门41可以包括与门,还可以包括与门与至少一个非门。第二逻辑门42可以包括一个与门与和至少一个或门。
本申请实施例中,扫描寄存器(scan register,SDFF)是进行扫描测试的寄存器。图2中的扫描寄存器21标记为SDFF0。扫描寄存器21可以串入扫描链。扫描链中的扫描寄存器顺序相连,前一个扫描寄存器的输出端连接后一个扫描寄存器的第一输入端。扫描寄存器21可以由D触发器和多路选择器组成。扫描寄存器21包括两个输入端(第一输入端SI和第二输入端D)、一个输出端Q、一个控制端SE和一个时钟端CLK,控制端SE连接扫描使能SCAN_EN信号,时钟端CLK连接时钟信号Func_clk。当SE端为高电平时,扫描寄存器21选择SI端作为输入,进入扫描模式,相当于移位寄存器;当SE端为低电平时,扫描寄存器21选择D端作为输入,相当于普通寄存器。
在数字电路中,低电平用于表示逻辑“0”,高电平用于表示逻辑“1”。
在扫描模式下,扫描寄存器21的第一输入端SI可以通过测试机通道连接到芯片输入管脚输入。输入到扫描寄存器21的第一输入端SI的一串值称为自动测试向量产生(AutoTest Pattern Generation,ATPG)向量。ATPG向量由ATPG工具推导计算而来。
ATPG工具是具有ATPG功能的软件程序,可以生成ATPG向量,并输出到被测试器件,根据被测试器件的输出结果与生成的ATPG向量进行比较得到测试结果。ATPG是在半导体电器测试中使用的测试图形向量由程序自动生成的过程。测试向量按顺序地加载到器件的输入脚上,输出的信号被收集并与预算好的测试向量相比较从而判断测试的结果。ATPG有效性是衡量测试错误覆盖率的重要指标。
随着现代工业技术的不断发展,数字电路的集成度越来越高,系统芯片(System-on-a-Chip,SOC)上集成的知识产权核(Intellectual Property,IP)越来越多,功能也越来越复杂。在测试过程中,为了保证较高的测试故障覆盖率,不断增加的芯片复杂度使测试数据量大幅增加,用于测试的扫描链的长度也不断增加,由此增加了ATPG工具的测试工作量。为了减小测试的工作量,提高测试效率,一般需要对扫描链进行压缩。然而,扫描链的压缩可能会造成扫描寄存器21与需要测试的功能逻辑电路中的寄存器存在线性相关性。
寄存器之间的线性相关性,是指ATPG工具产生的某些向量中,两个寄存器无法同时输出(load)需要的值。例如,需要测试第一功能逻辑电路11内的某个故障点,那么需要时钟门控单元200的测试使能端为低电平,但是由于线性相关性影响,在配置第一功能逻辑电路11的寄存器的同时不能满足扫描寄存器21的输出(load)为低电平。又例如,需要测试第二功能逻辑电路12内的某个故障点,那么需要时钟门控单元200的测试使能端或门控使能端为高电平,但是由于线性相关性影响,在配置第二功能逻辑电路12的寄存器的同时不能满足扫描寄存器21的输出(load)为高电平。
本申请实施例中,在所述扫描寄存器21与所述第一功能逻辑电路11存在线性相关性或所述扫描寄存器21与所述第二功能逻辑电路12存在线性相关性的情况下,所述第二控制模块20通过用户定义向量配置所述第三用户定义寄存器33的输出端的电平,以使所述多路选择器51选择所述多路选择器51的第二输入端作为输入,此时,第二用户定义寄存器32的输出端的电平作为多路选择器51的输出,第二用户定义寄存器32的输出端的电平可以控制时钟门控单元200导通或关闭。所述第二控制模块20通过自动测试向量生成ATPG工具产生的增量向量对所述第一功能逻辑电路11或所述第二功能逻辑电路12进行测试。ATPG工具产生的增量向量可以输入扫描链中的扫描寄存器的SI端。
本申请实施例中,由于扫描寄存器21的输出不对控制时钟门控单元200的TE端起作用,消除了扫描寄存器与第一功能逻辑电路或第二功能逻辑电路存在的线性相关性,ATPG工具产生的增量向量可以对第一功能逻辑电路或第二功能逻辑电路中由于线性相关性未检测到的故障点进行测试,可以增加第一功能逻辑电路和第二功能逻辑电路的测试覆盖率。
可选的,在所述扫描寄存器21与所述第一功能逻辑电路11不存在线性相关性并且所述扫描寄存器21与所述第二功能逻辑电路12不存在线性相关性的情况下,所述第二控制模块20通过用户定义向量配置所述第三用户定义寄存器33的输出端的电平,以使所述多路选择器51选择所述多路选择器51的第一输入端作为输入,此时,扫描寄存器21的输出端的电平作为多路选择器51的输出,扫描寄存器21的输出端的电平可以控制时钟门控单元200导通或关闭。所述第二控制模块20通过ATPG工具产生的测试向量对所述第一功能逻辑电路11或所述第二功能逻辑电路12进行测试。ATPG工具产生的测试向量可以输入扫描链中的扫描寄存器的SI端。
本申请实施例中,在扫描寄存器21与所述第一功能逻辑电路11不存在线性相关性并且所述扫描寄存器21与所述第二功能逻辑电路12不存在线性相关性的情况下,因为不存在线性相关性,可以直接将测试向量移入扫描链进行测试。
可选的,所述扫描寄存器21串入扫描链,所述扫描寄存器21的第一输入端与所述扫描链的上一个扫描寄存器21的输出端连接,所述扫描寄存器21的输出端与所述扫描链的下一个扫描寄存器21的第一输入端连接;所述扫描寄存器21的第二输入端与所述扫描寄存器21的输出端连接。当然,如果扫描寄存器21为扫描链的第一个扫描寄存器,则其第一输入端不连接其他的扫描寄存器,如果扫描寄存器为扫描链的最后一个扫描器,则其输出端不连接其他的扫描寄存器。
可选的,所述ATPG工具产生的测试向量输入所述扫描寄存器21的第一输入端(SI端)。所述ATPG工具产生的增量向量输入所述扫描寄存器21的第一输入端(SI端)。
可选的,所述扫描链与片上时钟OCC链串联;或者,
所述扫描链通过测试机通道与芯片输入输出管脚直连。
本申请实施例中,扫描链与片上时钟(on chip clock,OCC)链是为了减少线性相关,OCC链用来控制时钟信号,其优先级相对较高。扫描链通过测试机通道与芯片输入输出管脚直连,可以单独给这条扫描链提供一对芯片输入输出管脚直连测试机通道,可以降低该扫描链与其他扫描链之间的线性相关性。
可选的,在所述时钟门控单元200不需要工作的情况下,所述第一控制模块10通过用户定义向量配置所述第一用户定义寄存器31的输出端的电平,使得所述第一逻辑门41输出低电平,所述第二控制模块20控制所述时钟门控单元200的测试使能端TE的逻辑电平为低电平。
本申请实施例中,要关闭时钟门控单元200,需要其TE端和E端均为低电平。由于第一用户定义寄存器31的输出可以由用户定义向量配置,可以使得第一逻辑门41输出低电平。第二控制模块20可以控制时钟门控单元200的测试使能端TE的逻辑电平为低电平。具体的,第二控制模块20可以通过用户定义向量配置所述第三用户定义寄存器33的输出端的电平,以使所述多路选择器51选择所述多路选择器51的第二输入端作为输入,此时,第二用户定义寄存器32的输出端的电平作为多路选择器51的输出,第二用户定义寄存器32的输出端的电平可以控制时钟门控单元200的测试使能端TE的逻辑电平为低电平。本申请实施例可以在时钟门控单元200不需要工作的时候,能够通过用户定义向量控制用户定义寄存器来关掉时钟门控单元,可以在测试过程中根据需要随时的关闭时钟门控单元,降低时钟门控单元的功耗。
可选的,在对所述第一功能逻辑电路11进行测试的情况下,所述第二控制模块20控制所述时钟门控单元200的测试使能端的逻辑电平为低电平,所述第一控制模块10通过用户定义向量配置所述第一用户定义寄存器31的输出端的电平,使得所述第一用户定义寄存器31的输出端的电平不对所述第一逻辑门41的输出造成影响。
本申请实施例中,在对第一功能逻辑电路11进行测试的情况下,需要避免第二控制模块20对时钟门控单元200的导通造成影响,避免第二控制模块20对第一功能逻辑电路11的测试结果的影响。第二控制模块20控制所述时钟门控单元200的测试使能端的逻辑电平为低电平。具体的,第二控制模块20可以通过用户定义向量配置所述第三用户定义寄存器33的输出端的电平,以使所述多路选择器51选择所述多路选择器51的第二输入端作为输入,此时,第二用户定义寄存器32的输出端的电平作为多路选择器51的输出,第二用户定义寄存器32的输出端的电平可以控制时钟门控单元200的测试使能端TE的逻辑电平为低电平。为了避免第一用户定义寄存器31的输出端的电平对时钟门控单元200的测试使能端的逻辑电平造成影响,第一控制模块10通过用户定义向量配置所述第一用户定义寄存器31的输出端的电平,使得所述第一用户定义寄存器31的输出端的电平不对所述第一逻辑门41的输出造成影响。比如,若第一逻辑门41为与门,则第一用户定义寄存器31的输出端的电平可以配置为高电平。本申请实施例可以在增加用户定义寄存器的情况下,避免用户定义寄存器对第一功能逻辑电路11的测试造成的影响。
可选的,在对所述第二功能逻辑电路12进行测试的情况下,所述第二控制模块20控制所述时钟门控单元200的测试使能端TE的逻辑电平为高电平,或者所述第一控制模块10通过用户定义向量配置所述第一用户定义寄存器31的输出端的电平,使得所述第一逻辑门41的输出为高电平。
本申请实施例中,在对所述第二功能逻辑电路12进行测试的情况下,由于第二功能逻辑电路12接在时钟门控单元200的使能时钟输出端ECK之后,需要导通时钟门控单元200才能对第二功能逻辑电路12进行测试。本申请实施例可以通过第二控制模块20控制所述时钟门控单元200的测试使能端TE的逻辑电平为高电平,或者所述第一控制模块10通过用户定义向量配置所述第一用户定义寄存器31的输出端的电平,使得所述第一逻辑门41的输出为高电平。
可选的,在所述第二功能逻辑电路12不需要进行测试的情况下,所述第二控制模块20控制所述时钟门控单元200的测试使能端TE的逻辑电平为低电平,并且所述第一控制模块10通过用户定义向量配置所述第一用户定义寄存器31的输出端的电平,使得所述第一逻辑门41的输出为低电平。
本申请实施例中,在不需要对第二功能逻辑电路12进行测试的情况下,可以关闭时钟门控单元200,第二控制模块20控制所述时钟门控单元200的测试使能端TE的逻辑电平为低电平,并且所述第一控制模块10通过用户定义向量配置所述第一用户定义寄存器31的输出端的电平,使得所述第一逻辑门41的输出为低电平,从而关闭时钟门控单元200。
可选的,在所述第一功能逻辑电路11不需要进行测试的情况下,可以关掉控制该第一逻辑功能电路11的时钟门控单元。
请参阅图3,图3是本申请实施例提供的另一种用于控制时钟门控单元的控制电路。图3是在图2的基础上进一步优化得到的,图3的时钟门控单元用于驱动包含第一寄存器121的第二功能逻辑电路12。在图2的基础上,图3增加了第四用户定义寄存器和第五用户定义寄存器以及对应的连接关系。如图3所示,所述第一控制模块10还包括第四用户定义寄存器34,所述第二控制模块20还包括第五用户定义寄存器35;所述第四用户定义寄存器34的输出端连接所述第一逻辑门41的第三输入端,所述第五用户定义寄存器35的输出端连接所述第二逻辑门42的第三输入端。
第二功能逻辑电路12可以包括至少一个寄存器。第二功能逻辑电路12还可以包括组合逻辑。
其中,所述第一逻辑门41包括第一与门411、第一非门412、第二非门413,所述第一与门411的第一输入端为所述第一逻辑门41的第一输入端,所述第一与门411的第二输入端连接所述第一非门412的输出端,所述第一非门412的输入端为所述第一逻辑门41的第二输入端,所述第一与门411的第三输入端连接第二非门413的输出端,所述第二非门413的输入端为所述第一逻辑门41的第三输入端;
所述第二逻辑门42包括第一或门421和第二与门422,所述第一或门421的第一输入端为所述第二逻辑门42的第一输入端,所述第一或门421的第二输入端为所述第二逻辑门42的第二输入端,所述第一或门421的输出端连接所述第二与门422的第一输入端,所述第二与门422的第二输入端为所述第二逻辑门42的第三输入端,所述第二与门422的输出端为所述第二逻辑门42的输出端。
非门,也可以称为反相器。可以将高电平(1)转换为低电平(0),也可以将低电平(0)转换为高电平(1)。
其中,所述第五用户定义寄存器35的输入端连接联合测试行为组织JTAG测试数据输入端jtag_tdi,所述第五用户定义寄存器35的输出端连接所述第二用户定义寄存器32的输入端,所述第二用户定义寄存器32的输出端连接所述第三用户定义寄存器33的输入端,所述第三用户定义寄存器33的输出端连接所述第四用户定义寄存器34的输入端,所述第四用户定义寄存器34的输出端连接所述第一用户定义寄存器31的输入端,所述第一用户定义寄存器31的输出端连接JTAG测试数据输出端jtag_tdo。
在对所述扫描链进行扫描测试时,在所述扫描寄存器21与所述第一功能逻辑电路11不存在线性相关性并且所述扫描寄存器21与所述第二功能逻辑电路12不存在线性相关性的情况下,所述第一控制模块10通过用户定义向量配置所述第四用户定义寄存器34的输出为低电平,配置所述第一用户定义寄存器31的输出为低电平;所述第二控制模块20通过用户定义向量配置所述第五用户定义寄存器35的输出为高电平,配置所述第三用户定义寄存器33的输出为低电平,以控制所述多路选择器51选择所述多路选择器51的第一输入端作为输入;
在所述扫描测试的扫描链位移模式下,所述扫描使能信号SCAN_EN为高电平,所述时钟门控单元200导通;
在所述扫描测试的扫描链捕获模式下,所述扫描使能信号SCAN_EN为低电平,由所述扫描寄存器21的输出端保持的电平和所述第一逻辑门41输出的电平决定是否导通所述时钟门控单元200。
本申请实施例中,在扫描测试时,第四用户定义寄存器34输出的存储器内建自测试模式(mbist_mode)信号为0,第一用户定义寄存器31(UTDR reg1)输出的低功耗模式(low_power_mode)信号为0,不影响第一功能逻辑电路11的输出。配置第五用户定义寄存器35(UTDR reg5)输出扫描模式(scan_mode)信号为1。第三用户定义寄存器33(UTDR reg3)复位值为0,选择多路选择器51的0端。在扫描链位移模式(SCAN SHIFT MODE)下,SCAN_EN为1,时钟门控单元200导通输出时钟信号。在扫描链捕获模式(SCAN CAPTURE MODE)下,SCAN_EN为0,由扫描寄存器21输出(load)的值和时钟门控单元200的门控使能E端的值共同来决定是否导通时钟门控单元200。
在扫描链位移模式下,扫描链上的扫描寄存器此时变为移位寄存器。每经过一个时钟节拍,扫描链上就会新增一个扫描寄存器可以输出(load)值。
当需要测试E端和其前面的第一功能逻辑电路11时,ATPG工具可以通过测试向量输入扫描寄存器21,以使扫描寄存器21输出(load)的值为0,这样时钟门控单元是否导通就由E端决定,通过时钟门控单元是否输出时钟来判断E端值是否正确。当需要让时钟门控单元导通时,ATPG工具可以使扫描寄存器21输出(load)的值为1,从而不需要推导第一功能逻辑电路11使E端为1,提高向量效率,减少向量数量从而缩短测试时间。
在扫描测试过程中,一般包括两个测试阶段:扫描链位移模式和扫描链捕获模式,在扫描链位移模式下,扫描链上的每个扫描寄存器都可以load需要的值,在扫描链捕获模式下,每个扫描寄存器输出的值保持不变,以测试逻辑电路的输出是否正确、测试逻辑电路之间的连线是否出现断开等故障。扫描链位移模式和扫描链捕获模式可以交替进行,以完成扫描测试。扫描寄存器21输出(load)的值,指的是扫描链位移模式完成之后的值。也就是扫描链位移模式的最后一拍扫描寄存器21的Q端的值。扫描链位移模式的持续的时钟节拍数可以大于或等于扫描链中扫描寄存器的数量,扫描链捕获模式维持的时间可以大于或等于一拍。
在扫描链压缩模式下,扫描寄存器21和第一功能逻辑电路11的寄存器或者第二功能逻辑电路12的寄存器也可能存在线性相关性的影响,导致这些寄存器在某些向量中无法同时输出(load)需要的值。例如需要测试第一功能逻辑电路11内的某个故障点,那么需要TE为0。但由于线性相关性影响,在配置第一功能逻辑电路11的寄存器的同时不能满足扫描寄存器21输出(load)为0。或者需要测试第二功能逻辑电路12内的某个故障点,那么需要TE或E为1。但由于线性相关性影响,在配置第二功能逻辑电路12的寄存器的同时不能满足扫描寄存器21输出(load)为1或者第一功能逻辑电路11输出1。此时可以通过配置第三用户定义寄存器33(UTDR reg3)的输出为1的同时配置第二用户定义寄存器32(UTDR reg2)为0或1,使扫描链捕获模式下门控常关或常开,出一组增量向量来对前面未测到的故障点进行测试,进一步提高测试覆盖率。
当第二功能逻辑电路12不需要进行扫描测试时,可以配置scan_mode为0,low_power_mode为1,从而关掉该第二功能逻辑电路12的时钟门控单元200,降低功耗。
由于scan_mode,mbist_mode,low_power_mode上电复位值为0,所以不影响芯片正常功能模式下E端对时钟门控单元的控制。
可选的,在进行存储器内建自测试(Memory Build-In Self Test,MBIST)时,所述第一控制模块10通过用户定义向量配置所述第四用户定义寄存器34的输出为高电平,所述第二控制模块20通过用户定义向量配置所述第五用户定义寄存器35的输出为低电平。
在MBIST测试时,由于图3的这类时钟门控单元后面不驱动存储器,所以可以关掉。配置scan_mode为0,mbist_mode为1,从而可以关掉时钟门控单元,以降低寄存器的功耗。
请参阅图4,图4是本申请实施例提供的另一种用于控制时钟门控单元的控制电路。图4是在图2的基础上进一步优化得到的,图4的时钟门控单元用于驱动包含第二寄存器122、第一存储器123和下一级时钟门控单元124的第二功能逻辑电路12。在图2的基础上,图4增加了第六用户定义寄存器和第七用户定义寄存器以及对应的连接关系。如图4所示,所述第二控制模块20还包括第六用户定义寄存器36和第七用户定义寄存器37;所述第六用户定义寄存器36的输出端连接所述第二逻辑门42的第三输入端,所述第七用户定义寄存器37的输出端连接所述第二逻辑门43的第四输入端。
其中,所述第一逻辑门41包括第三与门414和第三非门415,所述第三与门414的第一输入端为所述第一逻辑门41的第一输入端,所述第三与门414的第二输入端连接所述第三非门415的输出端,所述第三非门415的输入端为所述第一逻辑门41的第二输入端;
所述第二逻辑门42包括第二或门423、第三或门424和第四与门425,所述第二或门423的第一输入端为所述第二逻辑门42的第一输入端,所述第二或门423的第二输入端为所述第二逻辑门42的第二输入端,所述第二或门423的输出端连接所述第三或门424的第一输入端,所述第三或门424的第二输入端为所述第二逻辑门42的第三输入端,所述第三或门424的输出端连接所述第四与门425的第一输入端,所述第四与门425的第二输入端为所述第二逻辑门42的第四输入端,所述第四与门425的输出端为所述第二逻辑门42的输出端。
其中,所述第六用户定义寄存器36的输入端连接JTAG测试数据输入端jtag_tdi,所述第六用户定义寄存器36的输出端连接所述第二用户定义寄存器32的输入端,所述第二用户定义寄存器32的输出端连接所述第三用户定义寄存器33的输入端,所述第三用户定义寄存器33的输出端连接所述第七用户定义寄存器37的输入端,所述第七用户定义寄存器37的输出端连接所述第一用户定义寄存器31的输入端,所述第一用户定义寄存器31的输出端连接JTAG测试数据输出端jtag_tdo。
其中,在对所述扫描链进行扫描测试时,在所述扫描寄存器21与所述第一功能逻辑电路11不存在线性相关性并且所述扫描寄存器21与所述第二功能逻辑电路12不存在线性相关性的情况下,所述第一控制模块10通过用户定义向量配置所述第一用户定义寄存器31的输出为低电平;所述第二控制模块20通过用户定义向量配置所述第六用户定义寄存器36的输出为低电平,配置所述第七用户定义寄存器37的输出为高电平,配置所述第三用户定义寄存器33的输出为低电平,以控制所述多路选择器51选择所述多路选择器51的第一输入端作为输入;
在所述扫描测试的扫描链位移模式下,所述扫描使能信号SCAN_EN为高电平,所述时钟门控单元200导通;
在所述扫描测试的扫描链捕获模式下,所述扫描使能信号SCAN_EN为低电平,由所述扫描寄存器21的输出端保持的电平和所述第一逻辑门41输出的电平决定是否导通所述时钟门控单元200。
图4的方案适用于时钟门控单元后面驱动存储器,寄存器,和下一级时钟门控单元的场景。其控制电路和图3的方案的不同之处在于第一控制模块10中加入了mbist_mode信号,测试模式(test_mode)信号,省略了scan_mode信号。第二控制模块20中省略了mbist_mode信号。
在扫描测试时,配置test_mode为1,mbist_mode为0。当需要测试E端和其前面的第一功能逻辑电路11时,ATPG工具可以通过测试向量输入扫描寄存器21,以使扫描寄存器21输出(load)的值为0,这样时钟门控单元是否导通就由E端决定,通过时钟门控单元是否输出时钟来判断E端值是否正确。当需要让时钟门控单元导通时,ATPG工具可以使扫描寄存器21输出(load)的值为1,从而不需要推导第一功能逻辑电路11使E端为1,提高向量效率,减少向量数量从而缩短测试时间。
当第二功能逻辑电路12不需要进行扫描测试时,可以配置test_mode为0,low_power_mode为1,从而关掉该第二功能逻辑电路12的时钟门控单元200,降低功耗。
可选的,在进行存储器内建自测试时,所述第二控制模块20通过用户定义向量配置所述第六用户定义寄存器36的输出为高电平,配置所述第七用户定义寄存器37的输出为高电平,实现第一存储器123的存储器内建自测试。
在进行存储器内建自测试时,可以通过ATPG工具生成存储器测试(ramsequential)向量对第一存储器123进行测试。存储器测试向量需要扫描链位移模式和扫描链捕获模式重复几次,才能测出第一存储器123的某一位是否有问题。在扫描(SCAN)测试时,只需要一次扫描链位移模式和一次扫描链捕获模式,即可测试。
可选的,若所述第一存储器123不需要进行存储器内建自测试,所述第二控制模块20通过用户定义向量配置所述第七用户定义寄存器37输出为低电平,所述第一控制模块10通过用户定义向量配置所述第一用户定义寄存器31输出为高电平。从而可以关掉时钟门控单元,以降低寄存器的功耗。
请参阅图5,图5是本申请实施例提供的另一种用于控制时钟门控单元的控制电路。图5是在图2的基础上进一步优化得到的,图5的时钟门控单元用于驱动包含第二存储器125和下一级时钟门控单元126的第二功能逻辑电路12。在图2的基础上,图5增加了第八用户定义寄存器以及对应的连接关系。如图5所示,所述第二控制模块20还包括第八用户定义寄存器38;所述第八用户定义寄存器38的输出端连接所述第二逻辑门42的第三输入端,所述第二逻辑门42的第四输入端连接测试模式信号test_mode。
其中,所述第一逻辑门41包括第五与门416和第四非门417,所述第五与门416的第一输入端为所述第一逻辑门41的第一输入端,所述第五与门416的第二输入端连接所述第四非门417的输出端,所述第四非门417的输入端为所述第一逻辑门41的第二输入端;
所述第二逻辑门42包括第四或门426、第五或门427和第六与门428,所述第四或门426的第一输入端为所述第二逻辑门42的第一输入端,所述第四或门426的第二输入端为所述第二逻辑门42的第二输入端,所述第四或门426的输出端连接所述第五或门427的第一输入端,所述第五或门427的第二输入端为所述第二逻辑门42的第三输入端,所述第五或门427的输出端连接所述第六与门428的第一输入端,所述第六与门428的第二输入端为所述第二逻辑门42的第四输入端,所述第六与门428的输出端为所述第二逻辑门42的输出端。
其中,所述第八用户定义寄存器38的输入端连接JTAG测试数据输入端,所述第八用户定义寄存器38的输出端连接所述第二用户定义寄存器32的输入端,所述第二用户定义寄存器32的输出端连接所述第三用户定义寄存器33的输入端,所述第三用户定义寄存器33的输出端连接所述第一用户定义寄存器31的输入端,所述第一用户定义寄存器31的输出端连接JTAG测试数据输出端。
其中,在对所述扫描链进行扫描测试时,所述测试模式test_mode信号为高电平,在所述扫描寄存器21与所述第一功能逻辑电路11不存在线性相关性并且所述扫描寄存器21与所述第二功能逻辑电路12不存在线性相关性的情况下,所述第一控制模块10通过用户定义向量配置所述第一用户定义寄存器31的输出为低电平;所述第二控制模块20通过用户定义向量配置所述第八用户定义寄存器38的输出为低电平,配置所述第三用户定义寄存器33的输出为低电平,以控制所述多路选择器51选择所述多路选择器51的第一输入端作为输入;
在所述扫描测试的扫描链位移模式下,所述扫描使能信号SCAN_EN为高电平,所述时钟门控单元200导通;
在所述扫描测试的扫描链捕获模式下,所述扫描使能信号SCAN_EN为低电平,由所述扫描寄存器21的输出端保持的电平和所述第一逻辑门41输出的电平决定是否导通所述时钟门控单元200。
图5的方案适用于时钟门控单元后面寄存器和下一级时钟门控单元的场景。其控制电路和图4的方案的不同之处在于第一控制电路中把从第七用户定义寄存器37输出的test_mode信号换成了从模块输入端口来的芯片全局test_mode信号。它可以来自于顶层的用户定义寄存器或者芯片输入管脚,它在扫描测试或MBIST测试下为常1。
图5的方案还适用于第一级的时钟门控单元的控制。第一级的时钟门控单元的测试模式test_mode信号配置为全局信号,不能由用户定义寄存器来控制,只有第一级的时钟门控单元打开后,后面的时钟门控单元才有时钟。第一级时钟门控后面的时钟门控的测试模式test_mode信号可以由用户定义寄存器来控制。
在扫描测试时,配置test_mode为1,mbist_mode为0。当需要测试E端和其前面的第一功能逻辑电路11时,ATPG工具可以通过测试向量输入扫描寄存器21,以使扫描寄存器21输出(load)的值为0,这样时钟门控单元是否导通就由E端决定,通过时钟门控单元是否输出时钟来判断E端值是否正确。当需要让时钟门控单元导通时,ATPG工具可以使扫描寄存器21输出(load)的值为1,从而不需要推导第一功能逻辑电路11使E端为1,提高向量效率,减少向量数量从而缩短测试时间。
当第二功能逻辑电路12不需要进行扫描测试时,可以配置test_mode为0,low_power_mode为1,从而关掉该第二功能逻辑电路12的时钟门控单元200,降低功耗。
可选的,在进行存储器内建自测试时,所述测试模式test_mode信号为高电平,所述第二控制模块20通过用户定义向量配置所述第八用户定义寄存器38的输出为高电平。
在进行存储器内建自测试时,可以通过ATPG工具生成存储器测试(ramsequential)向量对第二存储器125进行测试。存储器测试向量需要扫描链位移模式和扫描链捕获模式重复几次,才能测出第二存储器125的某一位是否有问题。在扫描(SCAN)测试时,只需要一次扫描链位移模式和一次扫描链捕获模式,即可测试。
可选的,若所述第二存储器125不需要进行存储器内建自测试,所述第二控制模块20通过用户定义向量配置所述第八用户定义寄存器38输出为低电平,所述第一控制模块10通过用户定义向量配置所述第一用户定义寄存器31输出为高电平。从而可以关掉时钟门控单元,以降低寄存器的功耗。
图2至图5中的时钟门控单元可以是集成时钟门控,也可以是非集成时钟门控。图2至图5中的时钟门控单元可以是上升沿有效时钟的时钟门控单元,也可以是下降沿有效时钟的时钟门控单元。图2至图5中的控制电路可以控制一个时钟门控单元或同时控制多个同一类型的时钟门控单元。图2至图5中的控制电路可以一级时钟门控单元或者多级时钟门控单元的级联。
图2至图5中的用户定义寄存器可以是IEEE std 1500或IEEE std 1149.1的数据寄存器。图2至图5中的用户定义寄存器可以通过芯片输入管脚来控制。
请参阅图6,图6是本申请实施例提供的一种芯片的结构示意图。如图6所示,该芯片600包括至少一个逻辑功能电路61、至少一个时钟门控单元200和至少一个控制电路100,所述控制电路100在用于在对所述芯片600进行测试时控制所述时钟门控单元200是否导通。其中,时钟门控单元200可以驱动逻辑功能电路61和其他的时钟门控单元,还可以只驱动逻辑功能电路61。逻辑功能电路61可以包括寄存器、存储器等。
本申请实施例中的芯片可以是SOC芯片,可以应用在手机等移动终端上。
请参阅图7,图7是本申请实施例提供的一种用于控制时钟门控单元的控制方法的流程示意图。图7所示的方法应用于图2至图5中任一种控制电路,该方法包括如下步骤:
701,在扫描寄存器与第一功能逻辑电路存在线性相关性或扫描寄存器与第二功能逻辑电路存在线性相关性的情况下,通过用户定义向量配置第三用户定义寄存器的输出端的电平,以使多路选择器选择多路选择器的第二输入端作为输入;
702,通过自动测试向量生成ATPG工具产生的增量向量对第一功能逻辑电路或第二功能逻辑电路进行测试。
本申请实施例中,由于扫描寄存器的输出不对控制时钟门控单元的测试使能端起作用,消除了扫描寄存器与第一功能逻辑电路或第二功能逻辑电路存在的线性相关性,ATPG工具产生的增量向量可以对第一功能逻辑电路或第二功能逻辑电路中由于线性相关性未检测到的故障点进行测试,可以增加第一功能逻辑电路和第二功能逻辑电路的测试覆盖率。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在申请明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。
所述集成的单元如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器、随机存取器、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (27)

1.一种用于控制时钟门控单元的控制电路,其特征在于,所述控制电路包括第一控制模块和第二控制模块;所述第一控制模块包括第一功能逻辑电路、第一用户定义寄存器和第一逻辑门,所述第二控制模块包括扫描寄存器、第二用户定义寄存器、第三用户定义寄存器、多路选择器和第二逻辑门,所述时钟门控单元驱动第二功能逻辑电路;
所述第一功能逻辑电路的输出端连接所述第一逻辑门的第一输入端,所述第一用户定义寄存器的输出端连接所述第一逻辑门的第二输入端,所述第一逻辑门的输出端连接所述时钟门控单元的门控使能端;
所述扫描寄存器的输出端连接所述多路选择器的第一输入端,所述第二用户定义寄存器的输出端连接所述多路选择器的第二输入端,所述第三用户定义寄存器的输出端连接所述多路选择器的控制端,所述多路选择器的输出端连接所述第二逻辑门的第一输入端,所述扫描寄存器的控制端连接所述第二逻辑门的第二输入端,所述第二逻辑门的第二输入端连接扫描使能信号,所述第二逻辑门的输出端连接所述时钟门控单元的测试使能端;所述时钟门控单元的使能时钟输出端连接所述第二功能逻辑电路的时钟输入端;
在所述扫描寄存器与所述第一功能逻辑电路存在线性相关性或所述扫描寄存器与所述第二功能逻辑电路存在线性相关性的情况下,所述第二控制模块通过用户定义向量配置所述第三用户定义寄存器的输出端的电平,以使所述多路选择器选择所述多路选择器的第二输入端作为输入,所述第二控制模块通过自动测试向量生成ATPG工具产生的增量向量对所述第一功能逻辑电路或所述第二功能逻辑电路进行测试。
2.根据权利要求1所述的控制电路,其特征在于,在所述扫描寄存器与所述第一功能逻辑电路不存在线性相关性并且所述扫描寄存器与所述第二功能逻辑电路不存在线性相关性的情况下,所述第二控制模块通过用户定义向量配置所述第三用户定义寄存器的输出端的电平,以使所述多路选择器选择所述多路选择器的第一输入端作为输入,所述第二控制模块通过ATPG工具产生的测试向量对所述第一功能逻辑电路或所述第二功能逻辑电路进行测试。
3.根据权利要求2所述的控制电路,其特征在于,所述扫描寄存器串入扫描链,所述扫描寄存器的第一输入端与所述扫描链的上一个扫描寄存器的输出端连接,所述扫描寄存器的输出端与所述扫描链的下一个扫描寄存器的第一输入端连接;所述扫描寄存器的第二输入端与所述扫描寄存器的输出端连接。
4.根据权利要求3所述的控制电路,其特征在于,所述ATPG工具产生的测试向量输入所述扫描寄存器的第一输入端。
5.根据权利要求4所述的控制电路,其特征在于,在所述第二功能逻辑电路包括第一寄存器的情况下,所述第一控制模块还包括第四用户定义寄存器,所述第二控制模块还包括第五用户定义寄存器;
所述第四用户定义寄存器的输出端连接所述第一逻辑门的第三输入端,所述第五用户定义寄存器的输出端连接所述第二逻辑门的第三输入端。
6.根据权利要求5所述的控制电路,其特征在于,所述第一逻辑门包括第一与门、第一非门、第二非门,所述第一与门的第一输入端为所述第一逻辑门的第一输入端,所述第一与门的第二输入端连接所述第一非门的输出端,所述第一非门的输入端为所述第一逻辑门的第二输入端,所述第一与门的第三输入端连接第二非门的输出端,所述第二非门的输入端为所述第一逻辑门的第三输入端;
所述第二逻辑门包括第一或门和第二与门,所述第一或门的第一输入端为所述第二逻辑门的第一输入端,所述第一或门的第二输入端为所述第二逻辑门的第二输入端,所述第一或门的输出端连接所述第二与门的第一输入端,所述第二与门的第二输入端为所述第二逻辑门的第三输入端,所述第二与门的输出端为所述第二逻辑门的输出端。
7.根据权利要求6所述的控制电路,其特征在于,所述第五用户定义寄存器的输入端连接联合测试行为组织JTAG测试数据输入端,所述第五用户定义寄存器的输出端连接所述第二用户定义寄存器的输入端,所述第二用户定义寄存器的输出端连接所述第三用户定义寄存器的输入端,所述第三用户定义寄存器的输出端连接所述第四用户定义寄存器的输入端,所述第四用户定义寄存器的输出端连接所述第一用户定义寄存器的输入端,所述第一用户定义寄存器的输出端连接JTAG测试数据输出端。
8.根据权利要求7所述的控制电路,其特征在于,
在对所述扫描链进行扫描测试时,在所述扫描寄存器与所述第一功能逻辑电路不存在线性相关性并且所述扫描寄存器与所述第二功能逻辑电路不存在线性相关性的情况下,所述第一控制模块通过用户定义向量配置所述第四用户定义寄存器的输出为低电平,配置所述第一用户定义寄存器的输出为低电平;所述第二控制模块通过用户定义向量配置所述第五用户定义寄存器的输出为高电平,配置所述第三用户定义寄存器的输出为低电平,以控制所述多路选择器选择所述多路选择器的第一输入端作为输入;
在所述扫描测试的扫描链位移模式下,所述扫描使能信号为高电平,所述时钟门控单元导通;
在所述扫描测试的扫描链捕获模式下,所述扫描使能信号为低电平,由所述扫描寄存器的输出端保持的电平和所述第一逻辑门输出的电平决定是否导通所述时钟门控单元。
9.根据权利要求4所述的控制电路,其特征在于,在所述第二功能逻辑电路包括第二寄存器、第一存储器和下一级时钟门控单元的情况下,所述第二控制模块还包括第六用户定义寄存器和第七用户定义寄存器;
所述第六用户定义寄存器的输出端连接所述第二逻辑门的第三输入端,所述第七用户定义寄存器的输出端连接所述第二逻辑门的第四输入端。
10.根据权利要求9所述的控制电路,其特征在于,所述第一逻辑门包括第三与门和第三非门,所述第三与门的第一输入端为所述第一逻辑门的第一输入端,所述第三与门的第二输入端连接所述第三非门的输出端,所述第三非门的输入端为所述第一逻辑门的第二输入端;
所述第二逻辑门包括第二或门、第三或门和第四与门,所述第二或门的第一输入端为所述第二逻辑门的第一输入端,所述第二或门的第二输入端为所述第二逻辑门的第二输入端,所述第二或门的输出端连接所述第三或门的第一输入端,所述第三或门的第二输入端为所述第二逻辑门的第三输入端,所述第三或门的输出端连接所述第四与门的第一输入端,所述第四与门的第二输入端为所述第二逻辑门的第四输入端,所述第四与门的输出端为所述第二逻辑门的输出端。
11.根据权利要求10所述的控制电路,其特征在于,所述第六用户定义寄存器的输入端连接JTAG测试数据输入端,所述第六用户定义寄存器的输出端连接所述第二用户定义寄存器的输入端,所述第二用户定义寄存器的输出端连接所述第三用户定义寄存器的输入端,所述第三用户定义寄存器的输出端连接所述第七用户定义寄存器的输入端,所述第七用户定义寄存器的输出端连接所述第一用户定义寄存器的输入端,所述第一用户定义寄存器的输出端连接JTAG测试数据输出端。
12.根据权利要求11所述的控制电路,其特征在于,
在对所述扫描链进行扫描测试时,在所述扫描寄存器与所述第一功能逻辑电路不存在线性相关性并且所述扫描寄存器与所述第二功能逻辑电路不存在线性相关性的情况下,所述第一控制模块通过用户定义向量配置所述第一用户定义寄存器的输出为低电平;所述第二控制模块通过用户定义向量配置所述第六用户定义寄存器的输出为低电平,配置所述第七用户定义寄存器的输出为高电平,配置所述第三用户定义寄存器的输出为低电平,以控制所述多路选择器选择所述多路选择器的第一输入端作为输入;
在所述扫描测试的扫描链位移模式下,所述扫描使能信号为高电平,所述时钟门控单元导通;
在所述扫描测试的扫描链捕获模式下,所述扫描使能信号为低电平,由所述扫描寄存器的输出端保持的电平和所述第一逻辑门输出的电平决定是否导通所述时钟门控单元。
13.根据权利要求11所述的控制电路,其特征在于,
在进行存储器内建自测试时,所述第二控制模块通过用户定义向量配置所述第六用户定义寄存器的输出为高电平,配置所述第七用户定义寄存器的输出为高电平。
14.根据权利要求13所述的控制电路,其特征在于,
若所述第一存储器不需要进行存储器内建自测试,所述第二控制模块通过用户定义向量配置所述第七用户定义寄存器输出为低电平,所述第一控制模块通过用户定义向量配置所述第一用户定义寄存器输出为高电平。
15.根据权利要求4所述的控制电路,其特征在于,在所述第二功能逻辑电路包括第二存储器和下一级时钟门控单元的情况下,所述第二控制模块还包括第八用户定义寄存器;
所述第八用户定义寄存器的输出端连接所述第二逻辑门的第三输入端,所述第二逻辑门的第四输入端连接测试模式信号。
16.根据权利要求15所述的控制电路,其特征在于,所述第一逻辑门包括第五与门和第四非门,所述第五与门的第一输入端为所述第一逻辑门的第一输入端,所述第五与门的第二输入端连接所述第四非门的输出端,所述第四非门的输入端为所述第一逻辑门的第二输入端;
所述第二逻辑门包括第四或门、第五或门和第六与门,所述第四或门的第一输入端为所述第二逻辑门的第一输入端,所述第四或门的第二输入端为所述第二逻辑门的第二输入端,所述第四或门的输出端连接所述第五或门的第一输入端,所述第五或门的第二输入端为所述第二逻辑门的第三输入端,所述第五或门的输出端连接所述第六与门的第一输入端,所述第六与门的第二输入端为所述第二逻辑门的第四输入端,所述第六与门的输出端为所述第二逻辑门的输出端。
17.根据权利要求16所述的控制电路,其特征在于,所述第八用户定义寄存器的输入端连接JTAG测试数据输入端,所述第八用户定义寄存器的输出端连接所述第二用户定义寄存器的输入端,所述第二用户定义寄存器的输出端连接所述第三用户定义寄存器的输入端,所述第三用户定义寄存器的输出端连接所述第一用户定义寄存器的输入端,所述第一用户定义寄存器的输出端连接JTAG测试数据输出端。
18.根据权利要求17所述的控制电路,其特征在于,
在对所述扫描链进行扫描测试时,所述测试模式信号为高电平,在所述扫描寄存器与所述第一功能逻辑电路不存在线性相关性并且所述扫描寄存器与所述第二功能逻辑电路不存在线性相关性的情况下,所述第一控制模块通过用户定义向量配置所述第一用户定义寄存器的输出为低电平;所述第二控制模块通过用户定义向量配置所述第八用户定义寄存器的输出为低电平,配置所述第三用户定义寄存器的输出为低电平,以控制所述多路选择器选择所述多路选择器的第一输入端作为输入;
在所述扫描测试的扫描链位移模式下,所述扫描使能信号为高电平,所述时钟门控单元导通;
在所述扫描测试的扫描链捕获模式下,所述扫描使能信号为低电平,由所述扫描寄存器的输出端保持的电平和所述第一逻辑门输出的电平决定是否导通所述时钟门控单元。
19.根据权利要求17所述的控制电路,其特征在于,
在进行存储器内建自测试时,所述测试模式信号为高电平,所述第二控制模块通过用户定义向量配置所述第八用户定义寄存器的输出为高电平。
20.根据权利要求19所述的控制电路,其特征在于,
若所述第二存储器不需要进行存储器内建自测试,所述第二控制模块通过用户定义向量配置所述第八用户定义寄存器输出为低电平,所述第一控制模块通过用户定义向量配置所述第一用户定义寄存器输出为高电平。
21.根据权利要求4~20任一项所述的控制电路,其特征在于,所述扫描链与片上时钟OCC链串联;或者,
所述扫描链通过测试机通道与芯片输入输出管脚直连。
22.根据权利要求1~21任一项所述的控制电路,其特征在于,在所述时钟门控单元不需要工作的情况下,所述第一控制模块通过用户定义向量配置所述第一用户定义寄存器的输出端的电平,使得所述第一逻辑门输出低电平,所述第二控制模块控制所述时钟门控单元的测试使能端的逻辑电平为低电平。
23.根据权利要求1~22任一项所述的控制电路,其特征在于,
在对所述第一功能逻辑电路进行测试的情况下,所述第二控制模块控制所述时钟门控单元的测试使能端的逻辑电平为低电平,所述第一控制模块通过用户定义向量配置所述第一用户定义寄存器的输出端的电平,使得所述第一用户定义寄存器的输出端的电平不对所述第一逻辑门的输出造成影响。
24.根据权利要求1~22任一项所述的控制电路,其特征在于,
在对所述第二功能逻辑电路进行测试的情况下,所述第二控制模块控制所述时钟门控单元的测试使能端的逻辑电平为高电平,或者所述第一控制模块通过用户定义向量配置所述第一用户定义寄存器的输出端的电平,使得所述第一逻辑门的输出为高电平。
25.根据权利要求1~22任一项所述的控制电路,其特征在于,在所述第二功能逻辑电路不需要进行测试的情况下,所述第二控制模块控制所述时钟门控单元的测试使能端的逻辑电平为低电平,并且所述第一控制模块通过用户定义向量配置所述第一用户定义寄存器的输出端的电平,使得所述第一逻辑门的输出为低电平。
26.一种芯片,其特征在于,包括逻辑功能电路、时钟门控单元和权利要求1~25任一项所述的控制电路,所述控制电路在用于在对所述芯片进行测试时控制所述时钟门控单元是否导通。
27.一种用于控制时钟门控单元的控制方法,其特征在于,所述方法应用于权利要求1~25任一项所述的控制电路,所述控制电路包括第一控制模块和第二控制模块;所述第一控制模块包括第一功能逻辑电路、第一用户定义寄存器和第一逻辑门,所述第二控制模块包括扫描寄存器、第二用户定义寄存器、第三用户定义寄存器、多路选择器和第二逻辑门,所述时钟门控单元驱动第二功能逻辑电路;
所述第一功能逻辑电路的输出端连接所述第一逻辑门的第一输入端,所述第一用户定义寄存器的输出端连接所述第一逻辑门的第二输入端,所述第一逻辑门的输出端连接所述时钟门控单元的门控使能端;
所述扫描寄存器的输出端连接所述多路选择器的第一输入端,所述第二用户定义寄存器的输出端连接所述多路选择器的第二输入端,所述第三用户定义寄存器的输出端连接所述多路选择器的控制端,所述多路选择器的输出端连接所述第二逻辑门的第一输入端,所述扫描寄存器的控制端连接所述第二逻辑门的第二输入端,所述第二逻辑门的第二输入端连接扫描使能信号,所述第二逻辑门的输出端连接所述时钟门控单元的测试使能端;所述时钟门控单元的使能时钟输出端连接所述第二功能逻辑电路的时钟输入端;
所述方法包括:
在所述扫描寄存器与所述第一功能逻辑电路存在线性相关性或所述扫描寄存器与所述第二功能逻辑电路存在线性相关性的情况下,通过用户定义向量配置所述第三用户定义寄存器的输出端的电平,以使所述多路选择器选择所述多路选择器的第二输入端作为输入,通过自动测试向量生成ATPG工具产生的增量向量对所述第一功能逻辑电路或所述第二功能逻辑电路进行测试。
CN202010443228.3A 2020-05-22 2020-05-22 用于控制时钟门控单元的控制电路、芯片及控制方法 Active CN111610435B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010443228.3A CN111610435B (zh) 2020-05-22 2020-05-22 用于控制时钟门控单元的控制电路、芯片及控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010443228.3A CN111610435B (zh) 2020-05-22 2020-05-22 用于控制时钟门控单元的控制电路、芯片及控制方法

Publications (2)

Publication Number Publication Date
CN111610435A CN111610435A (zh) 2020-09-01
CN111610435B true CN111610435B (zh) 2022-06-10

Family

ID=72203920

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010443228.3A Active CN111610435B (zh) 2020-05-22 2020-05-22 用于控制时钟门控单元的控制电路、芯片及控制方法

Country Status (1)

Country Link
CN (1) CN111610435B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112231999B (zh) * 2020-09-24 2023-09-15 联暻半导体(山东)有限公司 一种提高双沿时钟电路测试覆盖率的装置及其设计方法
CN112557887A (zh) * 2020-11-17 2021-03-26 Oppo广东移动通信有限公司 片上时钟控制装置、芯片、芯片测试系统和测试方法
CN113311319B (zh) * 2021-06-01 2024-02-13 成都海光集成电路设计有限公司 集成电路芯片与配置方法以及测试系统和测试方法
CN113467569A (zh) * 2021-06-29 2021-10-01 展讯通信(上海)有限公司 门控时钟控制系统及其测试方法、控制芯片
CN113238143B (zh) * 2021-07-09 2021-11-12 成都爱旗科技有限公司 一种dft测试装置、测试系统及dft测试方法
CN113533942B (zh) * 2021-09-15 2021-11-30 上海矽久微电子有限公司 芯片测试系统及方法
KR102630258B1 (ko) * 2021-10-26 2024-01-25 연세대학교 산학협력단 로직 비스트 캡쳐 전력 감소 회로 및 방법
CN114217211B (zh) * 2021-12-15 2023-09-01 四川创安微电子有限公司 一种降低扫描链动态测试功耗的电路及其控制方法
CN114280454B (zh) * 2021-12-27 2024-01-23 西安爱芯元智科技有限公司 芯片测试方法、装置、芯片测试机及存储介质
CN114563694B (zh) * 2022-03-31 2022-10-28 上海韬润半导体有限公司 时钟门控控制电路及芯片测试电路
CN115048887A (zh) * 2022-06-21 2022-09-13 深圳国微芯科技有限公司 带门控时钟的实现电路的处理方法、验证方法、存储介质
CN115236493B (zh) * 2022-07-28 2023-07-21 摩尔线程智能科技(北京)有限责任公司 Dft测试电路、测试系统以及测试方法
CN115587555B (zh) * 2022-10-11 2023-05-12 北京云枢创新软件技术有限公司 集成时钟门控标准单元的atpg库模型生成系统
CN116224045B (zh) * 2023-05-08 2023-08-15 上海励驰半导体有限公司 一种测试电路及降低扫描测试中捕获阶段功耗的方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010091132A (ko) * 2000-03-13 2001-10-23 구자홍 마이크로 프로세서의 데이터 연산 처리기
US6539511B1 (en) * 1999-05-06 2003-03-25 Mitsubishi Denki Kabushiki Kaisha Semiconductor integrated circuit devices with test circuit
CN101515479A (zh) * 2009-03-30 2009-08-26 北京中星微电子有限公司 一种提高扫描链测试覆盖率的方法和装置
CN102062836A (zh) * 2009-11-17 2011-05-18 三星半导体(中国)研究开发有限公司 扫描寄存器、扫描链、芯片及其测试方法
WO2015066005A1 (en) * 2013-10-28 2015-05-07 Schlumberger Technology Corporation Integrated circuit for nmr systems
CN106471483A (zh) * 2014-03-24 2017-03-01 伊耐斯克泰克—计算机科学与技术系统工程研究所 用于多个混合信号资源管理的控制模块
CN108365841A (zh) * 2018-01-11 2018-08-03 北京国睿中数科技股份有限公司 门控时钟的控制系统和控制方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6539511B1 (en) * 1999-05-06 2003-03-25 Mitsubishi Denki Kabushiki Kaisha Semiconductor integrated circuit devices with test circuit
KR20010091132A (ko) * 2000-03-13 2001-10-23 구자홍 마이크로 프로세서의 데이터 연산 처리기
CN101515479A (zh) * 2009-03-30 2009-08-26 北京中星微电子有限公司 一种提高扫描链测试覆盖率的方法和装置
CN102062836A (zh) * 2009-11-17 2011-05-18 三星半导体(中国)研究开发有限公司 扫描寄存器、扫描链、芯片及其测试方法
WO2015066005A1 (en) * 2013-10-28 2015-05-07 Schlumberger Technology Corporation Integrated circuit for nmr systems
CN106471483A (zh) * 2014-03-24 2017-03-01 伊耐斯克泰克—计算机科学与技术系统工程研究所 用于多个混合信号资源管理的控制模块
CN108365841A (zh) * 2018-01-11 2018-08-03 北京国睿中数科技股份有限公司 门控时钟的控制系统和控制方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Cellular Automata with Large Channel Separations;Christopher Jenkins et al;《 2007 IEEE International Symposium on Circuits and Systems》;20070625;第1033-1036页 *
边界扫描技术及其应用;杨廷善;《测控技术》;20001231;第19卷(第9期);第5-8页 *

Also Published As

Publication number Publication date
CN111610435A (zh) 2020-09-01

Similar Documents

Publication Publication Date Title
CN111610435B (zh) 用于控制时钟门控单元的控制电路、芯片及控制方法
US6101457A (en) Test access port
US7624322B2 (en) Scan based testing of an integrated circuit containing circuit portions operable in different clock domains during functional mode
US8499209B2 (en) At-speed scan testing with controlled switching activity
US8479068B2 (en) Decoded register outputs enabling test clock to selected asynchronous domains
US7352169B2 (en) Testing components of I/O paths of an integrated circuit
CN107202953B (zh) 在运行时间期间支持逻辑自测试模式引入的扫描链电路
US20160349320A1 (en) Remote bus wrapper for testing remote cores using automatic test pattern generation and other techniques
US8037385B2 (en) Scan chain circuit and method
US7346820B2 (en) Testing of data retention latches in circuit devices
US10386413B2 (en) Circuit and method for testing flip flop state retention
TW201317596A (zh) 用於掃描鏈之動態時脈域旁路
US20160349318A1 (en) Dynamic Clock Chain Bypass
CN114280454A (zh) 芯片测试方法、装置、芯片测试机及存储介质
US8832510B2 (en) Circuit to reduce peak power during transition fault testing of integrated circuit
US6260166B1 (en) Observability register architecture for efficient production test and debug
US20060041806A1 (en) Testing method for semiconductor device and testing circuit for semiconductor device
US9599673B2 (en) Structural testing of integrated circuits
Singh et al. Instruction-based delay fault self-testing of processor cores
Chen et al. Test pattern generation and clock disabling for simultaneous test time and power reduction
US20020194563A1 (en) Accelerating scan test by re-using response data as stimulus data
Bahl et al. State of the art low capture power methodology
Ahlawat et al. A new scan flip flop design to eliminate performance penalty of scan
US20070022338A1 (en) Sequential Scan Technique for Testing Integrated Circuits With Reduced Power, Time and/or Cost
JP3529762B2 (ja) テストセル回路

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant