JP6114315B2 - 浮動小数点定数生成命令 - Google Patents
浮動小数点定数生成命令 Download PDFInfo
- Publication number
- JP6114315B2 JP6114315B2 JP2014556745A JP2014556745A JP6114315B2 JP 6114315 B2 JP6114315 B2 JP 6114315B2 JP 2014556745 A JP2014556745 A JP 2014556745A JP 2014556745 A JP2014556745 A JP 2014556745A JP 6114315 B2 JP6114315 B2 JP 6114315B2
- Authority
- JP
- Japan
- Prior art keywords
- field
- floating point
- value
- instruction
- constant value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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/30025—Format conversion instructions, e.g. Floating-Point to Integer, decimal conversion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/30032—Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30167—Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Executing Machine-Instructions (AREA)
Description
102 第1のフィールド
104 第2のフィールド
104'、106' シフトされたフィールド
106 第3のフィールド
108_1 第1のシフト値
108_2 第2のシフト値
300 デバイス
322 システムインパッケージデバイスまたはシステムオンチップデバイス
326 ディスプレイコントローラ
328 ディスプレイ
330 入力デバイス
332 メモリ
334 コーダ/デコーダ(CODEC)
336 スピーカー
338 マイクロフォン
340 ワイヤレスコントローラ
342 ワイヤレスアンテナ
344 電源
364 デジタル信号プロセッサ(DSP)
365 メモリ
Claims (15)
- 命令から浮動小数点定数値を生成する方法であって、
前記浮動小数点定数値の符号ビットとして、前記命令の第1のフィールドを復号するステップと、
前記命令の第2のフィールドを復号し、前記命令の第4のフィールドから前記第2のフィールドを第1のシフト値だけシフトし、前記シフトされた第2のフィールドを第1の定数値に加算して、前記浮動小数点定数値の指数値を形成するステップと、
前記命令の第3のフィールドを復号し、前記命令の第5のフィールドから前記第3のフィールドを第2のシフト値だけシフトし、前記シフトされた第3のフィールドを第2の定数値に加算して、前記浮動小数点定数値の仮数を形成するステップと、
前記符号ビット、前記指数値、および前記仮数から、前記浮動小数点定数値を生成するステップと
を含む方法。 - 前記指数値がバイアスを含む、請求項1に記載の方法。
- 前記指数値をバイアス定数に加算して、前記指数値中に含まれる前記バイアスを補償するステップをさらに含む、請求項2に記載の方法。
- 前記第1のシフト値および前記第2のシフト値が、前記浮動小数点定数値の所望の精度に基づいて選択される、請求項1に記載の方法。
- 前記浮動小数点定数値が、IEEE 754の単精度形式または倍精度形式のうちの1つに従って形成される、請求項1に記載の方法。
- 前記第3のフィールドが、前記浮動小数点定数値の前記仮数の最上位ビットを備える、請求項1に記載の方法。
- デバイスに命令から浮動小数点定数値を生成させるコンピュータプログラムであって、
前記浮動小数点定数値の符号ビットとして、前記命令の第1のフィールドを復号するためのコードと、
前記命令の第2のフィールドを復号し、前記命令の第4のフィールドから前記第2のフィールドを第1のシフト値だけシフトし、前記シフトされた第2のフィールドを第1の定数値に加算して、前記浮動小数点定数値の指数値を形成するためのコードと、
前記命令の第3のフィールドを復号し、前記命令の第5のフィールドから前記第3のフィールドを第2のシフト値だけシフトし、前記シフトされた第3のフィールドを第2の定数値に加算して、前記浮動小数点定数値の仮数を形成するためのコードと、
前記符号ビット、前記指数値、および前記仮数から、前記浮動小数点定数値を生成するためのコードと
を含むコンピュータプログラム。 - 前記第1のシフト値および前記第2のシフト値が、前記浮動小数点定数値の所望の精度に基づいて選択される、請求項7に記載のコンピュータプログラム。
- 前記指数値がバイアスを含み、バイアス定数が加算されて、前記指数値中に含まれる前記バイアスが補償される、請求項7に記載のコンピュータプログラム。
- 前記第3のフィールドが、前記仮数の最上位ビットを備える、請求項7に記載のコンピュータプログラム。
- 前記浮動小数点定数値が、IEEE 754の単精度形式または倍精度形式のうちの1つに従って形成される、請求項7に記載のコンピュータプログラム。
- 前記デバイスが少なくとも1つの半導体ダイに組み込まれる、請求項7に記載のコンピュータプログラム。
- 前記デバイスが、セットトップボックス、音楽プレーヤ、ビデオプレーヤ、エンターテインメントユニット、ナビゲーションデバイス、通信デバイス、携帯情報端末(PDA)、固定ロケーションデータユニット、およびコンピュータからなるグループから選択される、請求項7に記載のコンピュータプログラム。
- 命令から浮動小数点定数値を生成するためのシステムであって、
前記浮動小数点定数値の符号ビットとして、前記命令の第1のフィールドを復号するための手段と、
前記命令の第2のフィールドを復号し、前記命令の第4のフィールドから前記第2のフィールドを第1のシフト値だけシフトし、前記シフトされた第2のフィールドを第1の定数値に加算して、前記浮動小数点定数値の指数値を形成するための手段と、
前記命令の第3のフィールドを復号し、前記命令の第5のフィールドから前記第3のフィールドを第2のシフト値だけシフトし、前記シフトされた第3のフィールドを第2の定数値に加算して、前記浮動小数点定数値の仮数を形成するための手段と、
前記符号ビット、前記指数値、および前記仮数から、前記浮動小数点定数値を生成するための手段と
を備えるシステム。 - プロセッサ上で動作し、請求項1から6のいずれか一項に記載の方法を前記プロセッサに実行させるコードを備える、コンピュータ可読記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/369,693 US10289412B2 (en) | 2012-02-09 | 2012-02-09 | Floating point constant generation instruction |
US13/369,693 | 2012-02-09 | ||
PCT/US2013/025401 WO2013119995A1 (en) | 2012-02-09 | 2013-02-08 | Floating point constant generation instruction |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2015512092A JP2015512092A (ja) | 2015-04-23 |
JP2015512092A5 JP2015512092A5 (ja) | 2016-12-08 |
JP6114315B2 true JP6114315B2 (ja) | 2017-04-12 |
Family
ID=47846130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014556745A Active JP6114315B2 (ja) | 2012-02-09 | 2013-02-08 | 浮動小数点定数生成命令 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10289412B2 (ja) |
EP (1) | EP2812793B1 (ja) |
JP (1) | JP6114315B2 (ja) |
KR (1) | KR101763286B1 (ja) |
CN (1) | CN104106045B (ja) |
WO (1) | WO2013119995A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10289412B2 (en) * | 2012-02-09 | 2019-05-14 | Qualcomm Incorporated | Floating point constant generation instruction |
WO2015076951A1 (en) * | 2013-11-25 | 2015-05-28 | Benson Dwayne M | Integrated power, cooling, and heating device and method thereof |
KR20160090796A (ko) * | 2013-11-27 | 2016-08-01 | 마이크로칩 테크놀로지 인코포레이티드 | 메인 클록의 높은 정밀 발진기 |
US9455743B2 (en) * | 2014-05-27 | 2016-09-27 | Qualcomm Incorporated | Dedicated arithmetic encoding instruction |
CN104572018A (zh) * | 2014-12-30 | 2015-04-29 | 杭州中天微系统有限公司 | 一种用于浮点常数生成的装置及方法 |
US9817662B2 (en) * | 2015-10-24 | 2017-11-14 | Alan A Jorgensen | Apparatus for calculating and retaining a bound on error during floating point operations and methods thereof |
US10235170B2 (en) | 2016-09-30 | 2019-03-19 | International Business Machines Corporation | Decimal load immediate instruction |
Family Cites Families (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5201056A (en) * | 1990-05-02 | 1993-04-06 | Motorola, Inc. | RISC microprocessor architecture with multi-bit tag extended instructions for selectively attaching tag from either instruction or input data to arithmetic operation output |
US5341320A (en) * | 1993-03-01 | 1994-08-23 | Motorola, Inc. | Method for rapidly processing floating-point operations which involve exceptions |
JPH08153310A (ja) | 1994-11-28 | 1996-06-11 | Sony Corp | 磁気抵抗効果型薄膜磁気ヘッド |
US5805475A (en) * | 1995-02-10 | 1998-09-08 | International Business Machines Corporation | Load-store unit and method of loading and storing single-precision floating-point registers in a double-precision architecture |
US5878266A (en) | 1995-09-26 | 1999-03-02 | Advanced Micro Devices, Inc. | Reservation station for a floating point processing unit |
US5940311A (en) | 1996-04-30 | 1999-08-17 | Texas Instruments Incorporated | Immediate floating-point operand reformatting in a microprocessor |
US6058465A (en) * | 1996-08-19 | 2000-05-02 | Nguyen; Le Trong | Single-instruction-multiple-data processing in a multimedia signal processor |
US5838984A (en) * | 1996-08-19 | 1998-11-17 | Samsung Electronics Co., Ltd. | Single-instruction-multiple-data processing using multiple banks of vector registers |
US5991531A (en) * | 1997-02-24 | 1999-11-23 | Samsung Electronics Co., Ltd. | Scalable width vector processor architecture for efficient emulation |
GB9712317D0 (en) * | 1997-06-13 | 1997-08-13 | Zeneca Ltd | Composition, compound and use |
US6298367B1 (en) * | 1998-04-06 | 2001-10-02 | Advanced Micro Devices, Inc. | Floating point addition pipeline including extreme value, comparison and accumulate functions |
US6519694B2 (en) * | 1999-02-04 | 2003-02-11 | Sun Microsystems, Inc. | System for handling load errors having symbolic entity generator to generate symbolic entity and ALU to propagate the symbolic entity |
US6487653B1 (en) * | 1999-08-25 | 2002-11-26 | Advanced Micro Devices, Inc. | Method and apparatus for denormal load handling |
US7330864B2 (en) | 2001-03-01 | 2008-02-12 | Microsoft Corporation | System and method for using native floating point microprocessor instructions to manipulate 16-bit floating point data representations |
WO2003007147A1 (en) * | 2001-07-13 | 2003-01-23 | Intel Zao | A method and apparatus to extract integer and fractional components from floating-point data |
US7003539B1 (en) * | 2001-08-08 | 2006-02-21 | Pasternak Solutions Llc | Efficiently determining a floor for a floating-point number |
US7212959B1 (en) * | 2001-08-08 | 2007-05-01 | Stephen Clark Purcell | Method and apparatus for accumulating floating point values |
US7028067B2 (en) | 2002-02-20 | 2006-04-11 | International Business Machines Corporation | Generation of mask-constrained floating-point addition and subtraction test cases, and method and system therefor |
EP1545010A1 (en) | 2003-12-18 | 2005-06-22 | Deutsche Thomson-Brandt GmbH | Method and device for transcoding N-bit words into M-bit words with M smaller N |
GB2410097B (en) | 2004-01-13 | 2006-11-01 | Advanced Risc Mach Ltd | A data processing apparatus and method for performing data processing operations on floating point data elements |
JP2006154979A (ja) | 2004-11-25 | 2006-06-15 | Sony Corp | 浮動小数点数演算回路 |
US7523434B1 (en) * | 2005-09-23 | 2009-04-21 | Xilinx, Inc. | Interfacing with a dynamically configurable arithmetic unit |
US8595279B2 (en) | 2006-02-27 | 2013-11-26 | Qualcomm Incorporated | Floating-point processor with reduced power requirements for selectable subprecision |
US7797360B2 (en) * | 2006-04-06 | 2010-09-14 | Sap Ag | Sortable floating point numbers |
US7885992B2 (en) | 2006-06-22 | 2011-02-08 | Honeywell International Inc. | System and method for implementing irregular data formats |
US8650231B1 (en) * | 2007-01-22 | 2014-02-11 | Altera Corporation | Configuring floating point operations in a programmable device |
US8006078B2 (en) * | 2007-04-13 | 2011-08-23 | Samsung Electronics Co., Ltd. | Central processing unit having branch instruction verification unit for secure program execution |
US8051117B2 (en) * | 2007-04-26 | 2011-11-01 | International Business Machines Corporation | Shift significand of decimal floating point data |
US8051118B2 (en) | 2007-04-26 | 2011-11-01 | International Business Machines Corporation | Composition of decimal floating point data |
US8190664B2 (en) * | 2007-04-26 | 2012-05-29 | International Business Machines Corporation | Employing a mask field of an instruction to encode a sign of a result of the instruction |
US7885995B2 (en) * | 2007-06-13 | 2011-02-08 | International Business Machines Corporation | Processing service requests in a distributed environment |
JP4629750B2 (ja) * | 2008-03-31 | 2011-02-09 | 日立オートモティブシステムズ株式会社 | 組み込み制御装置 |
US8412760B2 (en) | 2008-07-22 | 2013-04-02 | International Business Machines Corporation | Dynamic range adjusting floating point execution unit |
US8244783B2 (en) * | 2008-09-11 | 2012-08-14 | International Business Machines Corporation | Normalizer shift prediction for log estimate instructions |
CN101685383A (zh) | 2008-09-28 | 2010-03-31 | 杨高祥 | 计算器、基于直接对阶的自由精度浮点数的运算电路 |
US8706790B1 (en) * | 2009-03-03 | 2014-04-22 | Altera Corporation | Implementing mixed-precision floating-point operations in a programmable integrated circuit device |
US8645449B1 (en) * | 2009-03-03 | 2014-02-04 | Altera Corporation | Combined floating point adder and subtractor |
US8407271B2 (en) * | 2009-08-28 | 2013-03-26 | Advanced Micro Devices, Inc. | Method for floating point round to integer operation |
US8412756B1 (en) * | 2009-09-11 | 2013-04-02 | Altera Corporation | Multi-operand floating point operations in a programmable integrated circuit device |
US20110125987A1 (en) * | 2009-11-20 | 2011-05-26 | Qualcomm Incorporated | Dedicated Arithmetic Decoding Instruction |
CN201628951U (zh) | 2009-12-31 | 2010-11-10 | 西北工业大学 | 一种高速浮点规格化运算器 |
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 |
US8745111B2 (en) * | 2010-11-16 | 2014-06-03 | Apple Inc. | Methods and apparatuses for converting floating point representations |
US20120191955A1 (en) * | 2011-01-20 | 2012-07-26 | Jonsson Ragnar H | Method and system for floating point acceleration on fixed point digital signal processors |
US8756601B2 (en) * | 2011-09-23 | 2014-06-17 | Qualcomm Incorporated | Memory coherency acceleration via virtual machine migration |
US8909690B2 (en) * | 2011-12-13 | 2014-12-09 | International Business Machines Corporation | Performing arithmetic operations using both large and small floating point values |
US10289412B2 (en) * | 2012-02-09 | 2019-05-14 | Qualcomm Incorporated | Floating point constant generation instruction |
US8825727B2 (en) * | 2012-03-15 | 2014-09-02 | International Business Machines Corporation | Software-hardware adder |
US20140067894A1 (en) * | 2012-08-30 | 2014-03-06 | Qualcomm Incorporated | Operations for efficient floating point computations |
-
2012
- 2012-02-09 US US13/369,693 patent/US10289412B2/en active Active
-
2013
- 2013-02-08 EP EP13708942.1A patent/EP2812793B1/en not_active Not-in-force
- 2013-02-08 KR KR1020147024986A patent/KR101763286B1/ko active IP Right Grant
- 2013-02-08 JP JP2014556745A patent/JP6114315B2/ja active Active
- 2013-02-08 CN CN201380008389.8A patent/CN104106045B/zh not_active Expired - Fee Related
- 2013-02-08 WO PCT/US2013/025401 patent/WO2013119995A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
EP2812793A1 (en) | 2014-12-17 |
WO2013119995A1 (en) | 2013-08-15 |
CN104106045B (zh) | 2017-09-01 |
US10289412B2 (en) | 2019-05-14 |
EP2812793B1 (en) | 2016-09-28 |
US20130212357A1 (en) | 2013-08-15 |
JP2015512092A (ja) | 2015-04-23 |
KR20140120373A (ko) | 2014-10-13 |
CN104106045A (zh) | 2014-10-15 |
KR101763286B1 (ko) | 2017-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6114315B2 (ja) | 浮動小数点定数生成命令 | |
US9841948B2 (en) | Microarchitecture for floating point fused multiply-add with exponent scaling | |
JP4990977B2 (ja) | 命令に応じた丸め処理の実行 | |
US10346133B1 (en) | System and method of floating point multiply operation processing | |
US10019227B2 (en) | Accuracy-conserving floating-point value aggregation | |
JP2015512092A5 (ja) | ||
JP2015103245A (ja) | 浮動小数点加算ユニットを含む装置及びシステム、並びに浮動小数点加算方法 | |
KR102570304B1 (ko) | 부동소수점 연산 수행시 라운딩 제어 장치 및 방법 | |
AU2017330184A1 (en) | Piecewise polynomial evaluation instruction | |
US9417842B2 (en) | Idempotent representation of numbers in extensible languages | |
WO2011161859A1 (ja) | 半導体集積回路及び指数算出方法 | |
US9417839B1 (en) | Floating point multiply-add-substract implementation | |
Tsen et al. | A combined decimal and binary floating-point multiplier | |
US9563402B2 (en) | Method and apparatus for additive range reduction | |
CN115268832A (zh) | 浮点数取整的方法、装置以及电子设备 | |
US9335967B1 (en) | Accurate floating-point calculation method and device | |
JP2007188424A (ja) | 計算装置、計算方法、および、計算プログラム | |
CN115202617A (zh) | 一种浮点数重编码及解码方法、系统和装置 | |
JP2009276990A (ja) | 演算装置およびその演算方法、信号処理装置、演算装置制御プログラム、並びに該プログラムを記録した記録媒体 | |
JP2006243826A (ja) | 浮動小数点数値のm乗根を演算する浮動小数点演算装置及びコンピュータプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160108 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160108 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161019 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20161019 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161031 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161107 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20161028 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170207 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20170220 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170316 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6114315 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |