X
ORゲート(エックスオアゲート)は、排他的
論理和を実現する論理ゲートです。E
ORゲート、Ex
ORゲートとも呼ばれます。
真理値表
2入力のX
ORゲートの真理値表は以下の通りです。
- | - | --- |
---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
入力の片方がHigh(1)で、もう片方がLow(0)のときのみHighを出力し、入力が両方High(1)または両方Low(0)のときはLowを出力します。
出力がXORの反転となるものをX
NORゲートと呼びます。
排他的
論理和は、2を法とする加算(繰り上がりを無視した加算)と同じです。半加算器は、加算結果とキャリーの2つの出力を持ちますが、加算結果はXORと同じです。
X
ORゲートの積和標準形は次の通りです。
math
A\cdot \overline{B} + \overline{A} \cdot B
制御NOT(CN)
X
ORゲートの出力に加えて、入力のどちらか一方をそのまま(または反転)出力する2入力2出力の演算は、制御NOT(CN)と呼ばれる可逆計算になります。
X
ORゲートの記号は、ANSI(MIL論理記号)、IEC、DINなど、規格によって異なります。一般的な記号は、以下の通りです。
ANSI (MIL): ⊕
IEC: =1
* DIN: ⊻
ハードウェアでの解説とピン配置
X
ORゲートは、単純なゲートの組み合わせで実装することが可能です。しかし、N
ANDゲートや
NORゲートのように、少数のトランジスタで直接実装することは難しいです。
汎用ロジックICには、X
ORゲートがラインナップされています。例えば、74シリーズでは7486、4000シリーズでは4070(4030の代替)が代表的です。これらのICには、2入力X
ORゲートが4個含まれています。
ピン配置は、DIPパッケージ品やフラットパッケージ品で共通です。
実装
X
ORゲートの実装には、様々な方法があります。ここでは、
CMOSロジックでの実装例を紹介します。
CMOSロジックの基本的な方式では、2つの入力AとBの反転に4個、X
ORゲート自体に8個の計12個のトランジスタが必要です。
より少ないトランジスタ数で実装する方法として、
NORゲートとAND-OR-Invert複合ゲートを用いる10トランジスタ実装があります。
また、パス・トランジスタ・ロジックを用いると、6個のトランジスタで実装することも可能です。
積和標準形の実装
XORの積和標準形を
ANDゲート、
ORゲート、
NOTゲートで構成すると、計5個のゲートが必要になります。
N
ANDゲートのみでは4個、
NORゲートのみでは5個でX
ORゲートを構成できます。
その他の実装
電灯のオンオフを2ヶ所から切り替えるための3路スイッチの配線も、一種のXORの実装とみなすことができます。
多入力への拡張
2入力のX
ORゲートを拡張し、多入力のX
ORゲートを構成することが可能です。
math
XOR(A, B, C) = (A \oplus B) \oplus C = A \oplus (B \oplus C)
上記の様に、2入力X
ORゲートをカスケード接続することで、多入力X
ORゲートを構成できます。この場合、入力のうち、Highとなっているものが奇数個のときにHighを出力し、偶数個のときにはLowを出力します。
このような回路は、パリティ生成器や2を法とする加算器として利用できます。
多入力X
ORゲートを実装したICとして、74LVC1G386があります。
パリティ生成器
多入力X
ORゲートは、
パリティビットを生成する際に利用されます。
パリティビットは、データの誤りを検出するために用いられるビットです。
加算器としての利用
X
ORゲートは、1ビット加算器として機能します。2つのビットを加算した結果の1ビット目がX
ORゲートの出力となります。
キャリー(桁上がり)は、
ANDゲートによって得られます。したがって、X
ORゲートと
ANDゲートを組み合わせることで、半加算器を構成できます。
まとめ
X
ORゲートは、排他的
論理和を実現するための重要な論理ゲートです。様々な回路で使用されており、特に加算器の基礎となる要素として重要です。
その実装方法や多入力への拡張についても理解することで、より高度な回路設計が可能になります。