JP4851947B2 - 論理回路 - Google Patents
論理回路 Download PDFInfo
- Publication number
- JP4851947B2 JP4851947B2 JP2007018386A JP2007018386A JP4851947B2 JP 4851947 B2 JP4851947 B2 JP 4851947B2 JP 2007018386 A JP2007018386 A JP 2007018386A JP 2007018386 A JP2007018386 A JP 2007018386A JP 4851947 B2 JP4851947 B2 JP 4851947B2
- Authority
- JP
- Japan
- Prior art keywords
- input
- data
- output
- bit
- bit data
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- 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/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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
Description
しかし、近年は、データ処理の基本単位が32ビット、64ビットとビット数が多くなってきているため、同時に処理されるデータの変化に応じて消費電力が大きく変化する場合がある。一方、半導体回路における低消費電力化の技術に関する提案もなされている(例えば、特許文献1参照)。
まず図1に基づき、本実施の形態に係わる論理回路の全体の機能を説明する。図1は、本実施の形態に係わる論理回路の機能を説明するための図である。
配線ネットワーク2は、デコーダ4に接続され、デコーダ4により変換して得られたデコードデータである第1の複数のビットデータを複数の入力端を介して受信する。配線ネットワーク2は、モード入力と入力データAに基づいて、受信したデコードデータの各ビットデータのそれぞれに対応する複数の配線の接続あるいは信号の経路を変更することによって、所定の演算処理のために前記第1の複数のビットデータのビット位置を入れ替えて、第2の複数のビットデータを生成する。その第2の複数のビットデータは、配線ネットワーク2の複数の出力端からエンコーダ3に出力される。言い換えると、配線ネットワーク2は、デコーダ4から出力されたハミング重みが一定のデコードデータのビットパターン(複数のビットデータの並びの順序)を、変更して出力データとして出力する。
図3は、本実施の形態に係わる論理回路の回路構成を示す回路図である。図3の論理回路1は、論理積(AND)機能と、排他的論理和(XOR)機能の両方の機能を有する論理回路の例である。
配線ネットワーク200は、複数のグループ、すなわち複数の(ここでは3つの)段のステージST1,ST2,ST3を含んで構成され、各ステージは、複数の制御機能付きのスイッチ素子(以下、単にスイッチ素子ともいう)640を含む。スイッチ素子640−1−1, 640−1−2, 640−1−3, 640−1−4が、第1段目のステージST1を構成し、スイッチ素子640−2−1, 640−2−2, 640−2−3, 640−2−4が、第2段目のステージST2を構成し、スイッチ素子640−3−1, 640−3−2, 640−3−3, 640−3−4が、第3段目のステージST3を構成する。言い換えると、配線ネットワーク200は、複数のスイッチ素子を有し、その複数のスイッチ素子は、複数のグループに分割して設けられている。第1段目のステージST1の複数のスイッチ素子640は、デコーダ400からの複数のビットデータを受信する。第2段目以降のステージの複数のスイッチ素子640は、その前の段のステージの複数のスイッチ素子640の出力を受信する。
また、各ステージの各スイッチ素子の他方の制御入力C2には、モード入力Mのビットデータが入力される。本実施の形態では、論理回路1が排他的論理和(XOR)として機能するとき、モード入力Mは1であり、論理回路1が論理積(AND)として機能するとき、モード入力Mは0である。
スイッチ素子640は、上述したように、2つの入力IN1,IN2及び2つの制御入力C1,C2とを入力するための複数(4つ)の入力端と、2つの出力OUT1,OUT2を出力するための複数(2つ)の出力端を有する。各スイッチ素子640は、制御信号である2つの制御入力C1,C2に応じて、入力IN1と入力IN2をそれぞれ出力OUT1と出力OUT2のいずれかに転送して出力する。制御入力C1は、入力データAの1つのビットデータ入力であり、制御入力C2は、モード入力(M)である。
2つのセレクタ641,642は、それぞれ、2つの入力端と、1つの出力端と、1つの制御入力端を有する。セレクタ641の出力端は、出力OUT1に接続され、セレクタ642の出力端は、出力OUT2に接続される。セレクタ641の制御入力は、XOR回路646の出力端に接続される。セレクタ641の一方の入力端は、入力IN1に接続され、他方の入力端は、OR回路643の出力端に接続されている。
AND回路644の一方の入力端は、入力IN1に接続され、他方の入力端は、インバータを介して、モード入力(M)に対応する制御入力C2に接続される。AND回路645の一方の入力端は、入力IN1に接続され、他方の入力端は、モード入力(M)に対応する制御入力C2に接続される。
図4のスイッチ素子640が、図3のように複数接続されて、配線ネットワーク200が構成される。
制御入力C2は、モード入力Mに接続され、論理回路1を論理積(AND)回路として動作させるときには、モード入力Mは0であり、論理回路1を排他的論理和(XOR)回路として動作させるときには、モード入力Mは1である。
排他的論理和(XOR)回路の場合、モード入力Mは1、すなわち制御入力C2は1であり、AND回路644の一つの入力は、インバータを介しているので、0となる。同様に、AND回路645の一つの入力は、1となり、XOR回路646の一つの入力も1となる。
XOR回路646の出力が1のとき、セレクタ641は、入力IN1に接続された入力端(1)の方を選択して、出力端に出力する。同様に、その場合、セレクタ642も、入力IN2に接続された入力端(1)の方を選択して、出力端に出力する。
次に、論理回路1を論理積(AND)回路として動作させるときのスイッチ素子640の動作について、説明する。
論理積(AND)回路の場合、モード入力Mは0、すなわち制御入力C2は0であり、AND回路644の一つの入力は、インバータを介しているので、1となる。同様に、AND回路645の一つの入力は、0となり、XOR回路646の一つの入力も0となる。
上述したように、XOR回路646の出力が1のとき、セレクタ641は、入力IN1に接続された入力端(1)の方を選択して、出力端に出力する。同様に、その場合、セレクタ642も、入力IN2に接続された入力端(1)の方を選択して、出力端に出力する。
まず、論理回路1が、排他的論理和(XOR)の回路として機能するときの動作について説明する。
その場合、入力データBとして110が入力されると、デコーダ400の出力端子D6のみに出力が出るので、デコーダ400の出力は、01000000となる。第1ステージST1には制御信号として入力データAの最下位ビットである0が入力される。第1ステージST1では、制御入力C1が0であるのでそのまま出力される。従って、第1ステージST1の4つのスイッチ素子640の出力は、01000000となる。
以上のように、モード入力Mが1の場合、2つの入力データの排他的論理和が出力される。
例えば、入力データBを110、入力データAを010とすると、論理回路1の出力は、010が出力される。
その場合、入力データBとして110が入力されると、デコーダ400の出力端子D6のみに出力が出るので、デコーダ400の出力は、01000000となる。第1ステージST1には制御信号として入力データAの最下位ビットである0が入力される。第1ステージST1では、制御入力C1が0であるので、各スイッチ素子640においては、いずれか一方の入力に1があれば、上側の出力端に1が出力される。従って、スイッチ素子640−1−4の一方に1が入力されているので、第1ステージST1の4つのスイッチ素子640の出力は、01000000となる。
よって、モード入力Mが0の場合、2つの入力データの論理積が出力される。
図5は、本実施の形態の応用例に係る論理回路の構成を示すブロック図である。本応用例の論理回路は、より複雑な論理演算、すなわち論理演算の組合せを実行可能な論理回路である。図5の論理回路1Aは、3つの入力について、排他的論理和(XOR)と、論理積(AND)の種々の組合せを実行することができる。論理回路1Aは、3つのデコーダ400-1、400-2,400-3と、2つの配線ネットワーク200-1,200-2と、エンコーダ300を含む。2つの配線ネットワーク200-1,200-2の構成は、上述した配線ネットワーク200と同様の構成であり、それぞれの配線ネットワークに、個別にモード入力が入力されている。
(1)(AA*BA)+CA
(2)(AA*BA)*CA
(3)(AA+BA)+CA
(4)(AA+BA)*CA
なお、ここで、「*」は、論理積を示し、「+」は排他的論理和を示す。
すなわち、配線ネットワーク200-1,200-2においては、それぞれ排他的論理和(XOR)と論理積(AND)のいずれか1つを実行できる。よって、配線ネットワーク200-1において、論理積(AND)を実行し、配線ネットワーク200-2において、排他的論理和(XOR)を実行するように、2つの配線ネットワーク200-1,200-2のそれぞれにモード入力Mを与えれば、論理回路1Aは、式(1)の論理演算を実行可能となる。
また、配線ネットワーク200-1と200-2において、排他的論理和(XOR)を実行するように、2つの配線ネットワーク200-1,200-2のそれぞれにモード入力Mを与えれば、論理回路1Aは、式(3)の論理演算を実行可能となる。
さらに、配線ネットワーク200-1において、排他的論理和(XOR)を実行するようにして、配線ネットワーク200-2において、論理積(AND)を実行するように、2つの配線ネットワーク200-1,200-2のそれぞれにモード入力Mを与えれば、論理回路1Aは、式(4)の論理演算を実行可能となる。
よって、本応用例によれば、2つの配線ネットワークがそれぞれ2つの論理演算の機能を実行可能なため、一つの論理回路で、論理演算の組合せの機能を実行できる。よって、その論理回路が搭載される半導体装置の回路面積も小さくすることができる。さらに、論理回路1Aにおいて、各配線ネットワークでは、必ず1つのHの信号だけが処理されるので、消費電力は入力されたデータに依存しない。
そして、2つの論理演算として、排他的論理和(XOR)と論理積(AND)の機能を挙げている。
しかし、他の論理演算、例えば、論理和(OR)等も含めて、2つの論理演算の機能を、論理回路が実行できるようにしてもよい。さらに、そのような2つの論理演算の機能を実行可能な論理回路の配線ネットワークを組み合わせて、論理回路を構成してもよい。
Claims (5)
- 論理演算の機能が互いに異なる第1及び第2の論理演算を実行可能な論理回路であって、
1又は2以上の2進数の第1の入力データに対して、該第1の入力データのハミング重みと関係なく、ハミング重みが一定となる第1の複数のビットデータに変換するデコーダと、
該デコーダに接続され、前記デコーダにより変換された前記第1の複数のビットデータを受信し、前記第1及び第2の論理演算のいずれを実行するかを指定する制御入力と第2の入力データとに応じて、受信した前記第1の複数のビットデータのビット位置を入れ替えることによって、前記第1の複数のビットデータのビットパターンを変更して、第2の複数のビットデータを生成する配線ネットワークと、
該配線ネットワークに接続され、前記配線ネットワークにおいて生成された前記第2の複数のビットデータを、1又は2以上の2進数の出力データに変換するエンコーダと、
を有することを特徴とする論理回路。 - 前記第1の複数のビットデータは、前記ハミング重みが1又は2以上のビットデータであることを特徴とする請求項1に記載の論理回路。
- 前記配線ネットワークは、複数のスイッチ素子を有し、
前記複数のスイッチ素子は、複数のグループに分割して設けられ、
前記配線ネットワークは、前記第1の複数のビットデータを受信する第1のグループと、該第1のグループの複数のスイッチ素子の出力を受信する第2のグループとを含むことを特徴とする請求項2に記載の論理回路。 - 前記複数のスイッチ素子のそれぞれは、2つの入力端と、2つの出力端と、前記制御入力及び前記第2の入力データを入力する2つの制御入力端とを有し、
各スイッチ素子は、前記制御入力及び前記第2の入力データに応じて、前記2つの入力端に入力された前記第1の複数のビットデータ中の2つのビットデータを変更して、前記2つの出力端から出力可能であることを特徴とする請求項3に記載の論理回路。 - 少なくとも3つの入力データに対して、複数の論理演算の組合せを実行可能な論理回路であって、
1又は2以上の2進数の第1の入力データに対して、該第1の入力データのハミング重みと関係なく、ハミング重みが一定となる第1の複数のビットデータに変換するデコーダと、
該デコーダに接続され、前記デコーダにより変換された前記第1の複数のビットデータを受信し、論理演算の機能が互いに異なる2つの論理演算のいずれを実行するかを指定する第1の制御入力と第2の入力データとに応じて、受信した前記第1の複数のビットデータのビット位置を入れ替えることによって、前記第1の複数のビットデータのビットパターンを変更して、第2の複数のビットデータを生成する第1の配線ネットワークと、
該第1の配線ネットワークに接続され、前記第1の配線ネットワークにより生成された前記第2の複数のビットデータを受信し、論理演算の機能が互いに異なる2つの論理演算のいずれを実行するかを指定する第2の制御入力と第3の入力データとに応じて、受信した前記第2の複数のビットデータのビット位置を入れ替えることによって、前記第2の複数のビットデータのビットパターンを変更して、第3の複数のビットデータを生成する第2の配線ネットワークと、
該第2の配線ネットワークに接続され、前記第2の配線ネットワークにおいて生成された前記第3の複数のビットデータを、1又は2以上の2進数の出力データに変換するエンコーダと、
を有することを特徴とする論理回路。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007018386A JP4851947B2 (ja) | 2007-01-29 | 2007-01-29 | 論理回路 |
US12/019,250 US20080183793A1 (en) | 2007-01-29 | 2008-01-24 | Logic circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007018386A JP4851947B2 (ja) | 2007-01-29 | 2007-01-29 | 論理回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008187384A JP2008187384A (ja) | 2008-08-14 |
JP4851947B2 true JP4851947B2 (ja) | 2012-01-11 |
Family
ID=39669163
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007018386A Expired - Fee Related JP4851947B2 (ja) | 2007-01-29 | 2007-01-29 | 論理回路 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20080183793A1 (ja) |
JP (1) | JP4851947B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5203594B2 (ja) * | 2006-11-07 | 2013-06-05 | 株式会社東芝 | 暗号処理回路及び暗号処理方法 |
JP5458611B2 (ja) * | 2009-03-13 | 2014-04-02 | ソニー株式会社 | 暗号処理装置 |
KR101689159B1 (ko) | 2015-07-10 | 2016-12-23 | 울산과학기술원 | 3진수 논리회로 |
DE102015213300A1 (de) * | 2015-07-15 | 2017-01-19 | Siemens Aktiengesellschaft | Verfahren und Vorrichtung zur Erzeugung einer Geräte-spezifischen Kennung und Geräte umfassend einen personalisierten programmierbaren Schaltungsbaustein |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3564514A (en) * | 1969-05-23 | 1971-02-16 | Honeywell Inc | Programmable logic apparatus |
US3593317A (en) * | 1969-12-30 | 1971-07-13 | Ibm | Partitioning logic operations in a generalized matrix system |
US3812467A (en) * | 1972-09-25 | 1974-05-21 | Goodyear Aerospace Corp | Permutation network |
JPS558135A (en) * | 1978-07-04 | 1980-01-21 | Mamoru Tanaka | Rewritable programable logic array |
US4233667A (en) * | 1978-10-23 | 1980-11-11 | International Business Machines Corporation | Demand powered programmable logic array |
NZ198054A (en) * | 1981-08-17 | 1986-05-09 | New Zealand Dev Finance | Polernary logic:multilevel circuits |
US4663500A (en) * | 1982-02-22 | 1987-05-05 | Nec Corporation | Cryptographic system |
US4569052A (en) * | 1983-07-14 | 1986-02-04 | Sperry Corporation | Coset code generator for computer memory protection |
JPH073838B2 (ja) * | 1985-02-28 | 1995-01-18 | 株式会社東芝 | 半導体集積回路 |
US4802217A (en) * | 1985-06-07 | 1989-01-31 | Siemens Corporate Research & Support, Inc. | Method and apparatus for securing access to a computer facility |
JP2564044B2 (ja) * | 1991-02-27 | 1996-12-18 | 株式会社東芝 | プログラマブル論理回路 |
JP3029381B2 (ja) * | 1994-01-10 | 2000-04-04 | 富士通株式会社 | データ変換装置 |
US5425103A (en) * | 1994-03-14 | 1995-06-13 | Shaw; William Y. | Variable-key cryptography system |
US5768390A (en) * | 1995-10-25 | 1998-06-16 | International Business Machines Corporation | Cryptographic system with masking |
US6510518B1 (en) * | 1998-06-03 | 2003-01-21 | Cryptography Research, Inc. | Balanced cryptographic computational method and apparatus for leak minimizational in smartcards and other cryptosystems |
TW465190B (en) * | 1998-11-26 | 2001-11-21 | Ibm | Circuit and method for implementing combinatorial logic functions |
GB2365153A (en) * | 2000-01-28 | 2002-02-13 | Simon William Moore | Microprocessor resistant to power analysis with an alarm state |
JP2008099204A (ja) * | 2006-10-16 | 2008-04-24 | Toshiba Corp | 論理回路 |
JP5203594B2 (ja) * | 2006-11-07 | 2013-06-05 | 株式会社東芝 | 暗号処理回路及び暗号処理方法 |
-
2007
- 2007-01-29 JP JP2007018386A patent/JP4851947B2/ja not_active Expired - Fee Related
-
2008
- 2008-01-24 US US12/019,250 patent/US20080183793A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
JP2008187384A (ja) | 2008-08-14 |
US20080183793A1 (en) | 2008-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8155317B2 (en) | Encryption processing circuit and encryption processing method | |
Gladshtein | Quantum-dot cellular automata serial decimal adder | |
JP4851947B2 (ja) | 論理回路 | |
JP3274668B2 (ja) | 演算処理装置及び演算処理方法 | |
US7583207B2 (en) | Logic circuit | |
EP1146652B1 (en) | High speed coding apparatus for convolutional codes | |
KR100864363B1 (ko) | 부호화 회로 및 디지털 신호 처리 회로 | |
SK12472000A3 (sk) | Spôsob blokového kódovania diskrétnych dát | |
JP5724601B2 (ja) | Crc演算回路及びプロセッサ | |
JP4595055B2 (ja) | ガロア体のα乗算回路および演算回路 | |
JP6162429B2 (ja) | 階層構造の演算回路 | |
JP2011244212A (ja) | ビット変換回路、転送ユニット、通信システム、ビット変換方法及びプログラム | |
JP3622905B2 (ja) | 符号化演算回路 | |
US20070075735A1 (en) | xB/yB coder programmed within an embedded array of a programmable logic device | |
JP2007088677A (ja) | D/a変換器及びそれを用いたシステム、並びに、d/a変換方法 | |
JP4322063B2 (ja) | 送信装置 | |
JP2011155330A (ja) | 伝送システム | |
JP4280172B2 (ja) | バーグラフコード変換方法 | |
US8095848B1 (en) | Multi-byte cyclic redundancy check calculation circuit and method of operating the same | |
JP3348086B2 (ja) | ビタビ復号装置およびビタビ復号方法 | |
JP4803829B2 (ja) | ビットカウント方法およびビットカウント回路 | |
JP2000114986A (ja) | 符号化方法及び装置 | |
WO2002056480A1 (fr) | Decodeur de viterbi | |
KR20040009425A (ko) | 고속 엔코더 | |
JPH11213268A (ja) | 警報転送装置および警報転送方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090312 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110916 |
|
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: 20110927 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111021 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141028 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |