论文部分内容阅读
可重构计算是一种新型的时空域计算模式,它利用了可重构逻辑器件的可重构特性,同时具有类似处理器的以在线编程方式实现各种应用的灵活性和类似专用集成电路的以硬件方式执行计算任务的高性能,是当前计算机系统结构领域的研究热点。部分重构技术作为可重构计算技术的重要发展趋势,能够在系统重构过程中对可重构逻辑器件上的部分资源进行重新配置,而不会影响到其它的可重构逻辑资源。相比较之前的可重构计算技术,部分重构技术具有更细粒度的时空域计算特征,能够有效地改善可重构计算系统的执行性能、资源利用率以及重构灵活性等技术指标。虽然当前的可重构逻辑器件已经对部分重构技术提供了相当充分的支持,但是因为现有的部分重构设计方法普遍存在着设计门槛高、通用性弱等缺陷,所以部分重构计算系统的应用领域受到了极大的制约。针对这一现状,本论文提出了一种具有设计便捷、通用性强等优点的基于模块的部分重构设计方法。该方法首先将应用合理地划分为具有可重构属性或者固定属性的模块,然后借鉴模块化设计方法学的思路完成各个模块的设计与实现,最终利用可重构逻辑器件的部分重构特性实现系统的运行时重构。本论文还针对利用基于模块的部分重构设计方法实现具有不同结构特征的加密算法进行了深入研究,有效地解决了算法实现过程中存在的模块间协同设计、时序调整以及通讯通道设计等关键问题。实验验证了本论文所提设计方法的有效性以及部分重构计算系统具有的低资源占用量、高重构性能等优势。和所有的可重构计算系统一样,部分重构计算系统的重构过程是整个系统的性能瓶颈。围绕如何缓解这一瓶颈效应,现有很多研究被展开,配置cache技术就是其中之一。与传统的计算系统使用的cache技术不同,部分重构过程的配置cache替换过程需要充分考虑可重构计算技术的时空域计算特征。针对配置cache的这一特点,本论文提出了多个基于代价函数的替换策略,其中各个代价函数均由反映系统执行时间域特征的计算任务历史执行信息和反映系统执行空间域特征的计算任务配置数据规模等两个部分构造而成。相比较现有的配置cache替换策略,本论文所提的算法更有效地利用了计算任务的历史执行信息,因此能够做出更优化的配置cache替换决策。实验表明本论文提出的部分重构过程的配置cache替换策略能够有效地降低cache替换过程的时间开销,提高系统的执行性能。随着半导体技术的进步,当前的可重构逻辑器件上已经可以集成“数以百万计”的基本逻辑门资源以及多种多样的用于提高系统性能的粗粒度计算逻辑单元。其中,一类能够在器件内部嵌入处理器的可重构逻辑器件的出现,使得新型的自重构计算系统引起了业界的广泛关注。自重构计算系统通过嵌入在可重构逻辑器件内部的处理器完成对系统重构过程的控制,无需调用器件外部的配置端口,能够提高重构性能、减少相关外设。现有的基于可重构逻辑器件的嵌入式系统开发流程不能够直接为自重构计算系统的研发提供足够的支持,因此本论文提出了一种将其与基于模块的部分重构设计方法相结合的设计方法,并重点研究了在系统设计过程中如何针对系统实现需求进行系统部件选型与设计以及在系统自重构过程中如何解决对内部配置访问端口进行驱动等关键问题。实验验证了本论文所提设计方法的可行性和有效性以及自重构计算系统具有的重构性能优势。综上所述,本论文所做工作的主要贡献体现在以下三个方面:1)提出了一种具有开发便捷、通用性强等优点的基于模块的部分重构设计方法,并在国内外首次将基于模块的部分重构技术应用于加密算法的设计与实现;2)提出了多个综合考虑了计算任务的历史执行信息及其配置数据规模的部分重构过程的配置cache替换策略,有效地减少了配置cache替换过程的时间开销;3)提出了将现有基于可重构逻辑器件的嵌入式系统开发流程与基于模块的部分重构设计方法相结合的设计方法,设计并实现了动态可重构的自重构计算系统。