TW200943177A - Apparatus and method for optimizing the performance of x87 floating point addition instructions in a microprocessor - Google Patents
Apparatus and method for optimizing the performance of x87 floating point addition instructions in a microprocessorInfo
- Publication number
- TW200943177A TW200943177A TW097138954A TW97138954A TW200943177A TW 200943177 A TW200943177 A TW 200943177A TW 097138954 A TW097138954 A TW 097138954A TW 97138954 A TW97138954 A TW 97138954A TW 200943177 A TW200943177 A TW 200943177A
- Authority
- TW
- Taiwan
- Prior art keywords
- fpu
- rounding
- instruction
- microprocessor
- floating point
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/499—Denomination or exception handling, e.g. rounding or overflow
- G06F7/49942—Significance control
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/3001—Arithmetic instructions
- G06F9/30014—Arithmetic instructions with variable precision
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3005—Arrangements for executing specific machine instructions to perform operations for flow control
- G06F9/30065—Loop control instructions; iterative instructions, e.g. LOOP, REPEAT
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/32—Address formation of the next instruction, e.g. by incrementing the instruction counter
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
- Complex Calculations (AREA)
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US12/100,583 US8046400B2 (en) | 2008-04-10 | 2008-04-10 | Apparatus and method for optimizing the performance of x87 floating point addition instructions in a microprocessor |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW200943177A true TW200943177A (en) | 2009-10-16 |
| TWI394077B TWI394077B (zh) | 2013-04-21 |
Family
ID=39651394
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW097138954A TWI394077B (zh) | 2008-04-10 | 2008-10-09 | 最佳化微處理器執行x87浮點加法指令之裝置及方法 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US8046400B2 (zh) |
| EP (1) | EP2109038B1 (zh) |
| CN (1) | CN101377733B (zh) |
| TW (1) | TWI394077B (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI635437B (zh) * | 2016-11-30 | 2018-09-11 | 上海兆芯集成電路有限公司 | 浮點操作數計算方法以及使用此方法的裝置 |
Families Citing this family (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20110004644A1 (en) * | 2009-07-03 | 2011-01-06 | Via Technologies, Inc. | Dynamic floating point register precision control |
| US8914430B2 (en) * | 2010-09-24 | 2014-12-16 | Intel Corporation | Multiply add functional unit capable of executing scale, round, GETEXP, round, GETMANT, reduce, range and class instructions |
| CN102541511B (zh) * | 2010-12-30 | 2015-07-08 | 世意法(北京)半导体研发有限责任公司 | 用于可乱序执行指令的处理器的流水线排空 |
| EP2695054B1 (en) * | 2011-04-01 | 2018-08-15 | Intel Corporation | Vector friendly instruction format and execution thereof |
| US9792121B2 (en) | 2013-05-21 | 2017-10-17 | Via Technologies, Inc. | Microprocessor that fuses if-then instructions |
| US10001993B2 (en) * | 2013-08-08 | 2018-06-19 | Linear Algebra Technologies Limited | Variable-length instruction buffer management |
| US11768689B2 (en) | 2013-08-08 | 2023-09-26 | Movidius Limited | Apparatus, systems, and methods for low power computational imaging |
| US10235232B2 (en) * | 2014-02-10 | 2019-03-19 | Via Alliance Semiconductor Co., Ltd | Processor with approximate computing execution unit that includes an approximation control register having an approximation mode flag, an approximation amount, and an error threshold, where the approximation control register is writable by an instruction set instruction |
| CN106126189B (zh) * | 2014-07-02 | 2019-02-15 | 上海兆芯集成电路有限公司 | 微处理器中的方法 |
| US10684824B2 (en) | 2018-06-06 | 2020-06-16 | Nvidia Corporation | Stochastic rounding of numerical values |
| US12405803B1 (en) | 2022-09-16 | 2025-09-02 | Apple Inc. | Superscalar execution using pipelines that support different precisions |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS61213927A (ja) * | 1985-03-18 | 1986-09-22 | Hitachi Ltd | 浮動小数点演算処理装置 |
| US5812439A (en) | 1995-10-10 | 1998-09-22 | Microunity Systems Engineering, Inc. | Technique of incorporating floating point information into processor instructions |
| US6233672B1 (en) | 1997-03-06 | 2001-05-15 | Advanced Micro Devices, Inc. | Piping rounding mode bits with floating point instructions to eliminate serialization |
| CA2327924A1 (en) * | 2000-12-08 | 2002-06-08 | Ibm Canada Limited-Ibm Canada Limitee | Processor design for extended-precision arithmetic |
| US7366749B2 (en) * | 2001-05-25 | 2008-04-29 | Sun Microsystems, Inc. | Floating point adder with embedded status information |
| US6963896B2 (en) * | 2001-07-31 | 2005-11-08 | Pasternak Solutions Llc | Method and system to implement an improved floating point adder with integrated adding and rounding |
| TW579482B (en) * | 2002-07-16 | 2004-03-11 | Silicon Integrated Sys Corp | Exponent operation device and method for floating point number |
| CN1278225C (zh) * | 2004-02-23 | 2006-10-04 | 威盛电子股份有限公司 | 累加装置与方法 |
| GB0407208D0 (en) * | 2004-03-31 | 2004-05-05 | Ibm | Generation of test cases with range constraints for floating point add and subtract instructions |
| US7730117B2 (en) * | 2005-02-09 | 2010-06-01 | International Business Machines Corporation | System and method for a floating point unit with feedback prior to normalization and rounding |
| US7720900B2 (en) * | 2005-09-09 | 2010-05-18 | International Business Machines Corporation | Fused multiply add split for multiple precision arithmetic |
| US9223751B2 (en) | 2006-09-22 | 2015-12-29 | Intel Corporation | Performing rounding operations responsive to an instruction |
-
2008
- 2008-04-10 US US12/100,583 patent/US8046400B2/en active Active
- 2008-04-23 EP EP08251498.5A patent/EP2109038B1/en active Active
- 2008-10-09 TW TW097138954A patent/TWI394077B/zh active
- 2008-10-22 CN CN200810169455.0A patent/CN101377733B/zh active Active
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI635437B (zh) * | 2016-11-30 | 2018-09-11 | 上海兆芯集成電路有限公司 | 浮點操作數計算方法以及使用此方法的裝置 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN101377733B (zh) | 2010-10-06 |
| CN101377733A (zh) | 2009-03-04 |
| TWI394077B (zh) | 2013-04-21 |
| EP2109038B1 (en) | 2014-01-08 |
| US8046400B2 (en) | 2011-10-25 |
| EP2109038A1 (en) | 2009-10-14 |
| US20090259708A1 (en) | 2009-10-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TW200943177A (en) | Apparatus and method for optimizing the performance of x87 floating point addition instructions in a microprocessor | |
| MX2009009819A (es) | Programacion de canal de difusion dinamica. | |
| CA2856887C (en) | Energy search engine with autonomous control | |
| DE602007012172D1 (de) | System zur direkten Flussregelung für magnetische Strukturen | |
| EA201270252A1 (ru) | Консультативные системы и способы бурения с использованием целевых функций | |
| IN2012DN01274A (zh) | ||
| EP3473510A3 (en) | Maneuevering autonomous vehicles | |
| TW200705266A (en) | System and method wherein conditional instructions unconditionally provide output | |
| GB2499937A (en) | Method and apparatus to configure thermal design power in a microprocessor | |
| WO2011044286A3 (en) | Data analysis expressions | |
| MX2011009765A (es) | Prevencion de "spoiler" automatica. | |
| GB2462402A (en) | Design process for elevator arrangements in a new and existing buildings | |
| WO2011051816A3 (en) | System and method for obtaining document information | |
| WO2009073156A3 (en) | Enhanced data exchange and functionality control system and method | |
| WO2010126687A3 (en) | Efficient exhaustive path-based static timing analysis using a fast estimation technique | |
| WO2012061090A3 (en) | Conditional execution of regular expressions | |
| WO2012075353A8 (en) | Modular gating of microprocessor low-power mode | |
| SG154401A1 (en) | Method of processing genomic information | |
| WO2010078216A3 (en) | Improved abatement of effluent gas | |
| FI20095329A7 (fi) | Menetelmä nousuajan määrittämiseksi sukellustietokoneessa, sukellustietokone ja tietokoneohjelma | |
| WO2009051404A3 (en) | A method and an apparatus for processing a signal | |
| IL197271A0 (en) | Biomarkers for assessing liver function | |
| SG152968A1 (en) | System and method for investigating and/or determining the condition or state of a shipæs hull | |
| WO2009123828A3 (en) | Compact circuit-simulation output | |
| GB0600916D0 (en) | detecting and predicting pre-eclampsia |