NORだけでZ80互換CPUをつくる 〜 論理ゲート 〜

NORだけでZ80互換CPUをつくる 〜 論理ゲート 〜
カテゴリー: つくる
投稿日:
更新日:
書いた人: 山椒ねこまんま

NAND(74HC00)だけで16bitCPUを作る[NLP-16] という記事を読み、使用可能な論理ゲート種類縛りでのCPUを制作をやりたくなりました。

そこで、

  • NAND
  • NOR
  • AND,NOT
  • OR,NOT

の中のどれにするか考えた結果、NOR にすることにしました。

NANDからコンピュータを作るゲームがあったり、論理完全性の例としてよくNANDが挙げられているのに対し、NORの知名度が低いのはなぜだろうか気になったからです。

今回の作成を通してNORとNANDの使いやすさとかを比較できたらなーと思います。


そんなわけでまず最初に、各論理ゲートをNORとNANDで作成することにしました。

NOT

not

inout
01
10

AND

and

inAinBout
000
010
100
111

NAND

nand

inAinBout
001
011
101
110

OR

or

inAinBout
000
011
101
111

NOR

nor

inAinBout
001
010
100
110

XOR

xor

inAinBout
000
011
101
110

XNOR

xnor

inAinBout
001
010
100
111



以上の論理ゲートを構成するために必要なNOR/NANDの必要数は、

NORNAND
NOT11
AND32
NAND41
OR23
NOR14
XOR54
XNOR65
合計2220

AND・NANDとOR・NORは対称的なのでいいとして...

XOR/XNORを作成するのに必要なゲート数はNANDの方が少ないという結果になりました。 これが後々どう響いてくるのかが気になりますが...

回路をNANDとNORの両方で書くのは結構面倒だったので以降はNORだけにしようと思います。





アプリを作ったりしています! よかったらみていってくださいね→ つくったもの
今のイチオシ↓