论文部分内容阅读
随着现代数字系统的发展和FPGA(Field-Programmable Gate Array:现场可编程门阵列)生产工艺的进步,促使FPGA在数字系统设计中的地位从辅助部件提升到了核心处理器件。基于SRAM的FPGA的出现,标志着现代可重构计算的开始。由于数字系统日趋复杂,因此,设计人员希望能够以较少的资源实现复杂的系统,使系统的设计由逻辑规模转向分时复用逻辑资源,由固定的逻辑功能转向灵活可变的逻辑功能,而动态部分可重构技术正好满足此要求。可重构计算利用可重构器件的现场可编程的特性,使其兼具了硬件的高效性和软件的灵活性,是当前计算机系统结构领域的研究热点。而动态部分可重构具有的高度灵活性,对可重构计算进一步的发展具有重要的意义。鉴于动态部分可重构所具有的优势,本文以动态部分可重构为基础,对可重构计算进行研究,来提高可重构计算系统的执行效率和资源利用率,解决重构时间对系统性能的影响等问题。本文研究的内容主要包含两部分:动态部分可重构系统的设计方法和基于动态部分可重构系统的可重构计算的研究。具体内容如下:(1)动态部分可重构是本文的研究基础,为了快速、有效地设计出动态部分可重构系统,重点研究了动态部分可重构系统的设计方法,并详细阐述了系统的设计流程。通过与现存设计方法的比较和尝试,采用了基于EAPR(Early-AccessPartial Reconfiguration)的设计方法并配合PlanAhead工具来设计动态部分可重构系统,并通过两个具体的应用系统验证了设计方法的有效性和便捷性。(2)设计了一个用于研究可重构计算的动态部分可重构系统,并针对此系统建立了过程级动态软硬件划分模型,且设计了相应的软硬件划分算法,以减少应用程序的执行时间。该模型不仅能够根据应用程序中函数的参数信息确定函数的划分结果,还能够根据程序中函数的执行次数对应用程序进行动态划分,提高了系统的性能和资源利用率。(3)针对重构时间对可重构计算性能的影响,提出了基于动态部分可重构系统的顺序型应用程序模块映射算法。该模块映射算法是针对多部分重构区域的,结合动态部分可重构的特性,通过隐藏重构时间从而达到加速程序执行速度和提高系统性能的目的,最后通过实验证明了该算法的可行性和有效性。