动态二进制翻译系统中浮点运算单元研究

来源 :上海交通大学 | 被引量 : 0次 | 上传用户:lili1006
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
在动态二进制翻译系统中,浮点运算单元是用来翻译和执行浮点运算指令的一个重要组成部分。它负责翻译前端可执行程序中的浮点指令,使得相应逻辑能够在后端处理器上正确执行。浮点运算单元在保证正确性的前提下,提高其性能是一个重要指标。CrossBit是一个可重定向的动态二进制翻译系统,在X86后端中已利用X87浮点指令实现了浮点运算单元。除了X87浮点运算单元,X86平台还有SSE浮点运算单元。本文研究如何在CrossBit中综合利用这两个浮点运算单元,构造一个更高效的混合式的浮点运算单元,从而提高CrossBit浮点运算单元的执行性能。要使CrossBit能够使用SSE浮点指令,需要有既能够表达前端MIPS浮点指令,又能够表达后端SSE浮点指令的中间指令。在混合式浮点运算单元设计与实现过程中,论文的主要工作包括:一、扩充和改进中间指令,解决了中间指令能够同时表达X87浮点指令和SSE浮点指令的问题。二、X87浮点指令和SSE浮点指令共享前端浮点状态部件,解决了两种指令能够共存的问题。三、实现了前端MIPS指令到扩充后中间指令的解释器。四、实现了扩充后中间指令到后端X87和SSE浮点指令的翻译器。五、实现了简化的图染色寄存器分配算法,与动态二进制翻译系统中几种常见寄存器分配算法进行了比较,实验表明,该算法具有最优性能。使用该算法实现了浮点寄存器分配器。本文在自主研发的动态二进制翻译基础研究平台CrossBit实施了该浮点运算单元,能够正确执行基本浮点运算指令。实验表明,混合式浮点运算单元综合了两种浮点运算单元的优点,具有优越的性能。
其他文献
随着网络的迅速发展和普及,建立在网络基础上的安全协议变得越来越重要。本文主要在基于新鲜性原则分析密码协议的信任多集方法基础上,继续完善并扩展了基于新鲜性原则分析安
在当今信息时代,Internet在人们的日常生活中发挥越来越大的作用,其发展速度非常迅猛,以致地面通信已无法满足现代通信对覆盖面、通信速度及数据带宽等方面的要求。通过互联
随着物联网的发展,无线传感网络的能耗问题越来越重要,因为能量是影响传感网在现实场景中能否应用的重要因素。射频通信是无线传感节点中最耗能的部分,过去几年,为了提升射频
网格是利用高速国际互联网把地理上广泛分布的各种资源,包括计算资源、存储资源、带宽资源、软件资源、数据资源、信息资源、知识资源等连成一个逻辑整体,就像一台超级计算机
超大规模的模式识别问题是现在机器学习算法在实际应用中遇到的越来越多的一个难题。随着信息时代的到来,现实中这种大规模问题是很常见的,例如专利分类问题。即便是像支持向量机这样高效率的学习算法,面对超大规模的分类问题,也是难以克服的。在这种情况下,利用丰富的计算资源,使得机器学习并行化,是当前机器学习领域的一个重要发展方向。最小最大模块化支持向量机(M3-SVM)是基于“分而治之”的思想解决大规模问题的
在计算机技术和通信技术飞速发展的今天,计算机网络已经深入到社会的各个领域,人们的生产方式和生活方式发生了翻天覆地的变化,同时也改变着人们思维方式和学习方式。在我国,
随着互联网的快速发展,人们的生活变得更加多姿多彩。观看网络视频成为人们休闲生活的重要组成部分,同时,网络视频中的广告投放业务也成为网络视频公司的主要盈利来源。网络
随着机器人技术的发展和实际应用的需要,多机器人系统的应用已经成为国内外研究的热点。而多机器人图形构造是多机器人协作研究领域里的典型问题之一,随机分布的多机器人系统
随着互联网络的快速发展和网络用户数量的不断攀升,用户对网络服务质量和网络性能等方面的需求也不断增强。在下一代IPv6网络中,路由选择问题正成为网络通信领域中的一个热点
在1872年的“爱尔兰根纲领”中F.Klein把几何归结到可递变换群的几何不变量理论中,进而加以分类。这样,对每一个可递变换群,都可以定义一个隶属于这个可递变换群的几何。仿射空