JPS62249227A - シフト装置 - Google Patents

シフト装置

Info

Publication number
JPS62249227A
JPS62249227A JP9428086A JP9428086A JPS62249227A JP S62249227 A JPS62249227 A JP S62249227A JP 9428086 A JP9428086 A JP 9428086A JP 9428086 A JP9428086 A JP 9428086A JP S62249227 A JPS62249227 A JP S62249227A
Authority
JP
Japan
Prior art keywords
data
shift
word
bits
register
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
JP9428086A
Other languages
English (en)
Inventor
Nobuko Ishimaru
石丸 暢子
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP9428086A priority Critical patent/JPS62249227A/ja
Publication of JPS62249227A publication Critical patent/JPS62249227A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はシフト装置に間し、特に任意ワード長のデータ
を右論理シフトするシフト装置のデータ処理速度の高速
化に関する。
〔従来の技術〕
従来、こめ種のシフト装置は、任意ワード長のデータを
N(正整数)ビットだけ右に論理シフトする場合には、
まず最上位のワードをNビット右論理シフトして出力デ
ータを第2レジスタに記憶し、同じ最上位のワードを(
1ワードピット数−N)ビット左論理シフトして出力デ
ータを第2レジスタに記憶する。次に、2ワード目のデ
ータをNビット右論理シフトして出力データを第3レジ
スタに記憶し、第2レジスタの内容と第3レジスタの内
容との論理和を算術論理演算装置によりとって第2レジ
スタに記憶する。以下、同様にして、あるK(正整数)
番目のワードを(1ワードピット数−N)ビット左論理
シフトしたデータと(K+1)番目のワードをNビット
右論理シフトしたデータとを算術論理演算装置で論理和
をとり、その結果を第にレジスタに順次記憶していくこ
とにより、任意ワード長のデータのNビット右論理シフ
トを行っていた。
〔発明が解決しようとする問題点〕
上述した従来のシフト装置は、同一の1ワードのデータ
に対してNビット右論理シフトと(lワードビット数−
N)ビット左論理シフトとの2回のシフト動作を行わな
ければならず、また算術論理演算装置により論理和をと
らなければならないので、データ処理速度が遅いという
欠点がある。
本発明の目的は、上述の点に鑑み、同一の1ワードのデ
ータに対して1回のシフト動作を行えばすむようにする
ことにより、また算術論理演算装置を使用しなくてもす
むようにすることにより、データ処理速度を高速化した
シフト装置を提供す 。
ることにある。
〔問題点を解決するための手段〕
本発明のシフト装置は、lワード長の入力データを1ワ
ードのビット数より小さいシフト数だけ右論理シフトし
て2ワード長のデータを出力するシフト手段と、このシ
フト手段の出力データの下位1ワードを保持するレジス
タと、このレジスタの出力データを入力データとしOま
たは前記入力データをそのまま出力するイネーブル手段
と、このイネーブル手段の出力データと前記シフト手段
の出力データの上位1ワードとの論理和をとる論理和手
段と、前記シフト手段の右論理シフト動作、前記レジス
タのデータ書込み動作および前記イネーブル手段のイネ
ーブル動作を制御する制御手段とを有する。
〔実施例〕
次に、本発明について図面を参照して説明する。
第1図は本発明の一実施例を示すブロック図である0本
実施例のシフト装置は、例えば16ビフトxjワードの
レジスタファイルlと、16ビツトの入力データをシフ
ト数N (16未満の正整数)だけ右論理シフトして3
2ビツトのデータを出力するシフト手段2と、このシフ
ト手段2の出力データの下位16ビツトを保持する16
ビツトのレジスタ3と、このレジスタ3の出力データを
一方の入力とじ制御回路6から送られてくるイネーブル
信号を他方の入力とする16個の2人カアンドゲート4
と、2人カアンドゲート4の出力データを一方の入力と
しシフト手段2の出力データの上位16ビツトを他方の
入力とする16個の2入力オアゲート5と、シフト手段
2にシフト数Nを送りレジスタ3に書込み制御信号を送
り2人カアンドゲート4にイネーブル信号を送る制御回
路6と、レジスタファイルlの出力データをシフト手段
2に送る16ビツトのデータバスlOと、2入力オアゲ
ート5の出力データをレジスタファイルlに送る16ビ
ツトのデータバス11とから構成されている。
なお、符号12はシフト手段2の下位16ビツトの出力
信号線を、13はレジスタ3の16ビツトの出力信号線
を、14は2人カアンドゲート4の16ビツトの出力信
号線を、15はシフト手段2の上位16ビツトの出力信
号線を、20はシフト手段3にシフト数Nを送る4ビツ
トの制御信号線を、21はレジスタ3に書込み制御信号
を送る1ビツトの制御信号線を、22は2人カアンドゲ
ート4にイネーブル信号を送る1ビツトの制御信号線2
2をそれぞれ示す。
第2図を参照すると、第1図中に示したシフト手段2は
、入力データを制御回路6から制御信号線20を介して
送られてくるシフト数Nビット分だけ右論理シフトして
、0から(N−1)ビットまでが“0”、Nから(N+
15)ビットまでが入力データ、(N+16)から31
ビツトまでが“θ″の32ピントの出力データを出力す
る。
第3図を参照すると、本実施例のシフト装置における処
理は、データ入力ステップ101と、右論理シフトステ
ップ102と、結果出力ステップ103と、最上位ワー
ドデータ判別ステップ104と、イネーブル信号“O”
設定ステップ105と、イネーブル信号″l”設定ステ
ップ106と、論理積および論理和ステップ107と、
レジスタファイルおよびレジスタ書込みステップ108
とからなる。
次に、このように構成された本実施例のシフト装置の動
作について説明する。
まず、レジスタファイル1には、あらかじめ3ワード長
のデータが記憶されているものとする。
レジスタファイル1からデータバス10を介して最上位
ワードのデータがシフト手段2に送られてくると(ステ
ップ101)、このデータは制御回路6から制御信号線
20を介して送られてくるシフト数Nビット分だけシフ
ト手段2において右論理シフトされる(ステップ102
)。このシフト手段2でのシフト結果は、32ビツトの
出力データとして出力される(ステップ103)。
続いて、レジスタファイルlからシフト手段2に送られ
てきたデータが最上位ワードのデータであるかどうかが
判定され(ステップ104)、いまの場合は最上位ワー
ドのデータであるので、制御回路6から制御信号線22
を介して2人カアンドゲート4に送り出されるイネーブ
ル信号が“0”とされる(ステップ105)。
このイネーブル信号は、2人カアンドゲート4で出力信
号!13を介して送られてくるレジスタ3の内容との論
理積がとられるが、いまイネーブル信号が“O”となっ
ているので、2人カアンドゲート4の出力データはオー
ル“θ″となる(ステップ107)。この2人カアンド
ゲート4の出力データは、2入力オアゲート5でシフト
手段2の出力データの上位16ビツトとの論理和がとら
れるが、いま2人カアンドゲート4の出力データはオー
ル′0“であるので、2入力オアゲート5からはシフト
手段2の出力データの上位16ビツトがそのまま出力さ
れる(ステップ107)。
2入力オアゲート5の出力データは、シフト結果として
データバス11を介してレジスタファイル1に書き込ま
れる(ステップ108)、また、これと同時に、制御回
路6から制御信号線21を介して送られる書込み制御信
号が′1”とされてレジスタ3に対する書込みが許可さ
れ、シフト手段2の出力データの下位16ビツトが出力
信号線12を介してレジスタ3に書き込まれる(ステッ
プ108)。
次に、レジスタファイル1からデータバス10を介して
最上位ワードの次の2ワード目のデータがシフト手段2
に送られ(ステップ101) 、このデータは制御回路
6から制御信号&120を介して送られてくるシフト数
Nビット分だけシフト手段2において右論理シフトされ
る(ステップ102)、このシフト手段2でのシフト結
果は、32ビツトの出力データとしてシフト手段2から
出力される(ステップ103)。
続いて、レジスタファイル1からシフト手段2に送られ
てきたデータが最上位ワードのデータであるかどうかが
判定され(ステップ104)、いまの場合は最上位ワー
ドのデータではないので、制御回路6から制御信号線2
2を介して2人カアンドゲート4に送り出されるイネー
ブル信号がl”とされる(ステップ106)。
このイネーブル信号は、2人カアンドゲート4で出力信
号線13を介して送られてくるレジスタ3の内容との論
理積がとられる(ステップ107)、いま、レジスタ3
には最上位ワードのNビット右論理シフトされた結果デ
ータの下位16ビツトのデータが入っており、またイネ
ーブル信号が11となっているので、イネーブル信号と
レジスタ3の出力データとの2人カアンドゲート4にお
ける論理積は、最上位ワードのNビット右論理シフトさ
れた結果データの下位16ビツトのデータとなる。
このデータは、2入力オアゲート5で出力信号線15を
介して送られてくる2ワード目のデータのシフト結果の
上位16ビントと論理和され、2入力オアゲート5から
の出力データはOから(N−1)ビットまでが最上位ワ
ードのデータのNビット右論理シフトされた結果データ
の下位16ビツトの上位からNビットとなり、Nから1
5ピントまでが2ワード目のデータのNビット右論理シ
フトされた結果データの上位16ビツトの下位から(1
6−N)ビットとなる。
このような2入力オアゲート5の出力データは、シフト
結果としてデータバス11を介してレジスタファイル1
に書き込まれる(ステップ108)。また、これと同時
に、制御回路6から制御信号線21を介して送られる書
込み制御信号が“1”とされてレジスタ3に対する書込
みが許可され、シフト手段2の出力データの下位16ビ
ツトが出力信号線12を介してレジスタ3に書き込まれ
る(ステップ108)。
ステップ101〜108の動作をさらに3ワード目のデ
ータに対しても行うことにより、すなわち全体でデータ
のワード数回繰り返すことにより、3ワード長のデータ
の全体的なシフト結果を得ることができる。
なお、上記実施例の動作の説明では、右論理シフトされ
るデータのワード長を3ワードとしたが、データのワー
ド長が2以下および4以上であっても同様に右論理シフ
トが行えることはいうまでもない。
また、シフト数Nが16、すなわち1ワードのビット数
以上の場合には、はじめにシフト数Nを16で割った商
と同じワード数分だけオール″0”のデータをシフト結
果としてレジスタファイルlに書き込み、シフト数Nを
16で割った余りをあらたなシフト数としてステップ1
01〜10Bの動作を(ワード数−商)の回数繰り返す
ことにより、16ビツト以上の右論理シフトを実現する
ことができる。
〔発明の効果〕
以上説明したように本発明は、1ワードのデータを右論
理シフトした結果の2ワードのデータの下位1ワードを
保持し次のワードの右論理シフトした結果の2ワードの
データの上位1ワードとの論理和を−とることにより、
任意ワード長のデータを右論理シフトする場合に同一の
ワードに対してシフト動作を2回行う必要がなくなり、
また算術論理演算装置を使用する必要がなくなり、デー
タ処理速度を向上できる効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例を示すブロック図、第2図は
第1図中に示したシフト手段の機能を説明するための図
、 第3図は第1図に示したシフト装置の動作を示−す流れ
図である。 図において、 1・・・・・レジスタファイル、 2・・・・・シフト手段、 3・・・・・レジスタ、 4・・・・・2人カアンドゲート、 5・・・・・2入力オアゲート、 6・・・・・制御回路、 10、11・・・データバス、 1z〜15・・・出力信号線、 20〜22・・・制御信号線である。

Claims (1)

  1. 【特許請求の範囲】 1ワード長の入力データを1ワードのビット数より小さ
    いシフト数だけ右論理シフトして2ワード長のデータを
    出力するシフト手段と、 このシフト手段の出力データの下位1ワードを保持する
    レジスタと、 このレジスタの出力データを入力データとし0または前
    記入力データをそのまま出力するイネーブル手段と、 このイネーブル手段の出力データと前記シフト手段の出
    力データの上位1ワードとの論理和をとる論理和手段と
    、 前記シフト手段の右論理シフト動作、前記レジスタのデ
    ータ書込み動作および前記イネーブル手段のイネーブル
    動作を制御する制御手段と、を有することを特徴とする
    シフト装置。
JP9428086A 1986-04-22 1986-04-22 シフト装置 Pending JPS62249227A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9428086A JPS62249227A (ja) 1986-04-22 1986-04-22 シフト装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9428086A JPS62249227A (ja) 1986-04-22 1986-04-22 シフト装置

Publications (1)

Publication Number Publication Date
JPS62249227A true JPS62249227A (ja) 1987-10-30

Family

ID=14105844

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9428086A Pending JPS62249227A (ja) 1986-04-22 1986-04-22 シフト装置

Country Status (1)

Country Link
JP (1) JPS62249227A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0393074A (ja) * 1989-09-05 1991-04-18 Canon Inc キャリッジ走査装置
JPH07281870A (ja) * 1994-02-18 1995-10-27 Matsushita Electric Ind Co Ltd シフト演算装置及びシフト演算方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0393074A (ja) * 1989-09-05 1991-04-18 Canon Inc キャリッジ走査装置
JPH07281870A (ja) * 1994-02-18 1995-10-27 Matsushita Electric Ind Co Ltd シフト演算装置及びシフト演算方法

Similar Documents

Publication Publication Date Title
JP3589719B2 (ja) 算術演算の結果として生じる正および負のオーバーフローのハードウェアによる効率的な取り扱い方法
US4229801A (en) Floating point processor having concurrent exponent/mantissa operation
JPH0431411B2 (ja)
US5704052A (en) Bit processing unit for performing complex logical operations within a single clock cycle
JPS6351287B2 (ja)
JPH0769782B2 (ja) マイクロプログラム可能な32ビットカスケード可能ビットスライス
JP3458518B2 (ja) 並列プロセッサ
JPH0850578A (ja) 算術論理演算装置及び制御方法
JPS6227412B2 (ja)
KR960024997A (ko) 다중 명령어 다중 데이타형 신경망 전용 디지탈 어레이 프로세서 및 이를 이용해 구성된 시스템
US5991786A (en) Circuit and method for shifting or rotating operands of multiple size
JPS63123125A (ja) 浮動小数点数の加算装置
JPS62249227A (ja) シフト装置
JPS62249228A (ja) シフト装置
US6122651A (en) Method and apparatus for performing overshifted rotate through carry instructions by shifting in opposite directions
JPH01230125A (ja) レジスタの部分的更新機能を持つデータ処理装置
JPS62259134A (ja) シフト装置
JP2654062B2 (ja) 情報処理装置
JP2615746B2 (ja) ビット操作回路
JP4309216B2 (ja) 演算処理回路
JPH0588887A (ja) データ処理装置
JPH02310621A (ja) 情報処理装置
JPH0736857A (ja) 信号処理プロセッサ
JPS6148177B2 (ja)
JPH01204136A (ja) 論理演算装置