JPH01271833A - シフタ - Google Patents

シフタ

Info

Publication number
JPH01271833A
JPH01271833A JP62164331A JP16433187A JPH01271833A JP H01271833 A JPH01271833 A JP H01271833A JP 62164331 A JP62164331 A JP 62164331A JP 16433187 A JP16433187 A JP 16433187A JP H01271833 A JPH01271833 A JP H01271833A
Authority
JP
Japan
Prior art keywords
data
shifter
input
shifted
bit
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
JP62164331A
Other languages
English (en)
Other versions
JPH073653B2 (ja
Inventor
Yasuhiko Nitta
新田 泰彦
Kazuo Nakamura
和夫 中村
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP62164331A priority Critical patent/JPH073653B2/ja
Priority to US07/159,869 priority patent/US4890251A/en
Publication of JPH01271833A publication Critical patent/JPH01271833A/ja
Publication of JPH073653B2 publication Critical patent/JPH073653B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49994Sign extension

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Logic Circuits (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] この発明はシフタに関し、特に、被シフトデータをシフ
トデータに基づいて、算術布シフ]・を行なうようなシ
フタに関する。
[従来の技術] 第5図は従来のシフタを示す概略ブロック図であり、第
6図は同じくシフタアレイの具体的な電気回路図である
まず、第5図および第6図を参照して、従来のシフタの
構成について説明する。シフタアレイ5は被シフトデー
タをシフトデータで指定されたビット幅だけ右シフトを
行なう。このシフタアレイ5は第6図に示すように、入
力端子D5ないしDOに被シフトデータが入力され、入
力端子SF5ないしSFOにはシフトデータが入力され
、シフト結果は出力端子SD5ないしSDOに導出され
る。
さらに、シフタアレイ5はトランスミッションゲートと
して動作するNチャネルMOSトランジスタ600ない
し605,610ないし615゜620ないし625,
630ないし635,640ないし645,650ない
し655を含む。トランジスタ600ないし605の各
ゲー!・は入力端子SFOに接続され、トランジスタ6
10ないし615の各ゲートは入力端子SFIに接続さ
れ、トランジスタ620ないし625の各ゲートは入力
端子SF2に接続され、トランジスタ630ないし63
5の各ゲートは入力端子SF3に接続され、入力端子6
40ないし645の各ゲートは入力端子SF4に接続さ
れ、トランジスタ650ないし655の各ゲートは入力
端子SF6に接続される。
トランジスタ600,610,620,630゜640
.650の各ソースは出力端子SDOに接続され、トラ
ンジスタ601,611,621゜631.641,6
51の各ソースは出力端子SD1に接続され、トランジ
スタ602,612゜6.22,632,642,65
2の各ソースは出力端子SD2に接続され、トランジス
タ603゜613.623,633,643,653の
各ソースは出力端子SD3に接続され、トランジスタ6
04.614,624,634,644,654の各ソ
ースは出力端子SD4に接続され、トランジスタ605
,615,625,635,645.655の各ソース
は出力端子SD5に接続される。
トランジスタ600のドレインは入力端子DOに接続さ
れ、トランジスタ601のドレインは入力端子D1に接
続され、トランジスタ602のドレインは入力端子D2
に接続され、トランジスタ603のドレインは入力端子
D3に接続され、トランジスタ604のドレインは入力
端子D4に接続され、トランジスタ605のドレインは
入力端子D5に接続される。さらに、トランジスタ61
0ないし614,620ないし624,630ないし6
34,640ないし644,650ないし654のそれ
ぞれのドレインは隣接する−1−位ビットの入力端子に
接続される。
次に、第5図および第6図に示した従来のシフタの動作
について説明する。入力端子SFOないしSF3に入力
されるシフトデータのうちの1つのビットであるSFi
 (i=3〜0)をH”レベルにすることによって、入
力端子D3〜DOに入力された被シフトデータがiビッ
ト右にシフトされ、出力端子SD3〜SDOに出力され
る。
[発明が解決しようとする問題点] 」二連の第5図および第6図に示したシフタにおいて、
入力端子D3〜DOに人力された披シフトデータが算術
データである場合において、1ビツトの右シフトを行な
う場合に、SFi、より上位の位置にあるビット位置に
ついて、符号の拡張を行なわなければならない。このた
めに、第6図の点線で示すように、符号拡張を行なうた
めのトランジスタ615,624,625,633ない
し635.642ないし645,651ないし655を
設ける必要がある。
すなわち、被シフトデータ″101000”を入力端子
D5ないしDOに入力した場合、この被シフトデータの
MSB(最上位ビット)は”1″であり、負であること
を示している。一方、入力端子SF5ないしSFOにシ
フトデータ”000100”を入力すると、第6図に示
す点線内のトランジスタがなければ、右に2ビットシフ
トシた結果は、“001010”となる。しかし、この
ままでは、MSBか”0”であり、正であることを示す
ことになる。そこで、点線内のトランジスタを設けると
、シフトされた結果は“111010°゛となり、MS
Bが“1”であり、負を示し、符号拡張か行なわれたこ
とになる。このように、第6図に示した従来のシフタは
、算術右シフト時における符号拡張のために、彼シフト
データの最−1−位ビットを伝える必要があることから
、シフトアレイ内のトランジスタの数か増加するという
問題点かあった。
それゆえに、この発明の主たるに1的は、シフタアレイ
内のトランジスタの数を低減できるようなシフタを提供
することである。
[問題点を解決するための手段コ この発明は第1のデータを第2のデータにより指定され
たビット幅たけシフトを行なうシフタであって、シフタ
アレイの入力側と出力側とにそれぞれ反転手段を設け、
第1のデータの最」1位ピントが特定のデータであれは
第1のデータを反転し、特定のデータでなければそのま
まシフタアレイに与えてシフトを行ない、シフタアレイ
の出力側では、第1のデータの最」−位ビットか特定の
データであれば、シフトされた結果のデータのビットを
反転して出力し、特定のデータでなければ反転すること
なくそのまま出力するように構成したものである。
[作用] この発明に係るシフタは、シフタアレイの入出力のデー
タの各ビットを反転できる反転手段を設けたことによっ
て、符号拡張のデータを被シフトデータの正負にかかわ
らず一致させることができ、シフタアレイ内のトランジ
スタのようなスイッチング素子の数を低減できる。
[発明の実施例コ 第1図はこの発明の一実施例の概略ブロック図であり、
第2図は第1図に示したシフタアレイの電気回路図であ
り、第3図は第1図に示した入力反転器の電気回路図で
あり、第4図は第1図に示した出力反転器の電気回路図
である。
次に、第1図ないし第4図を参照して、この発明の一実
施例の構成について説明する。まず、第1図において、
シフタアレイ3の入力側には入力反転器2が設けられ、
出力側には出力反転器4か設けられる。入力反転器2は
被シフトデータのMSBの内容に従って、被シフトデー
タの各ビットを反転してシフタアレイ3に入力するもの
である。
シフタアレイ3には前述の第3図に示した従来のシフタ
と同様にしてシフトデータか与えられる。
シフタアレイ3のシフト結果は出力反転器4にり。
えられる。この出力反転器4は彼シフトデータのMSB
の内容に従って、シフトされた結果を反転して出力する
ものである。
シフタアレイ3は前述の第6図と同様にして構成される
か、第6図における点線内のl・ランジスタは省略され
ている。但し、出力端子SDOないしSD5にはそれぞ
れプルダウンのための抵抗70ないし75が接続されて
いる。
入力反転器2は第3図に示すように、EXORゲート8
0ないし85を含み、それぞれの−万人内端には、彼シ
フトデータのMSBか共通的に与えられ、それぞれの他
方入力端には被シフトデータが与えられる。そして、E
XORゲート85ないし80の各出力が第2図に示した
シフタアレイの入力端子D5ないしDOに与えられる。
また、出力反転器4は第4図に示すように、EXORゲ
ート90ないし95を含み、それぞれの−万人内端には
被シフトデータのMSBが与えられ、それぞれの他方入
力端は第2図に示したシフタアレイ3の出力端SD5な
いしSDOに接続される。そして、EXORゲート95
ないし90の各出力端からシフト結果が出力される。
次に、第1図ないし第4図を参照して、この発明の一実
施例の動作について説明する。なお、この実施例におけ
るシフタの動作は、大きく分けて、彼シフトデータが正
の場合と負の場合に分かれるので、以ドでは、それぞれ
場合について具体的に説明していくことにする。
まず、第1の例として、シフトデータが“000100
”であり、1皮シフトデータが“010111”の場合
(つまり、被シフトデータが正の場合)について説明す
る。被シフトデータが”010111”であるときには
、MSBは“0″であり、このMSBが入力反転器2に
含まれる各EXORゲート85ないし80のそれぞれの
一方入力端に共通的に与えられるとともに、出力反転器
4に含まれる各EXORゲート95ないし90のそれぞ
れの一方入力端に与えられる。また、被シフトデータ“
010111”は人力反転器2のEXORゲート85な
いし80の他方入力端に与えられる。人力反転器2およ
び出力反転器4は、MSBとして“1”を入力したとき
には、それぞれの入力データの各ビットを反転して出力
し、MSBとして“0”を入力したときには、入力デー
タの各ビットを反転しないで出力する。よって、MSB
か“0”であるこの例においては、各人力データを反転
しないで出力することになる。
すなわち、被シフトデータ“010111”は入力反転
器2を通ってそのまま“010111″として、シフタ
アレイ3の入力端子D5ないしDOに入力される。この
とき、シフトデータ“000100”が入力端子SF5
ないしSFOに入力されるので、出力端子SD5ないし
SDOには右に2ビツトシフトされたデータ”0001
01”が出力されることになる。
出力反転器4は、この例では入力データを反転せずに出
力するので、結果として得られるデータは出力端子SD
5ないしSDOに現われた“000101″となる。こ
の結果は、前記被シフトデータ“010111“をシフ
トデータ“000100”の幅、すなわち2ビツト幅だ
け符号拡張してシフトしたものであり、求めなければな
らない結果と一致する。
次に、第2の例として、シフトデータが000100”
であり、被シフトデータが“101000” (つまり
、被シフトデータが負の場合)について説明する。
前述の第1の例と同様にして、被シフトデータ”101
000”において、MSBは“1″となるので、入力反
転器2および出力反転器4はそれぞれ入力データを反転
して出力する。したがって、被シフトデータは入力反転
器2によって反転され、“010111”となり、シフ
タアレイ3の入力端子D5ないDOに入力される。こと
き、シフトデータ“000100″が入力端子SF5な
いしSFOに入力されるので、被シフトデータ“010
111“が右に2ビツトシフトされて出力端子SD5な
いしSDOには、000101”が出力されることにな
る。出力反転器4は、この例では入力データを反転して
出力するので、結果として得られるデータは出力端子S
D5ないしSDOに出力された“000101”の各ビ
ットを反転した信号である“111010″となる。こ
の結果は、前記被シフトデータの“101000“をシ
フトデータ“000100”の分たけ、っまり2ビツト
幅だけ右に符号拡張してシフトシたものであり、求めな
ければならない結果と一致する。
上述のごとくシフタを構成することによって、符号拡張
を伴なって算術右シフトが行なわれることが示された。
そして、第2図に示したようなシフタアレイ3では、プ
ルダウン用の抵抗70ないし75が必要となるが、前述
の第6図に示した従来のシフタにおける点線で示される
ようなトランジスタを省くことができるので、全体とし
てシフタアレイ3内で必要なトランジスタの数を低減で
きる。
なお、」二連の実施例においては、被シフトデータとシ
フトデータの幅がそれぞれ6ビツトの場合についての構
成例を示したが、一般に被シフトデータとシフトデータ
の幅がnビット(nは自然数)の場合であってもよい。
また、被シフトデータとシフトデータの幅が互いに異な
っていてもよく、いずれの場合にも上述の実施例と同様
の効果を得ることができる。
[発明の効果] 以上のように、この発明によれば、シフタアレイの入出
力を反転することのできる反転手段を設け、被シフトデ
ータの最上位ビットに基づいて、シフトアレイの入出力
データを反転できるように構成したので、符号拡張のた
めのシフタアレイ内のスイッチング素子の数を低減でき
る。
【図面の簡単な説明】
第1図はこの発明の一実施例によるシックの概略ブロッ
ク図である。第2図は第1図に示したシフタアレイの電
気回路図である。第3図は第1図に示した入力反転器の
電気回路図である。第4図は第1図に示した出力反転器
の電気回路図である。 第5図は従来のシフタの概略ブロック図である。 第6図は従来のシフタに含まれるシフタアレイの電気回
路図である。 図において、2は人力反転器、3はシフタアレイ、4は
出力反転器、80ないし85.90ないし95はEXO
Rゲート、600ないし605゜610ないし614,
620ないし623,630ないし632,640,6
41,650はNチャネルMO8+−ランジスタを示ず

Claims (4)

    【特許請求の範囲】
  1. (1)第1のデータを第2のデータにより指定されたビ
    ット幅だけシフトを行なうシフタであって、 前記第1のデータの最上位ビットが特定のデータであれ
    ば、前記第1のデータのビットを反転したデータを第3
    のデータとして出力し、前記最上位ビットが特定のデー
    タでなければ、前記第1のデータを第3のデータとして
    出力する第1の反転手段、 前記第3のデータを前記第2のデータにより指定された
    ビット幅だけシフトを行ない、第4のデータを生成する
    シフトアレイ、および 前記最上位ビットが特定のデータであれば、前記第4の
    データのビットを反転して出力し、前記最上位ビットが
    特定のデータでなければ前記第4のデータのビットを反
    転しないで出力する第2の反転手段を備えた、シフタ。
  2. (2)前記シフタアレイは、前記第2のデータにより指
    定されたビット幅だけ上位ビットのデータを順次下位ビ
    ットに向けて出力するスイッチング素子を含む、特許請
    求の範囲第1項記載のシフタ。
  3. (3)前記第1の反転手段は、それぞれが前記第1のデ
    ータの各ビットのデータを個別的に受けるとともに、前
    記第1のデータの最上位ビットのデータを共通的に受け
    る第1の排他的論理ゲートを含む、特許請求の範囲第1
    項記載のシフタ。
  4. (4)前記第2の反転手段は、それぞれが前記シフタア
    レイの出力を個別的に受けるとともに、前記第1のデー
    タの最上位ビットのデータを共通的に受ける第2の排他
    的論理ゲートを含む、特許請求の範囲第2項または第3
    項記載のシフタ。
JP62164331A 1987-06-30 1987-06-30 シフタ Expired - Lifetime JPH073653B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP62164331A JPH073653B2 (ja) 1987-06-30 1987-06-30 シフタ
US07/159,869 US4890251A (en) 1987-06-30 1988-02-24 Arithmetic shifter with sign extend facility

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62164331A JPH073653B2 (ja) 1987-06-30 1987-06-30 シフタ

Publications (2)

Publication Number Publication Date
JPH01271833A true JPH01271833A (ja) 1989-10-30
JPH073653B2 JPH073653B2 (ja) 1995-01-18

Family

ID=15791140

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62164331A Expired - Lifetime JPH073653B2 (ja) 1987-06-30 1987-06-30 シフタ

Country Status (2)

Country Link
US (1) US4890251A (ja)
JP (1) JPH073653B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0421025A (ja) * 1990-05-15 1992-01-24 Toshiba Corp 左右シフタ
JP4532669B2 (ja) * 2000-05-16 2010-08-25 株式会社アドバンテスト 時間測定装置、半導体デバイス試験装置

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5075879A (en) * 1989-10-13 1991-12-24 Motorola, Inc. Absolute value decoder
JPH03273332A (ja) * 1990-03-22 1991-12-04 Koufu Nippon Denki Kk 算術シフト回路
JPH0484317A (ja) * 1990-07-27 1992-03-17 Nec Corp 算術論理演算ユニット
DE69227604T2 (de) * 1991-03-11 1999-06-24 Silicon Graphics Inc Mountain Rückwärts kompatible Rechnerarchitektur mit erweiterten Wortbreiten und Adressraum
JP3219880B2 (ja) * 1992-12-22 2001-10-15 株式会社鷹山 乗算回路
US5424967A (en) * 1993-11-29 1995-06-13 Hewlett-Packard Company Shift and rounding circuit and method
US6738793B2 (en) * 1994-12-01 2004-05-18 Intel Corporation Processor capable of executing packed shift operations
ZA9510127B (en) * 1994-12-01 1996-06-06 Intel Corp Novel processor having shift operations
US6078937A (en) * 1996-12-19 2000-06-20 Vlsi Technology, Inc. Barrel shifter, circuit and method of manipulating a bit pattern
US6035310A (en) * 1997-12-19 2000-03-07 Advanced Micro Devices, Inc. Method and circuit for performing a shift arithmetic right operation
US6654774B1 (en) * 2000-09-26 2003-11-25 Fujitsu Limited Generation of sign extended shifted numerical values
US7124237B2 (en) * 2002-10-03 2006-10-17 Seagate Technology Llc Virtual machine emulation in the memory space of a programmable processor
US8631056B2 (en) * 2008-01-09 2014-01-14 Qualcomm Incorporated Processor and method of determining a normalization count

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0421025A (ja) * 1990-05-15 1992-01-24 Toshiba Corp 左右シフタ
JP4532669B2 (ja) * 2000-05-16 2010-08-25 株式会社アドバンテスト 時間測定装置、半導体デバイス試験装置

Also Published As

Publication number Publication date
JPH073653B2 (ja) 1995-01-18
US4890251A (en) 1989-12-26

Similar Documents

Publication Publication Date Title
JPH01271833A (ja) シフタ
US3767906A (en) Multifunction full adder
US5224065A (en) Arithmetic operation unit having bit inversion function
JPH0785221B2 (ja) 補数化装置
EP0407177A2 (en) Bit sequence reversing device
US3970833A (en) High-speed adder
JP3507517B2 (ja) 2進数に於いて最も端にある「1」ビットの位置検出回路
US4709346A (en) CMOS subtractor
CA1173918A (en) Cmos static alu
US5729725A (en) Mask data generator and bit field operation circuit
US5148057A (en) Circuit apparatus for detecting preceding value one
JPS5979495A (ja) シフト回路
US5442801A (en) Arithmetic and logic unit
JPH01187630A (ja) 大小比較回路
CA2071255A1 (en) Arithmetic circuit
US6522690B1 (en) Zero determination signal generating circuit
US5481745A (en) High speed divider for performing hexadecimal division having control circuit for generating different division cycle signals to control circuit in performing specific functions
JPH04227329A (ja) バイナリカウンタ
JP2885402B2 (ja) 並列形全加算器の桁上げ伝搬回路
JPS59201149A (ja) パリテイ処理方式
KR950006351B1 (ko) 바이너리 증가회로
JPH0782424B2 (ja) キヤリ−の伝達が行なわれるデジタル回路
SU930678A2 (ru) Многофункциональный логический модуль
JPH03110625A (ja) バレルシフタ
JPS62140138A (ja) Cmos全加算器