论文部分内容阅读
可重构片上系统的出现,带来了嵌入式系统的巨大飞跃,可重构系统的灵活性、高性能和高可靠性使得,其得到广泛应用。既能够提供硬件的高性能,又具有可编程性,方便用户的各种需求,特别是在运行过程中功能要求动态变化的应用,因此该系统在航天领域、加密系统、嵌入式系统教学研究方面有着广泛的应用前景。但由于可重构片上系统的灵活性带来了,设计的复杂度.特别是部分动态可重构技术的出现,使得可重构片上系统的设计能力有所不足,作为软硬件协同设计关键步骤的软硬件划分尤为突出,如何针对可重构片上系统提出一种行之有效的划分方法是一个非常重要的问题。本文集中对面向可重构片上系统软硬件协同设计中的软硬件划分进行研究,对系统的描述,粒度选择,和软硬件划分算法进行了探索和研究,主要完成了以下工作:首先,提出了一种新的静态软硬件划分算法:基于过程级(函数)的粒子群模拟退火混合算法。基本粒子群算法实现简单,运算速度快,有时会陷入局部最优,粒子群算法从个体极值和邻域极值获得更新信息,信息共享机制是单向的,信息的目的性很强有助于提高收敛速度,但是也增加了陷入局部最优的概率。结合其他搜索算法可提高搜索效率。结合模拟退火算法跳出局部最优的能力,本文构造出基于过程级(函数)的混合算法,将两者有机的结合了起来。实验表明,本文所提出的算法能在软硬件划分中的有效性和可行性,并且算法运行稳定。其次,提出了一种动态软硬件划分算法:考虑带权重任务节点深度的动态软硬件划分,该算法充分考虑了在DAG图中每个节点对后续节点的影响,考虑节点的执行时间与通信时间,依据节点之间的依赖关系进行深度优先搜索,并将该因素纳入目标函数,从而达到有效提高系统性能的目的.最后,设计了两个个简单原型系统。根据现有工具和可重构片上系统资源,设计了运行划分算法的原型系统,其中包括静态划分和动态划分两种原型系统。从整个设计流程的角度,来验证算法的可行性和有效性。