发明内容
有鉴于此,本发明提供了一种散热方法及装置,能够灵活调整温度与占空比的映射表。
一方面,本发明提供了一种散热方法,包括:获取调整参数,根据所述调整参数生成至少一个温度与占空比的映射表,所述调整参数包括:占空比改变的启动温度、占空比改变的饱和温度、占空比的最小值、占空比的最大值、分段函数的每段的起始温度和终止温度以及每段的预设斜率中的任意一个或多个,还包括:
S1:根据外部指令选择所述至少一个映射表中的一个;
S2:根据所述被选中的映射表确定当前温度对应的占空比;
S3:根据所述当前温度对应的占空比确定有效时隙长度;
S4:将所述有效时隙长度发送给脉冲宽度调制PWM控制器,以使所述PWM控制器根据所述有效时隙长度控制散热装置。
进一步地,所述根据调整参数生成至少一个温度与占空比的映射表,包括:
所述调整参数包括:所述占空比改变的启动温度、所述占空比改变的饱和温度、所述占空比的最小值、所述占空比的最大值、所述分段函数的每段的起始温度和终止温度以及每段的预设斜率;
根据公式一确定分段函数中每段函数的最终斜率,其中,公式一为其中,Ki为所述分段函数中第i段的最终斜率、Dmax为所述占空比的最大值、Dmin为所述占空比的最小值、Tj为第j段的终止温度、Tj-1为所述第j段的起始温度、kj为所述第j段的预设斜率、ki为所述第i段的预设斜率,T0为所述占空比改变的启动温度、Tn为所述占空比改变的饱和温度、i、j,n均为正整数,在所述占空比改变的启动温度之前和在所述占空比改变的饱和温度之后,占空比均不改变;
根据公式二和公式三确定温度与占空比的映射关系,其中,所述公式二
为所述公式三为D(ti)=Di-1+(ti-Ti-1)Ki,其中,Di为
第i段的终止温度对应的占空比,D(ti)为在第i段函数中当温度为ti时对应的
占空比,j为正整数;
根据所述映射关系生成温度与占空比的映射表。
进一步地,所述根据所述当前温度对应的占空比确定有效时隙长度,包括:
根据公式四和当前温度对应的占空比确定有效时隙长度,其中,所述公式四为:
TSLength(ti)=ceil(TSCount*D(ti))≥TSCount*Dmax?TSCount*Dmax:ceil(TSCount*D(ti))其中,TSLength(ti)为在第i段函数中当温度为ti时对应的有效时隙长度、TSCount为每个PWM周期的时隙数。
进一步地,在所述S1之后,在所述S2之前,还包括:
向基板管理控制器BMC发送加载被选中的映射表的指令,以使所述BMC加载所述被选中的映射表。
进一步地,在所述S1之前,还包括:
通过web界面获取所述指令。
另一方面,本发明提供了一种散热装置,包括:
获取单元,用于获取调整参数,所述调整参数包括:占空比改变的启动温度、占空比改变的饱和温度、占空比的最小值、占空比的最大值、分段函数的每段的起始温度和终止温度以及每段的预设斜率中的任意一个或多个;
生成单元,用于根据所述调整参数生成至少一个温度与占空比的映射表;
选择单元,用于根据外部指令选择所述至少一个映射表中的一个;
占空比确定单元,用于根据所述被选中的映射表确定当前温度对应的占空比;
时隙确定单元,用于根据所述当前温度对应的占空比确定有效时隙长度;
时隙发送单元,用于将所述有效时隙长度发送给脉冲宽度调制PWM控制器,以使所述PWM控制器根据所述有效时隙长度控制散热装置。
进一步地,所述生成单元,包括:
斜率确定子单元,用于根据公式一确定分段函数中每段函数的最终斜率,其中,公式一为其中,Ki为所述分段函数中第i段的最终斜率、Dmax为所述占空比的最大值、Dmin为所述占空比的最小值、Tj为第j段的终止温度、Tj-1为所述第j段的起始温度、kj为所述第j段的预设斜率、ki为所述第i段的预设斜率,T0为所述占空比改变的启动温度、Tn为所述占空比改变的饱和温度、i、j,n均为正整数,在所述占空比改变的启动温度之前和在所述占空比改变的饱和温度之后,占空比均不改变;
映射关系确定子单元,用于根据公式二和公式三确定温度与占空比的映
射关系,其中,所述公式二为所述公式三为
D(ti)=Di-1+(ti-Ti-1)Ki,其中,Di为第i段的终止温度对应的占空比,D(ti)为
在第i段函数中当温度为ti时对应的占空比,j为正整数;
生成子单元,用于根据所述映射关系生成温度与占空比的映射表;
其中,所述调整参数包括:所述占空比改变的启动温度、所述占空比改变的饱和温度、所述占空比的最小值、所述占空比的最大值、所述分段函数的每段的起始温度和终止温度以及每段的预设斜率。
进一步地,所述时隙确定单元,用于根据公式四和当前温度对应的占空比确定有效时隙长度,其中,所述公式四为:
TSLength(ti)=ceil(TSCount*D(ti))≥TSCount*Dmax?TSCount*Dmax:ceil(TSCount*D(ti))其中,TSLength(ti)为在第i段函数中当温度为ti时对应的有效时隙长度、TSCount为每个PWM周期的时隙数。
进一步地,还包括:
指令发送单元,用于向基板管理控制器BMC发送加载被选中的映射表的指令,以使所述BMC加载所述被选中的映射表。
进一步地,还包括:
指令获取单元,用于通过web界面获取所述指令。
本发明提供的一种散热方法及装置,根据需要生成温度与占空比的映射表,根据外部指令可以灵活选择合适的映射表,根据被选中的映射表控制散热装置进行散热,能够根据外部指令灵活调整温度与占空比的映射表。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种散热方法,该方法可以包括以下步骤:
步骤101:获取调整参数,其中,所述调整参数包括:占空比改变的启动温度、占空比改变的饱和温度、占空比的最小值、占空比的最大值、分段函数的每段的起始温度和终止温度以及每段的预设斜率中的任意一个或多个;
步骤102:根据所述调整参数生成至少一个温度与占空比的映射表;
步骤103:根据外部指令选择所述至少一个映射表中的一个;
步骤104:根据所述被选中的映射表确定当前温度对应的占空比;
步骤105:根据所述当前温度对应的占空比确定有效时隙长度;
步骤106:将所述有效时隙长度发送给PWM(Pulse Width Modulation,脉冲宽度调制)控制器,以使所述PWM控制器根据所述有效时隙长度控制散热装置。
本发明实施例提供的一种散热方法,根据需要生成温度与占空比的映射表,根据外部指令可以灵活选择合适的映射表,根据被选中的映射表控制散热装置进行散热,能够根据外部指令灵活调整温度与占空比的映射表。
由于当前已有的映射表可能都不适合当前运行环境,为了能够满足设备对温度的要求,可以根据外部指令生成新的映射表。步骤102,包括:
A1:根据公式一确定分段函数中每段函数的最终斜率,其中,公式一为其中,Ki为所述分段函数中第i段的最终斜率、Dmax为所述占空比的最大值、Dmin为所述占空比的最小值、Tj为第j段的终止温度、Tj-1为所述第j段的起始温度、kj为所述第j段的预设斜率、ki为所述第i段的预设斜率,T0为所述占空比改变的启动温度、Tn为所述占空比改变的饱和温度、i、j,n均为正整数,在所述占空比改变的启动温度之前和在所述占空比改变的饱和温度之后,占空比均不改变;
A2:根据公式二和公式三确定温度与占空比的映射关系,其中,所述公
式二为所述公式三为D(ti)=Di-1+(ti-Ti-1)Ki,其中,
Di为第i段的终止温度对应的占空比,D(ti)为在第i段函数中当温度为ti时对
应的占空比,j为正整数;
A3:根据所述映射关系生成温度与占空比的映射表;
其中,所述调整参数包括:所述占空比改变的启动温度、所述占空比改变的饱和温度、所述占空比的最小值、所述占空比的最大值、所述分段函数的每段的起始温度和终止温度以及每段的预设斜率。
在该实现方式中,用户可以根据需要来设置调整参数,通过调整参数来灵活的定制映射表。根据用户输入的一些调整参数,可以生成一个关于占空比和温度的分段函数。
步骤105,包括:
所述根据所述当前温度对应的占空比确定有效时隙长度,包括:
根据公式四和当前温度对应的占空比确定有效时隙长度,其中,所述公式四为:
TSLength(ti)=ceil(TSCount*D(ti))≥TSCount*Dmax?TSCount*Dmax:ceil(TSCount*D(ti))其中,TSLength(ti)为在第i段函数中当温度为ti时对应的有效时隙长度、TSCount为每个PWM周期的时隙数。
其中,ceil()运算后取大于等于TSCount*D(ti)的同时不超过TSCount*Dmax的最小整数值。为了保证散热效果,有效时隙长度的确定都是在最终计算结果的基础上向上取整,当温度未达到占空比改变的饱和温度时,占空比就达到了Dmax,则取占空比为Dmax,有效时隙长度也取对应Dmax的值。
被选中的映射表可能需要通过BMC加载,在所述步骤103之后,在步骤104之前,还包括:
向BMC发送加载被选中的映射表的指令,以使所述BMC加载所述被选中的映射表。
当用户选择了一个映射表时,向BMC底层程序发送加载被选中的映射表的指令,BMC收到指令后释放存储之前的映射表的存储空间,并直接加载相应映射表到临时开辟的新的存储空间中。
在一种可能的实现方式中,在步骤103之前,还包括:
通过web界面获取所述指令。
为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本发明作进一步地详细描述。
有一块服务器主板,板卡上放置一颗AST2400的BMC,AST2400通过I2C总线与MAX6639进行通信,MAX6639被设置为PWM工作模式。
本发明实施例提供了一种散热方法,该方法可以包括以下步骤:
B1:获取调整参数,其中,所述调整参数包括:占空比改变的启动温度、占空比改变的饱和温度、占空比的最小值、占空比的最大值、分段函数的每段的起始温度和终止温度以及每段的预设斜率。
举例来说,占空比改变的启动温度为25度,占空比改变的饱和温度为65度,占空比的最小值为0,占空比的最大值为1,分段函数的第一段的起始温度为25度,终止温度为45度,预设斜率为3,分段函数的第二段的起始温度为45度,终止温度为65度,预设斜率为6。
B2:根据公式一确定分段函数中每段函数的最终斜率,其中,公式一为其中,Ki为所述分段函数中第i段的最终斜率、Dmax为所述占空比的最大值、Dmin为所述占空比的最小值、Tj为第j段的终止温度、Tj-1为所述第j段的起始温度、kj为所述第j段的预设斜率、ki为所述第i段的预设斜率,T0为所述占空比改变的启动温度、Tn为所述占空比改变的饱和温度、i、j,n均为正整数,在所述占空比改变的启动温度之前和在所述占空比改变的饱和温度之后,占空比均不改变。
其中,在所述占空比改变的启动温度之前和在所述占空比改变的饱和温度之后,占空比均不改变,在这两段中,占空比是一个固定的常数。在占空比改变的启动温度之前,所有温度对应的占空比都是占空比的最小值,在所述占空比改变的饱和温度之后,所有温度对应的占空比都是占空比的最大值。
表示按照外部输入的预设斜率ki计算得到的占空比的变化范围。由于用户输入的预设斜率可能是不准确的,因此需要通过公式一对预设斜率进行等比例缩放。具体地,如果大于(Dmax-Dmin),表示输入的ki偏大,导致占空比变化范围大于所允许的值,因此需要对所有的ki进行整体的一致缩小,以在保持各个分段函数的ki比例相同的情况下使最终的占空比范围合乎要求;如果小于(Dmax-Dmin),表示输入的ki偏小,导致占空比变化范围小于所允许的值,因此需要对所有的ki进行整体的一致放大,以在保持各个分段函数的ki比例相同的情况下使最终的占空比范围合乎要求。
一般来说,要求ki≤ki+1≤ki+2,占空比改变的启动温度大于等于待散热设备的最小温度,占空比改变的饱和温度小于等于待散热设备的最大温度。
基于B1中外部输入的参数:Dmax=1,Dmin=0,T0=25,T1=45,T2=65,k1=3,k2=6;
B3:根据公式二和公式三确定温度与占空比的映射关系,其中,所述公
式二为所述公式三为D(ti)=Di-1+(ti-Ti-1)Ki,其中,
Di为第i段的终止温度对应的占空比,D(ti)为在第i段函数中当温度为ti时对
应的占空比,j为正整数;
基于B2中的最终斜率,计算出
另外,在占空比改变的启动温度之前,所有温度对应的占空比都是占空比的最小值,在所述占空比改变的饱和温度之后,所有温度对应的占空比都是占空比的最大值。D(ti)也可以是以下形式:
B4:根据所述映射关系生成温度与占空比的映射表;
B5:根据外部指令选择所述生成的映射表;
B6:根据所述被选中的映射表确定当前温度对应的占空比;
B7:根据公式四和当前温度对应的占空比确定有效时隙长度,其中,所述公式四为:
TSLength(ti)=ceil(TSCount*D(ti))≥TSCount*Dmax?TSCount*Dmax:ceil(TSCount*D(ti))其中,TSLength(ti)为在第i段函数中当温度为ti时对应的有效时隙长度、TSCount为每个PWM周期的时隙数。
其中,MAX6639的每个PWM周期的时隙数为120。
基于B2中的D(ti),可以得出:
另外,在占空比改变的启动温度之前,所有温度对应的占空比都是占空比的最小值,在所述占空比改变的饱和温度之后,所有温度对应的占空比都是占空比的最大值。TSLength(ti)也可以是以下形式:
B8:将所述有效时隙长度发送给PWM控制器,以使所述PWM控制器根据所述有效时隙长度控制所述散热装置。
需要说明的是:至少一个温度与占空比的映射表可以存储在BMC中,用户可以通过BMC的Web界面中选择至少一个映射表中的一个。每个映射表可以存储到单独的文件中,通过文件名进行标识,用户可以通过文件名选择对应的映射表。在一种实现方式中,可以预先设置默认的映射表,在系统上电后,BMC默认加载默认的映射表,将该映射表对应的文件加载到临时开辟的存储空间中。用户登录Web,可以对映射表进行选择、设置和管理。对于新生成的映射表,可以将该映射表保存为单独的文件,保存起来,例如,保存到BMC中。
另外,在一种可能的实现方式中,预先存储至少一个预设的温度与占空比的映射表,根据外部指令选择所述至少一个映射表中的一个。
如图2、图3所示,本发明实施例提供了一种散热装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图2所示,为本发明实施例一种散热装置所在设备的一种硬件结构图,除了图2所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图3所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。本实施例提供的一种散热装置,包括:
获取单元301,用于获取调整参数,所述调整参数包括:占空比改变的启动温度、占空比改变的饱和温度、占空比的最小值、占空比的最大值、分段函数的每段的起始温度和终止温度以及每段的预设斜率中的任意一个或多个;
生成单元302,用于根据所述调整参数生成至少一个温度与占空比的映射表;
选择单元303,用于根据外部指令选择所述至少一个映射表中的一个;
占空比确定单元304,用于根据所述被选中的映射表确定当前温度对应的占空比;
时隙确定单元305,用于根据所述当前温度对应的占空比确定有效时隙长度;
时隙发送单元306,用于将所述有效时隙长度发送给脉冲宽度调制PWM控制器,以使所述PWM控制器根据所述有效时隙长度控制散热装置。
在一种可能的实现方式中,所述生成单元302,包括:
斜率确定子单元,用于根据公式一确定分段函数中每段函数的最终斜率,其中,公式一为其中,Ki为所述分段函数中第i段的最终斜率、Dmax为所述占空比的最大值、Dmin为所述占空比的最小值、Tj为第j段的终止温度、Tj-1为所述第j段的起始温度、kj为所述第j段的预设斜率、ki为所述第i段的预设斜率,T0为所述占空比改变的启动温度、Tn为所述占空比改变的饱和温度、i、j,n均为正整数,在所述占空比改变的启动温度之前和在所述占空比改变的饱和温度之后,占空比均不改变;
映射关系确定子单元,用于根据公式二和公式三确定温度与占空比的映
射关系,其中,所述公式二为所述公式三为
D(ti)=Di-1+(ti-Ti-1)Ki,其中,Di为第i段的终止温度对应的占空比,D(ti)为
在第i段函数中当温度为ti时对应的占空比,j为正整数;
生成子单元,用于根据所述映射关系生成温度与占空比的映射表;
其中,所述调整参数包括:所述占空比改变的启动温度、所述占空比改变的饱和温度、所述占空比的最小值、所述占空比的最大值、所述分段函数的每段的起始温度和终止温度以及每段的预设斜率。
在该实现方式中,所述时隙确定单元305,用于根据公式四和当前温度对应的占空比确定有效时隙长度,其中,所述公式四为:
TSLength(ti)=ceil(TSCount*D(ti))≥TSCount*Dmax?TSCount*Dmax:ceil(TSCount*D(ti))其中,TSLength(ti)为在第i段函数中当温度为ti时对应的有效时隙长度、TSCount为每个PWM周期的时隙数。
该装置还包括:
指令发送单元,用于向基板管理控制器BMC发送加载被选中的映射表的指令,以使所述BMC加载所述被选中的映射表。
指令获取单元,用于通过web界面获取所述指令。
本发明实施例提供的一种散热装置,该装置可以位于BMC中。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明实施例提供的一种散热方法及装置,具有如下有益效果:
1、本发明实施例提供的一种散热方法及装置,根据需要生成温度与占空比的映射表,根据外部指令可以灵活选择合适的映射表,根据被选中的映射表控制散热装置进行散热,能够根据外部指令灵活调整温度与占空比的映射表。
2、本发明实施例提供的一种散热方法及装置,可以根据用户需求生成温度与占空比的映射表,根据生成的映射表控制散热装置进行散热,能够更好的适应待散热装置的运行环境,对待散热装置进行散热。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。