基于虚拟机的MS Windows兼容片上系统固件技术研究

来源 :北京大学 | 被引量 : 0次 | 上传用户:jizhe621
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着半导体技术的发展和消费类电子产品复杂度的不断增长,基于平台的设计(Platform-Based Design)方法逐渐成为片上系统(System-on-Chip,SoC)设计主流,且SoC运行的软件系统日益复杂。丰富的IP核资源与复杂的软件系统之间的兼容性问题,为片上系统的设计和验证带来巨大挑战。虚拟化技术支持在不同层次对计算机系统进行抽象和虚拟,是解决软硬件兼容性问题的有效手段。然而已有虚拟化技术要求硬件支持且性能开销较大等特点,难以有效解决SoC硬件与大型商业闭源软件之间兼容性问题。固件能够直接访问和控制计算机系统所有硬件资源,且具备轻量级和易于修改等优点,因此结合虚拟化技术与固件技术不仅能够利用虚拟化技术解决软硬件兼容性问题,而且能够基于固件技术提供轻量级和高性能的实现,以适用于SoC设计与验证。为此,本文以基于开放式片上总线架构的x86 SoC为研究实例,展开对基于虚拟机的固件(简称固件层虚拟化)技术的研究,主要研究内容包括以下四个方面:  1)提出了一种兼容Microsoft Windows(简称MS Windows)的固件设计。该设计以中断服务为单位,对面向全系统模拟器的BIOS(Basic Input/OutputSystem)进行划分得到中断服务例程集。结合中断服务例程集和开源固件并设计其接口模块,该固件设计既能利用已有开源固件初始化硬件系统,又可提供MS Windows等操作系统所需中断服务例程。借助于接口模块,该固件设计可快速集成不同开源固件,从而支持不同体系结构的硬件平台。实验结果表明该固件设计具备功能正确性、操作系统兼容性和可移植性,并能提供与商业PCBIOS相当的启动性能。此外,该设计层次化固件结构为固件层虚拟化技术的研究奠定基础。  2)提出了一种基于固件的系统虚拟化平台(Firmware-based VirtualizationPlatform,FVP),旨在通过固件保证硬件设计和MS Windows等大型商业闭源软件的兼容性。FVP通过固件与动态二进制翻译相结合的处理器虚拟化策略截获大型商业闭源软件对硬件的访问和控制,并提供一系列设备模拟和仿真接口以支持在固件层次虚拟不存在或不兼容的硬件设计。FVP无需硬件实现兼容IBMPC/AT的遗留设备(Legacy Device)等,从而保证了基于开放式片上总线架构的SoC设计的灵活性。实验结果表明,FVP不依赖类型1虚拟化平台所需硬件辅助虚拟化技术支持,且其性能优于类型2虚拟化平台。  3)提出了一种基于固件层虚拟化的二进制设备驱动程序复用方法和固件层泛直接设备虚拟化(Firmware-based Para Pass-Through)机制。固件层泛直接设备虚拟化机制负责监控来自目标平台二进制设备驱动程序的设备访问和控制请求,并将其路由至本地平台相应硬件设备,从而无需进行设备功能逻辑的模拟和仿真,且能够发挥本地平台硬件设计的功能。实验结果表明,固件层泛直接设备虚拟化机制可支持复用MS Windows等大型商业闭源操作系统自带的二进制设备驱动程序,且其性能优于基于设备模拟和仿真的设备虚拟化方法。  4)提出了一种基于固件层虚拟化的协同验证方法和平台(Firmware-basedCo-Verification Platform,FCVP)。FCVP在FPGA(Field-Programmable Gate Array)上基于固件模拟硬件待测设计(Design Ijnder Test,DUT)和系统模块,通过运行真实工作负载(大型商业闭源软件等)对比FPGA中硬件待测设计和FCVP模拟参考模型的行为,帮助分析和定位硬件设计错误。验证实例表明,FCVP可用于基于平台的SoC设计初期验证,并可有效地辅助硬件设计错误的定位。  根据上述研究成果,本文设计并实现了面向基于开放式片上总线架构的x86 SoC的固件层虚拟化平台的原型系统,其源体系结构为结合低功耗x86处理器与AMBA开放式片上总线架构的PKUnity86 x86 SoC,目标体系结构为MS Windows兼容的个人计算机系统(Personal Computer,PC)。该原型系统的实现对本文研究工作中提出的设计、平台和方法以及其在SoC设计和验证中的应用进行了有效验证。此外,本文还探讨了固件层虚拟化技术的未来发展方向。
其他文献
无线自组织网络是一种没有固定基础设施的、无中心的、多跳的无线移动网络,传感器网络和Mesh网络都属于特殊的自组织网络。近年来,无线自组织网络已经广泛应用在军事、商用和
无线传感器网络广泛应用于大规模监测任务中,路由协议是组网的关键所在。基于小世界理论构建的路由协议对于减少和均衡网络中节点的能量消耗,延长网络生命周期具有重要作用。国
学位
学位
学位
这份工作报告汇报的是“C元”并行编程语言的研发成果。该编程语言的目的是把繁琐复杂的分布式众核并行计算应用软件开发工作变得轻松简单。为此,本文作者设计了“C元”的并行
目前,部分疾病如动静脉交叉压迫、棉絮斑都能从眼底图中找到依据,且眼底图由于拍摄简单,成本低廉,信息丰富而被广泛应用到疾病检测中。随着数字医疗的发展,如何利用前沿的图像处理
随着互联网广告的兴起,越来越多的商业机构通过投放网络广告获得客户购买行为,来产生利润。其中百度的搜索推广系统应用最为普遍,利用其精准的关键词定位技术,将高质量的企业推广
网络虚拟化作为解决互联网架构的僵化问题的可行性方案,引起了越来越多研究机构的关注。本文在此背景之下,重点关注网络虚拟化环境下的故障管理。故障管理可以保证及时获得网
学位