JPH0814790B2 - 演算処理装置 - Google Patents

演算処理装置

Info

Publication number
JPH0814790B2
JPH0814790B2 JP61215776A JP21577686A JPH0814790B2 JP H0814790 B2 JPH0814790 B2 JP H0814790B2 JP 61215776 A JP61215776 A JP 61215776A JP 21577686 A JP21577686 A JP 21577686A JP H0814790 B2 JPH0814790 B2 JP H0814790B2
Authority
JP
Japan
Prior art keywords
mantissa
data
bit
circuit
path
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
JP61215776A
Other languages
English (en)
Other versions
JPS6371725A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP61215776A priority Critical patent/JPH0814790B2/ja
Publication of JPS6371725A publication Critical patent/JPS6371725A/ja
Publication of JPH0814790B2 publication Critical patent/JPH0814790B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 [産業上の利用分野] この発明はデジタル演算処理技術さらには浮動小数点
演算方式に適用して特に有効な技術に関し、例えば浮動
小数点演算可能なデジタル信号処理器に利用して有効な
技術に関する。
[従来の技術] 従来、[株]日立製作所製DSP(デジタル・シグナル
・プロセッサ)HD 61810のような演算プロセッサでは、
第3図に示すような演算部を有し、浮動小数点加減算が
行なえるようにされている。すなわち、演算されるべき
2つの浮動小数点データA1,A2は、入力データレジスタ
1a,1bに入力され、大小判定回路2によっていずれのデ
ータの指数部が大きいか判定される。そして、その大小
判定結果に応じてセレクタ3が切り換えられて、指数部
の小さな方のデータの仮数部が桁合せ回路4に供給され
るように制御される。それから、指数部の大きい方のデ
ータの仮数部と、桁合せ回路4で桁合せのためのシフト
が行なわれ指数部の小さい方のデータの仮数部とが、固
定小数点加減算器5に供給されて演算が行なわれる。そ
して、演算結果は正規化回路6へ供給され、ここで小数
点以下最上位桁(MSB)が正数ならば“1"、負数ならば
“0"となるようなシフト(仮数部の移動)が行なわれる
と共に、そのシフト量に応じて指数部の変更が行なわれ
てから、アキュームレータ7へ転送されるようになって
いる。
なお、上記演算器で演算される浮動小数点データA1,
A2は、A1=m1×2e1,A2=m2×2e2のように表され
る。ここで、m1,m2は仮数部、e1,e2は指数部であり、
1,m2は−1と1との間の数である。
[発明が解決しようとする問題点] 上記演算プロセッサでは、演算される2つのデータA
1とA2の指数部の大きさが異なる場合、仮数部同士をそ
のまま加減算するわけにはいかないので、桁合せが行な
われる。しかもその場合、仮数部のオーバフローを防止
するため、小さい方の指数部を大きい方の指数部に合せ
るようにしている。そこで、仮数部を、第4図に示すよ
うにe1−e2ビットだけ右へシフトさせる。そして、シ
フト後に仮数部のLSB(最小桁)未満のビットは切り捨
てられるようにされていた。
そのため、切り捨てられたビットの分だけの誤差(最
大1LSB)が生じる。これとともに、減算においては減数
(減ずる数)A2の2の補数と被減数A1との和をとるこ
とによって減算が実行されるが、減数A2の2の補数A2
は、A2を反転した数の最下位ビットに1を加えること
によって得られる。
しかるに、減数A2の指数部が、被減数A1の指数部よ
り小さい場合、桁合せによりA2がシフトされいるため
2の2の補数を計算する過程においてA2の最下位ビッ
トに1を加える操作が不可能となりこれによっても誤差
が生じる。
そこで、A1とA2の仮数部を各々P,Xとし、をXの
反転数、また()をを桁合せのためシフトして切り
捨てを行なった後の数(最下位ビットに1を加えていな
い数)とすると、P−XはP−()で近似させること
によって演算結果を行なえるようにされていた。しかし
ながらそのような近似を行なうと、例えば仮数部がとも
に0で指数部の大きさが異なる2つの数の減算を行なっ
たときに、本来なら0になるべき演算結果が0にならな
いという問題点があった。
特に、上記のような誤差は、繰返し演算を行なうよう
な場合に累積されて非常に大きな誤差となってしまう。
この発明の目的は、浮動小数点演算において、桁合せ
に伴う切り捨てにより生じる誤差を低減させることがで
きるような演算処理方式を提供することにある。
この発明の前記ならびにそのほかの目的と新規な特徴
については、本明細書の記述および添附図面から明らか
になるであろう。
[問題点を解決するための手段] 本願において開示される発明のうち代表的なものの概
要を説明すれば、下記のとおりである。
すなわち、桁合せ回路の最下位ビット側に1ビットを
付加して、桁合せ回路のビット数を仮数部のビット数よ
りも1つ多くし、この付加ビットに対しても桁合せのた
めのシフトを行なわせると共に、付加ビットの内容をキ
ャリー情報として加減算器に供給可能にし、かつこの加
減算器の前段には、特に減算動作の場合に被減数はその
まま出力し、かつ指数部の数の大きな方に対応する仮数
部データが減数ならばそのデータに1を加算して出力
し、また指数部の数の小さな方に対応する仮数部データ
が減数ならばそのまま出力する全加算器を設けて構成す
るものである。
[作用] 上記した手段によれば、桁合せのためのシフトによっ
て仮数部のデータがはみ出した場合には、付加ビットの
内容をキャリー情報として加減算器に供給することによ
り、シフトによって切り捨てられたビットを四捨五入す
るような形で演算データの最下位ビットに“1"を足した
り足さなかったりするようにして、浮動小数点演算の誤
差を減少させるという上記目的を達成することができ
る。
また、減算動作においては、特に被減数はそのまま出
力し、かつ指数部の数の小さな方に対応する仮数部デー
タが減数ならばこの減数もそのまま出力することによ
り、演算精度を保ちながら構成を簡単にして、集積度を
向上させるとともに演算速度の向上を可能とすることが
できる。
[実施例] 第1図には、本発明にかかる浮動小数点論理演算回路
の一実施例が示されている。
この実施例の浮動小数点論理演算回路は、前述した浮
動小数点論理演算回路(第3図)とほぼ同一の構成にさ
れている。
異なる点は、桁合せ回路(右シフタ)4がそのLSB側
に1ビットの付加ビット4aを有し、例えば16ビット幅の
仮数部よりも1ビット大きな17ビットの構成にされ、こ
の付加ビット4aの出力がキャリー信号Cとして固定小数
点加減算器5に供給されている点と、固定小数点加減算
器5の前段に全加算器8が設けられている点である。
この実施例では、演算されるべき2つの浮動小数点デ
ータA1,A2は、入力データレジスタ1a,1bに入力され、
大小判定回路2によっていずれのデータの指数部が大き
いか判定される。そして、その大小判定結果に応じてセ
レクタ3が切り換えられて、減数の仮数部はビット反転
され指数部の小さな方のデータの仮数部が桁合せ回路4
に供給される。ここで、桁合せ回路4に供給されたデー
タが被減数A1である場合、すなわち被減数A1の指数部
1の方が減数A2の指数部e2よりも小さい場合(e1
2)には、被減数A1の仮数部a1が桁合せ回路4に供
給されて右シフトが行なわれる。また、減数A2の仮数
部(セレクタ3でビット反転された値)a2は全加算器
8に供給されて、かつ大小判定回路2からの信号に基づ
いて最下位ビットに1が加えられる。つまり、仮数部a
2の2の補数が演算される。それから、この仮数部a2
2の補数と、上記桁合せ回路4で桁合せされた被減数A
1の仮数部a1とが、固定小数点演算器5に供給されて、
両者の和がとられる。そして、その演算結果が大小判定
回路2に取り込まれ指数部e1,e2と共に正規化回路6に
供給されて正規化され、アキュームレータ7に保持され
る。
一方、大小判定回路2からの制御信号に基づいて桁合
せ回路4に供給されたデータが減数A2(セレクタ3で
ビット反転された値)である場合、すなわち、減数A2
の指数部e2の方が被減数A1の指数部e1よりも小さい
場合(e1>e2)には、減数A2の仮数部a2が桁合せ回
路4に供給されて右シフトが行なわれる。このとき桁合
せ回路4の16ビットのシフタからはみ出したビットのう
ち、付加ビットに入った最上位のビットを除くビットは
切り捨てられる。例えば第2の図に示すごとく、減数A
2の仮数部のビットb15〜b0が右へ3ビットだけシフト
された場合を考えると、16ビットのシフタからはみ出し
たビットb2,b1,b0のうちb2を除くb1,b0が切り捨てら
れ、b2は桁合せ回路4の付加ビット4aに保持される。
そして、この付加ビット4a内のビット(b2)が上述し
たようにキャリー信号として固定小数点加減算器5に供
給される。
また桁合せ回路4で右シフトされた上位16ビットのデ
ータは、全加算器8を経由し(最下位ビットへの1の加
算は行なわずに)、被減数A1の仮数部a1とともに固定
小数点加減算器5に供給される。
そして、固定小数点加減算器5で両者の和がとられて
から、上記桁合せ回路4の付加ビット4aからのキャリー
信号Cに応じてそれが“0"ならば演算結果をそのままア
キュームレータ7に送る。一方、付加ビット4aからのキ
ャリー信号Cが“1"ならば演算データの最下位ビットに
1を加えてからアキュームレータ7へ送るようになって
いる。
このように上記実施例では、桁合せの際に切り捨てる
ビットの最上位ビット(b2)はキャリーとして仮数部
のLSBに加えているので、演算誤差の最大値|er|max及び
期待値|er|exは、 |er|max=1/2LSB |er|ex=1/4LSB で表わされる。一方、従来の演算回路(第3図)におけ
る切り捨て方法による誤差|et|masxと|et|ex)は、右シ
フト量をM(≧1)とおくと、 |et|ex=1/2|et|maxLSB となり、常に、|er|max≦|et|max,|er|ex≦|et|exなる
関係が成立する。つまり、従来に比べて演算誤差が大幅
に減少される。
例えば、M=7では、|er|=1/2LSB,|et|max=0.9922
=1LSBとなる。
また、上記実施例に従うと、仮数部がともに「0」で
指数部の大きさが異なる2つの数の減算を行なったと
き、従来方式では演算結果が≠0となっていたものが正
しい結果、0が得られるようになる。
従って、本実施例の演算回路は、例えばデジタルフィ
ルタのように、高速な積和演算を繰返し実行するような
信号処理器に適用すると最も効果的である。
なお、上記のごとき浮動小数点演算回路を備えた演算
用プロセッサでは、例えば、マイクロプログラムが格納
されたインストラクションROM(リード・オンリ・メモ
リ)が設けられ、このインストラクションROMから読み
出されたマイクロ命令をデコードすることによって形成
された制御信号により上記各回路が所定のアルゴリズム
に従って制御されて所望の浮動小数点演算が実行され
る。
以上説明したように上記実施例は、桁合せ回路の最下
位ビット側に1ビット付加して、桁合せ回路のビット数
を仮数部のビット幅よりも1つ大きくし、この付加ビッ
トに対しても桁合せのためのシフトを行なわせると共
に、付加ビットの内容をキャリー情報として加減算器に
供給させるように構成したので、桁合せのためのシフト
によって仮数部のデータがはみ出した場合には付加ビッ
トの内容をキャリー情報として加減算器に供給すること
により、シフトより切り捨てられたビットを四捨五入す
るような形で演算データの最下位ビットに“1"が足され
たり足されなかったりするという作用により、浮動小数
点演算において桁合せに伴う切り捨てにより生じる誤差
が低減されるようになるという効果がある。
また、減算動作においては、被減数A1の指数部e1
減数A2の指数部e2とを比較し、特にe2がe1よりも小
さい場合には右シフトしたA2の仮数部a2には何もしな
いことにより、演算精度を保ちながら構成を簡単にし
て、集積度を向上させるとともに演算速度も向上でき
る。
以上本発明者によってなされた発明を実施例に基づき
具体的に説明したが、本発明は上記実施例に限定される
ものではなく、その要旨を逸脱しない範囲で種々変更可
能であることはいうまでもない。例えば上記実施例で
は、桁合せ回路に設けられた付加ビットの出力をキャリ
ー信号として固定小数点加減算器に供給するようにして
いるが、キャリー信号を形成する代わりに、シフト後の
桁合せ回路内のデータの最下位ビットに付加ビットの内
容に応じてそれが1のときは1を足し、0のときは1を
足さないようにすることで切り捨てによる誤差を減少さ
せるようにしてもよい。
以上の説明では主として本発明者によってなされた発
明をその背景となった利用分野であるDSPのような演算
プロセッサに適用したものについて説明したが、この発
明はそれに限定されず浮動小数点演算回路を有するデー
タ処理装置一般に利用することができる。
[発明の効果] 本願において開示される発明のうち代表的なものによ
って得られる効果を簡単に説明すれば下記のとおりであ
る。
すなわち、浮動小数点演算において、桁合せに伴う切
り捨てにより生じる誤差を低減させることができる。
また、減算動作においては、特に被減数はそのまま出
力し、かつ指数部の数の小さな方に対応する仮数部デー
タが減数ならばこの減数もそのまま出力することで、演
算精度を保ちながら構成を簡単にして、集積度の向上と
ともに演算速度の向上が可能となる。
【図面の簡単な説明】
第1図は、本発明に係る浮動小数点演算回路の一実施例
を示すブロック図、 第2図は、本発明に係る浮動小数点演算回路の桁合せ回
路における仮数部のビットの取扱いを示す説明図、 第3図は、従来の浮動小数点演算回路の構成例を示すブ
ロック図、 第4図は、従来の浮動小数点演算回路の桁合せ回路にお
ける仮数部のビットの取扱いを示す説明図である。 1a,1b……入力データレジスタ、2……大小判定回路、
3……セレクタ及び減数のビット反転回路、4……桁合
せ回路、4a……付加ビット、5……演算器(固定小数点
加減算器)、6……正規化回路、7……アキュームレー
タ、8……全加算器。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】nビット幅の第1の仮数部と第1の指数部
    を有する第1の2進化浮動小数点データと、nビット幅
    の第2の仮数部と第2の指数部を有する第2の2進化浮
    動小数点データとを加減算処理する演算処理装置であっ
    て、 前記第1と第2の指数部の大小を判定し、前記第1と第
    2の指数部の差を求める大小判定回路と、 前記大小判定回路の結果により前記第1と第2の指数部
    のうち数の大きな方に対応する仮数部データは第1の経
    路に、前記第1と第2の指数部のうち数の小さな方に対
    応する仮数部データは第2の経路に振り分けるセレクタ
    回路と、 前記セレクタ回路の出力を受け、加算の場合にはそのま
    ま仮数部データを出力し、減算の場合には減数となる仮
    数部データはビット反転して出力し、かつ被減数となる
    仮数部データはそのまま出力するビット反転回路と、 前記ビット反転回路の出力する第2の経路の仮数部デー
    タを、nビットの最下位ビットに1ビットの付加ビット
    を加えた幅で前記第1と第2の指数部の差の数だけ右シ
    フトを行なう桁合せ回路と、 前記ビット反転回路の出力する第1の経路の仮数部デー
    タおよび前記桁合せ回路の出力する第2の経路の仮数部
    データとを受け、加算の場合には各々の仮数部データを
    そのまま出力し、減算の場合には被減数はそのまま出力
    し、かつ第1の経路の仮数部データが減数ならばその仮
    数部データに1を加算して出力し、また第2の経路の仮
    数部データが減数ならばそのまま出力する全加算器と、 前記全加算器の出力する第1の経路の仮数部データと、
    第2の経路の仮数部データと、前記桁合せ回路で形成さ
    れた1ビットの付加ビットを加算する固定小数点加減算
    器と、 を有することを特徴とする演算処理装置。
JP61215776A 1986-09-16 1986-09-16 演算処理装置 Expired - Fee Related JPH0814790B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61215776A JPH0814790B2 (ja) 1986-09-16 1986-09-16 演算処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61215776A JPH0814790B2 (ja) 1986-09-16 1986-09-16 演算処理装置

Publications (2)

Publication Number Publication Date
JPS6371725A JPS6371725A (ja) 1988-04-01
JPH0814790B2 true JPH0814790B2 (ja) 1996-02-14

Family

ID=16678039

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61215776A Expired - Fee Related JPH0814790B2 (ja) 1986-09-16 1986-09-16 演算処理装置

Country Status (1)

Country Link
JP (1) JPH0814790B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4768876B1 (ja) * 2010-08-18 2011-09-07 一雄 伊藤 傘収納容器およびその使用方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60129832A (ja) * 1983-12-19 1985-07-11 Matsushita Electric Ind Co Ltd 演算装置
JPS61131123A (ja) * 1984-11-30 1986-06-18 Toshiba Corp 浮動小数点演算装置

Also Published As

Publication number Publication date
JPS6371725A (ja) 1988-04-01

Similar Documents

Publication Publication Date Title
JP4388543B2 (ja) 3項入力の浮動小数点加減算器
JP3313560B2 (ja) 浮動小数点演算処理装置
JPH04290122A (ja) 数値表現変換装置
KR100465371B1 (ko) 덧셈 및 반올림 연산을 동시에 수행하는 부동 소수점alu 연산 장치
JP2511527B2 (ja) 浮動小数点演算器
KR19980082906A (ko) 부동 소수점 숫자의 정수형으로의 변환 방법
JPH0511980A (ja) 桁あふれ検出方式とその回路
JPH0814790B2 (ja) 演算処理装置
JP2645422B2 (ja) 浮動小数点演算処理装置
US7051062B2 (en) Apparatus and method for adding multiple-bit binary-strings
JP2902041B2 (ja) 浮動小数点数演算装置
JP2856792B2 (ja) 浮動小数点数演算装置
JP2555135B2 (ja) 演算回路
JP2555577B2 (ja) 演算装置
JP3187402B2 (ja) 浮動小数点データ加減算回路
JP3174974B2 (ja) 浮動小数点演算装置および方法
JPS63158626A (ja) 演算処理装置
JP3124286B2 (ja) 浮動小数点数演算装置
JPH0778724B2 (ja) 除算器
JP3100868B2 (ja) 浮動小数点数のための算術演算装置
JP4428778B2 (ja) 演算装置及び演算方法並びに計算装置
JPH0361224B2 (ja)
JPH0498524A (ja) 浮動小数点演算装置
JP2530504B2 (ja) 浮動小数点演算器
JPH0552532B2 (ja)

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees