用于寻找片上网络的任务与节点间映射方案的方法

文档序号:6597377阅读:414来源:国知局
专利名称:用于寻找片上网络的任务与节点间映射方案的方法
用于寻找片上网络的任务与节点间映射方案的方法所属领域本专利属于集成电路设计的技术领域,特别针对片上网络的多任务与多节点的映射方案的搜索过程。
背景技术
随着未来通信终端和设备的计算复杂度的增大,实时复杂系统芯片的集成规模需 求将迅速增长,一块芯片上可能会集成数十个或成百上千的处理单元,基于多核的信号处 理平台成为软件无线电的发展趋势。在这样的综合化系统中,设计可靠、高速、低功耗的高 性能芯片内通信体系成为片上系统(System on Chip, SoC)发展的挑战与机遇。传统多核 SoC的总线式通信结构无法满足大规模实时复杂数字信号处理过程中数据交换的需求,因 此提出了新一代的片上互联与通信机制——片上网络。片上网络(上每个节点也就是处理器)实现的系统主要是对实时性要求较高的复 杂通信系统或数字信号处理系统。通信与信号处理具有实时性和处理时延要求,因此,NoC 的映射方案务必要使得系统的延时尽量小。另外,片上网络是在集成电路的芯片上实现的, 为了保证芯片能够稳定的工作,芯片的温度不能高。芯片的温度是由芯片的能耗决定的,能 耗越大,芯片的温度越高。因此,在选择映射方案时,必须选择使得能耗尽量低和时延尽量 少的方案。通过查新和广泛收集文献资料,我们发现已经公开的用于寻找片上网络上任务与 节点间映射方案的方法有如下几类文献“周干民,尹勇生,胡永华等.基于蚁群优化算法的NoC映射.计算机工程与 应用.2005,41(18) 7-10. ”采用一种有效地蚁群优化算法实现了片上网络映射,在将任务 映射到片上网络节点的同时,尽可能的减少了系统的通讯功耗。该方法的目标函数为功耗, 该方法大致如下(1)根据蚂蚁的个数循环地为每个未分配的节点按照概率分配任务(此概率是通 过一种方式计算的将一个节点分配到某个任务的概率),每循环一次都要使所有节点都分 配到相应的任务,然后采用两交换法来进行局部搜索,找出功耗最小的最优解,并用最优解 的功耗值信息素衰减度和当前信息素的值来更新最优解对应的蚂蚁的信息素,通过对上述 过程多次迭代后,最后选出使功耗最小的分配方案。这种方法获得的映射方案具有较小的通讯功耗,但没有考虑系统的延时性能。文献“杨盛光,李丽,高明伦等.面向能耗和延时的NoC映射方法.电子学 报.2008,36 (5) :937-942”基于二维网格结构NoC平台,建立了基于蚁群算法的旨在优化系 统通信能耗和链路负载方差的统一目标函数。该方法的目标函数cost的计算式为cost = λ ΧΕ+(1-λ ) XVAR其中,λ为比例系数,E为能耗,VAR为链路负载方差。该方法大致如下(1)根据蚂蚁的个数循环地为每个未分配的节点按照概率分配任务(概率是通过 一种方式计算的将一个节点分配到某个任务的概率),每循环一次都要使所有节点都分配到相应的任务,然后采用两交换法来进行局部搜索,找出功耗最小解,并用最优解的功耗值 信息素衰减度和当前信息素的值来更新最优解对应的蚂蚁的信息素,通过对上述过程多次 迭代后,最后选出使目标函数cost最小的分配方案。 这种方法没有考虑通信能耗和执行时间是完全不同的物理量,获得的映射方案不 一定具有优异的性能。文献Tang lei,Shashi Kumar. A two-step genetic algorithm for mapping task graphs to a network onchip architecture. Proceedings of the Euromicro Symposium on Digital System Design 2003. Antalya,Turkey :IEEE,2003 :180-187.提出一种采用两 步遗传算法实现任务映射问题的方法。该方法大致如下(1)首先假设任务流图中所有边的延时相等,为一常数,即平均数;为每个任务分 配功能单元(如处理器、存储器等),使得系统的总延时最小(2)使用真实的数据流图的边延时,进一步优化,将功能单元分配到NoC的节点上。该方法将整个优化阶段分成了两个步骤,从而降低了计算的复杂度,缩短了计算 时间,但获得的映射方案的能耗和延时不会同时最小。Wenbiao Zhou, Yan Zhang, Zhigang Mao. Pareto based Multi-objective Mapping IP Coresonto NoC Architectures.IEEE Asia Pacific Conference on Circuits and Systems. 2006 331-334.禾口 Giuseppe Ascia,Vincenzo Catania,Maurizio Palesi. Multi-objective Mapping for Mesh-based NoCArchitectures. International Conference on Hardware/Software Dodesign and System Synthesis, 2004 :182_187. 提出采用多目标进化算法将片上网络上任务映射到基于Mesh拓扑的片上网络结构的节点 上。该方法的目标函数有两个,一个目标函数是平均数据包跳数(hop),计算式如下<formula>formula see original document page 5</formula>另一个目标函数是热点温度(T),计算式为T = Hiax(RXP),其中,R为阻抗转移矩 阵,利用K. Skadron,Μ. R. Stan和W. Huang等人发表在ISCA,03会议论文集中的文章“Temp erature-AwareMicro-architecture”中提出的热量模型工具HotSpot得到。该方法大致如 下(1)首先随机选择一些方案构成初始化方案组,根据N. Srinivas and K. Deb发表 在EvoIutionaryComputation 1995年第二卷的“Multi-objective optimization function optimization using non-dominatedsorting genetic algorithms,,提出白勺方法进支 配的遗传算法的复制、交叉和变异操作生成新的方案组,然后重复上述复制、交叉与变异操 作数次,选出使得目标函数最小的方案。该方法中采用的非支配排序运算复杂度较高、解的性能不是特别优秀。

发明内容
本专利为多任务多节点的片上网络提出一种寻找使工作能耗与响应时间同时最 小时的任务与节点间映射方案的方法,本方法的特点是得到的映射方案性能高,收敛速度 快,复杂度低。
为了便于描述,我们用向量X = (X1, X2,.. . xn. . . ,xN)表示片上网络的N个任务向 M个节点映射的一种方案,向量X的第η个位置上的Xn(0 ^ xn ^ Μ-1)代表了第η个任务 映射到某个节点的节点编号,即Xn表示了将编号为η的任务分配给了第Xn的节点。寻找能耗与响应时间同时最小的方案的步骤如下
1、随机生成一个包含K个分配方案的方案组Jt,并为每个分配方案X= (X1, X2,.. · ,XN)设定一个交叉的概率Pi和变异的概率Qi,以及总的迭代次数T,并令记录迭代的 次数的变量t = 0 ;2、求出方案组Jt中每种方案下片上网络能耗与响应时间;3、采用Deb的非支配排序法、排除法、庄家法、擂台赛法、递归法、快速排序法或改 进的快速排序法等方法之一(2007年科学出版社出版,作者为郑金华的《多目标进化算法 及其应用》中介绍)计算出方案组Jt中各方案的适应度值,该适应度值大小反映方案的优 先级,值越小优先级越高,所谓优先级别是按能耗与响应时间小为优。4、将方案组Jt中的K个方案随机分成f个方案小组,其中L是每方案小组中的方
案个数,按照第3步中确定的优先关系选出每方案小组中最优先的方案组成一个优先方案 组Qt ;5、将优先方案组Qt中的方案按随机配对,所述的配对是指按照两个方案一组进行 分组,并以步骤ι中设定的交叉的概率Pi将每对方案中的两个方案上任意一个相同位置上 的节点的编号进行互换,然后再将所有被互换后的每对方案合并起来得到方案组Qt';6、以步骤1中设定的变异概率qi改变方案组Qt'中各个方案中在任意一个位置 上的节点的编号,得到方案组Gt7、按第3步计算出来的适应度值从小到大的顺序,从方案组Jt中选择K-f个方
案,与方案组Gt的方案合并在一起,构成包含K个方案的新的方案组Gt ‘8、将方案组Jt和Gt合并成方案组Rt9、计算方案组Rt中每种方案下片上网络能耗与响应时间;10、采用 Deb 在 2002 年发表在杂志 IEEE Transactions on Evolutionary Computation 第六卷上的文章 A Fast Elitist Non-dominated Sorting Genetic Algorithm for Multi-objective Optimization =NSGA-II 中介绍的边界集产生法将方案 组Rt中的2K个方案分成多个小组,每个小组代表一个边界集,对小组编号,编号较小的小 组里的方案比编号较大的小组的方案的优先级高;所谓优先级别是按能耗与响应时间小为 优。11、初始化一个新的没有方案的方案组Ft,然后从第10步骤分好的小组中,按小组 的编号从大到小的顺序,依次将小组内的方案加入到Ft中,直到方案组Ft里的方案个数超 过K个,然后将最后加入的小组的方案全部取出,并将被最后加入的小组记为V ;12、确定第10步中每个小组中各方案的优先次序,具体方法如下12-1令小组中每个方案的距离值为0,所述的距离值表示该方案与其它方案的联 系是否紧密。12-2根据第9步计算出的各个方案的能耗的大小对方案进行倒序排列,能耗较小 的方案排在能耗较大的方案的前面,
12-3计算各方案的能耗距离,每个方案的能耗距离为排在它后面的那个方案的能 耗减去排在它前面的那个方案的能耗所得到的值,12-4根据第9步计算出的各个方案的响应时间大小对方案进行倒序排列,响应时 间较小的方案排在响应时间较大的方案的前面,12-5计算各方案的响应时间距离,每个方案的响应时间距离为排在它后面的那个 方案的响应时间减去排在它前面的那个方案的响应时间所得到的值,
12-6将各个方案的响应时间距离和能耗距离相加得到方案的距离值,12-7把能耗最小的方案和响应时间最小的方案排在最前面,然后根据距离大小对 剩余的方案进行排序,并排在能耗最小的方案和响应时间最小的方案的后面,距离值较大 的方案排在距离值较小的方案的前面,这样排在前面的方案的优先级比排在后面的方案的 优先级高,13、从经过了第12步排序后的小组V里按优先级从高到低的顺序选择方案加入到 方案组Ft,直到方案组Ft里的方案个数为K个。14、将方案组Ft中的K个方案随机分成f个方案小组,其中L是每方案小组中的方
案个数,按照第10步和第12步联合确定的优先关系选出每方案小组中最优先的方案组成 一个优先方案组Ft';15、将优先方案组Ft'中的方案再随机配对,以步骤1中设定的交叉的概率pjf 每对方案中的两个方案上任意一个相同位置上的节点的编号进行互换,然后再将所有被互 换后的每对方案合并起来得到方案组Ht16、以步骤1中设定的变异的概率Qi改变方案组Ht中各个方案中在任意一个位置 上的节点的编号,得到方案组Ht'17、根据第10步和第12步联合确定的方案组Ft中方案的优先次序,按照优先级 从高到低的顺序,从方案组Ft中选择个方案,与方案组Ht'的方案合并在一起,构成包 含K个方案的新的方案组Jt+118、如果t < T,则t = t+Ι,然后返回到步骤2,否则进入步骤1919、按照步骤3所述的方法计算出方案组Jt中各方案的适应度值,将适应度值最 小的方案,即能耗和响应时间同时最小的方案作为片上网络的任务到节点间的映射方案。本发明所述的能耗的可以为E = EPE+ENet其中,E为能耗,Epe为片上网络上所有处理节点的能耗之和,ENet为片上网络上 连接各个处理节点的通信网络的能耗。通信网络的能耗ENrt可用Terry Tao Ye, Luca Benini,Giovanni DeMicheli 发表在 DAC,02.年的会议论文集里的,,Analysis of Power Consumption on Switch Fabrics inNetwork Routers”一文中提出的能耗计算方法或 J. Hu 禾口 R. Marculescu 发表在 IEEE Transaction onComputer-Aided Design of Integrated Circuits and Systems 白勺 2005年第 24卷白勺文章“Energy—andperformance—aware mapping for regular NoC architectures” 中提出的方法计算。本发明所述的响应时间(数据从输入到输出经历的最长的延时)的计算式可以 为
D = P+TR+TW其中,D为响应时间,P为输入到输出路径上所有节点的处理时间之和,TR为输入到输出路径上所有链路的延时之和,Tff为输入到输出路径上数据包的排队与等待时间之 禾口。发明的实质与效果本发明通过将能耗和响应时间分开作为考核方案的优先指标,但在寻找最优方案 过程中又同时考虑能耗和响应时间,做到了寻找出来的方案使能耗和系统延时同时最小, 从而使采用此优选出来的方案设计出来的网络的性能达到最好,并且与其它对多个目标函 数下寻找任务与节点间映射的优先方案的方法比较,具有复杂度,实现简单的特点,通过仿 真还可以得出本发明的方法收敛速度快。


图1是有6个任务组成的任务图。图2是由16个节点组成的片上网络。1是任务,2是任务之间的业务量,3是片上网络的节点,4是片上网络的路由器。
具体实施例方式图1示出的任务图中有6个任务,图2示出的片上网络有16个节点。本实施例就 是为了寻找一种将图1所示的6个任务分配到图2所示的片上网络的16个节点上、使得映 射之后片上网络的能耗和响应时间同时达到最小值的映射方案。为了便于描述,我们用向 量X = (xi; x2, X3, x4, x5, x6)表示片上网络的6个任务向16个节点映射的一种方案,向量 X的第η个位置上的Xn(0 ^ xn ^ 15)代表了第η个任务映射到某个节点的节点编号,即Xn 表示了将编号为η的任务分配给了第Xn的节点。寻找能耗与响应时间同时最小的方案的步骤如下1、随机生成一个包含20个分配方案的方案组Jt,方案组中的各个分配方案用向量 表示为(11,1,15,9,0,15),(4,1,0,8,1,6), (7,5,15,8,7,8),(10,11,5,0,6,8),(0,6,7, 6,15,9), (14,11,11,0,8,5), (15,5,14,0,15,1),(3,0,8,7,1,9),(2,2,1,8,2,8),(3,13, 8,15,5,8), (8,8,9,12,10,2), (14,0,3,2,15,5),(5,2,4,9,0,8), (7,2,15,11,1,11),(7, 1,15,2,1,11), (9,12,3,9,10,11), (11,3,12,14,14,6),(11,12,4,7,1,9), (4,8,12,12,9, 4),(1,15,6,9,3,9)。设定各方案的交叉的概率为0. 4,变异的概率为0. 01,总的迭代次数 为100,并且记录迭代的次数的变量t = 0 ;2、求出方案组Jt中每种方案下片上网络的能耗和响应时间2-1、能耗(E)的计算公式采用E = EPE+ENet, Epe为片上网络上所有处理节点的 能耗之和,ENet为片上网络上连接各个处理节点的通信网络的能耗。网络上所有处理节点 的能耗等于任务图中所有任务的处理时间,各个任务的处理时间可以通过对各个任务的 运算量估计得到,即确定任务图的同时,确定任务的能耗。本实例中,对于各种不同的方 案,Epe 的值恒为 1. 18。采用 Terry TaoYe, Luca Benini, Giovanni De Micheli 发表在 DAC' 02. ¥白勺白勺"Analysis of PowerConsumption on Switch Fabrics in Network Routers" 一文中提出的能耗计算方法计算出各种方案下通信网络的能耗ENet,分别为54. 69,38. 09,61. 69,45. 84,43. 84,46. 39,75. 19,41. 84,46. 99,48. 59,33. 09,55. 24, 38. 14,43. 89,50. 09,40. 94,44. 64,43. 89,29. 44,53. 74。
2-2、响应时间⑶的计算式采用D = P+TR+TW,P为输入到输出路径上所有节点 的处理时间之和,TR为输入到输出路径上所有链路的延时之和,Tff为输入到输出路径上数 据包的排队与等待时间之和。本实例中,各方案的响应时间分别为0. 16,0. 1601,0. 1601, 0. 1601,0. 1601,0. 1601,0. 1602,0. 1601,0. 1601,0. 1601,0. 1601,0. 1601,0. 16,0. 16, 0. 1601,0. 1601,0. 1601,0. 1601,0. 16,0. 1601。3、采用Deb的非支配排序法(2007年科学出版社出版,作者为郑金华的《多目标 进化算法及其应用》中介绍)计算出方案组Jt中各方案的适应度值,为0. 7895,1. 6316, 0. 1579,1,1. 1579,0. 1579,0,1. 3684,0. 4737,0. 4737,1. 6316,0. 4737,1. 8947,1. 6316, 0. 4737,1. 6316,1,1. 2632,2,0. 7895,该值大小反映方案的优先级,值越小优先级越高。4、将方案组Jt中的20个方案随机分成10个方案小组,每方案小组中有2个方案, 按照第3步中确定的优先关系选出每方案小组最优先的方案,然后将从所有方案小组选出 的最优先的一个方案组成一个新的方案组Qt,新的方案组Qt中的方案为(4,1,0,8,1,6), (10,11,5,0,6,8), (0,6,7,6,15,9), (3,0,8,7,1,9),(2,2,1,8,2,8),(8,8,9,12,10,2), (5,2,4,9,0,8), (9,12,3,9,10,11), (11,12,4,7,1,9),(4,8,12,12,9,3)5、将方案组Qt中的方案按随机配对,所述的配对是指按照两个方案一组进行分 组,并以步骤1中设定的交叉的概率0.4对每对方案间在随机位置上的节点的编号进行互 换,然后再将所有被交换后的每对方案合并起来得到方案组Qt',方案组Qt'中的方案为 (10,1,0,8,1,6), (4,11,5,0,6,8), (0,6,7,6,15,9),(3,0,8,7,1,9),(2,2,1,8,2,8),(8, 8,9,12,10,2), (5,2,4,9,0,8), (9,12,3,9,10,11), (11,12,4,7,1,9), (4,8,12,12,9,3)6、以步骤1中设定的变异概率0. 01改变方案组Qt'中各个方案中在随机位置上 的节点的编号,得到方案组Gt,方案组Gt中的方案为(10,1,0,8,1,6),(4,11,5,0,6,8), (0,6,7,6,15,9), (3,0,8,7,1,9), (2,2,1,8,2,8),(8,8,9,12,10,2),(5,2,4,9,0,8), (9, 12,3,9,10,11), (11,12,4,7,1,9), (4,8,12,12,9,3)7、按适应度从小到大的顺序,从方案组Jt中选择10个方案,与方案组Gt的方案合 并在一起,构成包含20个方案的新的方案组Gt'8、将方案组Jt和Gt'合并成包含40个方案的方案组Rt,S卩(11,1,15,9,0,15), (4,1,0,8,1,6), (7,5,15,8,7,8), (10,11,5,0,6,8),(0,6,7,6,15,9),(14,11,11,0,8,5), (15,5,14,0,15,1), (3,0,8,7,1,9), (2,2,1,8,2,8),(3,1,3,8,15,5,8),(8,8,9,12,10, 2),(14,0,3,2,15,5), (5,2,4,9,0,8), (7,2,15,11,1,11),(7,1,15,2,1,11),(9,12,3,9, 10,11), (11,3,12,14,14,6), (11,12,4,7,1,9),(4,8,12,12,9,4),(1,15,6,9,3,9),(4, 1,0,8,1,6), (10,11,5,0,6,8),(0,6,7,6,15,9), (3,0,8,7,1,9), (2,2,1,8,2,8), (8,8,9, 12,10,2), (5,2,4,9,0,8), (9,12,3,9,10,11), (11,12,4,7,1,9), (4,8,12,12,9,3), (11, 3,12,14,14,6), (0,6,7,6,15,9), (11,12,4,7,1,9),(3,0,8,7,1,9),(4,1,0,8,1,6), (8, 8,9,12,10,2), (7,2,15,11,1,11), (9,12,3,9,10,11), (5,2,4,9,0,8), (4,8,12,12,9,4)9、计算方案组Rt中每种方案下片上网络能耗与响应时间,各方案的能耗分别 为54. 69,38. 09,61. 69,45. 84,43. 84,46. 39,75. 19,41. 84,46. 99,48. 59,33. 09,55. 24, 38. 14,43. 89,50. 09,40. 94,44. 64,43. 89,29. 44,53. 74,38. 09,45. 84,43. 84,41. 84,46. 99,33. 09,38. 14,40. 94,43. 89,40. 84,44. 64,43. 84,43. 89,41. 84,38. 09,33. 09, 43. 89,40. 94,38. 14,29. 44 ;各方案的响应时间分别为10,0. 16,0. 1601,0. 1601,0. 1601,0. 1601,0. 1601,0. 1602,0. 1601,0. 1601, 0. 1601,0. 1601,0. 1601,0. 16,0. 16,0. 1601,0. 1601,0. 1601,0. 1601,0. 16,0. 1601, 0. 1601,0. 1601,0. 1601,0. 1601,0. 1601,0. 1601,0. 16,0. 1601,0. 1601,0. 1601,0. 1601, 0. 1601,0. 1601,0. 1601,0. 1601,0. 1601,0. 16,0. 1601,0. 16,0. 16。11、采用 Deb 在 2002 年发表在杂志 IEEE Transactions on Evolutionary Computation 第六卷上的文章 A Fast Elitist Non-dominated Sorting Genetic Algorithm for Multi-objectiveOptimization =NSGA-II 中介绍的边界集产生法将方案 组Rt中的40个方案分成13个小组,每个小组代表一个边界集,对小组编号,编号较小的小 组里的方案比编号较大的小组的方案的优先级高;所谓优先级别是按能耗与响应时间小为 优。按上述方法得到的小组1里的方案有方案19,方案40,小组2里面的方案有方案13, 方案27,方案39,小组3里的方案有方案2,方案11,方案21,方案26,方案35,方案36,小 组4里面的方案有方案16,方案28,方案38,小组5里的方案有方案8,方案24,方案34,小组6里的方案有方案14,方案37,小组7里面的方案有方案18,方案29,方案33,小组8里 的方案有方案5,方案23,方案32,小组9里面的方案有方案4,方案17,方案22,方案30,方 案31,小组10里的方案有方案1,方案20,小组11里面的方案有方案9,方案10,方案12, 方案15,方案25,小组12里的方案有方案3,方案6,小组13里的方案有方案7。12、初始化一个新的没有方案的方案组Ft,然后从第10步骤分好的小组中,按小组 的编号从小到大的顺序,从小组1到小组13,依次将小组内的方案加入到Ft中,直到方案组 Ft里的方案个数超过20个,此时将最后加入的小组(即小组7)的方案全部取出。13、确定第10步中得到的每个小组中各方案的优先次序,具体方法如下12-1令小组中每个方案的距离值为0,所述的距离值表示该方案与其它方案的联 系是否紧密。12-2根据第9步计算出的各个方案的能耗的大小对方案进行倒序排列,能耗较小 的方案排在能耗较大的方案的前面,12-3计算各方案的能耗距离,每个方案的能耗距离为排在它后面的那个方案的能 耗减去排在它前面的那个方案的能耗所得到的值,12-4根据第9步计算出的各个方案的响应时间大小对方案进行倒序排列,响应时 间较小的方案排在响应时间较大的方案的前面12-5计算各方案的响应时间距离,每个方案的响应时间距离为排在它后面的那个 方案的响应时间减去排在它前面的那个方案的响应时间所得到的值,12-6将各个方案的响应时间距离和能耗距离相加得到方案的距离值,12-7把能耗最小的方案和响应时间最小的方案排在最前面,然后根据距离大小对 其他方案进行排序,并排在能耗最小的方案和响应时间最小的方案的后面,距离值较大的 方案排在距离值较小的方案的前面,这样排在前面的方案的优先级比排在后面的方案的优 先级高14、从第12步骤排序后的小组里按优先级高低选择方案加入方案组Ft,直到方案 组Ft里的方案个数为20个,完成后,方案组Ft中的方案为(4,8,12,12,9,4),(4,8,12,12,9,4), (5,2,4,9,0,8), (5,2,4,9,0,8), (5,2,4,9,0,8), (4,1,0,8,1,6), (8,8,9,12,10,2), (4,1,0,8,1,6), (8,8,9,12,10,2), (4,1,0,8,1,6), (8,8,9,12,10,2),(9,12,3,9,10,11), (9,12,3,9,10,11), (9,12,3,9,10,11), (3,0,8,7,1,9),(3,0,8,7,1,9),(3,0,8,7,1,9), (7,2,15,11,1,11), (7,2,15,11,1,11), (11,12,4,7,1,9)15、将方案组Ft中的20个方案随机分成10个方案小组,每方案小组中有2个方 案,按照第10和12步联合确定的优先关系选出每方案小组最优先的方案,然后将从所有方 案小组选出的最优先的一个方案组成一个新的方案组Ft',方案组Ft'中的方案包括(4, 8,12,12,9,4), (5,2,4,9,0,8), (5,2,4,9,0,8), (8,8,9,12,10,2), (8,8,9,12,10,2), (8, 8,9,12,10,2), (9,12,3,9,10,11), (3,0,8,7,1,9), (3,0,8,7,1,9), (7,2,15,11,1,11)16、将方案组Ft'中的方案再随机配对,以步骤1中设定的交叉的概率0. 4对每对方案间在随机位置上的节点的编号进行互换,然后再将所有对合并起来得到方案组Ht,即 (4,8,12,12,9,4), (5,2,4,9,0,8), (8,2,4,9,0,8), (5,8,9,12,10,2),(8,8,9,12,10,2), (8,8,9,12,10,2), (9,12,3,9,10,11), (3,0,8,7,1,9),(3,0,8,7,1,9),(7,2,15,11,1,11)17、以步骤1中设定的变异的概率0.01改变方案组Ht中各个方案中在随机位置 上的节点的编号,得到方案组 Ht',即(4,8,12,12,9,4),(5,2,4,9,0,8), (8,2,4,9,0,8), (5,8,9,12,10,2), (8,8,9,12,10,2), (8,8,9,12,10,2), (9,12,3,9,10,11), (3,0,8,7,1, 9),(3,0,8,7,1,9), (7,2,15,11,1,11)18、按适应度从小到大的顺序,从方案组Ft中选择10个方案,与方案组Ht'的方 案合并在一起,构成包含20个方案的新的方案组Jt+119、如果迭代次数t小于100,则t = t+Ι,然后返回到步骤2,进行新一轮迭代运 算,否则进入步骤19;20、按照步骤3所述的方法计算出方案组Jltltl中各方案的适应度值,将适应度值最 小的方案,即方案(5,2,9,9,5,4)作为片上网络的任务到节点间的映射方案。
权利要求
用于寻找片上网络的任务与节点间映射方案的方法,其特征在于寻找出使能耗与响应时间同时最小的任务与节点映射方案,寻找过程如下一、随机生成一个包含K个分配方案的方案组Jt,并为每个分配方案X=(x1,x2,...,xN)设定一个的交叉的概率pi和变异的概率qi,以及总的迭代次数T,并令记录迭代的次数的变量t=0;二、求出方案组Jt中每种方案下片上网络能耗与响应时间;三、计算出方案组Jt中各方案的适应度值,该适应度值大小反映方案的优先级,值越小优先级越高,所谓优先级别是按能耗与响应时间小为优;四、将方案组Jt中的K个方案随机分成个方案小组,其中L是每方案小组中的方案个数,按照第三步中确定的优先关系选出每方案小组中最优先的方案组成一个优先方案组Qt;五、将优先方案组Qt中的方案按随机配对,所述的配对是指按照两个方案一组进行分组,并以步骤1中设定的交叉的概率pi将每对方案中的两个方案上任意一个相同位置上的节点的编号进行互换,然后再将所有被互换后的每对方案合并起来得到方案组Q′t;六、以第一步中设定的变异概率qi改变方案组Q′t中各个方案中在任意一个位置上的节点的编号,得到方案组Gt;七、按第三步计算出来的适应度值从小到大的顺序,从方案组Jt中选择个方案,与方案组Gt的方案合并在一起,构成包含K个方案的新的方案组Gt′;八、将方案组Jt和Gt合并成方案组Rt;九、计算方案组Rt中每种方案下片上网络能耗与响应时间;十、将方案组Rt中的2K个方案分成多个小组,每个小组代表一个边界集,对小组编号,编号较小的小组里的方案比编号较大的小组的方案的优先级高;所谓优先级别是按能耗与响应时间小为优;十一、初始化一个新的没有方案的方案组Ft,然后从第十步分好的小组中,按小组的编号从大到小的顺序,依次将小组内的方案加入到Ft中,直到方案组Ft里的方案个数超过K个,然后将最后加入的小组的方案全部取出,并将被最后加入的小组记为V;十二、确定第十步中每个小组中各方案的优先次序,具体方法如下12-1令小组中每个方案的距离值为0,所述的距离值表示该方案与其它方案的联系是否紧密;12-2根据第9步计算出的各个方案的能耗的大小对方案进行倒序排列,能耗较小的方案排在能耗较大的方案的前面,12-3计算各方案的能耗距离,每个方案的能耗距离为排在它后面的那个方案的能耗减去排在它前面的那个方案的能耗所得到的值,12-4根据第9步计算出的各个方案的响应时间大小对方案进行倒序排列,响应时间较小的方案排在响应时间较大的方案的前面,12-5计算各方案的响应时间距离,每个方案的响应时间距离为排在它后面的那个方案的响应时间减去排在它前面的那个方案的响应时间所得到的值,12-6将各个方案的响应时间距离和能耗距离相加得到方案的距离值,12-7把能耗最小的方案和响应时间最小的方案排在最前面,然后根据距离大小对剩余的方案进行排序,并排在能耗最小的方案和响应时间最小的方案的后面,距离值较大的方案排在距离值较小的方案的前面,这样排在前面的方案的优先级比排在后面的方案的优先级高十三、从经过了第十二步排序后的小组V里按优先级从高到低的顺序选择方案加入到方案组Ft,直到方案组Ft里的方案个数为K个;十四、将方案组Ft中的K个方案随机分成个方案小组,其中L是每方案小组中的方案个数,按照第十步和第十二步中确定的优先关系选出每方案小组中最优先的方案组成一个优先方案组Ft′;十五、将优先方案组Ft′中的方案再随机配对,以第一步中设定的交叉的概率pi将每对方案中的两个方案上任意一个相同位置上的节点的编号进行互换,然后再将所有被互换后的每对方案合并起来得到方案组Ht;十六、以第一步中设定的变异的概率qi改变方案组Ht中各个方案中在任意一个位置上的节点的编号,得到方案组Ht′;十七、根据第十步和第十二步联合确定的方案组Ft中方案的优先次序,按照优先级从高到低的顺序,从方案组Ft中选择个方案,与方案组Ht′的方案合并在一起,构成包含K个方案的新的方案组Jt+1;十八、如果t<T,则t=t+1,然后返回到第二步,否则进入第十九步十九、计算出方案组JT中各方案的适应度值,将适应度值最小的方案,即能耗和响应时间同时最小的方案作为片上网络的任务到节点间的映射方案;F2010100281577C00011.tif,F2010100281577C00012.tif,F2010100281577C00021.tif,F2010100281577C00022.tif
2.根据权利要求1的用于寻找片上网络的任务与节点间映射方案的方法,其特征在于所述的能耗是片上网络上所有处理节点的能耗之和再加上连接各个处理节点的通信网 络的能耗。
3.根据权利要求1或权利要求2的用于寻找片上网络的任务与节点间映射方案的方法,其特征在于所述的响应时间为输入到输出路径上所有节点的处理时间之和加上输入 到输出路径上所有链路的延时之和再加上输入到输出路径上数据包的排队与等待时间之 禾口。
4.根据权利要求1至权利要求3的用于寻找片上网络的任务与节点间映射方案的方法,其特征在于计算各方案的适应度值可以采用Deb的非支配排序法、排除法、庄家法、擂 台赛法、递归法、快速排序法或改进的快速排序法等方法之一。
5.根据权利要求1至权利要求4的之一的用于寻找片上网络的任务与节点间映射方案的方法,其特征在于将方案组Rt中的2K个方案分成多个小组的方法可以采用Deb在 2002 年发*在杂志 IEEE Transactions on Evolutionary Computation 第 A卷上的文 章 A FastElitist Non-dominated Sorting Genetic Algorithm for Multi-obiective Optimization :NSGA_II中介绍的边界集产生法。
全文摘要
本发明提出了一种用于寻找片上网络的任务与节点间映射方案的方法,该方法的过程为初始化一个包含K个分配方案的方案组Jt,然后求出方案组Jt中每种方案下片上网络能耗与响应时间以及适应度值,再根据适度值等的大小进行优先排序、分组、交换等过程最后得到优选方案,本发明通过将能耗和响应时间分开作为考核方案的优先指标,而在寻找最优方案过程中又同时考虑能耗和响应时间,做到了寻找出来的方案使能耗和系统延时同时最小,从而使采用此优选出来的任务与节点间映射方案设计出来的网络的性能达到最好,并且与其它对多个目标函数下寻找任务与节点间映射的优先方案的方法比较,具有复杂度,实现简单的特点,通过仿真还证实了本发明的方法收敛速度快。
文档编号G06F17/50GK101799838SQ20101002815
公开日2010年8月11日 申请日期2010年1月22日 优先权日2010年1月22日
发明者凌翔, 符初生, 胡剑浩, 陈亦欧 申请人:电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1