JP3535670B2 - 浮動小数点数の仮数正規化回路 - Google Patents

浮動小数点数の仮数正規化回路

Info

Publication number
JP3535670B2
JP3535670B2 JP25139796A JP25139796A JP3535670B2 JP 3535670 B2 JP3535670 B2 JP 3535670B2 JP 25139796 A JP25139796 A JP 25139796A JP 25139796 A JP25139796 A JP 25139796A JP 3535670 B2 JP3535670 B2 JP 3535670B2
Authority
JP
Japan
Prior art keywords
bit
bits
shifter
shift
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.)
Expired - Fee Related
Application number
JP25139796A
Other languages
English (en)
Other versions
JPH1097410A (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP25139796A priority Critical patent/JP3535670B2/ja
Publication of JPH1097410A publication Critical patent/JPH1097410A/ja
Application granted granted Critical
Publication of JP3535670B2 publication Critical patent/JP3535670B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 【0001】 【発明の属する技術分野】本発明は、浮動小数点数の仮
数を正規化するための回路の改良に関するものである。 【0002】 【従来の技術】情報処理装置では、固定小数点数を正規
化浮動小数点数に変換したり、2つの浮動小数点数の演
算結果に正規化処理を施したりすることが行なわれる。
浮動小数点数の正規化は、仮数のシフトすなわち仮数の
正規化と、該仮数のシフトに応じた指数の調整すなわち
指数の正規化とを意味している。 【0003】従来、プライオリティ・エンコーダと、複
数の左シフタとを備えた仮数正規化回路が知られてい
る。簡単のため8ビット仮数の正規化を例として説明す
れば、プライオリティ・エンコーダは、正規化されるべ
き仮数を表わす入力8ビットA7 ,A6 ,…,A1 ,A
0 のうちの最上位ビットA7 から連続する0値ビットの
数を検出し、この数を表わすようにエンコードされた左
シフト量データを構成する3ビットC2 ,C1 ,C0 を
供給する。また、プライオリティ・エンコーダは、前記
仮数を表わす入力8ビットの全てが0値ビットである場
合にはオールゼロ信号Zを1にセットし、他の場合には
該オールゼロ信号Zを0にリセットする。4ビット左シ
フタは、プライオリティ・エンコーダから供給された左
シフト量データの最上位ビットC2 が1である場合には
前記仮数を表わす入力8ビットを4ビット左シフトして
得た8ビットを2ビット左シフタへ供給し、他の場合に
は前記仮数を表わす入力8ビットをそのまま2ビット左
シフタへ供給する。2ビット左シフタは、プライオリテ
ィ・エンコーダから供給された左シフト量データの次位
ビットC1 が1である場合には4ビット左シフタから供
給された8ビットを2ビット左シフトして得た8ビット
を1ビット左シフタへ供給し、他の場合には4ビット左
シフタから供給された8ビットをそのまま1ビット左シ
フタへ供給する。1ビット左シフタは、プライオリティ
・エンコーダから供給された左シフト量データの最下位
ビットC0 が1である場合には2ビット左シフタから供
給された8ビットを1ビット左シフトして得た8ビット
を出力し、他の場合には2ビット左シフタから供給され
た8ビットをそのまま出力する。1ビット左シフタの出
力8ビットB7 ,B6 ,…,B1 ,B0 は、正規化され
た仮数を表わすものである。つまり、前記仮数を表わす
入力8ビットの中に値1を持つビットが存在する限り、
出力8ビットのうちの最上位ビットB7 は必ず値1を持
つ。なお、プライオリティ・エンコーダから供給された
左シフト量データを構成する3ビットC2 ,C1 ,C0
とオールゼロ信号Zとは、指数正規化回路に与えられ
る。 【0004】 【発明が解決しようとする課題】上記のような従来の仮
数正規化回路は、シフト量データを構成する全てのビッ
トをプライオリティ・エンコーダで決定した後に、正規
化されるべき仮数を表わす入力データに係る複数段のシ
フト処理を開始する構成であったため、最終シフト結果
の出力が遅れるという問題があった。また、プライオリ
ティ・エンコーダの内部構成が複雑であったため、仮数
正規化回路が大規模化するという問題もあった。後者の
問題は、仮数正規化回路の構成トランジスタ数の増大、
レイアウト面積の増大、配線量の増大、消費電力の増大
などの原因となっていた。 【0005】本発明の目的は、半導体集積回路に好適
な、高速かつ小規模の仮数正規化回路を提供することに
ある。 【0006】 【課題を解決するための手段】上記目的を達成するた
め、本発明は、シフト量データを構成する複数のビット
をその最上位ビットから1ビットずつ決定しながら、正
規化されるべき仮数を表わす入力データに係る複数段の
シフト処理を順次開始する構成を採用することとしたも
のである。本発明によれば、各段のシフト結果がシフト
量データの決定に利用される。そして、シフト量データ
を構成する全てのビットが決定されるより早く各段のシ
フト処理が開始するので、従来に比べて正規化処理が高
速化される。しかも、複雑な内部構成を有するプライオ
リティ・エンコーダを必要としないので、仮数正規化回
路の規模が小さくなる。 【0007】しかも、シフト量データの最上位ビットを
決定する際に該シフト量データの次位ビットに係る2つ
の候補を決定し、決定された最上位ビットに応じて両候
補の中から1つを選択するようにしたので、正規化処理
が更に高速化される。 【0008】 【発明の実施の形態】以下、本発明の仮数正規化回路の
具体例について、図面を参照しながら説明する。 【0009】(実施例1)図1は、本発明の第1実施例
に係る仮数正規化回路を示す図である。図1の回路は、
互いに縦続接続された4ビット左シフタ11、2ビット
左シフタ12及び1ビット左シフタ13と、4入力NO
Rゲート21と、5個のインバータ22,24,25,
26,27と、2入力NORゲート23とを備えたもの
である。 【0010】4ビット左シフタ11は、図2に詳細を示
すように、各々2ビットから1ビットを選択するための
8個のセレクタ15で構成されている。個々のセレクタ
15は、2個のCMOSトランスファゲートで構成され
る。図2において、E7 ,E6 ,…,E1 ,E0 は入力
8ビットを、F7 ,F6 ,…,F1 ,F0 は出力8ビッ
トを、S4,XS4は4ビットシフト制御信号をそれぞ
れ表わしている。S4とXS4とは互いに相補な信号で
ある。図2の構成によれば、S4=1かつXS4=0の
場合には、F7 =E3 、F6 =E2 、F5 =E1 、F4
=E0 、F3 =0、F2 =0、F1 =0かつF0 =0と
なる。また、S4=0かつXS4=1の場合には、F7
=E7 、F6 =E6 、F5 =E5 、F4 =E4 、F3 =
E3 、F2 =E2 、F1 =E1 かつF0 =E0 となる。
つまり、図2の4ビット左シフタ11は、4ビットシフ
ト制御信号S4,XS4が活性化された場合には入力8
ビットを4ビット左シフトして得た8ビットを供給し、
他の場合には入力8ビットをそのまま供給するように構
成されている。 【0011】2ビット左シフタ12は、図3に詳細を示
すように、各々2ビットから1ビットを選択するための
8個のセレクタで構成されている。個々のセレクタは、
2個のCMOSトランスファゲートで構成される。図3
において、G7 ,G6 ,…,G1 ,G0 は入力8ビット
を、H7 ,H6 ,…,H1 ,H0 は出力8ビットを、S
2,XS2は2ビットシフト制御信号をそれぞれ表わし
ている。S2とXS2とは互いに相補な信号である。図
3の構成によれば、S2=1かつXS2=0の場合に
は、H7 =G5 、H6 =G4 、H5 =G3 、H4 =G2
、H3 =G1 、H2 =G0 、H1 =0かつH0 =0と
なる。また、S2=0かつXS2=1の場合には、H7
=G7 、H6 =G6 、H5 =G5 、H4 =G4 、H3 =
G3 、H2 =G2 、H1 =G1 かつH0 =G0 となる。
つまり、図3の2ビット左シフタ12は、2ビットシフ
ト制御信号S2,XS2が活性化された場合には入力8
ビットを2ビット左シフトして得た8ビットを供給し、
他の場合には入力8ビットをそのまま供給するように構
成されている。 【0012】1ビット左シフタ13は、図4に詳細を示
すように、各々2ビットから1ビットを選択するための
8個のセレクタで構成されている。個々のセレクタは、
2個のCMOSトランスファゲートで構成される。図4
において、I7 ,I6 ,…,I1 ,I0 は入力8ビット
を、J7 ,J6 ,…,J1 ,J0 は出力8ビットを、S
1,XS1は1ビットシフト制御信号をそれぞれ表わし
ている。S1とXS1とは互いに相補な信号である。図
4の構成によれば、S1=1かつXS1=0の場合に
は、J7 =I6 、J6 =I5 、J5 =I4 、J4 =I3
、J3 =I2 、J2 =I1 、J1 =I0 かつJ0 =0
となる。また、S1=0かつXS1=1の場合には、J
7 =I7 、J6 =I6 、J5 =I5 、J4 =I4 、J3
=I3 、J2=I2 、J1 =I1 かつJ0 =I0 とな
る。つまり、図4の1ビット左シフタ13は、1ビット
シフト制御信号S1,XS1が活性化された場合には入
力8ビットを1ビット左シフトして得た8ビットを供給
し、他の場合には入力8ビットをそのまま供給するよう
に構成されている。 【0013】図1において、A7 ,A6 ,…,A1 ,A
0 は正規化されるべき仮数を表わす入力8ビットを表わ
している。この入力8ビットは、4ビット左シフタ11
に供給される。また、X7 ,X6 ,…,X1 ,X0 は4
ビット左シフタ11から2ビット左シフタ12へ供給さ
れる8ビットを、Y7 ,Y6 ,…,Y1 ,Y0 は2ビッ
ト左シフタ12から1ビット左シフタ13へ供給される
8ビットを、B7 ,B6 ,…,B1 ,B0 は正規化され
た仮数を表わすように1ビット左シフタ13から供給さ
れる出力8ビットをそれぞれ表わしている。つまり、前
記仮数を表わす入力8ビットの中に値1を持つビットが
存在する限り、出力8ビットのうちの最上位ビットB7
は必ず値1を持つこととなる。C2 ,C1 ,C0 は左シ
フト量データを構成する3ビットを、Zはオールゼロ信
号をそれぞれ表わしている。 【0014】4入力NORゲート21は、正規化される
べき仮数を表わす入力8ビットのうちの最上位4ビット
A7 ,A6 ,A5 ,A4 が全て0値ビットである場合に
は左シフト量データの最上位ビットC2 を1にセット
し、他の場合には該最上位ビットC2 を0にリセットす
る。該最上位ビットC2 は、そのまま4ビットシフト制
御信号S4となり、かつインバータ22で反転されて4
ビットシフト制御信号XS4となる。2入力NORゲー
ト23は、4ビット左シフタ11から2ビット左シフタ
12への供給8ビットのうちの最上位2ビットX7 ,X
6 がいずれも0値ビットである場合には左シフト量デー
タの次位ビットC1 を1にセットし、他の場合には該次
位ビットC1 を0にリセットする。該次位ビットC1
は、そのまま2ビットシフト制御信号S2となり、かつ
インバータ24で反転されて2ビットシフト制御信号X
S2となる。インバータ25は、2ビット左シフタ12
から1ビット左シフタ13への供給8ビットのうちの最
上位ビットY7 が0値ビットである場合には左シフト量
データの最下位ビットC0 を1にセットし、他の場合に
は該最下位ビットC0 を0にリセットする。該最下位ビ
ットC0 は、そのまま1ビットシフト制御信号S1とな
り、かつインバータ26で反転されて1ビットシフト制
御信号XS1となる。インバータ27は、出力8ビット
のうちの最上位ビットB7 が0値ビットである場合には
オールゼロ信号Zを1にセットし、他の場合には該オー
ルゼロ信号Zを0にリセットするものである。 【0015】図1の仮数正規化回路によれば、まず、正
規化されるべき仮数を表わす入力8ビットのうちの最上
位4ビットA7 ,A6 ,A5 ,A4 が全て0値ビットで
あるかどうかが4入力NORゲート21により調べられ
る。該4ビットA7 ,A6 ,A5 ,A4 が全て0値ビッ
トである場合には少なくとも4ビットの左シフトが必要
であるので左シフト量データの最上位ビットC2 が1と
され、他の場合には4ビットの左シフトを必要としない
ので該最上位ビットC2 が0とされる。4ビット左シフ
タ11は、C2 =1(したがってS4=1かつXS4=
0)の場合には前記正規化されるべき仮数を表わす入力
8ビットを4ビット左シフトして得た8ビットを2ビッ
ト左シフタ12へ供給し、C2 =0(したがってS4=
0かつXS4=1)の場合には該入力8ビットをそのま
ま2ビット左シフタ12へ供給する。 【0016】次に、4ビット左シフタ11から2ビット
左シフタ12へ供給された8ビットのうちの最上位2ビ
ットX7 ,X6 がいずれも0値ビットであるかどうかが
2入力NORゲート23により調べられる。該2ビット
X7 ,X6 がいずれも0値ビットである場合には少なく
とも2ビットの左シフトが必要であるので左シフト量デ
ータの次位ビットC1 が1とされ、他の場合には2ビッ
トの左シフトを必要としないので該次位ビットC1 が0
とされる。2ビット左シフタ12は、C1 =1(したが
ってS2=1かつXS2=0)の場合には4ビット左シ
フタ11から供給された8ビットを2ビット左シフトし
て得た8ビットを1ビット左シフタ13へ供給し、C1
=0(したがってS2=0かつXS2=1)の場合には
4ビット左シフタ11から供給された8ビットをそのま
ま1ビット左シフタ11へ供給する。 【0017】最後に、2ビット左シフタ12から1ビッ
ト左シフタ13へ供給された8ビットのうちの最上位ビ
ットY7 が0値ビットであるかどうかがインバータ25
により調べられる。該最上位ビットY7 が0値ビットで
ある場合には1ビットの左シフトが必要であるので左シ
フト量データの最下位ビットC0 が1とされ、他の場合
には1ビットの左シフトを必要としないので該最下位ビ
ットC0 が0とされる。1ビット左シフタ13は、C0
=1(したがってS1=1かつXS1=0)の場合には
2ビット左シフタ12から供給された8ビットを1ビッ
ト左シフトして得た8ビットを出力し、C0 =0(した
がってS1=0かつXS1=1)の場合には2ビット左
シフタ12から供給された8ビットをそのまま出力す
る。この出力8ビットのうちの最上位ビットB7 がゼロ
値ビットであることは、入力8ビットA7 ,A6 ,…,
A1 ,A0 の全てがゼロ値ビットであることを意味す
る。そこで、該最上位ビットB7 は、インバータ27に
より反転されてオールゼロ信号Zとされる。 【0018】以上のとおり、本実施例によれば、シフト
量データを構成する3ビットC2 ,C1 ,C0 をその最
上位ビットから1ビットずつ決定しながら、正規化され
るべき仮数を表わす入力8ビットに係る3段のシフト処
理を順次開始する構成を採用したので、シフト量データ
を構成する全てのビットが決定されるより早く各段のシ
フト処理が開始する。したがって、従来に比べて仮数の
正規化処理が高速化される。しかも、複雑な内部構成を
有するプライオリティ・エンコーダを必要としないの
で、仮数正規化回路の規模が小さくなる。なお、左シフ
ト量データを構成する3ビットC2 ,C1 ,C0 と、オ
ールゼロ信号Zとは、不図示の指数正規化回路に与えら
れる。 【0019】(実施例2)図5は、本発明の第2実施例
に係る仮数正規化回路を示す図である。図5の回路は、
互いに縦続接続された4ビット左シフタ11、2ビット
左シフタ12及び1ビット左シフタ13と、4入力NO
Rゲート31と、第1及び第2の2入力NORゲート3
2,33と、6個のインバータ34,36,37,3
8,40,41と、第1及び第2のセレクタ35,39
とを備えたものである。このうち、4ビット左シフタ1
1、2ビット左シフタ12及び1ビット左シフタ13の
各々の内部構成は、図2〜図4に示したものである。第
1及び第2のセレクタ35,39の各々は、2個のCM
OSトランスファゲートで構成される。 【0020】4入力NORゲート31は、正規化される
べき仮数を表わす入力8ビットのうちの最上位4ビット
A7 ,A6 ,A5 ,A4 が全て0値ビットである場合に
は左シフト量データの最上位ビットC2 を1にセット
し、他の場合には該最上位ビットC2 を0にリセットす
る。該最上位ビットC2 は、そのまま4ビットシフト制
御信号S4となり、かつインバータ34で反転されて4
ビットシフト制御信号XS4となる。第1の2入力NO
Rゲート32は、前記正規化されるべき仮数を表わす入
力8ビットのうちの最上位2ビットA7 ,A6 がいずれ
も0値ビットである場合には左シフト量データの次位ビ
ットC1 の候補信号すなわちC1Hを1にセットし、他
の場合には該候補信号C1Hを0にリセットする。第2
の2入力NORゲート33は、前記正規化されるべき仮
数を表わす入力8ビットの下位4ビットのうちの最上位
2ビットA3 ,A2 がいずれも0値ビットである場合に
は左シフト量データの次位ビットC1 の他の候補信号す
なわちC1Lを1にセットし、他の場合には該候補信号
C1Lを0にリセットする。第1のセレクタ35は、C
2 =0(したがってS4=0かつXS4=1)の場合に
は候補信号C1Hを、C2 =1(したがってS4=1か
つXS4=0)の場合には候補信号C1Lをそれぞれ左
シフト量データの次位ビットC1 として選択する。該次
位ビットC1 は、そのまま2ビットシフト制御信号S2
となり、かつインバータ38で反転されて2ビットシフ
ト制御信号XS2となる。インバータ36は、4ビット
左シフタ11から2ビット左シフタ12への供給8ビッ
トのうちの最上位ビットX7 が0値ビットである場合に
は左シフト量データの最下位ビットC0 の候補信号すな
わちC0Hを1にセットし、他の場合には該候補信号C
0Hを0にリセットする。インバータ37は、4ビット
左シフタ11から2ビット左シフタ12への供給8ビッ
トの下位6ビットのうちの最上位ビットX5 が0値ビッ
トである場合には左シフト量データの最下位ビットC0
の他の候補信号すなわちC0Lを1にセットし、他の場
合には該候補信号C0Lを0にリセットする。第2のセ
レクタ39は、C1 =0(したがってS2=0かつXS
2=1)の場合には候補信号C0Hを、C1 =1(した
がってS2=1かつXS2=0)の場合には候補信号C
0Lをそれぞれ左シフト量データの最下位ビットC0 と
して選択する。該最下位ビットC0 は、そのまま1ビッ
トシフト制御信号S1となり、かつインバータ40で反
転されて1ビットシフト制御信号XS1となる。インバ
ータ41は、1ビット左シフタ13の出力8ビットのう
ちの最上位ビットB7 が0値ビットである場合にはオー
ルゼロ信号Zを1にセットし、他の場合には該オールゼ
ロ信号Zを0にリセットするものである。 【0021】図6は、図5の仮数正規化回路のシフト制
御動作を示している。まず、正規化されるべき仮数を表
わす入力8ビットのうちの最上位4ビットA7 ,A6 ,
A5,A4 が全て0値ビットであるかどうかが4入力N
ORゲート31により調べられる。該4ビットA7 ,A
6 ,A5 ,A4 が全て0値ビットである場合には少なく
とも4ビットの左シフトが必要であるので左シフト量デ
ータの最上位ビットC2 が1とされ、他の場合には4ビ
ットの左シフトを必要としないので該最上位ビットC2
が0とされる。これと並行して、前記正規化されるべき
仮数を表わす入力8ビットのうちの最上位2ビットA7
,A6 がいずれも0値ビットであるかどうかが第1の
2入力NORゲート32により、また該入力8ビットの
下位4ビットのうちの最上位2ビットA3 ,A2 がいず
れも0値ビットであるかどうかが第2の2入力NORゲ
ート33によりそれぞれ調べられる。2ビットA7 ,A
6 がいずれも0値ビットである場合には4ビット左シフ
タ11がシフト処理を行なわないときに少なくとも2ビ
ットの左シフトが必要であるので候補信号C1Hが1と
され、他の場合には2ビットの左シフトを必要としない
ので該候補信号C1Hが0とされる。2ビットA3 ,A
2 がいずれも0値ビットである場合には4ビット左シフ
タ11がシフト処理を行なったときに少なくとも2ビッ
トの左シフトが必要であるので候補信号C1Lが1とさ
れ、他の場合には2ビットの左シフトを必要としないの
で該候補信号C1Lが0とされる。以上のようにして、
左シフト量データの最上位ビットC2 と、左シフト量デ
ータの次位ビットC1 に係る2つの候補信号C1H,C
1Lとが決定される(ステップ101)。 【0022】4ビット左シフタ11は、C2 =1(した
がってS4=1かつXS4=0)の場合には前記正規化
されるべき仮数を表わす入力8ビットを4ビット左シフ
トして得た8ビットを2ビット左シフタ12へ供給し、
C2 =0(したがってS4=0かつXS4=1)の場合
には該入力8ビットをそのまま2ビット左シフタ12へ
供給する。一方、第1のセレクタ35は、C2 =0の場
合には候補信号C1Hを、C2 =1の場合には候補信号
C1Lをそれぞれ左シフト量データの次位ビットC1 と
して選択する(ステップ102、103、104)。 【0023】次に、4ビット左シフタ11から2ビット
左シフタ12へ供給された8ビットのうちの最上位ビッ
トX7 が0値ビットであるかどうかがインバータ36に
より、該8ビットの下位6ビットのうちの最上位ビット
X5 が0値ビットであるかどうかがインバータ37によ
りそれぞれ調べられる。ビットX7 が0値ビットである
場合には2ビット左シフタ12がシフト処理を行なわな
いときに1ビットの左シフトが必要であるので候補信号
C0Hが1とされ、他の場合には1ビットの左シフトを
必要としないので該候補信号C0Hが0とされる。ビッ
トX5 が0値ビットである場合には2ビット左シフタ1
2がシフト処理を行なったときに1ビットの左シフトが
必要であるので候補信号C0Lが1とされ、他の場合に
は1ビットの左シフトを必要としないので該候補信号C
0Lが0とされる。以上のようにして、左シフト量デー
タの最下位ビットC0 に係る2つの候補信号C0H,C
0Lが決定される(ステップ105)。 【0024】2ビット左シフタ12は、C1 =1(した
がってS2=1かつXS2=0)の場合には4ビット左
シフタ11から供給された8ビットを2ビット左シフト
して得た8ビットを1ビット左シフタ13へ供給し、C
1 =0(したがってS2=0かつXS2=1)の場合に
は4ビット左シフタ11から供給された8ビットをその
まま1ビット左シフタ11へ供給する。一方、第2のセ
レクタ36は、C1 =0の場合には候補信号C0Hを、
C1 =1の場合には候補信号C0Lをそれぞれ左シフト
量データの最下位ビットC0 として選択する(ステップ
106、107、108)。 【0025】最後に、1ビット左シフタ13は、C0 =
1(したがってS1=1かつXS1=0)の場合には2
ビット左シフタ12から供給された8ビットを1ビット
左シフトして得た8ビットを出力し、C0 =0(したが
ってS1=0かつXS1=1)の場合には2ビット左シ
フタ12から供給された8ビットをそのまま出力する。
この出力8ビットのうちの最上位ビットB7 は、インバ
ータ41により反転されてオールゼロ信号Zとされる
(ステップ109)。 【0026】以上のとおり、本実施例によれば、シフト
量データを構成する3ビットC2 ,C1 ,C0 をその最
上位ビットから1ビットずつ決定しながら、正規化され
るべき仮数を表わす入力8ビットに係る3段のシフト処
理を順次開始する構成を採用したので、シフト量データ
を構成する全てのビットが決定されるより早く各段のシ
フト処理が開始する。したがって、従来に比べて仮数の
正規化処理が高速化される。しかも、正規化されるべき
仮数を表わす入力8ビットからシフト量データの最上位
ビットC2 と、シフト量データの次位ビットC1 に係る
2つの候補とを決定し、決定された最上位ビットC2 に
応じて両候補の中から1つを選択するようにし、また4
ビット左シフタ11から2ビット左シフタ12への供給
8ビットからシフト量データの最下位ビットC0 に係る
2つの候補を決定し、選択された次位ビットC1 に応じ
て両候補の中から1つを選択するようにしたので、仮数
の正規化処理が更に高速化される。また、複雑な内部構
成を有するプライオリティ・エンコーダを必要としない
ので、仮数正規化回路の規模が小さくなる。なお、左シ
フト量データを構成する3ビットC2 ,C1 ,C0 と、
オールゼロ信号Zとは、不図示の指数正規化回路に与え
られる。 【0027】さて、上記第1及び第2実施例では正規化
されるべき仮数を表わす入力データが8ビットで構成さ
れるものとしたが、本発明はこのビット数に限定される
ものではない。例えば、16ビット仮数の場合には、図
1中の4ビット左シフタ11、2ビット左シフタ12及
び1ビット左シフタ13の各々の入出力ビット数を16
に変更し、かつ4ビット左シフタ11の前段に16ビッ
ト入出力の8ビット左シフタと、8入力NORゲート
と、インバータとを付加すればよい。また、4ビット仮
数の場合には、図1中の4ビット左シフタ11、4入力
NORゲート21及びインバータ22の配設を省略し、
かつ2ビット左シフタ12及び1ビット左シフタ13の
各々の入出力ビット数を4に変更すればよい。図5の仮
数正規化回路の変更も容易である。 【0028】また、本発明は、2の冪乗ビットの左シフ
タの多段構造に限定されるものではない。例えば、16
ビット仮数の正規化のために左シフタの2段構造を採用
することが可能である。この場合、各段の左シフタは、
各々4ビットから1ビットを選択するための16個のセ
レクタで構成される。個々のセレクタは、例えば4個の
CMOSトランスファゲートで構成される。初段左シフ
タは12ビット、8ビット、4ビット及び0ビットの左
シフトを実現し、2段目左シフタは3ビット、2ビッ
ト、1ビット及び0ビットの左シフトを実現する。この
ような左シフタの2段構造によっても、15ビットから
0ビットまでの任意の量の左シフトを実現できる。ただ
し、個々の左シフタの内部構成に応じてシフト制御回路
の論理ゲート構成が変更される。 【0029】また、上記第1及び第2実施例は、入力仮
数の最上位ビットから連続する0値ビットの数で表わさ
れる量の該入力仮数の左シフトを実現するものであっ
た。これらの実施例は、入力仮数の最上位ビットから連
続する1値ビットの数で表わされる量の左シフトを実現
するように容易に変更できる。 【0030】 【発明の効果】以上説明してきたとおり、本発明によれ
ば、シフト量データを構成する複数のビットをその最上
位ビットから1ビットずつ決定しながら、正規化される
べき仮数を表わす入力データに係る複数段のシフト処理
を順次開始する構成を採用したので、高速かつ小規模の
仮数正規化回路を実現できる。
【図面の簡単な説明】 【図1】本発明の第1実施例に係る仮数正規化回路の構
成を示す回路図である。 【図2】図1中の4ビット左シフタの内部構成を示す回
路図である。 【図3】図1中の2ビット左シフタの内部構成を示す回
路図である。 【図4】図1中の1ビット左シフタの内部構成を示す回
路図である。 【図5】本発明の第2実施例に係る仮数正規化回路の構
成を示す回路図である。 【図6】図5の仮数正規化回路のシフト制御動作を示す
フローチャート図である。 【符号の説明】 11 4ビット左シフタ 12 2ビット左シフタ 13 1ビット左シフタ 15 セレクタ 21 4入力NORゲート 22,24〜27 インバータ 23 2入力NORゲート 31 4入力NORゲート 32,33 2入力NORゲート 34,36〜38,40,41 インバータ 35,39 セレクタ A7 ,A6 ,…,A1 ,A0 入力データ B7 ,B6 ,…,B1 ,B0 出力データ C2 ,C1 ,C0 左シフト量データ C1H,C1L,C0H,C0L 候補信号 S4,XS4 4ビットシフト制御信号 S2,XS2 2ビットシフト制御信号 S1,XS1 1ビットシフト制御信号 Z オールゼロ信号

Claims (1)

  1. (57)【特許請求の範囲】 【請求項1】 浮動小数点数の仮数を正規化するための
    回路であって、 互いに縦続接続され、かつ各々シフト制御信号に応じ
    て、与えられたデータに所定量のシフト処理を施して得
    たデータを次段へ供給する動作と、前記与えられたデー
    タをそのまま次段へ供給する動作とを切り替えるように
    構成された複数段のシフタと、 正規化されるべき仮数を表わす入力データを前記複数段
    のシフタのうちの初段シフタに供給するための手段と、 前記初段シフタへの供給データに基づいて該初段シフタ
    のシフト制御信号を生成するための手段と、 前記初段シフタへの供給データに基づいて2段目シフタ
    のシフト制御信号に係る2つの候補を決定し、かつ前記
    生成された初段シフタのシフト制御信号に基づいて前記
    2段目シフタのシフト制御信号に係る2つの候補の中か
    ら1つを選択するための手段と、 前記初段シフタ以降の各段シフタからその各々の次段シ
    フタへの供給データに基づいて その各々の次次段シフタのシフト制御信号に係る2つの
    候補を決定し、かつ決定された前記次段シフタの各々の
    シフト制御信号に基づいて前記次次段シフタの各々のシ
    フト制御信号に係る2つの候補の中から1つを選択する
    ための手段とを備え、 前記複数段のシフタのうちの最終段シフタから仮数の正
    規化結果が得られるようにしたことを特徴とする仮数正
    規化回路。
JP25139796A 1996-09-24 1996-09-24 浮動小数点数の仮数正規化回路 Expired - Fee Related JP3535670B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25139796A JP3535670B2 (ja) 1996-09-24 1996-09-24 浮動小数点数の仮数正規化回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25139796A JP3535670B2 (ja) 1996-09-24 1996-09-24 浮動小数点数の仮数正規化回路

Publications (2)

Publication Number Publication Date
JPH1097410A JPH1097410A (ja) 1998-04-14
JP3535670B2 true JP3535670B2 (ja) 2004-06-07

Family

ID=17222243

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25139796A Expired - Fee Related JP3535670B2 (ja) 1996-09-24 1996-09-24 浮動小数点数の仮数正規化回路

Country Status (1)

Country Link
JP (1) JP3535670B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116414345A (zh) * 2021-12-29 2023-07-11 腾讯科技(深圳)有限公司 多输入浮点数处理方法、装置、处理器及计算机设备

Also Published As

Publication number Publication date
JPH1097410A (ja) 1998-04-14

Similar Documents

Publication Publication Date Title
US6243808B1 (en) Digital data bit order conversion using universal switch matrix comprising rows of bit swapping selector groups
JPH06236252A (ja) 浮動小数点数の仮数部の先行ゼロの数を検出する先行ゼロ2段及び多段検出ユニット、浮動小数点左シフト仮数正規化ユニット及び先行ゼロの数を検出する方法
US6510446B1 (en) Floating point calculation method and unit efficiently representing floating point data as integer and semiconductor integrated circuit device provided with the same
US5367477A (en) Method and apparatus for performing parallel zero detection in a data processing system
US5721809A (en) Maximum value selector
JPS588009B2 (ja) デイジタル乗算器
US5517437A (en) Alpha blending calculator
US5671166A (en) Barrel shifter for combining pieces of data into a piece of combined data and shifting the combined data
US4617641A (en) Operation unit for floating point data having a variable length exponent part
US5303175A (en) Floating point arithmetic unit
US6715066B1 (en) System and method for arranging bits of a data word in accordance with a mask
US6877019B2 (en) Barrel shifter
EP0543517B1 (en) A circuit detecting the position of an extreme "1" bit in a binary number
WO1999066423A1 (fr) Dispositif pour calcul de donnees
US5841683A (en) Least significant bit and guard bit extractor
JPH08161149A (ja) シフト装置
JP3535670B2 (ja) 浮動小数点数の仮数正規化回路
US4823300A (en) Performing binary multiplication using minimal path algorithm
EP0361886B1 (en) Improved floating point computation unit
US6629239B1 (en) System and method for unpacking and merging bits of a data world in accordance with bits of a mask word
US6076098A (en) Adder for generating sum and sum plus one in parallel
JPS622328B2 (ja)
US6317771B1 (en) Method and apparatus for performing digital division
KR100621968B1 (ko) 스티키 비트값 예측 회로 및 이것을 구비한 반도체 장치
JP2518973B2 (ja) 丸め機能付加算器およびこれを用いた乗算器

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040309

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040312

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees