- ベストアンサー
CMOSゲートはなぜ負論理(NAND、NOR)?
大学でCMOSについて勉強をしました。 ここでひとつ疑問を持ちました。 なぜCMOSゲートはAND、ORではなくNAND、NORを使うのでしょうか? 人間の感覚から言って、AND,ORを使用したほうが自然だと思います。 NANDとNORだけで全ての論理が記述可能だそうですが、きっと実際はNOTも使うでしょう。 またゲートを構成する際に必要な面積は、ANDでもORでも NMOS2個、PMOS2個で変わらないと思います。 わざわざドモルガンの法則で論理式を変換するのが面倒です。 お解りになられる方がいらっしゃいましたら力を貸してください。 お願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
実は、CMOSの場合は、AND OR の方が作りやすいのです。 ICの内部等値回路をしらべて見てください。1段ではスレッショルドが不安定でファンアウトが不足。で、バッファを入れると論理が反転して、ANDとORに。初期のCMOS-ICはANDとORとNOTが基本でした。現在のNAND-NORは3段構成になっています。わざわざ反転しているのは・・・ CMOSロジックICが登場した頃、デジタルICの主流はDTLからTTLに移ってましたが、どちらもICの構成上NANDが基本でした。最初にの頃のCMOS-ICにはNANDやNORはありませんでしたが、後にNANDやNORも登場しました。設計者としては、応用例の豊富さや馴染みの点でAND-OR型よりもNAND-NOR型を使方が気楽で、ピン接続がTTLと同じ74Cや74HCシリーズが出てからは置き換え等も可能なので、こちらのシリーズ圧倒的にが売れた(4500シリーズなどすぐに消滅した)ようです。つまり、すでに普及していたTTLの74シリーズと動作を揃えるために敢えてNAND-NOR型にしたと言えるでしょう。 DTLやTTLでロジック設計始めた頃は、馴染むまでは何となく違和感がありましたが、性能や価格のためなど(DTLではNAND-NORでの回路構成にはいろいろ技があったし)の理由もあり、「そんな物」と思ってやってました。一度慣れてしまうと、正負どちらの論理(というかどちらとも言い難い)でも組めるようになりますし。 実装やコスト面も考えると、NAND-NORは余りゲートがあればNOTとして使えますが、AND-OR型だと、1ゲートでも反転が必要な時にはICが1個増えてしまいます。回路の中で1個のNOTが必要な場合、遠くにあるICのゲートまで配線するよりも、近いNANDやNORを代用する方が合理的な事が多いです。案外これがいちばんの理由かも。
その他の回答 (4)
- ymmasayan
- ベストアンサー率30% (2593/8599)
> NANDとNORだけで全ての論理が記述可能だそうですが 重箱の隅をつつくようですが、 1.NANDだけで全ての論理回路を構成 2.NORだけで全ての論理回路を構成 のどちらも可能です。 1種類のゲートだけで済むのでLSIの設計が非常に楽になります。 ちなみに、NOT(NOR(NOT A,NOT B))=NAND(A,B) NOTは既に回答されている通り、NORまたはNANDから簡単に作れます。
お礼
ご指摘ありがとうございます。 たしかにドモルガンの法則を使うと、NANDだけでNORがつくれて、NORだけでNANDがつくれますもんね。
- fjnobu
- ベストアンサー率21% (491/2332)
>NANDとNORだけで全ての論理が記述可能だそうですが、きっと実際はNOTも使うでしょう。 その通りです。 しかしインヒビットする場合はNOTが必要です。AND,ORのみでは? EXORを作る場合は、NANDなら2入力4個で出来ます。AND、ORのみでは? 難しいですよね。 NOTを作るには、NANDでもNORでも入力をショートしておけばNOTになります。
お礼
ありがとうございます。 インヒビットというのはinhibit: 抑制する、のことで、使う部品を限定するみたいな意味なのでしょうか? そうするとたしかにANDとORのみでは y=not(x) という回路すら作れないですよね。 NAND、NORの方が使いやすいってことですかね。
- kaZho_em
- ベストアンサー率50% (2950/5879)
> NANDとNORだけで全ての論理が記述可能だそうですが と、お書きですが、これ自体が大きな理由です。 つまり、NANDとNORがあればANDとORが作れますが、ANDとORしか無い場合 NANDやNORは 作れません。つまり別の設計への流用性(使い回し)が高く、不意の設計変更が生じた際には 柔軟に対応できます。
お礼
ありがとうございます。 NANDとNORのペアの方が使い勝手がいいってことですね。 今気が付いたんですが、NAND・NORを使うのは、べつにCMOSの特性とは関係なかったりするんですかね?
- OsieteG00
- ベストアンサー率35% (777/2173)
NOTは、NANDまたはNORの入力に同じものを使えば実装できます。というか、この方式でされているものがほとんどです。 NANDやNORの方が、一つの素子でできたと思います。ANDやORは、実際はNANDやNORの出力に上記のNOTをはさんでいるので、単純に複雑になるとか。
お礼
回答ありがとうございます。 >NOTは、NANDまたはNORの入力に同じものを使えば実装できます。 そうなんですか?NOTはNMOS1個とPMOS1個で作れるみたいですが、それを使わずにNANDやNORを使うのはどんな意味があるのでしょうか? ANDやORはCMOSで作りにくかったりするんですかねえ。
お礼
なるほど。DTLやTTLなど、過去の設計ノウハウを引き継ぐためにNAND・NORを使うという説ですか。 慣れるとちゃんと使えるようになるんですかね。 なんか納得できたような気がします。 ありがとうございました。