面向功耗温度的动静态相结合的NoC映射方法与流程

文档序号:11843377阅读:来源:国知局

技术特征:

1.一种面向功耗温度的动静态相结合的NoC映射方法,所述NoC是由通讯节点及计算节点组成的片上网络,映射是将应用特征图上的各个任务映射到所述NoC的计算节点上;假设所述片上网络共有N=X×Y×Z个通讯节点,所述通讯节点的序号为0,1,…,k,…,N-1,其中,k表示第k个通讯节点的序号,X表示所述NoC的行数,Y表示所述NoC的列数,Z表示所述NoC的层数,0≤k≤N-1,其特征是,所述NoC映射方法是按如下步骤进行:

步骤1、通过面向功耗温度的离散萤火虫算法建立映射库:

步骤1.1、建立NoC温度模式:

根据N个通讯节点的最高温度所在的节点位置的所有情况建立NoC温度模式,则共有N种NoC温度模式,记所述N种NoC温度模式的序号为0,1,…,k,…,N-1,第k种NoC温度模式表示第k个通讯节点的温度最高的映射方案;

步骤1.2、利用式(1)建立所述NoC总功耗P的计算模型:

P=EbitC (1)

式(1)中,Ebit为所述NoC上单位数据的通信能耗,C为所述NoC上的通信总量;并有:

<mrow> <mi>C</mi> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>M</mi> </munderover> <munderover> <mo>&Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>M</mi> </munderover> <msub> <mi>b</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>&times;</mo> <msub> <mi>h</mi> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> </msub> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>2</mn> <mo>)</mo> </mrow> </mrow>

式(2)中,bi,j表示第i个任务与第j个任务之间的通信量;hi,j表示映射后第i个任务与第j个任务之间的曼哈顿距离;M表示所述应用特征图上的任务总数;2≤M≤N;

步骤1.3、利用式(3)建立所述NoC温度矩阵T的计算模型:

<mrow> <mi>T</mi> <mo>=</mo> <mfenced open = "[" close = "]"> <mtable> <mtr> <mtd> <msub> <mi>T</mi> <mn>0</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>T</mi> <mn>1</mn> </msub> </mtd> </mtr> <mtr> <mtd> <mo>&CenterDot;</mo> </mtd> </mtr> <mtr> <mtd> <mo>&CenterDot;</mo> </mtd> </mtr> <mtr> <mtd> <mo>&CenterDot;</mo> </mtd> </mtr> <mtr> <mtd> <msub> <mi>T</mi> <mi>k</mi> </msub> </mtd> </mtr> <mtr> <mtd> <mo>&CenterDot;</mo> </mtd> </mtr> <mtr> <mtd> <mo>&CenterDot;</mo> </mtd> </mtr> <mtr> <mtd> <mo>&CenterDot;</mo> </mtd> </mtr> <mtr> <mtd> <msub> <mi>T</mi> <mrow> <mi>N</mi> <mo>-</mo> <mn>1</mn> </mrow> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>=</mo> <msup> <mi>A</mi> <mrow> <mo>-</mo> <mn>1</mn> </mrow> </msup> <msub> <mi>P</mi> <mrow> <mi>m</mi> <mi>a</mi> <mi>t</mi> <mi>r</mi> <mi>i</mi> <mi>x</mi> </mrow> </msub> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> </mrow>

式(3)中,Tk为第k个通讯节点的温度;为所述NoC的热导矩阵,Gl,k为第l个通讯节点对第k个通讯节点的热导;A-1为所述热导矩阵A的逆矩阵;Pmatrix为所述NoC上所有节点的功耗矩阵;并有:Pk为第k个通讯节点的功耗;并有:

Gl,k=K×Sl,k/dl,k (4)

式(4)中,Sl,k为所述NoC上第l个通讯节点与第k个通讯节点的接触面积,K为硅热导率;dl,k为所述第l个通讯节点与第k个通讯节点的质心距离;

Pk=ERbitBk (5)

式(5)中,Bk为所述NoC上第k个通讯节点的通信带宽;ERbit为所述NoC上单位数据通信产生的能耗,并有:

ERbit=ESbit+EBbit+EWbit (6)

式(6)中,ESbit为所述NoC上单位数据通信产生的路由器内部连线功耗,EBbit为所述NoC上单位数据通信产生的缓存能耗,EWbit为所述NoC上单位数据通信产生的路由器内部连线功耗;

步骤1.4、利用式(7)建立在第k种NoC温度模式下的目标函数fk

fk=λ1×P+λ2×max{T0,...TN-1}+λ3×Tk (7)

式(7)中,max{T0,...TN-1}表示最大节点温度;λ1、λ2、λ3为加权因子,λ1、λ2、λ3∈[0,1],且λ123=1;

步骤1.5、利用离散萤火虫算法对第k种NoC温度模式下的目标函数fk,寻找最优映射方案Mapk,从而获得N个最优映射方案{Map0,Map1,…,Mapk,…,MapN-1};由所述N个最优映射方案{Map0,Map1,…,Mapk,…,MapN-1}建立静态映射库;

步骤2、将所述静态映射库作为文本文件存入主机中;

步骤3、主机向NoC发送初始映射方案:

所述主机将任意选择的一个最优映射方案作为所述NoC的初始映射方案下载至所述NoC中;

步骤4、NoC配置映射方案:

所述NoC根据所述初始映射方案,配置所述NoC中的各个计算节点,从而完成任务映射;

步骤5、所述NoC实时监测每个通讯节点的通信量,并将进行记录;

步骤6、NoC定时向主机发送每个节点通信量:

所述NoC设置定时发送时间,在到达定时发送时间后,所述NoC将监测到的各个通讯节点上的通信量上传至主机;

步骤7、所述主机调用所述NoC温度矩阵T的计算模型获得每个通讯节点温度:

步骤8、所述主机根据最大温度节点位置匹配温度模式,调用映射库中相应映射方案:

对每个通讯节点的温度进行比较,得出最大温度所在的通讯节点序号,并从所述静态映射库中调用最大温度所在的通讯节点序号所对应的NoC温度模式作为相应通讯节点的新映射方案;

步骤9、所述主机调用所述新映射方案,并向所述NoC进行发送;

步骤10、所述NoC根据所述新映射方案配置所述NoC中的各个计算节点;从而完成新任务的映射;并返回步骤5。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1