论文摘要
超长指令字(VLIW)体系结构已经为高端数字信号处理器(DSP)所普遍采用。VLIW体系结构主要采用静态指令调度技术,因此其硬件行为很大程度上依赖于编译器的安排,这为编译器提供了广阔的舞台,也对其提出了严峻的挑战。一方面,VLIW DSP的高性能是否能够发挥出来,完全取决于编译器效率的高低;另一方面,因为编译器可以很大程度上控制芯片的运行轨迹,除了最大程度挖掘指令级并行(ILP)外,还可以通过适当的调度优化,使得DSP执行某一个程序时的功耗变小。可见对于VLIW DSP高性能低功耗编译技术的研究具有非常现实的理论与实践意义。本文的工作是863项目“32位高性能嵌入式数字信号处理器(DSP)芯片技术研究”的一部分。论文针对VLIW DSP编译器的设计与实现技术、性能优化技术、功耗优化技术进行了深入研究。主要工作分为三大部分:首先基于可重定向编译基础设施IMPACT,设计和实现了VLIW DSP的C编译器;其次针对VLIW DSP体系结构的特点,对利用谓词执行机制和软件流水进行性能优化的技术展开了研究;然后对利用SIMD指令自动向量化和循环缓冲进行低功耗优化的技术展开了研究。本文所做编译优化工作是围绕VLIWDSP体系结构展开的,并以YHFT-D4为实例进行了验证,但所提出的优化方法具有普遍的适用性。主要贡献如下:一、提出了基于互补谓词的优化方法。该方法从三方面进行编译优化:一是基于二进制决策图(BDD)谓词分析系统,建立了一种利用互补谓词机制对控制结构进行优化的方法;二是对传统着色图寄存器分配算法进行改进,给出了一种建立统一简化干涉图的新算法,减少了代码溢出;三是利用互补谓词的特性改进了指令调度中资源的利用情况和目标体系结构中谓词读取时间,提高了指令调度中的资源利用率,可以获得更高的ILP。二、提出了基于超块的统一分簇与模调度方法。使用超块作为调度单位是扩大优化范围,获得更高ILP的重要手段,并且可以处理含有控制流的循环体,增加了模调度的适用范围。VLIWDSP中的分簇结构,使得编译器必须将指令和操作数在簇间进行合理分配才能得到较好的ILP。基于超块的统一分簇与模调度方法,先使用互补谓词将中间代码变成超块,再进行模调度,在调度过程中同时进行指令和操作数的簇分配,实验证明是一种有效方法。三、在全面而深入地评述了低功耗编译技术,特别是指令级、功能级功耗模型的基础上,提出了基于SIMD指令自动向量化的低能耗编译方法。与普通指令相比,SIMD指令具有较高的能量效率。现有的一些自动生成SIMD指令的编译方法,或者只能生成一般SIMD指令,或者高度领域相关,缺乏通用性。针对此,本文提出一种基于SIMD指令自动向量化的低能耗编译方法,该方法将SIMD自动向量化的任务划分为两阶段:首先从高层中间代码识别出复杂SIMD指令的备选指令;然后在低层中间代码中经循环展开之后,用扩展的树模式匹配、以指令的能耗为代价生成真正的SIMD指令。这种方法清晰直观、通用性强。实验证明对于能耗和性能都有优化作用。四、提出了一种通过编译控制循环缓冲降低指令存储器功耗的方法。VLIWDSP中指令存储器的功耗所占比重较大。但根据DSP应用中循环较多的特点,可以采用循环缓冲来减小指令存储器的功耗。设计了一种编译器控制的循环缓冲,编译器通过功耗分析确定放入缓冲的循环体,并确定打开/关闭循环缓冲的时机。该方法在不影响性能的情况下,减小了程序运行的总功耗。五、设计与实现了VLIW DSP的优化编译器。以可重定向编译基础设施IMPACT为平台,设计与实现了VLIW DSP编译器,并从性能和功耗两方面对其进行了优化。
论文目录
相关论文文献
- [1].面向VLIW DSP结构的编译器的设计与实现[J]. 微计算机应用 2009(07)
- [2].魂芯分簇VLIW DSP上指令调度的优化[J]. 微型机与应用 2017(11)
- [3].基于VLIW DSP的可重定向编译器设计与实现[J]. 中国集成电路 2009(12)
- [4].VLIW DSP指令级精度模拟器的快速实现方法[J]. 计算机工程与设计 2013(01)
- [5].分簇VLIW DSP的SIMD编译优化[J]. 中国科学技术大学学报 2011(08)
- [6].VLIW DSP处理器下累加计算优化方法[J]. 小型微型计算机系统 2015(08)
- [7].分簇VLIW DSP上支持单双字模式选择的SIMD编译优化[J]. 计算机应用 2015(08)
- [8].一种基于寄存器压力的VLIW DSP分簇算法[J]. 计算机应用 2010(01)
- [9].面向VLIW DSP处理器的智能汇编过程语法处理方案[J]. 邵阳学院学报(自然科学版) 2016(01)
- [10].支持SIMD与簇间双字传输体系下的VLIW DSP分簇算法[J]. 计算机系统应用 2012(10)
- [11].基于数据流图的异构VLIW DSP分簇方法[J]. 计算机应用 2011(04)
- [12].基于VLIW DSP加密与认证算法的实现[J]. 计算机应用 2012(06)
- [13].一种支持同时多线程的VLIW DSP架构[J]. 电子学报 2010(02)
- [14].一种基于VLIW DSP架构的高性能取指流水线[J]. 国防科技大学学报 2011(04)
- [15].用于分组加密和认证的VLIW DSP[J]. 计算机应用与软件 2012(10)
- [16].一种支持VLIW DSP条件跳转指令的技术研究[J]. 工业控制计算机 2009(02)
标签:超长指令字论文; 编译器论文; 互补谓词执行论文; 模调度论文; 低功耗编译论文; 自动向量化论文; 循环缓冲论文;