JP5253406B2 - デジタル電子バイナリ回転器及び反転器 - Google Patents
デジタル電子バイナリ回転器及び反転器 Download PDFInfo
- Publication number
- JP5253406B2 JP5253406B2 JP2009535110A JP2009535110A JP5253406B2 JP 5253406 B2 JP5253406 B2 JP 5253406B2 JP 2009535110 A JP2009535110 A JP 2009535110A JP 2009535110 A JP2009535110 A JP 2009535110A JP 5253406 B2 JP5253406 B2 JP 5253406B2
- Authority
- JP
- Japan
- Prior art keywords
- gate
- bit
- input
- signal
- bank
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 claims description 17
- 230000000694 effects Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 240000006829 Ficus sundaica Species 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/01—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/01—Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
- G06F5/015—Methods 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
- G06F7/762—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data having at least two separately controlled rearrangement levels, e.g. multistage interconnection networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
- G06F7/768—Data position reversal, e.g. bit reversal, byte swapping
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
- Executing Machine-Instructions (AREA)
- Logic Circuits (AREA)
- Electronic Switches (AREA)
Description
図11は1ビットのシフトと組み合された反転を示す。
図12は2ビットのシフトと組み合された反転を示す。
図13は3ビットのシフトと組み合された反転を示す。
図14は4ビットのシフトと組み合された反転を示す。
図15は5ビットのシフトと組み合された反転を示す。
図16は6ビットのシフトと組み合された反転を示す。
図17は7ビットのシフトと組み合された反転を示す。
前述の説明を考慮するとこれらの図は自明であり、それぞれ個々の図の詳しい説明は当業者には不要である。
8ビットのデータ・ワードに対しては7ビット、
16ビットのデータ・ワードに対しては15ビット、
32ビットのデータ・ワードに対しては31ビット、
である。
102、122:入力
104:マルチプレクサ・ユニット
104a、104b、104c、104d、112:マルチプレクサ・バンク
104a0乃至104a15:マルチプレクサ
106:出力
108、118、128:制御論理回路
112−0乃至112−7:マルチプレクサ
120:16ビット回転ユニット、ゲート配列
124:、126、128、130、132、134:ゲート
140:8ビット回転ユニット
150:アレイ
152:ANDゲート
154:XORゲート(排他的ORゲート)
Claims (14)
- 2nビットのバイナリ・データ・ワードを受け取るステップと、
各々が2n個のゲート素子からなるn個のバンクを含む、少なくとも2n×n個の2位置ゲート素子のアレイに前記ビットを印加するステップであって、前記アレイは各々少なくとも2nビットの入力及び出力を有し、各ゲート素子は1つの制御入力と、少なくとも1つの入力及び1つの出力を有する3つの独立した信号端子とを含み、ゲート素子の前記n個のバンクのうちの1つを除く少なくとも全てのゲート素子のグループは別々に制御可能であり、連続するバンクは直列に、各々のバンクの前記ゲート素子が隣接するバンク又は前記アレイの前記入力若しくは出力の、バンクに沿った方向に2の冪だけ離れたビットに接続されるように接続され、前記2の冪は異なるバンクに対して異なる、ステップと、
必要な回転又はシフトの量を示すnビット・ワードを含む第1の信号と必要な反転又は非反転を示す第2の信号とを受け取るステップと、
少なくとも反転が必要なとき、前記第1及び第2の信号から前記アレイの前記ゲート素子に印加する制御信号を生成するステップであって、ゲート素子の前記n個のバンクのうちの1つを除く少なくとも全てのゲート素子のグループは別々に制御可能である、ステップと、
前記制御信号を前記アレイ内の前記ゲート素子の前記制御入力に印加するステップと、を含み、
前記制御信号は前記第1及び第2の信号から、前記2n×nアレイの前記ゲート素子が、前記第1の信号により決定された前記必要な回転又はシフトを前記入力バイナリ・データ・ワードの前記ビットに施すことと、前記第2の信号により決定されたように前記ビットに反転又は非反転を施すこととを同時に動作するように、生成される、
ことを特徴とする、2nビットのバイナリ・データ・ワードのビットを回転又はシフトさせ、及び反転させる方法。 - 前記各バンクのゲート素子は、先行バンクから、前記入力又は前記先行バンク内において2の連続する冪だけ離れた入力ビット又は出力ビットを受け取るように接続され、
前記2の冪は前記アレイの前記入力から前記出力に向って増加する、
ことを特徴とする、請求項1に記載の方法。 - 前記制御信号は、前記第1及び第2の信号から、前記ゲート素子が、前記第1の信号により決定された必要な回転又はシフトを前記入力バイナリ・データ・ワードの前記ビットに施すことと、前記第2の信号により決定されたように前記ビットに反転又は非反転を施すこととを、前記必要な回転又はシフトに反転が続く意味で同時に動作するように、生成されることを特徴とする、請求項1又は請求項2に記載の方法。
- 前記制御信号は、前記第1及び第2の信号から、前記ゲート素子が、前記第1の信号により決定された必要な回転又はシフトを前記入力バイナリ・データ・ワードの前記ビットに施すことと、前記第2の信号により決定されたように前記ビットに反転又は非反転を施すこととを、反転に前記必要な回転又はシフトが続く意味で同時に動作するように、生成されることを特徴とする、請求項1又は請求項2に記載の方法。
- 前記n個のバンクのバンクjに対して、2j−1個の個別制御可能なゲート素子のグループが存在することを特徴とする、請求項1乃至請求項4の何れか1項に記載の方法。
- バイナリ・データ・ワードのビットを反転させる方法であって、
前記ビットを、各々が制御入力を有し、バンクに配列された複数のマルチプレクサを有する対数回転器に印加し、
前記対数回転器内の前記マルチプレクサの前記制御入力に制御信号を印加して、前記マルチプレクサに前記入力ビットを反転させることとそれらに回転を施すことの両方を行わせる、
ステップを含み、
ゲート素子又はマルチプレクサの少なくとも1つのバンクに対する前記制御信号は、前記第1の信号のディジット(S1)及びそれぞれの第3の信号(C1_0、C1_1)の両方を受け取るように接続された少なくとも1つのORゲート(124)及び少なくとも1つのANDゲート(126)によって生成され、
各ゲート(124,126)の前記出力は非反転形式及び反転形式(C2_0乃至C2_3)の両方で生成され、
各々の前記出力は、前記第1の信号の前記ディジットの隣接する1つ(S2)をさらに受け取って前記制御信号の1つを供給する、それぞれの排他的ORゲート(154)に印加される、
ことを特徴とする方法。 - 前記ゲート(124、126)の前記出力(C2_0乃至C2_3)の各々が、前記第2の信号(SR)をさらに受け取るANDゲート(152)を通して前記それぞれの排他的ORゲート(154)に印加されることを特徴とする、請求項6に記載の方法。
- 2nビットのバイナリ・データ・ワードのビットを回転又はシフトさせ、及び反転させるための、デジタル電子バイナリ回転器又はシフタ及び反転器を含む装置であって、
各々が2n個のゲート素子からなるn個のバンク(104)を含む、少なくとも2n×n個の2位置ゲート素子のアレイ(140)であって、該アレイは2nビットのバイナリ・データ・ワードを受け取る入力(102)と、それぞれが少なくとも2nビットの出力とを有し、各ゲート素子は1つの制御入力(S)と、少なくとも1つの入力及び1つの出力を有する3つの独立した信号端子(A、B、C)とを含み、ゲート素子の前記n個のバンクのうちの1つを除く少なくとも全てのゲート素子のグループは別々に制御可能であり、連続するバンクは直列に、各々のバンクの前記ゲート素子が、隣接するバンク又は前記アレイの前記入力若しくは出力の、バンクに沿った方向に2の冪だけ離れたビットに接続するように、接続され、前記2の冪は異なるバンクに対して異なる、前記アレイと、
必要な回転又はシフトの量を示すnビット・ワード(S0−S2)を含む第1の信号と、必要な反転又は非反転を示す第2の信号とを受け取るための制御入力と、
少なくとも反転が必要なとき、前記第1及び第2の信号から、前記アレイの前記ゲート素子に印加する制御信号(S’0−S’2)を生成するための、且つ、前記制御信号を前記アレイ内の前記ゲート素子の前記制御入力に印加するための、制御入力に結合された制御論理回路(128)と、
を含み、
ゲート素子の前記n個のバンクのうちの1つを除く少なくとも全てのゲート素子のグループは別々に制御され、
前記制御論理回路は、前記第1及び第2の信号から、前記2n×nアレイの前記ゲート素子が、前記第1の信号により決定された前記必要な回転又はシフトを前記入力バイナリ・データ・ワードの前記ビットに施すことと、前記第2の信号により決定されたようにビットに反転又は非反転を施すことと、を同時に動作するように、制御信号を生成する、
ことを特徴とする装置。 - 各バンク(104)の前記ゲート素子は、先行バンクから、前記入力又は前記先行バンク内で2の連続する冪だけ離れた入力ビット又は出力ビットを受け取るように接続され、
前記2の冪は前記アレイの前記入力から前記出力に向って増加する、
ことを特徴とする請求項8に記載の装置。 - 前記制御論理回路(128)は前記第1及び第2の信号から、前記ゲート素子が、前記第1の信号により決定された必要な回転又はシフトを前記入力バイナリ・データ・ワードの前記ビットに施すことと、前記第2の信号により決定されたように前記ビットに反転又は非反転を施すこととを、前記必要な回転又はシフトに反転が続く意味で同時に動作するように、前記制御信号を生成することを特徴とする、請求項8又は請求項9に記載の装置。
- 前記制御論理回路(128)は前記第1及び第2の信号から、前記ゲート素子が、前記第1の信号により決定された必要な回転又はシフトを前記入力バイナリ・データ・ワードの前記ビットに施すことと、前記第2の信号により決定されたように前記ビットに反転又は非反転を施すこととを、反転に前記必要な回転又はシフトが続く意味で同時に動作するように、前記制御信号を生成することを特徴とする、請求項8又は請求項9に記載の装置。
- 前記n個のバンクのバンクjに対して、2j−1個の個別制御可能なゲート素子のグループが存在することを特徴とする、請求項8乃至請求項11の何れか1項に記載の装置。
- ゲート素子又はマルチプレクサの少なくとも1つのバンクに対する制御信号を生成するための前記制御論理回路は、
前記第1の信号のディジット(S1)及びそれぞれの第3の信号(C1_0、C1_1)の両方を受け取るように接続された少なくとも1つのANDゲート(126)と、
各ゲート(124、126)の前記出力を非反転形式及び反転形式(C2_0乃至C2_3)の両方で生成するための手段と、
各々の前記出力、及び前記第1の信号の前記ディジットの隣の1つ(S2)を受け取り、前記制御信号の1つを供給するように接続された、それぞれの排他的ORゲート(154)と、
を備える
ことを特徴とする、請求項8乃至請求項12の何れか1項に記載の装置。 - 前記出力(C2_0乃至C2_3)のそれぞれの1つを、前記第2の信号(SR)をさらに受け取るANDゲート(152)を通して受け取るように接続された、それぞれの排他的ORゲート(154)をさらに備えることを特徴とする、請求項13に記載の装置。
対応する。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0621602A GB2443439B (en) | 2006-10-30 | 2006-10-30 | Digital electronic binary rotator and reverser |
GB0621602.2 | 2006-10-30 | ||
PCT/GB2007/003990 WO2008053152A1 (en) | 2006-10-30 | 2007-10-18 | Digital electronic binary rotator and reverser |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010508747A JP2010508747A (ja) | 2010-03-18 |
JP5253406B2 true JP5253406B2 (ja) | 2013-07-31 |
Family
ID=37546240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009535110A Active JP5253406B2 (ja) | 2006-10-30 | 2007-10-18 | デジタル電子バイナリ回転器及び反転器 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8122074B2 (ja) |
EP (1) | EP2078244A1 (ja) |
JP (1) | JP5253406B2 (ja) |
GB (1) | GB2443439B (ja) |
WO (1) | WO2008053152A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10846089B2 (en) * | 2017-08-31 | 2020-11-24 | MIPS Tech, LLC | Unified logic for aliased processor instructions |
WO2019046710A1 (en) * | 2017-08-31 | 2019-03-07 | MIPS Tech, LLC | UNIFIED LOGIC FOR PSEUDONYM PROCESSOR INSTRUCTIONS |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5293489A (en) * | 1985-01-24 | 1994-03-08 | Nec Corporation | Circuit arrangement capable of centralizing control of a switching network |
JPS6398729A (ja) * | 1986-10-15 | 1988-04-30 | Fujitsu Ltd | バレルシフタ |
JPS63205767A (ja) * | 1987-02-20 | 1988-08-25 | Fujitsu Ltd | ビツトリバ−ス装置 |
JPH0421025A (ja) * | 1990-05-15 | 1992-01-24 | Toshiba Corp | 左右シフタ |
US5477543A (en) * | 1994-08-03 | 1995-12-19 | Chromatic Research, Inc. | Structure and method for shifting and reordering a plurality of data bytes |
US5682340A (en) * | 1995-07-03 | 1997-10-28 | Motorola, Inc. | Low power consumption circuit and method of operation for implementing shifts and bit reversals |
US6381690B1 (en) * | 1995-08-01 | 2002-04-30 | Hewlett-Packard Company | Processor for performing subword permutations and combinations |
JP3378444B2 (ja) * | 1996-08-08 | 2003-02-17 | 株式会社東芝 | シフト回路 |
US5987603A (en) * | 1997-04-29 | 1999-11-16 | Lsi Logic Corporation | Apparatus and method for reversing bits using a shifter |
US5991786A (en) * | 1997-12-19 | 1999-11-23 | Advanced Micro Devices, Inc. | Circuit and method for shifting or rotating operands of multiple size |
US6098087A (en) * | 1998-04-23 | 2000-08-01 | Infineon Technologies North America Corp. | Method and apparatus for performing shift operations on packed data |
US6622242B1 (en) * | 2000-04-07 | 2003-09-16 | Sun Microsystems, Inc. | System and method for performing generalized operations in connection with bits units of a data word |
JP2002084414A (ja) * | 2000-07-05 | 2002-03-22 | Canon Inc | 画像処理方法及び装置及びプログラム並びに記憶媒体 |
US6675182B1 (en) * | 2000-08-25 | 2004-01-06 | International Business Machines Corporation | Method and apparatus for performing rotate operations using cascaded multiplexers |
GB2370384B (en) * | 2000-12-22 | 2004-11-10 | Cambridge Consultants | Shifter |
US7689635B2 (en) * | 2004-10-28 | 2010-03-30 | Stmicroelectronics Pvt. Ltd. | Area efficient shift / rotate system |
-
2006
- 2006-10-30 GB GB0621602A patent/GB2443439B/en active Active
-
2007
- 2007-10-18 WO PCT/GB2007/003990 patent/WO2008053152A1/en active Application Filing
- 2007-10-18 JP JP2009535110A patent/JP5253406B2/ja active Active
- 2007-10-18 EP EP07824239A patent/EP2078244A1/en not_active Ceased
- 2007-10-25 US US11/977,729 patent/US8122074B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2010508747A (ja) | 2010-03-18 |
US20080104155A1 (en) | 2008-05-01 |
EP2078244A1 (en) | 2009-07-15 |
GB2443439B (en) | 2009-06-03 |
GB2443439A (en) | 2008-05-07 |
WO2008053152A1 (en) | 2008-05-08 |
GB0621602D0 (en) | 2006-12-06 |
US8122074B2 (en) | 2012-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6006321A (en) | Programmable logic datapath that may be used in a field programmable device | |
CA1175154A (en) | Shift circuit | |
EP2202885A1 (en) | Function block | |
JPH0916397A (ja) | 複数のコンピュータ・ワードにパックされている複数のサブ・ワード・アイテムの選択混合システム | |
JPS592054B2 (ja) | 高速2進乗算の方法及び装置 | |
US6877019B2 (en) | Barrel shifter | |
JP5253406B2 (ja) | デジタル電子バイナリ回転器及び反転器 | |
US6622242B1 (en) | System and method for performing generalized operations in connection with bits units of a data word | |
JPH06236255A (ja) | 並列桁上げ発生ネットワーク、並列加算器ネットワーク、桁上げ発生モジュール、マルチビット加算器ネットワークおよびモジュラー桁上げ伝ぱんユニット | |
JPH0697431B2 (ja) | バレルシフタ | |
US6675182B1 (en) | Method and apparatus for performing rotate operations using cascaded multiplexers | |
JPH09222991A (ja) | 加算方法および加算器 | |
JPH1063500A (ja) | 信号処理装置 | |
JP2007129618A (ja) | ガロア体のα乗算回路および演算回路 | |
JPH0721011A (ja) | Mosシフト回路装置 | |
JP2624342B2 (ja) | バレルシフタ | |
US8392488B1 (en) | Logic structures and methods supporting pipelined multi-operand adders | |
US20090138537A1 (en) | Address generating circuit and semiconductor memory device | |
JP4230234B2 (ja) | 全加算器用のパリティ予測回路 | |
JPH02112021A (ja) | インクリメンタ | |
JP2003337694A (ja) | シフト回路 | |
JPH11282651A (ja) | 並列乗算器 | |
JP2556613B2 (ja) | バレルシフタ回路 | |
JPH04361325A (ja) | バレルシフタ装置 | |
JP2001195234A (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100908 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120925 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121009 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121228 |
|
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: 20130318 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130416 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5253406 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160426 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |