JP3146308B2 - マトリツクス演算回路 - Google Patents
マトリツクス演算回路Info
- Publication number
- JP3146308B2 JP3146308B2 JP22144190A JP22144190A JP3146308B2 JP 3146308 B2 JP3146308 B2 JP 3146308B2 JP 22144190 A JP22144190 A JP 22144190A JP 22144190 A JP22144190 A JP 22144190A JP 3146308 B2 JP3146308 B2 JP 3146308B2
- Authority
- JP
- Japan
- Prior art keywords
- format
- result
- exponent
- numbers
- bits
- 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.)
- Expired - Fee Related
Links
- 239000011159 matrix material Substances 0.000 title claims description 16
- 238000006243 chemical reaction Methods 0.000 claims description 30
- 238000012545 processing Methods 0.000 claims description 24
- 238000010606 normalization Methods 0.000 description 21
- 238000000034 method Methods 0.000 description 12
- 238000007792 addition Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000009466 transformation Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000010420 art technique Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Image Processing (AREA)
- Image Generation (AREA)
- Complex Calculations (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明はコンピユータシステムに関し、特に、超高速
グラフイツクスアクセルレータのマトリツクス演算部に
おいて使用される一意の数のフオーマツトの数を操作す
る構成に関する。
グラフイツクスアクセルレータのマトリツクス演算部に
おいて使用される一意の数のフオーマツトの数を操作す
る構成に関する。
コンピユータシステムを設計する場合、システムがよ
り多くの仕事をこなせるようにシステムをさらにスピー
ドアツプすることに重きが置かれるのが常である。図形
表示機能を伴なうコンピユータは、数字とテキストしか
提示しないコンピユータと比べて、多くの仕事を行うこ
とができる。残念なことに、コンピユータによつて図形
を表示するには、システムの処理能力の大部分を必要と
する。たとえば、純然たる標準サイズのワークステーシ
ョンの出力表示装置に図形資料の1フレーム分を表示す
るためには、水平方向の約千個の画素と、垂直方向の約
千個の画素とに関する情報を記憶しなければならず、表
示すべきフレームごとに約百万個の画素が必要になるの
である。カラーシステムの場合には、そのような画素
が、それぞれ、各画素を規定する8ビツト以上のデジタ
ル情報を含んでいる。従つて、出力表示装置に提示すべ
きフレームごとに、約八百万ビツトの情報を処理し且つ
記憶しなければならない。出力表示装置ではフレームは
1秒に30回繰返されるので、単に出力表示装置自体を動
作させるだけでも、表示装置に提示することが必要な情
報の総量は大変に大きな数になる。図形出力を表示する
ためにそのような大量の情報を取扱うという単純なこと
が中央処理装置(CPU)で利用できる時間のかなり大き
な部分を占め、どのように高速のプロセツサであつて
も、その動作は相当に遅くなつてしまうであろう。
り多くの仕事をこなせるようにシステムをさらにスピー
ドアツプすることに重きが置かれるのが常である。図形
表示機能を伴なうコンピユータは、数字とテキストしか
提示しないコンピユータと比べて、多くの仕事を行うこ
とができる。残念なことに、コンピユータによつて図形
を表示するには、システムの処理能力の大部分を必要と
する。たとえば、純然たる標準サイズのワークステーシ
ョンの出力表示装置に図形資料の1フレーム分を表示す
るためには、水平方向の約千個の画素と、垂直方向の約
千個の画素とに関する情報を記憶しなければならず、表
示すべきフレームごとに約百万個の画素が必要になるの
である。カラーシステムの場合には、そのような画素
が、それぞれ、各画素を規定する8ビツト以上のデジタ
ル情報を含んでいる。従つて、出力表示装置に提示すべ
きフレームごとに、約八百万ビツトの情報を処理し且つ
記憶しなければならない。出力表示装置ではフレームは
1秒に30回繰返されるので、単に出力表示装置自体を動
作させるだけでも、表示装置に提示することが必要な情
報の総量は大変に大きな数になる。図形出力を表示する
ためにそのような大量の情報を取扱うという単純なこと
が中央処理装置(CPU)で利用できる時間のかなり大き
な部分を占め、どのように高速のプロセツサであつて
も、その動作は相当に遅くなつてしまうであろう。
このため、図形の表示に関連するデータ処理機能の一
部を引継ぐことによつて中央処理装置の動作を補助する
ことができるグラフイツクスアクセルレータをコンピユ
ータシステムに組込むのが一般的になつている。このよ
うに、図形処理機能の一部を中央処理装置からグラフイ
ツクスアクセルレータに移行すると、ある特定のコンピ
ユータシステムが図形情報を処理できる速度をかなり増
すことが可能になる。
部を引継ぐことによつて中央処理装置の動作を補助する
ことができるグラフイツクスアクセルレータをコンピユ
ータシステムに組込むのが一般的になつている。このよ
うに、図形処理機能の一部を中央処理装置からグラフイ
ツクスアクセルレータに移行すると、ある特定のコンピ
ユータシステムが図形情報を処理できる速度をかなり増
すことが可能になる。
非常に高速のグラフイツクスアクセルレータを設計し
ようとする試みがなされている。グラフイツクスアクセ
ルレータが実行できる主な機能の1つは、コンピユータ
の出力表示装置で図形画像の位置を移動させるために必
要なマトリツクス演算の処理である。そのようなマトリ
ツクス演算は、コンピユータの出力表示装置に表示すべ
き特定の図形を回転,並進,拡大縮小及びその他の方法
によつて操作するために二次元図形と三次元図形の双方
を処理する際に必要である。グラフイツクスアクセルレ
ータは、表示すべき図形の操作のたびに操作すべき図形
の様々な頂点を次々に計算し直さなければならないとい
う煩わしさから中央処理装置を解放することができるの
で、上記のような演算を実行するのには非常に有用であ
る。グラフイツクスアクセルレータはデータのハードウ
エア操作によつて必要な数多くの動作を実行し、そのよ
うなシステムを利用するコンピユータシステムの動作を
大幅にスピードアツプすると考えられる。
ようとする試みがなされている。グラフイツクスアクセ
ルレータが実行できる主な機能の1つは、コンピユータ
の出力表示装置で図形画像の位置を移動させるために必
要なマトリツクス演算の処理である。そのようなマトリ
ツクス演算は、コンピユータの出力表示装置に表示すべ
き特定の図形を回転,並進,拡大縮小及びその他の方法
によつて操作するために二次元図形と三次元図形の双方
を処理する際に必要である。グラフイツクスアクセルレ
ータは、表示すべき図形の操作のたびに操作すべき図形
の様々な頂点を次々に計算し直さなければならないとい
う煩わしさから中央処理装置を解放することができるの
で、上記のような演算を実行するのには非常に有用であ
る。グラフイツクスアクセルレータはデータのハードウ
エア操作によつて必要な数多くの動作を実行し、そのよ
うなシステムを利用するコンピユータシステムの動作を
大幅にスピードアツプすると考えられる。
しかしながら、きわめて高速の動作を得るという点で
依然として大きな問題が残つている。この問題は、グラ
フイツクスアクセルレータが複数の異なる数のフオーマ
ツトをとるデータを操作しなければならないというとこ
ろから起こる。たとえば、中央処理装置が処理する情報
は、通常、整数フオーマツトで現われ、出力表示装置が
その情報を利用するときには、表示装置は画素を分数処
理しないので、そのフオーマツトで現われなければなら
ない。これに対し、科学的処理で使用されている非常に
大きな数による多くの操作には、浮動小数点フオーマツ
トを使用しなければならない。そのような浮動小数点形
の数をコンピユータ出力表示装置での提示に備えて最終
的には整数フオーマツトに変換しなければならないこと
は明白である。さらに、頭辞語FRACTにより表わされる
フオーマツトのような他のフオーマツトも、特定の種類
の図形表示装置を操作するときには特に有用であると思
われる。そのようなフオーマツトはそれぞれ皆異なつて
おり、従来のシステムでは、数を絶えず1つのフオーマ
ツトから別のフオーマツトに変換していなければならな
い。
依然として大きな問題が残つている。この問題は、グラ
フイツクスアクセルレータが複数の異なる数のフオーマ
ツトをとるデータを操作しなければならないというとこ
ろから起こる。たとえば、中央処理装置が処理する情報
は、通常、整数フオーマツトで現われ、出力表示装置が
その情報を利用するときには、表示装置は画素を分数処
理しないので、そのフオーマツトで現われなければなら
ない。これに対し、科学的処理で使用されている非常に
大きな数による多くの操作には、浮動小数点フオーマツ
トを使用しなければならない。そのような浮動小数点形
の数をコンピユータ出力表示装置での提示に備えて最終
的には整数フオーマツトに変換しなければならないこと
は明白である。さらに、頭辞語FRACTにより表わされる
フオーマツトのような他のフオーマツトも、特定の種類
の図形表示装置を操作するときには特に有用であると思
われる。そのようなフオーマツトはそれぞれ皆異なつて
おり、従来のシステムでは、数を絶えず1つのフオーマ
ツトから別のフオーマツトに変換していなければならな
い。
従来のシステムにおいては、数の変換の大半を実行す
るために、中央処理装置(CPU)が呼出されていた。従
つて、浮動小数点は浮動小数点コプロセツサの利用によ
り処理可能であろうが、コンピユータの出力表示装置で
特定の図形出力を表示するときにその数を使用できるよ
うに、最終的にはシステムのプロセツサにより数を整数
フオーマツトに変換しなければならない。異なるフオー
マツト間でのプロセツサによる数の変換は順次処理され
るので非常に長い時間を要し、どのコンピユータシステ
ムの動作をも相当に遅くしてしまう。
るために、中央処理装置(CPU)が呼出されていた。従
つて、浮動小数点は浮動小数点コプロセツサの利用によ
り処理可能であろうが、コンピユータの出力表示装置で
特定の図形出力を表示するときにその数を使用できるよ
うに、最終的にはシステムのプロセツサにより数を整数
フオーマツトに変換しなければならない。異なるフオー
マツト間でのプロセツサによる数の変換は順次処理され
るので非常に長い時間を要し、どのコンピユータシステ
ムの動作をも相当に遅くしてしまう。
グラフイツクスアクセルレータの動作をスピードアツ
プするために、マトリツクス変換回路により内部で使用
されるべき新たな数のフオーマツトが考案されている。
本出願と同じ日付で出願された同時係属米国特許出願第
号,名称「NUMBER CONVERSION APPARATUS」に
は、整数フオーマツト,浮動小数点フオーマツト及びFR
ACTフオーマツトの数と、この新たなフオーマツト(複
数のタツプポイントを有するモジユーロ256フオーマツ
トと呼ばれる。以下では、略して「モジユーロ256」と
いう。)で表わされる数との間で変換を実行する回路が
記載されている。しかしながら、モジユーロ256の数の
フオーマツトによるマトリツクス変換演算を処理し、全
ての内部操作を実行しうるような独自の回路及び方法は
依然として要求されているのである。
プするために、マトリツクス変換回路により内部で使用
されるべき新たな数のフオーマツトが考案されている。
本出願と同じ日付で出願された同時係属米国特許出願第
号,名称「NUMBER CONVERSION APPARATUS」に
は、整数フオーマツト,浮動小数点フオーマツト及びFR
ACTフオーマツトの数と、この新たなフオーマツト(複
数のタツプポイントを有するモジユーロ256フオーマツ
トと呼ばれる。以下では、略して「モジユーロ256」と
いう。)で表わされる数との間で変換を実行する回路が
記載されている。しかしながら、モジユーロ256の数の
フオーマツトによるマトリツクス変換演算を処理し、全
ての内部操作を実行しうるような独自の回路及び方法は
依然として要求されているのである。
従つて、本発明の目的は、複数のタツプポイントを有
するモジユーロ256の数のフオーマツトで表わされる数
についてマトリツクス変換演算を急速に処理する構成を
提供することにより、コンピユータシステムの動作速度
を増すことである。
するモジユーロ256の数のフオーマツトで表わされる数
についてマトリツクス変換演算を急速に処理する構成を
提供することにより、コンピユータシステムの動作速度
を増すことである。
本発明のこの目的及びその他の目的は、複数のタツプ
ポイントを有するモジユーロ256の数のフオーマツトで
数を記憶する手段と、複数のタツプポイントを有するモ
ジユーロ256の数のフオーマツトで記憶されている2つ
の数を乗算する手段と、2つの数を乗算した結果を正規
化する手段と、2つの数を乗算した結果を正規化したも
のと、複数のタツプポイントを有するモジユーロ256の
数のフオーマツトの第2の数とを加算する手段とを具備
するマトリツクス演算回路により達成される。
ポイントを有するモジユーロ256の数のフオーマツトで
数を記憶する手段と、複数のタツプポイントを有するモ
ジユーロ256の数のフオーマツトで記憶されている2つ
の数を乗算する手段と、2つの数を乗算した結果を正規
化する手段と、2つの数を乗算した結果を正規化したも
のと、複数のタツプポイントを有するモジユーロ256の
数のフオーマツトの第2の数とを加算する手段とを具備
するマトリツクス演算回路により達成される。
本発明のこれらの目的及び特徴並びにその他の目的及
び特徴は、図面と関連させて以下の詳細な説明を参照す
ることにより当業者には明白になるであろう。尚、図面
のいくつかの図を通して同じ図中符号は同じ要素を指
す。
び特徴は、図面と関連させて以下の詳細な説明を参照す
ることにより当業者には明白になるであろう。尚、図面
のいくつかの図を通して同じ図中符号は同じ要素を指
す。
以下の詳細な説明の中には、コンピユータメモリ内部
のデータビツトの操作をアルゴリズム及び記号表示によ
つて表わしている部分がある。このようなアルゴリズム
による説明や、記号表示は、データ処理技術に熟達した
人がその作業の内容を同じ技術分野の当業者に最も有効
に伝達するための手段である。
のデータビツトの操作をアルゴリズム及び記号表示によ
つて表わしている部分がある。このようなアルゴリズム
による説明や、記号表示は、データ処理技術に熟達した
人がその作業の内容を同じ技術分野の当業者に最も有効
に伝達するための手段である。
ここでは、また、一般的にも、アルゴリズムは、所望
の結果に至る首尾一貫したステツプのシーケンスであ
る。それらのステツプは、物理的な量の物理的操作を必
要とするステツプである。通常、物理的な量は記憶,転
送,組合せ,比較及びその他の方法による操作が可能で
ある電気信号又は磁気信号の形態をとるが、必ずしもそ
うである必要はない。時によつて、主に一般に共通して
使用されている用語であるという理由により、それらの
信号をビツト,値,要素,記号,文字,項,数などと呼
ぶと好都合であることがわかつている。ただし、これら
の用語及びそれに類する用語は、全て、適切な物理的な
量と関連させるべきものであり、そのような量に便宜上
付されたラベルであるにすぎないということを忘れては
ならない。
の結果に至る首尾一貫したステツプのシーケンスであ
る。それらのステツプは、物理的な量の物理的操作を必
要とするステツプである。通常、物理的な量は記憶,転
送,組合せ,比較及びその他の方法による操作が可能で
ある電気信号又は磁気信号の形態をとるが、必ずしもそ
うである必要はない。時によつて、主に一般に共通して
使用されている用語であるという理由により、それらの
信号をビツト,値,要素,記号,文字,項,数などと呼
ぶと好都合であることがわかつている。ただし、これら
の用語及びそれに類する用語は、全て、適切な物理的な
量と関連させるべきものであり、そのような量に便宜上
付されたラベルであるにすぎないということを忘れては
ならない。
さらに、実行される操作を、オペレータが実行する知
的動作と一般には関連している加算又は比較などの用語
で呼ぶことが多いが、本発明の一部を形成している、こ
こで説明する動作のどれをとつても、そのようなオペレ
ータの能力は、多くの場合に不要であるか又は望ましく
ない。動作は機械の動作である。本発明の動作を実行す
るのに有用な機械には、汎用デジタルコンピユータ又は
他の同様の装置がある。いずれの場合にも、コンピユー
タを動作させる際の方法動作と、計算それ自体の方法と
の明確な区別に留意すべきである。本発明は、電気的信
号又はその他の物理的(たとえば、機械的、化学的)信
号を処理して、他の所望の物理的信号を発生させるに際
してコンピユータを動作させる方法ステツプに関する。
的動作と一般には関連している加算又は比較などの用語
で呼ぶことが多いが、本発明の一部を形成している、こ
こで説明する動作のどれをとつても、そのようなオペレ
ータの能力は、多くの場合に不要であるか又は望ましく
ない。動作は機械の動作である。本発明の動作を実行す
るのに有用な機械には、汎用デジタルコンピユータ又は
他の同様の装置がある。いずれの場合にも、コンピユー
タを動作させる際の方法動作と、計算それ自体の方法と
の明確な区別に留意すべきである。本発明は、電気的信
号又はその他の物理的(たとえば、機械的、化学的)信
号を処理して、他の所望の物理的信号を発生させるに際
してコンピユータを動作させる方法ステツプに関する。
第1図は、本発明の回路の基本構成をブロツク線図の
形態で示す。第1図に示すように、データバスは、整
数,FRACT及び浮動小数点の各フオーマツトの数とを表わ
す入力信号を入力変換装置12に供給する。コンピユータ
システムで利用可能であるような他の数のフオーマツト
をモジユーロ256フオーマツトに変換しても良いことは
言うまでもない。本発明が利用されているシステムにお
いては、整数がそのフオーマツトであるという知識をも
つて入力変換装置で処理できるように、整数が1つのア
ドレスへ導かれる。同じように、FRACTフオーマツト及
び浮動小数点の入力フオーマツトで現われる数も、入力
変換装置12がそれらの数をそれぞれのフオーマツトで現
われているものとして認識するようなアドレスへアドレ
スされる。従つて、各フオーマツトの数は、それぞれの
フオーマツトごとに、同時係属出願に記載されている方
法により変換され且つ正規化される。
形態で示す。第1図に示すように、データバスは、整
数,FRACT及び浮動小数点の各フオーマツトの数とを表わ
す入力信号を入力変換装置12に供給する。コンピユータ
システムで利用可能であるような他の数のフオーマツト
をモジユーロ256フオーマツトに変換しても良いことは
言うまでもない。本発明が利用されているシステムにお
いては、整数がそのフオーマツトであるという知識をも
つて入力変換装置で処理できるように、整数が1つのア
ドレスへ導かれる。同じように、FRACTフオーマツト及
び浮動小数点の入力フオーマツトで現われる数も、入力
変換装置12がそれらの数をそれぞれのフオーマツトで現
われているものとして認識するようなアドレスへアドレ
スされる。従つて、各フオーマツトの数は、それぞれの
フオーマツトごとに、同時係属出願に記載されている方
法により変換され且つ正規化される。
入力変換装置12に与えられた数は、モジユーロ256の
フオーマツトへの変換後、グラフイツクスアクセルレー
タの変換エンジン14へ転送される。変換エンジン14は、
本発明の教示に従つて、一意の数のフオーマツトを処理
するのに適する回路を使用して数を操作し、出力変換装
置16に出力を供給する。出力変換装置16は、後にこのシ
ステムで使用するように数をモジユーロ256のフオーマ
ツトから整数,FRACT及び浮動小数点の各フオーマツトに
変換する。たとえば、整数フオーマツトは、出力フレー
ムバツフアに数を記憶するときに利用しなければならな
いフオーマツトである。それに対し、FRACTフオーマツ
ト,浮動小数点フオーマツト及び内部モジユーロ256フ
オーマツトは、コンピユータシステムが実行するそれ以
降の、フレームバツフアへの記憶とは関係ない動作のた
めに利用できるフオーマツトである。
フオーマツトへの変換後、グラフイツクスアクセルレー
タの変換エンジン14へ転送される。変換エンジン14は、
本発明の教示に従つて、一意の数のフオーマツトを処理
するのに適する回路を使用して数を操作し、出力変換装
置16に出力を供給する。出力変換装置16は、後にこのシ
ステムで使用するように数をモジユーロ256のフオーマ
ツトから整数,FRACT及び浮動小数点の各フオーマツトに
変換する。たとえば、整数フオーマツトは、出力フレー
ムバツフアに数を記憶するときに利用しなければならな
いフオーマツトである。それに対し、FRACTフオーマツ
ト,浮動小数点フオーマツト及び内部モジユーロ256フ
オーマツトは、コンピユータシステムが実行するそれ以
降の、フレームバツフアへの記憶とは関係ない動作のた
めに利用できるフオーマツトである。
第2図は、本発明が利用する、複数のタツプポイント
を有するモジユーロ256の数のフオーマツトを示す。こ
のフオーマツトには36の独立したビツト位置がある。最
も左側の4ビツトは指数を表示するために利用される。
続く8つのビツトは符号付き整数成分を表示するために
利用され、その右側の24ビツトは小数部成分を表示する
ために利用される。整数部のビツトは20から始まり、2
進小数点から左に向かつて増加してゆく2の正の累乗を
表わし、一方、小数部のビツトは、2-1から始まり、小
数点から右に向かつて増加してゆく2の負の累乗を表わ
している。この数のフオーマツトは2進フオーマツトで
はあるが、その使用のされかたは、コンピユータシステ
ムが通常使用する他の数のフオーマツトのいずれとも幾
分か異なつている。
を有するモジユーロ256の数のフオーマツトを示す。こ
のフオーマツトには36の独立したビツト位置がある。最
も左側の4ビツトは指数を表示するために利用される。
続く8つのビツトは符号付き整数成分を表示するために
利用され、その右側の24ビツトは小数部成分を表示する
ために利用される。整数部のビツトは20から始まり、2
進小数点から左に向かつて増加してゆく2の正の累乗を
表わし、一方、小数部のビツトは、2-1から始まり、小
数点から右に向かつて増加してゆく2の負の累乗を表わ
している。この数のフオーマツトは2進フオーマツトで
はあるが、その使用のされかたは、コンピユータシステ
ムが通常使用する他の数のフオーマツトのいずれとも幾
分か異なつている。
モジユーロ256フオーマツトで表示された数を読取る
ときには、指数の4ビツトから8(指数の上位ビツトの
位置にある1)を減じた値により指示される小数乗に累
乗した256を符号付き仮数部に掛ける。所定数のビツト
で表示することができる数より大きい数を表示するため
に1を使用するIEEEフオーマツトとの間で容易に変換を
行えるようにするために、指数の上位ビツトは、通常、
1である。モジユーロ256フオーマツトの上位ビツトが
1であると、IEEEフオーマツトとの間での変換はさらに
容易になる。ただし、上位ビツトを1にする必要がある
ため、正しい指数値を得るには、8を減算しなければな
らない。
ときには、指数の4ビツトから8(指数の上位ビツトの
位置にある1)を減じた値により指示される小数乗に累
乗した256を符号付き仮数部に掛ける。所定数のビツト
で表示することができる数より大きい数を表示するため
に1を使用するIEEEフオーマツトとの間で容易に変換を
行えるようにするために、指数の上位ビツトは、通常、
1である。モジユーロ256フオーマツトの上位ビツトが
1であると、IEEEフオーマツトとの間での変換はさらに
容易になる。ただし、上位ビツトを1にする必要がある
ため、正しい指数値を得るには、8を減算しなければな
らない。
たとえば、第2図に示す位置に2進小数点を有する仮
数部にある2進数を考えてみる。4つの指数ビツトが10
00である場合、2進小数点は第2図に示すような位置、
すなわち、最下位の指数ビツトから右に8ビツト置いた
初期位置にとどまつている。指数ビツトが指数1を示す
1001であれば、2進小数点は第2図に示す位置から右へ
8ビツト有効にシフトされる。指数ビツトが指数2を示
す1010であれば、2進小数点は第2図に示す位置から右
へ16ビツト有効にシフトする。指数が1011,すなわち3
であるときには、2進小数点は、第2図に示す位置から
24ビツト右の、最下位ビツト位置のすぐ右側の位置まで
有効にシフトする。
数部にある2進数を考えてみる。4つの指数ビツトが10
00である場合、2進小数点は第2図に示すような位置、
すなわち、最下位の指数ビツトから右に8ビツト置いた
初期位置にとどまつている。指数ビツトが指数1を示す
1001であれば、2進小数点は第2図に示す位置から右へ
8ビツト有効にシフトされる。指数ビツトが指数2を示
す1010であれば、2進小数点は第2図に示す位置から右
へ16ビツト有効にシフトする。指数が1011,すなわち3
であるときには、2進小数点は、第2図に示す位置から
24ビツト右の、最下位ビツト位置のすぐ右側の位置まで
有効にシフトする。
IEEE単精度フオーマツトの数を操作することができる
プロセスがモジユーロ256フオーマツトなどの別の数の
フオーマツトの数を操作できないことは当業者には明ら
かであろう。そこで、本発明は、スケーリング,回転及
び並進のような、変換エンジンに要求される変換を実行
するために、モジユーロ256の数のフオーマツトで表わ
された数を操作するのに使用できるような装置及び方法
を提供することを目的としている。ここで説明する構成
によれば、マトリツクス演算の全てを実行するグラフイ
ツクスアクセルレータの変換エンジン14はモジユーロ25
6の数のフオーマツトを内部で利用する。この新たな数
のフオーマツトを利用する数の出力は、変換エンジンが
それらの数の操作を完了した後は、システムで使用され
る他のフオーマツトをとつてそれぞれ供給されるので好
都合である。
プロセスがモジユーロ256フオーマツトなどの別の数の
フオーマツトの数を操作できないことは当業者には明ら
かであろう。そこで、本発明は、スケーリング,回転及
び並進のような、変換エンジンに要求される変換を実行
するために、モジユーロ256の数のフオーマツトで表わ
された数を操作するのに使用できるような装置及び方法
を提供することを目的としている。ここで説明する構成
によれば、マトリツクス演算の全てを実行するグラフイ
ツクスアクセルレータの変換エンジン14はモジユーロ25
6の数のフオーマツトを内部で利用する。この新たな数
のフオーマツトを利用する数の出力は、変換エンジンが
それらの数の操作を完了した後は、システムで使用され
る他のフオーマツトをとつてそれぞれ供給されるので好
都合である。
第3図は、本発明の回路の基本構成をブロツク線図の
形態で示す。第3図は、本発明においてグラフイツクス
アクセルレータに必要な特定のマトリツクス機能を実行
するために利用できるような変換エンジン14を表わして
いる。変換エンジン14は、中央処理装置又はその他の処
理装置から受取つた様々な数をモジユーロ256フオーマ
ツトで記憶するランダムアクセスメモリ(RAM)20を含
む。
形態で示す。第3図は、本発明においてグラフイツクス
アクセルレータに必要な特定のマトリツクス機能を実行
するために利用できるような変換エンジン14を表わして
いる。変換エンジン14は、中央処理装置又はその他の処
理装置から受取つた様々な数をモジユーロ256フオーマ
ツトで記憶するランダムアクセスメモリ(RAM)20を含
む。
変換エンジンが実行する変換動作は、本質的には、乗
算と加算の演算である。いずれかのフオーマツトで乗算
演算を実行する場合、仮数部と指数とを乗算する必要が
ある。一方、2つの数を加算するときには、指数が同一
のレベルでなければならない。RAM20は、AM及びBMで示
す各端子から、1つのモジユーロ256の数の仮数部を表
わしている32ビツトの出力信号をそれぞれ発生し、AE及
びBEで示す各端子では、モジユーロ256の数の指数を表
わす4ビツトの出力信号をそれぞれ発生する。端子AM及
びBMの信号は32×32ビツト符号付き乗算器22へ転送され
る。端子AE及びBEの信号は指数加算器23へ転送される。
指数加算器23は、それぞれの端子AE,BEから供給される
指数を加算する。符号付き乗算器22は、当該技術分野で
良く知られている方式でマトリツクス乗算を実行するよ
うに構成されても良い。本発明の好ましい実施例におい
ては、LSI Logic製造の32×32ビツト符号付き乗算器−
部品番号:DMB 2440A−を利用する。符号付き乗算器22は
単一の64ビツト出力信号を発生し、この信号は正規化回
路32により正規化される。乗算が終了するたびに64ビツ
トの数を正規化するのは、ビツトを8ビツトずつのステ
ツプで左へできる限り遠く移動し、そのような8ビツト
ステツプごとに指数を1ずつ減少させることにより、ビ
ツトをモジユーロ256フオーマツトが与えるスペースに
さらに適正に当てはめるためである。正規化回路32は指
数正規化回路34に信号を供給し、指数正規化回路34は、
正規化プロセス中に起こつた8ビツトシフトの回数を指
示するために、指数加算器23により供給された結果に対
して何らかの正規化修正を加算又は減算する。
算と加算の演算である。いずれかのフオーマツトで乗算
演算を実行する場合、仮数部と指数とを乗算する必要が
ある。一方、2つの数を加算するときには、指数が同一
のレベルでなければならない。RAM20は、AM及びBMで示
す各端子から、1つのモジユーロ256の数の仮数部を表
わしている32ビツトの出力信号をそれぞれ発生し、AE及
びBEで示す各端子では、モジユーロ256の数の指数を表
わす4ビツトの出力信号をそれぞれ発生する。端子AM及
びBMの信号は32×32ビツト符号付き乗算器22へ転送され
る。端子AE及びBEの信号は指数加算器23へ転送される。
指数加算器23は、それぞれの端子AE,BEから供給される
指数を加算する。符号付き乗算器22は、当該技術分野で
良く知られている方式でマトリツクス乗算を実行するよ
うに構成されても良い。本発明の好ましい実施例におい
ては、LSI Logic製造の32×32ビツト符号付き乗算器−
部品番号:DMB 2440A−を利用する。符号付き乗算器22は
単一の64ビツト出力信号を発生し、この信号は正規化回
路32により正規化される。乗算が終了するたびに64ビツ
トの数を正規化するのは、ビツトを8ビツトずつのステ
ツプで左へできる限り遠く移動し、そのような8ビツト
ステツプごとに指数を1ずつ減少させることにより、ビ
ツトをモジユーロ256フオーマツトが与えるスペースに
さらに適正に当てはめるためである。正規化回路32は指
数正規化回路34に信号を供給し、指数正規化回路34は、
正規化プロセス中に起こつた8ビツトシフトの回数を指
示するために、指数加算器23により供給された結果に対
して何らかの正規化修正を加算又は減算する。
指数正規化回路34の出力は指数制御回路25に供給され
る。正規化回路32の出力は第2の正規化回路33へ転送さ
れ、さらに、32ビツト加算器24へ転送される。2つの数
を加算するには、それらの数の指数が同じ値でなければ
ならない。指数制御回路25と正規化回路33はこの結果を
与える。指数制御回路25は、その入力部で2つの数の指
数を比較し、どちらが小さい指数を有するかを判定し、
指数が同じ値になるまで、その小さいほうの数の仮数部
を正規化回路33により8ビツトずつのステツプで右へシ
フトさせる。それら2つの数は加算器24へ転送され、加
算される。加算器24の出力は別の正規化回路36へ転送さ
れる。この正規化回路36は正規化回路32と同じように機
能して、結果を転送し、モジユーロ256フオーマツトに
より与えられたスペースに当てはめる。多くの場合、加
算器24を経た後、アクシヨンは不要であるが、上位ビツ
トの繰上げの場合には、整数部について与えられたスペ
ースに当てはめるために数を右へ8ビツトシフトしなけ
ればならないと共に、指数を1だけ大きくしなければな
らない。正規化回路36は指数制御回路37に指数の値を修
正させる。その後、仮数部と指数はラツチングレジスタ
39へ供給されるのであるが、変換エンジン14に必要な様
々なマトリツクス加算を実行するのを助けるために、仮
数部と指数をランダムアクセスメモリ20及び32ビツト加
算器24に戻しても良い。本発明の好ましい実施例で利用
する加算器は、1988年12月14日出願のPriemによる米国
特許出願第07/284,110号,名称「METHOD AND APPARATUS
FOR A PARALLEL CARRY GENERATION ADDER」に記載され
ている。
る。正規化回路32の出力は第2の正規化回路33へ転送さ
れ、さらに、32ビツト加算器24へ転送される。2つの数
を加算するには、それらの数の指数が同じ値でなければ
ならない。指数制御回路25と正規化回路33はこの結果を
与える。指数制御回路25は、その入力部で2つの数の指
数を比較し、どちらが小さい指数を有するかを判定し、
指数が同じ値になるまで、その小さいほうの数の仮数部
を正規化回路33により8ビツトずつのステツプで右へシ
フトさせる。それら2つの数は加算器24へ転送され、加
算される。加算器24の出力は別の正規化回路36へ転送さ
れる。この正規化回路36は正規化回路32と同じように機
能して、結果を転送し、モジユーロ256フオーマツトに
より与えられたスペースに当てはめる。多くの場合、加
算器24を経た後、アクシヨンは不要であるが、上位ビツ
トの繰上げの場合には、整数部について与えられたスペ
ースに当てはめるために数を右へ8ビツトシフトしなけ
ればならないと共に、指数を1だけ大きくしなければな
らない。正規化回路36は指数制御回路37に指数の値を修
正させる。その後、仮数部と指数はラツチングレジスタ
39へ供給されるのであるが、変換エンジン14に必要な様
々なマトリツクス加算を実行するのを助けるために、仮
数部と指数をランダムアクセスメモリ20及び32ビツト加
算器24に戻しても良い。本発明の好ましい実施例で利用
する加算器は、1988年12月14日出願のPriemによる米国
特許出願第07/284,110号,名称「METHOD AND APPARATUS
FOR A PARALLEL CARRY GENERATION ADDER」に記載され
ている。
本発明の回路で利用する数のフオーマツトは、グラフ
イツクスアクセルレータによる処理をきわめて高速で実
行させることができる。まず、本発明によれば、加算と
乗算を同時に実行することができるので、それらの複数
のアクシヨンをCPUにより順次式ソフトウエアで実行す
るために必要な時間は短縮される。たとえば、本発明の
グラフイツクスアクセルレータに供給された浮動小数点
数に関する演算は、従来の技術で数多く開示されている
ような浮動小数点コプロセツサで同じ演算を実行すると
きと比べて、わずかに速く実行されることがわかつてい
る。
イツクスアクセルレータによる処理をきわめて高速で実
行させることができる。まず、本発明によれば、加算と
乗算を同時に実行することができるので、それらの複数
のアクシヨンをCPUにより順次式ソフトウエアで実行す
るために必要な時間は短縮される。たとえば、本発明の
グラフイツクスアクセルレータに供給された浮動小数点
数に関する演算は、従来の技術で数多く開示されている
ような浮動小数点コプロセツサで同じ演算を実行すると
きと比べて、わずかに速く実行されることがわかつてい
る。
内部モジユーロ256フオーマツトを使用して処理を実
行するときの時間が大幅に節約される理由の1つは、32
×32ビツト符号付き加算器22と、加算器24の各段で正規
化が要求されることである。IEEEフオーマツトであれ、
モジユーロ256フオーマツトであれ、正規化の際には、
数の2進小数点は、それを数のフオーマツトと整列させ
るために、通常はバレルシフタにより所定のビツト数だ
けシフトされる。バレルシフタ(第4図を参照)は、数
を一度に所定のビツト数だけシフトさせることができる
手段をハードウエアにより実現したものである。バレル
シフタは多数のマルチプレクサ段から構成されており、
シフトすべき最大数のビツトを2進フオーマツトで表わ
すのに必要なビツトと等しい数の制御線を有する。IEEE
単精度浮動小数点フオーマツトの数を32ビツトシフトす
るためには5つの制御線が必要であり、その結果、5段
階の遅延を経ることになる。8ビツトを1ステツプとす
るシフトでは、3つの制御線を必要とするだけであるの
で、結果として起こる遅延は3段階のみである。モジユ
ーロ256フオーマツトの数の場合には、シフトごとに2
進小数点は8つのビツト位置ずつ移動してゆくので、2
つの制御線により数を制御することができる。従つて、
単精度浮動小数点フオーマツトの代わりにモジユーロ25
6フオーマツトを使用すると、正規化のたびに3つの遅
延が省かれるのである。正規化は乗算ごとに1度、加算
のたびに2度行われるので、本発明の構成はかなりの時
間を節約することになるのである。
行するときの時間が大幅に節約される理由の1つは、32
×32ビツト符号付き加算器22と、加算器24の各段で正規
化が要求されることである。IEEEフオーマツトであれ、
モジユーロ256フオーマツトであれ、正規化の際には、
数の2進小数点は、それを数のフオーマツトと整列させ
るために、通常はバレルシフタにより所定のビツト数だ
けシフトされる。バレルシフタ(第4図を参照)は、数
を一度に所定のビツト数だけシフトさせることができる
手段をハードウエアにより実現したものである。バレル
シフタは多数のマルチプレクサ段から構成されており、
シフトすべき最大数のビツトを2進フオーマツトで表わ
すのに必要なビツトと等しい数の制御線を有する。IEEE
単精度浮動小数点フオーマツトの数を32ビツトシフトす
るためには5つの制御線が必要であり、その結果、5段
階の遅延を経ることになる。8ビツトを1ステツプとす
るシフトでは、3つの制御線を必要とするだけであるの
で、結果として起こる遅延は3段階のみである。モジユ
ーロ256フオーマツトの数の場合には、シフトごとに2
進小数点は8つのビツト位置ずつ移動してゆくので、2
つの制御線により数を制御することができる。従つて、
単精度浮動小数点フオーマツトの代わりにモジユーロ25
6フオーマツトを使用すると、正規化のたびに3つの遅
延が省かれるのである。正規化は乗算ごとに1度、加算
のたびに2度行われるので、本発明の構成はかなりの時
間を節約することになるのである。
さらに、本発明のシステムによれば、整数の処理に標
準的な方法を利用しないので、尚一層、時間を節約でき
る。大半のシステムでは、整数又はFRACTフオーマツト
の数を倍精度浮動小数点数に変換し、CPU又は浮動小数
点コプロセツサにより演算を実行し、その後、数を整数
に戻し変換する。本発明においては、整数及びFRACTフ
オーマツトの数の全精度を維持するモジユーロ256フオ
ーマツトにより全ての数を内部で処理するため、このよ
うな変換は不要である。
準的な方法を利用しないので、尚一層、時間を節約でき
る。大半のシステムでは、整数又はFRACTフオーマツト
の数を倍精度浮動小数点数に変換し、CPU又は浮動小数
点コプロセツサにより演算を実行し、その後、数を整数
に戻し変換する。本発明においては、整数及びFRACTフ
オーマツトの数の全精度を維持するモジユーロ256フオ
ーマツトにより全ての数を内部で処理するため、このよ
うな変換は不要である。
また、2の補数の数によつて加算を実行するために、
高速加算器を使用して加算を実行できるので、さらに時
間を節約できる。IEEEフオーマツトの仮数部は、常に、
正の数と、符号ビツトである。それらの数を、まず、2
の補数に変換し、高速加算器によつて加算し、次に、正
の数と、符号ビツトとに戻さなければならない。本発明
では、IEEE変換は入力変換装置12及び出力変換装置16で
のみ実行され、加算ごとに行われるのではない。
高速加算器を使用して加算を実行できるので、さらに時
間を節約できる。IEEEフオーマツトの仮数部は、常に、
正の数と、符号ビツトである。それらの数を、まず、2
の補数に変換し、高速加算器によつて加算し、次に、正
の数と、符号ビツトとに戻さなければならない。本発明
では、IEEE変換は入力変換装置12及び出力変換装置16で
のみ実行され、加算ごとに行われるのではない。
以上、好ましい一実施例に関して本発明を説明した
が、本発明の趣旨から逸脱せずに当業者により様々な変
形や変更を実施しうることは明白であろう。従つて、本
発明は特許請求の範囲によつて評価されるべきである。
が、本発明の趣旨から逸脱せずに当業者により様々な変
形や変更を実施しうることは明白であろう。従つて、本
発明は特許請求の範囲によつて評価されるべきである。
第1図は、マトリツクス変換システムを示す図、第2図
は、本発明のマトリツクス変換回路により内部で使用さ
れる複数のタツプポイントを有するモジユーロの数のフ
オーマツトを示す図、第3図は、本発明のマトリツクス
変換エンジンの回路を示すブロツク線図、及び第4図
は、バレルシフタの使用状態を示すブロツク線図であ
る。 12……入力変換装置、14……変換エンジン、16……出力
変換装置、20……ランダムアクセスメモリ(RAM)、22
……32×32ビツト符号付き乗算器、23……指数加算器、
24……32ビツト加算器、25……指数制御回路、32,33…
…正規化回路、34……指数正規化回路、36……正規化回
路、37……指数制御回路、39……ラツチングレジスタ。
は、本発明のマトリツクス変換回路により内部で使用さ
れる複数のタツプポイントを有するモジユーロの数のフ
オーマツトを示す図、第3図は、本発明のマトリツクス
変換エンジンの回路を示すブロツク線図、及び第4図
は、バレルシフタの使用状態を示すブロツク線図であ
る。 12……入力変換装置、14……変換エンジン、16……出力
変換装置、20……ランダムアクセスメモリ(RAM)、22
……32×32ビツト符号付き乗算器、23……指数加算器、
24……32ビツト加算器、25……指数制御回路、32,33…
…正規化回路、34……指数正規化回路、36……正規化回
路、37……指数制御回路、39……ラツチングレジスタ。
フロントページの続き (72)発明者 クリス・マラコウスキイ アメリカ合衆国 95051 カリフオルニ ア州・サンタクララ・スラツシユ ウエ イ・3775 (56)参考文献 特開 昭62−216033(JP,A) 特開 平1−183732(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 7/00 G06F 5/00 G06F 7/50 G06F 7/52 310
Claims (1)
- 【請求項1】データ処理システムにおいて、 複数のタップポイントを有するモジューロ256の数のフ
ォーマットで、前記データ処理システムに結合された入
力変換回路によって与えられる複数の数を受け取り、記
憶するランダム・アクセス・メモリ手段と、 モジューロ256のフォーマットで前記メモリ手段に記憶
されている第1および第2の前記の数を乗算して、指数
を含んでいる第1の結果を形成する、前記メモリ手段に
結合された乗算手段と、 前記第1の結果を8ビットの増分だけ利用可能なフォー
マットスペースでできるだけ左方へシフトするシフト手
段、および結果の前記指数をこのようなシフトの各々に
関して1だけ減らす手段を含んでいる、前記乗算手段に
結合された、前記第1の結果を正規化する正規化手段
と、 前記の正規化された第1の結果を複数のタップポイント
を有するモジューロ256の数のフォーマットの第3の数
に加えて、第2に結果を得る、前記正規化手段に結合さ
れた加算手段と、 前記第2の結果を受け取り、記憶するために前記結果を
前記メモリ手段に結合する、前記加算手段に結合された
レジスタ手段とを具備しており、 前記第2の結果が前記データ処理システムに結合された
出力変換回路にも結合されていることを特徴とするマト
リックス変換演算を処理するマトリックス演算回路。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/407,549 US4956801A (en) | 1989-09-15 | 1989-09-15 | Matrix arithmetic circuit for processing matrix transformation operations |
US407,549 | 1989-09-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH03105614A JPH03105614A (ja) | 1991-05-02 |
JP3146308B2 true JP3146308B2 (ja) | 2001-03-12 |
Family
ID=23612547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP22144190A Expired - Fee Related JP3146308B2 (ja) | 1989-09-15 | 1990-08-24 | マトリツクス演算回路 |
Country Status (3)
Country | Link |
---|---|
US (1) | US4956801A (ja) |
JP (1) | JP3146308B2 (ja) |
FR (1) | FR2652174A1 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5175862A (en) * | 1989-12-29 | 1992-12-29 | Supercomputer Systems Limited Partnership | Method and apparatus for a special purpose arithmetic boolean unit |
US5576982A (en) * | 1994-10-17 | 1996-11-19 | Unisys Corporation | Fast significant bit calculator and its application to integer multiplication and division |
US5727141A (en) * | 1995-05-05 | 1998-03-10 | Apple Computer, Inc. | Method and apparatus for identifying user-selectable regions within multiple display frames |
US7301541B2 (en) * | 1995-08-16 | 2007-11-27 | Microunity Systems Engineering, Inc. | Programmable processor and method with wide operations |
US6643765B1 (en) * | 1995-08-16 | 2003-11-04 | Microunity Systems Engineering, Inc. | Programmable processor with group floating point operations |
US5953241A (en) | 1995-08-16 | 1999-09-14 | Microunity Engeering Systems, Inc. | Multiplier array processing system with enhanced utilization at lower precision for group multiply and sum instruction |
US5742840A (en) * | 1995-08-16 | 1998-04-21 | Microunity Systems Engineering, Inc. | General purpose, multiple precision parallel operation, programmable media processor |
US6295599B1 (en) | 1995-08-16 | 2001-09-25 | Microunity Systems Engineering | System and method for providing a wide operand architecture |
US6385634B1 (en) | 1995-08-31 | 2002-05-07 | Intel Corporation | Method for performing multiply-add operations on packed data |
US7395298B2 (en) | 1995-08-31 | 2008-07-01 | Intel Corporation | Method and apparatus for performing multiply-add operations on packed data |
US6694423B1 (en) * | 1999-05-26 | 2004-02-17 | Infineon Technologies North America Corp. | Prefetch streaming buffer |
US7430578B2 (en) | 2001-10-29 | 2008-09-30 | Intel Corporation | Method and apparatus for performing multiply-add operations on packed byte data |
GB0618921D0 (en) * | 2006-09-26 | 2006-11-08 | Trw Ltd | Matrix multiplication |
US8659620B2 (en) * | 2009-04-13 | 2014-02-25 | Accusoft Corporation | Methods and apparatus for rendering images |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8507903D0 (en) * | 1985-03-26 | 1985-05-01 | Tomlinson M | Noise-reduction signal processing arrangement |
DE3677051D1 (de) * | 1985-05-17 | 1991-02-28 | Nec Corp | Verarbeitungsschaltung, die es erlaubt den akkumulationsdurchsatz zu erhoehen. |
US4864527A (en) * | 1987-08-24 | 1989-09-05 | Victor Peng | Apparatus and method for using a single carry chain for leading one detection and for "sticky" bit calculation |
-
1989
- 1989-09-15 US US07/407,549 patent/US4956801A/en not_active Expired - Lifetime
-
1990
- 1990-06-29 FR FR9008242A patent/FR2652174A1/fr active Granted
- 1990-08-24 JP JP22144190A patent/JP3146308B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US4956801A (en) | 1990-09-11 |
JPH03105614A (ja) | 1991-05-02 |
FR2652174B1 (ja) | 1994-12-09 |
FR2652174A1 (fr) | 1991-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3146308B2 (ja) | マトリツクス演算回路 | |
JP3110288B2 (ja) | 指数対数変換回路 | |
US6412061B1 (en) | Dynamic pipelines with reusable logic elements controlled by a set of multiplexers for pipeline stage selection | |
US5862066A (en) | Methods and apparatus for fast check of floating point zero or negative zero | |
JP2651267B2 (ja) | 演算処理装置及び演算処理方法 | |
JPH10124484A (ja) | データプロセッサ及びデータ処理システム | |
US5426600A (en) | Double precision division circuit and method for digital signal processor | |
JPH0816365A (ja) | 乗算装置 | |
US5309383A (en) | Floating-point division circuit | |
US4594680A (en) | Apparatus for performing quadratic convergence division in a large data processing system | |
US5623683A (en) | Two stage binary multiplier | |
US5038309A (en) | Number conversion apparatus | |
US5825681A (en) | Divider/multiplier circuit having high precision mode | |
JPS63123125A (ja) | 浮動小数点数の加算装置 | |
US4935890A (en) | Format converting circuit for numeric data | |
US7080112B2 (en) | Method and apparatus for computing an approximation to the reciprocal of a floating point number in IEEE format | |
JPH0831029B2 (ja) | 除算用近似逆数生成装置 | |
GB2265739A (en) | Non-restore division with dividend-width ALU | |
US7237000B2 (en) | Speed of execution of a conditional subtract instruction and increasing the range of operands over which the instruction would be performed correctly | |
US20050010632A1 (en) | Digital signal processor based on jumping floating-point arithmetic | |
RU2276805C2 (ru) | Способ и устройство для выделения целой и дробных компонент из данных с плавающей точкой | |
JP3137131B2 (ja) | 浮動小数点乗算器及び乗算方法 | |
JPS5932038A (ja) | 浮動小数点加算器 | |
JPH03268024A (ja) | マイクロプロセッサ、情報処理装置及びそれを用いた図形表示装置 | |
KR930000997B1 (ko) | 화상 배열 처리장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |