JPS61224036A - 演算装置 - Google Patents

演算装置

Info

Publication number
JPS61224036A
JPS61224036A JP60066155A JP6615585A JPS61224036A JP S61224036 A JPS61224036 A JP S61224036A JP 60066155 A JP60066155 A JP 60066155A JP 6615585 A JP6615585 A JP 6615585A JP S61224036 A JPS61224036 A JP S61224036A
Authority
JP
Japan
Prior art keywords
arithmetic
result
overflow
arithmetic unit
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.)
Granted
Application number
JP60066155A
Other languages
English (en)
Other versions
JPH0797312B2 (ja
Inventor
Shingo Oota
真吾 太田
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP60066155A priority Critical patent/JPH0797312B2/ja
Publication of JPS61224036A publication Critical patent/JPS61224036A/ja
Publication of JPH0797312B2 publication Critical patent/JPH0797312B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/506Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages
    • G06F7/507Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages using selection between two conditionally calculated carry or sum values
    • 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/49905Exception handling
    • G06F7/4991Overflow or underflow
    • 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/49905Exception handling
    • G06F7/4991Overflow or underflow
    • G06F7/49915Mantissa overflow or underflow in handling floating-point numbers

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は固定小数点演算を行なうための演算゛装置に関
する。
(従来の技術) 従来、固定小数点数の演算においてオーバーフローの検
出演算結果が決定した後に行々われていた。
第2図は上述の演算装置の従来例を示したものである。
従来装置は、第1オペランド格納レジスタ21、反転器
22、選択回路23、第2オペランド格納レジスタ24
、演算指示格納フリップフロップ25、キャリー入力′
″l”の演算器26、キャリー入力″″O′の演算器2
7、選択回路28、演算結果格納レジスタ29、オーバ
ーフロー検出回路30およびオーバーフロー検出結果格
納フリップフロップ31から構成されている。
図において、演算指示信号100’として引き算を指示
する゛】 ”が入力すると、これが演算指示格納フリッ
プフロップ25にセットされるとともに選択回路23は
第2オペランドBの反転出力2001”i選択し、その
補数百が第2オペランド格納レジスタ24に格納される
。足し算を指示する′″0”が入力すると同じく演算指
示格納フリップフロップ25にセットされるとともに選
択回路23は第2オペランドBの出力2000’を選択
し、Bが第2オペランド格納レジスタ24に格納される
。演算器26はキャリーがある場合、す々わち@l”の
ときの演算器、演算器27はキャリーがない場合、すな
わち”0”のときの演算器である。各演算器26.27
は各オペランドA、Bの演算を行彦い、それらの出力は
、選択回路28により選択される。引き算の場合は演算
指示格納フリップフロップ25の出力は11”であるの
でキャリーがある場合の演算器26の出力結果が、足し
算の場合は10”であるのでキャリーがない場合の演算
器27の出力結果が演算結果格納レジスタ29に格納さ
れる。
(発明が解決しようとする問題点) 従来の装置はこのように演算結果が一義的に決定したあ
とにオーバーフロー検出を行なっている。すなわちオー
バーフロー検出回路3oではオーバーフローを起してい
るか検出し、その結果をオーバーフロー検出結果格納フ
リップフロップ3】に格納している。したがって、オー
バーフロー検出に長い時間がかかるという欠点があった
本発明の目的はオーバーフロー検出に従来程時間を要す
ることのない演算装置を提供することにある。
(問題点を解決するための手段) 前記目的を達成するために本発明による演算装置は第1
の演算器では下位桁からキャリー入力がある場合の演算
を行ない、第2の演算器ではキャリー入力がない場合の
演算を行ない、実際のキャリー入力有無の情報により前
記第1または第2の演算器出力結果を選択し、その出力
結果を演算結果レジスタ格納レジスタに格納する、固定
小数点数の演算装置において、前記第1と第2の演算器
出力結果を選択する動作た並行して、前記第1の演算器
の出力結果と前記第2の演算器の出力結果をそれぞれ別
のオーバーフロー検出回路に導びきオーバーフローの検
出を行ないその各結果を前記実際のキャリー入力有無の
情報により選択しオーバーフロー検出結果格納フリップ
フロップに格納するように構成しである。
(作 用) 前記構成によればオーバーフロー検出の時間を短縮する
ことができ、本発明の目的は完全に達成することができ
る。
(実施例) 次に図面を参照して本発明の詳細な説明する。
第1図は本発明による演算装置の一実施例を示すブロッ
ク図である。
本実施例は第1オペランド格納レジスタ1、反転器2、
選択回路3、第2オペランド格納レジスタ4、演算指示
格納フリップフロップ5、キャリー入力″′1″の演算
器6、キャリー入力“O#の演算器7、選択回路8.工
2、オーバーフロー検出回路10.11 、演算結果格
納レジスタ9およびオーバーフロー検出結果格納フリッ
プフロップ13を含む。
本実施例において、固定小数点数である第1オペランド
と固定小数点数である第2オペランドの演算は以下のよ
うにして行かわれる。
第1オペランドAfl第1オペランド格納レジスタlに
格納される。一方、第2オペランドBは、演算指示信号
100が足し算を指示する@0”のときそのままの値が
選択回路3により選択され、演算指示信号100が引き
算を指示する@1#のとき、反転器2でその各桁のl#
、”0”を反転したもの、すなわちBの補数■とじ念も
のが選がされて、第2オペランド格納レジスタ4に格納
される。
レジスタlおよびレジスタ4に格納されたAおよ、びB
またはBは演算器6および演算器7で加算される。
演算器6は最小桁へのキャリーがある場合(キャリー入
力“1  ”)の加算、つま夕足し算のときA+B+ 
1.引き算のときA+B+1の加算を性力う。
一方、演算器7の側は最小桁へのキャリーがない場合(
ヤヤリー入力゛0”ンの加算、つまシ足し算のときA+
B、引き算のときh+Hの加算を打力う。
演算器6で演算されたA+B+1またはA十U−zl与
える出力6000および演算器7で演算されたA+Bま
たはA十nを与える出カフ000は選択器8の入力に導
かれるとともに演算器6o出力6000HA+B+ 1
’!たuA+W+12>1オーバーフローを起こしてい
るかどうか全検出するオーバーフロー検出回路10に、
演算器7の出カフ000ばA+BまたはA+Bがオーバ
ーフローを起こしているかどうかを検出するオーバーフ
ロー検出回路]1にそれぞれ導かれる。これらのオーバ
ーフロー検出回路10.11−の出力は演算指示信号5
oooで選択する選択器12に導かれている。
演算指示格納フリップフロップ5には足シ算のとき“0
”が、引き算のとき“1 ″が格納される。
足し算を行なう場合、前述により第2オペランド格納レ
ジスタ4に第2オペランドBがそのまま格納され、演算
器7が前述のA+Bの演算を行なった結果を信号線70
00に出力し、オーバーフロー検出回路11でオーバー
フローラ起コしているかどうかを検出して、オーバーフ
ローを起していれば′】 ″、起こしていなければ′0
1を信号線11000に出力する。このとき演算指示信
号100は足し算であ・る0”を示し、演算指示格納フ
リップフロップ5の出力5000も足し算である″O”
を示し、選択回路8は信号線7000をまた選択回路1
2は信号線] ] 000をそれぞれ選択して、演算結
果格納レジスタ9とオーバーフロー検出結果格納フリッ
プフロップ13に各々格納する。
引き算を行なう場合、前述により第2オペランド格納レ
ジスタ4に第2オペランドBの補数演算を行なった結果
を信号線6000に出力し、オーバーフロー検出回路1
0でオーバーフローを起こしているかどうかを検出して
オーバーフローを起していれば@l ”、起こしていな
ければ“O#を信号線10000に出力する。このとき
演算指示信号100は引き算である“1#を示し、演算
指示格納フリップフロップ5の出力5000も引き算で
ある′l ”を示し、選択回路8は信号線6000をま
た選択回路12は信号線10000をそれぞれ選択して
演算結果格納レジスタ9とオーバーフロー検出結果格納
フリップフロップ13に各々格納する。
この例では演算すべきデータのビット幅?、2等分して
(例えば16ビツト幅の演算においては上位桁側8ビツ
トと下位桁側8ビツトとに2等分して)、下位桁側の演
算と上位桁側の演xを同時に平行して行なっている。た
だし、上位桁側の演′Xは、下位桁側からのキャリーが
ある場合の演算と下位からのキャリーのいかんにかかわ
らず前もって平行して行なっておき、下位桁から実際に
キャリーが出る時点で実際のキャリーの有無によりその
正しい方を選択して最終出力とする。このような方法に
ょシ、演算時間を短縮することができる。
次に第2の実施例を第2図にょシ説明する。
第2図の実施例は、第1オペランド格納レジスタ34、
第2オペランド格納レジスタ35、キャリー入力11 
#の演算器45、キャリー入力″′0”の演算器55,
65、部分的なオーバーフロー検出回路46,56,6
6、選択回路47.57、全体のオーバーフロー検出回
路48、オーバーフロー検出結果格納フリップフロップ
49、および演算結果格納レジスタ59ヲ含む。
第2の実施例の固定小数点数の演算は以下のように行な
われる。
第1オペランドAは第1オペランド格納レジスタ34に
、第2オペランドBU第2オペランド格納レジスタ35
にそれぞれ格納される。この第1オペランド格納レジス
タ34、第2オペランド格納レジスタ35に格納された
人およびBは上位側251 、351と下位側252 
、352に分けて出力される。
キャリー入力″″1″の演算器45は、レジスタ34.
35の上位側の出力を入力とし最小桁へのキャリーがあ
る場合の加算を行ない、オーバーフロー検出回路46お
よび選択回路57へ出力する。
キャリー入力10”の演算器55はレジスタ34゜35
の上位側の出力を入力とし、最小桁へのキャリーがない
場合の加算を行ないオーツ(−フロー検出回路56およ
び選択回路57へ出力する。キャリー入力”0”の演算
器65はレジスタ34゜35の下位側の出力を入力とし
最小桁へのキャリーがない場合の加算を行ない、オーツ
(−フロー検出回路66および演算結果格納レジスタ5
9に出力すると同時に加算結果のキヤIJ−653’i
出力する。
選択回路57は、演算回路45と演算回路55の出力を
演算回路65のキャリー出力653で選択し演算結果格
納レジスタ59に出力する。選択回路47は演算回路4
5からの出力のオーツく−フロー検出回路46の出力と
演算回路55からの出力のオーバーフロー検出回路56
の出力を演算回路65のキャリー出力653で選択し、
全体のオーバーフロー検出回路48に出力する。全体の
オーバーフロー検出回路48は選択回路47の出力と演
算回路65からの出力のオーバーフロー検出回路66の
出力よシ全体の加算結果のオーバーフローを求め、オー
バーフロー検出結果格納フリップフロップ49に格納す
る。
この実施例は演算器を下位側と上位側に分けてキャリー
がある場合とない場合のそれぞれを求めておき、下位側
からのキャリーで選択することによって演算時間を短縮
している。2分割した加算器を例に上げたが分割数をふ
やしたシ、また最下位にもキャリー入力を持たせ加減の
演算指示信号で選択するような構成した加減算器も考え
られる。
(発明の効果] 以上、説明したように本発明は固定小数点演算色演算結
果がオーバーフローしていることを検出する動作とをオ
ーバーラツプして行なうことにより、オーバーフローの
検出を早く行なうことができる。またこのときオーバー
フローが検出された場合は演算結果に定数を入れるとい
うような演算回路においてはオーバーフローの検出を早
く行なうことによって演算時間全短縮することができる
効果がある。
【図面の簡単な説明】
第1図は本発明による演算装置の一実施例を示すブロッ
ク図、第2図は本発明の第二の実施例を示すブロック図
、第3図は従来の演算装置のブロック図である。 l・・・第1オペランド格納レジスタ 2・・・反転器  3,8.12・・・選択回路4・・
・第2オペランド格納レジスタ 5・・・演算指示格納フリップフロップ6・・・キャリ
ー入力“1 #の演算器7・・・キャリー入力“0″の
演算器 9・・・演算結果格納レジスタ 10 、11・・・オーバーフロー検出回路13・・・
オーバーフロー検出結果格納フリップフロップ 34・・・第1オペランド格納レジスタ35…第2オペ
ランド格納レジスタ 45・・・キャリー入力″″1”の演算器55.65・
・・キャリー入力@0#の演算器46、56.66・・
・部分的なオーバーフロー検出回路 47.57・・・選択回路 48・・・全体のオーバーフロー検出回路49・・・オ
ーバーフロー検出結果格納フリップフロップ 59・・・演算結果格納レジスタ 特許出願人  日本電気株式会社 代理人 弁理士 井 ノ ロ    壽21図 22図

Claims (1)

    【特許請求の範囲】
  1. 第1の演算器では下位桁からキャリー入力がある場合の
    演算を行ない、第2の演算器ではキャリー入力がない場
    合の演算を行ない、実際のキャリー入力有無の情報によ
    り前記第1または第2の演算器出力結果を選択し、その
    出力結果を演算結果レジスタ格納レジスタに格納する、
    固定小数点数の演算装置において、前記第1と第2の演
    算器出力結果を選択する動作に並行して、前記第1の演
    算器の出力結果と前記第2の演算器の出力結果をそれぞ
    れ別のオーバーフロー検出回路に導びきオーバーフロー
    の検出を行ないその各結果を前記実際のキャリー入力有
    無の情報により選択しオーバーフロー検出結果格納フリ
    ップフロップに格納するように構成したことを特徴とす
    る演算装置。
JP60066155A 1985-03-29 1985-03-29 演算装置 Expired - Lifetime JPH0797312B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60066155A JPH0797312B2 (ja) 1985-03-29 1985-03-29 演算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60066155A JPH0797312B2 (ja) 1985-03-29 1985-03-29 演算装置

Publications (2)

Publication Number Publication Date
JPS61224036A true JPS61224036A (ja) 1986-10-04
JPH0797312B2 JPH0797312B2 (ja) 1995-10-18

Family

ID=13307689

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60066155A Expired - Lifetime JPH0797312B2 (ja) 1985-03-29 1985-03-29 演算装置

Country Status (1)

Country Link
JP (1) JPH0797312B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63204324A (ja) * 1987-02-19 1988-08-24 Fujitsu Ltd 浮動少数点乗算方式
EP0780759A1 (en) * 1995-12-22 1997-06-25 Lucent Technologies Inc. Elimination of math overflow flag generation delay in an alu

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7428567B2 (en) 2003-07-23 2008-09-23 Sandbridge Technologies, Inc. Arithmetic unit for addition or subtraction with preliminary saturation detection

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63204324A (ja) * 1987-02-19 1988-08-24 Fujitsu Ltd 浮動少数点乗算方式
EP0780759A1 (en) * 1995-12-22 1997-06-25 Lucent Technologies Inc. Elimination of math overflow flag generation delay in an alu

Also Published As

Publication number Publication date
JPH0797312B2 (ja) 1995-10-18

Similar Documents

Publication Publication Date Title
KR950006580B1 (ko) 나눗셈연산장치
JPS61237133A (ja) 演算回路
JPS61224036A (ja) 演算装置
JPS63123125A (ja) 浮動小数点数の加算装置
JPS608933A (ja) 演算処理装置
JPH0383127A (ja) 10進除算器
JPH0352093B2 (ja)
US6654776B1 (en) Method and apparatus for computing parallel leading zero count with offset
JPH07104777B2 (ja) 浮動小数点加減算装置
JP2591250B2 (ja) データ処理装置
JP4428778B2 (ja) 演算装置及び演算方法並びに計算装置
JPH0330170B2 (ja)
JPS63254525A (ja) 除算装置
JPS6194144A (ja) 浮動小数点加算回路
JPS6126136A (ja) 浮動小数点加算回路の桁合わせ回路
JPH0413734B2 (ja)
JPS63279321A (ja) マイクロプログラム制御装置
JPH0426495B2 (ja)
SU824197A1 (ru) Вычислительное устройство
JPS6224322A (ja) 浮動小数点演算装置
JPS6129020B2 (ja)
JPS5860354A (ja) 乗算装置
JPS5985539A (ja) 除算処理装置
JPH0150930B2 (ja)
JPH05181644A (ja) 乗算回路