本发明涉及片上网络,尤其涉及一种用于片上网络ip核映射问题的迭代方法。
背景技术:
1、随着大规模集成电路技术的发展,片上的ip核数量和通信需求不断提高。面对片上多ip核之间的高速通信需求,片上网络(network-on-chip,noc)应运而生,并作为一个候选的片上通信架构。
2、ip核映射问题的主要目标就是将一组给定的ip核合理地分配到noc的节点上。高质量的映射解能够显著提升性能指标,例如降低片上网络的通信代价和通信能耗。因此,ip核映射是片上网络设计的关键步骤。
3、然而ip核映射问题已经被证明是一个np难问题(np-hard problem)。因为ip核映射问题是一个重要且具有挑战性的问题,所以探索ip核映射问题的高效求解方法已经成为片上网络领域的研究热点。传统启发式算法因其通用性而受到研究者的青睐和关注。
4、在构造式启发算法中,一般是通过基于节点或者边构造一个初始映射解,再通过迭代改进的方法来进一步提高初始映射解的质量。由于ip核映射问题的复杂性,构造的初始映射解一般距离最优映射解仍然有一定距离。迭代改进方法通过执行特定的搜索策略可以改进初始映射解,在合理的时间内找到更优的映射解。但是,迭代改进方法通常需要大量的试错,其所得到的映射解在很大程度上取决于随机搜索技术,这也极大限制了迭代改进方法的整体性能。
技术实现思路
1、鉴于现有技术的上述不足,本发明的目的在于:提出一种用于片上网络ip核映射问题的迭代方法,利用策略模型来指导迭代搜索的过程,提升现有ip核映射问题中迭代改进方法的性能和搜索效率。
2、为达到上述目的,本发明采用的技术方案为:
3、一种用于片上网络ip核映射问题的策略模型,包括:
4、定义映射解和交换序列:
5、映射解表示为,其中,为映射解,为ip核映射问题的规模,表示将ip核分配到noc拓扑节点。需要说明的是,本发明中的表示在对应序列中的位置,用于遍历序列中的元素时起到索引作用。此处对于映射解,为在映射解序列中的位置,对于不同的序列,可同理推知。
6、交换序列表示为,其中,为交换序列,为交换操作,表示交换一个映射解中第个位置和第个位置的值,为交换操作的数量,为交换操作的序号;一映射解对应有一个以上的交换序列,一交换序列分配有一概率;
7、根据交换序列的概率为当前映射解选择交换序列;
8、将选择的交换序列作用于当前映射解产生新的映射解;
9、更新交换序列的概率,具体包括:根据映射解的通信代价判断新的映射解是否为更优的映射解,若是,为所述选择的交换序列分配高于先前概率的概率;若否,则为所述选择的交换序列分配低于先前概率的概率。
10、可选的,映射解对应的交换序列根据该映射解和需求的交换操作数量得到。
11、可选的,交换序列的概率由交换序列中各交换操作的概率相乘得到。
12、本发明采用的另一个技术方案为:
13、一种用于片上网络ip核映射问题的迭代方法,包括:
14、s1:构建上述的策略模型;
15、s2:对所述策略模型进行预训练;
16、s3:对待迭代的片上网络ip核映射设置初始映射解,作为全局最优解;
17、s4:采用训练后的策略模型为全局最优解选择交换序列;
18、s5:将选择的交换序列作用于所述全局最优解,得到新的映射解;
19、s6:更新全局最优解,具体包括:判断新的映射解是否为更优的映射解,若是,则将新的映射解更新为全局最优解;若否,则保持先前的全局最优解;
20、s7:检查终止条件,所述终止条件为达到预设的最大迭代次数,或者连续不更新全局最优解的次数达到预设次数,若满足终止条件,则迭代结束,若不满足终止条件,则回步骤s4。
21、可选的,包括:所述策略模型通过神经网络实现,步骤s1包括:
22、采用gat网络对映射解进行编码,得到映射解下每个noc拓扑节点的状态向量;
23、根据noc拓扑节点的状态向量计算选择任意两个noc拓扑节点的初始匹配度;
24、采用softmax函数对所述初始匹配度进行处理得到匹配度;选择两个noc拓扑节点对应所述交换操作,所述匹配度即交换操作的概率;
25、将交换序列中各交换操作的概率相乘得到该交换序列的概率。
26、可选的,采用gat网络对映射解进行编码,得到映射解下每个noc拓扑节点的状态向量,具体包括:
27、定义个ip核和个noc拓扑节点的表示;
28、分别采用两个gat网络对所述个ip核的表示和个noc拓扑节点的表示进行处理,得到处理后的表示;
29、将经gat网络处理后的noc拓扑节点的表示与该noc拓扑节点所分配的ip核的表示相加,得到映射解下每个noc拓扑节点的初始状态向量;
30、将映射解下每个noc拓扑节点的初始状态向量通过两个以上具有相同结构但不同参数的模块进行处理,得到映射解下每个noc拓扑节点的状态向量;所述模块的结构包括:多头自注意力层和全连接层,所述映射解下每个noc拓扑节点的初始状态向量先输入到所述多头自注意力层,然后进入全连接层,在多头自注意力层和全连接层之后,分别采用跳跃连接,最后进行层归一化后输出映射解下每个noc拓扑节点的状态向量。
31、可选的,根据noc拓扑节点的状态向量计算选择任意两个noc拓扑节点的初始匹配度,具体包括:
32、对每个noc拓扑节点的状态向量分别计算信息点值和关注点值,计算公式如下:
33、
34、其中,为选择noc拓扑节点noc的关注点值,为学习参数,为选择noc拓扑节点的信息点值,为学习参数,为映射解下noc拓扑节点的状态向量,为映射解下noc拓扑节点的状态向量;
35、根据所述信息点值和关注点值,计算选择任意两个noc拓扑节点的初始匹配度,计算公式如下:
36、
37、其中,为选择noc拓扑节点与noc拓扑节点的初始匹配度,用于控制的范围,表示如果。
38、可选的,步骤s2具体采用reinforce算法和adam优化器对所述策略模型进行预训练,训练目标和训练目标的梯度的计算公式如下:
39、
40、
41、其中,为策略模型的模型参数,为根据当前映射解与该当前映射解和交换序列产生的新的映射解的通信代价的差值,为训练目标,表示求的期望,为训练目标的梯度,为训练过程中每次独立采样的ip核映射问题的数量,对于一个采样的ip核映射问题,为当前映射解,为交换序列,为选择的概率,为当前映射解与该当前映射解和交换序列产生的新的映射解的通信代价的差值,为基线函数,表示的对数的梯度。
42、可选的,若步骤s4中选择的交换序列为两个以上,则步骤s5中得到的新的映射解的数量为两个以上,步骤s6为:
43、判断步骤s5得到的新的映射解中是否存在更优的映射解,若是,则将新的映射解更新为全局最优解;若否,则保持先前的全局最优解。
44、本发明的有益效果在于:
45、策略模型根据当前映射解和交换序列的概率选择交换序列,选择的交换序列作用于当前映射解,以产生新的映射解。并不断更新交换序列的概率,预估对于当前映射解要如何操作能够获得更高质量的解。
46、迭代方法利用策略模型中的经验知识确定来确定交换序列,不断向着最优解的方向靠拢,能够更为有效的提高初始映射解的质量。且本发明的迭代方法不直接利用模型来产生最优映射解,而是利用模型来指导映射解改进的方向。由于ip核映射问题的复杂性,通过模型直接产生最优映射解是非常困难的,利用模型来指导映射解改进的方向,这种方法更具灵活性和泛化性。