飞腾平台USB虚拟化的设计与实现

飞腾平台USB虚拟化的设计与实现

论文摘要

FT1000处理器是国防科技大学计算机学院自主研制的高性能64位通用处理器,它将系统虚拟化、网络、安全、浮点运算单元以及加速存储等主要功能融为一体。FT1000芯片上实现了8个处理器核心,每核心可以运行8线程。在系统部署时,如何充分利用片上大量计算资源成了首要面对的问题,一种方案就是使用虚拟化技术在同一处理器上同时运行多个操作系统,多个操作系统共享硬件平台的资源。飞腾处理器具备完整的硬件级虚拟化支持能力,虚拟化固件Hypervisor的配合下,可以支持多达64个虚拟分区,每个分区拥有独立的计算存储资源,运行独立的操作系统。我们将拥有飞腾处理器芯片的硬件服务器平台定义为飞腾平台,飞腾平台可以很好的实现CPU和内存的资源分区,在IO设备方面,目前只实现了硬盘、网卡和控制台的虚拟化访问。鉴于USB类型设备数目众多,应用日益广泛,在飞腾平台上实现USB设备的虚拟化已经非常必要。本文首先分析了飞腾平台固件中的硬件级虚拟化支持,然后基于对USB子系统的研究,结合飞腾平台上的设备虚拟化框架,提出了一种特定于飞腾平台的通用USB设备虚拟化访问框架FTusb。接着,详细设计了FTusb框架中的模块,总结了框架的特点,介绍了本框架相比于其他虚拟化访问设备方式的优势,并对比了X86平台上的USB设备虚拟化框架PVusb,分析了其差异。最后,论文在飞腾平台上对FTusb框架进行了实现,并进行了相应的功能性测试,验证其对虚拟USB设备访问的可行性。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 课题背景与研究意义
  • 1.2 研究内容和主要创新点
  • 1.3 论文结构
  • 第二章 飞腾平台虚拟化技术和USB子系统综述
  • 2.1 飞腾CPU 硬件级虚拟化支持
  • 2.1.1 CPU 虚拟化技术
  • 2.1.2 内存虚拟化技术
  • 2.1.3 I/O 虚拟化技术
  • 2.2 飞腾CPU 的虚拟化固件
  • 2.2.1 Hypervisor 固件
  • 2.2.2 飞腾平台逻辑域资源描述MD
  • 2.2.3 OpenBoot PROM
  • 2.3 基于飞腾处理器的虚拟化架构
  • 2.3.1 逻辑域分区管理
  • 2.3.2 飞腾平台下逻辑域间通信
  • 2.3.3 飞腾平台下I/O 设备管理
  • 2.3.4 飞腾平台下I/O 设备的虚拟化框架
  • 2.4 USB 子系统体系结构
  • 2.4.1 USB 拓扑结构
  • 2.4.2 USB 协议
  • 2.4.3 USB 子系统体系结构
  • 2.4.4 USB 设备通信流程
  • 2.5 当前USB 设备虚拟化研究
  • 2.6 本章小结
  • 第三章 FTusb框架设计
  • 3.1 基本思想和设计目标
  • 3.2 FTusb 框架
  • 3.3 FTusb 框架的主要模块设计
  • 3.3.1 FTusb 客户域代理模块
  • 3.3.2 FTusb 控制域服务模块
  • 3.3.3 FTusb 域间通信模块
  • 3.4 FTusb 框架的特点与优势
  • 3.5 本章小结
  • 第四章 FTusb的实现
  • 4.1 Kylin 客户域端代理模块的实现
  • 4.1.1 客户域端代理模块流程
  • 4.1.2 客户域端代理模块的初始化
  • 4.1.3 发送请求机制
  • 4.2 Solaris 控制域端服务模块的实现
  • 4.2.1 控制域端服务模块流程
  • 4.2.2 控制域端USB 设备的绑定
  • 4.2.3 控制域端服务模块的初始化
  • 4.2.4 处理请求机制
  • 4.3 域间通信模块的实现
  • 4.3.1 逻辑域信道通信队列的实现
  • 4.3.2 域间数据传输协议
  • 4.3.3 域间数据传输机制的实现
  • 4.4 本章小结
  • 第五章 飞腾平台USB虚拟化测试与分析
  • 5.1 飞腾平台USB 虚拟化实验环境
  • 5.1.1 硬件实现环境
  • 5.1.2 软件实现环境
  • 5.2 飞腾平台USB 虚拟化功能评测
  • 5.2.1 功能评测方法
  • 5.2.2 功能评测效果
  • 5.3 飞腾平台USB 虚拟化性能评测
  • 5.3.1 性能评测方法
  • 5.3.2 性能评测效果
  • 5.4 本章小结
  • 第六章 工作总结与展望
  • 6.1 工作总结
  • 6.2 工作展望
  • 致谢
  • 参考文献
  • 作者在学期间取得的学术成果
  • 相关论文文献

    • [1].基于自主可控计算平台的指挥控制系统架构[J]. 电子技术与软件工程 2019(21)
    • [2].飞腾处理器网络控制器的驱动设计和实现[J]. 计算机光盘软件与应用 2013(19)

    标签:;  ;  ;  

    飞腾平台USB虚拟化的设计与实现
    下载Doc文档

    猜你喜欢