JP2872263B2 - 高速演算器における丸め回路 - Google Patents

高速演算器における丸め回路

Info

Publication number
JP2872263B2
JP2872263B2 JP1080242A JP8024289A JP2872263B2 JP 2872263 B2 JP2872263 B2 JP 2872263B2 JP 1080242 A JP1080242 A JP 1080242A JP 8024289 A JP8024289 A JP 8024289A JP 2872263 B2 JP2872263 B2 JP 2872263B2
Authority
JP
Japan
Prior art keywords
rounding
bit
bits
circuit
output
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
Application number
JP1080242A
Other languages
English (en)
Other versions
JPH01290035A (ja
Inventor
エム.ダーリイ ヘンリィ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of JPH01290035A publication Critical patent/JPH01290035A/ja
Application granted granted Critical
Publication of JP2872263B2 publication Critical patent/JP2872263B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • G06F7/487Multiplying; Dividing
    • G06F7/4876Multiplying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49936Normalisation mentioned as feature only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49942Significance control
    • G06F7/49947Rounding

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

【発明の詳細な説明】 産業上の利用分野 本発明は一般に集積回路に関し、より詳細には、加算
器アレイの出力を丸め、変換し、正規化する高速回路に
関する。
従来の技術及び問題点 計算機、信号処理装置及びプロセス制御装置のような
多くのシステムでは、浮動小数点数の高速計算が重要な
設計要素である。数の浮動小数点表示は、その大きなダ
イナミック・レンジのため、一般にこれらのシステムに
使用される。先進技術により、高度な並列技術を用いて
浮動小数点数を乗算して速度を増すことができる集積回
路を製作することが可能になる。
並列アレイ乗算器は、全ての部分積を同時に発生し、
それから加算器のアレイでその部分積を加算する。加算
器のアレイは部分積の数字を、和ストリームと桁上げス
トリームとしてしばしば言及される2個の数字に変形す
る。それから、和及び桁上げストリームを最終の加算器
で組み合わせて、積を生じる。最終の加算には部分積の
加算時間と同じくらいの時間が必要だが、これは低命令
ビットがそれよりもずっと高いビットへ桁上げ伝播され
ることになる可能性があるためで、桁上げ連鎖と呼ばれ
るものである。ゆえに、加算器アレイと最終加算器との
間にパイプライン・レジスタがしばしば挿入される。
いくつかの乗算器では符号付冗長数字表示を用いて、
並列方法で部分積を加算する一方、回路密度を増加しか
つ配列が容易な反復構造が維持されるツリー方式を利用
する。符号付ディジット表示は各ビット位置ごとに2個
のビットを用いて、1、0、或いは−1を表わす。符号
付ディジット加算器では長い桁上げ連鎖及びそれと関連
する遅延が回避される。符号付ディジット加算器アレイ
は部分積を単一の符号付ディジット数字に加算する。し
かし、符号付ディジット表示は共通様式ではないので、
2進法の大きさの表示等の従来表示に変換しなければな
らない。変換回路は並列アレイ方式の最終加算器と非常
に類似している。符号付ディジット加算は、IEEEトラン
ザクションズ・オン・コンピューターズ誌、C−34巻、
第9号(1985年9月号)所載のN.タカギ他の論文「冗長
2進加算ツリーを用いた高速VLSI乗算アルゴリズム」に
より詳細に説明されている。
更に、浮動小数点乗算では、最上位ビットが「1」と
なるように積を「正規化」しなければならない。オペラ
ンド仮数がnビットの長さである場合、結果の積仮数の
長さは多くて2nビットである。nビット長の最初の浮動
小数点様式に合わせるため、積を正規化して丸める。最
初の仮数が正規化された場合、正規化シフトは多くて1
ビットになる。しかし、丸めによって桁上げがnビット
数全体に伝播されることになる。
ゆえに、乗算器は最終の積を変換し、正規化して丸め
なければならない。典型的には、変換は最初に実行され
るが、これは符号付ディジット表示では、同等の大きさ
の数の先行ビットが「0」か「1」かを変換の前に決定
するのに長期間掛かるからである。次に正規化が実行さ
れるが、これは正規化シフトがどのビットを丸めるかを
決定するからである。変換も丸めもどららも長い桁上げ
連鎖を要するので、この方式は乗算の速度を相当遅くし
てしまう。
従って、部分積の和を高速で変換し、正規化し、丸め
る方法及び装置の必要性が生じてきた。
問題点を解決するための手段 本発明に従い、従来の丸め回路に伴う欠点及び問題を
実質的になくすかまたは少なくする丸め回路を提供す
る。
本発明の丸め回路は、mビット(典型的には2nビッ
ト)の数を2進法の大きさの表示に変換すると同時にm
ビットの数の丸め情報を計算することにより、mビット
の出力のnビットの2進法の大きさの表示を加算器アレ
イから発生する。出力回路は、変換されたmビットの数
と丸め情報とに基づいてnビットの大きさの表示を形成
する。丸め情報は、変換された値の正規化されないこと
を仮定する第一の場合と、変換された値の正規化を仮定
する第二の場合の2つの場合に計算される。
本発明は、加算器アレイの出力の変換と共に、丸め情
報を同時に計算することによって速度を増すという技術
利点を提供する。速度はまた、変換中に正規化の両方の
場合に丸め情報を計算することによっても増加する。
本発明の他の様態において、丸め回路は増分回路を含
み、変換の前に加算器アレイ出力の最上位のnビットを
1だけ増分し、それによって、丸めが増分数字の原因と
なる状態に供える。変換の前に加算器アレイの出力を増
分することにより、時間浪費の加算動作に結果としてな
る長い桁上げ連鎖が回避される。
更に本発明の他の様態において、加算器アレイの出力
全体の変換がその最上位のnビットからの借りという結
果になるかどうかを決定する借り計算回路を提供する。
借り計算回路は加算器アレイ出力の最下位ビット、すな
わち使用可能な最初のビットに対して作動するので、増
分された値または増分されなかった値のどちらを選ぶか
の決定は時間を更に遅らせることなく、変換の前に行な
うことができる。
本発明及びその利点をより完全に理解するために、次
に、添付図面と関連する以下の説明を参照する。
実施例 本発明の好ましい実施例は第1図−第3図の図面を参
照することにより最もよく理解されるが、図面中、同一
番号は種々の図面の同一及び相当部分に使用されてい
る。
第1図は、最終の積を変換し、正規化し、丸める回路
(以下、「丸め回路」10と称する)のブロック図を示
す。丸め回路10は、部分積の和を形成するのに典型的に
用いられる加算器アレイ12の出力に接続されている。説
明する実施例において、符号付ディジット加算器では、
加算器アレイの出力の各「ビット」を各ビット位置で
1、0、或いは−1を示す2ビットで表わすとする。n
ビット入力の場合、乗算器の加算器アレイの出力は2nビ
ットの長さとなり、ビット「0」からビット2n−1まで
が含まれる。
ビット「0」乃至ビットn−3はスティッキー・ビッ
ト発生器14に接続されている。スティッキー・ビット発
生器14の出力、ビットn−1及びビットn−2は借り計
算器16に接続されている。ビットn乃至ビット2n−1は
増分器18に接続されている。増分器18の出力及びビット
n乃至ビット2n−1はマルチプレクサ20に接続されてい
るが、このマルチプレクサは借り計算器16からの出力に
よって選択される。マルチプレクサの出力は変換器/減
分器22に接続されている。借り計算器16はまた、丸め器
24にも接続されている。丸め器24は、望ましい丸めモー
ドを選択する制御回路26に接続されている。変換器/減
分器22の出力及び丸め器24の出力はセレクタ/シフタ28
に接続されている。変換され、正規化されて丸められた
積(「最終値」)はセレクタ/シフタ28の出力のところ
で得られる。
動作について言うと、丸め回路10は、加算器アレイ12
の出力の変換と同時に丸め計算を行なうことにより高速
度を獲得する。更に、加算器アレイ12の出力が変換の前
に増分され、それにより符号付ディジット表示に増分が
実行できるようになり、上の方への丸め動作の場合に長
い桁上げ連鎖が回避される。
スティッキー・ビット発生器14は第2図に関連して最
もよく説明されるが、同図は加算器アレイ12からのビッ
ト出力を示す。加算器アレイ12はビット「0」乃至ビッ
ト2n−1として表示される2nビットを出力する。望まし
い最終値は2進法の大きさの表示となる正規化されたn
ビットとなる。浮動小数点数を正規化するために、最上
位ビットが「1」になるまでビットをシフトする。両方
の入力が正規化された場合、出力は多くて1シフト必要
とする。ゆえに、ビット2n−1が「1」に等しい場合、
n番目のビットは正規化された積の最下位ビットとな
り、ビットn−1は丸めのために用いられることにな
る。本明細書を明示するために、ビット「0」乃至ビッ
トn−2を「残りの丸めビット」と称し、同様に丸めの
ために使用する。
ビット2n−1が「0」に等しい場合は、正規化された
出力の最上位ビットはビット2n−2となり、正規化され
た出力の最下位ビットはビットn−1となる。従って、
丸めビットはビットn−2となり、残りの丸めビットに
はビット「0」乃至ビットn−3が含まれることにな
る。
正規化が必要でない場合は、下位のnビットが丸めら
れ、逆に、正規化が必要な場合は、下位のn−1ビット
が丸められる。IEEE丸め標準754を実現するには、丸め
ビット(正規化が必要かどうかによって、n−1或いは
n−2)を知らされなければならず、同様に、残りの丸
めビットが正、負、或いは0の値を持つかどうかも知ら
されなければならない。スティッキー・ビット発生器14
は残りの丸めビット(0乃至n−3)が正、負、或いは
0の値を持つかどうかを決定し、そのように表示される
ように「スティッキー・ビット」を発生する。下位のn
−3ビットの大きさが全てゼロの場合、スティッキー・
ビットの大きさが「0」であるが、その他の場合はステ
ィッキー・ビットの大きさの値は「1」である。大きさ
のビットの全てがゼロの大きさを有する場合、符号ビッ
トが正であるが、その他の場合はスティッキー・ビット
の符号の値は下位のn−3ビットの最上位のゼロでない
大きさのビットの符号の値である。言い換えると、残り
のビット全部がゼロに等しい場合のほかは、スティッキ
ー・ビットは残りのビットのうちの最初のゼロでないビ
ット(1或いは−1)に等しい。
部分積の加算を実行する場合、下位のビットは上位の
ビットの前に決定される。従って、スティッキー・ビッ
トの発生は、加算器アレイの出力の上位のビットの発生
と同時に実行され、それにより計算時間に遅延が僅かか
または何も追加されない。
符号付ディジット表示から2進法の大きさの表示への
変換には、加算器アレイからの出力の負のディジットを
加算器アレイから出力される正のディジットから減算す
ることが必要である。一例を第3図に挙げるが、この場
合、「0100」の符号ビットと「1101」の大きさのビット
を持つ符号付ディジット数は、負のビット(1に等しい
対応符号ビットを持つ大きさのビット)を正のビット
(ゼロに等しい符号ビットを持つ大きさのビット)から
減算することにより、2進法の大きさの数に変換され
る。2nビットの数を変換する場合、上位のn最終値は上
位のn符号付ディジット数の直接変換となる(正規化不
要とする)が、2nビット全体の変換が結果としてnビッ
ト最終値の最下位ビットからの借りとなる場合に、変換
された上位のnビットが下位のビットの丸めにより
「1」だけ増分される場合或いは、「1」だけ減分され
る場合は除く。
丸め回路10では、符号ディジット表示のまま、上位の
nビットの増分を実行することにより、増分過程中の長
い桁上げ連鎖の可能性が回避される。結果の丸め動作に
よって増分が強行されるかどうかにかかわらず、増分器
18において増分が実行される。
この増分過程と同時に、借り計算器16は、ビット位置
n−1及びn−2に対応する加算器出力のビットをステ
ィッキー・ビットと共に大きさの表示に変換し、この数
字を丸め器24に送る。借り計算器16はまた、加算器アレ
イ12からの2nビット値に対して変換が実行される場合、
借りが下位のnビットと上位のnビットとの間に生じる
かどうかを計算する。もし借りが何も生じない場合は、
最終値は増分された値かまたは上位のn符号付ディジッ
トの値のどちらかになる。もし借りが生じる場合は、最
終値は上位のn符号付ディジットの値かまたは減分され
た値のどちらかになる。借り計算器16の出力は、増分さ
れた値或いは増分されなかった値がマルチプレクサ20を
通して送られるかどうかを選択するために使用するが、
増分された値は借りが何もない場合に送られ、借りがあ
る場合は増分されなかった値が送られる。
選択された値はマルチプレクサ20を通して変換器/減
分器22に送られる。変換器/減分器22は上位のnビット
の変換された値と、1だけ減分された同一の値の両方を
発生する。変換器/減分器22は桁上げ選択減算器で、こ
れは所定数のビットのブロックにオペランドをグループ
分けし、各グループのビットごとに減算を実行すること
によって減算の速度を上げるものである。どのグループ
のビットの減算についても、(第1のブロックの場合は
除くが)前のブロックによる借りが必要かどうかが決定
されるまでは計算することができないので、桁上げ選択
減算器は、各グループ分けの両方の場合、すなわち、借
りがあると減算の結果は「1」だけ減分されるという場
合と、借りがないと減算の結果は減分されないという場
合との両方の場合について計算する。下位のブロックが
その計算を完了すると、各次のグループの正しい値が、
前のグループが借りを必要とするかどうかに基づいて選
択される。
通常、桁上げ選択減算器の最下位グループは、第1の
グループからの借りが何もないので、減分された値と減
分されなかった値の両方とも計算しない。しかし、本発
明では、桁上げ選択減算器は、最下位グループに対して
実行される減算が減分された値と減分されなかった値の
両方を計算するように設計されている。従って、nビッ
ト減算全体の減分された値と減分されなかった値の両方
が、ハードウェアを僅かに変更することにより、速度を
落とさずに計算される。更に、桁上げ選択減算器の論理
は、符号付ディジット変換の場合単純にされるが、これ
は、いかなる所定のビット位置においても、減数ビット
かまたは被減数ビットのどちらかの大きさが「0」でな
ければならないからである。
変換器/減分器22の作動と同時に、丸め器24を用いて
制御回路26からの入力によって示される望ましい丸め計
算を算出する。丸めモードは好ましいどのようなタイ
プ、すなわち、IEEEが指示する4つの丸めモードである
切上げ、切下げ、最も近いものへの丸め、及びゼロへの
丸めのうちのどのタイプであってもよい。丸め器24は、
ビットn−1及びビットn−2とスティッキー・ビット
とに対応する借り計算器16からの変換されたビットを受
け取る。丸めの二つの場合が計算される。第一の場合
は、正規化が何も必要でないとした場合で、従って、丸
めは、スティッキー・ビットと、n−2及びn−1とに
対応する変換されたビットに対して計算される。第二の
場合は、正規化が必要となるとした場合で、従って、丸
めはスティッキー・ビット及びn−2に対応する変換さ
れたビットに対して計算され、n−1のビットは最終値
の最初の最下位ビット(LSB)として用いられる。この
二つのうちのどちらの場合でも、丸め器24は、LSBと、
変換器/減分器22からの減分された出力或いは減分され
なかった出力のどちらを使用しなければならないかを示
す選択信号とを送る。
上述したケース1の場合の丸めを計算するために、ス
ティッキー・ビット、ビットn−2及びビットn−1に
対応するビットに基づく丸めが切上げの場合、選択信号
は、変換器/減分器22からの減分されなかった値を使用
しなければならないということを示す。丸めが切上げで
ない場合は、選択信号は減分された出力を使用しなけれ
ばならないということを示す。ケース1の場合、変換器
/減分器22の出力がnビット全体を含むので、LSBは計
算する必要はない。
ケース2では、スティッキー・ビット及びビットn−
2に対応するビットに対して丸めが計算され、最初のLS
Bはビットn−1に設定される。もし丸めが切上げで、
最初のLSBが1に設定された場合は、セレクタ/シフタ2
8に出力されるLSBは「0」に等しく設定され、選択信号
は減分されなかった出力を使用しなければならないとい
うことを示す。もう丸めが切上げでなく、最初のLSBが
「1」に設定された場合は、セレクタ/シフタ28に送ら
れるLSBは「1」に設定され、選択信号は減分された出
力を使用しなければならないということを示す。もうし
丸めが切上げで、LSBが「0」に設定された場合は、セ
レクタ/シフタ28に送られるLSBは「1」に設定され、
選択信号は減分された出力を使用しなければならないと
いうことを示す。もし丸めが切上げでなく、最初のLSB
が「0」に設定された場合は、セレクタ/シフタ28に出
力されるLSBは「0」に設定され、選択信号は減分され
た出力を使用しなければならないということを示す。
上述したような丸め器24からのLSB及び選択出力の誘
導は次の等式によって決定される: SEL1=RND SEL2=RND AND B(n−1) LSB2=RND XOR B(n−1) ここで、 SEL1=ケース1の場合の選択信号 SEL2=ケース2の場合の選択信号 LSB2=ケース2の場合のLSB出力 RND=切上げが実行される場合は「1」に等しく、それ
以外は「0」に等しい。
B(n−1)=ビット位置n−1に対応する変換された
ビットの値。
上述の等式によって説明されるSEL信号は、減分され
なかった出力が使用される場合は「1」に等しく、減分
された出力が使用される倍は「0」に等しい。
よってセレクタ/シフタ28は、丸め器24からの選択及
びLSB信号と、変換器/減分器22の減分された出力及び
減分されなかった出力の最上位ビットとに基づいて、変
換器/減分器22の減分された出力かまたは減分されなか
った出力のどちらかを選択し、シフトする。もし変換器
/減分器22の減分された出力及び減分されなかった出力
の両方の最上位ビットが「1」に等しい場合は、正規化
は必要ではない。ゆえに、セレクタ/シフタ28はケース
1に基づくSEL1信号に基づいて、減分されなかった出力
と減分された出力とのどちらかを選択する。減分された
出力及び減分されなかった出力の両方の最上位ビットが
「0」に等しい場合は、正規化が必要となる。この場
合、セレクタ/シフタ28は、丸め器24からのLSB2及びSE
L2信号を選択し、選択した出力のシフトを実行する。
減分されなかった出力の最上位ビットが「1」で、減
分された出力の最上位ビットが「0」の場合は、セレク
タ/シフタ28は丸め器24からのSEL2及びLSB2信号を選択
する。しかし、SEL2信号が減分されなかった出力を使用
しなければならないことを示す場合は、出力が既に正規
化されているので、シフトは実行されない。従って、LS
B2信号はこの場合使用されない。それ以外の場合は全
て、選択された出力がシフトされる。
本発明の丸め回路では、加算器アレイの出力の変換が
正規化及び丸めと同時に実行されるので、増加した速度
という技術利点が提供される。本発明の丸め回路を符号
付ディジット加算器と関連して説明したが、最終値を和
及び桁上げストリームから変換しければならないウォー
レス・ツリー構造と関連して同様に用いることができ
る。
以上に本発明を詳細に説明したが、添付の特許請求の
範囲の項で定められるような本発明の精神及び範囲にそ
むくことなく様々な変化、置換え、変更を行うことがで
きるということを理解されたい。
(1)加算器アレイからのmビットの出力をnビットの
2進法の大きさの表示に変換し、丸める丸め回路であっ
て、 前記mビットの数の所定の部分を2進法の大きさの表
示に変換する変換回路と、 mビットの数の前記変換と同時に前記mビットの数の
丸め情報を計算する丸め回路と、 前記変換回路及び前記丸め回路の出力に基いて、nビ
ットの大きさの表示を形成する出力回路とを含む丸め回
路。
(2)第(1)項に記載した丸め回路において、前記丸
め回路が、 変換されたmビットの数の正規化が必要でないと仮定
する前記丸め情報を計算する回路と、 変換されたmビットの数の正規化が必要であると仮定
する前記丸め情報を計算する回路とを含む丸め回路。
(3)第(2)項に記載した丸め回路において、正規化
を仮定する丸めを計算する前記回路が、nビットの2進
法の大きさの表示の最下位ビットを計算する回路を含む
丸め回路。
(4)第(3)項に記載した丸め回路において、前記変
換回路が、mビットの大きさの表示の丸めが最上位のn
ビットへの桁上げという結果にならないと仮定する大き
さの表示に加算器アレイ出力の最上位のnビットが変換
される第1の値と、mビットの大きさの表示の丸めが最
上位のnビットへの桁上げという結果になると仮定する
大きさの表示に加算器アレイ出力の最上位のnビットが
変換される第2の値とを発生する丸め回路。
(5)第(4)項に記載した丸め回路において、前記出
力回路が前記変換された大きさの表示の正規化が必要か
どうかを検出する回路を含む丸め回路。
(6)第(5)項に記載した丸め回路において、前記出
力回路が更に、前記変換された大きさの表示を正規化す
るシフティング回路を含む丸め回路。
(7)第(4)項に記載した丸め回路であって更に、変
換の前に加算器アレイの出力を増分する増分回路を含
み、丸めによる桁上げ連鎖を回避する丸め回路。
(8)加算器アレイのmビットの出力を2進法の大きさ
の表示に変換しその出力をnビットの数に丸める丸め回
路であって、 加算器アレイ出力の最上位のnビットを1だけ増分す
る増分回路と、 mビットの数の変換が最上位のnビットからの借りと
いう結果になるかどうかを決定する借り計算回路と、 前記借り計算回路による決定に基づいて、加算器アレ
イ出力の最上位のnビットと増分された出力とのどちら
かの出力を選択するマルチプレクサ回路と、 マルチプレクサ回路からの前記選択された出力を2進
法の大きさの数に変換し、かつ減分された2進法の大き
さの数を計算する変換器/減分器回路と、 加算器アレイ出力の丸めの方向を計算する丸め回路
と、 前記変換器/減分器回路によって計算された前記減分
された数と前記減分されなかった数のどちらかを選択す
るセレクタ回路とを含む丸め回路。
(9)第(8)項に記載した丸め回路であって更に、加
算器アレイ出力の下位のm−nビットを2進法の大きさ
の数に変換する丸め変換器回路を含み、前記丸め回路が
前記変換されたm−nビットに基づいて丸め方向を計算
する丸め回路。
(10)第(8)項に記載した丸め回路において、加算器
が符号付ディジット加算器であって更に、 加算器アレイの出力の最上位のゼロでないビット、ビ
ット位置m−(n−3)からビット位置ゼロまでに等し
いスティッキー・ビットを計算する回路であって、全て
のビットがゼロに等しい場合スティッキー・ビットがゼ
ロに等しい回路と、 ビット位置m−(n−1)及びm−(n−2)及び前
記スティッキー・ビットに対応する加算器アレイ出力の
ビットを2進法の大きさの表示に変換する回路であっ
て、前記丸め回路が前記変換されたビットに基づいて丸
め方向を計算する回路とを含む丸め回路。
(11)第(8)項に記載した丸め回路において、前記変
換器/減分器回路が桁上げ選択減算器を含む丸め回路。
(12)第(8)項に記載した丸め回路であって更に、前
記セレクタ回路によって選択された前記数を選択的にシ
フトする回路を含む丸め回路。
(13)第(12)項に記載した丸め回路であって更に、前
記減分された数及び減分されなかった数の最上位ビット
に基づいてシフトが必要かどうかを決定するシフト制御
手段を含む丸め回路。
(14)第(13)項に記載した丸め回路において、前記丸
め回路が、加算器アレイ出力のm−(n−1)ビットに
基づく第1の丸め方向、及び加算器アレイ出力のm−n
ビットに基づく第2の丸め方向を計算する回路を含む丸
め回路。
(15)第(14)項に記載した丸め回路において、前記丸
め回路が更に、前記シフティング回路がシフトを実行す
る場合にnビットの出力の最下位ビットを計算する回路
を含む丸め回路。
(16)第(15)項に記載した丸め回路において、前記丸
め回路が更に前記計算された第1の丸め方向に基づく第
1の選択信号と、前記計算された第2の丸め方向と前記
計算された最下位ビットとに基づく第2の選択信号とを
出力する回路を含む丸め回路。
(17)加算器アレイからのmビットの出力をnビットの
2進法の大きさの表示に変換し、丸め方法であって、 前記mビットの数の部分を2進法の大きさの表示に変
換する段階と、 mビットの数の前記変換と同時に前記mビットの数の
丸め情報を計算する段階と、 前記2進法の大きさの表示及び前記丸め情報に基い
て、nビットの大きさの表示を形成する段階とを含む方
法。
(18)第(17)項に記載した方法において、前記丸めの
段階が、 変換されたmビットの数の正規化が必要でないと仮定
する前記丸め情報を計算する段階と、 変換されたmビットの数の正規化が必要であると仮定
する前記丸め情報を計算する段階とを含む方法。
(19)第(18)項に記載した方法において、正規化を仮
定する前記丸め情報を計算する前記段階が、nビットの
大きさの表示の最下位ビットを計算する段階を含む方
法。
(20)第(17)項に記載した方法において、前記変換段
階が、 mビットの大きさの表示の丸めが最上位のnビットへ
の桁上げという結果にならないと仮定する大きさの表示
に加算器アレイ出力の最上位のnビットが変換される第
1の値を発生する段階と、 mビットの大きさの表示の丸めが最上位のnビットへ
の桁上げという結果になる仮定する大きさの表示に加算
器アレイ出力の最上位のnビットが変換される第2の値
を発生する段階とを含む方法。
(21)第(17)項に記載した方法において、nビットの
大きさの表示を形成する前記段階が、前記変換された大
きさの表示の正規化が必要かどうかを検出する段階を含
む方法。
(22)第(20)項に記載した方法において、nビットの
大きさの表示を形成する前記段階が更に、前記nビット
の大きさの表示を正規化用にシフティングする段階を含
む方法。
(23)加算器アレイ12からのmビットの出力をnビット
の2進法の大きさの表示に変換し丸める丸め回路10が、
変換の前に加算器アレイ12の出力を増分する増分器18を
含む。借り計算器16は、mビットの数の変換が上位のn
ビットからの借りを必要とするかどうかを示すマルチプ
レクサへの選択信号を発生する。選択信号は増分された
出力かまたは増分されなかった出力かを選択するのに用
いる。変換器/減分器22は、マルチプレクサ20の選択さ
れた出力を2進法の大きさの数に変換し、同様に、1だ
け減分された大きさの表示を計算する。丸め回路24は制
御回路26からの制御信号に基づいて丸め方向を計算す
る。丸め回路10は、(a)変換された値の正規化が必要
でないと仮定する場合と、(b)変換された値の正規化
が必要であると仮定する場合の2つの場合に丸め情報を
計算する。セレクタ/シフタ28は丸め情報に基づいて減
分された値と減分されなかった値のいずれかを選ぶ。
【図面の簡単な説明】
第1図は本発明の丸め回路のブロック図を示す。 第2図は最終値の正規化が必要でない場合と、最終値の
正規化が必要な場合の加算器アレイの出力を示す。 第3図は負の大きさのビットを正の大きさのビットから
減算することによる符号付ディジット表示の変換を示
す。 主な符号の説明 10:丸め回路 12:加算器アレイ 14:スティッキー・ビット発生器 16:借り計算器 18:増分器 20:マルチプレクサ 22:変換器/減分器 24:丸め器 26:制御回路 28:セレクタ/シフタ
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭61−70635(JP,A) 特開 平1−240927(JP,A) 電子情報通信学会技術研究報告CPS Y−87−47(昭63−3−24)p.43−48

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】加算器アレイからの符号付ディジット表示
    のmビットの出力からnビットの2進法の大きさの表示
    を形成する丸め回路であって、 前記mビットの出力の所定の部分を2進法の大きさの表
    示に変換する変換回路と、 前記mビットの出力の丸め情報を計算する丸め計算回路
    と、 前記変換回路および前記丸め計算回路の出力に基づい
    て、前記nビットの2進法の大きさの表示を形成する出
    力回路と を含む丸め回路。
JP1080242A 1988-03-31 1989-03-30 高速演算器における丸め回路 Expired - Fee Related JP2872263B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/175,968 US5170371A (en) 1988-03-31 1988-03-31 Method and apparatus for rounding in high-speed multipliers
US175968 1988-03-31

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP8095460A Division JPH096595A (ja) 1988-03-31 1996-04-17 演算結果の表示方法

Publications (2)

Publication Number Publication Date
JPH01290035A JPH01290035A (ja) 1989-11-21
JP2872263B2 true JP2872263B2 (ja) 1999-03-17

Family

ID=22642398

Family Applications (2)

Application Number Title Priority Date Filing Date
JP1080242A Expired - Fee Related JP2872263B2 (ja) 1988-03-31 1989-03-30 高速演算器における丸め回路
JP8095460A Pending JPH096595A (ja) 1988-03-31 1996-04-17 演算結果の表示方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP8095460A Pending JPH096595A (ja) 1988-03-31 1996-04-17 演算結果の表示方法

Country Status (2)

Country Link
US (1) US5170371A (ja)
JP (2) JP2872263B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5408426A (en) * 1992-03-17 1995-04-18 Hitachi, Ltd. Arithmetic unit capable of performing concurrent operations for high speed operation
US5235533A (en) * 1992-05-11 1993-08-10 Intel Corporation Store rounding in a floating point unit
US5493581A (en) * 1992-08-14 1996-02-20 Harris Corporation Digital down converter and method
US5644522A (en) * 1993-11-30 1997-07-01 Texas Instruments Incorporated Method, apparatus and system for multiply rounding using redundant coded multiply result
US6199089B1 (en) * 1998-09-18 2001-03-06 Ati International Srl Floating point arithmetic logic unit rounding using at least one least significant bit
FR2820905B1 (fr) * 2001-02-09 2005-02-18 Gemplus Card Int Dispositif et procede de traitement de valeurs numeriques, notamment sous forme non-adjacente
US10140094B2 (en) * 2016-05-24 2018-11-27 Arm Limited Rounding circuitry and method
US11210064B2 (en) * 2019-07-30 2021-12-28 International Business Machines Corporation Parallelized rounding for decimal floating point to binary coded decimal conversion
US11221826B2 (en) 2019-07-30 2022-01-11 International Business Machines Corporation Parallel rounding for conversion from binary floating point to binary coded decimal

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3816732A (en) * 1973-03-29 1974-06-11 Rockland Systems Corp Apparatus and method for serial-parallel binary multiplication
BE844199A (nl) * 1976-07-16 1976-11-16 Inrichting voor het vermenigvuldigen van binaire getallen
US4495593A (en) * 1982-07-01 1985-01-22 Hewlett-Packard Company Multiple bit encoding technique for combinational multipliers
US4648058A (en) * 1984-04-03 1987-03-03 Trw Inc. Look-ahead rounding circuit
JPS6170635A (ja) * 1984-09-14 1986-04-11 Hitachi Ltd 丸め制御装置
JPH0776911B2 (ja) * 1988-03-23 1995-08-16 松下電器産業株式会社 浮動小数点演算装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
電子情報通信学会技術研究報告CPSY−87−47(昭63−3−24)p.43−48

Also Published As

Publication number Publication date
JPH01290035A (ja) 1989-11-21
US5170371A (en) 1992-12-08
JPH096595A (ja) 1997-01-10

Similar Documents

Publication Publication Date Title
US4878190A (en) Floating point/integer processor with divide and square root functions
US4969118A (en) Floating point unit for calculating A=XY+Z having simultaneous multiply and add
US5790446A (en) Floating point multiplier with reduced critical paths using delay matching techniques
US5844830A (en) Executing computer instrucrions by circuits having different latencies
USRE39385E1 (en) Method and apparatus for performing mathematical functions using polynomial approximation and a rectangular aspect ratio multiplier
US5222037A (en) Floating-point processor for performing an arithmetic operation on fixed-point part data with high speed rounding of a result
US7921149B2 (en) Division and square root arithmetic unit
US5280439A (en) Apparatus for determining booth recoder input control signals
US4866656A (en) High-speed binary and decimal arithmetic logic unit
US4949296A (en) Method and apparatus for computing square roots of binary numbers
JP2002108606A (ja) スティッキービット生成回路及び乗算器
US5148386A (en) Adder-subtracter for signed absolute values
JP5640081B2 (ja) 飽和を伴う整数乗算および乗算加算演算
Hickmann et al. A parallel IEEE P754 decimal floating-point multiplier
Erle et al. Decimal floating-point multiplication via carry-save addition
JPH0248930B2 (ja)
JP2872263B2 (ja) 高速演算器における丸め回路
Takagi et al. A hardware algorithm for integer division
Erle et al. Decimal floating-point multiplication
Stelling et al. Implementing multiply-accumulate operation in multiplication time
US5734599A (en) Performing a population count using multiplication
JP2511527B2 (ja) 浮動小数点演算器
JPH05204602A (ja) 制御信号の方法と装置
JPH086766A (ja) 正弦余弦演算装置
JPH11296346A (ja) 浮動小数点2進4倍長語フォ―マット乗算命令装置

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090108

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees