本技术涉及集成电路领域,更加具体地,涉及一种集成电路、生成电路设计的方法和芯片。
背景技术:
1、在芯片测试过程中,被测试的电路在寄存器捕获阶段的高翻转率会产生较大的电压降,从而导致被测试芯片的最小工作电压不正常地偏高,影响芯片的良率。通过设置测试向量生成工具的环境变量,控制测试向量的翻转率,能够约束被测试电路的翻转率。
2、但是,调整环境变量以生成新的测试向量重新测试,一方面延长了测试导入周期;另一方面,由于现有的时钟门控电路在寄存器捕获阶段的开关状态完全受控于功能输入信号,约束测试向量的翻转率,可能造成部分路径难以生成向量进行测试覆盖,保证测试路径覆盖完备性的前提下又难以有效降低被测试电路的翻转率。因此,如何便捷有效地在捕获阶段控制被测试电路的翻转率成为亟需解决的技术问题。
技术实现思路
1、本技术实施例提供一种集成电路、生成电路设计的方法和芯片,通过在时钟门控电路原有测试控制端的基础上额外增加一个控制测试输入端,使得测试控制信号在捕获阶段能够不依赖功能输入信号强制控制时钟门控电路关闭,进而在集成电路测试过程中能够对多个时钟门控电路实现分组控制,从而在捕获阶段便捷有效地控制被测试电路的翻转率。
2、第一方面,提供一种集成电路,包括m个时钟门控组、m个控制寄存器、功能逻辑电路,m个时钟门控组中的每个时钟门控组中包括至少一个时钟门控电路,m为大于1的正整数;时钟门控电路与功能逻辑电路连接,用于响应于功能输入信号、第一测试控制信号、第二测试控制信号和时钟输入信号输出时钟输出信号至功能逻辑电路,其中,第二测试控制信号用于指示时钟门控电路的工作模式,第一测试控制信号用于当时钟门控电路的工作模式为捕获模式时控制时钟门控电路的开关状态;所述m个控制寄存器,m个控制寄存器分别与m个时钟门控组中的至少一个时钟门控电路连接,用于为至少一个时钟门控电路提供第一测试控制信号。
3、根据本技术提供的技术方案,通过在时钟门控电路原有测试控制端的基础上额外增加一个控制测试输入端,额外增加的测试控制端使得测试控制信号能够在捕获阶段控制时钟门控电路的开关状态,不依赖功能输入信号也能够强制时钟门控电路关闭,使得生成的测试向量能够在不影响功能输入信号的情况下根据需求控制被测试的功能逻辑电路的翻转次数,从而在捕获阶段便捷有效地控制被测试电路的翻转率。基于上述对时钟门控电路的改进,实现对集成电路中的多个时钟门控电路分组控制,不同时钟门控组的测试控制信号由不同的控制寄存器产生,使得各组时钟门控电路的测试控制能够相互独立,通过测试控制信号强制关闭某一组时钟门控电路能够不影响其他组时钟门控电路,从而提高时钟门控电路控制的精细程度,进一步便捷有效地控制被测试电路的翻转率。
4、结合第一方面,在第一方面的某些实现方式中,在第二测试控制信号指示时钟门控电路的工作模式为捕获模式,且第一测试控制信号指示时钟门控电路为关闭状态的情况下,时钟输出信号恒定为低电平。
5、根据上述技术方案,在捕获阶段当测试控制信号指示时钟门控电路关闭时,时钟门控电路能够不受功能输入信号影响地保持关闭状态,使得测试信号能够在捕获阶段强制被测试电路不翻转,从而在不影响功能输入信号的情况下有效控制测试电路的翻转率。
6、结合第一方面,在第一方面的某些实现方式中,该功能逻辑电路包括多个区域,每个时钟门控组与多个区域中的一个区域连接,每个时钟门控组中时钟门控电路的数量与一个区域的电压降负相关。
7、根据上述技术方案,通过根据测试电路中各区域的电压降确定每个时钟门控组中时钟门控电路的数量,由于电压降与电路的翻转率正相关,因此能够作为确定时钟门控电路所需控制精度的依据,从而提高时钟门控电路分组方式的合理性和有效性。
8、结合第一方面,在第一方面的某些实现方式中,多个区域中包括至少一个第一区域和至少一个第二区域,至少一个第一区域的电压降大于第一阈值,至少一个第二区域的电压降小于或等于第一阈值,m个时钟门控组中包括至少一个第一时钟门控组和至少一个第二时钟门控组,第一时钟门控组与第一区域连接,第二时钟门控与第二区域连接,第一时钟门控组中包括p个时钟门控电路,第二时钟门控组中包括q个时钟门控电路,其中p和q为正整数且p小于q。
9、根据上述技术方案,通过以区域的电压降为依据对时钟门控电路进行非均匀分组,负责低电压降区域的分组中每组时钟门控电路数量更多,而负责高电压降区域的分组中每组时钟门控电路数量更少,使得数量有限的控制寄存器能够尽可能多地分配给需要更精细控制的区域,从而提高时钟门控电路分组方式的合理性和有效性。
10、结合第一方面,在第一方面的某些实现方式中,电压降是通过仿真获得的。
11、根据上述技术方案,区域电压降的数据在电路设计阶段通过仿真获得,使得时钟门控电路的分组方式能够在集成电路被生产之前进行调整,从而优化时钟门控电路的分组方式。
12、结合第一方面,在第一方面的某些实现方式中,m个控制寄存器包括功能逻辑电路中的寄存器。
13、根据上述技术方案,控制寄存器可以将功能逻辑电路中已有的寄存器用作控制寄存器,从而节省集成电路的面积。
14、结合第一方面,在第一方面的某些实现方式中,包括集成电路的测试点链上的寄存器和/或集成电路的片上时钟控制链上的寄存器。
15、根据上述技术方案,控制寄存器也可以是为了控制时钟门控电路专门在测试电路中插入的寄存器,从而提供更好的控制效果。
16、第二方面,提供一种生成电路设计的方法,包括:获取第一电路的电路设计,第一电路中包括功能逻辑电路,与时钟门控电路连接的多个时钟门控电路,时钟门控电路用于响应于功能输入信号、第一测试控制信号、第二测试控制信号和时钟输入信号输出时钟输出信号至功能逻辑电路,其中,第二测试控制信号用于指示时钟门控电路的工作模式,第一测试控制信号用于当时钟门控电路的工作模式为捕获模式时控制时钟门控电路的开关状态;输出第二电路的电路设计,第二电路中包括功能逻辑电路、m个时钟门控组和m个控制寄存器,m为大于1的正整数,其中,每个时钟门控组中包括多个时钟门控电路中的至少一个时钟门控电路,m个控制寄存器分别与m个时钟门控组中的时钟门控电路连接,用于为相连接的时钟门控组中的时钟门控电路提供第一测试控制信号。
17、可选地,上述方法可以由电子设计自动化(electronic design automation,eda)软件或包含eda软件的计算设备执行。
18、结合第二方面,在第二方面的某些实现方式中,在第二测试控制信号指示时钟门控电路的工作模式为捕获模式,且第一测试控制信号指示时钟门控电路为关闭状态的情况下,时钟输出信号恒定为低电平。
19、结合第二方面,在第二方面的某些实现方式中,功能逻辑电路包括多个区域,在输出第二电路的电路设计之前,该方法还包括:获取电压降数据,电压降数据用于指示多个区域中每个区域的电压降;第二电路中的每个时钟门控组与多个区域中的一个区域连接,每个时钟门控组中时钟门控电路的数量与一个区域的电压降负相关。
20、结合第二方面,在第二方面的某些实现方式中,多个区域中包括至少一个第一区域和至少一个第二区域,至少一个第一区域的电压降大于第一阈值,至少一个第二区域的电压降小于或等于第一阈值,m个时钟门控组中包括至少一个第一时钟门控组和至少一个第二时钟门控组,第一时钟门控组与第一区域连接,第二时钟门控与第二区域连接,第一时钟门控组中包括p个时钟门控电路,第二时钟门控组中包括q个时钟门控电路,其中p和q为正整数且p小于q。
21、结合第二方面,在第二方面的某些实现方式中,获取电压降数据,包括:通过仿真获取电压降数据。
22、结合第二方面,在第二方面的某些实现方式中,m个控制寄存器包括功能逻辑电路中的寄存器。
23、结合第二方面,在第二方面的某些实现方式中,m个控制寄存器包括第二电路的测试点链上的寄存器和/或第二电路的片上时钟控制链上的寄存器。
24、第三方面,提供一种生成电路设计的装置,包括:获取模块,用于获取第一电路的电路设计,第一电路中包括功能逻辑电路,与时钟门控电路连接的多个时钟门控电路,时钟门控电路用于响应于功能输入信号、第一测试控制信号、第二测试控制信号和时钟输入信号输出时钟输出信号至功能逻辑电路,其中,第二测试控制信号用于指示时钟门控电路的工作模式,第一测试控制信号用于当时钟门控电路的工作模式为捕获模式时控制时钟门控电路的开关状态;输出模块,用于输出第二电路的电路设计,第二电路中包括功能逻辑电路、m个时钟门控组和m个控制寄存器,m为大于1的正整数,其中,每个时钟门控组中包括多个时钟门控电路中的至少一个时钟门控电路,m个控制寄存器分别与m个时钟门控组中的时钟门控电路连接,用于为相连接的时钟门控组中的时钟门控电路提供第一测试控制信号。
25、结合第三方面,在第三方面的某些实现方式中,在第二测试控制信号指示时钟门控电路的工作模式为捕获模式,且第一测试控制信号指示时钟门控电路为关闭状态的情况下,时钟输出信号恒定为低电平。
26、结合第三方面,在第三方面的某些实现方式中,功能逻辑电路包括多个区域,在输出第二电路的电路设计之前,获取模块还用于:获取电压降数据,电压降数据用于指示多个区域中每个区域的电压降;第二电路中的每个时钟门控组与多个区域中的一个区域连接,每个时钟门控组中时钟门控电路的数量与一个区域的电压降负相关。
27、结合第三方面,在第三方面的某些实现方式中,多个区域中包括至少一个第一区域和至少一个第二区域,至少一个第一区域的电压降大于第一阈值,至少一个第二区域的电压降小于或等于第一阈值,m个时钟门控组中包括至少一个第一时钟门控组和至少一个第二时钟门控组,第一时钟门控组与第一区域连接,第二时钟门控与第二区域连接,第一时钟门控组中包括p个时钟门控电路,第二时钟门控组中包括q个时钟门控电路,其中p和q为正整数且p小于q。
28、结合第三方面,在第三方面的某些实现方式中,获取模块,用于:通过仿真获取电压降数据。
29、结合第三方面,在第三方面的某些实现方式中,m个控制寄存器包括功能逻辑电路中的寄存器。
30、结合第三方面,在第三方面的某些实现方式中,m个控制寄存器包括第二电路的测试点链上的寄存器和/或第二电路的片上时钟控制链上的寄存器。
31、第四方面,提供了一种计算机可读存储介质,包括计算机程序指令,当该计算机程序指令由计算设备执行时,使得计算设备执行上述第二方面或第二方面任意一种可能的实现方式中的方法。
32、作为示例,这些计算机可读存储介质包括但不限于如下的一个或者多个:只读存储器(read-only memory,rom)、可编程rom(programmable rom,prom)、可擦除的prom(erasable prom,eprom)、flash存储器、电eprom(electrically eprom,eeprom)以及硬盘驱动器(hard drive)。
33、可选地,作为一种实现方式,上述存储介质具体可以是非易失性存储介质。
34、第五方面,提供了一种包含指令的计算机程序产品,当该指令被计算设备运行时,使得计算设备执行上述第二方面或第二方面任意一种可能的实现方式中的方法。
35、第六方面,提供一种计算设备,包括处理器和存储器,其中,存储器用于存储指令,处理器用于从存储器中调用并运行该指令,使得该计算设备执行第二方面或第二方面任意一种可能的实现方式中的方法。
36、第七方面,提供一种芯片,包括如第一方面或第一方面任意一种可能的实现方式中的集成电路。
37、第八方面,提供一种电子设备,包括如第六方面中的芯片。