基于PowerPCAltiVec模拟器的研究与实现

基于PowerPCAltiVec模拟器的研究与实现

论文摘要

在嵌入式系统设计中,工程师们通常采用模型驱动工程(MDE)的方法来建立软、硬件高层次模型。而快速虚拟原型平台正是可以在高层次抽象下模拟系统的工具软件,而不仅仅是泛函算法仿真。快速虚拟原型平台可在形式化描述中得到精细化的模拟器模型,而且可运行并测试完整的嵌入式应用软件。快速虚拟原型平台已经成为了嵌入式片上系统软、硬件协同设计的关键所在。嵌入式系统随着硬件性能的增强而不断发展,而现有虚拟原型中的单一模拟器在模拟功能及效率上不能够满足软、硬件协同开发的需求。因此在嵌入式软件系统领域研究新的模拟及模拟优化技术,在快速虚拟原型架构下开发高效高可信的模拟器有着重要的意义。过去十几年以来,科研人员主要针对虚拟原型中32位及64位嵌入式处理器的模拟器展开了大量研究,而很少关注128位协处理器模拟器。事实上,协处理器的性能直接决定了嵌入式系统在某些应用方面的性能,如多媒体、矢量绘图、通信等应用。随着128位协处理器多媒体应用等的继续增长,会给处理器虚拟原型研究领域带来更多的挑战。近似定时模拟技术(AT)、编译器优化技术(LLVM)、可变长度指令编码技术(VLE)等都是该领域存在的难题。因此本研究以挑战嵌入式系统设计和仿真的新方法为切入点,结合先进的系统建模和系统验证技术,在SimSoC虚拟原型的基础上研究了基于PowerPCAltiVec128位指令集的近似定时模拟技术、底层虚拟机(LLVM)动态编译优化技术和基于PowerPC模拟器的VLE可变长度指令编码技术以及模拟器仿真和验证技术,最终实现了高效高可信的基于SimSoC快速虚拟原型平台的PowerPCAltiVec嵌入式片上系统模拟器。本论文的主要工作有:第一,提出了构建PowerPC AltiVec128位嵌入式协处理器技术的GCC交叉编译器工具链的新方法。该工具链具有可移植性高、编译速度快、完整支持PowerPCAltiVec指令集及内建AltiVec系统函数等特点。第二,为了研究分析虚拟原型的计算和译码效率,分别采用了解释型编译、动态编译、细化动态编译技术来设计和实现PowerPC AltiVec指令集模拟器。研究了先进的用于优化模拟器执行效率的基于底层虚拟机(LLVM)动态编译技术。将可变长度指令编码技术应用于PowerPC AltiVec128位指令集模拟器,为其提供更好的编码密度,提高单位存储芯片空间的利用率。第三,在仿真实验中比较了在不同编译模式下PowerPC AltiVec指令集模拟器执行应用程序的效率和可信度。最后,通过单元测试、集成测试和系统测试对PowerPC AltiVec指令集模拟器进行完整的跟踪及测试以达到其可验证性。

论文目录

  • 摘要
  • Abstract
  • 第一章 绪论
  • 1.1 研究现状
  • 1.2 虚拟原型
  • 1.2.1 虚拟原型的概况
  • 1.2.2 虚拟原型的发展方向
  • 1.3 模型驱动工程概念
  • 1.4 本文主要研究内容说明
  • 第二章 构建 SimSoC 开发环境
  • 2.1 安装 SystemC 模拟内核及事务级建模工具库
  • 2.2 建立静态编译器
  • 2.2.1 生成 Texinfo 文档系统
  • 2.2.2 生成 GMP 多精度算术运算库
  • 2.2.3 生成 MPFR 高精度浮点运算库
  • 2.2.4 生成 Binutils 二进制工具集
  • 2.2.5 生成 GCC 静态链接库
  • 2.3 建立交叉编译工具链
  • 2.3.1 生成 Newlib 嵌入式系统文件库
  • 2.3.2 生成 powerpc-elf-gcc 交叉编译器
  • 2.3.3 生成 powerpc-elf-gdb 交叉调试器
  • 2.4 本章小结
  • 第三章 PowerPC 嵌入式协处理器 AltiVec
  • 3.1 AltiVec 协处理器技术
  • 3.2 AltiVec 寄存器
  • 3.3 AltiVec 指令集
  • 3.3.1 AltiVec 寻址方式
  • 3.3.2 AltiVec 指令集分类
  • 3.4 本章小结
  • 第四章 基于模型驱动工程的虚拟原型
  • 4.1 模型驱动工程方法
  • 4.2 系统级硬件描述语言及事务级建模方法
  • 4.3 AltiVec 的系统建模
  • 4.3.1 形式化描述
  • 4.3.2 语义功能
  • 4.3.3 中间表达式
  • 4.4 本章小结
  • 第五章 指令集模拟器编译技术
  • 5.1 解释型编译
  • 5.2 未细化动态型编译
  • 5.3 细化动态型编译
  • 5.4 底层虚拟机
  • 5.5 本章小结
  • 第六章 可变长度指令编码及内存控制器
  • 6.1 可变长度指令编码
  • 6.2 内存管理单元
  • 6.3 本章小结
  • 第七章 模拟实验及结果
  • 7.1 SimSoC 环境
  • 7.1.1 建立 SimSoC 运行环境
  • 7.1.2 模拟跟踪分析工具
  • 7.1.3 eclipse 图形调试工具
  • 7.2 模拟实验
  • 7.3 本章小结
  • 第八章 虚拟原型的验证
  • 8.1 单元测试
  • 8.2 集成测试
  • 8.2.1 集成测试用例及脚本
  • 8.2.2 集成测试过程及结果
  • 8.3 系统测试
  • 8.3.1 系统测试模型的选取
  • 8.3.2 系统测试过程及结果
  • 8.4 本章小结
  • 第九章 结论
  • 参考文献
  • 附录 1
  • 附录 2
  • 附录 3
  • 附录 4
  • 发表论文和参加科研情况说明
  • 1.攻读硕士学位期间发表的论文
  • 2.攻读硕士学位期间取得的科研成果
  • 致谢
  • 相关论文文献

    标签:;  ;  ;  ;  

    基于PowerPCAltiVec模拟器的研究与实现
    下载Doc文档

    猜你喜欢