論理ゲート


複雑な論理回路も、すべて基本的な論理ゲートの組み合わせで構成されます。

基本的な論理ゲート

基本的な論理ゲートにはANDゲート、ORゲート、NOTゲート(インバータ)があります。NOT以外の論理ゲートは、入力端子が(少なくとも)2つ、出力端子が1つあります。論理ゲートの入力端子と出力端子は、0か1のどちらかの値をとります。0はL(Low)、1はH(High)と記載される場合もあります。

NOTゲート

入力を反転した値が出力されます。具体的には、0が入力されれば1が、1が入力されれば0が出力されます。インバータとも呼ばれます。

NOTゲート

インバータのシンボルと真理値表

論理ゲートの動作は真理値表で表されます。真理値表は、入力と出力の対応が記載された表です。論理ゲートの動作は式の形で表すこともできます。論理式で表すと、NOTゲートは次のようになります。
$$ Z = \overline{A} $$
HDL(Verilog-HDL)では次のような記述になります。

ANDゲート

ANDゲートは、2つの入力値が両方とも1の場合に出力が1になります。2入力のANDゲートの場合、真理値表は4通りの入力の組み合わせで表されます。

ANDゲート

ANDゲート

論理式で表すと、次のようになります。
$$ Z = A \bullet B $$
HDL(Verilog-HDL)では次のような記述になります。

ORゲート

ORゲートは、2つの入力のどちらかが1の場合に出力が1になります。

ORゲート

ORゲート

論理式で表すと、次のようになります。
$$ Z = A + B $$
HDL(Verilog-HDL)では次のような記述になります。

XORゲート

XORゲートは、2つの入力値が異なれば出力が1になります。XORはORと名称が似ていますが、2つの入力が両方とも1の場合の出力値がORゲートと異なります。XORゲートは、AND,OR,NOTゲートを使って構成することができます。

XORゲート

XORゲート

論理式で表すと、次のようになります。
$$ Z = A \oplus B $$
HDL(Verilog-HDL)では次のような記述になります。

論理ゲートその2

基本論理ゲートの出力を反転したものです。言い方を変えると、AND、OR、XORといった論理ゲートの出力にNOTゲートを接続したものです。シンボルで表す場合、NOTゲートを◯で表します。

NANDゲート

ANDゲートの出力を反転したものです。理値表は、ANDゲートの真理値表の出力を反転したもの(0は1に、1は0に反転したもの)になります。論理ゲートを構成するトランジスタ数の観点からは、NANDゲートが基本で、ANDゲートはNANDゲートを反転したものと考える場合もあります。

NANDゲート

NANDゲート

論理式で表すと、次のようになります。
$$ Z = \overline{A \bullet B} $$
HDL(Verilog-HDL)では次のような記述になります。

NORゲート

ORゲートの出力を反転したものです。真理値表は、ORゲートの出力を反転したもの(0は1に、1は0に反転したもの)になります。

NORゲート

NORゲート

論理式で表すと、次のようになります。
$$ Z = \overline{A + B} $$
HDL(Verilog-HDL)では次のような記述になります。

XNORゲート

XORゲートの出力を反転したものです。真理値表は、XORゲートの出力を反転したもの(0は1に、1は0に反転したもの)になります。

XNORゲート

XNORゲート

論理式で表すと、次のようになります。
$$ Z = \overline{A \oplus B} $$
HDL(Verilog-HDL)では次のような記述になります。

コラム

論理設計では、ゲート数という概念を使う場合があります。ゲート数は、設計データをある1つの基本ゲートの個数に換算することで、回路規模の感覚を共有する場合などに使われます。基本ゲートとしては2入力のNANDゲートが良く使われます。ただ、FPGAでは論理合成で基本ゲートではなくLUTにマッピングされるので、このような数値を簡単に出すことはできません。

スポンサーリンク
スポンサーリンク
スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
スポンサーリンク