ORゲートは、入力端子のどれか1つの値が1の時、出力端子から1の値を出力する基本ゲートです。一番シンプルなORゲートは、入力端子数が2のORゲートです(図1)。2入力ORゲートのシンボルは、2つの入力端子と1つの出力端子を持ちます。
2入力ORゲートを論理式で表したのが、(1)です。
$$Z = A + B \ \ \ \ \ \text{(1)}$$
2入力ORゲートの真理値表は、\(2^2=4\)で4通りの入力の組み合わせがあります(表1)。2入力ORゲートは、入力端子Aか入力端子Bに1の値が入力されると、出力端子Zが1になります。
入力 | 出力 | |
---|---|---|
A | B | Z |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
リスト1は、ハードウェア記述言語(HDL)のVerilogで記述した2入力ORゲートです。
リスト1
module or2_mod (
input A,
input B,
output Z
);
assign Z = A | B;
endmodule
ORゲートは、3,4,5…といったように、2つ以上の入力端子を持つ種類もあります。3入力ORゲートのシンボルは、3つの入力端子と1つの出力端子を持ちます(図2)。3入力ORゲートの論理式が(2)です。論理式からわかるように、3入力ORゲートは、2つの2入力ORゲートで実現できます。
$$Z = A + B + C \ \ \ \ \ \text{(2)}$$
3入力ORゲートは、入力端子が3本なので、真理値表は\(2^3=8\)の8通りの組み合わせがあります(表2)。3入力ORゲートは、少なくともどれか1つの入力端子の値が1の時、出力端子Zが1になります。ORゲートの入力端子数が3,4,5…と増えた場合も同様です。ORゲートの少なくともどれか1つの入力端子の値が1の時、出力端子の値が1になります。
入力 | 出力 | ||
---|---|---|---|
A | B | C | Z |
0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 |
0 | 1 | 0 | 1 |
0 | 1 | 1 | 1 |
1 | 0 | 0 | 1 |
1 | 0 | 1 | 1 |
1 | 1 | 0 | 1 |
1 | 1 | 1 | 1 |