【5分で覚えるIT基礎の基礎】デジタル回路の基礎の基礎 第2回これ一つで何でもできるNAND回路矢沢 久雄 グレープシティ アドバイザリースタッフ
●NAND回路の機能74シリーズの最初の型番である7400は,NAND回路です。NAND回路は,NOT ANDの略で「ナンド」と読みます。1個の7400の中は,4個のNAND回路が入っています(図1[拡大表示])。NAND回路は,AND演算の出力を反転(0なら1に,1なら0に)するものです(表1)。表1●NAND演算の真理値表
NAND回路の出力側に白丸が付いていることに注目してください。このような部分を「負論理(ふろんり)」と呼びます。負論理とは,有効を0で表すという意味です。前回説明したAND回路(7408)の出力は,有効を1で表しました。すなわちAND演算の結果が真なら1(+5V)を出力するものでした。このような考え方を「正論理(せいろんり)」と呼びます。それに対してNAND回路は,AND演算の結果が真なら0(0V)を出力するというものなので,「正」の反対の「負」すなわち負論理だというわけです。
●NAND回路でNOT回路を実現するNAND回路を使って,他の4種類の回路と同じ機能を実現してみましょう。まずNAND回路でNOT回路を作ってみます。そのためには,NAND回路の2つの入力を1つに結ぶだけです。これによって,NAND回路の2つの入力ピンには,両方1または両方0しか入力できなくなります。表1を見てください。NAND回路の入力が両方1なら出力は0になります。NAND回路の入力が両方0なら出力は1になります(図3[拡大表示])。これは,NOT回路の機能と同じです。
●NAND回路でAND回路を実現する今度は,NAND回路でAND回路を作ってみましょう。NAND回路の機能は,AND回路の出力を反転するものです。反転された出力をさらに反転すれば,もとに戻ります。すなわち,NAND回路の出力にNOT回路をつなげばAND回路と同じ機能になるのです。図4[拡大表示]では,NAND回路の出力に,NAND回路で作ったNOT回路をつないでいます。2つのNAND回路でAND回路を実現できたことになります。
●NAND回路でOR回路を実現するOR回路は「入力のどちらか一方が1なら出力が1になる」という機能を持っています。ここで,もう一度だけ表1に示したNAND演算の真理値表を見てください。「入力のどちらか一方が0なら出力が1になる」という機能になっていますね。このことから,NAND回路の2つの入力ピンをぞれぞれNOT回路で反転させれば,OR回路と同じ機能になることがわかります。「入力のどちらか一方が(NOT 0)=1なら出力が1になる」だからです。図5[拡大表示]では,NAND回路の入力に,NAND回路で作ったNOT回路をつないでいます。3つのNAND回路でOR回路を実現できたことになります。●NAND回路でXOR回路を実現する最後に,NAND回路でXOR回路を作ってみましょう。これは,ちょっと複雑になります。まずは,XOR演算の真理値表を見てください(表2)。 表2●XOR演算の真理値表
ここでAND回路を思い出してください。AND回路はどちらか一方の入力が0だと出力は0になります。これは見方を変えると,AND回路の入力2が1のときは出力はAND回路の入力1そのまま。入力2が0のときは出力は0ということです。 これでXOR回路を実現できそうです。入力がどちらも1の場合は,AND回路の入力2に0を入力しそれ以外の場合は,AND回路の入力2に1を入力します。こうした機能を持った回路とは,そう,NAND回路です。 ですから,AND回路の入力1にOR回路の出力を入れてやり,AND回路の入力2にはNAND回路の出力を入れてやります。OR回路とAND回路には,入力信号を分岐させて,同じ信号が入るようにします。これでXOR回路のできあがりです。
●AND回路とNOT回路でNAND回路を実現するNAND回路を使って,AND回路,OR回路,XOR回路,NOT回路のいずれも実現できることがわかりました。それでは,逆にNAND回路(7400)が手元になかったらどうしましょう。電車に乗って,秋葉原や日本橋まで買いに行きますか?そんな必要はありません。手元にAND回路(7408)とNOT回路(7404)があるなら,それらを使ってNAND回路を実現できるからです。NAND回路は,AND回路の出力を反転するものです。したがって,AND回路の出力ピンにNOT回路の入力ピンをつなげば,NOT回路と同じ機能になります(図7[拡大表示])。 今回の説明の中で,6つのNAND回路でXOR回路を実現する部分を難しいと感じたことでしょう。XOR回路の実現に当たっては,AND回路の入力2の信号によって,入力1をそのまま出力したり,入力1にかかわらず強制的に0を出力しました。このようなAND回路は,信号の流れを制御するゲートとして使われているのです。そこで次回は,基本的な演算回路をゲートとして使う方法を紹介します。お楽しみに!
キーワード
|
|