JPS63225822A - バレルシフタ - Google Patents

バレルシフタ

Info

Publication number
JPS63225822A
JPS63225822A JP61186977A JP18697786A JPS63225822A JP S63225822 A JPS63225822 A JP S63225822A JP 61186977 A JP61186977 A JP 61186977A JP 18697786 A JP18697786 A JP 18697786A JP S63225822 A JPS63225822 A JP S63225822A
Authority
JP
Japan
Prior art keywords
carry
input information
output
rotation
information
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
JP61186977A
Other languages
English (en)
Other versions
JPH0426731B2 (ja
Inventor
Takeji Tokumaru
武治 得丸
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP61186977A priority Critical patent/JPS63225822A/ja
Priority to US07/083,628 priority patent/US4831571A/en
Publication of JPS63225822A publication Critical patent/JPS63225822A/ja
Publication of JPH0426731B2 publication Critical patent/JPH0426731B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/01Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
    • G06F5/015Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising having at least two separately controlled shifting levels, e.g. using shifting matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) この発明は、簡易な回路構成でキャリーを含むローテー
ト動作を高速に行なうことができるバレルシフタに関す
る。
(従来の技術) 情報をアキュムレータ等のレジスタにおいて、ビット単
位で循環させるキャリーを含んだローテート(回転)動
作は、例えばフリップフロップ回路を用いて行なうもの
がある。
第7図はフリップフロップ回路を用いて、キャリーを含
むローテート(以下「キャリー付ローテート」と呼ぶ)
を実現したものである。これは、N個のフリップフロッ
プ回路1を連結して、ざらに最上位・桁のフリップフロ
ップ回路1にキャリー用のフリップフロップ回路3を接
続したものである。
このような構成において、連結されたN個のフリップフ
ロップ回路1に格納されている情報は、クロック信号が
フリップフロップ回路1に供給される毎に上位ビット方
向(左方向)に1ビツトずつシフトされる。さらに、キ
ャリー用のフリップフロップ回路3に格納されている情
報は、最下位ビットのフリップフロップ回路1にシフト
される。
このようにして、それぞれのフリップフロップ回路1に
格納されている情報が最上位ビット方向へキャリー付ロ
ーデートされる(以下、情報の最上位ビット方向(左方
向)へのキャリー付ローテートを「左キャリー付ローテ
ート」と呼び、最下位ビット方向(右方向)へのキャリ
ー付ローテートを「右キャリー付ローテート」と呼ぶ)
ところで、このような構成にあっては、情報が1回のク
ロック信号で1ビツトずつシフトされるのでシフト量を
Nビットとするキャリー付ローテート動作を行なうため
には、N回のクロック信号をそれぞれのフリップフロン
プ回路1.3に供給しなければならず、Nサイクルの時
間を要していた。したがって、多ビットのキャリー付ロ
ーテートを行なう場合には、かなりの時間が必要となる
また、キャリー付ローテート動作は、バレルシフタを用
いて行なうものがある。これは、情報を所定量だけ同時
にシフトした後、マイクロプログラム等により所定の位
置にキャリーを挿入するものである。
第8図はバレルシフタの概略を示す図である。
同図のバレルシフタは、入力情報DO〜D3を2つのシ
フト信号(81,82)で導通制御されるセレクタ5に
よりシフトして、入力情報Do〜D3をOピットル3ビ
ツト左方向ヘシフトさせるものである。
例えば、シフト信号S1のレベルが“0″、シフト信Q
S2のレベルが“1″の場合には、インバータ7を介し
てシフト信号S1が供給されるセレクタ5及び、シフト
信号S2が供給されるセレクタ5が導通状態となり、入
力情報Doは出力端0UT2に出力され、入力情報DI
は出力端0UT3に出力されて、入力情報が左方向へ2
ビツトシフトされる。
次に、このようなバレルシフタを用いたキャリー付ロー
テート動作を第9図を用いて説明する。
例えば、8ビツトで構成された入力情報Do〜D7の3
ビツト左キヤリー付ローテートにあっては、まず、入力
情報Do=Dyを3ビット同時に左方向ヘシフトして(
ステップ2)、シフトイン情報として“O”を入力する
。入力情報がNビット構成の場合には、バレルシフタの
出力は2Nビツトとなるので、8ビツト構成におけるバ
レルシフタの出力は16ビツトとなる。したがって、8
ビツトで構成された入力情報Do=07の3ビツト左シ
フトにあっては、バレルシフタの出力のうち上位側8ビ
ツトは’ 00000 Dy Da D5となり、下位
側8ビツトはD4 D3 D2 DI 000”となる
。そして、この下位側8ビツトの情報をレジスタReu
Aに格納する(ステップ3)。
次に、入力情報をすべて“ONとし、さらに、シフトイ
ン情報をキャリーCaとして、3ビツト左方向へのシフ
トを行いキャリーCaをバレルシフタの出力の2ビツト
目に挿入する(ステップ4)。そして、この出力の下位
側8ビツトとレジスタRegAに格納されている値との
論理和演算を行ない、この演算結果”D4 D3 D2
 DI Do Ca 00”を再びレジスタRec+A
に格納する(ステップ5)。
次に、レジスタReaAに格納された値のシフトイン情
報を作成するために、入力情報DO〜D7を左方向へ2
ビツトシフトする(ステップ7)、。
そして、このシフトされた入力情報の上位側8ビツト“
OOOOOOD 7 D e ”とレジスタReaAに
格納されティる値“D4 D3 D2 DI Do C
a00パとの論理和演算を行ない、入力情報DO〜D7
の3ビツト左キヤリー付ローテートが行なわれる(ステ
ップ9)。
このようにバレルシフタを用いて入力情報のキャリー付
ローテートを行なう場合には、キャリーCaを所定のビ
ット位置に挿入する処理が必要となり、この処理は一般
的にプログラムにより行なわれている。したがって、こ
の処理を行なうための時間が必要となっていた。
(発明が解決しようとする問題点) 以上説明したように、フリツプフロツプ回路を連結して
、Nビットシフトのキャリー付目−テート動作を行なう
場合には、Nサイクルの時間が必要となり、シフト量が
多くなるとかなりの時間を要することになる。
また、バレルシフタを用いてNビットシフトのキャリー
付ローテート動作を行なう場合には、Nビットのシフト
動作は同時に行なわれるが、キャリーを所定の位置に挿
入する処理に時間を要していた。
したがって、いずれの構成にあってもキャリー付ローテ
ート動作を行なうためには、かなりの時間を要すること
になり、キャリー付ローテート動作を高速に行なうこと
は困難となっていた。
そこで、この発明は上記に鑑みてなされたものであり、
構成を複雑化することなく、キャリーを含まないローテ
ート動作と同じ時間で、キャリー付ローテート動作を高
速に行なうことができるバレルシフタを提供することを
目的とする。
[発明の構成1 (問題点を解決するための手段) この発明のバレルシフタは、N桁の入力情報をローテー
ト量に応じて所定量シフトさせ、キャリーを含むローテ
ート動作にあっては、前記シフトされた入力情報の最下
位桁の後にキャリーを挿入して、2N桁の出力を供給す
るシフタ部と、このシフタ部の下位側N桁の出力と、ロ
ーテート動作におけるキャリーの有無に応じて前記下位
側N桁の出力にそれぞれ対応する前記シフタ部の上位側
桁の出力との論理和をそれぞれ算出するローテート部と
により構成される。
(作用) この発明のバレルシフタにおいては、ローテート量に応
じてN桁の入力情報をシフトさせて2N桁の情報を作成
し、キャリーを含むローテート動作にあっては、キャリ
ーをシフトされた入力情報の最下位桁の後に挿入して、
2N桁の情報のうち下位側N桁と、この下位側N桁にキ
ャリーの有無に応じてそれぞれ対応する上位側桁との論
理和をそれぞれ算出して、入力情報のローテート動作を
行なっている。
(実施例) 以下図面を用いてこの発明の一実施例を説明する。
第1図はこの発明の一実施例に係るバレルシフタにおけ
るシフタ部の構成を示す図である。この実施例における
バレルシフタは、8ビツトの入力情報をローテートある
いはキャリー付ローデートするものであり、シフタ部は
8ビツトの入力情報をO〜7ビツト左方向ヘシフトして
、キャリーCaを所定の位置に挿入するものである。
第1図に示すシフタ部は、入力情報DO〜D7を所定量
だけシフトして出力端0UTO〜0UT15に出力する
セレクタ11a、11b、13a。
13b、15a、15bと、キャリーCaをシフトされ
た入力情報DO〜D7の所定の位置に挿入するアンド回
路17,19.21を有している。
セレクタ11a、11bはシフト信号S4により、セレ
クタ13a、13bはシフト信号S2により、セレクタ
15a、15bはシフト信号S1によりそれぞれ導通制
御されており、それぞれのセレクタ11a〜15bは、
O”レベルのシフト信号で非導通状態となり、“1″レ
ベルのシフト信号で導通状態となる。
セレクタ11b、13b、15bは、それぞれが導通状
態になると、入力情報Do−D7はシフトされず、それ
ぞれの入力情報Do ”D7は出力端0UTO〜0UT
7にそれぞれ出力される。セレクタ11aが導通状態に
なると、入力情報り。
〜D7は左方向へ4ビツトシフトされ、セレクタ13a
が導通状態になると、このセレクタ13aに入力される
情報は左方向へ2ビツトシフトされ、セレクタ15aが
導通状態になると、このセレクタ15aに入力される情
報は左方向へ1ビツトシフトされて、出力端OUT○〜
0UT15にそれぞれ出力される。
すなわち、シフト信号84.82.81は入力情報Do
〜D7のシフト量を表わしており、S1=“0″、S2
=“O”、83−”O”ではシフトなし、S 1 = 
” 1 ” 、S 2 =“O”、54=tt O″で
は1ビツトのシフト量、・・・・・・、51=11 i
 II 、32 = 1“1”、S4=“1”では7ビ
ツトのシフトRを表わしている。したがって、入力fR
報Do−Dyはセレクタ11a 〜15bによりシフト
信号S1.32.84のレベルの組合わせに応じて、左
方向へOビットから7ビツトの範囲でシフトされて、出
力端0UTO〜0UT14にそれぞれ出力される。
アンド回路17.19.21はキャリー付ローテート動
作が行なわれる場合には、シフトされた入力情報Do=
Dyの後にキャリーCaを挿入するものである。入力情
報Do−07のキャリー付左ローテートを行なった場合
には、入力情報り。
〜D7はキャリーCaを介してローデートされるために
、キャリーCaはローテートされる前の入力情報Do=
Dyの最上位ビットと最下位ビットとの間に挿入される
ことになる。
例えば、最上位ビットをDy+最下位ビットをDoとす
る入力情報Dy Da D5 D4 D3 D2 DI
 Doにおけるローテート】を5ビツトとするキャIJ
−付左[1−テートは、D2 DI Do Ca D7
De Ds D4となり、キャリーCaは入力情報の最
下位ビットDoと最上位ビットD7との間に挿入される
アンド回路17は、その入力にキャリー用フリップフロ
ップ(図示せず)からのキャリーCaと、キャリー付ロ
ーテート信号CRが与えられている。
キャリー付ローテート信号CRは、そのレベルが0”の
時にはバレルシフタがキャリーを含まないローテート動
作を行ない、そのレベルが1″の時にはバレルシフタが
キャリー付ローテート動作を行なう。
アンド回路17は、シフト信号81.82のレベルにか
かわらず、シフト信号S4のレベルが“1”の場合に、
キャリーCaをシフタ部に供給する。し℃がって、シフ
ト信号S4のレベルが“1”の場合には、入力情報の最
下位ビットとなるDoは少なくとも4ピツト以上左方向
ヘシフトされるために、アンド回路17を介して供給さ
れるキャリーCaは、シフト信号82.51のレベルに
応じて出力端0tJT4〜0tJT6のいずれかに出力
されることになる。
アンド回路19は、その入力にアンド回路17と同様に
キャリーCaとキャリー付ローテート信号CRが与えら
れているのに加えて、シフト信号S4の反転信号が与え
られている。このアンド回路19は、シフト信号S1の
レベルにかかわらず、シフ1−信号S4のレベルが“0
″、シフト信号S2のレベルが“1”の場合に、キャリ
ーCaをシフタ部に供給する。したがって、シフト信号
S4及びS2のレベルがそれぞれ“0”、61″の場合
には、入力情報Doは2ピツトあるいは3ビツト左方向
ヘシフトされるために、アンド回路19を介して供給さ
れるキャリーQaは、シフト信号S1のレベルに応じて
出力端0LJT1あるいは出力!0UT2に出力される
ことになる。
アンド回路21は、その入力にアンド回路17と同様に
キャリーCaとキャリー付ローテート信号CRが与えら
れているのに加えて、シフト信号S4とシフト信号S2
とを入力とするノア回路23の出力が接続されている。
このアンド回路21はシフト信号S4及びシフト信号S
2のレベルが“Onシフト信号S1のレベルが“1”の
場合に、キャリーCaをシフタ部に供給する。したがっ
て、シフト信号84,82.81のレベルがそれぞれ 
O″、′o”、“1”の場合には、入力情報Doは1ビ
ツト左方向ヘシフトされて出力端0UT1に出力される
ために、アンド回路21を介して供給されるキャリーC
aは出力端0UTOに出力されることになる。
なお、入力情報DO〜D7のシフト動作及びキャリーC
aの挿入が行なわれて、入力情報Do〜D7及びキャリ
ーCaが出力されない出力端には、“0”が供給される
ようになっている。
第2図はバレルシフタのローテート部を示す構成図であ
る。このローテート部は、キャリーCaを含まないロー
テートの場合には、第1図で示したバレルシフタのシフ
タ部でシフトされた入力情報Do=D7のローテート動
作を行ない、キャリーCaが挿入された場合には、キャ
リーCaを含むキャリー付ローテート動作を行なう。
ローテート部において、8ビツトの入力情報DO〜D7
のキャリーCaを含まないローテート動作を行なう場合
には、入力情報Do−D7をシフトさせるとともに “
をぐ ト ゛させて一出力端0UTOと出力端0UT8
.出力@OUT1と出力@0LJT9のように、出力端
○UTO〜出力端0LIT7と出力端00下8〜出力端
0UT15の論理和をとることにより、入力情報DO〜
D7のローテート動作が行なわれる。
また、キャリー付ローテート動作を行なう場合には、シ
フトされた入力情報Do=07の最下位ビットとなる入
力情報DOの後にキャリーCaが挿入されるために、出
力端0UTOと出力端0UT8.出力端0tJT1と出
力#0LIT9のように、出力端○UTO〜出力端0U
T7と出力端0tJT8〜出力端0UTI 5の論理和
をとることにより、入力情報Do =D7のキャリー付
ローテート動作が行なわれる。
このようにしてローテート動作もしくはキャリー付ロー
テート動作を行なうために、第2図に示したローテート
部は、セレクタ25.27と8個のオア回路29を有し
ている。
セレクタ25.27は、第1図に示したシフタ部のセレ
クタ11a〜15bと同様な機能を有するものである。
セレクタ25はローテート信号Rにより導通制御されて
おり、セレクタ25が導通状態になると、シフタ部の下
位側出力端0LIT8〜0UT15に出力された入力情
報は、それぞれのオア回路29の一方の入力に供給され
る。
セレクタ27はキャリー付ローテート信号CRにより導
通制御されており、セレクタ27が導通状態になると、
シフタ部の上位側出力端0UT8〜○UT15に出力さ
れた入力情報のうち、出力端OLJ T 8に出力され
た入力情報は、キャリーフリップ70ツブに供給され、
出力端0UT9〜0U15に出力された入力情報は、そ
れぞれのオア回路29の一方の入力に供給される。
オア回路29は、それぞれの他方の入力にシフタ部の下
位側出力端Ot、IT−OUT7に出力された入力情報
が供給されている。したがって、ローテート動作の場合
には、それぞれのオア回路29は、出力端0UTOと出
力端0UT8.出力端0UT1と出力端0UT9.出力
端0UT2と出力#0LIT10.出力faOUT3と
出力端0UT11、出力端0UT4と出力端0tJT1
2.出力端0UT5と出力端0UT13.出力端0UT
6と出力10UT14.出力端0UT7と出力端0UT
15のそれぞれの組み合わせにおいて、論理和演算を行
なう。そして、それぞれのオア回路29の出力には、ロ
ーデートされた入力情報DO〜D7が出力される。
また、キャリー付ローテート動作の場合には、出力端0
LJTO〜出力端0UT6に接続されているそれぞれの
オア回路29は、出力端0UTOと出力端0LIT9.
出力端0LJTIと出力Pa OU T10、出力端0
UT2と出力端0UT11.出力端0tJT3.!:出
力端0LIT12.出力端0UT4と出力端0UT13
.出力端0LIT5と出力端0LIT14.出力端0L
JT6と出力端0UT15のそれぞれの組み合わせにお
いて、論理和演算を行なう。また、出力端0LIT7に
接続されたオア回路2つは、その一方の入力に゛O″レ
ベルが供給されるために、その出力には0UT7に出力
された情報が出力される。そして、それぞれのオア回路
29の出力には、キャリー付ローデートされた入力情報
Do=Dyが出力される。
このように、シフタ部の下位側出力端0LITO〜0L
JT7と上位側出力@ OLI 78〜0LIT15に
出力された情報の論理和演算を行なうことにより、入力
情報Do=07のローテート動作及びキャリー付ローテ
ート動作が行なわれることになる。
以上説明したように、この実施例のバレルシフタは構成
されており、次にこの実施例の作用を説明する。
まずはじめに、キャリーCaを含まないローテート動作
について説明する。
例えば、ローテート昂を5ビツトとする入力情報Do=
Dyの左ローテートにおいては、シフト旦は5ビツトと
なり、シフト信@S4のレベルは“1″、シフト信号S
2のレベルは“0”、シフト信号S1のレベルは“1″
となる。これにより、セレクタ11a、13b、15a
は導通状態となり、セレクタ11b、13a、15bは
非導通状態となる。
セレクタ11aが導通状態になることにより、入力情報
Do〜D7は左方向へ4ピツトシフトされ、さらに、セ
レクタ15aが導通状態になることにより、このセレク
タ15aに入力される入力情報は左方向へ1ビツトシフ
トされる。したがって、入力情報Do−D7は出力端0
UT5から出力端0UT12に出力され、出力端0UT
Oから出力端0LJT4及び出力端0LJT13から出
力端15にはO”レベルが出力されて、入力情報Do 
=Dyは左方向へ5ビツトシフトされる。
ローテート部においては、ローテート信号Rが“1パレ
ベルとなり、セレクタ25が導通状態となる。このため
、下位側出力端OU T O〜0UT7と上位側出力端
0UT8〜0LJTI 5は、第3図に示すように、そ
れぞれのオア回路29に接続されて、下位側出力端0U
TO〜0UT7に出力された情報と、上位側出力端OU
 T’8〜ou’ri5に出力された情報との論理和演
算が行なわれる。
そして、それぞれのオア回路29の出力には、入力情報
Do−Dyの5ビツト左方向へのローテート結果“D2
 DI Do D7 Da D5 D4 D3″が出力
されて、ローテート動作が完了する。
次に、キャリー付ローテート動作について説明する。
例えば、ローテート量を5ビツトとする入力情報Do 
=D7の左キャリー付ローテートにおいては、シフト量
は5ビツトとなり、上述したキャリーCaを含まないロ
ーテートと同様に、入力情報Do=Dyは出力端0LI
T5から出力端0UTI2に出力され、出力端0LIT
Oから出力端0UT3及び出力端0UT13から出力端
15には0”レベルが出力されて、入力情報DローD7
は左方向へ5ビツトシフトされる。
さらに、キャリー付ローテート信号ORのレベルが“1
″になるとともに、入力情報DO〜D7のシフト量が5
ビツトであるために、シフト信号S4のレベルは“1″
、シフト信号S2のレベルはパ0”、シフト信号S1の
レベルはパ1”、となり、セレクタ11a、13b、1
5aG;を導通状態となる。これにより、キャリーCa
はアンド回路17を介して出力m0UT4に出力されて
、入力情報Doの後に挿入される。
ローテート部においては、キャリー付ローテート信号R
8が“1”レベルであることから、セレクタ27は導通
状態となる。このため、下位側出力端0UTO〜0IJ
T7に出力された情報と上位側出力端0tJT9〜○U
T15に出力された情報とは、第4図に示すように、そ
れぞれのオア回路29において論理和演算が行なわれる
。また、出力端0LIT7に出力された入力情報D2は
、“0ルベルとの論理和演算がオア回路29により行な
われる。
そして、それぞれのオア回路29の出力には、入力情報
Do=Dyの5ビツト左ローテート結果”D2 DI 
D6Ca D7 DB D5 D4″が出力されるとと
もに、出力端0UT8に出力された入力情報D3はキャ
リーフリップ70ツブに格納されて、キャリー付ローテ
ート動作が完了する。
第5図はローテート量を3ビツトとするキャリー付左ロ
ーテートを示したものである。ローテート量が3ビツト
の場合には、シフタ部において入力情報Do〜D7は、
左方向へ3ピツトシフトされるとともに入力情報Doの
後にキャリーCaが挿入される。ローテート部において
は、それぞれの出力10UTO〜0LIT15に出力さ
れた情報は、シフトmが5ビツトの場合と同様に処理さ
れて、第5図に示すように、シフト岱を3ビツトとする
キャリー付左ローテートの結果“D4 D3D2 DI
 Do Ca Dy Da ”が得られる。
ところで、入力情報のピット数をN、左方向へのキャリ
ーCaを含まないローテート量をり、キャリー付ローテ
ートのローテート量をlcとすると、右方向へのキャリ
ーCaを含まないローテートfilR及びキャリー付ロ
ーテートのローテートωRCは、次式により左方向への
ローテート借として表わされる。
L=N−R 1c=N−Rc+1 したがって、この実施例においては、ローテートmを左
方向としてローテート動作を行なっているが、ローテー
ト岱を右方向とした場合には、右方向へのローテート量
を左方向へのローテート量に上式を用いて換算すること
により、この実施例で説明したバレルシフタは、右方向
へのローテート動作を行なうことがでる。
第6図はローテート量を3ビツトとする8ビツトの入力
情報Do−D7のキャリー付右ローテートを示したもの
である。このローテートは、右方向への3ピツトのロー
テート量を、前述した式により左方向へのローテート量
を6ビツトとするキャリー付左ローテートとして、入力
情報DO〜D7のローテート動作を行い、キャリー付右
ローテート動作を行ったものである。
[発明の効果] 以上説明したように、この発明によれば、ローチートゲ
に応じてN桁の入力情報をシフトさせて2N桁の情報を
作成し、キャリーをシフトされた入力情報の最下位桁の
後に挿入して、2N桁の情報のうち下位側N桁と、この
下位側N桁にそれぞれ対応する上位側桁との論理和をそ
れぞれ算出して、入力情報のキャリーを含むローテート
動作を行なっているので、キャリーを含むローテート動
作を、比較的簡易な回路構成で、キャリーを含まないロ
ーテート動作と同じ時間で達成することができ、キャリ
ーを含むローテート動作を高速に行なうことが可能とな
る。
【図面の簡単な説明】
第1図はこの発明の一実施例に係るバレルシフタのシフ
タ部の構成図、第2図はこの発明の一実施例に係るバレ
ルシフタのローテート部の構成図、第3図は第1図及び
第2図のバレルシフタにおけるキャリーを含まないロー
テート動作の一例を示す図、第4図乃至第6図は第1図
及び第2図のバレルシフタにおけるキャリーを含むロー
テート動作を示す図、第7図はローテート動作を行なう
回路の一従来例を示す図、第8図は従来のバレルシフタ
の概略を示す構成図、第9図は第8図のバレルシフタに
おけるキャリーを含むローテート動作の一例を示す図で
ある。 (図の主要な部分を表わす符号の説明)17.19.2
1・・・アンド回路 25.27・・・セレクタ 29・・・オア回路

Claims (1)

    【特許請求の範囲】
  1. N桁の入力情報をローテート量に応じて所定量シフトさ
    せ、キャリーを含むローテート動作にあっては、前記シ
    フトされた入力情報の最下位桁の後にキャリーを挿入し
    て、2N桁の出力を供給するシフタ部と、このシフタ部
    の下位側N桁の出力と、ローテート動作におけるキャリ
    ーの有無に応じて前記下位側N桁の出力にそれぞれ対応
    する前記シフタ部の上位側桁の出力との論理和をそれぞ
    れ算出するローテート部とを有することを特徴とするバ
    レルシフタ。
JP61186977A 1986-08-11 1986-08-11 バレルシフタ Granted JPS63225822A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP61186977A JPS63225822A (ja) 1986-08-11 1986-08-11 バレルシフタ
US07/083,628 US4831571A (en) 1986-08-11 1987-08-10 Barrel shifter for rotating data with or without carry

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61186977A JPS63225822A (ja) 1986-08-11 1986-08-11 バレルシフタ

Publications (2)

Publication Number Publication Date
JPS63225822A true JPS63225822A (ja) 1988-09-20
JPH0426731B2 JPH0426731B2 (ja) 1992-05-08

Family

ID=16198037

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61186977A Granted JPS63225822A (ja) 1986-08-11 1986-08-11 バレルシフタ

Country Status (2)

Country Link
US (1) US4831571A (ja)
JP (1) JPS63225822A (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4931971A (en) * 1989-01-13 1990-06-05 International Business Machines Corporation Partial decode shifter/rotator
US5020013A (en) * 1989-09-29 1991-05-28 Cyrix Corporation Bidirectional variable bit shifter
JPH087668B2 (ja) * 1990-02-07 1996-01-29 株式会社東芝 ダイナミックバレルシフタ
JP2556612B2 (ja) * 1990-08-29 1996-11-20 日本電気アイシーマイコンシステム株式会社 バレルシフタ回路
JPH05134848A (ja) * 1991-03-06 1993-06-01 Fujitsu Ltd 中央処理装置のデータシフト回路
US5745744A (en) * 1995-10-12 1998-04-28 International Business Machines Corporation High speed mask generation using selection logic
US5948050A (en) * 1996-12-19 1999-09-07 Lucent Technologies Inc. Fast conversion two's complement encoded shift value for a barrel shifter
US6035310A (en) * 1997-12-19 2000-03-07 Advanced Micro Devices, Inc. Method and circuit for performing a shift arithmetic right operation
US5991786A (en) * 1997-12-19 1999-11-23 Advanced Micro Devices, Inc. Circuit and method for shifting or rotating operands of multiple size
US6006244A (en) * 1997-12-19 1999-12-21 Advanced Micro Devices, Inc. Circuit for shifting or rotating operands of multiple size
US6122651A (en) * 1998-04-08 2000-09-19 Advanced Micro Devices, Inc. Method and apparatus for performing overshifted rotate through carry instructions by shifting in opposite directions
US6286346B1 (en) * 1998-04-30 2001-09-11 Medtronic, Inc. Interruptable multiply and/or divide operations for use with an interrupt in a medical device processor
US6304956B1 (en) 1999-03-25 2001-10-16 Rise Technology Company Using two barrel shifters to implement shift, rotate, rotate with carry, and shift double as specified by the X86 architecture
US8719837B2 (en) * 2004-05-19 2014-05-06 Synopsys, Inc. Microprocessor architecture having extendible logic
US8212823B2 (en) * 2005-09-28 2012-07-03 Synopsys, Inc. Systems and methods for accelerating sub-pixel interpolation in video processing applications
US7764710B1 (en) * 2006-04-25 2010-07-27 Altera Corporation Method and apparatus for processing communication protocol frame input
US9933998B2 (en) * 2013-12-02 2018-04-03 Kuo-Tseng Tseng Methods and apparatuses for performing multiplication
US9959247B1 (en) 2017-02-17 2018-05-01 Google Llc Permuting in a matrix-vector processor

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62249228A (ja) * 1986-04-22 1987-10-30 Nec Corp シフト装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3961750A (en) * 1974-04-05 1976-06-08 Signetics Corporation Expandable parallel binary shifter/rotator
JPS5523501A (en) * 1978-06-29 1980-02-20 Fujitsu Ltd Shift operation unit
JPS5652441A (en) * 1979-10-05 1981-05-11 Pioneer Electronic Corp Programmable bit shift circuit
US4509144A (en) * 1980-02-13 1985-04-02 Intel Corporation Programmable bidirectional shifter
JPS5750049A (en) * 1980-09-09 1982-03-24 Toshiba Corp Shifting circuit
US4396994A (en) * 1980-12-31 1983-08-02 Bell Telephone Laboratories, Incorporated Data shifting and rotating apparatus
US4583197A (en) * 1983-06-30 1986-04-15 International Business Machines Corporation Multi-stage pass transistor shifter/rotator
US4653019A (en) * 1984-04-19 1987-03-24 Concurrent Computer Corporation High speed barrel shifter

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62249228A (ja) * 1986-04-22 1987-10-30 Nec Corp シフト装置

Also Published As

Publication number Publication date
JPH0426731B2 (ja) 1992-05-08
US4831571A (en) 1989-05-16

Similar Documents

Publication Publication Date Title
JPS63225822A (ja) バレルシフタ
EP0047440B1 (en) Shift circuit
JPH0379734B2 (ja)
US4891780A (en) Divisional operation system for obtaining a quotient by repeated subtraction and shift operations
JPH1055262A (ja) シフト回路
JPH1032492A (ja) 符号変換回路
JPS5968058A (ja) フロ−テイング乗算器
JP2664750B2 (ja) 演算装置及び演算処理方法
JP2937234B2 (ja) バレルシフタ
KR0166403B1 (ko) 연산장치
JPH01259415A (ja) データ補正回路
KR100265358B1 (ko) 고속의쉬프팅장치
JPH0683577A (ja) シフト演算装置
JPH04263317A (ja) 演算装置
JP2503017B2 (ja) バレルシフタ回路
JPH02165326A (ja) 非回復型除算器
JPH0363816A (ja) ビット検索装置
JPH07244578A (ja) 整数除算方法及び整数除算装置
JPH0962490A (ja) 整数除算装置
JPS63115229A (ja) エレメントシフト方式
JPH0285922A (ja) 演算回路
JPS63118933A (ja) 浮動小数点仮数部桁合わせ回路
JPS63314639A (ja) バレルシフタ回路
JP2000076045A (ja) シフト機能付きalu命令を持つマイクロプロセッサ
JPH04107730A (ja) 浮動小数点加算器

Legal Events

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