论文部分内容阅读
片上网络(NoC, Network on Chip)作为一种新的通信架构,主要用来解决基于共享总线的多核片上系统的并行通信问题。NoC更加适合于片上系统通信,主要包括以下三方面原因:首先NoC可扩展性好,容易添加新的节点,并且提供的带宽可以和网络中节点数量保持线性关系;其次NoC可以有效的复用物理链路;第三是基于模块化NoC设计可以降低后期系统验证的复杂度。映射算法是NoC设计的关键技术之一,因此NoC映射算法分析和设计有着重要的研究意义。NoC映射就是在满足约束条件的情况下确定IP核到路由节点的映射关系,同时使得功耗、吞吐量、延迟等性能最优。NoC映射分为静态映射和动态映射。其中静态映射又可以分为单目标静态映射和多目标静态映射,实际应用中人们更加关注多个性能指标,因此多目标静态映射更加符合实际的应用需求。对于多目标映射问题,针对功耗和可靠性,通过引入新的抗体初始化算子和抗体变异算子,提出了一种改进的多目标免疫静态映射算法,算法中新的抗体初始化算子能提高初始解的质量,新的抗体变异算子能降低由变异的随机性产生的退化风险,仿真结果表明相对分支定界算法和遗传算法,改进的算法有效降低了通信功耗、提高了可靠性。为了减少算法运行时间,采用固定迭代次数与动态终止条件相结合的方式判定是否结束程序运行。并且根据网络通信负载的动态特性,提出了一种新的功耗模型,使得功耗计算更准确。对于动态映射,为了充分发挥多任务平台的优势,从资源分配的角度提出了一种基于局部聚簇的动态预映射算法(PreM-LC, PreMappingAlgorithm based on Local Clusting),当被请求任务被映射到新的处理器时,该算法被调用。由于处理器内部存储器通信消耗要比网络通功耗低,因此PreM-LC算法的基本思想是让尽可能多的通信在处理器内完成,从而降低通信功耗。PreM-LC算法从当前任务开始搜索可行的映射方案,然后计算每一种映射方案的通信功耗,从中选择内部通信量最小的作为映射方案。在单任务及多任务情况下对算法进行了仿真实验,仿真结果表明相对于最近邻居(Nearest Neighbor, NN)算法、最好邻居(Best Neighbor, BN)算法和LEC-DN算法,PreM-LC算法有效降低了通信功耗。