一种微处理器动态热管理中传感器的控制方法及装置转让专利

申请号 : CN201210189412.5

文献号 : CN102799707B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李鑫刘涛刘文江戎蒙恬周亮

申请人 : 上海交通大学

摘要 :

本发明提供了一种微处理器动态热管理中传感器的控制方法及装置,通过计算模块的功耗数据,并依据此功耗数据获得在此功耗数据下微处理器的温度分布,然后将微处理器的温度分布经过数据处理,以获得微处理器各模块热点分布叠加图,接着计算温度分布的热梯度形成热梯度分布叠加图,并且通过计算热梯度分布叠加图计算热梯度大小比例,并依据此比例分配传感器数量,最终优化微处理器传感器位置,本方案兼顾了热分布重构和热点误差估计,可实现较高的热点误差估计精度。

权利要求 :

1.一种微处理器动态热管理中传感器的控制方法,其特征在于,所述方法包括:步骤一、计算微处理器的各模块的功耗数据,并依据此功耗数据获得在此功耗数据下微处理器的温度分布;

步骤二、将微处理器的温度分布经过数据处理,以获得微处理器各模块热点分布叠加图;

步骤三、计算温度分布的热梯度形成热梯度分布叠加图;

步骤四、计算热梯度分布叠加图计算热梯度大小比例,并依据此比例分配传感器数量,其中,将整个芯片面积进行水平和垂直方向逐步二分,在每次二分时根据热梯度叠加图计算这两部分的热梯度大小比例,按照该比例分配传感器数量;

步骤五、优化微处理器传感器位置,如果在芯片二分区域没有热点,则将传感器放置在该区域的几何中心;如果在芯片二分区域存在热点,则通过热梯度牵引k-means聚类算法确定传感器在该区域的位置。

2.根据权利要求1所述的方法,其特征在于,所述步骤一中,功耗数据包括但不限于模块的动态功耗和漏功耗。

3.根据权利要求2所述的方法,其特征在于,所述功耗数据是通过微处理器性能仿真软件在需要进行动态热管理设计的芯片架构上仿真标准测试程序集,并在此基础上集成功耗分析模块来计算动态功耗和漏功耗。

4.根据权利要求1所述的方法,其特征在于,所述步骤二中,是将不同测试程序下仿真得到的温度分布图经过数据处理,得到微处理器各模块热点分布叠加图。

5.根据权利要求1所述的方法,其特征在于,所述步骤三中,是通过将图像处理中边缘检测算子计算不同标准测试程序温度分布的热梯度图,然后将其相加得到热梯度分布叠加图。

6.根据权利要求1所述的方法,其特征在于,所述步骤一中,微处理器温度分布是指通过仿真软件得到的微处理工作状态时的二维温度矩阵,该矩阵的行列数根据仿真精度的要求而定。

7.根据权利要求1所述的方法,其特征在于,所述步骤三中,热点分布叠加图是指根据微处理器架构模块划分,挑出各模块的热点,再将不同测试程序下的所有热点分布重叠在一幅架构图上所得到的热点分布。

8.根据权利要求1所述的方法,其特征在于,所述步骤五中,热梯度牵引k-means聚类算法是指在二维k-means聚类算法的基础上,加入热点的梯度信息,构造出三维“距离”,并进一步引入牵引因子,使得优化的传感器位置向梯度高的方向移动。

9.根据权利要求8所述的方法,其特征在于,所述牵引因子α值选取0.3。

10.一种微处理器动态热管理中传感器的控制装置,其特征在于,所述装置包括:热特性仿真单元,用于计算微处理器各模块的功耗数据,并依据此功耗数据获得在此功耗数据下微处理器的温度分布;

数据处理单元,用于将微处理器的温度分布经过数据处理,以获得微处理器各模块热点分布叠加图;

热梯度计算单元,用于计算温度分布的热梯度形成热梯度分布叠加图;

分配单元,用于计算热梯度分布叠加图计算热梯度大小比例,并依据此比例分配传感器数量,其中,将整个芯片面积进行水平和垂直方向逐步二分,在每次二分时根据热梯度叠加图计算这两部分的热梯度大小比例,按照该比例分配传感器数量;及位置优化单元,用于优化微处理器传感器位置,如果在芯片二分区域没有热点,则将传感器放置在该区域的几何中心;如果在芯片二分区域存在热点,则通过热梯度牵引k-means聚类算法确定传感器在该区域的位置。

说明书 :

一种微处理器动态热管理中传感器的控制方法及装置

技术领域

[0001] 本发明涉及信息控制技术领域,特别涉及一种微处理器动态热管理中传感器的控制方法及装置。

背景技术

[0002] 随着集成电路特征尺寸的缩小和性能需求的增加,其功率密度呈指数级增长,导致了芯片温度的不断提高。从90纳米开始,半导体制造工艺已经发展到纳米阶段,现在的先进工艺更是达到了45纳米、22纳米。在这个阶段,硅基芯片的漏电流已经达到和动态开关电流同样的数量级。一旦芯片出现局部温度升高的热点,该处的漏电流也会迅速增加,并进一步导致温度升高。过高的芯片温度降低了晶体管的转换速率、增加了漏功耗以及增大了互联电阻,降低芯片的工作稳定性,增加出错率。近年来,高性能处理器普遍集成温度传感器,采用动态热管理技术对芯片实施连续的热监控。如果芯片局部温度超过了一定的门限值,则会触发动态热管理机制,通过采取时钟门控、取指令降频和动态电压频率调整等措施,使得过高的芯片温度降低到安全的范围。动态热管理一般通过有效的热分布重构算法和热传感器位置分布策略估计芯片的热点温度信息。芯片的热点温度估计精度在很大程度上会影响动态热管理的效率。不精确的热点温度估计,会导致错误的预警和不必要的响应,使得动态热管理的可靠性受到影响,对系统性能带来不必要的损失。为了有效地进行动态热管理,很多微处理器制造商都在芯片上植入传感器来实时监控芯片运行的温度情况。例如IBM POWER5处理器采用了24个数字热传感器。因此,如何确定最优的热传感器分配与放置方法成为了微处理器动态热管理设计的重点。
[0003] 通过对现有技术文献检索发现,Seda Ogrenci Memik,Rajarshi Mukherjee,Min Ni,and Jieyi Long 在 2008 年 IEEE Transactions on Computer-Aided Design of Integrated Circuits(IEEE集成电路与系统的计算机辅助设计汇刊)中发表文章《Optimizing Thermal Sensor Allocation for Microprocessors》(微处理器中优化的热传感器分配),该文章提出了优化的热传感器位置分布算法,在热点误差估计方面有较好的精度。对于均匀间隔放置的热传感器,采用虚拟插值方法确定最优的传感器位置;对于非均匀间隔放置的热传感器,在k-means聚类算法的基础上进行改进,确定优化的传感器放置位置。该方法的目的是最大化热点误差估计的精度,但并不考虑全局监控的问题,因而使用该算法得到热传感器位置分布后进行热分布重构,得到的整体平均温度误差比较大。
[0004] 针对现有技术中整体平均温度误差比较大的问题,提出一种微处理器动态热管理中传感器的控制方法和装置是信息控制技术领域目前急待解决的问题之一。

发明内容

[0005] 有鉴于此,本发明实施例提出了一种微处理器动态热管理中传感器的控制方法及装置,通过计算模块的功耗数据,并依据此功耗数据获得在此功耗数据下微处理器的温度分布,然后将微处理器的温度分布经过数据处理,以获得微处理器各模块热点分布叠加图,接着计算温度分布的热梯度形成热梯度分布叠加图,并且通过计算热梯度分布叠加图计算热梯度大小比例,并依据此比例分配传感器数量,最终优化微处理器传感器位置,本方案兼顾了热分布重构和热点误差估计,可实现较高的热点误差估计精度。
[0006] 为解决上述技术问题,本发明实施例的目的是通过以下技术方案实现的:
[0007] 一种微处理器动态热管理中传感器的控制方法,包括:
[0008] 步骤一、计算模块的功耗数据,并依据此功耗数据获得在此功耗数据下微处理器的温度分布;
[0009] 步骤二、将微处理器的温度分布经过数据处理,以获得微处理器各模块热点分布叠加图;
[0010] 步骤三、计算温度分布的热梯度形成热梯度分布叠加图;
[0011] 步骤四、计算热梯度分布叠加图计算热梯度大小比例,并依据此比例分配传感器数量;
[0012] 步骤五、优化微处理器传感器位置。
[0013] 优选的,上述步骤一中,功耗数据包括但不限于模块的动态功耗和漏功耗。
[0014] 优选的,上述功耗数据是通过微处理器性能仿真软件在需要进行动态热管理设计的芯片架构上仿真标准测试程序集,并在此基础上集成功耗分析模块来计算动态功耗和漏功耗。
[0015] 优选的,上述步骤二中,是将不同测试程序下仿真得到的温度分布图经过数据处理,得到微处理器各模块热点分布叠加图。
[0016] 优选的,上述步骤三中,是通过将图像处理中边缘检测算子计算不同标准测试程序温度分布的热梯度图,然后将其相加得到热梯度分布叠加图。
[0017] 优选的,上述步骤四中,进一步包括将整个芯片面积进行水平和垂直方向逐步二分,在每次二分时根据热梯度叠加图计算这两部分的热梯度大小比例,按照该比例分配传感器数量。
[0018] 优选的,上述步骤五中,优化微处理器传感器位置时,如果在芯片二分区域没有热点,则将传感器放置在该区域的几何中心;如果在芯片二分区域存在热点,则通过热梯度牵引k-means聚类算法确定传感器在该区域的位置。
[0019] 优选的,上述步骤一中,微处理器温度分布是指通过仿真软件得到的微处理工作状态时的二维温度矩阵,该矩阵的行列数根据仿真精度的要求而定。
[0020] 优选的,上述步骤三中,热点分布叠加图是指根据微处理器架构模块划分,挑出各模块的热点,再将不同测试程序下的所有热点分布重叠在一幅架构图上所得到的热点分布。
[0021] 优选的,上述步骤五中,热梯度牵引k-means聚类算法是指在二维k-means聚类算法的基础上,加入热点的梯度信息,构造出三维“距离”,并进一步引入牵引因子,使得优化的传感器位置向梯度高的方向移动。
[0022] 优选的,上述牵引因子α值选取0.3。
[0023] 一种微处理器动态热管理中传感器的控制装置,包括热特性仿真单元、数据处理单元、热梯度计算单元、分配单元及位置优化单元,通过计算模块的功耗数据,并依据此功耗数据获得在此功耗数据下微处理器的温度分布,然后将微处理器的温度分布经过数据处理,以获得微处理器各模块热点分布叠加图,接着计算温度分布的热梯度形成热梯度分布叠加图,并且通过计算热梯度分布叠加图计算热梯度大小比例,并依据此比例分配传感器数量,最终优化微处理器传感器位置。
[0024] 优选的,上述热特性仿真单元用于计算模块的功耗数据,并依据此功耗数据获得在此功耗数据下微处理器的温度分布。
[0025] 优选的,上述数据处理单元用于将微处理器的温度分布经过数据处理,以获得微处理器各模块热点分布叠加图。
[0026] 优选的,上述热梯度计算单元用于计算温度分布的热梯度形成热梯度分布叠加图。
[0027] 优选的,上述分配单元用于计算热梯度分布叠加图计算热梯度大小比例,并依据此比例分配传感器数量。
[0028] 优选的,上述位置优化单元用于优化微处理器传感器位置。
[0029] 综上所述,本发明提供了一种微处理器动态热管理中传感器的控制方法及装置,通过计算模块的功耗数据,并依据此功耗数据获得在此功耗数据下微处理器的温度分布,然后将微处理器的温度分布经过数据处理,以获得微处理器各模块热点分布叠加图,接着计算温度分布的热梯度形成热梯度分布叠加图,并且通过计算热梯度分布叠加图计算热梯度大小比例,并依据此比例分配传感器数量,最终优化微处理器传感器位置,本方案兼顾了热分布重构和热点误差估计,可实现较高的热点误差估计精度。

附图说明

[0030] 图1为本发明一种微处理器动态热管理中传感器的控制方法示意图;
[0031] 图2为微处理器热分布仿真流程图;
[0032] 图3为微处理器各模块热点分布叠加图;
[0033] 图4为传感器放置策略示意图;
[0034] 图5为热梯度牵引方法示意图;
[0035] 图6为不同传感器数量下仿真结果比较示意图;
[0036] 图7为本发明一种微处理器动态热管理中传感器的控制装置示意图。

具体实施方式

[0037] 本发明实施例提供的一种微处理器动态热管理中传感器的控制方法及装置,通过计算模块的功耗数据,并依据此功耗数据获得在此功耗数据下微处理器的温度分布,然后将微处理器的温度分布经过数据处理,以获得微处理器各模块热点分布叠加图,接着计算温度分布的热梯度形成热梯度分布叠加图,并且通过计算热梯度分布叠加图计算热梯度大小比例,并依据此比例分配传感器数量,最终优化微处理器传感器位置,本方案兼顾了热分布重构和热点误差估计,可实现较高的热点误差估计精度。
[0038] 为使本发明的目的、技术方案及优点更加清楚明白,下面参照附图并举实施例,对本发明进一步详细说明。
[0039] 本方案的主要思路为:引入二分放置策略,根据热梯度比例分配传感器数量。在芯片没有热点的区域也放置了少量的传感器,可以降低热重构后的整体平均温度误差,并且避免由于缺少该区域温度信息,导致功能单元损坏的可能性;在存在热点的区域采用热梯度牵引k-means聚类算法确定传感器在该区域的最优位置,可以保证较高的热点误差估计精度。本方案兼顾了热分布重构和热点误差估计,在全局监控和局部监控中实现了优化。
[0040] 本发明实施例提供一种微处理器动态热管理中传感器的控制方法,如图1所示,具体步骤包括:
[0041] 步骤一、计算模块的功耗数据,并依据此功耗数据获得在此功耗数据下微处理器的温度分布;
[0042] 具体而言,在本发明实施例中,包括热特性仿真,即通过SimpleScalar软件在需要进行动态热管理设计的微处理器架构上仿真SPEC2000标准测试程序,并通过Wattch和CACTI来计算模块的动态功耗和漏功耗,由HotSpot软件来计算该功耗下微处理器的温度分布。微处理器温度分布是指通过仿真软件得到的微处理工作状态时的二维温度矩阵,该矩阵的行列数根据仿真精度的要求而定。
[0043] 进一步的,在本方案中是采用Alpha EV6微处理器架构,使用SimpleScalar软件仿真SPEC2000标准测试程序,并通过Wattch和CACTI来计算各模块的动态功耗和漏功耗,最后由HotSpot软件来计算该功耗下微处理器的温度分布。
[0044] 即,通过微处理器性能仿真软件在需要进行动态热管理设计的芯片架构上仿真标准测试程序集,并在此基础上集成功耗分析模块来计算芯片的动态功耗和漏功耗,最后由热特性仿真软件来计算该功耗下微处理器的温度分布。
[0045] 微处理器温度分布是指通过仿真软件得到的微处理工作状态时的二维温度矩阵,该矩阵的行列数根据仿真精度的要求而定。
[0046] 图2为微处理器热分布仿真流程图。
[0047] 步骤二、将微处理器的温度分布经过数据处理,以获得微处理器各模块热点分布叠加图;
[0048] 具体而言,在本发明实施例中,是将不同测试程序下仿真得到的温度分布经过简单的数据处理,得到微处理器各模块热点分布叠加图。热点分布叠加图是指根据微处理器架构模块划分,挑出各模块的热点,再将不同测试程序下的所有热点分布重叠在一幅架构图上所得到的热点分布。
[0049] 进一步的,在本方案中,是将不同测试程序下仿真得到的温度分布图通过MATLAB进行热点合并和剔除,得到微处理器各模块热点分布叠加图,共计128个热点。热点合并和剔除是指将所有热点分布图中得热点数据放置在同一架构图上,如果有热点位置完全重合,那么仅保留一个,将其他重合点剔除。
[0050] 图3为微处理器各模块热点分布叠加图。
[0051] 步骤三、计算温度分布的热梯度形成热梯度分布叠加图;
[0052] 具体而言,在本发明实施例中,是使用图像处理中边缘检测Sobel算子计算不同标准测试程序温度分布的热梯度图,然后将其相加得到热梯度分布叠加图。
[0053] 进一步的,在本方案中,当使用图像处理中边缘检测Sobel算子计算不同标准测试程序温度分布的热梯度大小。Sobel算子包含两组3×3的矩阵,分别为横向及纵向,将之与温度分布图作平面卷积,即可分别得出横向及纵向的温度差分近似值。如果以T代表原始温度分布图像,则其热梯度大小近似值为:
[0054] (公式一)
[0055] 然后,再将所有标准测试程序的热梯度分布相加得到热梯度分布叠加图。
[0056] 热点分布叠加图是指根据微处理器架构模块划分,挑出各模块的热点,再将不同测试程序下的所有热点分布重叠在一幅架构图上所得到的热点分布。
[0057] 步骤四、计算热梯度分布叠加图计算热梯度大小比例,并依据此比例分配传感器数量;
[0058] 具体而言,在本发明实施例中,热梯度值越高的地方分配的传感器数目越多,首先将整个芯片面积进行水平和垂直方向逐步二分,在每次二分时根据热梯度叠加图计算这两部分的热梯度大小比例,按照该比例分配传感器数量。
[0059] 进一步的,在本方案中,设定植入微处理器中的传感器总数。然后将整个芯片面积进行水平和垂直方向逐步二分,在每次二分时根据热梯度叠加图计算这两部分的热梯度比例,按照该比例分配传感器数量。
[0060] 图4为传感器放置策略示意图。图中,(a)为k-means聚类算法传感器放置策略示意图,(b)为本发明的传感器放置策略示意图。
[0061] 步骤五、优化微处理器传感器位置。
[0062] 具体而言,在本发明实施例中,包括传感器优化位置计算:如果在芯片二分区域没有热点,则将传感器放置在该区域的几何中心;如果在芯片二分区域存在热点,则通过热梯度牵引k-means聚类算法确定传感器在该区域的位置。
[0063] 热梯度牵引k-means聚类算法是指在二维k-means聚类算法的基础上,加入热点的梯度信息,构造出三维“距离”,并进一步引入牵引因子,使得优化的传感器位置向梯度高的方向移动。
[0064] 进一步的,在本方案中如果在芯片二分区域没有热点,则将传感器放置在该区域的几何中心;如果在芯片二分区域存在热点,则通过热梯度牵引k-means聚类算法确定传感器在该区域的位置,其算法框架如下:
[0065] 1.从该区域中的N个热点中任意选择k个作为初始聚类中心。其中,k为该区域分配到的传感器数量。
[0066] 2.计算每个热点与这些聚类中心的距离,并根据最小距离对相应热点进行划分(将热点分配给与其具有最小距离的聚类中心)。
[0067] 3.使用热梯度牵引方法,重新计算每个新聚类的聚类中心。
[0068] 4.不断重复执行2、3步,直到每个聚类中心不发生变化为止,最终的聚类中心位置就是放置传感器的位置,每个传感器监控该聚类中的所有热点。
[0069] 所述距离是指:加入热点的梯度信息,构造出三维欧式“距离”。假设第j个热点和第i个聚类中心的几何坐标和梯度信息分别为:(hjx,hjy,hjg)和(cix,ciy,cig),则它们的距离为:
[0070] (公式二)
[0071] 所述热梯度牵引方法是指:引入牵引因子α,使得新的聚类中心向热梯度高的热点方向移动,如图5所示(γ=α(hjx,y-cix,y/niteration))。首先对聚类中的每一个热点进行迭代,第n次迭代时聚类中心几何坐标和热梯度信息为:
[0072] cix,y=cix,y+hjx,y+α(hjx,y-cix,y/niteration)×(hjg-cig/niteration) (公式三)[0073] cig=cig+hjg
[0074] 在对该聚类中的所有热点进行迭代计算后,新的聚类中心的几何坐标和热梯度信息为:
[0075] cnew_ix,y,g=cix,y,g/size(Ci) (公式四)
[0076] 在本发明实施例中牵引因子α值选取0.3。
[0077] 图5热梯度牵引方法示意图。图中,(a)为热点梯度值大于聚类中心平均梯度值时热梯度牵引方法示意图,(b)为热点梯度值小于聚类中心平均梯度值时热梯度牵引方法示意图。
[0078] 此外,本方案还包括计算热点温度误差和热重构平均温度误差。
[0079] 热点温度误差是指热点分布叠加图中所有热点温度和其相应的监控传感器读数的误差比率的均值。热重构平均温度误差是指所有标准测试程序温度分布数据和根据传感器位置进行相应热重构后的温度数据误差比率的均值。
[0080] 设定植入微处理器中的传感器总数分别为4,8,12时,分别采用本实施例方法和现有传感器分配和放置技术所得到的热点温度误差和热重构平均温度误差比较如图6所示,该图证明了本实施例方法在保证热点温度误差精度下热重构平均温度误差大幅降低,在局部监控和全局监控中达到了一种折中。
[0081] 另外,本发明实施例还提供了一种微处理器动态热管理中传感器的控制装置。如图7所示,为本发明实施例提供的一种微处理器动态热管理中传感器的控制装置示意图。
[0082] 一种微处理器动态热管理中传感器的控制装置,包括热特性仿真单元11、数据处理单元22、热梯度计算单元33、分配单元44及位置优化单元55。
[0083] 热特性仿真单元11,用于计算模块的功耗数据,并依据此功耗数据获得在此功耗数据下微处理器的温度分布;
[0084] 具体而言,在本发明实施例中,包括热特性仿真,即通过SimpleScalar软件在需要进行动态热管理设计的微处理器架构上仿真SPEC2000标准测试程序,并通过Wattch和CACTI来计算模块的动态功耗和漏功耗,由HotSpot软件来计算该功耗下微处理器的温度分布。微处理器温度分布是指通过仿真软件得到的微处理工作状态时的二维温度矩阵,该矩阵的行列数根据仿真精度的要求而定。
[0085] 进一步的,在本方案中是采用Alpha EV6微处理器架构,使用SimpleScalar软件仿真SPEC2000标准测试程序,并通过Wattch和CACTI来计算各模块的动态功耗和漏功耗,最后由HotSpot软件来计算该功耗下微处理器的温度分布。
[0086] 数据处理单元22,用于将微处理器的温度分布经过数据处理,以获得微处理器各模块热点分布叠加图;
[0087] 具体而言,在本发明实施例中,是将不同测试程序下仿真得到的温度分布经过简单的数据处理,得到微处理器各模块热点分布叠加图。热点分布叠加图是指根据微处理器架构模块划分,挑出各模块的热点,再将不同测试程序下的所有热点分布重叠在一幅架构图上所得到的热点分布。
[0088] 进一步的,在本方案中,是将不同测试程序下仿真得到的温度分布图通过MATLAB进行热点合并和剔除,得到微处理器各模块热点分布叠加图,共计128个热点。热点合并和剔除是指将所有热点分布图中得热点数据放置在同一架构图上,如果有热点位置完全重合,那么仅保留一个,将其他重合点剔除。
[0089] 热梯度计算单元33,用于计算温度分布的热梯度形成热梯度分布叠加图;
[0090] 具体而言,在本发明实施例中,是使用图像处理中边缘检测Sobel算子计算不同标准测试程序温度分布的热梯度图,然后将其相加得到热梯度分布叠加图。
[0091] 进一步的,在本方案中,当使用图像处理中边缘检测Sobel算子计算不同标准测试程序温度分布的热梯度大小。Sobel算子包含两组3×3的矩阵,分别为横向及纵向,将之与温度分布图作平面卷积,即可分别得出横向及纵向的温度差分近似值。如果以T代表原始温度分布图像,则其热梯度大小近似值为:
[0092] (公式一)
[0093] 然后,再将所有标准测试程序的热梯度分布相加得到热梯度分布叠加图。
[0094] 分配单元44,用于计算热梯度分布叠加图计算热梯度大小比例,并依据此比例分配传感器数量;
[0095] 具体而言,在本发明实施例中,热梯度值越高的地方分配的传感器数目越多,首先将整个芯片面积进行水平和垂直方向逐步二分,在每次二分时根据热梯度叠加图计算这两部分的热梯度大小比例,按照该比例分配传感器数量。
[0096] 进一步的,在本方案中,设定植入微处理器中的传感器总数。然后将整个芯片面积进行水平和垂直方向逐步二分,在每次二分时根据热梯度叠加图计算这两部分的热梯度比例,按照该比例分配传感器数量。
[0097] 位置优化单元55,用于优化微处理器传感器位置。
[0098] 具体而言,在本发明实施例中,包括传感器优化位置计算:如果在芯片二分区域没有热点,则将传感器放置在该区域的几何中心;如果在芯片二分区域存在热点,则通过热梯度牵引k-means聚类算法确定传感器在该区域的位置。
[0099] 热梯度牵引k-means聚类算法是指在二维k-means聚类算法的基础上,加入热点的梯度信息,构造出三维“距离”,并进一步引入牵引因子,使得优化的传感器位置向梯度高的方向移动。
[0100] 进一步的,在本方案中如果在芯片二分区域没有热点,则将传感器放置在该区域的几何中心;如果在芯片二分区域存在热点,则通过热梯度牵引k-means聚类算法确定传感器在该区域的位置,其算法框架如下:
[0101] 5.从该区域中的N个热点中任意选择k个作为初始聚类中心。其中,k为该区域分配到的传感器数量。
[0102] 6.计算每个热点与这些聚类中心的距离,并根据最小距离对相应热点进行划分(将热点分配给与其具有最小距离的聚类中心)。
[0103] 7.使用热梯度牵引方法,重新计算每个新聚类的聚类中心。
[0104] 8.不断重复执行2、3步,直到每个聚类中心不发生变化为止,最终的聚类中心位置就是放置传感器的位置,每个传感器监控该聚类中的所有热点。
[0105] 所述距离是指:加入热点的梯度信息,构造出三维欧式“距离”。假设第j个热点和第i个聚类中心的几何坐标和梯度信息分别为:(hjx,hjy,hjg)和(cix,ciy,cig),则它们的距离为:
[0106] (公式二)
[0107] 所述热梯度牵引方法是指:引入牵引因子α,使得新的聚类中心向热梯度高的热点方向移动,如图5所示(γ=α(hjx,y-cix,y/niteration))。首先对聚类中的每一个热点进行迭代,第n次迭代时聚类中心几何坐标和热梯度信息为:
[0108] cix,y=cix,y+hjx,y+α(hjx,y-cix,y/niteration)×(hjg-cig/niteration) (公式三)[0109] cig=cig+hjg
[0110] 在对该聚类中的所有热点进行迭代计算后,新的聚类中心的几何坐标和热梯度信息为:
[0111] cnew_ix,y,g=cix,y,g/size(Ci) (公式四)
[0112] 在本发明实施例中牵引因子α值选取0.3。
[0113] 本领域普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0114] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
[0115] 综上所述,本文提供了一种微处理器动态热管理中传感器的控制方法及装置,通过计算模块的功耗数据,并依据此功耗数据获得在此功耗数据下微处理器的温度分布,然后将微处理器的温度分布经过数据处理,以获得微处理器各模块热点分布叠加图,接着计算温度分布的热梯度形成热梯度分布叠加图,并且通过计算热梯度分布叠加图计算热梯度大小比例,并依据此比例分配传感器数量,最终优化微处理器传感器位置,本方案兼顾了热分布重构和热点误差估计,可实现较高的热点误差估计精度。
[0116] 以上对本发明所提供的一种微处理器动态热管理中传感器的控制方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方案;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。