ゲートと記憶回路

記憶回路
 NAND素子を2個利用し、したのように結線すると、記憶回路が実現できます。
SとRは通常1にしておきます。Sの値を0にすると、3端子(Q)は1になります。3端子は下のNANDの入力になり、5端子は1ですから、6端子(NQ)は0になります。この0が2端子に入りますから、1端子が0のなってもQは1を保持します。

実験回路
SとRに押しボタンスイッチ、QにLEDを接続すれば、記憶回路の動作の確認ができます。この回路はラッチ(latch:かんぬき)回路とも呼ばれます。

EXOR演算
 EXOR演算は、排他的論理和とも呼ばれます。論理式では
 C = ~A・B + A・ ~B
で、そちらか一方のみが1の時、出力が1となります。ORと異なり、共に1のときは0になります(これが排他的論理和と呼ばれる所以です)。

クリア
この回路は上下対象ですから、S=1のまま、Rを0にするとNQが1になり、Qは0になります。Rを1に戻しても、Qは0のままです。
 結局、一瞬 S=0 にするとQ=1となり、R=0 にすると、Q=0 にクリアされます。

フィードバック
この回路の特徴は、出力Qが下のNANDゲートを通過後Qの入力に戻っていることです。このように、出力を入力に戻すことで記憶をすることができます。このような回路をフィードバック回路といいます。

応用回路
■レジスタ
 この記憶回路を8個束ねると8ビット(1バイト)の記憶回路(レジスタ)が合成できます。

■火災報知器
Sボタンを押すと、ブザーが鳴り出します。記憶(ラッチ)回路になっていれば、ボタンを離してもなり続けます。

NAND素子で合成
同じ回路を、ANDした後にNOTをしてから出力する素子 NAND を利用すると、この素子だけで、同じ動作をする回路ができます。一つのICの内部の4個の素子をすべて利用しています。

回路の組み合わせ
EXORをそのまま、ANDとORとNOT素子で合成すると次のようになります。3種の論理演算を利用するため、ANDとORとNOTの3個のICが必要です。

自動論理合成
 論理式を入力すると、それを実現する最適に近い回路を自動生成するシステムが利用できます。また。FPGAやCPLDを利用すると、一つのICの内部の数百から数万の素子があり、入力言語(HDL)から、必要な論理を自動合成してくれます。したがって、論理式レベルの簡単化を人手で行う必要性は少なくなっています。