[发明专利]一种基于改进模拟退火算法的片上网络映射方法有效
申请号: | 201711399103.X | 申请日: | 2017-12-22 |
公开(公告)号: | CN108173760B | 公开(公告)日: | 2020-11-20 |
发明(设计)人: | 方娟;赵浩炎;宗欢 | 申请(专利权)人: | 北京工业大学 |
主分类号: | H04L12/721 | 分类号: | H04L12/721;H04L12/933;H04L12/947;H04W40/10;G06N3/12 |
代理公司: | 北京思海天达知识产权代理有限公司 11203 | 代理人: | 张慧 |
地址: | 100124 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开一种基于改进模拟退火算法的片上网络映射方法,首先通过KL二分算法进行IP核到片上网络节点的映射,并将其作为模拟退火算法的初始化映射,这样就增大了模拟退火算法得到更接近最优解的解决方案的概率,然后在进行模拟退火算法,并且在模拟退火算法的迭代过程中增加记忆功能,将当前最好的状态记忆下来,以避免遗失当前最优解,从而求出全局近似最优解。通过所述映射方法,使系统的功耗得到优化。 | ||
搜索关键词: | 一种 基于 改进 模拟 退火 算法 网络 映射 方法 | ||
步骤1,建立功耗优化模型,根据公式①得到单位数据从路由节点i传输到路由节点j所产生的功耗
其中,ni,j表示单位数据在传输过程中所经过的路由节点的个数,ERbit表示路由节点内部所产生的功耗,ELbit表示单位数据通过网络中通信互联链路所产生的功耗,进而可以根据公式②得出从路由节点i到j之间通信所产生的功耗Ei,j,
其中vi,j代表路由节点i与j之间的通信量,
最后,可以根据公式③得出系统的总功耗Etotal。
其中,i,j表示路由节点,R表示节点集合;
步骤2,使用KL二分算法进行IP核到片上网络节点的初始化映射,KL二分算法的具体流程为:
1.将任务通信图中的所有子任务看成是一个节点集合;
2.对该集合进行划分操作,划分操作的步骤如下:
1)随机地将集合划分为两个包含相同节点个数的子集合a和b;
2)分别计算子集合a和b的内部通信代价和外部通信代价;
3)交换子集合a和b中的节点,直到找到一种划分,使得内部和外部通信代价之差最大;
3.对生成的新集合迭代地进行划分操作,直到每个划分后的子集合中只有2个子任务;
4.将最终得到的集合组作为片上网络的初始化映射方式;
步骤3,根据步骤1和步骤2所得结果,进行改进模拟退火算法,改进模拟退火算法在NoC映射中的具体流程:
1)按KL算法的结果进行初始化映射,以及对算法参数进行初始化;
2)计算当前映射总功耗值,并将其记录下来,作为当前最优解;
3)对映射结构进行随机扰动;
4)计算新映射总功耗值;
5)计算新老功耗的差值,若新功耗优于旧功耗,则用新功耗代替旧功耗,否则以一定的概率接受新映射结果;并且比较当前最优解和新映射总功耗值,若新功耗值优于当前最优解,则将当前最优解更新为新功耗值;
6)按照初始化时的迭代次数重复进行3)到5)步,直到达到迭代次数,再执行7);
7)温度下降,判断温度是否达到停止温度,若没有则重新跳至步骤3),否则停止迭代,记录最终得到的功耗值;
8)模拟退火算法结束后,将最终得到的功耗值与当前最优解进行比较,若当前最优解的值优于最终得到的功耗值,则将当前最优解作为全局近似最优解。最终,得到系统的近似最优功耗值。
2.如权利要求1所述的基于改进模拟退火算法的片上网络映射方法,其特征在于,步骤2中分别计算子集合A和B的内部通信代价和外部通信代价如下;计算公式为:
其中,Ia,Ib表示集合A,B的内部通信代价,Ea,Eb表示集合A,B的外部通信代价,vi,vj表示子任务节点,w(vi,vj)表示节点vi到vj的通信代价。
3.如权利要求2所述的基于改进模拟退火算法的片上网络映射方法,其特征在于,步骤2中)交换子集合A和B中的节点,直到找到一种划分,使得内部和外部通信代价之差最大,其通信代价之差D由公式④计算,D=Ia+Ib‑(Ea+Eb) ④
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京工业大学,未经北京工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201711399103.X/,转载请声明来源钻瓜专利网。