基于GCC的通信专用矢量处理器编译器的研究与开发
摘要 | 第5-6页 |
abstract | 第6-7页 |
缩略词表 | 第14-15页 |
第一章 绪论 | 第15-21页 |
1.1 研究工作的背景 | 第15-16页 |
1.2 开源编译器项目国内外研究历史与现状 | 第16-19页 |
1.2.1 开源编译器项目的优势 | 第16-17页 |
1.2.2 开源编译器选择标准 | 第17页 |
1.2.3 开源编译器项目介绍 | 第17-18页 |
1.2.4 最终选择 | 第18-19页 |
1.3 研究内容与意义 | 第19页 |
1.4 本论文的结构安排 | 第19-21页 |
第二章 GCC编译器分析 | 第21-38页 |
2.1 GCC简介 | 第21页 |
2.2 GCC系统结构 | 第21-23页 |
2.3 GCC后端移植技术 | 第23-37页 |
2.3.1 GCC的目标宏定义文件 | 第23-28页 |
2.3.1.1 存储和数据类型布局 | 第24-25页 |
2.3.1.2 寄存器的用法 | 第25页 |
2.3.1.3 寄存器类别 | 第25-27页 |
2.3.1.4 帧栈布局 | 第27页 |
2.3.1.5 汇编输出 | 第27-28页 |
2.3.2 GCC的目标机器描述文件 | 第28-36页 |
2.3.2.1 指令模式定义 | 第30-31页 |
2.3.2.2 扩展模式定义 | 第31-33页 |
2.3.2.3 指令属性定义 | 第33页 |
2.3.2.4 迭代模式定义 | 第33-34页 |
2.3.2.5 指令延迟定义 | 第34-35页 |
2.3.2.6 指令拆分定义 | 第35-36页 |
2.3.2.7 窥孔优化定义 | 第36页 |
2.3.3 GCC的辅助函数文件 | 第36-37页 |
2.4 本章小结 | 第37-38页 |
第三章 矢量处理器体系结构设计 | 第38-53页 |
3.1 矢量处理器概述 | 第38页 |
3.2 矢量处理器设计方法 | 第38-40页 |
3.3 矢量处理器硬件结构设计 | 第40-43页 |
3.4 矢量处理器指令集设计 | 第43-49页 |
3.4.1 控制类指令 | 第43-44页 |
3.4.2 标量运算类指令 | 第44-45页 |
3.4.3 矢量运算类指令 | 第45-47页 |
3.4.4 存取类指令 | 第47页 |
3.4.5 通信专用指令 | 第47-48页 |
3.4.6 指令编码方式 | 第48-49页 |
3.5 矢量处理器流水线设计 | 第49-52页 |
3.6 本章小结 | 第52-53页 |
第四章 矢量处理器的GCC后端移植实现 | 第53-80页 |
4.1 矢量处理器的目标机器宏 | 第53-59页 |
4.1.1 寄存器 | 第53-55页 |
4.1.2 寄存器类别 | 第55-56页 |
4.1.3 帧栈布局 | 第56-58页 |
4.1.4 汇编输出 | 第58-59页 |
4.2 矢量处理器的目标机器描述 | 第59-67页 |
4.2.1 函数的初始化和退出 | 第59-60页 |
4.2.2 函数调用 | 第60-61页 |
4.2.3 跳转操作 | 第61-64页 |
4.2.3.1 条件跳转 | 第61-63页 |
4.2.3.2 无条件跳转 | 第63-64页 |
4.2.4 存储访问操作 | 第64-65页 |
4.2.5 算术操作 | 第65-67页 |
4.3 矢量处理器编译器移植测试 | 第67-78页 |
4.3.1 编译环境介绍 | 第67-69页 |
4.3.2 仿真平台介绍 | 第69-70页 |
4.3.3 编译器功能测试 | 第70-78页 |
4.3.3.1 基本指令测试 | 第70-75页 |
4.3.3.2 通信矢量指令测试 | 第75-78页 |
4.4 矢量处理器编译器性能分析 | 第78-79页 |
4.5 本章小结 | 第79-80页 |
第五章 全文总结与展望 | 第80-82页 |
5.1 工作总结 | 第80-81页 |
5.2 展望 | 第81-82页 |
致谢 | 第82-83页 |
参考文献 | 第83-85页 |
攻读硕士期间获得成果 | 第85-86页 |
附件 | 第86-87页 |