首页 / 一种芯片测试温度控制系统及芯片测试系统

一种芯片测试温度控制系统及芯片测试系统有效专利 实用

技术领域

[0001] 本实用新型涉及芯片测试技术领域,尤其涉及一种芯片测试温度控制系统及芯片测试系统。

相关背景技术

[0002] 服务器领域的处理器通常需要高可靠性,在一定的温度范围下都能正常工作(例如工业级服务器的正常工作温度范围为:‑40~+85℃)。不同的温度对服务器中的芯片的工作影响很大,有些芯片在高温或低温下会失效,所以需要尽可能的在恶劣的温度环境下进行芯片的稳定性测试。芯片通常都有一个正常工作所允许的最高结温TjMax,超过这个温度会引起芯片降低性能来进行冷却。芯片通常还有一个过热保护温度点(Tp),一旦芯片内部的核心温度高于这个温度,就会触发芯片的过温保护功能(Thermal trip),防止芯片因为温度过高导致不可逆转的损坏。芯片测试需要保证在TjMax温度点之下芯片可以正常稳定的工作,所以要尽可能测试最恶劣温度下的芯片的稳定性,同时还要保证芯片温度不会触发过温保护,以防止过温保护导致的系统断电。
[0003] 为了保证芯片的稳定性,需要验证芯片在不同温度不同负载的稳定性。一般使用表面恒温设备以控制芯片表面温度(是指芯片封装后的表面的温度,也称芯片的封装温度)恒定。表面恒温系统的温控头直接与芯片表面接触,使用PID控制器(比例‑积分‑微分控制器),根据芯片内部的核心温度来控制温控头的表面温度,以达到保持芯片核心温度恒定的目标。为了测试芯片在不同频率,不同温度的稳定性,已有的表面恒温系统的温度控制方案有如下两种:
[0004] 1.手工温度调整:手动找到每个频率下合适的表面温度,直接将温控头控制到该温度下,进行测试。该方法由于需要针对每一个测试频率手工设置温度,需要依据测试人员的经验值设置,无法自动化测试多个温度点。
[0005] 2.PID控制算法:以芯片的核心温度为控制条件,使用PID控制算法来控制温控头的表面温度。在执行负载之前将核心温度控制在一个比较低的温度点T0,等到负载执行起来之后,再将核心温度控制到目标高温点TjMax。采用该控制方法,将PID控制器内的设定温度值直接设置为目标温度值,导致PID控制器中的设定温度值与待测芯片表面的温度相差较大,PID控制器输出的控制信号,使待测芯片的核心温度以如图1所示出的上下波动较大的调节方式,将待测芯片的核心温度调节到目标温度值。在实际测试中发现,由于芯片核心温度变化剧烈,温度变化速度可达到30‑50℃/s。而表面恒温系统的温度控制能力有限,控温速度远小于芯片内部温度变化速度,高温测试时如果直接使用PID控制算法方案,极易导致在控制过程中芯片内部的核心温度超出芯片设计的Tp,从而触发芯片的过温保护功能,导致系统死机,如图1所示。实用新型内容
[0006] 本实用新型提供了一种芯片测试温度控制系统及芯片测试系统,以便于以待测芯片内的核心温度上下波动较小的调节过程,将待测芯片内的核心温度调节到目标温度值。
[0007] 第一方面,本实用新型提供了一种芯片测试温度控制系统,该芯片测试温度控制系统用于在测试设定在主板上的待测芯片过程中,控制待测芯片的核心温度。该芯片测试温度控制系统包括与待测芯片表面导热接触的温控头、以及与温控头连接的温控设备,其中,温控设备通过温控头调节待测芯片的表面温度。还包括与待测芯片连接的温度获取模块,用于采集待测芯片内的核心温度。温度获取模块连接有PID控制器,且PID控制器还与温控设备连接,以根据温度获取模块所采集的待测芯片的核心温度、以及设定温度值,控制温控设备将待测芯片的核心温度调节至设定温度值。PID控制器还连接有目标规划器,目标规划器用于规划设定温度值由初始值逐渐过渡到目标温度值。
[0008] 在上述的方案中,通过设置目标规划器,将PID控制器中设定温度值,由初始值逐渐过渡到目标温度值,使PID控制器在控制温控设备及温控头通过调整待测芯片的表面温度,使待测芯片内的核心温度达到目标温度值的过程中,能够以待测芯片内的核心温度上下波动较小的调节方式,将待测芯片内的核心温度调节到目标温度值。与现有技术中直接将PID控制器内的设定温度值直接设置为目标温度值的调节方式相比,本申请的方案能够以待测芯片内的核心温度上下波动较小的调节过程,将待测芯片内的核心温度调节到目标温度值,避免了待测芯片内的核心温度剧烈波动,提高测试的效率。
[0009] 在一个具体的实施方式中,目标规划器规划设定温度值,按照预设时间粒度由初始值逐渐过渡到目标温度值,以便于按照相等时间粒度的方式,规划设定温度值由初始值逐渐过渡到目标温度值。
[0010] 在一个具体的实施方式中,目标规划器为线性目标规划器,线性目标规划器规划设定温度值由初始值,沿着线性递增或线性递减方式逐渐过渡到目标温度值,简化规划设定温度值由初始值逐渐过渡到目标温度值的算法,便于操作。
[0011] 在一个具体的实施方式中,目标规划器为预训练目标规划器,预训练目标规划器根据待测芯片的历史测试数据进行预训练,得出最优目标规划曲线。预训练目标规划器规划设定温度值由初始值,沿着最优目标规划曲线逐渐过渡到目标温度值,以便于快速平稳地将待测芯片内的核心温度调节到目标温度值。
[0012] 在一个具体的实施方式中,目标规划器为模拟退火算法规划器。该模拟退火算法规划器用于生成最优解空间序列;该模拟退火算法规划器还用于规划设定温度值由初始值,沿着最优解空间序列逐渐过渡到目标温度值。以简化目标规划算法,同时便于寻找到最优的规划方式。
[0013] 在一个具体的实施方式中,该模拟退火算法规划器包括:解空间序列模板设定模块、概率函数设置模块、解空间序列生成模块、第一目标函数计算模块、第二目标函数计算模块。其中,解空间序列模板设定模块用于设定解空间序列模板[T0,T1,…,Tk,Tk+1,…,Tn],T0表示初始值,Tn表示目标温度值;T1,…,Tk,Tk+1,…,Tn‑1均表示解;k∈[0,n‑1],且|Tk‑T0|≤|Tk+1‑T0|。概率函数设置模块用于初始化概率函数exp(‑ΔTime/T)中的“T”。解空间序列生成模块用于根据解空间序列模板,随机生成初始解空间序列w。第一目标函数计算模块用于根据初始解空间序列w,计算第一目标函数Time(w)=a+1。第二目标函数计算模块用于根据初始解空间序列w,计算第二目标函数 其中,Ta=Tn,且Ta‑1≠Tn。且解空间序列生成模块还用于根据解空间序列模板,随机生成下一初始解空间序列w’;
第一目标函数计算模块还用于计算第一目标函数Time(w’)=a’+1;第二目标函数计算模块还用于计算第二目标函数 其中,Ta’=Tn,且Ta’‑1≠Tn。当然,该
模拟退火算法规划器还包括:时间粒度差计算模块、第一判断模块、第二判断模块、第三判断模块。其中,时间粒度差计算模块用于计算ΔTime=Time(w’)‑Time(w)。第一判断模块用于判断是否满足第一判断条件:ΔTime≤0,且Overshoot(w’)<Olimit;其中,Olimit表示预设的过冲阈值;第一判断模块还用于在判断结果为满足第一判断条件时,接受新解空间序列w’作为当前解空间序列w;第一判断模块还用于在判断结果为不满足第一判断条件时,以概率exp(‑ΔTime/T)接受新解空间序列w’作为当前解空间序列w。第二判断模块用于判断是否满足第二判断条件:迭代次数是否达到预设的迭代次数;第二判断模块还用于在判断结果为不满足第二判断条件时,跳转至解空间序列生成模块、第一目标函数计算模块、第二目标函数计算模块继续进行下一轮迭代计算。第三判断模块用于在第二判断模块的判断结果为满足第二判断条件时,判断是否满足第三判断条件:始终不接受新解空间序列w’作为当前解空间序列w;第三判断模块还用于在判断结果为满足第三判断条件时,结束运算并输出解空间序列w作为最优解空间序列。且概率函数设置模块还用于在第三判断模块的判断结果为不满足第三判断条件时,降低T,并跳转至解空间序列生成模块、第一目标函数计算模块、第二目标函数计算模块继续进行下一轮迭代计算,直到第三判断模块的判断结果为满足第三判断条件,输出最优解空间序列w为止。以简化模拟退火算法规划器的设置方式,同时便于寻找到最优的规划方式。
[0014] 在一个具体的实施方式中,目标温度值为待测芯片的最高结温,且初始值小于目标温度值,以便于以较为平稳的调整方式将待测芯片内的核心温度调整到温度较高的目标温度值,防止出现控制过程中芯片内部的核心温度超出芯片设计的Tp,从而触发芯片的过温保护功能,导致系统死机的现象。
[0015] 在一个具体的实施方式中,目标温度值为待测芯片的最低结温,且初始值大于目标温度值,以便于以较为平稳的方式将待测芯片内的核心温度调整到温度较低的目标温度值。
[0016] 在一个具体的实施方式中,待测芯片为中央处理器、图像处理器或者FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列),以便于在测试处理器的过程中,以较为平稳的方式将待测芯片内的核心温度调节到目标温度值。
[0017] 在一个具体的实施方式中,该初始值与初始时待测芯片的表面温度相等,使初始值与待测芯片内的表面温度相等,便于更为平稳的将待测芯片内的核心温度调节到目标温度值。
[0018] 第二方面,本实用新型还提供了一种芯片测试系统,该芯片测试系统用于测试设置在主板上的待测芯片。该芯片测试系统包括与主板及待测芯片连接以测试待测芯片的测试控制系统,以及与测试控制系统连接的前述任意一种芯片测试温度控制系统。
[0019] 在上述的方案中,通过设置目标规划器,将PID控制器中设定温度值,由初始值逐渐过渡到目标温度值,使PID控制器在控制温控设备及温控头通过调整待测芯片的表面温度,使待测芯片内的核心温度达到目标温度值的过程中,能够以待测芯片内的核心温度上下波动较小的调节方式,将待测芯片内的核心温度调节到目标温度值。与现有技术中直接将PID控制器内的设定温度值直接设置为目标温度值的调节方式相比,本申请的方案能够以待测芯片内的核心温度上下波动较小的调节过程,将待测芯片内的核心温度调节到目标温度值,避免了待测芯片内的核心温度剧烈波动,提高测试的效率。

具体实施方式

[0031] 为使本实用新型实施例的目的、技术方案和优点更加清楚,下面将结合本实用新型实施例中的附图,对本实用新型实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本实用新型一部分实施例,而不是全部的实施例。基于本实用新型中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本实用新型保护的范围。
[0032] 为了方便理解本实用新型实施例提供的芯片测试温度控制系统,下面首先说明一下本实用新型实施例提供的芯片测试温度控制系统的应用场景,该芯片测试温度控制系统应用于在测试设定在主板上的待测芯片过程中,控制待测芯片的核心温度。其中,该主板可以为服务器中的主板,待测芯片可以为主板上诸如处理器、存储器、FPGA等的功能芯片。下面结合附图对该芯片测试温度控制系统进行详细的叙述。
[0033] 参考图2,本实用新型实施例提供的芯片测试温度控制系统包括与待测芯片11表面导热接触的温控头20、以及与温控头20连接的温控设备30,其中,温控设备30通过温控头20调节待测芯片11的表面温度。具体设置时,温控头20可以与待测芯片11表面紧密接触,以提高导热效果。温控设备30通过控制温控头20表面的温度,从而调节待测芯片11的表面温度,通过待测芯片11的表面与待测芯片11内部的热交换,间接调节待测芯片11内的核心温度,实现对待测芯片11内的核心温度的降温或升温。在确定待测芯片11的类型时,待测芯片
11可以为中央处理器、图像处理器或者FPGA,以便于在测试处理器的过程中,以较为平稳的方式将待测芯片11内的核心温度调节到目标温度值。当然,待测芯片11并不限于上述示出的处理器的方式,除此之外,该待测芯片11还可以为主板10上的诸如存储器等的其他需要测试温度可靠性的功能芯片。
[0034] 继续参考图2,待测芯片11连接有温度获取模块40,温度获取模块40用于采集待测芯片11内的核心温度。具体的,可以采用服务器作为温度获取模块40,也可以采用其他能够采集待测芯片11内的核心温度的功能模块。
[0035] 如图2所示,温度获取模块40连接有PID控制器50,且PID控制器50还与温控设备30连接,以根据温度获取模块40所采集的待测芯片11的核心温度、以及设定温度值,控制温控设备30将待测芯片11的核心温度调节至设定温度值。PID控制器50是一个在工业控制应用中常见的反馈回路部件,由比例单元、积分单元和微分单元组成,这个控制器把收集到的数据和一个设定值进行比较,然后把这个差别用于计算新的输入值,这个新的输入值的目的是可以让系统的数据达到或者保持在设定值。PID控制器50可以根据历史数据和差别的出现率来调整输入值,使系统更加准确而稳定。即PID控制器50通过从温度获取模块40接收最新采集的待测芯片11内的核心温度,与设定温度值进行比对,之后经过积分微分计算之后,给温控设备30输出一个控制信号,该控制信号能够控制温控设备30通过调节温控头20的表面温度,间接的使待测芯片11内的核心温度更接近设定温度值。
[0036] 在确定该设定温度值时,参考图2及图3,PID控制器50还连接有目标规划器60,目标规划器60用于规划设定温度值由初始值逐渐过渡到目标温度值。即目标规划器60用于向PID控制器50输入设定温度值。目标规划器60在不同的时间向PID控制器50输入的设定温度值的大小并不相同,且随着输入的设定温度值次数的增加,输入的设定温度值的大小也越接近目标温度。通过设置目标规划器60,将PID控制器50中设定温度值,由初始值逐渐过渡到目标温度值,使PID控制器50中的设定温度值为动态变化的值,且随着变化次数的增加,该设定温度值越接近目标温度值。且每次变化的过程中,PID控制器50都控制温控设备30及温控头20将待测芯片11的表面温度调节到更接近目标温度值的范围内,使温度获取模块40每次采集的待测芯片11内的核心温度也更接近目标温度值。从而使PID控制器50每次比较的待测芯片11内的核心温度和设定温度值的差值都不会特别大,对应的,PID控制器50输出给温控设备30的控制信号也不会使温控头20的温度增加的特别多,从而使待测芯片11内的核心温度的上下波动也不会特别大。最终能够PID控制器50在控制温控设备30及温控头20通过调整待测芯片11的表面温度,使待测芯片11内的核心温度达到目标温度值的过程中,能够以待测芯片11内的核心温度上下波动较小的调节方式,将待测芯片11内的核心温度调节到目标温度值。与现有技术中直接将PID控制器50内的设定温度值直接设置为目标温度值的调节方式相比,本申请的方案能够以待测芯片11内的核心温度上下波动较小的调节过程,将待测芯片11内的核心温度调节到目标温度值,避免了待测芯片11内的核心温度剧烈波动,提高测试的效率。
[0037] 在目标规划器规划设定温度值由初始值逐渐过渡到目标温度值时,参考图6,可以采用如下的方式:
[0038] 步骤1:确定目标规划器的初始值、目标温度值和预设时间粒度;
[0039] 步骤2:选择目标规划器的目标规划算法;
[0040] 步骤3:根据目标规划算法,计算当前时间粒度下的设定温度值;
[0041] 步骤4:将设定温度值传输给PID控制器;
[0042] 步骤5:判断设定温度值是否达到目标温度值,如果判断结果为设定温度值未达到目标温度值,则循环执行步骤3~5,直到设定温度值达到目标温度值。以便于按照相等时间粒度的方式,规划设定温度值由初始值逐渐过渡到目标温度值。
[0043] 其中,目标规划器在具体向PID控制器50输入不同的设定温度值时,目标规划器60可以规划设定温度值,按照预设时间粒度由初始值逐渐过渡到目标温度值,以便于按照相等时间粒度的方式,规划设定温度值由初始值逐渐过渡到目标温度值。该预设时间粒度具体可以为1毫秒、3毫秒、5毫秒、7毫秒、9毫秒、1秒等时长。当然,也可以采用非等时长的时间间隔由初始值逐步过渡到目标温度值。
[0044] 在确定初始值及目标温度值的大小时,初始值可由经验给出,目标温度值就是测试待测芯片11在某一温度下的工作稳定性中的温度值。例如,测试待测芯片11在最高结温情况下的工作稳定性及可靠性时,该目标温度值为该待测芯片11的最高结温。可以使初始值小于目标温度值,以便于以较为平稳的调整方式将待测芯片11内的核心温度调整到温度较高的目标温度值。当然,可以使目标温度值为待测芯片11的最高结温,以便于以较为平稳的方式将待测芯片11内的核心温度调整到最高结温,防止出现控制过程中芯片内部的核心温度超出芯片设计的Tp,从而触发芯片的过温保护功能,导致系统死机的现象。
[0045] 另外,初始值还可以大于目标温度值,以便于以较为平稳的方式将待测芯片11内的核心温度调整到温度较低的目标温度值。可以设置目标温度值为待测芯片11的最低结温,便于以较为平稳的方式将待测芯片11内的核心温度调整到最低结温。
[0046] 在具体设置目标规划器60时,该目标规划器60可以为线性目标规划器,线性目标规划器规划设定温度值由初始值,沿着线性递增或线性递减方式逐渐过渡到目标温度值,简化规划设定温度值由初始值逐渐过渡到目标温度值的算法,便于操作。参考图4,该线性目标规划其给定一个初始值和一个最终的目标温度值,根据时间线性的递增,从初始值最终增加到目标温度值,并最终稳定在目标温度值。当然,图4仅仅示出了线性递增的规划方式,此时初始值小于目标温度值。在初始值大于目标温度值时,线性目标规划器将按照线性递减的方式,将初始值逐渐过渡到较低的目标温度值。
[0047] 当然,该目标规划器60并不限于上述示出的线性目标规划器的方式。例如,目标规划器60还可以为预训练目标规划器,如图5所示,预训练目标规划器根据待测芯片11的历史测试数据进行预训练,得出最优目标规划曲线。预训练目标规划器规划设定温度值由初始值,沿着最优目标规划曲线逐渐过渡到目标温度值,以便于快速平稳地将待测芯片11内的核心温度调节到目标温度值。历史测试数据具体与待测芯片11的类型、以及待测芯片11的测试频率等因素有关。通过对历史测试数据进行预训练,能够给出一个最优目标规划曲线。之后由预训练目标规划器,按照最优目标规划曲线的变化方式,向PID控制器50输出不同的设定温度值,从而使待测芯片11内的核心温度更快速平稳地达到目标温度值。
[0048] 例如,该目标规划器还可以为模拟退火算法规划器。该模拟退火算法规划器先生成最优解空间序列。之后该模拟退火算法规划器规划设定温度值由初始值,沿着最优解空间序列逐渐过渡到目标温度值。具体的,根据最优解空间序列,逐次选取当前时间粒度下的设定温度值,即从最优解空间序列中,由前到后逐次挑选当前时间粒度下的设定温度值。以简化目标规划算法,同时便于寻找到最优的规划方式。
[0049] 其中上述在采用模拟退火算法规划器生成最优解空间序列时,可以采用如下的设置方式来设置模拟退火算法规划器。该模拟退火算法规划器可以包括:解空间序列模板设定模块、概率函数设置模块、解空间序列生成模块、第一目标函数计算模块、第二目标函数计算模块。其中,解空间序列模板设定模块用于设定解空间序列模板[T0,T1,…,Tk,Tk+1,…,Tn],T0表示初始值,Tn表示目标温度值;T1,…,Tk,Tk+1,…,Tn‑1均表示解;k∈[0,n‑1],且|Tk‑T0|≤|Tk+1‑T0|。在初始值小于目标温度值时,设置Tk≤Tk+1;在初始值大于目标温度值时,设置Tk≥Tk+1。另外,可以设置T0~Tn中的每个解均为整数,以简化计算量,快速寻找到最优解。也可以设置为包含有小数的非整数,以提高优化的准确性。
[0050] 其中的概率函数设置模块用于初始化概率函数exp(‑ΔTime/T)中的“T”。解空间序列生成模块用于根据解空间序列模板,随机生成初始解空间序列w。该初始解空间序列w中的解个数和解空间序列模板中的解个数相等,且解的排列方式相同。
[0051] 其中的第一目标函数计算模块用于根据初始解空间序列w,计算第一目标函数Time(w)=a+1。第二目标函数计算模块用于根据初始解空间序列w,计算第二目标函数其中,Ta=Tn,且Ta‑1≠Tn,从而限定出在初始解空间序列w中,Ta是最先达到Tn的一个解。
[0052] 且上述解空间序列生成模块还用于根据解空间序列模板,随机生成下一初始解空间序列w’;该初始解空间序列w’中的解个数和解空间序列模板中的解个数相等,且解的排列方式相同。之后,第一目标函数计算模块还用于计算第一目标函数Time(w’)=a’+1;第二目标函数计算模块还用于计算第二目标函数 其中,Ta’=Tn,且Ta’‑1≠Tn,从而限定出在初始解空间序列w中,Ta是最先达到Tn的一个解。
[0053] 当然,模拟退火算法规划器除了上述示出的各个功能模块之外,该模拟退火算法规划器还包括:时间粒度差计算模块、第一判断模块、第二判断模块、第三判断模块。其中,时间粒度差计算模块用于计算ΔTime=Time(w’)‑Time(w)。第一判断模块用于判断是否满足第一判断条件:ΔTime≤0,且Overshoot(w’)<Olimit;其中,Olimit表示预设的过冲阈值,具体可以设置过冲阈值为1℃、2℃、5℃等。第一判断模块还用于在判断结果为满足第一判断条件时,接受新解空间序列w’作为当前解空间序列w;第一判断模块还用于在判断结果为不满足第一判断条件时,以概率exp(‑ΔTime/T)接受新解空间序列w’作为当前解空间序列w。
[0054] 其中的第二判断模块用于判断是否满足第二判断条件:迭代次数是否达到预设的迭代次数,预设的迭代次数可以为10次、20次等。该第二判断模块是在第一判断模块完成相应的判断之后进行判断。第二判断模块还用于在判断结果为不满足第二判断条件时,跳转至解空间序列生成模块、第一目标函数计算模块、第二目标函数计算模块继续进行下一轮迭代计算。即由解空间序列生成模块重新生成下一下一初始解空间序列w’,第一目标函数模块和第二目标函数模块分别计算相应的目标函数,之后交由时间粒度差计算模块进行相应的计算,再交由第一判断模块进行相应的判断,直到第二判断模块的判断结果为满足第二判断条件。
[0055] 其中的第三判断模块用于在第二判断模块的判断结果为满足第二判断条件时,判断是否满足第三判断条件:始终不接受新解空间序列w’作为当前解空间序列w。第三判断模块还用于在判断结果为满足第三判断条件时,结束运算并输出解空间序列w作为最优解空间序列。当然,还可能存在第三判断模块的判断结果为不满足第三判断条件的情形,此时概率函数设置模块还用于在第三判断模块的判断结果为不满足第三判断条件时,降低T,并跳转至解空间序列生成模块、第一目标函数计算模块、第二目标函数计算模块继续进行下一轮迭代计算,直到第三判断模块的判断结果为满足第三判断条件,输出最优解空间序列w为止。以简化模拟退火算法规划器的设置方式,同时便于寻找到最优的规划方式。上述关于模拟退火算法规划器中各个功能模块的工作流程也可以参考后续方法部分的描述。另外,上述各个功能模块可以为专用芯片,该专用芯片来实现相应的功能。该专用芯片可以包含存储及运行相应程序的存储介质和处理介质。其中的存储介质可以为诸如SRAM(Static Random‑Access Memory,静态随机存取存储器)、MRAM(Magnetoresistive Random Access Memory,非挥发性的磁性随机存储器)等的存储器,其中的处理介质可以为诸如CPU(Central Processing Unit,中央处理器)、FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)、GPU(Graphics Processing Unit,图形处理器)等具有逻辑运算功能的处理器。
[0056] 为了便于说明上述各个功能模块的工作流程,下面结合图7示出的工作流程图进行详细的介绍。在采用上述模拟退火算法规划器具体根据模拟退火算法,生成最优解空间序列时,参考图7,可以采用如下的步骤方式:
[0057] 步骤31:先由解空间序列模板设定模块设定解空间序列模板[T0,T1,…,Tk,Tk+1,…,Tn],其中,T0表示初始值,Tn表示目标温度值;T1,…,Tk,Tk+1,…,Tn‑1均表示解;k∈[0,n‑1],且|Tk‑T0|≤|Tk+1‑T0|。在初始值小于目标温度值时,Tk≤Tk+1;在初始值大于目标温度值时,Tk≥Tk+1。可以设置T0~Tn中的每个解均为整数,以简化计算量,快速寻找到最优解。也可以设置为包含有小数的非整数,以提高优化的准确性。
[0058] 步骤32:如图7所示,由概率函数设置模块初始化概率函数exp(‑ΔTime/T)中的“T”;
[0059] 同时,由解空间序列生成模块根据解空间序列模板,随机生成初始解空间序列w,该初始解空间序列w中的解个数和解空间序列模板中的解个数相等,且解的排列方式相同;
[0060] 上述第一目标函数计算模块根据初始解空间序列w,计算第一目标函数Time(w)=a+1;上述第二目标函数计算模块根据初始解空间序列w,计算第二目标函数其中,Ta=Tn,且Ta‑1≠Tn。由于|Tk‑T0|≤|Tk+1‑T0|,Ta=Tn,且Ta‑1
≠Tn,从而限定出在初始解空间序列w中,Ta是最先达到Tn的一个解。
[0061] 步骤33:解空间序列生成模块随机生成下一初始解空间序列w’,该初始解空间序列w’中的解个数和解空间序列模板中的解个数相等,且解的排列方式相同;
[0062] 第一目标函数计算模块计算Time(w’)=a’+1,第二目标函数计算模块计算第二目标函数 其中,Ta’=Tn,且Ta’‑1≠Tn。由于|Tk‑T0|≤|Tk+1‑T0|,Ta’=Tn,且Ta’‑1≠Tn,从而限定出在下一初始解空间序列w’中,T a’是最先达到Tn的一个解。
[0063] 步骤34:时间粒度差计算模块计算ΔTime=Time(w’)‑Time(w);
[0064] 步骤35:第一判断模块判断是否满足第一判断条件:ΔTime≤0,且Overshoot(w’)<Olimit;其中,Olimit表示预设的过冲阈值,具体可以设置过冲阈值为1℃、2℃、5℃等;
[0065] 如果判断结果为满足第一判断条件,则第一判断模块接受新解空间序列w’作为当前解空间序列w;
[0066] 如果判断结果为不满足第一判断条件,则第一判断模块以概率exp(‑ΔTime/T)接受新解空间序列w’作为当前解空间序列w;
[0067] 步骤36:第二判断模块判断是否满足第二判断条件:迭代次数是否达到预设的迭代次数。预设的迭代次数可以为10次、20次等。
[0068] 如果判断结果为不满足第二判断条件,则跳转至步骤33,由解空间序列生成模块、第一目标函数计算模块、第二目标函数计算模块继续进行下一轮迭代计算;
[0069] 如果判断结果为满足第二判断条件,则进入步骤37;
[0070] 步骤37:第三判断模块判断是否满足第三判断条件:始终不接受新解空间序列w’作为当前解空间w;
[0071] 如果判断结果为满足第三判断条件,则第三判断模块运算结束并返回解空间序列w作为最优解空间序列;
[0072] 如果判断结果为不满足第三判断条件,则进入步骤38;
[0073] 步骤38:概率函数设置模块降低T,并跳转至步骤33,由解空间序列生成模块、第一目标函数计算模块、第二目标函数计算模块继续进行下一轮迭代计算,直到第三判断模块的判断结果为满足第三判断条件,输出最优解空间序列w为止。以简化模拟退火算法,同时便于寻找到最优的规划方式。
[0074] 另外,可以设置该初始值与初始时待测芯片11的表面温度相等,使初始值与待测芯片11内的表面温度相等,便于更为平稳的将待测芯片11内的核心温度调节到目标温度值。当然,设置的初始值并不限于与待测芯片11的表面温度相等的设置方式,还可以设置初始值与初始时待测芯片11的表面温度不相等的设置方式。例如,可以设置初始值的大小与待测芯片11的表面温度较为接近的数值。
[0075] 在具体进行测试时,首先将待测芯片11正常安装在主板10上,通过主板10对待测芯片11进行上电,启动系统。之后,可以通过温控设备30设置温控头20的表面温度能够满足高温测试或低温测试需求的初始温度,该初始温度即为前述示出的初始时待测芯片11的表面温度。接下来,设置待测芯片11的待测目标频率,该待测目标频率可以为2GHz、2.5GHz或3GHz等。接下来,采用如图2及图3示出的方法,在各项参数调试好的PID控制器的基础上增加一个目标规划器60,根据系统负载和控制策略来自动规划PID控制器50的控制目标(该控制目标即为PID控制器50中的设定温度值),使得待测芯片11的核心温度最终稳定在待测目标温度值附近。应当注意的是,目标规划器60的控制目标为芯片的核心温度而不是温控头
20的表面温度。在完成测试之后,切换测试目标频率,然后重复上述的步骤继续执行。
[0076] 如图6所示出目标规划其中的温度控制流程图,首先选定初始值和目标温度值、以及预设时间粒度大小(即时间粒度)。接下来,需要选择目标规划器60的类型,即选择目标规划器60的目标规划算法。目标规划器60可以提前实现不同的规划算法,例如可以采用线性递增或递减方式,或者根据历史数据的预训练算法,或者其他满足需求的算法,并对算法进行初始化。之后,根据初始值和目标温度值,利用选择的算法计算当前输出时间粒度下(即当前输出时间节点下)的PID控制器50的设定温度值。之后,将目标规划算法计算出的设定温度值输出给PID控制器50。接下来,判断当前目标规划器输出的设定温度值是否达到目标温度值,如果未达到,则跳转到按照上述算法继续计算新的设定温度值的步骤;否则,则输出最终的目标温度值,完成规划。
[0077] 下面给出一个具体的实施例,所要测试的是待测芯片11的测试频率点分别为2GHz、2.5GHz、3GHz,测试过程中,该三个测试频率点分别依次进行。测试的目标温度值为该待测芯片11的最高结温TjMax=100℃,该待测芯片11的Thermal trip温度点为115℃。在具体进行测试时,首先完成待测芯片11安装,并进行上电,启动系统。先设置待测芯片11的频率为2GHz。接下来,通过温控设备30设置温控头20的表面温度为30℃。之后,开始按照上述参数执行负载程序。接下来,启动温度获取模块40、目标规划器60和PID控制器50,设置初始值为30℃,目标温度值为100℃,输入的预设时间粒度为1s,目标规划器60按照选定的目标规划算法采用线性递增算法,设定温度值每秒增加2℃,最终使待测芯片11的核心温度稳定在100℃。之后在待测芯片11的核心温度为100℃下执行负载压力一段时间之后,如果系统没有发生错误,则该频率点测试通过,设置下一个待测频率点并重复上述步骤继续测试,直到所有频率点测试完成。
[0078] 通过设置目标规划器60,将PID控制器50中设定温度值,由初始值逐渐过渡到目标温度值,使PID控制器50在控制温控设备30及温控头20通过调整待测芯片11的表面温度,使待测芯片11内的核心温度达到目标温度值的过程中,能够以待测芯片11内的核心温度上下波动较小的调节方式,将待测芯片11内的核心温度调节到目标温度值。与现有技术中直接将PID控制器50内的设定温度值直接设置为目标温度值的调节方式相比,本申请的方案能够以待测芯片11内的核心温度上下波动较小的调节过程,将待测芯片11内的核心温度调节到目标温度值,避免了待测芯片11内的核心温度剧烈波动,提高测试的效率。
[0079] 另外,本实用新型实施例还提供了一种芯片测试系统,该芯片测试系统用于测试设置在主板10上的待测芯片11。该芯片测试系统包括与主板10及待测芯片11连接以测试待测芯片11的测试控制系统,以及与测试控制系统连接的前述任意一种芯片测试温度控制系统。
[0080] 通过设置目标规划器60,将PID控制器50中设定温度值,由初始值逐渐过渡到目标温度值,使PID控制器50在控制温控设备30及温控头20通过调整待测芯片11的表面温度,使待测芯片11内的核心温度达到目标温度值的过程中,能够以待测芯片11内的核心温度上下波动较小的调节方式,将待测芯片11内的核心温度调节到目标温度值。与现有技术中直接将PID控制器50内的设定温度值直接设置为目标温度值的调节方式相比,本申请的方案能够以待测芯片11内的核心温度上下波动较小的调节过程,将待测芯片11内的核心温度调节到目标温度值,避免了待测芯片11内的核心温度剧烈波动,提高测试的效率。
[0081] 以上所述,仅为本实用新型的具体实施方式,但本实用新型的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本实用新型揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本实用新型的保护范围之内。因此,本实用新型的保护范围应该以权利要求的保护范围为准。

当前第1页 第1页 第2页 第3页