JPH0230530B2 - - Google Patents
Info
- Publication number
- JPH0230530B2 JPH0230530B2 JP57068554A JP6855482A JPH0230530B2 JP H0230530 B2 JPH0230530 B2 JP H0230530B2 JP 57068554 A JP57068554 A JP 57068554A JP 6855482 A JP6855482 A JP 6855482A JP H0230530 B2 JPH0230530 B2 JP H0230530B2
- Authority
- JP
- Japan
- Prior art keywords
- bit
- bits
- data processing
- processing system
- result
- 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 - Lifetime
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/483—Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/38—Indexing scheme relating to groups G06F7/38 - G06F7/575
- G06F2207/3804—Details
- G06F2207/386—Special constructional features
- G06F2207/3896—Bit slicing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2207/00—Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F2207/535—Indexing scheme relating to groups G06F7/535 - G06F7/5375
- G06F2207/5352—Non-restoring division not covered by G06F7/5375
-
- 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/483—Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
- G06F7/487—Multiplying; Dividing
- G06F7/4873—Dividing
-
- 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/49905—Exception handling
- G06F7/4991—Overflow or underflow
-
- 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
- G06F7/49947—Rounding
-
- 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/49994—Sign extension
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Nonlinear Science (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Description
(産業上の利用分野)
本発明は概して固定および浮動小数点演算装置
を用いるデータ処理システムに関し、さらに詳細
には浮動小数点計算結果を「丸める」ための技術
と、その計算におけるオーバーフローおよびアン
ダーフローを処理するための技術と、さらに乗除
算に用いられる独自の演算ワード拡張論理を与え
るための技術との3つの技術に関する。 (従来の技術) データ処理システムにおいて、非整数の数の表
示には表記法に小数点を導入する必要がある。例
えば、データ処理システムは「固定小数点表記」
を採用することができ、この表記法では、小数点
は最下位ビツトのすぐ右に置かれるか、最初の情
報ビツトの前の符号ビツトのすぐ右に置かれる。 その他に「浮動小数点表記」を選ぶことがで
き、そこでは、数は符号、指数、および仮数によ
り表わされる。そのような技術は多くの文献に記
載されており、1例として1976年にニユーヨーク
のVan Nostrand Reinhold社により発行された
Caxton C.Fosterの「コンピユータ・アーキテク
チヤ」の16ページ以下があげられる。 仮数についての計算は仮数ワードに含まれるビ
ツト・グループ(即ち「ビツト・スライス」)に
対する演算により行なうことができ、各ビツト・
スライスに対する計算は、その計算がワード全体
について完了するまで隣接するビツト・スライス
に加えられるべき「けた上げ」ビツトを発生す
る。例えば、32ビツトを有する仮数ワード全体に
対してはそのような計算において8個の4ビツ
ト・スライス論理装置を使用できる。 そのようなビツト・スライスに対する計算が生
じた後にのみ各ビツト・スライスがその「けた上
げ」ビツトを発生することが許され、その後にそ
のけた上げビツトが次のビツト・スライスに加え
られるとすれば、全体的な計算時間は必要以上に
相当長くなる。 全体的な計算時間を減少させるため、けた上げ
ビツトを時間的に先行して計算する技術、すなわ
ち種々のけた上げビツトがスライス計算動作と並
行しかつ同時に計算されるいわゆる「ルツク・ア
ヘツド(Iook ahcad)」けた上げビツト技術が考
えられた。そのような技術は長年にわたり用いら
れており、当業者には周知である。 (発明の解決しようとする問題点) 計算全体が完了した後に「丸め」ビツトが計算
されて最後のビツト・スライスに加えられる。丸
めビツトは、しばしば「ガード」ビツトと呼ばれ
る複数のビツトにより決定され、ガード・ビツト
は丸めビツトを発生するように適切に復号されね
ばならない特定のコードを形成する。丸めビツト
は通常全体の計算に続いて計算され、次いで適当
なけた上げビツト位置において丸められていない
浮動小数点計算結果の最下位ビツトに加えられ
る。すなわち、効果的にマルチプレクス操作と考
えることのできる操作であり、丸めビツトは丸め
サイクルの間に関連するけた上げビツトの代わり
に挿入される。例えば、32ビツト・ワードを使う
とすると、丸められていない浮動小数点計算結果
は32ビツトから成り、次に24ビツトを有する最終
結果に丸められる。この場合、偏りのない丸めア
ルゴリズムが最下位8ビツトを用いて最終的な24
ビツトの結果をいかに丸めるかを決定する。しか
し、有効なマルチプレクス技術により最終の浮動
小数点計算結果に丸めビツトを挿入することは仮
数計算に要する計算全体に対して余分な時間を付
け加える。この時間を節約する技術を考案するこ
とが望まれる。 さらに、浮動小数点計算結果の指数部の計算に
おいて、この計算が特定の指数値範囲に入る値
(すなわち、特定の数のビツトを有する値)を生
成しないときは「オーバーフロー」または「アン
ダーフロー」状態が生じる。そのような状態のい
ずれかが発生すると、そのような状態を処理する
適当なサブルーチンが呼び出されるようにシステ
ムは指示を与えねばならず、また浮動小数点の状
態はシステム全体に適切に伝達されねばならな
い。演算全体の時間を節約するため、指数のオー
バーフローおよびアンダーフロー状態の検出と伝
達を加速することが望ましい。 さらに、乗算や除算においては、そのような演
算に用いられる従来のアルゴリズムはオペランド
が拡張されること、すなわち追加ビツトがオペラ
ンド・ワードに加えられることを要求する。例え
ば、ある特定の乗算アルゴリズムでは、そのよう
なオペランドは2ビツト拡張されねばならず、一
方、ある特定の除算アルゴリズムでは、そのよう
なオペランドは1ビツト拡張されねばならない。
余分なビツト・スライス論理装置の使用を要求す
る前記拡張技術は演算装置や浮動小数点演算装置
のハードウエアの複雑さを増大させる。このよう
なハードウエアの複雑さを避けるため、上記の目
的のためのもつと取扱いの容易な拡張技術を考え
出すことが望ましい。 (問題点を解決するための手段) (1) 発明の要約 本発明は、上記の算術演算における3つの問題
点を解決するために為されたもので、これらの算
術演算を行う為の3つの独特の手段を用いるデー
タ処理システムである。 即ち、第1には浮動小数点仮数の算術演算にお
いて、システムは仮数計算時間を全体的に減少さ
せる目的のためにルツクアヘツド桁上げビツト発
生装置を用いて、浮動小数点計算結果の適切なビ
ツトに丸めビツトを挿入する新規な技術を用い
る。 即ち仮数計算の丸めを行うため、本発明におい
て従来の「ルツク・アヘツド」けた上げ技術に対
して新規な修正が行われた。本発明では、現存の
「ルツク・アヘツド」ステージの一部(すなわち、
丸められていない浮動小数点計算結果の最下位の
ビツト・スライスに加えられるべきけた上げビツ
トを生成するため通常用いられるステージ)が丸
めビツトの計算のため使用され、次にこの丸めビ
ツトが、残りの並列するルツク・アヘツド・ステ
ージにより計算されたその他のけた上げビツトと
並行して丸められていない浮動小数点計算結果の
最下位ビツトにけた上げビツトとして加えられ
る。 第2にこのシステムは、最終的な指数計算結果
にオーバーフローやアンダーフロー状態が起こる
か否かを効果的に予測し、どちらの状態が起こつ
たかをシステムに通知するための、浮動小数点指
数計算と並行して働く独特の論理装置を用いる。 即ち、指数計算の間の比較的速い時期にオーバ
ーフローおよびアンダーフローを検出するため、
指数値の完全な加算を行なつた後にオーバーフロ
ーおよびアンダーフロー状態を検出する代りに、
本発明によるシステムは、最終的な指数計算と並
行して作用して、その最終的な指数計算にオーバ
ーフローまたはアンダーフロー状態が存在するか
否かを実際に予測するオーバーフロー/アンダー
フロー論理装置を用いる。好適な実施例では、そ
のような論理装置オーバーフローやアンダーフロ
ー状態が存在するという指示をシステムに与える
信号を発生するための関連の論理とともに特別な
加算ステージを1つ使用する。 第3に、本発明は、乗除算の間のオペランドの
拡張のための簡単な技術を与えるために、あまり
複雑でないプログラム可能アレー論理装置および
加算ステージを用いた単純化された演算ユニツト
拡張論理装置を使用する。 即ち、このシステムは、乗除算において必要な
拡張ビツトを計算するための、プログラム可能ア
レー論理装置と4ビツト加算装置が組み合わせて
用いられる、単純化された技術を用いる。 (2) 実施例の説明 本発明は添付の図面を参照しながらさらに詳細
に記述される。 (イ) 「丸め」技術の説明 ここに開示されている発明はRasala等によ
り1980年4月25日に出願された米国特許出願第
143561号に開示されたような特定のデータ処理
システムと関連して最もよく説明できる。そこ
で用いられている演算論理装置(ALU)の概
略的なブロツク図は上記出願の第154図に示
されるが、本願では第1図として示される。本
発明を理解するために必要な詳細な論理図は第
2図乃至第5図、第7および第8図に示され
る。そのようなシステムでの計算は、32ビツト
の仮数計算にとつて通例であるように、4ビツ
トのマイクロプロセツサ・スライス論理装置1
0A―10Hにより示すような4ビツトのスラ
イスにおいて行なわれる。2つの4ビツトの値
が処理され、その結果に1ビツトの桁上げ値が
加算されて4ビツトの出力(DS出力)が発生
される。したがつて、スライス装置は次に示す
ような4ビツト・スライスとして形成される丸
められていない浮動小数点計算結果を生成す
る。
を用いるデータ処理システムに関し、さらに詳細
には浮動小数点計算結果を「丸める」ための技術
と、その計算におけるオーバーフローおよびアン
ダーフローを処理するための技術と、さらに乗除
算に用いられる独自の演算ワード拡張論理を与え
るための技術との3つの技術に関する。 (従来の技術) データ処理システムにおいて、非整数の数の表
示には表記法に小数点を導入する必要がある。例
えば、データ処理システムは「固定小数点表記」
を採用することができ、この表記法では、小数点
は最下位ビツトのすぐ右に置かれるか、最初の情
報ビツトの前の符号ビツトのすぐ右に置かれる。 その他に「浮動小数点表記」を選ぶことがで
き、そこでは、数は符号、指数、および仮数によ
り表わされる。そのような技術は多くの文献に記
載されており、1例として1976年にニユーヨーク
のVan Nostrand Reinhold社により発行された
Caxton C.Fosterの「コンピユータ・アーキテク
チヤ」の16ページ以下があげられる。 仮数についての計算は仮数ワードに含まれるビ
ツト・グループ(即ち「ビツト・スライス」)に
対する演算により行なうことができ、各ビツト・
スライスに対する計算は、その計算がワード全体
について完了するまで隣接するビツト・スライス
に加えられるべき「けた上げ」ビツトを発生す
る。例えば、32ビツトを有する仮数ワード全体に
対してはそのような計算において8個の4ビツ
ト・スライス論理装置を使用できる。 そのようなビツト・スライスに対する計算が生
じた後にのみ各ビツト・スライスがその「けた上
げ」ビツトを発生することが許され、その後にそ
のけた上げビツトが次のビツト・スライスに加え
られるとすれば、全体的な計算時間は必要以上に
相当長くなる。 全体的な計算時間を減少させるため、けた上げ
ビツトを時間的に先行して計算する技術、すなわ
ち種々のけた上げビツトがスライス計算動作と並
行しかつ同時に計算されるいわゆる「ルツク・ア
ヘツド(Iook ahcad)」けた上げビツト技術が考
えられた。そのような技術は長年にわたり用いら
れており、当業者には周知である。 (発明の解決しようとする問題点) 計算全体が完了した後に「丸め」ビツトが計算
されて最後のビツト・スライスに加えられる。丸
めビツトは、しばしば「ガード」ビツトと呼ばれ
る複数のビツトにより決定され、ガード・ビツト
は丸めビツトを発生するように適切に復号されね
ばならない特定のコードを形成する。丸めビツト
は通常全体の計算に続いて計算され、次いで適当
なけた上げビツト位置において丸められていない
浮動小数点計算結果の最下位ビツトに加えられ
る。すなわち、効果的にマルチプレクス操作と考
えることのできる操作であり、丸めビツトは丸め
サイクルの間に関連するけた上げビツトの代わり
に挿入される。例えば、32ビツト・ワードを使う
とすると、丸められていない浮動小数点計算結果
は32ビツトから成り、次に24ビツトを有する最終
結果に丸められる。この場合、偏りのない丸めア
ルゴリズムが最下位8ビツトを用いて最終的な24
ビツトの結果をいかに丸めるかを決定する。しか
し、有効なマルチプレクス技術により最終の浮動
小数点計算結果に丸めビツトを挿入することは仮
数計算に要する計算全体に対して余分な時間を付
け加える。この時間を節約する技術を考案するこ
とが望まれる。 さらに、浮動小数点計算結果の指数部の計算に
おいて、この計算が特定の指数値範囲に入る値
(すなわち、特定の数のビツトを有する値)を生
成しないときは「オーバーフロー」または「アン
ダーフロー」状態が生じる。そのような状態のい
ずれかが発生すると、そのような状態を処理する
適当なサブルーチンが呼び出されるようにシステ
ムは指示を与えねばならず、また浮動小数点の状
態はシステム全体に適切に伝達されねばならな
い。演算全体の時間を節約するため、指数のオー
バーフローおよびアンダーフロー状態の検出と伝
達を加速することが望ましい。 さらに、乗算や除算においては、そのような演
算に用いられる従来のアルゴリズムはオペランド
が拡張されること、すなわち追加ビツトがオペラ
ンド・ワードに加えられることを要求する。例え
ば、ある特定の乗算アルゴリズムでは、そのよう
なオペランドは2ビツト拡張されねばならず、一
方、ある特定の除算アルゴリズムでは、そのよう
なオペランドは1ビツト拡張されねばならない。
余分なビツト・スライス論理装置の使用を要求す
る前記拡張技術は演算装置や浮動小数点演算装置
のハードウエアの複雑さを増大させる。このよう
なハードウエアの複雑さを避けるため、上記の目
的のためのもつと取扱いの容易な拡張技術を考え
出すことが望ましい。 (問題点を解決するための手段) (1) 発明の要約 本発明は、上記の算術演算における3つの問題
点を解決するために為されたもので、これらの算
術演算を行う為の3つの独特の手段を用いるデー
タ処理システムである。 即ち、第1には浮動小数点仮数の算術演算にお
いて、システムは仮数計算時間を全体的に減少さ
せる目的のためにルツクアヘツド桁上げビツト発
生装置を用いて、浮動小数点計算結果の適切なビ
ツトに丸めビツトを挿入する新規な技術を用い
る。 即ち仮数計算の丸めを行うため、本発明におい
て従来の「ルツク・アヘツド」けた上げ技術に対
して新規な修正が行われた。本発明では、現存の
「ルツク・アヘツド」ステージの一部(すなわち、
丸められていない浮動小数点計算結果の最下位の
ビツト・スライスに加えられるべきけた上げビツ
トを生成するため通常用いられるステージ)が丸
めビツトの計算のため使用され、次にこの丸めビ
ツトが、残りの並列するルツク・アヘツド・ステ
ージにより計算されたその他のけた上げビツトと
並行して丸められていない浮動小数点計算結果の
最下位ビツトにけた上げビツトとして加えられ
る。 第2にこのシステムは、最終的な指数計算結果
にオーバーフローやアンダーフロー状態が起こる
か否かを効果的に予測し、どちらの状態が起こつ
たかをシステムに通知するための、浮動小数点指
数計算と並行して働く独特の論理装置を用いる。 即ち、指数計算の間の比較的速い時期にオーバ
ーフローおよびアンダーフローを検出するため、
指数値の完全な加算を行なつた後にオーバーフロ
ーおよびアンダーフロー状態を検出する代りに、
本発明によるシステムは、最終的な指数計算と並
行して作用して、その最終的な指数計算にオーバ
ーフローまたはアンダーフロー状態が存在するか
否かを実際に予測するオーバーフロー/アンダー
フロー論理装置を用いる。好適な実施例では、そ
のような論理装置オーバーフローやアンダーフロ
ー状態が存在するという指示をシステムに与える
信号を発生するための関連の論理とともに特別な
加算ステージを1つ使用する。 第3に、本発明は、乗除算の間のオペランドの
拡張のための簡単な技術を与えるために、あまり
複雑でないプログラム可能アレー論理装置および
加算ステージを用いた単純化された演算ユニツト
拡張論理装置を使用する。 即ち、このシステムは、乗除算において必要な
拡張ビツトを計算するための、プログラム可能ア
レー論理装置と4ビツト加算装置が組み合わせて
用いられる、単純化された技術を用いる。 (2) 実施例の説明 本発明は添付の図面を参照しながらさらに詳細
に記述される。 (イ) 「丸め」技術の説明 ここに開示されている発明はRasala等によ
り1980年4月25日に出願された米国特許出願第
143561号に開示されたような特定のデータ処理
システムと関連して最もよく説明できる。そこ
で用いられている演算論理装置(ALU)の概
略的なブロツク図は上記出願の第154図に示
されるが、本願では第1図として示される。本
発明を理解するために必要な詳細な論理図は第
2図乃至第5図、第7および第8図に示され
る。そのようなシステムでの計算は、32ビツト
の仮数計算にとつて通例であるように、4ビツ
トのマイクロプロセツサ・スライス論理装置1
0A―10Hにより示すような4ビツトのスラ
イスにおいて行なわれる。2つの4ビツトの値
が処理され、その結果に1ビツトの桁上げ値が
加算されて4ビツトの出力(DS出力)が発生
される。したがつて、スライス装置は次に示す
ような4ビツト・スライスとして形成される丸
められていない浮動小数点計算結果を生成す
る。
【表】
〓
Claims (1)
- 【特許請求の範囲】 1 データ処理システムにおいて、浮動小数点演
算結果の偏りのない丸めを要求する浮動小数点演
算を実行するための演算論理装置であつて、 複数のビツト・グループから成る丸められてい
ない浮動小数点計算結果を計算する装置を備え、
第1の選択された数の前記ビツト・グループは丸
められた浮動小数点計算結果を形成するために用
いられ、第2の選択された数の前記ビツト・グル
ープは前記丸められた結果に対する丸めビツトを
決定するため用いられ、 前記丸められていない浮動小数点計算結果の前
記ビツト・グループの選択されたものへの挿入の
ため、前記丸められていない浮動小数点計算結果
の計算とほぼ同時にけた上げビツトを発生する複
数のルツク・アヘツド論理装置、 前記丸められていない浮動小数点計算結果の前
記第2の選択された数のビツト・グループに応答
して前記丸めビツトを決定する装置を備え、 前記ルツク・アヘツド論理装置の選択されたも
のの一部分は前記丸められた浮動小数点計算結果
を発生するため、前記第1の選択された数のビツ
ト・グループの最下位のビツト・グループへの前
記丸めビツトの挿入を前記第1の選択された数の
ビツト・グループの残りのビツト・グループへの
けた上げビツトの挿入とほぼ同時に行うため前記
丸めビツトに応答することを特徴とするデータ処
理システム。 2 前記丸めビツト決定装置は前記第2の選択さ
れた数のビツト・グループに応答してデコードさ
れたビツトを発生する装置と、前記デコードされ
たビツトに応答して前記丸めビツトを発生し、前
記丸めビツトを前記ルツク・アヘツド論理装置の
前記選択されたものの前記部分に供給する付勢論
理装置を備えることを特徴とする第1項記載のデ
ータ処理システム。 3 前記丸められていない浮動小数点計算結果
は、前記丸められた浮動小数点計算結果を形成す
るため用いられるビツト0―23として表示され
た24ビツトと、前記丸めビツトを決定するため用
いられるビツト24―31として表示された8ビ
ツトを含むビツト0〜31として表示された32ビ
ツトから成ることを特徴とする第1項または第2
項記載のデータ処理システム。 4 前記丸められていない浮動小数点計算結果は
8個の4ビツト・グループを有し、前記丸められ
た浮動小数点計算結果は6個の4ビツト・グルー
プを有し、前記丸めビツト決定ビツトは2個の4
ビツト・グループを有することを特徴とする第3
項記載のデータ処理システム。 5 前記けた上げビツトはそれぞれ前記丸められ
ていない浮動小数点計算結果のビツト3,7,1
1,15,19,23および27への挿入のため
けた上げビツトCRY4,CRY8,CRY12,
CRY16,CRY20,CRY24およびCRY2
8として形成され、前記丸めビツトは前記丸めら
れた浮動小数点計算結果を形成するためビツト2
3へCRY24として挿入されることを特徴とす
る第4項記載のデータ処理システム。 6 丸められた浮動小数点計算結果を形成するた
め用いられる第1の部分と、前記丸められた浮動
小数点計算結果において使用される丸めビツトを
決定するため用いられる第2の部分から成る丸め
られていない浮動小数点計算結果を計算するこ
と、 前記丸められていない浮動小数点計算結果の前
記第2の部分から前記丸めビツトを決定するこ
と、 丸められた浮動小数点計算結果を発生するた
め、前記丸められていない浮動小数点計算結果の
計算とほぼ同時に、前記丸めビツトを前記丸めら
れていない浮動小数点計算結果の前記第1の部分
の最下位ビツトにおいてけた上げビツトとして直
接挿入することから成る浮動小数点演算結果の偏
りのない丸めを実施するための方法。 7 前記丸められていない浮動小数点計算結果の
計算とほぼ同時にその選択されたビツトにおける
挿入のため、複数のけた上げビツトを計算するこ
とをさらに含み、前記丸めビツトの挿入は前記丸
められていない浮動小数点計算結果の前記第1の
部分の選択されたビツトにおける前記複数のけた
上げビツトの挿入とほぼ同時に成されることを特
徴とする第6項記載の方法。 8 前記丸められていない浮動小数点計算結果は
ビツト0―31として表示された32ビツトを有し
その前記第1の部分はビツト0―23として表示
された24ビツトを有し、その前記第2の部分はビ
ツト24―31として表示された8ビツトを有
し、前記丸めビツトは前記丸められた浮動小数点
計算結果を形成するため前記第1の部分のビツト
23に挿入されることを特徴とする第6項または
第7項記載の方法。 9 データ処理システムにおいて、算術演算装置
が一対の指数オペランドに作用して1つの演算指
数結果を与える装置を備え、前記オペランドの1
つは、オーバーフローまたはアンダーフロー状態
が全く存在しない中間域、オーバーフローまたは
アンダーフロー状態が存在する上方または下方域
またはオーバーフローまたはアンダーフロー状態
が前記指数オペランドの他方の値に依存する横断
域に存在することができる値を有し、前記算術演
算装置はさらに、 最終の演算指数結果の計算と並行して、最初の
指数値が前記域のどれに存在するかを検出するた
め作用する装置を備えたことを特徴とするデータ
処理システム。 10 前記検出する装置は、 前記オペランドの1つに応答して一対の第1の
指数指示ビツトを発生する装置、 前記1つのオペランドの第2の選択されたビツ
トに応答して第3の指数指示ビツトを発生する装
置、 前記1つのオペランドの第1の選択されたビツ
トと前記オペランドの他方の選択されたビツトに
応答して第2の指数指示ビツトを発生する他の装
置、 前記第1の指数指示ビツトの状態と、前記第2
の指数指示ビツトと、前記第3の指数指示ビツト
と、前記他方のオペランドの選択された1ビツト
状態に応答して、前記最終の演算指数結果にオー
バーフロー状態が存在するとき第1の指示を発生
し、アンダーフロー状態が存在するとき第2の指
示を発生する装置を備えることを特徴とする第9
項記載のデータ処理システム。 11 前記他の装置は加算論理装置であることを
特徴とする第10項記載のデータ処理システム。 12 前記指数オペランドはそれぞれ8ビツトか
ら成り、前記演算指数結果を与える前記装置は2
個の4ビツト・スライス論理装置を含み、前記加
算論理装置は4ビツト加算器であることを特徴と
する第11項記載のデータ処理システム。 13 前記第9項記載のデータ処理システムであ
つて、最終の演算指数結果の計算と並行して作用
してオーバーフローまたはアンダーフロー状態が
存在するかどうかを示す信号を前記システムに対
して発生する装置をさらに備えることを特徴とす
るデータ処理システム。 14 前記指示信号発生装置は、 前記1つのオペランドの第1の選択されたビツ
トと、前記オペランドの他方の選択されたビツト
に応答して第1の指数指示ビツトを発生する装
置、 前記1つのオペランドの前記第2の選択された
ビツトに応答して第2の指数指示ビツトを発生す
る装置、 前記1つのオペランドの一対の選択されたビツ
トの状態と、前記第1の指数指示ビツトの状態と
前記第2の指数指示ビツトの状態と、前記オペラ
ンドの他方の選択されたビツトの状態に応答して
前記指示信号を発生する装置を備えることを特徴
とする第13項記載のデータ処理システム。 15 前記最終の演算指数結果は+128から−129
の値の範囲に存在し、前記結果が加算、減算およ
び乗算演算に対して+64から+126の範囲に、除
算演算に対して+64から+128の範囲に入るとき
オーバーフロー状態が存在し、前記結果が加算、
減算または除算演算に対して−64から−127の範
囲に、乗算演算に対して−64から−129の範囲に
入るときアンダーフロー状態が存在することを特
徴とする第9項乃至第13項のいずれか1項記載
のデータ処理システム。 16 複数の計算サイクルを必要とする乗算また
は除算演算を実行する演算装置を有するデータ処
理システムにおいて、前記サイクルの各々はその
結果が選択された数のビツトだけ拡張されること
を要求し、前記演算装置は、 実行されている計算の選択された特徴を識別す
る選択されたビツトに応答してオペランド拡張ビ
ツトを発生するプログラム可能アレー論理装置、 前記オペランド拡張ビツトに応答して、そのと
きの計算サイクルの間計算結果を拡張するため前
記選択された数の拡張ビツトを発生する他の論理
装置を備えることを特徴とするデータ処理システ
ム。 17 複数の計算サイクルを必要とする乗算演算
を実行する演算装置を有するデータ処理システム
において、前記サイクルの各々は部分積オペラン
ドおよび被乗数オペランドの符号または零拡張を
要求し、前記演算装置は、 それぞれ各オペランドの最上位ビツトを表わす
2個の選択されたビツトと、そのときのサイクル
が符号拡張されるかまたは零拡張されるのかを識
別する1個の選択されたビツトと、そのときの乗
算サイクルが最初の乗算サイクルかまたはそれ以
外の他の乗算サイクルかを識別する1個の選択さ
れたビツトと、そのときのサイクルが加算または
減算演算を要求するかどうかを識別する1個の選
択されたビツトと、前記そのときのサイクルにお
ける前記被乗数の形式を識別する一対の選択され
たビツトに応答する、複数の拡張ビツトを発生す
るプログラム可能アレー論理装置、 前記拡張ビツトに応答して、そのときの乗算サ
イクルの間部分積結果を拡張するため複数の拡張
ビツトを発生する他の論理装置を備えることを特
徴とするデータ処理システム。 18 前記論理装置は一対の拡張ビツトを発生す
ることを特徴とする第17項記載のデータ処理シ
ステム。 19 前記乗算演算は各乗算サイクルの間部分積
結果を発生するため32ビツトのオペランドを用
い、前記他の論理装置は34ビツトの結果を発生す
るため2個の拡張ビツトを発生することを特徴と
する第17項または第18項記載のダデータ処理
システム。 20 前記被乗数は±0、±被乗数または±2×
被乗数の形式であることができることを特徴とす
る第19項記載のデータ処理システム。 21 前記乗算演算は各乗算サイクルの間部分積
結果を発生するため64ビツトのオペランドを用
い、前記他の論理装置は66ビツトの結果を与える
ため2個の拡張ビツトを発生することを特徴とす
る第17項または第18項記載のデータ処理シス
テム。 22 複数の計算サイクルを必要とする除算演算
を実行する演算装置を有するデータ処理システム
において、前記サイクルの各々は被除数オペラン
ドの拡張を要求し、前記演算装置は、 そのときの除算サイクルにおいて、前の除算サ
イクルの結果の第1の選択されたビツトと、その
ときの除算サイクルのため加算または減算演算が
要求されるかどうかを識別する第2の選択された
ビツトに応答して複数の拡張ビツトを発生するプ
ログラム可能アレー論理装置、 前記拡張ビツトに応答して、そのときの除算サ
イクルの間商のビツトを発生する他の論理装置を
備えることを特徴とするデータ処理システム。 23 前記除算演算は各除算サイクルの間前記商
のビツトを発生するため32ビツトのオペランドを
用いることを特徴とする第22項記載のデータ処
理システム。 24 前記第1の選択されたビツトは前の除算サ
イクルの結果の最上位ビツトであることを特徴と
する第23項記載のデータ処理システム。 25 前記除算演算は各除算サイクルの間前記商
のビツトを発生するため64ビツトのオペランドを
用いることを特徴とする第22項記載のデータ処
理システム。
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US256726 | 1981-04-23 | ||
| US256772 | 1981-04-23 | ||
| US06/256,726 US4442498A (en) | 1981-04-23 | 1981-04-23 | Arithmetic unit for use in data processing systems |
| US256923 | 2000-12-21 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS584441A JPS584441A (ja) | 1983-01-11 |
| JPH0230530B2 true JPH0230530B2 (ja) | 1990-07-06 |
Family
ID=22973351
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP57068554A Granted JPS584441A (ja) | 1981-04-23 | 1982-04-23 | デ−タ処理システム |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US4442498A (ja) |
| JP (1) | JPS584441A (ja) |
Families Citing this family (30)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4577282A (en) | 1982-02-22 | 1986-03-18 | Texas Instruments Incorporated | Microcomputer system for digital signal processing |
| US4677584A (en) * | 1983-11-30 | 1987-06-30 | Texas Instruments Incorporated | Data processing system with an arithmetic logic unit having improved carry look ahead |
| US4644489A (en) * | 1984-02-10 | 1987-02-17 | Prime Computer, Inc. | Multi-format binary coded decimal processor with selective output formatting |
| US4562553A (en) * | 1984-03-19 | 1985-12-31 | Analogic Corporation | Floating point arithmetic system and method with rounding anticipation |
| US4670846A (en) * | 1984-05-01 | 1987-06-02 | Texas Instruments Incorporated | Distributed bit integrated circuit design in a non-symmetrical data processing circuit |
| US4761755A (en) * | 1984-07-11 | 1988-08-02 | Prime Computer, Inc. | Data processing system and method having an improved arithmetic unit |
| US4742520A (en) * | 1984-09-26 | 1988-05-03 | Texas Instruments Incorporated | ALU operation: modulo two sum |
| JPS61213927A (ja) * | 1985-03-18 | 1986-09-22 | Hitachi Ltd | 浮動小数点演算処理装置 |
| US4942547A (en) * | 1985-04-11 | 1990-07-17 | Honeywell Bull, Inc. | Multiprocessors on a single semiconductor chip |
| JPS6285333A (ja) * | 1985-10-11 | 1987-04-18 | Oki Electric Ind Co Ltd | 浮動小数点乗算器丸め処理方式 |
| ATE55033T1 (de) * | 1986-03-05 | 1990-08-15 | Holger Sedlak | Kryptographie-verfahren und kryptographieprozessor zur durchfuehrung des verfahrens. |
| US5165039A (en) * | 1986-03-28 | 1992-11-17 | Texas Instruments Incorporated | Register file for bit slice processor with simultaneous accessing of plural memory array cells |
| US4789957A (en) * | 1986-03-28 | 1988-12-06 | Texas Instruments Incorporated | Status output for a bit slice ALU |
| US4811214A (en) * | 1986-11-14 | 1989-03-07 | Princeton University | Multinode reconfigurable pipeline computer |
| US5131086A (en) * | 1988-08-25 | 1992-07-14 | Edgcore Technology, Inc. | Method and system for executing pipelined three operand construct |
| US4941119A (en) * | 1988-11-30 | 1990-07-10 | Control Data Corporation | Method and apparatus for predicting an overflow in an integer multiply |
| US5249149A (en) * | 1989-01-13 | 1993-09-28 | International Business Machines Corporation | Method and apparatus for performining floating point division |
| US5130797A (en) * | 1989-02-27 | 1992-07-14 | Mitsubishi Denki Kabushiki Kaisha | Digital signal processing system for parallel processing of subsampled data |
| JPH03142627A (ja) * | 1989-10-24 | 1991-06-18 | Bipolar Integrated Technol Inc | 集積浮動小数点乗算器アーキテクチャ |
| EP0463966B1 (en) * | 1990-06-29 | 1998-11-25 | Digital Equipment Corporation | High-performance multi-processor having floating point unit and operation method |
| US5214598A (en) * | 1990-11-09 | 1993-05-25 | Adaptive Solutions, Inc. | Unbiased bit disposal apparatus and method |
| JPH0594546A (ja) * | 1991-02-05 | 1993-04-16 | American Teleph & Telegr Co <Att> | デジタルプロセツサ |
| US5553015A (en) * | 1994-04-15 | 1996-09-03 | International Business Machines Corporation | Efficient floating point overflow and underflow detection system |
| US6948051B2 (en) * | 2001-05-15 | 2005-09-20 | International Business Machines Corporation | Method and apparatus for reducing logic activity in a microprocessor using reduced bit width slices that are enabled or disabled depending on operation width |
| US7698352B2 (en) * | 2005-09-15 | 2010-04-13 | International Business Machines Corporation | System and method for converting from scaled binary coded decimal into decimal floating point |
| US8364734B2 (en) * | 2005-09-15 | 2013-01-29 | International Business Machines Corporation | Converting from decimal floating point into scaled binary coded decimal |
| 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 |
| 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 |
| US20080270495A1 (en) * | 2007-04-26 | 2008-10-30 | International Business Machines Corporation | Insert/extract biased exponent of decimal floating point data |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3699326A (en) * | 1971-05-05 | 1972-10-17 | Honeywell Inf Systems | Rounding numbers expressed in 2{40 s complement notation |
| US3842250A (en) * | 1973-08-29 | 1974-10-15 | Sperry Rand Corp | Circuit for implementing rounding in add/subtract logic networks |
| US4319335A (en) * | 1979-10-16 | 1982-03-09 | Burroughs Corporation | Arithmetic logic unit controller |
| US4295203A (en) * | 1979-11-09 | 1981-10-13 | Honeywell Information Systems Inc. | Automatic rounding of floating point operands |
| US4338675A (en) * | 1980-02-13 | 1982-07-06 | Intel Corporation | Numeric data processor |
-
1981
- 1981-04-23 US US06/256,726 patent/US4442498A/en not_active Expired - Lifetime
-
1982
- 1982-04-23 JP JP57068554A patent/JPS584441A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| US4442498A (en) | 1984-04-10 |
| JPS584441A (ja) | 1983-01-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0230530B2 (ja) | ||
| US4941120A (en) | Floating point normalization and rounding prediction circuit | |
| KR100302686B1 (ko) | 독립적인승산및가산명령어를이용하여고정밀도승산-가산연산을수행하기위한방법및장치 | |
| JP2662196B2 (ja) | 演算結果正規化方法及び装置 | |
| US4429370A (en) | Arithmetic unit for use in a data processing system for computing exponent results and detecting overflow and underflow conditions thereof | |
| JPH04227530A (ja) | 浮動小数点プロセッサ | |
| JPH06236257A (ja) | データ・プロセッサにおいて浮動小数点実行ユニット内で後正規化を実行する方法および装置 | |
| US7720900B2 (en) | Fused multiply add split for multiple precision arithmetic | |
| CN108351776A (zh) | 用于向量的处理的通道位置信息 | |
| US5548545A (en) | Floating point exception prediction for compound operations and variable precision using an intermediate exponent bus | |
| CN108351762A (zh) | 使用重叠位的数值的冗余表示 | |
| US5341319A (en) | Method and apparatus for controlling a rounding operation in a floating point multiplier circuit | |
| JPH09212337A (ja) | 浮動小数点演算処理装置 | |
| US4405992A (en) | Arithmetic unit for use in data processing systems | |
| KR100264960B1 (ko) | 연산수의 승산/제산 방법과 그 장치 | |
| US6061707A (en) | Method and apparatus for generating an end-around carry in a floating-point pipeline within a computer system | |
| US5117384A (en) | Method and apparatus for exponent adder | |
| KR100317767B1 (ko) | 부동 소수점 2진 4 워드 포맷 승산 명령 유닛 | |
| EP0137525B1 (en) | Arithmetic unit in data processing system with bit-extension circuitry | |
| JPH0283728A (ja) | 浮動小数点乗算装置 | |
| CA1192670A (en) | Arithmetic unit for use in data processing systems | |
| EP0438962A2 (en) | Method and apparatus for exponent adder | |
| EP0780759A1 (en) | Elimination of math overflow flag generation delay in an alu | |
| JPS581244A (ja) | 浮動小数点命令例外検出方法 | |
| GB1239225A (ja) |