Unlock instant, AI-driven research and patent intelligence for your innovation.

Binary floating point translation method aiming at SSE2 instructions

A binary and floating-point technology, applied to concurrent instruction execution, program control design, instruments, etc., can solve problems such as poor efficiency, high overhead, and inconvenient floating-point registers, and achieve allocation and replacement, reduce memory access overhead, and reduce coupling effect

Inactive Publication Date: 2012-11-21
SHANGHAI JIAO TONG UNIV
View PDF0 Cites 0 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

This method has the advantages of rich instructions, but the stack organization form of floating-point registers brings great inconvenience to the operation of registers and brings great challenges to programmers.
[0007] After searching, it is also found that in some three-phase dynamic binary translation systems, a simplified processing method is adopted. Taking the addition instruction as an example, this technology first pushes the two addition source operands into the floating-point register stack, that is, the values ​​of the operands are respectively Load it into ST(0), ST(1), and then perform the addition operation of the values ​​of these two registers (some addition instructions include pop-up operations after operations, while others do not, here we use instructions that include pop-up operations), and get The result is stored in ST(0), ST(1) has been popped up in the operation instruction, and then ST(0) is stored in the corresponding memory, and the stack is popped. At this time, the register stack is cleared, and the next floating-point instruction process Continue this process, but the efficiency of this technique is poor. Each floating-point operation will include three memory access operations, which has a large overhead; in addition, the use efficiency of floating-point registers is also low and has not been fully utilized.

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Examples

Experimental program
Comparison scheme
Effect test

Embodiment

[0020] This embodiment is used to translate the single-precision floating-point instruction ADD.S fd under the MIPS architecture, fs, and ft into the SSE2 instruction ADDSD (xmm1, xmm2) under the X86 architecture, and the steps are as follows:

[0021] The first step is to build an intermediate floating-point instruction set for SSE2 instructions.

[0022] The intermediate floating-point instruction set includes: memory access instructions, data operation instructions, data movement instructions and register state mapping instructions, wherein: memory access instructions include: loading data from memory to register FLD and storing data from registers to memory FST; data operation instructions include: single-precision floating-point addition FSADDS, double-precision floating-point addition FSADDD, single-precision floating-point subtraction FSSUBS, double-precision floating-point subtraction FSSUBD, single-precision floating-point multiplication FSMULS, double-precision floati...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

PUM

No PUM Login to View More

Abstract

The invention discloses a binary floating point translation method aiming at SSE2 instructions in the technical field of dynamic binary translation, which comprises the following steps of: constructing a middle floating point instruction set aiming at the SSE2 instructions; translating front end source machine floating point instructions into middle floating point instructions, and mapping instruction operands positioned in a front end floating point register into a virtual register virtualized by a memory; according to operation codes and operation types of the middle floating point instructions, obtaining the number and the type of the operands of each middle floating point instruction, and mapping the operands in the virtual register into a back end floating point register through a register mapping function; and according to the operation codes and the operands of the middle floating point instructions, translating the middle floating point instructions in the back end floating point register into the SSE2 instructions of an X86 system, and storing the SSE2 instructions in a Tcache. The binary floating point translation method reduces the coupling of a front end floating pointsystem and a back end floating point system, realizes the distributive replacement of a target end register, reduces the accessing and saving expenses, and is suitable for a three-phase dynamic binary translation system of a multi-source single-target platform.

Description

technical field [0001] The invention relates to a method in the technical field of dynamic binary translation, in particular to a binary floating-point translation method for SSE2 instructions. Background technique [0002] Dynamic binary translation technology is an important research direction in the current computer field. It is a technology that can directly translate binary executable files, so as to solve the problem of software transplantation. Generally speaking, different processors support different instruction set architectures (ISAs), such as Intel x86, MIPS, POWERPC and other architectures. Applications developed for one architecture cannot run on another architecture, which limits the application and promotion of software. If hardware technology is used, that is, adding corresponding units on the processor to be compatible with other processors will greatly reduce efficiency while increasing power consumption; and if software translation technology such as bin...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

Application Information

Patent Timeline
no application Login to View More
Patent Type & Authority Patents(China)
IPC IPC(8): G06F9/302G06F9/318G06F9/38G06F9/45
Inventor 管海兵梁阿磊汪啸蔡战举刘博
Owner SHANGHAI JIAO TONG UNIV