JPS63266526A - 精度変換装置 - Google Patents

精度変換装置

Info

Publication number
JPS63266526A
JPS63266526A JP62101081A JP10108187A JPS63266526A JP S63266526 A JPS63266526 A JP S63266526A JP 62101081 A JP62101081 A JP 62101081A JP 10108187 A JP10108187 A JP 10108187A JP S63266526 A JPS63266526 A JP S63266526A
Authority
JP
Japan
Prior art keywords
real number
precision
circuit
exponent
shifter
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.)
Pending
Application number
JP62101081A
Other languages
English (en)
Inventor
Masao Sasaki
正男 佐々木
Hidetoshi Shimura
志村 英年
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.)
Fujitsu Ltd
Fujitsu Micom System Co Ltd
Original Assignee
Fujitsu Ltd
Fujitsu Micom System 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 Fujitsu Ltd, Fujitsu Micom System Co Ltd filed Critical Fujitsu Ltd
Priority to JP62101081A priority Critical patent/JPS63266526A/ja
Publication of JPS63266526A publication Critical patent/JPS63266526A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 本発明は精度変換装置であって、中央処理装置が出力す
る精度の異なる実数および整数を、シフタと指数変換回
路とデータ検査回路と隠れビット生成回路とにより浮動
小数点演算装置で用いる精度の実数に変換して、高速の
精度変換を行なう。
〔産業上の利用分野〕
本発明は精度変換装置に関し、中央処理装置(CPLJ
)より供給される実数および整数を浮動小数点演算装置
で用いる実数に精度変換する装置に関する。
CPUの数値演算能力を補うコー・プロセッサとして浮
動小数点演算装置(FPU)がある。
CPUの出力する浮動小数点形式の実数は単精度又は倍
精度で表わされている。IEEE<  I  n5ti
tute  of  E  1ectrical  a
nd  E  1ectronicsE nginee
rs) 754の規格では、単精度実数は第8図(A)
に示す如く、1ビツトの符号、8ビツトの指数部、23
ビツトの仮数部により32ピツ8で構成され、倍精度実
数は同図(B)に示す如く、1ビツトの符号、11ビツ
トの指数部、52ビツトの仮数部により64ビツトで構
成されている。上記の指数部は単精度で十進数rl 2
7J 。
倍精度で十進数r1023Jのオフセットが加えられて
おり、仮数部は最上位ビットをvlvとして、これを予
め除去した所謂けち表現である。
これに対して、FPUにおける実数は例えば1ビツトの
符号、オフセットが十進数r16383Jの15ビツト
の指数部、けち表現をしない64ビツトの仮数部により
80ビツトで構成され、FPU内部における高精度の演
算を可能としている。
従ってcpu、FPU間で実数を転送する場合には、精
度変換を行なう必要がある。
〔従来の技術〕
従来はFPU内のソフトウェアによって、CPUから転
送される実数および整数をFPUの精度の実数に変換し
、またCPUへ転送する実数を単精度又は倍精度の実数
や整数に変換していた。
〔発明が解決しようとする問題点〕
従来においては実数の精度変換をFPU内のソフトウェ
アによって行なっているため、精度変換に要する時間が
長くなり、FPUにおける演算速度が高速であっても上
記精度変換時間がネックとなって、FPUの性能が見掛
は上低下してしまうという問題点があった。
本発明は上記の点に鑑みてなされたものであり、精度変
換を高速に行なう精度変換装置を提供することを目的と
する。
〔問題点を解決するための手段〕
第1図は本発明の原理ブロック図を示す。
同図中、CPU10が出力する単精度1倍精度等の精度
の異なる浮動小数点形式の実数および整数はシフタ11
に供給され、ここで上記実数の符号、指数部、仮数部夫
々および整数がシフトされてFPU15で用いる精度の
浮動小数点形式の実数が得られる。
単精度1倍精度夫々の実数は夫々の指数部のオフセット
が異なっており、指数変換回路12はシフタ11で得ら
れた実数の指数部の値を、FPU15で用いる精度の実
数の指数部に応じたオフセットを加えた値に変換する。
また整数の指数に相当する指数部を作成する。
データ検査回路13はシフタ11で得られた実数の仮数
部の値及び指数変換回路12で変換された指数部の値に
より、上記CPL110から供給された実数が非数、無
限大、非正規化数、零、正規化数のうちのどのタイプで
あるかを検出する。
隠れビット生成回路14はシフタ11で得られた実数の
仮数部の最上位ビットを生成する。これはCPU10が
単精度1倍精度の実数の指数部の最上位ビットをけち表
現のため出力していないためである。
上記シフタ11、指数変換回路12、隠れビット生成回
路14で得られた実数と、データ検査回路13で得られ
た検出信号とがFPtJ15に供給される。
〔作用〕
本発明においては、CPU10より供給される実数およ
び整数がシフタ11、指数変換回路12、隠れビット生
成回路14のハードウェアによって高速にFPU15で
用いる精度の実数に変換され、またハードウェアのデー
タ検査回路13によって変換された実数のタイプが検査
され、FPU15は変換された実数や整数の供給と同時
に演算動作を開始することかできる。
〔実施例〕
第2図は本発明の精度変換装置に用いられるシフタ11
の一実施例の回路図を示す。
第2図は単精度実数のシフト部分についてのみを示して
おり、端子20a〜20pはCPU10の16ビツトの
データバスに接続されている。また、端子21.22に
ゲートが接続されたトランジスタによりマトリクス回路
が構成されている。
端子20a〜20pに単精度実数の第19−ド(16ビ
ツト)が供給されるとき、端子21にFPL115より
Hレベルの制御信号が供給され、この端子21にゲート
が接続された全トランジスタのみが導通する。これによ
って端子20aに入来する1ビツトの符号がレジスタ2
3の符号部23aに供給格納され、端子20b〜20i
に入来する8ビツトの指数部が指数変換回路12に供給
されて、端子20j〜20pに入来する仮数部の上位7
ビツトが仮数部23cの最上位ピット(MSB)の次の
上位7ビツトに供給格納される。
また、単精度実数の第2ワードが供給されるとき、端子
22にHレベルの制御信号が供給され、端子22にゲー
トが接続された全トランジスタのみが導通する。これに
よって端子20a〜20pに入来する仮数部の下位16
ビツトがレジスタ23の仮数部23cの上位8ビツトよ
り下位の16ビツトに供給格納される。
倍精度シフト部も同様の構成であり、倍精度実数の第1
ワードのうち1ビツトの符号が符号部23aに格納され
、11ビツトの指数部が指数変換回路12に供給されて
残りの4ビツト及び第2〜第4ワードが仮数部23cの
MSBの次の52ビツトに格納される。
第3図は指数変換回路12の一実施例の回路図を示す。
第3図中、端子30a〜30oはシフタ11のマトリク
ス回路に接続され、端子318〜31゜は端子31aを
上位側としてレジスタ23の指数部に接続されている。
端子32a〜32eにはFPU15より制御信号が入来
する。
cpuioより倍精度実数が供給されるとき11ビツト
の指数部は端子30e〜300に供給され、端子30a
〜30dは7o7とされる。また端子32bがHレベル
とされる。これによってトランジスタ33a〜33gの
うち33b、33d〜33Qが導通し、端子31aより
端子30eの値がそのまま出力され、端子31b〜31
eより端子30eの値を反転した値が出力され、端子3
1f〜310夫々からは端子30f〜30o夫々の値が
そのまま出力される。これによって十進数r1023J
のオフセットを加えられた倍精度実数の指数部が+進数
r16383Jのオフセットを加えられた15ビツトの
指数部に変換され、レジスタ23の指数部23bに供給
格納される。
CPU10より単精度実数が供給されるとき8ビツトの
指数部は端子30h〜30oに供給され、端子30a〜
30Qはf Q fとされる。また端子32dがHレベ
ルとされる。これによってトランジスタ34a〜34j
のうち34b、34d’〜34jが導通し、端子31a
より端子30hの値がそのまま出力され、端子31b〜
31hより端子30hの値を反転した値が出力され、端
子31i〜310夫々からは端子301〜300夫々の
値がそのまま出力される。これによって十進数r127
Jのオフセットを加えられた単精度実数の指数部が十進
数N 6383Jのオフセットを加えられた15ビツト
の指数部に変換され、レジスタ23の指数部23bに供
給格納される。
また、CPU10より整数が供給されるときは端子30
a〜300はY Q Wで、端子32eがHレベルとな
る。これによって端子32eにゲートが接続された全ト
ランジスタ35a〜35oが導通し、端子31a〜31
0G、tv10000000111110’となって、
指数の値が寸進数でオフセットr16383Jを除くと
「64」を表わす。
第4図はデータ検査回路13の一実施例の回路図を示す
第4図において、端子411〜4115にはレジスタ2
3の指数部23bの15ビツトが夫々入来し、アンド回
路43に供給されると共に、アンド回路44に反転され
て供給される。アンド回路43は指数部が全てvlvの
ときvlvを出力し、アンド回路44は指数部が全て7
07のとき71?を出力する。
また、端子422〜4264にはレジスタ23の仮数部
23cのMSBを除く63ビツトが夫々入来し、反転さ
れてアンド回路45に供給される。
上記仮数部23cのMSBはけち表現のためvlvであ
るとみなす。アンド回路45は仮数部が全てv □ v
のときvlvを出力する。
アンド回路46はアンド回路43出力とアンド回路45
出力の反転信号とより、レジスタ23に格納された実数
が非数であるとき717を生成する。アンド回路47は
アンド回路43.45夫々の出力より、レジスタ23の
実数が無限大であるとき717を生成する。
アンド回路48はアンド回路44出力とアンド回路45
出力の反転信号とより、レジスタ23の実数が非正規化
数であるとき117を生成する。
アンド回路49はアンド回路44.45夫々の出力より
、レジスタ23の実数が君であるときv17を生成する
。アンド回路50はアンド回路43.44夫々の出力の
反転信号より、レジスタ23の実数が正規化数であると
きvlvを生成する。
上記アンド回路46〜50夫々の出力するデータのタイ
プを検出した信号は端子51a〜51eよりFPtJ1
5に供給される。
第5図は隨れビット生成回路14の一実施例の回路図を
示す。
第5図において、端子60aには、レジスタ23の仮数
部23cのMSBが入来し、端子60bにはCPU10
より、けち表現のときHレベルでけち表現でないときL
レベルのフォーマット信号が入来する。なお、CPU1
0は単精度及び倍精度の実数をけち表現するが、拡張精
度の実数(符号1ビツト、指数部15ビツト、仮数部6
4ビツト)をけち表現していない。
また、端子60c、60d夫々には第4図の端子51c
、51d夫々より非正規化数、震央々でHレベルの信号
が供給される。アンド回路61はけち表現でないときの
み仮数部23cのMSBを出力する。ノア回路62は非
正規化数又は零のときLレベルを出力し、アンド回路6
3はけち表現で、かつ無限大、非数、正規化数のときl
il’1’の隠れビットを生成する。
オア回路64はアンド回路61又は63の出力する値を
取り出して端子65より出力する。この端子65の出力
ビットはレジスタ23の仮数部23cのMSBに書き込
まれる。
この後、レジスタ23の実数がデータ検査回路13の出
力する信号と共にFPU15に供給され、FPU15で
浮動小数点演算が行なわれる。
上記のシフタ11、指数変換回路12、データ検査回路
13及び隠れビット生成回路14は全てハードウェアで
構成されているため、CPU10より転送される実数お
よび整数が高速にFPtJ15の精度に変換される。ま
た、データのタイプが検査されてFPU15に供給され
るのでFPU15は実数が供給されると同時に実数のタ
イプに応じた演算動作を開始でき高速動作が可能となる
FPU15からCPU10へ実数を転送する際の精度変
換は第6図に示す装置で行なわれる。
第6図において、FPU15の出力する実数が1ビツト
の符号、15ビツトの指数部、64ビツトの仮数部で構
成される場合、この実数の指数部はデータ検査回路16
に供給され、ここでオーバーフロー、アンダーフローの
検査が行なわれる。
その検査結果はFPU15に供給される。
データ検査回路16を通った後、15ビツトの指数部は
指数変換回路17に供給されて、CPU10に転送する
精度(単精度文は倍精度の実数および整数)に応じた指
数部の値のオフセットの変換が行なわれる。
この後、指数部及び仮数部はシフタ18でシフトされ、
CPU10に転送する精度(単精度又は倍精度の実数お
よび整数)に応じてワード単位で順次cpuioに転送
される。
第7図はデータ検査回路16の一実施例の回路図を示す
第7図において、CPU10に転送する実数の精度が単
精度のとき端子70a〜70g夫々に15ビツトの指数
部の上位7ビツトが入来し、倍精度のとき端子70a〜
70d夫々に指数部の上位4ビツトが入来する。
アンド回路71は端子70aの値と端子70b〜70g
(又は70b〜70d)夫々の反転した値とより、FP
U15が出力する実数をCPU10が必要とする単精度
(又は倍精度)に変換したときのオーバーフロー発生時
に707を生成する。
アンド回路72は端子70aの反転した値と端子70b
〜70q(又は70b〜70d)夫々の値とより、FP
U15が出力する実数なCPU10が必要とする単精度
(又は倍精度)に変換したときのアンダーフロー発生時
に70vを生成する。
オア回路73は上記アンド回路71.72夫々の反転し
た値によりオーバーフロー又はアンダーフローの発生時
にvlyを生成し、この信号をデータ検査結果として端
子74よりFPU15に供給する。
FPU15t;t7”−’l検査回路16より’1’を
供給されると、CPU10に転送する実数を例えオーバ
ーフローのときは無限大、アンダーフローのときは零等
の所定の値に変更する。
指数変換回路17は第3図に示す指数変換回路12と同
一構成である。
同図中、端子31a〜310にはFPU15より端子3
1aを上位側として15ビツトの指数部が夫々供給され
ている。
CPU10に倍精度実数を転送するとき、FPU15に
より端子32aがHレベルとされ、トランジスタ33a
〜33Qのうち33aが導通し、端子30eより端子3
1aの値がそのまま出力され、端子30f〜30oより
端子31f〜31゜の値がそのまま出力される。これに
よって十進数rl 6383Jのオフセットを加えられ
た15ビツトの指数部が十進数r1023Jのオフセッ
トを加えられた倍精度実数の11ビツトの指数部に変換
される。
cpuioに単精度実数を転送するとき、FPLJ15
により端子32cがHレベルとされ、トランジスタ34
8〜34jのうち34aが導通し、端子30hより端子
31aの値がそのまま出力され、端子30i〜300よ
り端子31i〜310の値がそのまま出力される。
これによって、十進数r16383Jのオフセットを加
えられた15ビツトの指数部が十進数N27Jのオフセ
ットを加えられた単精度実数の8ビツトの指数部に変換
される。
シフタ18は第2図に示すシフタ11と略同−構成であ
り、図中、指数変換回路12の代りに指数変換回路17
を用いている。
第2図中、レジスタ23にはFPU15が出力する全8
0ビツトの実数が格納されている。
CPLlloに単精度実数を転送するとき、端子21に
FPU15よりHレベルの制御信号が供給され、この端
子21にゲートが接続された全トランジスタのみが導通
する。これによってレジスタ23の符号部23aより出
力される1ビツトの符号が端子20aより出力され、指
数変換回路17の出力する8ビツトの指数部が端子20
b〜20iより出力され、仮数部23CのMSBの次の
上位7ビツトが端子20j〜20pより出力され、CP
U10の16ビツトのデータバスに送出される。
次に、端子22にHレベルの制御信号が供給され、端子
22にゲートが接続された全トランジスタのみが導通す
る。これによって仮数部23cの上位8ビツトの次の1
6ビツトが端子20a〜20pより出力される。
倍精度シフト部も同様であり、まず符号部23aの出力
する符号、指数変換回路17の出力する11ビツトの指
数部、仮数部23cのMSBの次の上位4ビツトが第1
ワードとして端子20a〜20Dより出力され、仮数部
23cの上位5ビツトの次の48ビツトがワード単位で
端子20a〜2C1より順次出力される。
ここで仮数部23CのMSBをデータバスに送出しない
のは、CPU14における単精度2倍精度の実数はけち
表現する必要があるからである。
上記のデータ検査回路16、指数変換回路17及びシフ
タ18は全てハードウェアで構成されているため、FP
LJ15より転送される実数が高速にCPU10で要求
される精度に変換される。
〔発明の効果〕
上述の如く、本発明の精度変換装置によれば、中央処理
装置が出力する異なる精度の実数および整数はハードウ
ェアによって高速に浮動小数点演算装置が用いる精度の
実数に変換され、浮動小数点演算の高速化が可能となり
、実用上きわめて有用である。
【図面の簡単な説明】
第1図は本発明装置の原理ブロック図、第2図はシフタ
の一実施例の回路図、 第3図は指数変換回路の一実施例の回路図、第4図はC
PUから供給される実数のデータ検査回路の一実施例の
回路図、 第5図は隠れビット生成回路の一実施例の回路図、 第6図はFPUから供給される実数の精度変換装置の一
実施例のブロック系統図、 第7図はFPUから供給される実数のデータ検査回路の
一実施例の回路図。 第8図は単精度1倍精度夫々の実数を説明するための図
である。 図面中、 10はCPIJ。 11.18はシフタ、 12.17は指数変換回路、 13.16はデータ検査回路、 14は隠れビット生成回路、 15はFPUである。 第4図 ア諏トイしビ゛7F8:妓く丘qx祠n回藤わ1第5図

Claims (1)

  1. 【特許請求の範囲】 中央処理装置(10)より精度及び指数部のオフセット
    の異なる浮動小数点形式の実数および整数を供給され、
    供給された実数および整数の精度に応じて該供給された
    実数の符号、指数部、仮数部夫々および整数をシフトし
    て浮動小数点演算装置(15)で用いる精度の浮動小数
    点形式の実数を得るシフタ(11)と、 該シフタ(11)で得られた実数の指数部の値を該浮動
    小数点演算装置(15)で用いる指数部のオフセットの
    加えられた値に変換し、また整数に相当する指数部を作
    成する指数変換回路(12)と、 該シフタ(11)で得られた実数の仮数部の値及び指数
    変換回路(12)で変換された指数部の値より、該中央
    処理装置(10)から供給された実数のタイプを検出す
    るデータ検査回路(13)と、 該シフタ(11)で得られた実数の仮数部の最上位ビッ
    トを生成する隠れビット生成回路(14)とを有し、 該シフタ(11)、指数変換回路(12)、隠れビット
    生成回路(14)で得られた実数と、該データ検査回路
    (13)で得られた検出信号とを該浮動小数点演算回路
    (15)に供給することを特徴とする精度変換装置。
JP62101081A 1987-04-23 1987-04-23 精度変換装置 Pending JPS63266526A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62101081A JPS63266526A (ja) 1987-04-23 1987-04-23 精度変換装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62101081A JPS63266526A (ja) 1987-04-23 1987-04-23 精度変換装置

Publications (1)

Publication Number Publication Date
JPS63266526A true JPS63266526A (ja) 1988-11-02

Family

ID=14291150

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62101081A Pending JPS63266526A (ja) 1987-04-23 1987-04-23 精度変換装置

Country Status (1)

Country Link
JP (1) JPS63266526A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994006075A1 (en) * 1992-08-31 1994-03-17 Fujitsu Limited Method and apparatus for non-numeric character discrimination
JP2006154979A (ja) * 2004-11-25 2006-06-15 Sony Corp 浮動小数点数演算回路

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994006075A1 (en) * 1992-08-31 1994-03-17 Fujitsu Limited Method and apparatus for non-numeric character discrimination
US5481489A (en) * 1992-08-31 1996-01-02 Fujitsu Limited Method of and apparatus for discriminating NaN
JP2006154979A (ja) * 2004-11-25 2006-06-15 Sony Corp 浮動小数点数演算回路

Similar Documents

Publication Publication Date Title
EP0127988B1 (en) A normalizing circuit
US5469377A (en) Floating point computing device for simplifying procedures accompanying addition or subtraction by detecting whether all of the bits of the digits of the mantissa are 0 or 1
EP0381403B1 (en) Pipelined floating point adder for digital computer
JPS6159914A (ja) デイジタル圧縮装置
US5111421A (en) System for performing addition and subtraction of signed magnitude floating point binary numbers
US6199089B1 (en) Floating point arithmetic logic unit rounding using at least one least significant bit
US6205462B1 (en) Digital multiply-accumulate circuit that can operate on both integer and floating point numbers simultaneously
US5337265A (en) Apparatus for executing add/sub operations between IEEE standard floating-point numbers
US4924421A (en) Priority encoding system
JPS63266526A (ja) 精度変換装置
KR920003493B1 (ko) 부동 소숫점 표기를 기초로 하는 연산회로
US5754458A (en) Trailing bit anticipator
JPS63266527A (ja) 精度変換装置
JP2507183B2 (ja) 浮動小数点加減算装置
US5304994A (en) Minimal delay leading one detector with result bias control
SU1361542A1 (ru) Устройство дл округлени суммы и разности двоично-кодированных чисел с плавающей зап той
JPH0216632A (ja) 固定小数点数−浮動小数点数変換回路
KR100252766B1 (ko) 고속으로 동작하는 스티키 신호 생성기
JP3187402B2 (ja) 浮動小数点データ加減算回路
JP3137131B2 (ja) 浮動小数点乗算器及び乗算方法
JP2801472B2 (ja) 浮動小数点演算装置
JPS6298425A (ja) 算術シフタ回路
JPH0383126A (ja) 浮動小数点乗算器
US5948049A (en) Normalization circuitry
SU1339549A1 (ru) Устройство дл округлени суммы и разности двоичнокодированных чисел с плавающей зап той