面向高性能DSP Matrix向量化编译器的设计与实现

面向高性能DSP Matrix向量化编译器的设计与实现

论文摘要

随着DSP处理器在通信领域和计算机领域的广泛应用,人们对DSP处理的实时性要求也越来越高。Matrix是具备自主知识产权的一款高性能DSP,其拥有向量部件和标量部件,兼具VLIW和SIMD特征。任何新的体系结构必须有配套的软件支持,才真正可用。为方便应用程序开发,充分利用Matrix的体系结构特点,提高计算效率,研究针对Matrix的向量化编译器非常重要。向量化编译技术在当今编译研究领域仍然是一个难点,自动向量化条件苛刻以及SIMD平台之间的差异性也给向量化编译带来很大难度。在此研究背景下,论文对GCC内部结构和自动向量化技术等做了深入研究,基于GCC设计与实现了Matrix的向量化编译器。论文研究的主要贡献如下:针对Matrix提出一种基于language-extend向量化算法。设计了一套针对Matrix的C扩展语言,并将其在GCC中加以实现。基于language-extend的向量化算法能够很大程度上利用Matrix的体系结构特征,实现应用程序的向量化。完成Matrix后端平台在GCC中的实现。包括Matrix指令集描述,向量寄存器、机器模式和向量长度的扩展,以及特殊向量操作的添加等。FFT在Matrix中向量化实现。研究FFT算法流程,使用Matrix的C扩展语言实现了FFT向量化程序,通过Matrix向量化编译器进行编译,汇编链接后在模拟器中正确执行。实验结果验证了language-extend向量化算法的正确性和有效性。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 研究背景
  • 1.1.1 体系结构概述
  • 1.1.2 编译器概述
  • 1.1.3 工具选择
  • 1.2 研究意义
  • 1.3 论文主要研究内容
  • 1.4 文章总体结构
  • 第二章 GCC 编译器结构分析
  • 2.1 GCC 编译器简介
  • 2.2 GCC 编译器架构
  • 2.2.1 GCC 的基本编译流程
  • 2.2.2 GCC 中遍及相关文件
  • 2.2.3 GCC 的中间表示
  • 2.3 机器描述
  • 2.4 交叉编译
  • 2.5 小结
  • 第三章 自动向量化编译技术研究
  • 3.1 自动向量化概述
  • 3.1.1 自动向量化的概念
  • 3.1.2 面向SIMD 向量化的新需求
  • 3.2 自动向量化技术研究
  • 3.2.1 自动向量化研究现状
  • 3.2.2 自动向量化存在的问题
  • 3.3 GCC 自动向量化研究
  • 3.3.1 GCC 中向量化概述
  • 3.3.2 GCC 中自动向量化识别
  • 3.3.3 GCC 中自动向量化变形
  • 3.4 小结
  • 第四章 Matrix 向量化编译器设计与实现
  • 4.1 Matrix 向量化编译器实现的方法
  • 4.1.1 交叉编译构造及测试
  • 4.1.2 Matrix 编译器实现方法
  • 4.2 基于language-extend 向量化算法
  • 4.2.1 基于language-extend 向量化算法介绍
  • 4.2.2 基于language-extend 向量化算法实现
  • 4.3 Matrix 向量指令集后端扩展实现
  • 4.3.1 机器模式
  • 4.3.2 向量寄存器描述
  • 4.3.3 指令模式
  • 4.3.4 操作添加
  • 4.4 小结
  • 第五章 FFT 在Matrix 编译器中向量化实现
  • 5.1 FFT 算法介绍
  • 5.2 FFT 算法向量化实现
  • 5.2.1 Matrix 中实现FFT 算法方法
  • 5.2.2 FFT 算法向量化具体实现
  • 5.2.3 FFT 向量化验证
  • 5.3 实验结果及分析
  • 5.3.1 实验结果
  • 5.3.2 性能分析
  • 5.4 小结
  • 结束语
  • 致谢
  • 参考文献
  • 作者在学期间取得的学术成果
  • 相关论文文献

    标签:;  ;  

    面向高性能DSP Matrix向量化编译器的设计与实现
    下载Doc文档

    猜你喜欢