JP2001027945A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2001027945A5 JP2001027945A5 JP2000149271A JP2000149271A JP2001027945A5 JP 2001027945 A5 JP2001027945 A5 JP 2001027945A5 JP 2000149271 A JP2000149271 A JP 2000149271A JP 2000149271 A JP2000149271 A JP 2000149271A JP 2001027945 A5 JP2001027945 A5 JP 2001027945A5
- Authority
- JP
- Japan
- Prior art keywords
- multiply
- bit
- register file
- accumulate
- unit
- 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.)
- Granted
Links
- 238000009825 accumulation Methods 0.000 claims 3
- 241000257465 Echinoidea Species 0.000 claims 1
- 241001442055 Vipera berus Species 0.000 claims 1
Claims (3)
- データに対して算術演算を実行するための浮動小数点ユニットであって、
データの格納および読出しを行うように構成されたレジスタファイルと、
複数のデータ型フォーマットに対して算術演算を実行するよう構成された第1の乗算累算ユニットと、
複数のデータ型フォーマットに対して算術演算を実行するよう構成された第2の乗算累算ユニットと、
前記レジスタファイルからデータを受取ると共に、そのデータを前記第1の乗算累算ユニットに渡すように構成され、また、前記第1の乗算累算ユニットによって実行された算術演算の結果を前記第1の乗算累算ユニットから受取ると共に、その結果を前記レジスタファイルに渡すようにさらに構成された第1のバイパスコンポーネントと、及び
前記レジスタファイルからデータを受取ると共に、そのデータを前記第2の乗算累算ユニットに渡すように構成され、また、前記第2の乗算累算ユニットによって実行された算術演算の結果を受取ると共に、前記第2の乗算累算ユニットによって実行された前記算術演算の結果を前記レジスタファイルに渡すようにさらに構成された第2のバイパスコンポーネントとを含み、
前記乗算累算ユニットの各々が、64ビットワードを受取り、
前記第1の乗算累算ユニットが、前記64ビットワードのうちの演算すべき上位32ビットを選択し、
前記第2の乗算累算ユニットが、前記64ビットワードのうちの演算すべき下位32ビットを選択し、
前記第1と第2の乗算累算ユニットの各々には、前記64ビットワードのうちのいずれの32ビット部分が各乗算累算ユニットにより演算されるべきかを決定するために、前記第1と第2の乗算累算ユニットが使用する1つまたは複数のビットが供給される、浮動小数点ユニット。 - 前記第1と第2の乗算累算ユニットによって演算され得る第1のデータ型フォーマットが、64ビット仮数値、17ビット指数値および1ビット符号値からなる82ビットワードであり、
前記第1と第2の乗算累算ユニットによって演算され得る第2のデータ型フォーマットが、2つの32ビットワードからなり、それぞれの32ビットワードが、23ビット仮数値、8ビット指数値および1ビット符号値からなる、請求項1の浮動小数点ユニット。 - 前記第1の乗算累算ユニットにおいて生成された結果と前記第2の乗算累算ユニットにおいて生成された結果とが、前記バイパスコンポーネントによって合体されることにより、前記レジスタファイルの1つまたは複数のレジスタに格納される64ビットワードを生成し、
3つのオペランドバスが、前記レジスタファイルから前記第1の乗算累算ユニットに32ビットワードを移送し、各オペランドバスが、32ビットオペランドを移送することができ、
3つの32ビットバスが、前記レジスタファイルから前記第2の乗算累算ユニットにデータを移送し、各32ビットバスが、前記レジスタファイルから前記第2の乗算累算ユニットに32ビットオペランドを移送することができ、
32ビットバスが、前記第1の乗算累算ユニットから前記レジスタファイルに演算結果を移送し、
32ビットバスが、前記第2の乗算累算ユニットから前記レジスタファイルに演算結果を移送し、
前記32ビットバスで前記第1および第2の乗算累算ユニットから前記レジスタファイルに移送された前記32ビットの結果が、合体され、前記レジスタファイルの1つまたは複数のレジスタに64ビットワードとして格納され、
前記レジスタファイルから前記第1の乗算累算ユニットにデータを移送する3つの32ビットバスが、前記第1のバイパスコンポーネントに接続されており、
前記レジスタファイルから前記第2の乗算累算ユニットにデータを移送する3つの32ビットバスが、前記第2のバイパスコンポーネントに接続されており、
前記第1および第2のバイパスコンポーネントに供給される1つまたは複数の制御ビットは、前記第1および第2のバイパスコンポーネントにより、前記レジスタファイルの特定のレジスタに格納されたデータが前記レジスタファイルから前記第1および第2の乗算累算ユニットに移送される時に、そのデータが前記32ビットオペランドバスに出力されるようにするために使用され、
前記第1および第2のバイパスコンポーネントに受渡される1つまたは複数の制御ビットは、前記第1および第2のバイパスコンポーネントによって、前記第1と第2の乗算累算ユニットから前記レジスタファイルに移送中のデータが前記レジスタファイルの1つまたは複数の特定のレジスタに格納されるようにするために利用され、
前記第1の乗算累算ユニットから前記レジスタファイルに演算結果を移送するバスが前記第1と第2のバイパスコンポーネントに接続され、前記第2の乗算累算ユニットから前記レジスタファイルに演算結果を移送するバスが、前記第1と第2のバイパスコンポーネントに接続され、前記第1の乗算累算ユニットから前記レジスタファイルに演算結果を移送するバスが、前記第1のバイパスコンポーネントから前記レジスタファイルに演算結果を移送することを可能にするように前記第1のバイパスコンポーネントと前記レジスタファイルに接続され、前記第2の乗算累算ユニットから前記レジスタファイルに演算結果を移送するバスが、前記第2のバイパスコンポーネントから前記レジスタファイルに演算結果を移送することを可能にするように前記第2のバイパスコンポーネントと前記レジスタファイルに接続され、
前記第1と第2の乗算累算ユニットの各々が、1つの82ビット加算器と1つの82ビット乗算器とを含み、各乗算累算ユニットが内部に構成された前記82ビット加算器と前記82ビット乗算器を利用して、前記レジスタファイルから前記第1と第2の乗算累算ユニットに移送される32ビットオペランドに演算を実行する、請求項2の浮動小数点ユニット。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US316340 | 1999-05-21 | ||
US09/316,340 US6493817B1 (en) | 1999-05-21 | 1999-05-21 | Floating-point unit which utilizes standard MAC units for performing SIMD operations |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2001027945A JP2001027945A (ja) | 2001-01-30 |
JP2001027945A5 true JP2001027945A5 (ja) | 2005-03-10 |
JP3683773B2 JP3683773B2 (ja) | 2005-08-17 |
Family
ID=23228645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000149271A Expired - Fee Related JP3683773B2 (ja) | 1999-05-21 | 2000-05-22 | Simd演算を実行するために標準macユニットを利用する浮動小数点ユニット |
Country Status (3)
Country | Link |
---|---|
US (1) | US6493817B1 (ja) |
EP (1) | EP1055997A1 (ja) |
JP (1) | JP3683773B2 (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101359284B (zh) * | 2006-02-06 | 2011-05-11 | 威盛电子股份有限公司 | 处理数个不同数据格式的乘法累加单元及其方法 |
WO2007133101A1 (en) * | 2006-05-16 | 2007-11-22 | Intel Corporation | Floating point addition for different floating point formats |
US8261025B2 (en) | 2007-11-12 | 2012-09-04 | International Business Machines Corporation | Software pipelining on a network on chip |
US8526422B2 (en) | 2007-11-27 | 2013-09-03 | International Business Machines Corporation | Network on chip with partitions |
US8327120B2 (en) * | 2007-12-29 | 2012-12-04 | Intel Corporation | Instructions with floating point control override |
US8473667B2 (en) | 2008-01-11 | 2013-06-25 | International Business Machines Corporation | Network on chip that maintains cache coherency with invalidation messages |
US8490110B2 (en) | 2008-02-15 | 2013-07-16 | International Business Machines Corporation | Network on chip with a low latency, high bandwidth application messaging interconnect |
US20090271172A1 (en) * | 2008-04-24 | 2009-10-29 | International Business Machines Corporation | Emulating A Computer Run Time Environment |
US8423715B2 (en) | 2008-05-01 | 2013-04-16 | International Business Machines Corporation | Memory management among levels of cache in a memory hierarchy |
US8214845B2 (en) | 2008-05-09 | 2012-07-03 | International Business Machines Corporation | Context switching in a network on chip by thread saving and restoring pointers to memory arrays containing valid message data |
US8392664B2 (en) | 2008-05-09 | 2013-03-05 | International Business Machines Corporation | Network on chip |
US8494833B2 (en) | 2008-05-09 | 2013-07-23 | International Business Machines Corporation | Emulating a computer run time environment |
US8230179B2 (en) | 2008-05-15 | 2012-07-24 | International Business Machines Corporation | Administering non-cacheable memory load instructions |
US8438578B2 (en) | 2008-06-09 | 2013-05-07 | International Business Machines Corporation | Network on chip with an I/O accelerator |
US8195884B2 (en) * | 2008-09-18 | 2012-06-05 | International Business Machines Corporation | Network on chip with caching restrictions for pages of computer memory |
CN101986264B (zh) * | 2010-11-25 | 2013-07-31 | 中国人民解放军国防科学技术大学 | 用于simd向量微处理器的多功能浮点乘加运算装置 |
JP2012174016A (ja) | 2011-02-22 | 2012-09-10 | Renesas Electronics Corp | データ処理装置およびそのデータ処理方法 |
WO2019005088A1 (en) * | 2017-06-30 | 2019-01-03 | Intel Corporation | HETEROGENEOUS MULTIPLIER |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4901268A (en) * | 1988-08-19 | 1990-02-13 | General Electric Company | Multiple function data processor |
CA2007059C (en) * | 1989-01-27 | 1994-05-24 | Steven P. Davies | Register and arithmetic logic unit |
EP0681236B1 (en) * | 1994-05-05 | 2000-11-22 | Conexant Systems, Inc. | Space vector data path |
DE69927075T2 (de) * | 1998-02-04 | 2006-06-14 | Texas Instruments Inc | Rekonfigurierbarer Koprozessor mit mehreren Multiplizier-Akkumulier-Einheiten |
US6292886B1 (en) * | 1998-10-12 | 2001-09-18 | Intel Corporation | Scalar hardware for performing SIMD operations |
US6205462B1 (en) * | 1999-10-06 | 2001-03-20 | Cradle Technologies | Digital multiply-accumulate circuit that can operate on both integer and floating point numbers simultaneously |
-
1999
- 1999-05-21 US US09/316,340 patent/US6493817B1/en not_active Expired - Fee Related
- 1999-11-18 EP EP99122964A patent/EP1055997A1/en not_active Withdrawn
-
2000
- 2000-05-22 JP JP2000149271A patent/JP3683773B2/ja not_active Expired - Fee Related
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2001027945A5 (ja) | ||
US5631859A (en) | Floating point arithmetic unit having logic for quad precision arithmetic | |
JP3756967B2 (ja) | 多重ビット・シフト装置,それを用いるデータ・プロセッサおよびその方法 | |
US7430578B2 (en) | Method and apparatus for performing multiply-add operations on packed byte data | |
JP4480997B2 (ja) | Simd整数乗算上位丸めシフト | |
EP0699318B1 (en) | Unified floating point and integer datapath for risc processor | |
US6671796B1 (en) | Converting an arbitrary fixed point value to a floating point value | |
JP5963866B2 (ja) | 機械命令を実行するコンピュータ・プログラム(製品)、コンピュータ・システム、および方法、ならびに命令を処理するためのコンピュータ・プログラム(製品)(複数アドレス指定可能なレジスタ・ファイルおよびそれに関連するフォーマット変換) | |
US6115729A (en) | Floating point multiply-accumulate unit | |
JPH04227530A (ja) | 浮動小数点プロセッサ | |
US7917568B2 (en) | X87 fused multiply-add instruction | |
WO2000022512A1 (en) | Scalar hardware for performing simd operations | |
US20120233234A1 (en) | System and method of bypassing unrounded results in a multiply-add pipeline unit | |
JP3683773B2 (ja) | Simd演算を実行するために標準macユニットを利用する浮動小数点ユニット | |
KR20080098440A (ko) | 선택가능한 하위 정밀도에 대하여 감소된 전력 요구조건들을 가지는 부동 소수점 프로세서 | |
US4208722A (en) | Floating point data processing system | |
JP2004342106A (ja) | 可変幅の符号付きおよび符号なしオペランドのためのモジュラ2進乗算器 | |
JP4891252B2 (ja) | 汎用乗算加算機能ユニット | |
US6324638B1 (en) | Processor having vector processing capability and method for executing a vector instruction in a processor | |
JP2006154979A (ja) | 浮動小数点数演算回路 | |
US20050228844A1 (en) | Fast operand formatting for a high performance multiply-add floating point-unit | |
US6078940A (en) | Microprocessor with an instruction for multiply and left shift with saturate | |
US5574672A (en) | Combination multiplier/shifter | |
US6442676B1 (en) | Processor with different width functional units ignoring extra bits of bus wider than instruction width | |
US20040117421A1 (en) | Methods and systems for computing floating-point intervals |