JPH05173759A - 数値丸め装置および数値丸め方法、並びに浮動小数点数−整数変換装置および浮動小数点数−整数変換方法 - Google Patents

数値丸め装置および数値丸め方法、並びに浮動小数点数−整数変換装置および浮動小数点数−整数変換方法

Info

Publication number
JPH05173759A
JPH05173759A JP3337002A JP33700291A JPH05173759A JP H05173759 A JPH05173759 A JP H05173759A JP 3337002 A JP3337002 A JP 3337002A JP 33700291 A JP33700291 A JP 33700291A JP H05173759 A JPH05173759 A JP H05173759A
Authority
JP
Japan
Prior art keywords
digit
value
rounding
output
mantissa
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
JP3337002A
Other languages
English (en)
Other versions
JP3253660B2 (ja
Inventor
Hideyo Tsuruta
英世 鶴田
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP33700291A priority Critical patent/JP3253660B2/ja
Publication of JPH05173759A publication Critical patent/JPH05173759A/ja
Application granted granted Critical
Publication of JP3253660B2 publication Critical patent/JP3253660B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 丸める数値の正負や2の補数表現数であるか
否かに係わらず、高速に丸め処理を行え、しかも、ハー
ドウェア規模を小さく抑えられる数値丸め装置、数値丸
め方法、浮動小数点数−整数変換装置および浮動小数点
数−整数変換方法を提供する。 【構成】 2の補数表現数丸め装置は、被丸め数を増分
する手段と該増分動作を被丸め数の符号,L,G,Sを見て制
御する論理により構成される。符号付き絶対値表現数丸
め装置は、被丸め数の整数部全ビットを反転する手段と
該出力を増分する手段と該増分動作を被丸め数の符号,
L,G,Sを見て制御する論理により構成される。浮動小数
点数丸め装置は、指数部を見て仮数部を桁合わせした後
は符号付き絶対値表現数丸め装置に準ずる。 【効果】 負数や2の補数表現数でも1回の処理で直
接、高速に丸められる。演算結果を入力側へ戻すパス等
も要らない。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、情報処理装置等におい
て、2の補数表現や符号付き絶対値表現で表わされた数
値の丸め処理を行い2の補数表現で表わされた数値を得
る数値丸め装置および数値丸め方法、並びにこれらの装
置または方法が適用される浮動小数点数−整数変換装置
および浮動小数点数−整数変換方法に関する。
【0002】
【従来の技術】近年、ディジタル信号処理や数値計算な
ど多くの情報処理分野において高速な浮動小数点演算等
が求められ、また、これに伴って、浮動小数点数から固
定小数点数や整数への変換などの処理も高速化および高
精度化が求められている。例えば内部浮動小数点処理形
式のディジタル信号処理プロセッサでは、ディジタル−
アナログ変換器に出力信号を渡す際には、内部の浮動小
数点数で表された信号データから固定小数点データへの
丸め処理を伴った変換が行われ、この変換の速度および
精度が、ディジタル信号処理プロセッサで処理し得る信
号の周波数や処理精度に大きく影響する。
【0003】また例えば、データ処理用などのプロセッ
サに備えられる浮動小数点演算ユニット等では、内部の
浮動小数点レジスタの内容を整数型や異なる精度の型
(倍精度型に対して単精度型など)に丸め処理を伴って
変換する演算の必要性がしばしば発生するが、その速度
が、データ処理速度に影響する。上記のような変換の高
速化および高精度化を図るためには、数値の丸め処理を
高速かつ正確に行う必要がある。
【0004】また、この種の変換においては、通常、符
号付き絶対値表現数から2の補数表現数への変換も併せ
て行われることが多い(例えば一般に浮動小数点数の仮
数は符号付き絶対値表現数で表わされる一方、整数は2
の補数表現で表わされる。)。そこで従来より、例えば
(図9)に示すような、数値丸め機能、および符号付き
絶対値表現数から2の補数表現数への変換機能を有する
浮動小数点数−整数変換装置等が用いられている。
【0005】なお、以下の説明において用いる用語およ
び記号の意味を(図10)に示す。また、浮動小数点数
演算に関する規則は、ANSI/IEEE Std 754-1985規格(The
Institute of Electrical and Electronics Engineer
s,Inc:"IEEE Standard forBinary Floating-Point Arit
hmetic",1985 )に則るものとして説明する。(図9)に
おいて、900は浮動小数点数−整数変換装置の各部の
動作、および動作タイミングを制御する制御部である。
【0006】901は指数減算器で、浮動小数点数F の
指数部 FE の偏差bias(実際に指数部 FE に設定されて
いる値と真の指数の値との差)、および仮数部 FM の桁
合わせのための論理的なシフト量(仮数部 FM の有効ビ
ット数ビット数m と丸めの小数点位置とに応じたシフト
量)に基づいて定まる所定の定数から指数部 FE を減じ
て、仮数部 FM を実際にシフトさせるシフト量sft を算
出するものである。
【0007】902は仮数シフタで、指数減算器901
で求められたシフト量sft だけ仮数部 FM をシフトする
ものである。903はスティッキービット生成器で、仮
数シフタ902で仮数部 FM の右シフトを行うときに丸
めの小数点以下第1位より右にこぼれる全ビットの論理
和を取り、スティッキービットS として出力するもので
ある。
【0008】904は仮数選択器で、制御部900の制
御に応じて、仮数シフタ902でシフトされた仮数部 F
M 、または後述する仮数加算器908の和出力の何れか
一方を選択して出力するものである。すなわち、まず仮
数シフタ902の出力が選択されることにより、仮数加
算器908による丸め処理が行われ、その後、符号ビッ
ト FS が“1”である場合(浮動小数点数F が負である
場合)に、丸め処理された仮数加算器908の出力を選
択することにより、丸め処理結果の2の補数化が行われ
るようになっている。
【0009】905は仮数反転器で、丸め処理を行う際
に、仮数選択器904の出力を素通しする一方、符号ビ
ット FS が“1”である場合に2の補数化を行う際に、
仮数選択器904の出力の1の補数を取って出力するも
のである。906は増分論理回路で、符号ビット FS
仮数シフタ902から出力される桁合わせ後の仮数部 F
M における第1位ビットL とガードビットG 、およびス
ティッキービット生成器903で求められたスティッキ
ービットS に基づき、下記(表1)に従って、丸め動作
において桁上げする値(桁上げの有無)を決定するもの
である。
【0010】ここで、(表1)は丸めモードが前記ANSI
/IEEE に規定される丸めモードRN、RZ、RP、また
はRMの場合に、増分論理回路906から出力される
値、および仮数反転器905および仮数加算器908で
行われる動作を示している。なお、同表において上線は
論理反転を示し、記号*は0でも1でもよい論理(don'
t care)であることを示す(以下同じ)。
【0011】なお、(図11)に上記4つの丸めモード
を作図した0近傍のグラフを掲げる。ここでは丸めを実
数Xから整数Iへの関数と見なしている。グラフからもわ
かるようにX≧0のときRMモードはRZモードと一致
し、X<0のときRPモードはRZモードと一致する。9
07は桁上げ入力選択器で、制御部900の制御に応じ
て、丸め処理の際に上記増分論理回路906から出力さ
れる値を選択する一方、2の補数化の際には値“1”を
選択し、仮数加算器908の桁上げ入力として出力する
ものである。
【0012】908は仮数加算器で、丸め処理の際に仮
数反転器905の出力に対し丸めの位置において仮数部
FM を丸めるための桁上げ加算を行うとともに、丸め処
理の後、2の補数化を行うために、仮数部 FM に値
“1”の加算を行うものである。909は、制御部90
0の制御に基づき、上記各部の動作タイミングに応じ
て、各部から出力される値等を保持するレジスタであ
る。
【0013】
【表1】
【0014】上記のように構成された浮動小数点数−整
数変換装置によって浮動小数点数Fを整数I に変換する
際に行われる動作を以下に説明する。まず、装置全体の
概略の動作を説明する。 step1 仮数部 FM をシフトさせるシフト量sft を計算する。
【0015】sft ← m−1 +bias− FE ; step2 シフト量sft 分だけ仮数部 FM を右へシフトする。 FM ' ← FM >>sft; step3 丸めモードに従い、桁合わせされた仮数部 FM を丸める
(前記(表1)に基づいて定まる桁上げの値を加算す
る。)。
【0016】I ← rnd(FM '); step4 浮動小数点数F が負であれば2の補数表現への変換を行
う。 if F<0 then begin I ← inv(I) +1; end 但し、rnd( )は丸め処理を示す関数、inv( )はビット反
転を示す関数、‘←’は代入を表す演算子、‘>>’は右
シフトを表す演算子である。
【0017】次に、各部の具体的な動作を説明する。 (1) 指数減算器901は、定数‘m −1 +bias’か
ら浮動小数点数F の指数部 FE を減じ、仮数部 FM のシ
フト量sft として出力する。 (2) 仮数シフタ902は、上記シフト量sft だけ右
に浮動小数点数F の仮数部 FM をシフトする。 (3) スティッキービット生成器903は、仮数シフ
タ902で右シフトを行ったときに丸めの小数点以下第
1位より右にこぼれた全ビットの論理和を取り、スティ
ッキービットS として出力する。 (4) 仮数選択器904は、仮数シフタ902からの
出力(桁合わせされた仮数部 FM )を選択する。 (5) 仮数反転器905は、仮数選択器904からの
出力を素通しさせる。 (6) 増分論理回路906は、符号ビット FS 、桁合
わせされた仮数部 FM の第1位ビットL とガードビット
G 、およびスティッキービットS に基づき、(表1)に
従って、丸めモードに応じた桁上げの値を決定する。 (7) 桁上げ入力選択器907は、増分論理回路90
6から出力される値を選択する。 (8) 仮数加算器908は、仮数反転器905の出力
に対し増分論理回路906からの桁上げ入力を加えるこ
とにより丸め処理を行う。
【0018】すなわち、前記仮数シフタ902のシフト
動作により、一旦、切り捨てが行われた後、仮数加算器
908の加算動作により必要に応じて切り上げ(+1)
が行われる。 (9) 浮動小数点数F の符号ビット FS が“0”(浮
動小数点数F が正または“0”)ならば動作を終える
(終わり)。一方、符号ビット FS が“1”(浮動小数
点数F が負)ならば(10)以降の動作を行う。 (10) 仮数選択器904は、仮数加算器908から
の出力(丸め結果)を選択する。 (11) 仮数反転器905は、仮数選択器904から
の出力を反転させる(丸め結果の1の補数をとる。)。 (12) 桁上げ入力選択器907は値“1”を選択す
る。 (13) 仮数加算器908は、仮数反転器905の出
力に桁上げ入力選択器907からの桁上げ入力“1”を
加え、1の補数を2の補数に変換する(終わり)。
【0019】以上のように、丸め処理とともに2の補数
化を行う場合、増分論理回路906および仮数加算器9
08によって、桁合わせされた仮数部 FM の丸め処理を
行った後、浮動小数点数F が負である場合に仮数反転器
905および仮数加算器908によって2の補数化を行
うようになっていた。また、上記のように符号付き絶対
値表現数に対する丸め処理を行う丸め処理装置に限ら
ず、2の補数表現数に対する丸め処理を行う丸め処理装
置も多く用いられている。
【0020】例えばディジタル信号プロッセサの内部処
理においては、2の補数表現の固定小数点数から、同じ
く2の補数表現の整数への変換等が頻繁に行われる。こ
のような変換を行う数値丸め装置は、上記浮動小数点数
−整数変換装置と同様の回路構成で、制御部900によ
る制御を異ならせることにより実現される。すなわち、
上記のような増分論理回路906および仮数加算器90
8による丸め処理は、正の値、または符号付き絶対値表
現数の絶対値に対してしか行うことができないため、丸
める2の補数表現数が負である場合には、一旦、増分論
理回路906および仮数加算器908によって2の補数
表現数から符号付き絶対値表現数への変換を行って絶対
値を求め、その後に、上記のように丸め処理、および再
び2の補数に戻す処理を行う。
【0021】
【発明が解決しようとする課題】しかしながら、上記従
来の浮動小数点数−整数変換装置においては、浮動小数
点数F が負である場合、変換処理に2サイクルを必要と
し、また、2の補数表現の固定小数点数から2の補数表
現の整数への変換を行う装置においては、さらに1サイ
クル多い3サイクルを必要とするため、処理の高速化を
図ることが困難であるという問題点を有していた。
【0022】なお、上記問題点は、浮動小数点数や2の
補数表現の固定小数点数を丸める装置に限らず、符号付
き絶対値表現の固定小数点数を丸める装置等においても
同様である。そのうえ、仮数加算器908の出力を仮数
選択器904に戻すためのデータパス、および仮数選択
器904や桁上げ入力選択器907、さらに、丸める数
値の正負を判定して処理サイクルを変化させる回路等を
必要とするので、ハードウェア規模の低減を図ることも
困難である。
【0023】本発明は上記の点に鑑み、丸める数値の正
負や2の補数表現数であるか否かに係わらず、高速に丸
め処理を行うことができ、しかも、ハードウェア規模を
小さく抑えることができる数値丸め装置および数値丸め
方法、並びに浮動小数点数−整数変換装置および浮動小
数点数−整数変換方法の提供を目的としている。
【0024】
【課題を解決するための手段】上記目的を達成するた
め、符号ビットと絶対値部とから成る符号付き絶対値表
現数に対して、絶対値部の所定の桁以上の桁を残す最近
値丸め(RN)を行うとともに2の補数化を行う数値丸
め装置は、符号付き絶対値表現数の正負に応じて、絶対
値部の1の補数を出力する反転手段と、絶対値部におけ
る上記所定の桁の値と、上記所定の桁よりも1桁下位の
桁の値と、上記所定の桁よりも2桁以上下位の全桁の値
の論理和と、および符号付き絶対値表現数の正負に基づ
いて、丸めによる上記所定の桁への桁上げの有無を指示
する増分論理手段と、増分論理手段によって桁上げの指
示がなされた場合に、反転手段からの出力における上記
所定の桁に桁上げ加算を行う増分手段と、を備えたこと
を特徴としている。
【0025】また、符号ビットと絶対値部とから成る符
号付き絶対値表現数に対して、絶対値部の所定の桁以上
の桁を残す0方向への丸め(RZ)を行うとともに2の
補数化を行う数値丸め装置は、符号付き絶対値表現数の
正負に応じて、絶対値部の1の補数を出力する反転手段
と、符号付き絶対値表現数の正負に応じて、反転手段か
らの出力における上記所定の桁に桁上げ加算を行う増分
手段と、を備えたことを特徴としている。
【0026】また、符号ビットと絶対値部とから成る符
号付き絶対値表現数に対して、絶対値部の所定の桁以上
の桁を残す正方向への丸め(RP)、および負方向への
丸め(RM)のうちの少なくとも何れか一方を行うとと
もに2の補数化を行う数値丸め装置は、符号付き絶対値
表現数の正負に応じて、絶対値部の1の補数を出力する
反転手段と、絶対値部における上記所定の桁よりも下位
の全桁の値の論理和、および符号付き絶対値表現数の正
負に基づいて、丸めによる上記所定の桁への桁上げの有
無を指示する増分論理手段と、増分論理手段によって桁
上げの指示がなされた場合に、反転手段からの出力にお
ける上記所定の桁に桁上げ加算を行う増分手段と、を備
えたことを特徴としている。
【0027】また、符号ビットと、指数部と、仮数部と
から成る浮動小数点数に対して、真の小数点よりも上の
桁を残す最近値丸め(RN)を行うとともに2の補数化
を行って整数に変換する浮動小数点数−整数変換装置
は、指数部の値に基づいて、真の小数点が所定の位置に
なるように仮数部をシフトさせるためのシフト量を求め
るシフト量計算手段と、シフト量計算手段によって求め
られたシフト量に応じて仮数部をシフトさせる仮数桁合
わせ手段と、仮数桁合わせ手段によって仮数部がシフト
される際に、シフト後の真の小数点のすぐ右の桁よりも
右にこぼれる全桁の論理和をとって出力するスティッキ
ービット生成手段と、浮動小数点数の正負に応じて、仮
数桁合わせ手段によってシフトされた仮数部の1の補数
を出力する反転手段と、仮数部における真の小数点のす
ぐ左の桁の値と、真の小数点のすぐ右の桁の値と、ステ
ィッキービット生成手段から出力される値と、および浮
動小数点数の正負に基づいて、丸めによる真の小数点の
すぐ左の桁への桁上げの有無を指示する増分論理手段
と、増分論理手段によって桁上げの指示がなされた場合
に、反転手段からの出力における真の小数点のすぐ左の
桁に桁上げ加算を行う増分手段と、を備えたことを特徴
としている。
【0028】また、符号ビットと、指数部と、仮数部と
から成る浮動小数点数に対して、真の小数点よりも上の
桁を残す0方向への丸め(RZ)を行うとともに2の補
数化を行って整数に変換する浮動小数点数−整数変換装
置は、指数部の値に基づいて、真の小数点が所定の位置
になるように仮数部をシフトさせるためのシフト量を求
めるシフト量計算手段と、シフト量計算手段によって求
められたシフト量に応じて仮数部をシフトさせる仮数桁
合わせ手段と、仮数桁合わせ手段によって仮数部がシフ
トされる際に、シフト後の真の小数点のすぐ右の桁より
も右にこぼれる全桁の論理和をとって出力するスティッ
キービット生成手段と、浮動小数点数の正負に応じて、
仮数桁合わせ手段によってシフトされた仮数部の1の補
数を出力する反転手段と、浮動小数点数の正負に応じ
て、反転手段からの出力における真の小数点のすぐ左の
桁に桁上げ加算を行う増分手段と、を備えたことを特徴
としている。
【0029】また、符号ビットと、指数部と、仮数部と
から成る浮動小数点数に対して、真の小数点よりも上の
桁を残す正方向への丸め(RP)、および負方向への丸
め(RM)のうちの少なくとも何れか一方を行うととも
に2の補数化を行って整数に変換する浮動小数点数−整
数変換装置は、指数部の値に基づいて、真の小数点が所
定の位置になるように仮数部をシフトさせるためのシフ
ト量を求めるシフト量計算手段と、シフト量計算手段に
よって求められたシフト量に応じて仮数部をシフトさせ
る仮数桁合わせ手段と、仮数桁合わせ手段によって仮数
部がシフトされる際に、シフト後の真の小数点よりも右
にこぼれる全桁の論理和をとって出力するスティッキー
ビット生成手段と、浮動小数点数の正負に応じて、仮数
桁合わせ手段によってシフトされた仮数部の1の補数を
出力する反転手段と、スティッキービット生成手段から
出力される値、および浮動小数点数の正負に基づいて、
丸めによる真の小数点のすぐ左の桁への桁上げの有無を
指示する増分論理手段と、増分論理手段によって桁上げ
の指示がなされた場合に、反転手段からの出力における
真の小数点のすぐ左の桁に桁上げ加算を行う増分手段
と、を備えたことを特徴としている。
【0030】また、2の補数表現数に対して所定の桁以
上の桁を残す最近値丸め(RN)を行う数値丸め装置
は、2の補数表現数における上記所定の桁の値と、上記
所定の桁よりも1桁下位の桁の値と、上記所定の桁より
も2桁以上下位の全桁の値の論理和とに基づいて、丸め
による上記所定の桁への桁上げの有無を指示する増分論
理手段と、増分論理手段によって桁上げの指示がなされ
た場合に、2の補数表現数における上記所定の桁に桁上
げ加算を行う増分手段と、を備えたことを特徴としてい
る。
【0031】また、2の補数表現数に対して所定の桁以
上の桁を残す0方向への丸め(RZ)を行う数値丸め装
置は、2の補数表現数における上記所定の桁よりも下位
の全桁の値の論理和、および2の補数表現数の正負に基
づいて、丸めによる上記所定の桁への桁上げの有無を指
示する増分論理手段と、増分論理手段によって桁上げの
指示がなされた場合に、2の補数表現数における上記所
定の桁に桁上げ加算を行う増分手段と、を備えたことを
特徴としている。
【0032】また、2の補数表現数に対して所定の桁以
上の桁を残す正方向への丸め(RP)を行う数値丸め装
置は、2の補数表現数における上記所定の桁よりも下位
の全桁の値の論理和に基づいて、丸めによる上記所定の
桁への桁上げの有無を指示する増分論理手段と、増分論
理手段によって桁上げの指示がなされた場合に、2の補
数表現数における上記所定の桁に桁上げ加算を行う増分
手段と、を備えたことを特徴としている。
【0033】また、他の、2の補数表現数に対して所定
の桁以上の桁を残す最近値丸め(RN)を行う数値丸め
装置は、2の補数表現数における上記所定の桁よりも1
桁下位の桁に1を加算する増分手段と、2の補数表現数
における上記所定の桁の値と、上記所定の桁よりも1桁
下位の桁の値と、上記所定の桁よりも2桁以上下位の全
桁の値の論理和とに基づいて、上記増分手段の出力にお
ける上記所定の桁の値を修正する加算結果修正手段と、
を備えたことを特徴としている。
【0034】また、さらに他の、2の補数表現数に対し
て所定の桁以上の桁を残す最近値丸め(RN)を行う数
値丸め装置は、2の補数表現数における上記所定の桁よ
りも1桁下位の桁に1を加算する増分手段と、増分手段
の出力における上記所定の桁の値と、上記所定の桁より
も1桁下位の桁の値と、および2の補数表現数における
上記所定の桁よりも2桁以上下位の全桁の値の論理和に
基づいて、上記増分手段の出力における上記所定の桁の
値を修正する加算結果修正手段と、を備えたことを特徴
としている。
【0035】
【作用】上記の構成により、符号ビットと絶対値部とか
ら成る符号付き絶対値表現数に対して、絶対値部の所定
の桁以上の桁を残す最近値丸め(RN)を行うとともに
2の補数化を行う数値丸め装置においては、反転手段
は、符号付き絶対値表現数の正負に応じて、絶対値部の
1の補数を出力する。
【0036】増分論理手段は、絶対値部における上記所
定の桁の値と、上記所定の桁よりも1桁下位の桁の値
と、上記所定の桁よりも2桁以上下位の全桁の値の論理
和と、および符号付き絶対値表現数の正負に基づいて、
丸めによる上記所定の桁への桁上げの有無を指示する。
増分手段は、増分論理手段によって桁上げの指示がなさ
れた場合に、反転手段からの出力における上記所定の桁
に桁上げ加算を行う。
【0037】また、符号ビットと絶対値部とから成る符
号付き絶対値表現数に対して、絶対値部の所定の桁以上
の桁を残す0方向への丸め(RZ)を行うとともに2の
補数化を行う数値丸め装置においては、反転手段は、符
号付き絶対値表現数の正負に応じて、絶対値部の1の補
数を出力する。
【0038】増分手段は、符号付き絶対値表現数の正負
に応じて、反転手段からの出力における上記所定の桁に
桁上げ加算を行う。また、符号ビットと絶対値部とから
成る符号付き絶対値表現数に対して、絶対値部の所定の
桁以上の桁を残す正方向への丸め(RP)、および負方
向への丸め(RM)のうちの少なくとも何れか一方を行
うとともに2の補数化を行う数値丸め装置においては、
反転手段は、符号付き絶対値表現数の正負に応じて、絶
対値部の1の補数を出力する。
【0039】増分論理手段は、絶対値部における上記所
定の桁よりも下位の全桁の値の論理和、および符号付き
絶対値表現数の正負に基づいて、丸めによる上記所定の
桁への桁上げの有無を指示する。増分手段は、増分論理
手段によって桁上げの指示がなされた場合に、反転手段
からの出力における上記所定の桁に桁上げ加算を行う。
【0040】また、符号ビットと、指数部と、仮数部と
から成る浮動小数点数に対して、真の小数点よりも上の
桁を残す最近値丸め(RN)を行うとともに2の補数化
を行って整数に変換する浮動小数点数−整数変換装置に
おいては、シフト量計算手段は、指数部の値に基づい
て、真の小数点が所定の位置になるように仮数部をシフ
トさせるためのシフト量を求める。
【0041】仮数桁合わせ手段は、シフト量計算手段に
よって求められたシフト量に応じて仮数部をシフトさせ
る。スティッキービット生成手段は、仮数桁合わせ手段
によって仮数部がシフトされる際に、シフト後の真の小
数点のすぐ右の桁よりも右にこぼれる全桁の論理和をと
って出力する。
【0042】反転手段は、浮動小数点数の正負に応じ
て、仮数桁合わせ手段によってシフトされた仮数部の1
の補数を出力する。増分論理手段は、仮数部における真
の小数点のすぐ左の桁の値と、真の小数点のすぐ右の桁
の値と、スティッキービット生成手段から出力される値
と、および浮動小数点数の正負に基づいて、丸めによる
真の小数点のすぐ左の桁への桁上げの有無を指示する。
【0043】増分手段は、増分論理手段によって桁上げ
の指示がなされた場合に、反転手段からの出力における
真の小数点のすぐ左の桁に桁上げ加算を行う。また、符
号ビットと、指数部と、仮数部とから成る浮動小数点数
に対して、真の小数点よりも上の桁を残す0方向への丸
め(RZ)を行うとともに2の補数化を行って整数に変
換する浮動小数点数−整数変換装置においては、シフト
量計算手段は、指数部の値に基づいて、真の小数点が所
定の位置になるように仮数部をシフトさせるためのシフ
ト量を求める。
【0044】仮数桁合わせ手段は、シフト量計算手段に
よって求められたシフト量に応じて仮数部をシフトさせ
る。スティッキービット生成手段は、仮数桁合わせ手段
によって仮数部がシフトされる際に、シフト後の真の小
数点のすぐ右の桁よりも右にこぼれる全桁の論理和をと
って出力する。
【0045】反転手段は、浮動小数点数の正負に応じ
て、仮数桁合わせ手段によってシフトされた仮数部の1
の補数を出力する。増分手段は、浮動小数点数の正負に
応じて、反転手段からの出力における真の小数点のすぐ
左の桁に桁上げ加算を行う。また、符号ビットと、指数
部と、仮数部とから成る浮動小数点数に対して、真の小
数点よりも上の桁を残す正方向への丸め(RP)、およ
び負方向への丸め(RM)のうちの少なくとも何れか一
方を行うとともに2の補数化を行って整数に変換する浮
動小数点数−整数変換装置においては、シフト量計算手
段は、指数部の値に基づいて、真の小数点が所定の位置
になるように仮数部をシフトさせるためのシフト量を求
める。
【0046】仮数桁合わせ手段は、シフト量計算手段に
よって求められたシフト量に応じて仮数部をシフトさせ
る。スティッキービット生成手段は、仮数桁合わせ手段
によって仮数部がシフトされる際に、シフト後の真の小
数点よりも右にこぼれる全桁の論理和をとって出力す
る。
【0047】反転手段は、浮動小数点数の正負に応じ
て、仮数桁合わせ手段によってシフトされた仮数部の1
の補数を出力する。増分論理手段は、スティッキービッ
ト生成手段から出力される値、および浮動小数点数の正
負に基づいて、丸めによる真の小数点のすぐ左の桁への
桁上げの有無を指示する。
【0048】増分手段は、増分論理手段によって桁上げ
の指示がなされた場合に、反転手段からの出力における
真の小数点のすぐ左の桁に桁上げ加算を行う。また、2
の補数表現数に対して所定の桁以上の桁を残す最近値丸
め(RN)を行う数値丸め装置においては、増分論理手
段は、2の補数表現数における上記所定の桁の値と、上
記所定の桁よりも1桁下位の桁の値と、上記所定の桁よ
りも2桁以上下位の全桁の値の論理和とに基づいて、丸
めによる上記所定の桁への桁上げの有無を指示する。
【0049】増分手段は、増分論理手段によって桁上げ
の指示がなされた場合に、2の補数表現数における上記
所定の桁に桁上げ加算を行う。また、2の補数表現数に
対して所定の桁以上の桁を残す0方向への丸め(RZ)
を行う数値丸め装置においては、増分論理手段は、2の
補数表現数における上記所定の桁よりも下位の全桁の値
の論理和、および2の補数表現数の正負に基づいて、丸
めによる上記所定の桁への桁上げの有無を指示する。
【0050】増分手段は、増分論理手段によって桁上げ
の指示がなされた場合に、2の補数表現数における上記
所定の桁に桁上げ加算を行う。また、2の補数表現数に
対して所定の桁以上の桁を残す正方向への丸め(RP)
を行う数値丸め装置においては、増分論理手段は、2の
補数表現数における上記所定の桁よりも下位の全桁の値
の論理和に基づいて、丸めによる上記所定の桁への桁上
げの有無を指示する。
【0051】増分手段は、増分論理手段によって桁上げ
の指示がなされた場合に、2の補数表現数における上記
所定の桁に桁上げ加算を行う。また、他の、2の補数表
現数に対して所定の桁以上の桁を残す最近値丸め(R
N)を行う数値丸め装置においては、増分手段は、2の
補数表現数における上記所定の桁よりも1桁下位の桁に
1を加算する。
【0052】加算結果修正手段は、2の補数表現数にお
ける上記所定の桁の値と、上記所定の桁よりも1桁下位
の桁の値と、上記所定の桁よりも2桁以上下位の全桁の
値の論理和とに基づいて、上記増分手段の出力における
上記所定の桁の値を修正する。また、さらに他の、2の
補数表現数に対して所定の桁以上の桁を残す最近値丸め
(RN)を行う数値丸め装置においては、増分手段は、
2の補数表現数における上記所定の桁よりも1桁下位の
桁に1を加算する。
【0053】加算結果修正手段は、増分手段の出力にお
ける上記所定の桁の値と、上記所定の桁よりも1桁下位
の桁の値と、および2の補数表現数における上記所定の
桁よりも2桁以上下位の全桁の値の論理和に基づいて、
上記増分手段の出力における上記所定の桁の値を修正す
る。
【0054】
【実施例】
(第1実施例)以下、本発明の第1実施例として、数値
丸め機能、および符号付き絶対値表現数から2の補数表
現数への変換機能を有し、符号付き絶対値表現で表され
た固定小数点数Y を2の補数表現の整数I に丸めて変換
する符号付き絶対値表現固定小数点数丸め装置につい
て、図面を参照しながら説明する。
【0055】(図1)は符号付き絶対値表現の固定小数
点数Y の絶対値部 YM における、n+1ビットの小数点
以下第1位以上の桁の値が入力され、nビットの整数I
を出力する符号付き絶対値表現固定小数点数丸め装置4
10の構成を示すブロック図である。ここで、上記nは
データパスのビット幅を表し、符号付き絶対値表現固定
小数点数Y の絶対値部 YM の整数部 YI の有効ビット長
である。
【0056】同図において、405は反転器で、固定小
数点数Y の符号ビット YS が“0”である場合に、入力
された絶対値部 YM の整数部 YI (上位nビット)を素
通しする一方、符号ビット YS が“1”である場合に、
整数部 YI における全ビットを論理反転することにより
1の補数を取って出力するものである。
【0057】406は増分論理回路で、符号ビット
YS 、絶対値部 YM における第1位ビットL とガードビ
ットG 、およびスティッキービットS に基づき、下記
(表2)に従って、2の補数化を考慮した丸め動作にお
いて桁上げする値(桁上げの有無)を決定するものであ
る。ここで、(表2)は丸めモードがRN、RZ、R
P、またはRMの場合に、増分論理回路406から出力
される値、および符号付き絶対値表現固定小数点数丸め
装置410全体で行われる動作を示している。なお、同
表において上線は論理反転を示し、記号*は0でも1で
もよい論理(don't care)であることを示す(以下同
じ)。
【0058】408は加算器で、丸め処理の際に反転器
405の出力に対し丸めの位置において固定小数点数Y
の丸め、および2の補数化を行うための値“1”の加算
を行うものである。
【0059】
【表2】
【0060】前述のように構成された符号付き絶対値表
現固定小数点数丸め装置410の動作を以下に説明す
る。 (1) 反転器405は、固定小数点数Y の符号ビット
YS が“0”である場合(固定小数点数Y が“0”以上
である場合)には、整数部 YI を素通しさせる一方、符
号ビット YS が“1”である場合(固定小数点数Y が負
である場合)には、整数部 YI の全ビットを反転させ
る。 (2) 増分論理回路406は、2の補数化および丸め
のために、固定小数点数の整数部 YI のLSB(第1位
ビットL )に1を加算するかどうかを判定し、判定結果
の1ビットを出力する。すなわち、(表2)に従い、丸
めモードがRNの場合には、第1位ビットL 、ガードビ
ットG 、およびスティッキービットS に基づいて、ま
た、丸めモードがRZ、RP、またはRMの場合には、
符号ビット Y S 、ガードビットG 、およびスティッキー
ビットS に基づいて、(表2)に従って桁上げの値を決
定し、出力する。 (3) 加算器408は、整数部 YI のLSBに対し増
分論理回路406からの1ビット出力を加える(終わ
り)。
【0061】上記のように、増分論理回路406によっ
て、丸め処理と2の補数化処理とを考慮した桁上げの値
が決定されるので、固定小数点数Y が負の場合でも1サ
イクルで丸め処理および2の補数化処理が完了する。な
お、上記増分論理回路406の出力は、加算器408の
桁上げ入力とせず、(図1)に示すnビットの加算入力
“0”におけるLSBの代わりに入力するようにしても
同じである。
【0062】また、加算器408に代えて、(図2)に
示すように、増分器(インクリメンタ)408’を用い
てもよい。 (第2実施例)次に、上記第1実施例の符号付き絶対値
表現固定小数点数丸め装置410を利用して構成され、
数値丸め処理、および符号付き絶対値表現数から2の補
数表現数への変換を行うことにより、浮動小数点数F を
整数I に丸めて変換する浮動小数点数−整数変換装置に
ついて、図面を参照しながら説明する。
【0063】なお、以下の説明においては、浮動小数点
数が非正規化数や特殊数(例えば無限大や非数(Na
N):not a number)である場合、もしくは整数への変
換の途中で上位桁溢れなどの浮動小数点例外が発生する
場合の処理については省略する。すなわち、このような
場合の処理は、例えば符号付き絶対値表現固定小数点数
丸め装置410が適用される情報処理装置等における例
外処理回路や例外処理ソフトウェアなどによって処理す
ることができ、これらは丸め処理について本質的なもの
ではない。
【0064】(図3)は浮動小数点数−整数変換装置の
構成を示すブロック図で、浮動小数点数−整数変換装置
は、符号付き絶対値表現固定小数点数丸め装置410
に、浮動小数点数F における仮数部 FM のシフトを行う
回路等が付加されて構成されている。すなわち、浮動小
数点数F の指数部 FE の値をパラメータとして仮数部 F
M をシフトすることにより、このシフトされた仮数部 F
M ' と符号ビット FS とで、小数点が所定の位置にある
符号付き絶対値表現の固定小数点数と同じことになるの
で、上記符号付き絶対値表現固定小数点数丸め装置41
0により、浮動小数点数F から整数I への変換が行え
る。
【0065】(図3)において、500は浮動小数点数
−整数変換装置の各部の動作、および動作タイミングを
制御する制御部である。501は指数減算器で、浮動小
数点数の指数部 FE の偏差bias(実際に指数部FE に設
定されている値と真の指数の値との差)、および仮数部
FM の桁合わせのための論理的なシフト量(仮数部 FM
の有効ビット数m と丸めの小数点位置とに応じたシフト
量)に基づいて定まる所定の定数から指数部 FE を減じ
て、仮数部 FM を実際にシフトさせるシフト量sft を算
出するものである。
【0066】ここで、上記仮数部 FM の有効ビット数m
は、説明の便宜上、(図10)に示すように浮動小数点
数F の隠れたMSB(このMSBは常に“1”であるた
め通常は有効ビットに含めない)を含むとして説明する
が、これは丸め処理において本質的なものではない。5
02は仮数シフタで、指数減算器501で求められたシ
フト量sft だけ仮数部 FM をシフトして、シフトされた
仮数部 FM ' を出力するものである。
【0067】より具体的には、例えば(図4)に示すよ
うに、全53ビットの仮数部 FM をシフト量sft だけシ
フトすることにより、丸めの小数点位置が浮動小数点数
の仮数部のLSBのすぐ右になるようにする。503は
スティッキービット生成器で、仮数シフタ502で仮数
部 FM の右シフトを行うときに丸めの小数点以下第1位
より右にこぼれる全ビットの論理和を取り、スティッキ
ービットS として出力するものである。
【0068】410は前記第1実施例の符号付き絶対値
表現固定小数点数丸め装置で、仮数シフタ502によっ
てシフトされた仮数部 FM ' における小数点以下第1位
以上の桁の54ビットが入力され、丸めおよび2の補数
化がなされた53ビットの値が出力されるようになって
いる。また、509は、制御部500の制御に基づき、
上記各部の動作タイミングに応じて、各部から出力され
る値等を保持するレジスタである。
【0069】前述のように構成された浮動小数点数−整
数変換装置によって浮動小数点数Fを整数I に変換する
際に行われる動作を以下に説明する。まず、装置全体の
概略の動作を説明する。 step1 仮数部 FM をシフトさせるシフト量sft を計算する。
【0070】sft ← m−1 +bias− FE ; step2 シフト量sft 分だけ仮数部 FM を右へシフトする。 FM ' ← FM >>sft; step3 浮動小数点数F が負であれば、2の補数表現への変換を
行うためのビット反転を行う。
【0071】if F<0 then begin FM ' ← inv(FM '); end step4 丸めモードに従い、シフト、またはシフトおよびビット
反転された仮数部 FM を丸める(前記(表2)に基づい
て定まる桁上げの値を加算する。)。
【0072】I ← rnd(FM '); 但し、rnd( )は丸め処理を示す関数、inv( )はビット反
転を示す関数、‘←’は代入を表す演算子、‘>>’は右
シフトを表す演算子である。次に、各部の具体的な動作
を説明する。 (1) 指数減算器501は、定数‘m −1 +bias’か
ら浮動小数点数F の指数部 FE を減じ、仮数部 FM のシ
フト量sft として出力する。 (2) 仮数シフタ502は、上記シフト量sft だけ右
に浮動小数点数F の仮数部 FM をシフトする。 (3) スティッキービット生成器503は、仮数シフ
タ502で右シフトを行ったときに丸めの小数点以下第
1位より右にこぼれた全ビットの論理和を取り、スティ
ッキービットS として出力する。 (4) 符号付き絶対値表現固定小数点数丸め装置41
0の反転器405は、浮動小数点数F の符号ビット FS
が“0”(浮動小数点数F が正または“0”)ならば、
仮数シフタ502からの出力(桁合わせされた仮数部 F
M ' )を素通しさせる一方、符号ビット FS が“1”
(浮動小数点数F が負)ならば仮数部 FM 'の全ビット
を反転させる(1の補数化する)。 (5) 増分論理回路406は、符号ビット FS 、仮数
部 FM ' の第1位ビットL とガードビットG 、およびス
ティッキービットS に基づき、(表2)に従って、丸め
モードに応じた桁上げの値を決定する。 (6) 加算器408は、反転器405の出力に対し増
分論理回路406からの桁上げ入力を加えることにより
丸め処理および2の補数化を同時に行い、そのうちの下
位32ビットを整数I として出力する。
【0073】すなわち、前記仮数シフタ502のシフト
動作により、一旦、切り捨てが行われた後、加算器40
8の加算動作により、必要に応じて(丸め処理および2
の補数化を考慮した)切り上げ(+1)が行われる(終
わり)。上述のように、1サイクルで丸め処理と2の補
数化とが行われるので、符号付き絶対値表現で表された
浮動小数点数F から2の補数表現の整数I への変換が高
速化される。また、浮動小数点数F の正負を判断して処
理を分岐させる必要などがないために、ハードウェア規
模も小さく抑えられる。
【0074】なお、上記の例では、丸めの小数点位置が
仮数部および変換先の整数のLSBのすぐ右になるよう
に仮数部 FM をシフトさせる例を示したが、これに限る
ものではない。ただし、このように丸めの小数点位置を
設定すれば、例えば倍々精度の浮動小数点数から倍精度
の浮動小数点数への丸め処理と回路の共通化を図ること
などができるという利点がある。 (第3実施例)本発明の第3実施例として、2の補数表
現で表された固定小数点数X を同じく2の補数表現の整
数I に丸める2の補数表現固定小数点数丸め装置につい
て、図面を参照しながら説明する。
【0075】(図5)は固定小数点数X における、n+
1ビットの小数点以下第1位以上の桁の値が入力され、
nビットの整数I を出力する2の補数表現固定小数点数
丸め装置110の構成を示すブロック図である。同図に
おいて、106は増分論理回路で、固定小数点数X の符
号ビット XS (最上位ビット)、第1位ビットL 、ガー
ドビットG 、およびスティッキービットS に基づき、下
記(表3)に従って、丸め動作において桁上げする値
(桁上げの有無)を決定するものである。
【0076】ここで、(表3)は丸めモードがRN、R
Z、RP、またはRMの場合に、増分論理回路106か
ら出力される値、および2の補数表現固定小数点数丸め
装置全体で行われる動作を示している。108は増分器
で、丸め処理の際に丸めの位置(第1位ビットL )にお
いて固定小数点数X の丸めを行うための値“1”の加算
を行うものである。
【0077】
【表3】
【0078】前述のように構成された2の補数表現固定
小数点数丸め装置110の動作を以下に説明する。 (1) 増分論理回路106は、丸めのために固定小数
点数X の符号ビット XS を含む整数部 XI のLSB(ガ
ードビットL )に1を加算するかどうかを判定し、判定
結果の1ビットを出力する。すなわち、丸めモードがR
Nの場合には、第1位ビットL 、ガードビットG 、およ
びスティッキービットS に基づき、また、丸めモードが
RZ、RP、またはRMの場合には、符号ビット XS
ガードビットG 、およびスティッキービットS に基づ
き、(表3)に従って桁上げの値を決定し、出力する。 (2) 増分器108は、整数部 XI のLSBに対し増
分論理回路106からの1ビット出力を加える(終わ
り)。
【0079】上記のように、増分論理回路106で決定
された値を増分器108で加算することにより、2の補
数表現の固定小数点数が負の場合でも、一旦、符号付き
絶対値表現固定小数点数に変換したりすることなく丸め
処理が行われるので、1サイクルで丸め処理が完了す
る。 (第4実施例)上記第3実施例と同様に、2の補数表現
で表された固定小数点数X を同じく2の補数表現の整数
I に丸める2の補数表現固定小数点数丸め装置の他の例
について、図面を参照しながら説明する。ただし、この
2の補数表現固定小数点数丸め装置はRN丸めモードに
対してのみ有効である。
【0080】(図6)は2の補数表現固定小数点数丸め
装置210の構成を示すブロック図である。同図におい
て、208は増分器で、固定小数点数X における、n+
1ビットの小数点以下第1位以上の桁の値が入力され、
ガードビットG に値“1”を加算して、第1位ビットL
よりも上位のn−1ビットを出力するものである。
【0081】206は第1位ビット決定論理回路で、固
定小数点数X における第1位ビットL とガードビットG
、およびスティッキービットS に基づき、下記(表
4)に従って、丸めモードRNの丸め処理結果における
第1位ビットL"を求めるものである。ここで、(表4)
は第1位ビット決定論理回路206から出力される第1
位ビットL"の値とともに、増分器208による加算結果
における図示しない第1位ビットL'の値も示している。
【0082】なお、上記第1位ビット決定論理回路20
6、および増分器208は、固定小数点数X が正の場合
も負の場合も同じ動作を行うようになっている。
【0083】
【表4】
【0084】前述のように構成された2の補数表現固定
小数点数丸め装置210の動作を以下に説明する。 (1)増分器208は、固定小数点数X のガードビット
G に値“1”を加算し、加算結果における第1位ビット
L よりも上位のn−1ビットを出力する。なお、この値
“1”の加算は、丸めによる繰り上げの有無に係わら
ず、仮の丸め処理として常に行われる。 (2)第1位ビット決定論理回路206は、固定小数点
数X の第1位ビットL 、ガードビットG 、およびスティ
ッキービットS に基づき、(表4)に従って第1位ビッ
トL"を求める。そこで、この第1位ビットL"と上記増分
器208によって得られた加算結果のn−1ビットとが
合成されて、nビットの整数I として出力される(終わ
り)。
【0085】すなわち増分器208によって、仮の丸め
処理により、第1位ビットL よりも上位のn−1ビット
が求められ、第1位ビット決定論理回路206によっ
て、正確な丸め処理による第1位ビットL"が求められ
る。上述のように2の補数表現の固定小数点数X を一旦
符号付き絶対値表現数に変換したりすることなく、しか
も固定小数点数X の正負を判断して処理を分岐させたり
することなく丸め処理が行われる。それゆえ、1サイク
ルで丸め処理が完了し、また、ハードウェア規模も小さ
く抑えられる。 (第5実施例)上記第4実施例と同様に、固定小数点数
X を丸めモードRNで整数I に丸める2の補数表現固定
小数点数丸め装置のさらに他の例について説明する。
【0086】(図7)は2の補数表現固定小数点数丸め
装置310の構成を示すブロック図である。同図におい
て、308は増分器で、固定小数点数X における、n+
1ビットの小数点以下第1位以上の桁の値が入力され、
ガードビットG に値“1”を加算し、n+1ビットの加
算結果を出力するものである。
【0087】306は丸め修正論理回路で、増分器30
8から出力される加算結果における第1位ビットL'とガ
ードビットG'、およびスティッキービットS に基づき、
下記(表5)に従って、丸めモードRNの丸め処理結果
における第1位ビットL"を求めるものである。ここで、
(表5)は丸め修正論理回路306から出力される第1
位ビットL"の値を示している。
【0088】なお、前記第4実施例と同様に、丸め修正
論理回路306、および増分器308は、固定小数点数
X が正の場合も負の場合も同じ動作を行うようになって
いる。
【0089】
【表5】
【0090】前述のように構成された2の補数表現固定
小数点数丸め装置310の動作を以下に説明する。 (1)増分器308は、固定小数点数X のガードビット
G に値“1”を加算し、n+1ビットの加算結果を出力
する。なお、この加算は、丸めによる繰り上げの有無に
係わらず、仮の丸め処理として常に行われる。(2)丸
め修正論理回路306は、増分器308から出力される
加算結果における第1位ビットL'とガードビットG'、お
よびスティッキービットS に基づき、(表5)に従っ
て、第1位ビットL"を求める。そこで、この第1位ビッ
トL"と、上記増分器308から出力されるn+1ビット
の加算結果における第1位ビットL'よりも上位のn−1
ビットとが合成されて、nビットの整数I が出力される
(終わり)。
【0091】すなわち増分器308によって、仮の丸め
処理により、小数点以下第1位以上の桁(ガードビット
G よりも上位)のn+1ビットの加算結果が求められ、
この加算結果に基づいて、丸め修正論理回路306によ
り、正確な丸め処理による第1位ビットL"が求められ
る。上述のように、第4実施例と同様、2の補数表現の
固定小数点数X を一旦符号付き絶対値表現数に変換した
りすることなく、しかも固定小数点数X の正負を判断し
て処理を分岐させたりすることなく丸め処理が行われ
る。それゆえ、1サイクルで丸め処理が完了し、また、
ハードウェア規模も小さく抑えられる。
【0092】なお、前記第4実施例の装置と、本第5実
施例に係る2の補数表現固定小数点数丸め装置とは、前
者が増分器208による値“1”の加算前の第1位ビッ
トL、およびガードビットG を用いて第1位ビットL"を
求めるように構成されているのに対し、後者は増分器3
08による値“1”の加算後の第1位ビットL'、および
ガードビットG'を用いて、第1位ビットL"を求めるよう
に構成されている点が異なる。ただし、何れの構成が好
ましいかは回路の組み方やクリティカルパスの出現箇所
などの事情に依存する。
【0093】上記各実施例において、1サイクルで適正
な丸め処理が行われることは、数学的に証明できる。一
例として、第3実施例の2の補数表現固定小数点数丸め
装置による、2の補数表現で表された固定小数点数X か
ら2の補数表現の整数I への丸めモードRZにおける丸
め論理の正当性の証明を以下に示す。
【0094】整数部 XI と小数部 XF とから成る2の補
数表現の固定小数点数X を X = XI . XF ……(1) と表し、また、2の補数表現の固定小数点数から2の補
数表現の整数へのRZ丸め関数をRZ( )、ビット反転を
示す関数をinv ( )で表わすとすると、関数RZ( )に関
し、X ≧0 の場合には、 I = RZ(X)= XI ……(2) である。すなわち、符号ビット XS が 0の場合には、増
分論理回路106から出力される桁上げの値を 0にすれ
ばよい。
【0095】一方、X<0の場合には、 −X =inv( XI . XF ) +0.00‥‥01 ……(3) であり、また、ガードビットG とスティッキービットS
の論理和、即ち小数部 XF の全ビットの論理和をS'とす
ると、上記(3)式における値−X を丸める際の丸めの
小数点以下から整数部への桁上げの値は、 inv(S') ……(4) であるので、 RZ( −X) = inv( X I ) + inv(S') ……(5) ところで、関数RZ( )に関しては −RZ(X) = RZ(−X) ……(6) が成り立つので(図11参照)、(5)式、および
(6)式により、 RZ(X) =− RZ(−X) = inv{inv( XI ) + inv(S')}+ 1 ……(7) ここで、S'が 0であれば、 RZ(X) = inv{inv( XI ) + 1}+ 1 = inv( − XI ) + 1 =−( − XI ) = XI ……(8) また、S'が 1であれば、 RZ(X) = inv{inv( XI ) + 0}+ 1 = XI + 1 ……(9) すなわち、(8)、(9)式より、X < 0の場合には、 I =RZ(X) = XI +S' ……(10) 故に、(2)式、および(10)式より、増分論理回路
106から(表3)に示す値を出力させ、増分器108
により桁上げ加算することにより、丸めモードRZの丸
め処理を行えることが示される。
【0096】上記の例では、第3実施例の2の丸めモー
ドRZについてだけ示したが、他の実施例、および丸め
モードについても、同様に丸め論理の正当性を示すこと
ができる。なお、上記各実施例においては、固定小数点
数や浮動小数点数を整数へ丸める例を示したが、これに
限らず、整数を丸める場合や、2の補数表現の固定小数
点数へ丸める場合でも、全く同様に本発明を適用するこ
とができる。
【0097】すなわち、丸めの小数点位置を実際の小数
点位置に一致させて丸め処理を行えば、上記のように整
数への変換が行われるのに対し、例えば(図8)に示す
ように丸めの小数点位置を実際の小数点位置と異なる所
定の位置に設定することにより、その設定に応じた桁位
置での丸め処理を行わせることができる。また、浮動小
数点数演算に関する規則等はANSI/IEEE に則るものとし
て説明したが、これは本発明が特定の規格や仕様に依存
することを意味するものではない。
【0098】
【発明の効果】以上説明したように、本発明によれば、
丸める符号付き絶対値表現の固定小数点数や浮動小数点
数が負である場合でも、1サイクルで丸め処理と2の補
数化とが行われるので、2の補数表現の整数等への変換
が高速化される。また、丸める2の補数表現の固定小数
点数が負の場合でも、一旦、符号付き絶対値表現固定小
数点数に変換したりすることなく、1サイクルで丸め処
理が完了するので、やはり、2の補数表現の整数等への
変換が高速化される。
【0099】しかも、丸める数値の正負を判断して処理
を分岐させる必要などがないために、ハードウェア規模
も小さく抑えられるという効果を奏する。
【図面の簡単な説明】
【図1】第1実施例の符号付き絶対値表現固定小数点数
丸め装置の構成を示すブロック図である。
【図2】符号付き絶対値表現固定小数点数丸め装置の他
の例の構成を示すブロック図である。
【図3】第2実施例の浮動小数点数−整数変換装置の構
成を示すブロック図である。
【図4】浮動小数点数−整数変換装置の仮数シフタの動
作を示す説明図である。
【図5】第3実施例の2の補数表現固定小数点数丸め装
置の構成を示すブロック図である。
【図6】第4実施例の2の補数表現固定小数点数丸め装
置の構成を示すブロック図である。
【図7】第5実施例の2の補数表現固定小数点数丸め装
置の構成を示すブロック図である。
【図8】丸めの小数点位置と実際の小数点位置とが異な
る例を示す説明図である。
【図9】従来例の浮動小数点数−整数変換装置の構成を
示すブロック図である。
【図10】用語および記号の意味を示す説明図である。
【図11】各丸めモードにおける丸め処理前後の数値の
関係を示す説明図である。
【符号の説明】
106 増分論理回路 108 増分器 110 2の補数表現固定小数点数丸め装置 206 第1位ビット決定論理回路 208 増分器 210 2の補数表現固定小数点数丸め装置 306 丸め修正論理回路 308 増分器 310 2の補数表現固定小数点数丸め装置 405 反転器 406 増分論理回路 408 加算器 408’ 増分器 410 符号付き絶対値表現固定小数点数丸め装置 500 制御部 501 指数減算器 502 仮数シフタ 503 スティッキービット生成器 509 レジスタ

Claims (56)

    【特許請求の範囲】
  1. 【請求項1】符号ビットと絶対値部とから成る符号付き
    絶対値表現数に対して、絶対値部の所定の桁以上の桁を
    残す最近値丸め(RN)を行うとともに2の補数化を行
    う数値丸め装置であって、 符号付き絶対値表現数の正負に応じて、絶対値部の1の
    補数を出力する反転手段と、 絶対値部における上記所定の桁の値と、上記所定の桁よ
    りも1桁下位の桁の値と、上記所定の桁よりも2桁以上
    下位の全桁の値の論理和と、および符号付き絶対値表現
    数の正負に基づいて、丸めによる上記所定の桁への桁上
    げの有無を指示する増分論理手段と、 増分論理手段によって桁上げの指示がなされた場合に、
    反転手段からの出力における上記所定の桁に桁上げ加算
    を行う増分手段と、 を備えたことを特徴とする数値丸め装置。
  2. 【請求項2】符号ビットと絶対値部とから成る符号付き
    絶対値表現数に対して、絶対値部の所定の桁以上の桁を
    残す0方向への丸め(RZ)を行うとともに2の補数化
    を行う数値丸め装置であって、 符号付き絶対値表現数の正負に応じて、絶対値部の1の
    補数を出力する反転手段と、 符号付き絶対値表現数の正負に応じて、反転手段からの
    出力における上記所定の桁に桁上げ加算を行う増分手段
    と、 を備えたことを特徴とする数値丸め装置。
  3. 【請求項3】符号ビットと絶対値部とから成る符号付き
    絶対値表現数に対して、絶対値部の所定の桁以上の桁を
    残す正方向への丸め(RP)、および負方向への丸め
    (RM)のうちの少なくとも何れか一方を行うとともに
    2の補数化を行う数値丸め装置であって、 符号付き絶対値表現数の正負に応じて、絶対値部の1の
    補数を出力する反転手段と、 絶対値部における上記所定の桁よりも下位の全桁の値の
    論理和、および符号付き絶対値表現数の正負に基づい
    て、丸めによる上記所定の桁への桁上げの有無を指示す
    る増分論理手段と、 増分論理手段によって桁上げの指示がなされた場合に、
    反転手段からの出力における上記所定の桁に桁上げ加算
    を行う増分手段と、 を備えたことを特徴とする数値丸め装置。
  4. 【請求項4】符号ビットと、指数部と、仮数部とから成
    る浮動小数点数に対して、真の小数点よりも上の桁を残
    す最近値丸め(RN)を行うとともに2の補数化を行っ
    て整数に変換する浮動小数点数−整数変換装置であっ
    て、 指数部の値に基づいて、真の小数点が所定の位置になる
    ように仮数部をシフトさせるためのシフト量を求めるシ
    フト量計算手段と、 シフト量計算手段によって求められたシフト量に応じて
    仮数部をシフトさせる仮数桁合わせ手段と、 仮数桁合わせ手段によって仮数部がシフトされる際に、
    シフト後の真の小数点のすぐ右の桁よりも右にこぼれる
    全桁の論理和をとって出力するスティッキービット生成
    手段と、 浮動小数点数の正負に応じて、仮数桁合わせ手段によっ
    てシフトされた仮数部の1の補数を出力する反転手段
    と、 仮数部における真の小数点のすぐ左の桁の値と、真の小
    数点のすぐ右の桁の値と、スティッキービット生成手段
    から出力される値と、および浮動小数点数の正負に基づ
    いて、丸めによる真の小数点のすぐ左の桁への桁上げの
    有無を指示する増分論理手段と、 増分論理手段によって桁上げの指示がなされた場合に、
    反転手段からの出力における真の小数点のすぐ左の桁に
    桁上げ加算を行う増分手段と、 を備えたことを特徴とする浮動小数点数−整数変換装
    置。
  5. 【請求項5】符号ビットと、指数部と、仮数部とから成
    る浮動小数点数に対して、真の小数点よりも上の桁を残
    す0方向への丸め(RZ)を行うとともに2の補数化を
    行って整数に変換する浮動小数点数−整数変換装置であ
    って、 指数部の値に基づいて、真の小数点が所定の位置になる
    ように仮数部をシフトさせるためのシフト量を求めるシ
    フト量計算手段と、 シフト量計算手段によって求められたシフト量に応じて
    仮数部をシフトさせる仮数桁合わせ手段と、 仮数桁合わせ手段によって仮数部がシフトされる際に、
    シフト後の真の小数点のすぐ右の桁よりも右にこぼれる
    全桁の論理和をとって出力するスティッキービット生成
    手段と、 浮動小数点数の正負に応じて、仮数桁合わせ手段によっ
    てシフトされた仮数部の1の補数を出力する反転手段
    と、 浮動小数点数の正負に応じて、反転手段からの出力にお
    ける真の小数点のすぐ左の桁に桁上げ加算を行う増分手
    段と、 を備えたことを特徴とする浮動小数点数−整数変換装
    置。
  6. 【請求項6】符号ビットと、指数部と、仮数部とから成
    る浮動小数点数に対して、真の小数点よりも上の桁を残
    す正方向への丸め(RP)、および負方向への丸め(R
    M)のうちの少なくとも何れか一方を行うとともに2の
    補数化を行って整数に変換する浮動小数点数−整数変換
    装置であって、 指数部の値に基づいて、真の小数点が所定の位置になる
    ように仮数部をシフトさせるためのシフト量を求めるシ
    フト量計算手段と、 シフト量計算手段によって求められたシフト量に応じて
    仮数部をシフトさせる仮数桁合わせ手段と、 仮数桁合わせ手段によって仮数部がシフトされる際に、
    シフト後の真の小数点よりも右にこぼれる全桁の論理和
    をとって出力するスティッキービット生成手段と、 浮動小数点数の正負に応じて、仮数桁合わせ手段によっ
    てシフトされた仮数部の1の補数を出力する反転手段
    と、 スティッキービット生成手段から出力される値、および
    浮動小数点数の正負に基づいて、丸めによる真の小数点
    のすぐ左の桁への桁上げの有無を指示する増分論理手段
    と、 増分論理手段によって桁上げの指示がなされた場合に、
    反転手段からの出力における真の小数点のすぐ左の桁に
    桁上げ加算を行う増分手段と、 を備えたことを特徴とする浮動小数点数−整数変換装
    置。
  7. 【請求項7】2の補数表現数に対して所定の桁以上の桁
    を残す最近値丸め(RN)を行う数値丸め装置であっ
    て、 2の補数表現数における上記所定の桁の値と、上記所定
    の桁よりも1桁下位の桁の値と、上記所定の桁よりも2
    桁以上下位の全桁の値の論理和とに基づいて、丸めによ
    る上記所定の桁への桁上げの有無を指示する増分論理手
    段と、 増分論理手段によって桁上げの指示がなされた場合に、
    2の補数表現数における上記所定の桁に桁上げ加算を行
    う増分手段と、 を備えたことを特徴とする数値丸め装置。
  8. 【請求項8】2の補数表現数に対して所定の桁以上の桁
    を残す0方向への丸め(RZ)を行う数値丸め装置であ
    って、 2の補数表現数における上記所定の桁よりも下位の全桁
    の値の論理和、および2の補数表現数の正負に基づい
    て、丸めによる上記所定の桁への桁上げの有無を指示す
    る増分論理手段と、 増分論理手段によって桁上げの指示がなされた場合に、
    2の補数表現数における上記所定の桁に桁上げ加算を行
    う増分手段と、 を備えたことを特徴とする数値丸め装置。
  9. 【請求項9】2の補数表現数に対して所定の桁以上の桁
    を残す正方向への丸め(RP)を行う数値丸め装置であ
    って、 2の補数表現数における上記所定の桁よりも下位の全桁
    の値の論理和に基づいて、丸めによる上記所定の桁への
    桁上げの有無を指示する増分論理手段と、 増分論理手段によって桁上げの指示がなされた場合に、
    2の補数表現数における上記所定の桁に桁上げ加算を行
    う増分手段と、 を備えたことを特徴とする数値丸め装置。
  10. 【請求項10】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)を行う数値丸め装置であっ
    て、 2の補数表現数における上記所定の桁よりも1桁下位の
    桁に1を加算する増分手段と、 2の補数表現数における上記所定の桁の値と、上記所定
    の桁よりも1桁下位の桁の値と、上記所定の桁よりも2
    桁以上下位の全桁の値の論理和とに基づいて、上記増分
    手段の出力における上記所定の桁の値を修正する加算結
    果修正手段と、 を備えたことを特徴とする数値丸め装置。
  11. 【請求項11】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)を行う数値丸め装置であっ
    て、 2の補数表現数における上記所定の桁よりも1桁下位の
    桁に1を加算する増分手段と、 増分手段の出力における上記所定の桁の値と、上記所定
    の桁よりも1桁下位の桁の値と、および2の補数表現数
    における上記所定の桁よりも2桁以上下位の全桁の値の
    論理和に基づいて、上記増分手段の出力における上記所
    定の桁の値を修正する加算結果修正手段と、 を備えたことを特徴とする数値丸め装置。
  12. 【請求項12】符号ビットと絶対値部とから成る符号付
    き絶対値表現数に対して、絶対値部の所定の桁以上の桁
    を残す最近値丸め(RN)を行うとともに2の補数化を
    行う数値丸め装置であって、 上記絶対値部における上記所定の桁の値をLとし、Lよ
    りも1桁下位の桁の値をGとし、Gよりも下位の全桁の
    値の論理和をSとし、上記符号ビットの値をMとする
    と、 Mが0であるときに、絶対値部の値をそのまま出力する
    一方、Mが1であるときに、絶対値部の値を反転させて
    出力する反転手段と、 L、G、およびSの組み合わせ(L,G,S)が、
    (0,1,1)、(1,1,0)、または(1,1,
    1)であることを判別したときに、Mの論理否定を出力
    する一方、その他のときに、Mを出力する増分論理手段
    と、 反転手段からの出力におけるLに対応する桁に、増分論
    理手段から出力された値を加算する増分手段と、 を備えたことを特徴とする数値丸め装置。
  13. 【請求項13】符号ビットと絶対値部とから成る符号付
    き絶対値表現数に対して、絶対値部の所定の桁以上の桁
    を残す0方向への丸め(RZ)を行うとともに2の補数
    化を行う数値丸め装置であって、 上記絶対値部における上記所定の桁の値をLとし、上記
    符号ビットの値をMとすると、 Mが0であるときに、絶対値部の値をそのまま出力する
    一方、Mが1であるときに、絶対値部の値を反転させて
    出力する反転手段と、 反転手段からの出力におけるLに対応する桁に、Mを加
    算する増分手段と、 を備えたことを特徴とする数値丸め装置。
  14. 【請求項14】符号ビットと絶対値部とから成る符号付
    き絶対値表現数に対して、絶対値部の所定の桁以上の桁
    を残す正方向への丸め(RP)、および負方向への丸め
    (RM)を行うとともに2の補数化を行う数値丸め装置
    であって、 上記絶対値部における上記所定の桁の値をLとし、Lよ
    りも下位の全桁の値の論理和をGSとし、上記符号ビッ
    トの値をMとすると、 Mが0であるときに、絶対値部の値をそのまま出力する
    一方、Mが1であるときに、絶対値部の値を反転させて
    出力する反転手段と、 正方向への丸め(RP)を行う場合には、Mが0であれ
    ばGSを出力し、Mが1であれば1を出力する一方、負
    方向への丸め(RM)を行う場合には、Mが0であれば
    0を出力し、Mが1であればGSの論理否定を出力する
    増分論理手段と、 反転手段からの出力におけるLに対応する桁に、増分論
    理手段から出力された値を加算する増分手段と、 を備えたことを特徴とする数値丸め装置。
  15. 【請求項15】符号ビットと絶対値部とから成る符号付
    き絶対値表現数に対して、絶対値部の所定の桁以上の桁
    を残す最近値丸め(RN)、および0方向への丸め(R
    Z)を行うとともに2の補数化を行う数値丸め装置であ
    って、 上記絶対値部における上記所定の桁の値をLとし、Lよ
    りも1桁下位の桁の値をGとし、Gよりも下位の全桁の
    値の論理和をSとし、上記符号ビットの値をMとする
    と、 Mが0であるときに、絶対値部の値をそのまま出力する
    一方、Mが1であるときに、絶対値部の値を反転させて
    出力する反転手段と、 最近値丸め(RN)を行う場合には、L、G、およびS
    の組み合わせ(L,G,S)が、(0,1,1)、
    (1,1,0)、または(1,1,1)であることを判
    別したときに、Mの論理否定を出力し、その他のとき
    に、Mを出力する一方、0方向への丸め(RZ)を行う
    場合には、常にMを出力する増分論理手段と、 反転手段からの出力におけるLに対応する桁に、増分論
    理手段から出力された値を加算する増分手段と、 を備えたことを特徴とする数値丸め装置。
  16. 【請求項16】符号ビットと絶対値部とから成る符号付
    き絶対値表現数に対して、絶対値部の所定の桁以上の桁
    を残す最近値丸め(RN)、0方向への丸め(RZ)、
    正方向への丸め(RP)、および負方向への丸め(R
    M)を行うとともに2の補数化を行う数値丸め装置であ
    って、 上記絶対値部における上記所定の桁の値をLとし、Lよ
    りも1桁下位の桁の値をGとし、Gよりも下位の全桁の
    値の論理和をSとし、上記符号ビットの値をMとする
    と、 Mが0であるときに、絶対値部の値をそのまま出力する
    一方、Mが1であるときに、絶対値部の値を反転させて
    出力する反転手段と、 最近値丸め(RN)を行う場合には、L、G、およびS
    の組み合わせ(L,G,S)が(0,1,1)、(1,
    1,0)、または(1,1,1)であることを判別した
    ときにMの論理否定を出力する一方、その他のときにM
    を出力し、0方向への丸め(RZ)を行う場合には、常
    にMを出力し、正方向への丸め(RP)を行う場合に
    は、Mが0であればGとSとの論理和を出力する一方、
    Mが1であれば1を出力し、負方向への丸め(RM)を
    行う場合には、Mが0であれば0を出力する一方、Mが
    1であればGとSとの論理和の論理否定を出力する増分
    論理手段と、 反転手段からの出力におけるLに対応する桁に、増分論
    理手段から出力された値を加算する増分手段と、 を備えたことを特徴とする数値丸め装置。
  17. 【請求項17】符号ビットと、指数部と、仮数部とから
    成る浮動小数点数に対して、真の小数点よりも上の桁を
    残す最近値丸め(RN)を行うとともに2の補数化を行
    って整数に変換する浮動小数点数−整数変換装置であっ
    て、 上記仮数部における真の小数点のすぐ左の桁の値をLと
    し、真の小数点のすぐ右の桁の値をGとし、Gよりも下
    位の全桁の値の論理和をSとし、符号ビットの値をMと
    すると、 指数部の値に基づいて、Lが所定の桁位置になるように
    仮数部をシフトさせるためのシフト量を求めるシフト量
    計算手段と、 シフト量計算手段によって求められたシフト量に応じて
    仮数部をシフトさせる仮数桁合わせ手段と、 仮数桁合わせ手段によって仮数部がシフトされる際に、
    シフト後のGの桁よりも右にこぼれる全桁の論理和をと
    ってSを求めるスティッキービット生成手段と、 Mが0であるときに、仮数桁合わせ手段の出力をそのま
    ま出力する一方、Mが1であるときに、仮数桁合わせ手
    段の出力を反転させて出力する反転手段と、 L、G、およびSの組み合わせ(L,G,S)が、
    (0,1,1)、(1,1,0)、または(1,1,
    1)であることを判別したときに、Mの論理否定を出力
    する一方、その他のときに、Mを出力する増分論理手段
    と、 反転手段からの出力におけるLに対応する桁に、増分論
    理手段から出力された値を加算する増分手段と、 を備えたことを特徴とする浮動小数点数−整数変換装
    置。
  18. 【請求項18】符号ビットと、指数部と、仮数部とから
    成る浮動小数点数に対して、真の小数点よりも上の桁を
    残す0方向への丸め(RZ)を行うとともに2の補数化
    を行って整数に変換する浮動小数点数−整数変換装置で
    あって、 上記仮数部における真の小数点のすぐ左の桁の値をLと
    し、真の小数点のすぐ右の桁の値をGとし、Gよりも下
    位の全桁の値の論理和をSとし、符号ビットの値をMと
    すると、 指数部の値に基づいて、Lが所定の桁位置になるように
    仮数部をシフトさせるためのシフト量を求めるシフト量
    計算手段と、 シフト量計算手段によって求められたシフト量に応じて
    仮数部をシフトさせる仮数桁合わせ手段と、 仮数桁合わせ手段によって仮数部がシフトされる際に、
    シフト後のGの桁よりも右にこぼれる全桁の論理和をと
    ってSを求めるスティッキービット生成手段と、 Mが0であるときに、仮数桁合わせ手段の出力をそのま
    ま出力する一方、Mが1であるときに、仮数桁合わせ手
    段の出力を反転させて出力する反転手段と、 反転手段からの出力におけるLに対応する桁に、Mを加
    算する増分手段と、 を備えたことを特徴とする浮動小数点数−整数変換装
    置。
  19. 【請求項19】符号ビットと、指数部と、仮数部とから
    成る浮動小数点数に対して、真の小数点よりも上の桁を
    残す正方向への丸め(RP)、および負方向への丸め
    (RM)を行うとともに2の補数化を行って整数に変換
    する浮動小数点数−整数変換装置であって、 上記仮数部における真の小数点のすぐ左の桁の値をLと
    し、真の小数点よりも右の全桁の値の論理和をGSと
    し、符号ビットの値をMとすると、 指数部の値に基づいて、Lが所定の桁位置になるように
    仮数部をシフトさせるためのシフト量を求めるシフト量
    計算手段と、 シフト量計算手段によって求められたシフト量に応じて
    仮数部をシフトさせる仮数桁合わせ手段と、 仮数桁合わせ手段によって仮数部がシフトされる際に、
    シフト後のLの桁よりも右にこぼれる全桁の論理和をと
    ってGSを求めるスティッキービット生成手段と、 Mが0であるときに、仮数桁合わせ手段の出力をそのま
    ま出力する一方、Mが1であるときに、仮数桁合わせ手
    段の出力を反転させて出力する反転手段と、 正方向への丸め(RP)を行う場合には、Mが0であれ
    ばGSを出力し、Mが1であれば1を出力する一方、負
    方向への丸め(RM)を行う場合には、Mが0であれば
    0を出力し、Mが1であればGSの論理否定を出力する
    増分論理手段と、 反転手段からの出力におけるLに対応する桁に、増分論
    理手段から出力された値を加算する増分手段と、 を備えたことを特徴とする浮動小数点数−整数変換装
    置。
  20. 【請求項20】符号ビットと、指数部と、仮数部とから
    成る浮動小数点数に対して、真の小数点よりも上の桁を
    残す最近値丸め(RN)、および0方向への丸め(R
    Z)を行うとともに2の補数化を行って整数に変換する
    浮動小数点数−整数変換装置であって、 上記仮数部における真の小数点のすぐ左の桁の値をLと
    し、真の小数点のすぐ右の桁の値をGとし、Gよりも下
    位の全桁の値の論理和をSとし、符号ビットの値をMと
    すると、 指数部の値に基づいて、Lが所定の桁位置になるように
    仮数部をシフトさせるためのシフト量を求めるシフト量
    計算手段と、 シフト量計算手段によって求められたシフト量に応じて
    仮数部をシフトさせる仮数桁合わせ手段と、 仮数桁合わせ手段によって仮数部がシフトされる際に、
    シフト後のGの桁よりも右にこぼれる全桁の論理和をと
    ってSを求めるスティッキービット生成手段と、 Mが0であるときに、仮数桁合わせ手段の出力をそのま
    ま出力する一方、Mが1であるときに、仮数桁合わせ手
    段の出力を反転させて出力する反転手段と、 最近値丸め(RN)を行う場合には、L、G、およびS
    の組み合わせ(L,G,S)が、(0,1,1)、
    (1,1,0)、または(1,1,1)であることを判
    別したときに、Mの論理否定を出力し、その他のとき
    に、Mを出力する一方、0方向への丸め(RZ)を行う
    場合には、常にMを出力する増分論理手段と、 反転手段からの出力におけるLに対応する桁に、増分論
    理手段から出力された値を加算する増分手段と、 を備えたことを特徴とする浮動小数点数−整数変換装
    置。
  21. 【請求項21】符号ビットと、指数部と、仮数部とから
    成る浮動小数点数に対して、真の小数点よりも上の桁を
    残す最近値丸め(RN)、0方向への丸め(RZ)、正
    方向への丸め(RP)、および負方向への丸め(RM)
    を行うとともに2の補数化を行って整数に変換する浮動
    小数点数−整数変換装置であって、 上記仮数部における真の小数点のすぐ左の桁の値をLと
    し、真の小数点のすぐ右の桁の値をGとし、Gよりも下
    位の全桁の値の論理和をSとし、符号ビットの値をMと
    すると、 指数部の値に基づいて、Lが所定の桁位置になるように
    仮数部をシフトさせるためのシフト量を求めるシフト量
    計算手段と、 シフト量計算手段によって求められたシフト量に応じて
    仮数部をシフトさせる仮数桁合わせ手段と、 仮数桁合わせ手段によって仮数部がシフトされる際に、
    シフト後のGの桁よりも右にこぼれる全桁の論理和をと
    ってSを求めるスティッキービット生成手段と、 Mが0であるときに、仮数桁合わせ手段の出力をそのま
    ま出力する一方、Mが1であるときに、仮数桁合わせ手
    段の出力を反転させて出力する反転手段と、 最近値丸め(RN)を行う場合には、L、G、およびS
    の組み合わせ(L,G,S)が(0,1,1)、(1,
    1,0)、または(1,1,1)であることを判別した
    ときにMの論理否定を出力する一方、その他のときにM
    を出力し、0方向への丸め(RZ)を行う場合には、常
    にMを出力し、正方向への丸め(RP)を行う場合に
    は、Mが0であればGとSとの論理和を出力する一方、
    Mが1であれば1を出力し、負方向への丸め(RM)を
    行う場合には、Mが0であれば0を出力する一方、Mが
    1であればGとSとの論理和の論理否定を出力する増分
    論理手段と、 反転手段からの出力におけるLに対応する桁に、増分論
    理手段から出力された値を加算する増分手段と、 を備えたことを特徴とする浮動小数点数−整数変換装
    置。
  22. 【請求項22】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)を行う数値丸め装置であっ
    て、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも1桁下位の桁の値をGとし、Gよりも下位の全桁
    の値の論理和をSとすると、 L、G、およびSの組み合わせ(L,G,S)が、
    (0,1,1)、(1,1,0)、または(1,1,
    1)であることを判別して、桁上げ情報を出力する増分
    論理手段と、 増分論理手段から桁上げ情報が出力されたときに、2の
    補数表現数におけるLの桁に、1を加算する増分手段
    と、 を備えたことを特徴とする数値丸め装置。
  23. 【請求項23】2の補数表現数に対して所定の桁以上の
    桁を残す0方向への丸め(RZ)を行う数値丸め装置で
    あって、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも下位の全桁の値の論理和をGSとし、2の補数表
    現数の最上位ビットである符号ビットの値をMとする
    と、 M、およびGSの組み合わせ(M,GS)が、(1,
    1)であることを判別して、桁上げ情報を出力する増分
    論理手段と、 増分論理手段から桁上げ情報が出力されたときに、2の
    補数表現数におけるLの桁に、1を加算する増分手段
    と、 を備えたことを特徴とする数値丸め装置。
  24. 【請求項24】2の補数表現数に対して所定の桁以上の
    桁を残す正方向への丸め(RP)、および負方向への丸
    め(RM)を行う数値丸め装置であって、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも下位の全桁の値の論理和をGSとすると、 正方向への丸め(RP)を行う場合には、GSを出力す
    る一方、負方向への丸め(RM)を行う場合には、0を
    出力する増分論理手段と、 2の補数表現数におけるLの桁に、増分論理手段から出
    力された値を加算する増分手段と、 を備えたことを特徴とする数値丸め装置。
  25. 【請求項25】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)、および0方向への丸め
    (RZ)を行う数値丸め装置であって、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも1桁下位の桁の値をGとし、Gよりも下位の全桁
    の値の論理和をSとし、2の補数表現数の最上位ビット
    である符号ビットの値をMとすると、 最近値丸め(RN)を行う場合には、L、G、およびS
    の組み合わせ(L,G,S)が、(0,1,1)、
    (1,1,0)、または(1,1,1)であることを判
    別して、桁上げ情報を出力する一方、0方向への丸め
    (RZ)を行う場合には、M、G、およびSの組み合わ
    せ(M,G,S)が、(1,1,1)、(1,1,
    0)、または(1,0,1)であることを判別して、桁
    上げ情報を出力する増分論理手段と、 増分論理手段から桁上げ情報が出力されたときに、2の
    補数表現数におけるLの桁に、1を加算する増分手段
    と、 を備えたことを特徴とする数値丸め装置。
  26. 【請求項26】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)、0方向への丸め(R
    Z)、正方向への丸め(RP)、および負方向への丸め
    (RM)を行う数値丸め装置であって、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも1桁下位の桁の値をGとし、Gよりも下位の全桁
    の値の論理和をSとし、2の補数表現数の最上位ビット
    である符号ビットの値をMとすると、 最近値丸め(RN)を行う場合には、L、G、およびS
    の組み合わせ(L,G,S)が(0,1,1)、(1,
    1,0)、または(1,1,1)であることを判別して
    桁上げ情報を出力し、0方向への丸め(RZ)を行う場
    合には、M、G、およびSの組み合わせ(M,G,S)
    が(1,1,1)、(1,1,0)、または(1,0,
    1)であることを判別して桁上げ情報を出力し、正方向
    への丸め(RP)を行う場合には、G、およびSの組み
    合わせ(G,S)が(1,1)、(1,0)、または
    (0,1)であることを判別して桁上げ情報を出力し、
    負方向への丸め(RM)を行う場合には、常に桁上げ情
    報の出力を抑制する増分論理手段と、 増分論理手段から桁上げ情報が出力されたときに、2の
    補数表現数におけるLの桁に、1を加算する増分手段
    と、 を備えたことを特徴とする数値丸め装置。
  27. 【請求項27】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)を行う数値丸め装置であっ
    て、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも1桁下位の桁の値をGとし、Gよりも下位の全桁
    の値の論理和をSとすると、 2の補数表現数におけるGの桁に、1を加算する増分手
    段と、 L、G、およびSの組み合わせ(L,G,S)が、
    (0,1,0)であることを判別したときに、増分手段
    の加算結果におけるLに対応する桁の値L’を0にする
    加算結果修正手段と、 を備えたことを特徴とする数値丸め装置。
  28. 【請求項28】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)を行う数値丸め装置であっ
    て、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも1桁下位の桁の値をGとし、Gよりも下位の全桁
    の値の論理和をSとすると、 2の補数表現数におけるGの桁に、1を加算する増分手
    段と、 増分手段の加算結果におけるL、およびGに対応する桁
    の値L’、およびG’と、Sとの組み合わせ(L’,
    G’,S)が、(1,0,0)であることを判別したと
    きに、L’を0にする加算結果修正手段と、 を備えたことを特徴とする数値丸め装置。
  29. 【請求項29】符号ビットと絶対値部とから成る符号付
    き絶対値表現数に対して、絶対値部の所定の桁以上の桁
    を残す最近値丸め(RN)を行うとともに2の補数化を
    行う数値丸め方法であって、 符号付き絶対値表現数の正負に応じて、絶対値部の1の
    補数を出力する反転ステップと、 絶対値部における上記所定の桁の値と、上記所定の桁よ
    りも1桁下位の桁の値と、上記所定の桁よりも2桁以上
    下位の全桁の値の論理和と、および符号付き絶対値表現
    数の正負に基づいて、丸めによる上記所定の桁への桁上
    げの有無を指示する増分論理ステップと、 増分論理ステップによって桁上げの指示がなされた場合
    に、反転ステップによる出力における上記所定の桁に桁
    上げ加算を行う増分ステップと、 を備えたことを特徴とする数値丸め方法。
  30. 【請求項30】符号ビットと絶対値部とから成る符号付
    き絶対値表現数に対して、絶対値部の所定の桁以上の桁
    を残す0方向への丸め(RZ)を行うとともに2の補数
    化を行う数値丸め方法であって、 符号付き絶対値表現数の正負に応じて、絶対値部の1の
    補数を出力する反転ステップと、 符号付き絶対値表現数の正負に応じて、反転ステップに
    よる出力における上記所定の桁に桁上げ加算を行う増分
    ステップと、 を備えたことを特徴とする数値丸め方法。
  31. 【請求項31】符号ビットと絶対値部とから成る符号付
    き絶対値表現数に対して、絶対値部の所定の桁以上の桁
    を残す正方向への丸め(RP)、および負方向への丸め
    (RM)のうちの少なくとも何れか一方を行うとともに
    2の補数化を行う数値丸め方法であって、 符号付き絶対値表現数の正負に応じて、絶対値部の1の
    補数を出力する反転ステップと、 絶対値部における上記所定の桁よりも下位の全桁の値の
    論理和、および符号付き絶対値表現数の正負に基づい
    て、丸めによる上記所定の桁への桁上げの有無を指示す
    る増分論理ステップと、 増分論理ステップによって桁上げの指示がなされた場合
    に、反転ステップによる出力における上記所定の桁に桁
    上げ加算を行う増分ステップと、 を備えたことを特徴とする数値丸め方法。
  32. 【請求項32】符号ビットと、指数部と、仮数部とから
    成る浮動小数点数に対して、真の小数点よりも上の桁を
    残す最近値丸め(RN)を行うとともに2の補数化を行
    って整数に変換する浮動小数点数−整数変換方法であっ
    て、 指数部の値に基づいて、真の小数点が所定の位置になる
    ように仮数部をシフトさせるためのシフト量を求めるシ
    フト量計算ステップと、 シフト量計算ステップによって求められたシフト量に応
    じて仮数部をシフトさせる仮数桁合わせステップと、 仮数桁合わせステップによって仮数部がシフトされる際
    に、シフト後の真の小数点のすぐ右の桁よりも右にこぼ
    れる全桁の論理和をとって出力するスティッキービット
    生成ステップと、 浮動小数点数の正負に応じて、仮数桁合わせステップに
    よってシフトされた仮数部の1の補数を出力する反転ス
    テップと、 仮数部における真の小数点のすぐ左の桁の値と、真の小
    数点のすぐ右の桁の値と、スティッキービット生成ステ
    ップにより出力される値と、および浮動小数点数の正負
    に基づいて、丸めによる真の小数点のすぐ左の桁への桁
    上げの有無を指示する増分論理ステップと、 増分論理ステップによって桁上げの指示がなされた場合
    に、反転ステップによる出力における真の小数点のすぐ
    左の桁に桁上げ加算を行う増分ステップと、 を備えたことを特徴とする浮動小数点数−整数変換方
    法。
  33. 【請求項33】符号ビットと、指数部と、仮数部とから
    成る浮動小数点数に対して、真の小数点よりも上の桁を
    残す0方向への丸め(RZ)を行うとともに2の補数化
    を行って整数に変換する浮動小数点数−整数変換方法で
    あって、 指数部の値に基づいて、真の小数点が所定の位置になる
    ように仮数部をシフトさせるためのシフト量を求めるシ
    フト量計算ステップと、 シフト量計算ステップによって求められたシフト量に応
    じて仮数部をシフトさせる仮数桁合わせステップと、 仮数桁合わせステップによって仮数部がシフトされる際
    に、シフト後の真の小数点のすぐ右の桁よりも右にこぼ
    れる全桁の論理和をとって出力するスティッキービット
    生成ステップと、 浮動小数点数の正負に応じて、仮数桁合わせステップに
    よってシフトされた仮数部の1の補数を出力する反転ス
    テップと、 浮動小数点数の正負に応じて、反転ステップによる出力
    における真の小数点のすぐ左の桁に桁上げ加算を行う増
    分ステップと、 を備えたことを特徴とする浮動小数点数−整数変換方
    法。
  34. 【請求項34】符号ビットと、指数部と、仮数部とから
    成る浮動小数点数に対して、真の小数点よりも上の桁を
    残す正方向への丸め(RP)、および負方向への丸め
    (RM)のうちの少なくとも何れか一方を行うとともに
    2の補数化を行って整数に変換する浮動小数点数−整数
    変換方法であって、 指数部の値に基づいて、真の小数点が所定の位置になる
    ように仮数部をシフトさせるためのシフト量を求めるシ
    フト量計算ステップと、 シフト量計算ステップによって求められたシフト量に応
    じて仮数部をシフトさせる仮数桁合わせステップと、 仮数桁合わせステップによって仮数部がシフトされる際
    に、シフト後の真の小数点よりも右にこぼれる全桁の論
    理和をとって出力するスティッキービット生成ステップ
    と、 浮動小数点数の正負に応じて、仮数桁合わせステップに
    よってシフトされた仮数部の1の補数を出力する反転ス
    テップと、 スティッキービット生成ステップにより出力される値、
    および浮動小数点数の正負に基づいて、丸めによる真の
    小数点のすぐ左の桁への桁上げの有無を指示する増分論
    理ステップと、 増分論理ステップによって桁上げの指示がなされた場合
    に、反転ステップによる出力における真の小数点のすぐ
    左の桁に桁上げ加算を行う増分ステップと、 を備えたことを特徴とする浮動小数点数−整数変換方
    法。
  35. 【請求項35】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)を行う数値丸め方法であっ
    て、 2の補数表現数における上記所定の桁の値と、上記所定
    の桁よりも1桁下位の桁の値と、上記所定の桁よりも2
    桁以上下位の全桁の値の論理和とに基づいて、 丸めによる上記所定の桁への桁上げの有無を指示する増
    分論理ステップと、 増分論理ステップによって桁上げの指示がなされた場合
    に、2の補数表現数における上記所定の桁に桁上げ加算
    を行う増分ステップと、 を備えたことを特徴とする数値丸め方法。
  36. 【請求項36】2の補数表現数に対して所定の桁以上の
    桁を残す0方向への丸め(RZ)を行う数値丸め方法で
    あって、 2の補数表現数における上記所定の桁よりも下位の全桁
    の値の論理和、および2の補数表現数の正負に基づい
    て、丸めによる上記所定の桁への桁上げの有無を指示す
    る増分論理ステップと、 増分論理ステップによって桁上げの指示がなされた場合
    に、2の補数表現数における上記所定の桁に桁上げ加算
    を行う増分ステップと、 を備えたことを特徴とする数値丸め方法。
  37. 【請求項37】2の補数表現数に対して所定の桁以上の
    桁を残す正方向への丸め(RP)を行う数値丸め方法で
    あって、 2の補数表現数における上記所定の桁よりも下位の全桁
    の値の論理和に基づいて、丸めによる上記所定の桁への
    桁上げの有無を指示する増分論理ステップと、 増分論理ステップによって桁上げの指示がなされた場合
    に、2の補数表現数における上記所定の桁に桁上げ加算
    を行う増分ステップと、 を備えたことを特徴とする数値丸め方法。
  38. 【請求項38】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)を行う数値丸め方法であっ
    て、 2の補数表現数における上記所定の桁よりも1桁下位の
    桁に1を加算する増分ステップと、 2の補数表現数における上記所定の桁の値と、上記所定
    の桁よりも1桁下位の桁の値と、上記所定の桁よりも2
    桁以上下位の全桁の値の論理和とに基づいて、上記増分
    ステップによる出力における上記所定の桁の値を修正す
    る加算結果修正ステップと、 を備えたことを特徴とする数値丸め方法。
  39. 【請求項39】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)を行う数値丸め方法であっ
    て、 2の補数表現数における上記所定の桁よりも1桁下位の
    桁に1を加算する増分ステップと、 増分ステップによる出力における上記所定の桁の値と、
    上記所定の桁よりも1桁下位の桁の値と、および2の補
    数表現数における上記所定の桁よりも2桁以上下位の全
    桁の値の論理和に基づいて、上記増分ステップによる出
    力における上記所定の桁の値を修正する加算結果修正ス
    テップと、 を備えたことを特徴とする数値丸め方法。
  40. 【請求項40】符号ビットと絶対値部とから成る符号付
    き絶対値表現数に対して、絶対値部の所定の桁以上の桁
    を残す最近値丸め(RN)を行うとともに2の補数化を
    行う数値丸め方法であって、 上記絶対値部における上記所定の桁の値をLとし、Lよ
    りも1桁下位の桁の値をGとし、Gよりも下位の全桁の
    値の論理和をSとし、上記符号ビットの値をMとする
    と、 Mが0であるときに、絶対値部の値をそのまま出力する
    一方、Mが1であるときに、絶対値部の値を反転させて
    出力する反転ステップと、 L、G、およびSの組み合わせ(L,G,S)が、
    (0,1,1)、(1,1,0)、または(1,1,
    1)であることを判別したときに、Mの論理否定を出力
    する一方、その他のときに、Mを出力する増分論理ステ
    ップと、 反転ステップによる出力におけるLに対応する桁に、増
    分論理ステップにより出力された値を加算する増分ステ
    ップと、 を備えたことを特徴とする数値丸め方法。
  41. 【請求項41】符号ビットと絶対値部とから成る符号付
    き絶対値表現数に対して、絶対値部の所定の桁以上の桁
    を残す0方向への丸め(RZ)を行うとともに2の補数
    化を行う数値丸め方法であって、 上記絶対値部における上記所定の桁の値をLとし、上記
    符号ビットの値をMとすると、 Mが0であるときに、絶対値部の値をそのまま出力する
    一方、Mが1であるときに、絶対値部の値を反転させて
    出力する反転ステップと、 反転ステップによる出力におけるLに対応する桁に、M
    を加算する増分ステップと、 を備えたことを特徴とする数値丸め方法。
  42. 【請求項42】符号ビットと絶対値部とから成る符号付
    き絶対値表現数に対して、絶対値部の所定の桁以上の桁
    を残す正方向への丸め(RP)、および負方向への丸め
    (RM)を行うとともに2の補数化を行う数値丸め方法
    であって、 上記絶対値部における上記所定の桁の値をLとし、Lよ
    りも下位の全桁の値の論理和をGSとし、上記符号ビッ
    トの値をMとすると、 Mが0であるときに、絶対値部の値をそのまま出力する
    一方、Mが1であるときに、絶対値部の値を反転させて
    出力する反転ステップと、 正方向への丸め(RP)を行う場合には、Mが0であれ
    ばGSを出力し、Mが1であれば1を出力する一方、負
    方向への丸め(RM)を行う場合には、Mが0であれば
    0を出力し、Mが1であればGSの論理否定を出力する
    増分論理ステップと、 反転ステップによる出力におけるLに対応する桁に、増
    分論理ステップにより出力された値を加算する増分ステ
    ップと、 を備えたことを特徴とする数値丸め方法。
  43. 【請求項43】符号ビットと絶対値部とから成る符号付
    き絶対値表現数に対して、絶対値部の所定の桁以上の桁
    を残す最近値丸め(RN)、および0方向への丸め(R
    Z)を行うとともに2の補数化を行う数値丸め方法であ
    って、 上記絶対値部における上記所定の桁の値をLとし、Lよ
    りも1桁下位の桁の値をGとし、Gよりも下位の全桁の
    値の論理和をSとし、上記符号ビットの値をMとする
    と、 Mが0であるときに、絶対値部の値をそのまま出力する
    一方、Mが1であるときに、絶対値部の値を反転させて
    出力する反転ステップと、 最近値丸め(RN)を行う場合には、L、G、およびS
    の組み合わせ(L,G,S)が、(0,1,1)、
    (1,1,0)、または(1,1,1)であることを判
    別したときに、Mの論理否定を出力し、その他のとき
    に、Mを出力する一方、0方向への丸め(RZ)を行う
    場合には、常にMを出力する増分論理ステップと、 反転ステップによる出力におけるLに対応する桁に、増
    分論理ステップにより出力された値を加算する増分ステ
    ップと、 を備えたことを特徴とする数値丸め方法。
  44. 【請求項44】符号ビットと絶対値部とから成る符号付
    き絶対値表現数に対して、絶対値部の所定の桁以上の桁
    を残す最近値丸め(RN)、0方向への丸め(RZ)、
    正方向への丸め(RP)、および負方向への丸め(R
    M)を行うとともに2の補数化を行う数値丸め方法であ
    って、 上記絶対値部における上記所定の桁の値をLとし、Lよ
    りも1桁下位の桁の値をGとし、Gよりも下位の全桁の
    値の論理和をSとし、上記符号ビットの値をMとする
    と、 Mが0であるときに、絶対値部の値をそのまま出力する
    一方、Mが1であるときに、絶対値部の値を反転させて
    出力する反転ステップと、 最近値丸め(RN)を行う場合には、L、G、およびS
    の組み合わせ(L,G,S)が(0,1,1)、(1,
    1,0)、または(1,1,1)であることを判別した
    ときにMの論理否定を出力する一方、その他のときにM
    を出力し、0方向への丸め(RZ)を行う場合には、常
    にMを出力し、正方向への丸め(RP)を行う場合に
    は、Mが0であればGとSとの論理和を出力する一方、
    Mが1であれば1を出力し、負方向への丸め(RM)を
    行う場合には、Mが0であれば0を出力する一方、Mが
    1であればGとSとの論理和の論理否定を出力する増分
    論理ステップと、 反転ステップによる出力におけるLに対応する桁に、増
    分論理ステップにより出力された値を加算する増分ステ
    ップと、 を備えたことを特徴とする数値丸め方法。
  45. 【請求項45】符号ビットと、指数部と、仮数部とから
    成る浮動小数点数に対して、真の小数点よりも上の桁を
    残す最近値丸め(RN)を行うとともに2の補数化を行
    って整数に変換する浮動小数点数−整数変換方法であっ
    て、 上記仮数部における真の小数点のすぐ左の桁の値をLと
    し、真の小数点のすぐ右の桁の値をGとし、Gよりも下
    位の全桁の値の論理和をSとし、符号ビットの値をMと
    すると、 指数部の値に基づいて、Lが所定の桁位置になるように
    仮数部をシフトさせるためのシフト量を求めるシフト量
    計算ステップと、 シフト量計算ステップによって求められたシフト量に応
    じて仮数部をシフトさせる仮数桁合わせステップと、 仮数桁合わせステップによって仮数部がシフトされる際
    に、シフト後のGの桁よりも右にこぼれる全桁の論理和
    をとってSを求めるスティッキービット生成ステップ
    と、 Mが0であるときに、仮数桁合わせステップによる出力
    をそのまま出力する一方、Mが1であるときに、仮数桁
    合わせステップによる出力を反転させて出力する反転ス
    テップと、 L、G、およびSの組み合わせ(L,G,S)が、
    (0,1,1)、(1,1,0)、または(1,1,
    1)であることを判別したときに、Mの論理否定を出力
    する一方、その他のときに、Mを出力する増分論理ステ
    ップと、 反転ステップによる出力におけるLに対応する桁に、増
    分論理ステップにより出力された値を加算する増分ステ
    ップと、 を備えたことを特徴とする浮動小数点数−整数変換方
    法。
  46. 【請求項46】符号ビットと、指数部と、仮数部とから
    成る浮動小数点数に対して、真の小数点よりも上の桁を
    残す0方向への丸め(RZ)を行うとともに2の補数化
    を行って整数に変換する浮動小数点数−整数変換方法で
    あって、 上記仮数部における真の小数点のすぐ左の桁の値をLと
    し、真の小数点のすぐ右の桁の値をGとし、Gよりも下
    位の全桁の値の論理和をSとし、符号ビットの値をMと
    すると、 指数部の値に基づいて、Lが所定の桁位置になるように
    仮数部をシフトさせるためのシフト量を求めるシフト量
    計算ステップと、 シフト量計算ステップによって求められたシフト量に応
    じて仮数部をシフトさせる仮数桁合わせステップと、 仮数桁合わせステップによって仮数部がシフトされる際
    に、シフト後のGの桁よりも右にこぼれる全桁の論理和
    をとってSを求めるスティッキービット生成ステップ
    と、 Mが0であるときに、仮数桁合わせステップによる出力
    をそのまま出力する一方、Mが1であるときに、仮数桁
    合わせステップによる出力を反転させて出力する反転ス
    テップと、 反転ステップによる出力におけるLに対応する桁に、M
    を加算する増分ステップと、 を備えたことを特徴とする浮動小数点数−整数変換方
    法。
  47. 【請求項47】符号ビットと、指数部と、仮数部とから
    成る浮動小数点数に対して、真の小数点よりも上の桁を
    残す正方向への丸め(RP)、および負方向への丸め
    (RM)を行うとともに2の補数化を行って整数に変換
    する浮動小数点数−整数変換方法であって、 上記仮数部における真の小数点のすぐ左の桁の値をLと
    し、真の小数点よりも右の全桁の値の論理和をGSと
    し、符号ビットの値をMとすると、 指数部の値に基づいて、Lが所定の桁位置になるように
    仮数部をシフトさせるためのシフト量を求めるシフト量
    計算ステップと、 シフト量計算ステップによって求められたシフト量に応
    じて仮数部をシフトさせる仮数桁合わせステップと、 仮数桁合わせステップによって仮数部がシフトされる際
    に、シフト後のLの桁よりも右にこぼれる全桁の論理和
    をとってGSを求めるスティッキービット生成ステップ
    と、 Mが0であるときに、仮数桁合わせステップによる出力
    をそのまま出力する一方、Mが1であるときに、仮数桁
    合わせステップによる出力を反転させて出力する反転ス
    テップと、 正方向への丸め(RP)を行う場合には、Mが0であれ
    ばGSを出力し、Mが1であれば1を出力する一方、負
    方向への丸め(RM)を行う場合には、Mが0であれば
    0を出力し、Mが1であればGSの論理否定を出力する
    増分論理ステップと、 反転ステップによる出力におけるLに対応する桁に、増
    分論理ステップにより出力された値を加算する増分ステ
    ップと、 を備えたことを特徴とする浮動小数点数−整数変換方
    法。
  48. 【請求項48】符号ビットと、指数部と、仮数部とから
    成る浮動小数点数に対して、真の小数点よりも上の桁を
    残す最近値丸め(RN)、および0方向への丸め(R
    Z)を行うとともに2の補数化を行って整数に変換する
    浮動小数点数−整数変換方法であって、 上記仮数部における真の小数点のすぐ左の桁の値をLと
    し、真の小数点のすぐ右の桁の値をGとし、Gよりも下
    位の全桁の値の論理和をSとし、符号ビットの値をMと
    すると、 指数部の値に基づいて、Lが所定の桁位置になるように
    仮数部をシフトさせるためのシフト量を求めるシフト量
    計算ステップと、 シフト量計算ステップによって求められたシフト量に応
    じて仮数部をシフトさせる仮数桁合わせステップと、 仮数桁合わせステップによって仮数部がシフトされる際
    に、シフト後のGの桁よりも右にこぼれる全桁の論理和
    をとってSを求めるスティッキービット生成ステップ
    と、 Mが0であるときに、仮数桁合わせステップによる出力
    をそのまま出力する一方、Mが1であるときに、仮数桁
    合わせステップによる出力を反転させて出力する反転ス
    テップと、 最近値丸め(RN)を行う場合には、L、G、およびS
    の組み合わせ(L,G,S)が、(0,1,1)、
    (1,1,0)、または(1,1,1)であることを判
    別したときに、Mの論理否定を出力し、その他のとき
    に、Mを出力する一方、0方向への丸め(RZ)を行う
    場合には、常にMを出力する増分論理ステップと、 反転ステップによる出力におけるLに対応する桁に、増
    分論理ステップにより出力された値を加算する増分ステ
    ップと、 を備えたことを特徴とする浮動小数点数−整数変換方
    法。
  49. 【請求項49】符号ビットと、指数部と、仮数部とから
    成る浮動小数点数に対して、真の小数点よりも上の桁を
    残す最近値丸め(RN)、0方向への丸め(RZ)、正
    方向への丸め(RP)、および負方向への丸め(RM)
    を行うとともに2の補数化を行って整数に変換する浮動
    小数点数−整数変換方法であって、 上記仮数部における真の小数点のすぐ左の桁の値をLと
    し、真の小数点のすぐ右の桁の値をGとし、Gよりも下
    位の全桁の値の論理和をSとし、符号ビットの値をMと
    すると、 指数部の値に基づいて、Lが所定の桁位置になるように
    仮数部をシフトさせるためのシフト量を求めるシフト量
    計算ステップと、 シフト量計算ステップによって求められたシフト量に応
    じて仮数部をシフトさせる仮数桁合わせステップと、 仮数桁合わせステップによって仮数部がシフトされる際
    に、シフト後のGの桁よりも右にこぼれる全桁の論理和
    をとってSを求めるスティッキービット生成ステップ
    と、 Mが0であるときに、仮数桁合わせステップによる出力
    をそのまま出力する一方、Mが1であるときに、仮数桁
    合わせステップによる出力を反転させて出力する反転ス
    テップと、 最近値丸め(RN)を行う場合には、L、G、およびS
    の組み合わせ(L,G,S)が(0,1,1)、(1,
    1,0)、または(1,1,1)であることを判別した
    ときにMの論理否定を出力する一方、その他のときにM
    を出力し、0方向への丸め(RZ)を行う場合には、常
    にMを出力し、正方向への丸め(RP)を行う場合に
    は、Mが0であればGとSとの論理和を出力する一方、
    Mが1であれば1を出力し、負方向への丸め(RM)を
    行う場合には、Mが0であれば0を出力する一方、Mが
    1であればGとSとの論理和の論理否定を出力する増分
    論理ステップと、 反転ステップによる出力におけるLに対応する桁に、増
    分論理ステップにより出力された値を加算する増分ステ
    ップと、 を備えたことを特徴とする浮動小数点数−整数変換方
    法。
  50. 【請求項50】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)を行う数値丸め方法であっ
    て、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも1桁下位の桁の値をGとし、Gよりも下位の全桁
    の値の論理和をSとすると、 L、G、およびSの組み合わせ(L,G,S)が、
    (0,1,1)、(1,1,0)、または(1,1,
    1)であることを判別して、桁上げ情報を出力する増分
    論理ステップと、 増分論理ステップにより桁上げ情報が出力されたとき
    に、2の補数表現数におけるLの桁に、1を加算する増
    分ステップと、 を備えたことを特徴とする数値丸め方法。
  51. 【請求項51】2の補数表現数に対して所定の桁以上の
    桁を残す0方向への丸め(RZ)を行う数値丸め方法で
    あって、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも下位の全桁の値の論理和をGSとし、2の補数表
    現数の最上位ビットである符号ビットの値をMとする
    と、 M、およびGSの組み合わせ(M,GS)が、(1,
    1)であることを判別して、桁上げ情報を出力する増分
    論理ステップと、 増分論理ステップにより桁上げ情報が出力されたとき
    に、2の補数表現数におけるLの桁に、1を加算する増
    分ステップと、 を備えたことを特徴とする数値丸め方法。
  52. 【請求項52】2の補数表現数に対して所定の桁以上の
    桁を残す正方向への丸め(RP)、および負方向への丸
    め(RM)を行う数値丸め方法であって、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも下位の全桁の値の論理和をGSとすると、 正方向への丸め(RP)を行う場合には、GSを出力す
    る一方、負方向への丸め(RM)を行う場合には、0を
    出力する増分論理ステップと、 2の補数表現数におけるLの桁に、増分論理ステップに
    より出力された値を加算する増分ステップと、 を備えたことを特徴とする数値丸め方法。
  53. 【請求項53】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)、および0方向への丸め
    (RZ)を行う数値丸め方法であって、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも1桁下位の桁の値をGとし、Gよりも下位の全桁
    の値の論理和をSとし、2の補数表現数の最上位ビット
    である符号ビットの値をMとすると、 最近値丸め(RN)を行う場合には、L、G、およびS
    の組み合わせ(L,G,S)が、(0,1,1)、
    (1,1,0)、または(1,1,1)であることを判
    別して、桁上げ情報を出力する一方、0方向への丸め
    (RZ)を行う場合には、M、G、およびSの組み合わ
    せ(M,G,S)が、(1,1,1)、(1,1,
    0)、または(1,0,1)であることを判別して、桁
    上げ情報を出力する増分論理ステップと、 増分論理ステップにより桁上げ情報が出力されたとき
    に、2の補数表現数におけるLの桁に、1を加算する増
    分ステップと、 を備えたことを特徴とする数値丸め方法。
  54. 【請求項54】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)、0方向への丸め(R
    Z)、正方向への丸め(RP)、および負方向への丸め
    (RM)を行う数値丸め方法であって、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも1桁下位の桁の値をGとし、Gよりも下位の全桁
    の値の論理和をSとし、2の補数表現数の最上位ビット
    である符号ビットの値をMとすると、 最近値丸め(RN)を行う場合には、L、G、およびS
    の組み合わせ(L,G,S)が(0,1,1)、(1,
    1,0)、または(1,1,1)であることを判別して
    桁上げ情報を出力し、0方向への丸め(RZ)を行う場
    合には、M、G、およびSの組み合わせ(M,G,S)
    が(1,1,1)、(1,1,0)、または(1,0,
    1)であることを判別して桁上げ情報を出力し、正方向
    への丸め(RP)を行う場合には、G、およびSの組み
    合わせ(G,S)が(1,1)、(1,0)、または
    (0,1)であることを判別して桁上げ情報を出力し、
    負方向への丸め(RM)を行う場合には、常に桁上げ情
    報の出力を抑制する増分論理ステップと、 増分論理ステップにより桁上げ情報が出力されたとき
    に、2の補数表現数におけるLの桁に、1を加算する増
    分ステップと、 を備えたことを特徴とする数値丸め方法。
  55. 【請求項55】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)を行う数値丸め方法であっ
    て、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも1桁下位の桁の値をGとし、Gよりも下位の全桁
    の値の論理和をSとすると、 2の補数表現数におけるGの桁に、1を加算する増分ス
    テップと、 L、G、およびSの組み合わせ(L,G,S)が、
    (0,1,0)であることを判別したときに、増分ステ
    ップによる加算結果におけるLに対応する桁の値L’を
    0にする加算結果修正ステップと、 を備えたことを特徴とする数値丸め方法。
  56. 【請求項56】2の補数表現数に対して所定の桁以上の
    桁を残す最近値丸め(RN)を行う数値丸め方法であっ
    て、 2の補数表現数における上記所定の桁の値をLとし、L
    よりも1桁下位の桁の値をGとし、Gよりも下位の全桁
    の値の論理和をSとすると、 2の補数表現数におけるGの桁に、1を加算する増分ス
    テップと、 増分ステップによる加算結果におけるL、およびGに対
    応する桁の値L’、およびG’と、Sとの組み合わせ
    (L’,G’,S)が、(1,0,0)であることを判
    別したときに、L’を0にする加算結果修正ステップ
    と、 を備えたことを特徴とする数値丸め方法。
JP33700291A 1991-12-19 1991-12-19 数値丸め装置および数値丸め方法 Expired - Fee Related JP3253660B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33700291A JP3253660B2 (ja) 1991-12-19 1991-12-19 数値丸め装置および数値丸め方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33700291A JP3253660B2 (ja) 1991-12-19 1991-12-19 数値丸め装置および数値丸め方法

Publications (2)

Publication Number Publication Date
JPH05173759A true JPH05173759A (ja) 1993-07-13
JP3253660B2 JP3253660B2 (ja) 2002-02-04

Family

ID=18304560

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33700291A Expired - Fee Related JP3253660B2 (ja) 1991-12-19 1991-12-19 数値丸め装置および数値丸め方法

Country Status (1)

Country Link
JP (1) JP3253660B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8874630B2 (en) 2010-11-17 2014-10-28 Samsung Electronics Co., Ltd. Apparatus and method for converting data between a floating-point number and an integer
KR20150079389A (ko) * 2013-12-30 2015-07-08 삼성전자주식회사 부동 소수점 수를 정수로 변환하기 위한 전자 장치 및 시스템, 및 그것의 작동 방법
GB2556645A (en) * 2017-03-24 2018-06-06 Imagination Tech Ltd Floating point to fixed point conversion
GB2560830A (en) * 2017-03-24 2018-09-26 Imagination Tech Ltd Floating point to fixed point conversion
GB2560766A (en) * 2017-03-24 2018-09-26 Imagination Tech Ltd Floating point to fixed point conversion
EP3647939A1 (en) 2018-10-31 2020-05-06 Fujitsu Limited Arithmetic processing apparatus and controlling method therefor

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8874630B2 (en) 2010-11-17 2014-10-28 Samsung Electronics Co., Ltd. Apparatus and method for converting data between a floating-point number and an integer
KR20150079389A (ko) * 2013-12-30 2015-07-08 삼성전자주식회사 부동 소수점 수를 정수로 변환하기 위한 전자 장치 및 시스템, 및 그것의 작동 방법
JP2015127954A (ja) * 2013-12-30 2015-07-09 三星電子株式会社Samsung Electronics Co.,Ltd. 浮動小数点数を整数に変換するための電子装置及びシステム及びその動作方法
GB2556645B (en) * 2017-03-24 2019-04-03 Imagination Tech Ltd Floating point to fixed point conversion
US10558428B2 (en) 2017-03-24 2020-02-11 Imagination Technologies Limited Floating point to fixed point conversion
GB2560766A (en) * 2017-03-24 2018-09-26 Imagination Tech Ltd Floating point to fixed point conversion
GB2560830B (en) * 2017-03-24 2019-04-03 Imagination Tech Ltd Floating point to fixed point conversion
GB2560766B (en) * 2017-03-24 2019-04-03 Imagination Tech Ltd Floating point to fixed point conversion
GB2556645A (en) * 2017-03-24 2018-06-06 Imagination Tech Ltd Floating point to fixed point conversion
US10560115B2 (en) 2017-03-24 2020-02-11 Imagination Technologies Limited Floating point to fixed point conversation using exponent offset
GB2560830A (en) * 2017-03-24 2018-09-26 Imagination Tech Ltd Floating point to fixed point conversion
US11588497B2 (en) 2017-03-24 2023-02-21 Imagination Technologies Limited Floating point to fixed point conversion using exponent offset
US11573766B2 (en) 2017-03-24 2023-02-07 Imagination Technologies Limited Floating point to fixed point conversion
US10691411B2 (en) 2017-03-24 2020-06-23 Imagination Technologies Limited Floating point to fixed point conversion
US10756754B2 (en) 2017-03-24 2020-08-25 Imagination Technologies Limited Floating point to fixed point conversion using exponent offset
US10884702B2 (en) 2017-03-24 2021-01-05 Imagination Technologies Limited Floating point to fixed point conversion
US10886942B2 (en) 2017-03-24 2021-01-05 Imagination Technologies Limited Floating point to fixed point conversion using exponent offset
JP2020071642A (ja) * 2018-10-31 2020-05-07 富士通株式会社 演算処理装置及びその制御方法
EP3647939A1 (en) 2018-10-31 2020-05-06 Fujitsu Limited Arithmetic processing apparatus and controlling method therefor

Also Published As

Publication number Publication date
JP3253660B2 (ja) 2002-02-04

Similar Documents

Publication Publication Date Title
EP0973089B1 (en) Method and apparatus for computing floating point data
KR920005226B1 (ko) 부동 소수점 연산장치
JP4500358B2 (ja) 演算処理装置および演算処理方法
JP2013012203A (ja) 浮動小数点加算器
JP3845009B2 (ja) 積和演算装置、及び積和演算方法
US7720899B2 (en) Arithmetic operation unit, information processing apparatus and arithmetic operation method
US8185570B2 (en) Three-term input floating-point adder-subtractor
KR100203468B1 (ko) 부동소수점수를 위한 산술연산장치
US6175851B1 (en) Fast adder/subtractor for signed floating point numbers
US5260889A (en) Computation of sticky-bit in parallel with partial products in a floating point multiplier unit
KR20020063058A (ko) 덧셈 및 반올림 연산을 동시에 수행하는 부동 소수점alu 연산 장치
JP3253660B2 (ja) 数値丸め装置および数値丸め方法
KR910006143B1 (ko) 부동소수점 연산장치
US20030115236A1 (en) Elimination of rounding step in the short path of a floating point adder
JP2003084969A (ja) 浮動小数点剰余演算器、情報処理装置及びコンピュータプログラム
JPH0635671A (ja) 浮動小数点加減算装置
JP2752564B2 (ja) 先行1予測装置及び浮動小数点加減算装置
JP2856792B2 (ja) 浮動小数点数演算装置
JPH05167456A (ja) 演算回路
JP3245884B2 (ja) シフト加減算装置
JP2558799B2 (ja) 浮動小数点正規化丸め装置
JPH113210A (ja) 3入力比較器、並びにこれを用いた飽和演算装置およびその演算方法
JPH07121353A (ja) 浮動小数点加減算装置
CN116521124A (zh) 一种适用于多种精度浮点运算的向量浮点乘加器
JP3124286B2 (ja) 浮動小数点数演算装置

Legal Events

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