论文部分内容阅读
本文研究了片上系统(SoC)及基于该系统的硬软件划分技术,研究了常用的几种划分算法,提出了一种比较高效的硬软件划分算法,改进的微粒群算法。该算法原理简单,易于并行,为片上系统的硬软件划分问题提供了新的途径。
全文首先对片上系统的概念、特征与发展状况进行了研究,然后对硬软件划分的概念、步骤、方法、划分中出现的问题以及常用的划分算法进行了研究。而面对日益增大的系统规模,针对由IP核集成起来的片上系统,硬软件任务划分是片上系统设计的重要环节,对系统的后续设计实现、系统整体性能和成本都有较大的影响。硬软件划分是片上系统设计时要解决的难点之一。
本文着重研究了微粒群算法在片上系统硬软件划分问题中的应用。具体包括:对基本微粒群算法的定义、分析和建模,并在此基础上提出改进的微粒群算法。在两个方面做出了改进:全局搜索能力和局部收敛能力。惯性系数w设置的合适与否,对形成本地和全局探索的平衡影响很大。为了既不错过本地最优位置,又能及时向全局最优位置靠拢,设置了新的惯性函数和适应度函数,并加入了“吸引”和“扩散”两个算子,充分利用了不同阶段微粒的适应度值,使原来只依靠历史信息进行搜索的算法更贴近应用特征,也更容易收敛于最优解。并对改进后的算法性能进行测试,与基本微粒群算法及遗传算法的性能做比较,通过三者在成本及划分时间上的对比,来证明改进的微粒群算法的优越性。结果表明,改进的微粒群算法是可行的和有效的,对于高维情形效果更佳。