CN117951963B - 基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法及装置 - Google Patents
基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法及装置 Download PDFInfo
- Publication number
- CN117951963B CN117951963B CN202410331559.6A CN202410331559A CN117951963B CN 117951963 B CN117951963 B CN 117951963B CN 202410331559 A CN202410331559 A CN 202410331559A CN 117951963 B CN117951963 B CN 117951963B
- Authority
- CN
- China
- Prior art keywords
- power consumption
- distribution
- chip
- hamiltonian
- initial
- 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
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 168
- 238000012614 Monte-Carlo sampling Methods 0.000 title claims abstract description 57
- 238000004458 analytical method Methods 0.000 title claims abstract description 35
- 238000009826 distribution Methods 0.000 claims abstract description 214
- 238000000034 method Methods 0.000 claims abstract description 42
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 39
- 238000013461 design Methods 0.000 claims abstract description 33
- 238000005070 sampling Methods 0.000 claims abstract description 22
- 238000004364 calculation method Methods 0.000 claims description 25
- 238000005381 potential energy Methods 0.000 claims description 18
- 238000010586 diagram Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 12
- 230000015654 memory Effects 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 9
- 230000008859 change Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000001052 transient effect Effects 0.000 description 3
- 230000017525 heat dissipation Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000000342 Monte Carlo simulation Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/23—Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/08—Probabilistic or stochastic CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/08—Thermal analysis or thermal optimisation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明提供了一种基于哈密尔顿‑蒙特卡洛采样的芯片热仿分析方法及装置,涉及热仿真技术领域,该方法包括:获取芯片的核心区域的热功耗参数;基于热功耗参数和哈密尔顿‑蒙特卡洛采样算法,获取核心区域的多个随机功耗分布下的热仿真结果数据;基于各个随机功耗分布下的热仿真结果数据,确定芯片的温度范围数据。这样通过高效的哈密尔顿‑蒙特卡洛采样算法的随机功耗分布采样,实现了芯片在多个随机功耗分布下的热仿真,也即实现了芯片各种工作状态下的温度变化范围的仿真分析,提高了热仿真结果对热性能描述的完整性,缓解了无法满足芯片设计阶段对热仿真结果的信息完整性需求的问题。
Description
技术领域
本发明涉及热仿真技术领域,尤其是涉及一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法及装置。
背景技术
随着芯片晶体管密度、时钟频率的提高,在芯片可靠性分析中,热仿真技术对芯片热可靠性预测越来越重要。
现有的热仿真方案,只对芯片在确定功耗分布情况下进行稳态热仿真或瞬态热仿真,得到的结果是确定的温度分布数据或者随时间变化的温度数据。这种着眼于芯片稳态温度分布或瞬态温度变化的热仿真方案,不足以完整描述芯片工作状态下的热性能,无法满足芯片设计阶段对热仿真结果的信息完整性需求。
发明内容
本发明的目的在于提供一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法及装置,以实现芯片各种工作状态下的温度变化范围的仿真分析,提高热仿真结果对热性能描述的完整性,缓解无法满足芯片设计阶段对热仿真结果的信息完整性需求的问题。
第一方面,本发明实施例提供了一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法,包括:
获取芯片的核心区域的热功耗参数;其中,所述核心区域为产生热功耗的区域,所述热功耗参数包括位置信息、几何信息和设计功率;
基于所述热功耗参数和哈密尔顿-蒙特卡洛采样算法,获取所述核心区域的多个随机功耗分布下的热仿真结果数据;
基于各个所述随机功耗分布下的热仿真结果数据,确定所述芯片的温度范围数据。
进一步地,所述基于所述热功耗参数和哈密尔顿-蒙特卡洛采样算法,获取所述核心区域的多个随机功耗分布下的热仿真结果数据,包括:
基于所述核心区域的位置信息和几何信息,对所述核心区域进行划分,得到多个离散单元;
通过多次执行如下过程,得到所述核心区域的多个随机功耗分布下的热仿真结果数据:采用带约束的哈密尔顿-蒙特卡洛采样算法,生成所述核心区域的随机功耗分布,其中,所述哈密尔顿-蒙特卡洛采样算法的约束条件包括所述核心区域的总功率对应的最高功率限制和最低功率限制,以及单个离散单元对应的最高功率限制和最低功率限制;基于所述随机功耗分布和所述核心区域的设计功率,对所述芯片进行热仿真计算,得到所述随机功耗分布下的热仿真结果数据。
进一步地,所述采用带约束的哈密尔顿-蒙特卡洛采样算法,生成所述核心区域的随机功耗分布,包括:
通过对各个所述离散单元上的热功耗值进行预设概率分布下的随机采样,得到所述核心区域的初始功耗分布,并基于所述初始功耗分布,计算得到每个所述离散单元对应的初始势能值;其中,所述初始势能值与相应所述离散单元的热功耗值在所述预设概率分布下的概率值有关;
针对各个所述离散单元从预设高斯分布中采样辅助变值,得到初始辅助变值分布,并基于所述初始辅助变值分布,计算得到每个所述离散单元对应的初始动能值;其中,所述初始动能值与相应所述离散单元对应的辅助变值在所述预设高斯分布下的概率值有关;
基于每个所述离散单元对应的初始势能值和初始动能值,计算得到每个所述离散单元对应的初始哈密尔顿量;
通过哈密顿动力学模拟算法,对所述初始功耗分布和所述初始辅助变值分布进行更新,得到新功耗分布和新辅助变值分布;
判断所述新功耗分布是否满足所述约束条件;
如果满足所述约束条件,基于各个所述离散单元对应的初始哈密尔顿量和新哈密尔顿量,通过Metropolis算法计算得到当前接受概率;其中,各个所述离散单元对应的新哈密尔顿量是基于所述新功耗分布和所述新辅助变值分布计算得到的;
从预设数值范围内获取随机数,并判断所述随机数是否小于所述当前接受概率;
如果小于所述当前接受概率,将所述新功耗分布确定为所述核心区域的随机功耗分布。
进一步地,所述基于所述随机功耗分布和所述核心区域的设计功率,对所述芯片进行热仿真计算,得到所述随机功耗分布下的热仿真结果数据,包括:
将所述随机功耗分布和所述核心区域的设计功率带入预设的热仿真模型中进行热仿真计算,得到所述随机功耗分布下的热仿真结果数据;其中,所述热仿真模型包括有限元模型、有限体积模型或热阻模型。
进一步地,所述基于各个所述随机功耗分布下的热仿真结果数据,确定所述芯片的温度范围数据,包括:
统计各个所述热仿真结果数据中,所述芯片的每个位置下的温度最大值和温度最小值,得到所述芯片的温度范围数据。
进一步地,所述基于各个所述随机功耗分布下的热仿真结果数据,确定所述芯片的温度范围数据之后,所述方法还包括:
对所述温度范围数据进行可视化输出。
进一步地,所述对所述温度范围数据进行可视化输出,包括:
基于所述温度范围数据,生成所述芯片的温度极值分布曲面图;其中,所述温度极值分布曲面图包括温度最大值分布曲面和温度最小值分布曲面;
展示所述温度极值分布曲面图。
第二方面,本发明实施例还提供了一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析装置,包括:
获取模块,用于获取芯片的核心区域的热功耗参数;其中,所述核心区域为产生热功耗的区域,所述热功耗参数包括位置信息、几何信息和设计功率;
仿真模块,用于基于所述热功耗参数和哈密尔顿-蒙特卡洛采样算法,获取所述核心区域的多个随机功耗分布下的热仿真结果数据;
确定模块,用于基于各个所述随机功耗分布下的热仿真结果数据,确定所述芯片的温度范围数据。
第三方面,本发明实施例还提供了一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面所述方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行第一方面所述方法。
本发明实施例提供的基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法及装置,能够获取芯片的核心区域的热功耗参数;其中,核心区域为产生热功耗的区域,热功耗参数包括位置信息、几何信息和设计功率;基于热功耗参数和哈密尔顿-蒙特卡洛采样算法,获取核心区域的多个随机功耗分布下的热仿真结果数据;基于各个随机功耗分布下的热仿真结果数据,确定芯片的温度范围数据。这样通过高效的哈密尔顿-蒙特卡洛采样算法的随机功耗分布采样,实现了芯片在多个随机功耗分布下的热仿真,也即实现了芯片各种工作状态下的温度变化范围的仿真分析,提高了热仿真结果对热性能描述的完整性,缓解了无法满足芯片设计阶段对热仿真结果的信息完整性需求的问题。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法的流程示意图;
图2为本发明实施例提供的一种芯片的核心区域示意图;
图3为本发明实施例提供的一种芯片的离散单元划分示意图;
图4为本发明实施例提供的一种离散单元与有限元网格的插值映射示意图;
图5为本发明实施例提供的一种功耗分布的示意图;
图6为本发明实施例提供的另一种功耗分布的示意图;
图7为本发明实施例提供的一种芯片的温度极值分布曲面图;
图8为采样现有热仿真方案得到的一种芯片的温度分布曲面图;
图9为本发明实施例提供的一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析装置的结构示意图;
图10为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前现有的热仿真方案,着眼于芯片稳态温度分布或瞬态温度变化,而没有对于芯片各种工作状态下的温度变化范围进行仿真分析。现有的热仿真方案无法预测芯片在极端条件下的高温区域与温度峰值。芯片在不同的工作状态下,热点出现的位置是不同的,传统的稳态或瞬态热仿真不足以完整描述芯片工作状态下的热性能。另外,芯片设计的调整也依赖于热仿真提供完整的信息。基于此,本发明实施例提供的一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法及装置,采用随机功耗仿真手段,可以在稳态热仿真的基础上,得到温度的可能变化范围,实现芯片各种工作状态下的温度变化范围的仿真分析,提高热仿真结果对热性能描述的完整性,缓解无法满足芯片设计阶段对热仿真结果的信息完整性需求的问题。
为便于对本实施例进行理解,首先对本发明实施例所公开的一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法进行详细介绍。
本发明实施例提供了一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法,该方法可以由具有数据处理能力的电子设备执行。参见图1所示的一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法的流程示意图,该方法主要包括如下步骤S110至步骤S130:
步骤S110,获取芯片的核心区域的热功耗参数;其中,核心区域为产生热功耗的区域,热功耗参数包括位置信息、几何信息和设计功率。
芯片的核心区域可以为一个区域,也可以为多个区域,例如,多核CPU(CentralProcessing Unit,中央处理器)中,每个核对应的区域均属于核心区域。核心区域的位置信息用于表征该核心区域在芯片中的位置。核心区域的几何信息用于表征该核心区域的尺寸。核心区域的设计功率用于表征该核心区域的功耗大小。
步骤S120,基于热功耗参数和哈密尔顿-蒙特卡洛采样算法,获取核心区域的多个随机功耗分布下的热仿真结果数据。
其中,哈密尔顿-蒙特卡洛采样算法是一种高效的高维空间随机采样方法,能够实现芯片随机功耗分布的高效采样。
在一些可能的实施例中,上述步骤S120可以通过如下子步骤实现:
子步骤1,基于核心区域的位置信息和几何信息,对核心区域进行划分,得到多个离散单元。
基于核心区域的位置信息和几何信息,可以确定每个离散单元的位置。可以基于预设的单元尺寸将核心区域划分为大小相同的多个离散单元,离散单元的尺寸等于单元尺寸。需要说明的是,当存在多个核心区域时,不同核心区域对应的单元尺寸可以相同,也可以不同。
子步骤2,通过多次执行如下过程,得到核心区域的多个随机功耗分布下的热仿真结果数据:采用带约束的哈密尔顿-蒙特卡洛采样算法,生成核心区域的随机功耗分布,其中,哈密尔顿-蒙特卡洛采样算法的约束条件包括核心区域的总功率对应的最高功率限制和最低功率限制,以及单个离散单元对应的最高功率限制和最低功率限制;基于随机功耗分布和核心区域的设计功率,对芯片进行热仿真计算,得到随机功耗分布下的热仿真结果数据。
其中,核心区域的总功率对应的最高功率限制和最低功率限制,以及单个离散单元对应的最高功率限制和最低功率限制均可以根据实际需求设置,这里不做限定。例如,核心区域的总功率对应的最高功率限制可以设置为核心区域的设计功率的2至3倍。热仿真计算的执行次数可以根据实际需求设置,这里不做限定。
在一种可能的实现方式中,核心区域的随机功耗分布可以通过如下过程实现:
1)通过对各个离散单元上的热功耗值进行预设概率分布下的随机采样,得到核心区域的初始功耗分布,并基于初始功耗分布,计算得到每个离散单元对应的初始势能值;其中,初始势能值与相应离散单元的热功耗值在预设概率分布下的概率值有关。
预设概率分布可以但不限于为预设的高斯分布或正态分布等。记初始功耗分布为,则初始势能值/>可以通过如下公式计算得到:,其中,θi表示第i个离散单元上的热功耗值,n为离散单元的数量,/>表示初始功耗分布在预设概率分布下的概率值。
2)针对各个离散单元从预设高斯分布中采样辅助变值,得到初始辅助变值分布,并基于初始辅助变值分布,计算得到每个离散单元对应的初始动能值;其中,初始动能值与相应离散单元对应的辅助变值在预设高斯分布下的概率值有关。
可以从预设高斯分布(0,M)中采样辅助变值v,v中的每一个分量v i(即第i个离散单元对应的辅助变值)的概率分布为/>,则初始动能值可以通过如下公式计算得到:/>,其中,M为预设高斯分布的方差,M是预设的经验值。
3)基于每个离散单元对应的初始势能值和初始动能值,计算得到每个离散单元对应的初始哈密尔顿量。
哈密尔顿量为势能值与动能值之和,因此初始哈密尔顿量=初始势能值+初始动能值,即。
4)通过哈密顿动力学模拟算法,对初始功耗分布和初始辅助变值分布进行更新,得到新功耗分布和新辅助变值分布。
具体实现时,可以通过如下公式计算得到新功耗分布(θ+δθ)和新辅助变值分布(v''):
其中,是时间步长,可以根据实际需求选取,例如/>取1。
5)判断新功耗分布是否满足约束条件。
按照芯片实际的工作情况,功率分布需满足一些约束条件。例如:对一块区域的功率总和设定最高限制Pmax、最低限制Pmin(即核心区域的总功率对应的最高功率限制和最低功率限制),以及对离散单元的功率设定最高限制Umax、最低限制Umax(即单个离散单元对应的最高功率限制和最低功率限制)。
约束条件可以表示如下:
如果满足约束条件,执行步骤6);如果不满足约束条件,重新执行步骤1)。
6)基于各个离散单元对应的初始哈密尔顿量和新哈密尔顿量,通过Metropolis算法计算得到当前接受概率;其中,各个离散单元对应的新哈密尔顿量是基于新功耗分布和新辅助变值分布计算得到的。
新哈密尔顿量的具体计算过程可以参照初始哈密尔顿量的计算过程,这里不再赘述。当前接受概率可以通过如下式子计算得到:。
7)从预设数值范围内获取随机数,并判断随机数是否小于当前接受概率。
其中,预设数值范围可以为[0,1)。如果随机数小于当前接受概率,执行步骤8);如果随机数大于或等于当前接受概率,重新执行步骤1)。
8)将新功耗分布确定为核心区域的随机功耗分布。
核心区域的随机功耗分布为。
可选地,可以通过如下方式进行热仿真计算:将随机功耗分布和核心区域的设计功率带入预设的热仿真模型中进行热仿真计算,得到随机功耗分布下的热仿真结果数据;其中,热仿真模型包括有限元模型、有限体积模型或热阻模型。需要说明的是,热仿真模型并不限于有限元模型、有限体积模型和热阻模型,在其他实施例中,也可以采用其他数值仿真方法对应的热仿真模型。
步骤S130,基于各个随机功耗分布下的热仿真结果数据,确定芯片的温度范围数据。
可以统计各个热仿真结果数据中,芯片的每个位置下的温度最大值和温度最小值,得到芯片的温度范围数据。
进一步地,在步骤S130之后,还可以对温度范围数据进行可视化输出。通过可视化输出,方便用户查看和利用温度范围数据。
本实施例提供了一种可视化输出方式,如下:基于温度范围数据,生成芯片的温度极值分布曲面图;其中,温度极值分布曲面图包括温度最大值分布曲面和温度最小值分布曲面;展示温度极值分布曲面图。这样可以方便用户查看芯片不同位置温度的最大值、最小值。
本发明实施例提供的基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法,能够获取芯片的核心区域的热功耗参数;其中,核心区域为产生热功耗的区域,热功耗参数包括位置信息、几何信息和设计功率;基于热功耗参数和哈密尔顿-蒙特卡洛采样算法,获取核心区域的多个随机功耗分布下的热仿真结果数据;基于各个随机功耗分布下的热仿真结果数据,确定芯片的温度范围数据。这样通过高效的哈密尔顿-蒙特卡洛采样算法的随机功耗分布采样,实现了芯片在多个随机功耗分布下的热仿真,也即实现了芯片各种工作状态下的温度变化范围的仿真分析,提高了热仿真结果对热性能描述的完整性,缓解了无法满足芯片设计阶段对热仿真结果的信息完整性需求的问题。
为了便于理解,下面以结合有限元仿真方法为例,对上述基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法进行详细介绍。
本实施例提出了一种基于随机功耗分布的热仿真方法,结合有限元仿真方法,获取任意工况下,芯片任意位置的温度变化范围。具体过程如下:
1. 提取芯片的热功耗参数
获取芯片产生热功耗的区域(即核心区域),比如多核CPU中,每个核的位置信息、几何信息和设计功率。其中,位置信息可以通过原点坐标(如立体坐标表示的角点坐标)来表示,几何信息可以通过长、宽和高来表示,通过位置信息和几何信息可以定位核心区域。例如,图2所示芯片包括6个核心区域。
2. 对上述核心区域进行离散划分,如图3所示,每个核心区域可以划分成多个大小相同的离散单元。
需要说明的是,离散单元的尺寸和数量可以与后续热仿真时有限元网格的尺寸和数量不一致。当离散单元的尺寸、数量与有限元网格不一致时,如图4所示,可以采用插值映射的方法,将各个离散单元的热功率作用于相应有限元网格的单元结点。
3. 随机产生上述离散单元上的热功耗,代入到热仿真有限元模型中进行计算。
设总共有n个离散单元,每个离散单元上的功耗随机取值θi,其功耗分布记为:
图5和图6演示了两种不同的热功率分布(即功耗分布)。芯片的功耗分布非常复杂,采用常规的遍历方法去计算每一种功耗分布是不可能的。在图5和图6中,功耗分布简化为96个格子的取值问题,每个格子只取两个值,那么功耗组合高达7万亿亿亿次。因此需要一种高效的高维空间随机采样方法。
本实施例中采用带约束的哈密尔顿-蒙特卡洛采样方法,步骤如下:
1)、随机采样,得到功耗分布,计算/>。
2)、从高斯分布(0,M)中采样辅助变值v,即v中每一个分量v i的概率分布为,计算/>。
3)、确定哈密顿量为两者之和:
4)、按如下哈密顿动力学模拟方法,计算δθ和v'':
其中,是时间步长。
5)、约束检查:按照芯片实际的工作情况,功率分布需满足一些约束条件。例如:对一块区域的功率总和设定最高限制Pmax、最低限制Pmin(即核心区域的总功率对应的最高功率限制和最低功率限制),以及对离散单元的功率设定最高限制Umax、最低限制Umax(即单个离散单元对应的最高功率限制和最低功率限制)。
约束条件可以表示如下:
如新采样点θ+δθ不满足约束条件,转步骤1);如新采样点θ+δθ满足约束条件,转步骤6)。
6)、计算接受概率如下:
当随机生成的数小于接受概率时,转步骤7),否则转步骤1)。
7)、更新功耗分布,进行仿真计算,得到该功耗分布情况下的温度分布,并记录仿真结果。之后转步骤1),多次执行仿真计算过程。
4. 统计仿真结果数据,得到不同功耗分布下芯片任意位置温度的最大值、最小值。
5. 对处理后的温度数据进行可视化输出。
需要说明的是,本实施例中的热仿真方法,采用有限元方法进行仿真,在其他实施例中,也可以用有限体积、基于热阻模型的仿真方法等其他数值仿真方法替代,同样可以得到温度变化范围的分布数据。
将现有技术与本实施例的方案进行对比如下:
现有技术只对芯片在确定功耗分布情况下进行稳态热仿真或瞬态热仿真,得到的结果是确定的温度分布数据或者随时间变化的温度数据。对于芯片设计阶段考虑的热性能和芯片使用过程中的功耗调度而言,传统的热仿真提供的信息是不够的。
本实施例提出的随机功耗仿真手段,可以在稳态热仿真的基础上,得到温度的可能变化范围。基于温度范围数据,可以指导芯片设计阶段避免局部高温热点的产生。对于需要调度功耗的应用场景,比如CPU调用不同内核的策略,本实施例提供的温度范围数据可以用于优化调度策略。
图7示出了按照本实施例的方案得到的某芯片的片上温度最大值、最小值分布曲面,如图7所示,芯片的左侧(x轴负方向)设定了比较强的散热条件,芯片的右侧(x轴正方向)的散热条件比较差。图8示出了按照传统的均匀分布功耗设定下的稳态温度仿真结果,如图8所示,右侧(x轴正向)温度显然比可能出现的最高温度要低。因此,传统热仿真方案存在低估局部高温的情况,而本实施例提出的方法弥补了传统方案的缺陷。
综上,本实施例的关键技术点如下:
1、本实施例提出了一种预测芯片工作温度范围的仿真方案。
2、本实施例提出采用高效的哈密尔顿-蒙特卡洛方法来确定功耗分布。
3、本实施例提出了基于随机功耗分布的热仿真手段,经过数据收集和处理后,得到芯片任意位置的温度最大、最小值,从而确定温度变化范围。
对应于上述的基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法,本发明实施例还提供了一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析装置,参见图9所示的一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析装置的结构示意图,该装置包括:
获取模块901,用于获取芯片的核心区域的热功耗参数;其中,所述核心区域为产生热功耗的区域,所述热功耗参数包括位置信息、几何信息和设计功率;
仿真模块902,用于基于所述热功耗参数和哈密尔顿-蒙特卡洛采样算法,获取所述核心区域的多个随机功耗分布下的热仿真结果数据;
确定模块903,用于基于各个所述随机功耗分布下的热仿真结果数据,确定所述芯片的温度范围数据。
本发明实施例提供的基于哈密尔顿-蒙特卡洛采样的芯片热仿分析装置,能够获取芯片的核心区域的热功耗参数;其中,核心区域为产生热功耗的区域,热功耗参数包括位置信息、几何信息和设计功率;基于热功耗参数和哈密尔顿-蒙特卡洛采样算法,获取核心区域的多个随机功耗分布下的热仿真结果数据;基于各个随机功耗分布下的热仿真结果数据,确定芯片的温度范围数据。这样通过高效的哈密尔顿-蒙特卡洛采样算法的随机功耗分布采样,实现了芯片在多个随机功耗分布下的热仿真,也即实现了芯片各种工作状态下的温度变化范围的仿真分析,提高了热仿真结果对热性能描述的完整性,缓解了无法满足芯片设计阶段对热仿真结果的信息完整性需求的问题。
进一步地,上述仿真模块902具体用于:
基于所述核心区域的位置信息和几何信息,对所述核心区域进行划分,得到多个离散单元;
通过多次执行如下过程,得到所述核心区域的多个随机功耗分布下的热仿真结果数据:采用带约束的哈密尔顿-蒙特卡洛采样算法,生成所述核心区域的随机功耗分布,其中,所述哈密尔顿-蒙特卡洛采样算法的约束条件包括所述核心区域的总功率对应的最高功率限制和最低功率限制,以及单个离散单元对应的最高功率限制和最低功率限制;基于所述随机功耗分布和所述核心区域的设计功率,对所述芯片进行热仿真计算,得到所述随机功耗分布下的热仿真结果数据。
进一步地,上述仿真模块902还用于:
通过对各个所述离散单元上的热功耗值进行预设概率分布下的随机采样,得到所述核心区域的初始功耗分布,并基于所述初始功耗分布,计算得到每个所述离散单元对应的初始势能值;其中,所述初始势能值与相应所述离散单元的热功耗值在所述预设概率分布下的概率值有关;
针对各个所述离散单元从预设高斯分布中采样辅助变值,得到初始辅助变值分布,并基于所述初始辅助变值分布,计算得到每个所述离散单元对应的初始动能值;其中,所述初始动能值与相应所述离散单元对应的辅助变值在所述预设高斯分布下的概率值有关;
基于每个所述离散单元对应的初始势能值和初始动能值,计算得到每个所述离散单元对应的初始哈密尔顿量;
通过哈密顿动力学模拟算法,对所述初始功耗分布和所述初始辅助变值分布进行更新,得到新功耗分布和新辅助变值分布;
判断所述新功耗分布是否满足所述约束条件;
如果满足所述约束条件,基于各个所述离散单元对应的初始哈密尔顿量和新哈密尔顿量,通过Metropolis算法计算得到当前接受概率;其中,各个所述离散单元对应的新哈密尔顿量是基于所述新功耗分布和所述新辅助变值分布计算得到的;
从预设数值范围内获取随机数,并判断所述随机数是否小于所述当前接受概率;
如果小于所述当前接受概率,将所述新功耗分布确定为所述核心区域的随机功耗分布。
进一步地,上述仿真模块902还用于:
将所述随机功耗分布和所述核心区域的设计功率带入预设的热仿真模型中进行热仿真计算,得到所述随机功耗分布下的热仿真结果数据;其中,所述热仿真模型包括有限元模型、有限体积模型或热阻模型。
进一步地,上述确定模块903具体用于:
统计各个所述热仿真结果数据中,所述芯片的每个位置下的温度最大值和温度最小值,得到所述芯片的温度范围数据。
进一步地,上述装置还包括:
输出模块,用于对所述温度范围数据进行可视化输出。
进一步地,上述输出模块具体用于:
基于所述温度范围数据,生成所述芯片的温度极值分布曲面图;其中,所述温度极值分布曲面图包括温度最大值分布曲面和温度最小值分布曲面;
展示所述温度极值分布曲面图。
本实施例所提供的基于哈密尔顿-蒙特卡洛采样的芯片热仿分析装置,其实现原理及产生的技术效果和前述基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法实施例相同,为简要描述,基于哈密尔顿-蒙特卡洛采样的芯片热仿分析装置实施例部分未提及之处,可参考前述基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法实施例中相应内容。
如图10所示,本发明实施例提供的一种电子设备1000,包括:处理器1001、存储器1002和总线,存储器1002存储有可在处理器1001上运行的计算机程序,当电子设备1000运行时,处理器1001与存储器1002之间通过总线通信,处理器1001执行计算机程序,以实现上述基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法。
具体地,上述存储器1002和处理器1001能够为通用的存储器和处理器,这里不做具体限定。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行前面方法实施例中所述的基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法。该计算机可读存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
在这里示出和描述的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制,因此,示例性实施例的其他示例可以具有不同的值。
附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (8)
1.一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法,其特征在于,包括:
获取芯片的核心区域的热功耗参数;其中,所述核心区域为产生热功耗的区域,所述热功耗参数包括位置信息、几何信息和设计功率;
基于所述热功耗参数和哈密尔顿-蒙特卡洛采样算法,获取所述核心区域的多个随机功耗分布下的热仿真结果数据;
基于各个所述随机功耗分布下的热仿真结果数据,确定所述芯片的温度范围数据;
所述基于所述热功耗参数和哈密尔顿-蒙特卡洛采样算法,获取所述核心区域的多个随机功耗分布下的热仿真结果数据,包括:
基于所述核心区域的位置信息和几何信息,对所述核心区域进行划分,得到多个离散单元;
通过多次执行如下过程,得到所述核心区域的多个随机功耗分布下的热仿真结果数据:采用带约束的哈密尔顿-蒙特卡洛采样算法,生成所述核心区域的随机功耗分布,其中,所述哈密尔顿-蒙特卡洛采样算法的约束条件包括所述核心区域的总功率对应的最高功率限制和最低功率限制,以及单个离散单元对应的最高功率限制和最低功率限制;基于所述随机功耗分布和所述核心区域的设计功率,对所述芯片进行热仿真计算,得到所述随机功耗分布下的热仿真结果数据;
所述采用带约束的哈密尔顿-蒙特卡洛采样算法,生成所述核心区域的随机功耗分布,包括:
通过对各个所述离散单元上的热功耗值进行预设概率分布下的随机采样,得到所述核心区域的初始功耗分布,并基于所述初始功耗分布,计算得到每个所述离散单元对应的初始势能值;其中,所述初始势能值与相应所述离散单元的热功耗值在所述预设概率分布下的概率值有关;
针对各个所述离散单元从预设高斯分布中采样辅助变值,得到初始辅助变值分布,并基于所述初始辅助变值分布,计算得到每个所述离散单元对应的初始动能值;其中,所述初始动能值与相应所述离散单元对应的辅助变值在所述预设高斯分布下的概率值有关;
基于每个所述离散单元对应的初始势能值和初始动能值,计算得到每个所述离散单元对应的初始哈密尔顿量;
通过哈密顿动力学模拟算法,对所述初始功耗分布和所述初始辅助变值分布进行更新,得到新功耗分布和新辅助变值分布;
判断所述新功耗分布是否满足所述约束条件;
如果满足所述约束条件,基于各个所述离散单元对应的初始哈密尔顿量和新哈密尔顿量,通过Metropolis算法计算得到当前接受概率;其中,各个所述离散单元对应的新哈密尔顿量是基于所述新功耗分布和所述新辅助变值分布计算得到的;
从预设数值范围内获取随机数,并判断所述随机数是否小于所述当前接受概率;
如果小于所述当前接受概率,将所述新功耗分布确定为所述核心区域的随机功耗分布。
2.根据权利要求1所述的方法,其特征在于,所述基于所述随机功耗分布和所述核心区域的设计功率,对所述芯片进行热仿真计算,得到所述随机功耗分布下的热仿真结果数据,包括:
将所述随机功耗分布和所述核心区域的设计功率带入预设的热仿真模型中进行热仿真计算,得到所述随机功耗分布下的热仿真结果数据;其中,所述热仿真模型包括有限元模型、有限体积模型或热阻模型。
3.根据权利要求1所述的方法,其特征在于,所述基于各个所述随机功耗分布下的热仿真结果数据,确定所述芯片的温度范围数据,包括:
统计各个所述热仿真结果数据中,所述芯片的每个位置下的温度最大值和温度最小值,得到所述芯片的温度范围数据。
4.根据权利要求1所述的方法,其特征在于,所述基于各个所述随机功耗分布下的热仿真结果数据,确定所述芯片的温度范围数据之后,所述方法还包括:
对所述温度范围数据进行可视化输出。
5.根据权利要求4所述的方法,其特征在于,所述对所述温度范围数据进行可视化输出,包括:
基于所述温度范围数据,生成所述芯片的温度极值分布曲面图;其中,所述温度极值分布曲面图包括温度最大值分布曲面和温度最小值分布曲面;
展示所述温度极值分布曲面图。
6.一种基于哈密尔顿-蒙特卡洛采样的芯片热仿分析装置,其特征在于,包括:
获取模块,用于获取芯片的核心区域的热功耗参数;其中,所述核心区域为产生热功耗的区域,所述热功耗参数包括位置信息、几何信息和设计功率;
仿真模块,用于基于所述热功耗参数和哈密尔顿-蒙特卡洛采样算法,获取所述核心区域的多个随机功耗分布下的热仿真结果数据;
确定模块,用于基于各个所述随机功耗分布下的热仿真结果数据,确定所述芯片的温度范围数据;
所述仿真模块具体用于:
基于所述核心区域的位置信息和几何信息,对所述核心区域进行划分,得到多个离散单元;
通过多次执行如下过程,得到所述核心区域的多个随机功耗分布下的热仿真结果数据:采用带约束的哈密尔顿-蒙特卡洛采样算法,生成所述核心区域的随机功耗分布,其中,所述哈密尔顿-蒙特卡洛采样算法的约束条件包括所述核心区域的总功率对应的最高功率限制和最低功率限制,以及单个离散单元对应的最高功率限制和最低功率限制;基于所述随机功耗分布和所述核心区域的设计功率,对所述芯片进行热仿真计算,得到所述随机功耗分布下的热仿真结果数据;
所述仿真模块还用于:
通过对各个所述离散单元上的热功耗值进行预设概率分布下的随机采样,得到所述核心区域的初始功耗分布,并基于所述初始功耗分布,计算得到每个所述离散单元对应的初始势能值;其中,所述初始势能值与相应所述离散单元的热功耗值在所述预设概率分布下的概率值有关;
针对各个所述离散单元从预设高斯分布中采样辅助变值,得到初始辅助变值分布,并基于所述初始辅助变值分布,计算得到每个所述离散单元对应的初始动能值;其中,所述初始动能值与相应所述离散单元对应的辅助变值在所述预设高斯分布下的概率值有关;
基于每个所述离散单元对应的初始势能值和初始动能值,计算得到每个所述离散单元对应的初始哈密尔顿量;
通过哈密顿动力学模拟算法,对所述初始功耗分布和所述初始辅助变值分布进行更新,得到新功耗分布和新辅助变值分布;
判断所述新功耗分布是否满足所述约束条件;
如果满足所述约束条件,基于各个所述离散单元对应的初始哈密尔顿量和新哈密尔顿量,通过Metropolis算法计算得到当前接受概率;其中,各个所述离散单元对应的新哈密尔顿量是基于所述新功耗分布和所述新辅助变值分布计算得到的;
从预设数值范围内获取随机数,并判断所述随机数是否小于所述当前接受概率;
如果小于所述当前接受概率,将所述新功耗分布确定为所述核心区域的随机功耗分布。
7.一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-5中任一项所述的方法。
8.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410331559.6A CN117951963B (zh) | 2024-03-22 | 2024-03-22 | 基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410331559.6A CN117951963B (zh) | 2024-03-22 | 2024-03-22 | 基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117951963A CN117951963A (zh) | 2024-04-30 |
CN117951963B true CN117951963B (zh) | 2024-06-04 |
Family
ID=90792257
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410331559.6A Active CN117951963B (zh) | 2024-03-22 | 2024-03-22 | 基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117951963B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118627449A (zh) * | 2024-08-09 | 2024-09-10 | 鼎道智芯(上海)半导体有限公司 | 一种芯片布局的热评估方法及热评估装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110007855A (zh) * | 2019-02-28 | 2019-07-12 | 华中科技大学 | 一种硬件支持的3d堆叠nvm内存数据压缩方法及系统 |
CN113111598A (zh) * | 2021-03-10 | 2021-07-13 | 河海大学 | 强度指标空间变异流态性滑坡的流动过程分析方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8904204B2 (en) * | 2012-06-29 | 2014-12-02 | International Business Machines Corporation | Managing computing resources through aggregated core management |
US10097091B1 (en) * | 2017-10-25 | 2018-10-09 | Advanced Micro Devices, Inc. | Setting operating points for circuits in an integrated circuit chip |
DE102018010197A1 (de) * | 2018-12-18 | 2020-06-18 | GRID INVENT gGmbH | Elektronisches Element und elektrisch angesteuertes Anzeigeelement |
-
2024
- 2024-03-22 CN CN202410331559.6A patent/CN117951963B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110007855A (zh) * | 2019-02-28 | 2019-07-12 | 华中科技大学 | 一种硬件支持的3d堆叠nvm内存数据压缩方法及系统 |
CN113111598A (zh) * | 2021-03-10 | 2021-07-13 | 河海大学 | 强度指标空间变异流态性滑坡的流动过程分析方法 |
Also Published As
Publication number | Publication date |
---|---|
CN117951963A (zh) | 2024-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN117951963B (zh) | 基于哈密尔顿-蒙特卡洛采样的芯片热仿分析方法及装置 | |
Platbrood et al. | A generic approach for solving nonlinear-discrete security-constrained optimal power flow problems in large-scale systems | |
US8612781B2 (en) | Method and apparatus for application of power density multipliers optimally in a multicore system | |
CN109066687A (zh) | 一种电力系统潮流计算方法、系统及电子设备 | |
CN115455773A (zh) | 一种设计变量的多目标优化方法及装置 | |
CN113705136A (zh) | 一种集成电路自动化逻辑综合系统、方法、装置及介质 | |
Zanini et al. | Multicore thermal management using approximate explicit model predictive control | |
CN114036787A (zh) | 基于物理先验自监督学习的卫星组件热布局温度场预测 | |
CN109190284A (zh) | 一种用于断裂相场模拟的混合网格自适应方法 | |
CN109861293B (zh) | 光伏不确定性对电力系统小信号稳定性影响的评估方法 | |
CN101286185A (zh) | 基于线性插值结构的数字频率合成电路编译器实现方法 | |
CN114492251B (zh) | 超算环境的低速流场发散处理方法、装置、设备及介质 | |
CN110109385A (zh) | 综合能源系统的设备调控方法及装置 | |
CN114048691B (zh) | 基于并行计算的反应堆非能动安全系统可靠性分析平台及方法 | |
CN116191404A (zh) | 分布式电源发电预测方法、装置、电子设备及存储介质 | |
Qiu et al. | Stochastic modeling and optimization for robust power management in a partially observable system | |
CN112217215B (zh) | 一种基于psd-bpa的大型电力系统随机潮流计算方法 | |
CN114282737A (zh) | 一种短期太阳辐照强度的预测方法、装置和电子设备 | |
Rao | Linear aggregation of frontier estimators | |
Yang et al. | Hybrid energy storage configuration method for wind power microgrid based on EMD decomposition and two-stage robust approach | |
Rao | Nonlinear aggregation of frontier estimators | |
CN118094963B (zh) | 基于抽水蓄能基建工程物模型的控制方法和装置 | |
CN113127293B (zh) | 一种电子设备的热分析方法、系统及相关装置 | |
CN113343407B (zh) | 一种大规模储能电池等效优化方法及系统 | |
CN117272763B (zh) | 电池热力学仿真网格的划分方法,装置,存储介质和设备 |
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 |