JPS63229521A - シフト回路 - Google Patents

シフト回路

Info

Publication number
JPS63229521A
JPS63229521A JP62064525A JP6452587A JPS63229521A JP S63229521 A JPS63229521 A JP S63229521A JP 62064525 A JP62064525 A JP 62064525A JP 6452587 A JP6452587 A JP 6452587A JP S63229521 A JPS63229521 A JP S63229521A
Authority
JP
Japan
Prior art keywords
bit
bits
shift
data
sticky
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
JP62064525A
Other languages
English (en)
Inventor
Katsuhiko Ueda
勝彦 上田
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 JP62064525A priority Critical patent/JPS63229521A/ja
Publication of JPS63229521A publication Critical patent/JPS63229521A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、シフト回路、特にその浮動小数点データ仮数
部のシフト及びスティッキビット生成に関するものであ
る。
従来の技術 IEEE  P2S5  の規定に基づいて浮動小数点
演算を行なうにはGuard Bit (以下Gビット
と略す) 、 Round bit (以下Rビットと
略す)、5ticky  Bit (以下Sビットと略
す)を求める必要がある。
この3ビツトを考慮した従来のシフト回路としては、例
えば特開昭61−213927号公報「浮動小数点演算
処理装置」に示されている。第12図はこの中から、シ
フタとG、R,Sビット生成の部分のみを抜きだしたも
のである。1は左右67ビツトシフトを行なうシフタ、
2はシフタ1にシフト数を与えるシフト数指示信号、3
は丸めに必要な値を出力する丸め制御回路、4は丸め制
御回路3に丸め精度を指示する丸め精度指示信号である
。第13図は丸め制御回路3の内部にあるG、R,Sビ
ット生成回路である。5はビット0からビット1)まで
の論理和を、6はビットOからビット40までの論理和
を求めるSビット生成のためのORゲートである。7は
ビット0、ORゲート5の出力、ORゲート6の出力の
何れか一つをSビットととして出力するマルチプレクサ
、8はビットl、ビット12、ビット41の何れか一つ
をRビットととして出力するマルチプレクサ、9はビッ
ト2、ビット13、ビット42の何れか一つをSビット
ととして出力するマルチプレクサである。マルチプレク
サ5.6.7は丸め精度指示信号4が、拡張精度を指示
している時はaの入力を、倍精度を指示している時はb
の入力を、単精度を示している時はCの入力を選択する
以上のように構成された従来のシフト回路において演算
結果の正規化と、G、R,Sビット生成を行なう場合、
予め求めた正規化数をシフト数指示信号2としてシフタ
1で左シフトを行ない、そのシフト結果を丸め制御回路
3に与え、丸め精度指示信号4が示す精度に応じたS、
R,Sビットをマルチプレクサ7.8.9で選択する。
発明が解決しようとする問題点 しかしながら上記のような構成では、正規化のための左
シフトが終了した後にG、R,Sビット生成を行なって
いる事、丸め制御回路3でSビット生成のため最大41
ビツトの論理和を一度にとっている事から、シフタ1が
高速に正規化を行なったとしても、その後の丸め処理を
開始するまでには、丸め制御回路3が丸め用データを出
力するまで相当の時間待機する必要であるという問題を
有している。さらにIEEE  P754では演算前の
仮数部桁合わせに於いてもG、R,Sビットを使用する
ことを推奨しているが、本従来例は仮数部演算後の丸め
段階で必要なSビット生成のみを対象としており、演算
前の仮数部桁合わせ段階でのSビット生成を行なうこと
は出来ない。
本発明はかかる点に鑑み、シフト動作とSビット生成を
並行して行ないかつ、仮数部演算前の桁合わせと演算後
の正規化の両段階で、Sビット生成が可能なシフト回路
を提供することを目的とする。
問題点を解決するための手段 20〜2−(L−1)の重みを持つLビットデータを保
持する入力レジスタと、前記入力レジスタに接続されシ
フト回路全体として右mビットシフト(1≦m≦L)を
行なう場合は右シフトのみを行ない、シフト回路全体と
してnビット(0≦n≦L)左シフトを行なう場合はL
−nビット右シフトを行ない、20〜2−+ll+L−
1)の重みを持つデータを出力する右シフト手段と、前
記右シフタ出力に接続されシフト回路全体として右シフ
トのみを行なう場合は前記右シフト手段出力の20〜2
−(L−1)の重みを持つLビットデータを出力し、シ
フト回路全体としてnビット左シフトを行なう場合は前
記右シフト手段出力をnビット左シフトし前記右シフト
手段出力の2−’〜2−(hjL−1)の重みを持つL
ビットデータを出力する左シフト手段と、前記右シフタ
でのmビットもしくはL−nビット右シフトの過程で2
− (+、−ff1)〜2−(トロの重みを持つビット
の論理和をとるスティッキビット生成手段とを有し、デ
ータシフトとスティッキビット生成を並行して行なうシ
フト回路である。
作用 本発明は前記した構成により、Lビットデータの右mビ
ットシフトを行なう場合は、前記右シフト手段で右シフ
トを行なうと共に2− (L−1)1)〜2−(し−1
)の重みを持つビットの論理和を前記スティッキビット
生成手段で求め、Lビットデータの左nビットシフトを
行なう場合は、先ず前記右シフト手段でL−nビット右
シフトを行なうと共に2−(シー町〜2−(L−1)の
重みを持つビットの論理和を前る。
実施例 第5図に本発明で扱うI EEE浮動小数点フォーマッ
トを示す。20は符号部s、21は指数部e、22は仮
数部fであり、(s、e、f)のヒツト数は単精度: 
(1,8,23)、倍精度:(1,1),52)、拡張
精度: (1,15,64)である。そして全体として N=(−1)s・2@−”8・(1,f)の数Nを表現
している。(但し拡張精度の場合は仮数部f自身で1.
fを表現している。)第8図に本発明のシフト回路を使
用した浮動小数点加減算手順を示す。処理23で演算対
象の2つの浮動小数点データの指数部e1.e2の減算
と比較を行なう。処理24では大なる指数部を持つ仮数
部の取りだしと小なる指数部を持つ仮数部のle+  
e21ビット右シフトを行なう。処理25では仮数部の
加減算を行ない絶対値化された結果を出力する。処理2
6では演算された仮数部の正規化及びそれに伴う指数部
の補正を行なう。処理27では正規化された仮数部の丸
めと、丸めた結果がオーバフローした場合は仮数部を右
1ビツトシフトすると共に再度指数部を補正する。以上
の処理で本発明のシフト回路は処理24での右シフトと
Sビット生成、処理26での正規化及びSビット生成を
行なうものである。
第1図は本発明の一実施例におけるシフト回路の構成図
を示すものである。第1図において28はシフト対象の
データを一時記憶する入力レジスタ、29は左63ビツ
ト〜右66ビツトシフトを行なうバレルシフタ、30は
バレルシフタ29でのシフト過程でバレルシフタ出力と
してのスティッキビットを生成するSB8生成回路、3
1はSas生成回路を制御するSBs生成制御回路、3
2は、ここには記載されていない仮数部用加減算器が出
力するデータの最下位ビットS PAUとSagとの論
理和をとりスティッキビットSとするORゲートである
第2図はバレルシフタ29の詳細な構成を示し1)、て
いる。40〜48は2人力のマルチプレクサであり、4
9〜57は制御信号である。40〜47のマルチプレク
サは第3図に示す1ビツトのマルチプレクサ58から構
成され、2−’、2− (−i −i 1(i=1.2
.4.8.16.32)の重みを持つビットを入力とし
、制御信号Ri、RiE59が”O”の時2−7を、”
1”の時は2− (−i −i lを出力する。マルチ
プレクサ48は第3図に示す1ビツトのマルチプレクサ
60がら構成され、2−1.2−(・+641の重みを
持つビットを入力とし、制御信号L64 57が”0”
の時2−1を、”1”の時は2−31+641を出力す
る。またシフト数SFT・・・(1) (右シフト数はa6=0のSFT、左シフト数はa6=
1の一3FTで与えられる) と制御信号49〜57は次の関係で与える。
a o = R1、a l+R2、a2→R4、a s
 →R8、a4→R16、a5−R32、a 6→L 
64、a +g−RI E 、 aga→R2E・・・
(2) また第2図の62〜72はマルチプレクサレベルでのス
ティッキビットであり、Sl 62はマルチプレクサ4
0のビット66を出力、5IE63はマルチプレクサ4
1のビット66を出力、S2L  64はマルチプレク
サ42のビット67を出力、S2U  65はマルチプ
レクサ42のビット66を出力、32E  66はマル
チプレクサ43のビット66.67の論理和をORゲー
ト73で取ったもの、S467はマルチプレクサ44の
ビット66〜69の論理和をORゲート74で取ったも
の、S8L  68はマルチプレクサ45のビット69
〜73の論理和をORゲート75で取ったもの、S8U
  69はマルチプレクサ45のビット66〜68の論
理和をORゲート76で取ったもの、S16 70はマ
ルチプレクサ46のビット66〜81の論理和をORゲ
ート77で取ったもの、532L  71はマルチプレ
クサ47のビット74〜97の論理和をORゲート78
で取ったもの、532U  72はマルチプレクサ47
のビット66〜73の論理和をORゲードア9で取った
もの、である。
第4図はSag生成回路30の詳しい構成を示す図であ
り、第2図に示したマルチプレクサでのスティッキビッ
トs1 62〜532U  72を用いバレルシフタと
してのスティッキビットSBaを出力する。ここで80
〜90は制御信号であり、SB8生成制御回路31から
出力される。
51)8生成制御回路31は組み合わせ論理回路で構成
され、シフト数制御信号R1〜L64、桁合わせ/正規
化選択信号、精度選択信号を人力とし表1.2.3に示
した関係でSss生成回路制御信号SSI〜5S32U
を出力する。
以上のように構成された本実施例のシフト回路について
、桁合わせの場合と、正規化の場合に別けて以下その動
作を説明する。
10桁合わせの場合 これは第8図に示した処理24での動作である。加減算
は一般に64ビツトである拡張精度で行なわれ、入力レ
ジスタ28には第6図100に示すようにビット64.
65は”O”としてデータが格納される。そして(2)
式に示した関係でシフト数制御信号R149〜L64 
57(L64は常に”0°°)を与えることによりマル
チプレクサ40〜47で右シフト動作が行なわれマルチ
プレクサ48からは101に示したG、Rビットを含む
データが出力される。またこの時SBg生成制御回路3
1には桁合わせモード信号が与えられ第9図に示した制
御信号がSas生成回路30に与えられる。そこで第4
図に示した回路により信号S162〜532U  72
の全ての論理和がとられる。すなわちビット66から右
にシフトされる全てのビットの論理和かSagとして求
められ、これがゲート32からスティッキビットSとし
て出力される。
正規化の場合 これは第8図に示した処理26での動作である。この時
処理25でここでは記載していない仮数部用加減算器か
ら第7図に示したような上位Nビットが”0”であり下
位3ビツトがG、 R,5phuである67ビツトデー
タ102が出力される。そして入力レジスタにはRビッ
トまでが入力される。ここで64−Nを右シフト数とし
てバレルシフタ29を構成するマルチプレクサ40.4
1.42.43.43.45.46.47を動作させる
。具体的には N=Σn1    ・・・・(3) ++’0 とすると a4−N=64−fn+ I;0 −64−’z(t−百1) 1±0 =へi、+1  ・・・・(4) IIO が得られること、及び(2)式に示した関係から制御信
号R149〜R3256を 百〇→R1、πr →R2、n2→R4、π3→R8、
五番→R16、π6→R32”1”→RIE  ”0”
→R2E ・・e(5) とし64−Nビット右シフトを行なう。そしてさらに制
御信号L64 57 ”1”→L64 とすることにより左64ビツトシフトを行ない、結果と
してNビット左シフトを行なう。その結果第7図のデー
タ102は正規化されデータ103が得られる。
正規化されたデータはさらに拡張精度、倍精度、単精度
で丸められるがこの時スティッキビットが必要になる。
a)琺張精度の場合 この時正規化されたデータ103は104に示すように
解釈される。従ってスティッキビット5=SpAuとな
りS FAUはORゲート32の出力として求められる
b)倍精度の場合 この時入力レジスタ28の内容は第7図105に示すよ
うに解釈される。そこでN≦1)の時、正規化のためN
ビット左シフトを行なうと共にスティッキビットとして
1)−Nビットの論理和をとる必要がある。第10図は
このシフト数Nをシフト数制御信号の形に変換したもの
と1)−Nビットの論理和をとるのに必要なSas生成
回路30への制御信号との関係を求めたものであり、5
1)1)生成制御回路31がこの表に従って制御信号S
St  80−5S32U  90を出力することによ
り、右64−Nビットシフトの過程でSl 62〜53
2U 72の必要な信号の論理和が第4図に示した5B
Il生成回路30で生成され5B1)が得られる。そし
てORゲート32でSagと5PAIjとの論理和を取
ることにより最終的なスティッキビットSが求まる。
C)単精度の場合 この時入力レジスタ28の内容は第7図106に示すよ
うに解釈される。そこでN≦40の時、正規化のためN
ビット左シフトを行なうと共にスティッキビットとして
40−Nビットの論理和をとる必要がある。第1)図は
このシフト数Nをシフト数制御信号の形に変換したもの
と40−Nビットの論理和をとるのに必要なSsa生成
回路30への制御信号との関係を求めたものである。そ
して倍精度の場合と同様にしてSas生成回路30を、
第10図に示した表に従って制御することによりSBa
が生成され、ORゲート32でSsgと5PAtJとの
論理和が取られ最終的なスティッキビットSが求まる。
以上のように本実施例によれば、右66ビツトシフトを
行なうマルチプレクサ40〜47、左64ビットシフト
行なうマルチプレクサ48、Sas生成回路30、右シ
フト数とスティッキビット生成に必要なビット数との関
係からSag生成回路30を制御する5B1)生成制御
回路31を設けることにより、右シフトをマルチプレク
サ40〜47で行なうと共に、これと並行して、各マル
チプレクサレベルで順次Sssを求め、マルチプレクサ
47での右シフトが終了した時点で最終的なスティッキ
ビットを生成することができる。またシフト動作とステ
ィッキビット生成動作を並行して行なうこの動作は、桁
合わせ時の右シフトの場合だけでなく、正規化時の左シ
フトの場合にも同様に行なうことができる。
発明の詳細 な説明したように本発明によれば、桁合わせ時の右シフ
ト、正規化時の左シフトと並行してスティッキビット生
成を行なうことができ、その結果シフト完了と同時にス
ティッキビットが生成される。このため桁合わせ或いは
正規化が完了した時点ですぐに、仮数部加減算或いは丸
め動作を行なうことができ、高速浮動小数点演算を実現
するのにその実用的効果は大きい。
【図面の簡単な説明】
第1図は本発明における一実施例のシフト回路の構成図
、第2図はバレルシフタの詳細な構成図、第3図はバレ
ルシフタを構成するマルチプレクサの1ビツト当たりの
構成図、第4図はSas生成回路の詳細な構成図、第5
図は同実施例で扱う浮動小数点データのフォーマット図
、第6図は桁合わせ時のデータフォーマット図、第7図
は正規化時のデータフォーマット図、第8図は浮動小数
点加減算の処理手順を示すブローチヤード、第9図〜第
1)図はSss生成制御回路における入出力関係の説明
図、第12図は従来のシフト回路の構成図、第13図は
従来のG、R,Sビット生成回路を示す回路図である。 29・・・バレルシフタ、30・・・S[1)!生成回
路、31・・・5R1)生成制御回路、40〜48・・
・マルチプレクサ。 代理人の氏名 弁理士 中尾敏男ほか1名第3図 2−(j−j)  2−j 第 41ffl 第5図 第8図 Oト 憾          派 第9図 :jSlO図 第12図 to513図

Claims (1)

    【特許請求の範囲】
  1. 2^0〜2^−^(^L^−^1^)の重みを持つLビ
    ットデータを保持する入力レジスタと、前記入力レジス
    タに接続されシフト回路全体として右mビットシフト(
    1≦m≦L)を行なう場合は右シフトのみを行ない、シ
    フト回路全体としてnビット(0≦n≦L)左シフトを
    行なう場合はL−nビット右シフトを行ない、2^0〜
    2^−^(^n^+^L^−^1^)の重みを持つデー
    タを出力する右シフト手段と、前記右シフタ出力に接続
    されシフト回路全体として右シフトのみを行なう場合は
    前記右シフト手段出力の2^0〜2^−^(^L^−^
    1^)k重みを持つLビットデータを出力し、シフト回
    路全体としてnビット左シフトを行なう場合は前記右シ
    フト手段出力をLビット左シフトし前記右シフト手段出
    力の2^−^n〜2^−^(^n^+^L^−^1^)
    の重みを持つLビットデータを出力する左シフト手段と
    、前記右シフタでのmビットもしくはL−nビット右シ
    フトの過程で2^−^(^L^−^m^)〜2^−^(
    ^L^−^1)の重みを持つビットの論理和をとるステ
    ィッキビット生成手段とを有し、データシフトとスティ
    ッキビット生成を並行して行なうことを特徴とするシフ
    ト回路。
JP62064525A 1987-03-19 1987-03-19 シフト回路 Pending JPS63229521A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62064525A JPS63229521A (ja) 1987-03-19 1987-03-19 シフト回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62064525A JPS63229521A (ja) 1987-03-19 1987-03-19 シフト回路

Publications (1)

Publication Number Publication Date
JPS63229521A true JPS63229521A (ja) 1988-09-26

Family

ID=13260721

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62064525A Pending JPS63229521A (ja) 1987-03-19 1987-03-19 シフト回路

Country Status (1)

Country Link
JP (1) JPS63229521A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0377845A2 (en) * 1989-01-13 1990-07-18 International Business Machines Corporation Apparatus for determining if there is a loss of data during a shift operation
EP0381403A2 (en) * 1989-02-03 1990-08-08 Digital Equipment Corporation Pipelined floating point adder for digital computer
JP2007156748A (ja) * 2005-12-02 2007-06-21 Fujitsu Ltd 演算処理装置,情報処理装置,及び演算処理方法
JP2007188424A (ja) * 2006-01-16 2007-07-26 Hitachi Ltd 計算装置、計算方法、および、計算プログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0377845A2 (en) * 1989-01-13 1990-07-18 International Business Machines Corporation Apparatus for determining if there is a loss of data during a shift operation
EP0381403A2 (en) * 1989-02-03 1990-08-08 Digital Equipment Corporation Pipelined floating point adder for digital computer
JP2007156748A (ja) * 2005-12-02 2007-06-21 Fujitsu Ltd 演算処理装置,情報処理装置,及び演算処理方法
US7720899B2 (en) 2005-12-02 2010-05-18 Fujitsu Limited Arithmetic operation unit, information processing apparatus and arithmetic operation method
JP2007188424A (ja) * 2006-01-16 2007-07-26 Hitachi Ltd 計算装置、計算方法、および、計算プログラム
JP4490925B2 (ja) * 2006-01-16 2010-06-30 株式会社日立製作所 計算装置、計算方法、および、計算プログラム

Similar Documents

Publication Publication Date Title
JPH0644225B2 (ja) 浮動小数点丸め正規化回路
US5309383A (en) Floating-point division circuit
KR20060057574A (ko) 예비 포화 검사로 가산 또는 감산을 위한 산술 유닛 및 그방법
KR930001024B1 (ko) 신경회로망을 이용한 제곱근 연산용 집적회로
US6519621B1 (en) Arithmetic circuit for accumulative operation
JPS63229521A (ja) シフト回路
KR910006143B1 (ko) 부동소수점 연산장치
JPH09114641A (ja) 最上位デジットを決定するための装置と方法
JPS6133539A (ja) 浮動小数点演算装置
JP2752564B2 (ja) 先行1予測装置及び浮動小数点加減算装置
JP3187402B2 (ja) 浮動小数点データ加減算回路
US4282582A (en) Floating point processor architecture which performs subtraction with reduced number of guard bits
JPS62187933A (ja) 加減算装置
JPH0367328A (ja) 浮動小数点演算装置
JPH06195206A (ja) 除算器
JPH05204606A (ja) 浮動小数点演算方式および装置
JPS60263230A (ja) 多重精度浮動小数点加算回路
JPS59160235A (ja) 除算装置
JPH01125625A (ja) 除算装置
JPS60536A (ja) フロ−テイング加算器仮数部入力制御回路
JPH0553768A (ja) 除算器
JPH0644048A (ja) 浮動小数点演算装置および方法
JPH0427587B2 (ja)
JPH0285922A (ja) 演算回路
JPS63182740A (ja) 除算器