当前位置: 首页 > 专利查询>英特尔公司专利>正文

在浮点数与整数转换中避免浮点控制指令的装置和方法制造方法及图纸

技术编号:3421316 阅读:157 留言:0更新日期:2012-04-11 18:40
二进制转换模块是要将与源体系结构相关联的第一指令序列转换成与目标体系结构相关联的第二指令序列。该第一序列包括一个或多个浮点控制指令,而第二序列并不包括浮点控制指令。通过在符合目标体系结构的处理器上执行第二序列所产生的结果基本上与通过在符合源体系结构的处理器上执行第一序列所产生的结果相同。

【技术实现步骤摘要】
【国外来华专利技术】
技术介绍
二进制浮点算术的ANSI/IEEE标准754-1985定义四种舍入模式,以影响除比较和余数之外的所有算术运算向最接近数舍入、向负无穷大舍入、向正无穷大舍入、以及舍入到零。在一些处理器体系结构中,在使用特定舍入模式执行将浮点数转换成整数的指令之前,处理单元需要被设置成该舍入模式。这通过读取并存储当前舍入模式、将处理器体系结构设置成期望舍入模式、执行转换并将处理器体系结构设置成所存储的舍入模式来实现。设置期望舍入模式和设置存储舍入模式的指令是浮点控制指令的示例。执行一浮点控制指令可耗时并可降低处理器体系结构性能。如果与具有第一指令集的第一处理器体系结构相关联的二进制码要由具有第二指令集的第二处理器体系结构执行,则二进制转换模块可将源二进制码转换成与第二处理器体系结构相关联的目标二进制码。在符合目标体系结构的处理器上执行目标二进制码所产生的结果基本上与在符合源体系结构的处理器上执行源二进制码所产生的结果相同。附图说明本专利技术的各个实施例作为示例进行说明且并不受限于附图,在附图中相似标号表示相应的、类似的或相似的元件,且其中图1示出根据本专利技术某些实施例的二进制码转换模块;图2是根据本专利技术某些实施例的要用将一部分源二进制码转换成一部分目标二进制码的二进制码转换模块实现的示例性方法的流程图;图3、4、5A和5B是根据本专利技术某些实施例的要由二进制码转换模块产生的示例性指令序列的流程图;图6是根据本专利技术某些实施例的用以存储和执行目标二进制码的示例性装置的框图;图7是根据本专利技术某些实施例的用以将源二进制码转换成目标二进制码、以及存储和执行目标二进制码的示例性装置的框图;图8是根据本专利技术某些实施例的用以将源二进制码转换成目标二进制码的另一示例性装置的框图。可以理解,为了说明的简单明了,图中所示元件并非必然按比例绘制。例如,为清晰起见,部分元件的尺寸可相对于其它元件放大。具体实施例方式在以下详细描述中,陈述了许多特定细节以便于提供对本专利技术各实施例的全面理解。然而,本领域技术人员将可以理解,没有这些特定细节也可实践本专利技术的各个实施例。在其它实例中,为了不使本专利技术的各个实施例混淆,众所周知的方法、过程、组件和电路都未加以详细阐述。随后详细描述的一部分根据对计算机存储器内的数据比特或二进制数字信号的运算的算法和符号表示来呈现。这些算法描述和表示可以是数据处理领域内技术人员用来向本领域内其它技术人员传达其工作实质的技术。算法在此通常被视为导致期望结果的动作或运算的首尾一致(self-consistent)序列。这包括物理量的物理处理。通常,尽管并非必需,这些量取能存储、传送、组合、比较和以其它方式处理的电信号或磁信号的形式。将这些信号引用为比特、值、元素、符号、字符、项、数字等被证明有时(主要为通用时)是方便的。但是,应当理解,所有这些术语或相似术语与适当的物理量相关联,并且仅仅是施加于这些量上的方便标签。除非另外特别指出,如从以下讨论中显而易见的,可以理解在说明书中使用的诸如“处理”、“计算”、“推算”、“确定”等术语指计算机或计算系统、或相似电子计算设备的动作和/或过程,它们将计算系统的寄存器和/或存储器内表示为物理(诸如电子)量的数据处理和/或转换成计算系统的存储器、寄存器或其它这种信息存储、传输或显示设备内相似地表示为物理量的其它数据。本专利技术的各个实施例可包括用于执行其中运算的装置。该装置可为期望目的具体构建,或者它可包括由存储在计算机中的计算机程序选择性激活或重新配置的通用计算机。这种计算机程序可存储在计算机可读存储介质中,诸如但不限于包括软盘、光盘、CD-ROM、磁性光盘的任何类型的盘、只读存储器(ROM)、随机存取存储器(RAM)、电可编程只读存储器(EPROM)、电可擦可编程序只读存储器(EEPROM)、磁卡或光卡、或者任何适合存储电子指令并能与计算机系统总线耦合的其它类型介质。在此呈现的过程和显示并非固有地与任何特定计算机或其它装置相关。各种通用系统可根据在此的示教与程序一起使用,或者构建更为专用的装置来执行期望方法被证明是方便的。各种这些系统的期望结构将在以下描述中显现。此外,本专利技术的各个实施例并不参照任何特定编程语言描述。可以理解,各种编程语言可以用来实现本专利技术在此所述的示教。图1示出根据本专利技术某些实施例的二进制码转换模块2。二进制码转换模块2可接收与具有第一指令组的第一处理器体系结构(“源体系结构”)相关联的二进制码(“源二进制码”)作为输入,并可输出与具有第二指令组的第二处理器体系结构(“目标体系结构”)相关联的二进制码(“目标二进制码”)。在符合目标体系结构的处理器上执行目标二进制码所产生的结果基本上与在符合源体系结构的处理器上执行源二进制码所产生的结果相同。源体系结构和目标体系结构的指令集可符合用于二进制浮点算术的ANSI/IEEE标准754-1985,并可支持使用在ANSI/IEEE标准754-1985中定义的至少四种舍入模式的浮点数与整数的转换,以影响除比较和余数之外的所有算术运算向最接近数舍入、向负无穷大舍入、向正无穷大舍入、以及舍入到零。本领域技术人员可理解,浮点数在计算机中被实现为浮点数的表示。类似地,整数在计算机中被实现为整数的表示。例如,32比特或64比特可被用来物理地表示浮点数,且16比特或32比特可被用来物理地表示整数。在执行使用源体系结构内的特定舍入模式将浮点数转换成整数的指令之前,源体系结构可能需要通过例如浮点控制指令被设置成该舍入模式。例如,如果在一部分代码的执行期间,源体系结构被设置成使用一舍入模式(“旧舍入模式”)将浮点数转换成整数,并且在该代码部分的执行期间,浮点数要使用第二舍入模式(“新舍入模式”)转换成整数,该源体系结构可能需要执行四个指令的以下示例性序列(称为序列“A”)a)保存旧舍入模式b)执行浮点控制指令以将舍入模式设置成新的舍入模式c)使用新的舍入模式将浮点转换成整数d)执行浮点控制指令将舍入模式设置成旧的舍入模式在序列“A”中,指令a)之后为指令b),指令b)之后为指令c),而指令c)之后为指令d)。术语“之后为”表示第一指令在第二指令之后执行,且在第二指令和第一指令之间可能会或可能不会穿插其它指令。类似地,在执行使用目标体系结构内的特定舍入模式将浮点数转换成整数的指令之前,目标体系结构可能需要通过例如浮点控制指令被设置成该舍入模式。如果目标体系结构的指令集包括不管目标体系结构的舍入模式设置如何都使用舍入到零舍入模式将浮点数舍入成浮点数的指令(“舍入到零强迫模式指令”),则可避免使用浮点控制指令在目标体系结构中设置舍入模式。如图2、3、4、5A和5B所示,二进制码转换模块2可使用目标体系结构的舍入到零强迫模式指令来将包括序列“A”的源二进制码部分转换成不包括浮点控制指令的目标二进制码部分。图2是根据本专利技术某些实施例的要用将一部分源二进制码转换成一部分目标二进制码的二进制码转换模块实现的示例性方法的流程图。图3、4、5A和5B是根据本专利技术一些实施例的由二进制码转换模块产生的示例性指令序列的流程图。参看图2,二进制码转换模块2可标识与源二进制码(-10-)中示例性序列“A”相似的序列,然后可标识新的舍入模式(-11-)。如果新舍入模式向最本文档来自技高网...

【技术保护点】
一种方法,包括:    将与源体系结构相关联的第一指令序列转换成与目标体系结构相关联的第二指令序列,    其中所述第一序列包括一个或多个浮点控制指令,而所述第二序列并不包括浮点控制指令,以及    其中通过在符合所述目标体系结构的处理器上执行所述第二序列所产生的结果基本上与通过在符合所述源体系结构的处理器上执行所述第一序列所产生的结果相同。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:张琦李剑慧O埃茨奥尼
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利