あんたCPUなんか創ってどうするのよ?! Vol.1 第0章 第1節

~TD4とかいうCPUがあまりにも残念だったので拡張してみた~

2016/8/14
コミックマーケット C90 3日目 西g16b

第0章 第1節 筆者とTD4の関わり

TD4とは渡波郁氏の著書「CPUの創りかた」の中で製作している4ビットCPUの事です。有名な書籍なので本屋で見かけた人も多いのではないでしょうか。正確な販売数は把握していませんが、筆者が購入したのが第22刷であることを考えると、相当数売れたヒット書籍だと思います。

さて、筆者が「CPUの創りかた」を買う前に、TD4の存在を知らされたときに聞いたのは、以下のような情報でした。

  • 4ビットのCPUである
  • 10個のICで構成されている
  • 加算しかできない

まあショボいですね。

しかし筆者は気にしませんでした。回路で構成されているのなら、改造することでビット数を増やしたり、減算などの機能を追加したりすることは造作もないと考えていたからです。

そんなある日、筆者の所属するZOB.Club内でCPUを自作する話が持ち上がり、前出のTD4について調べてみると、筆者の考えは一蹴されました。TD4は筆者の考えていたような常識的なCPUではなかったのです。実際のTD4は「加算しかできない」どころか、まともな加算すらできないとんでもない代物でした。はっきり言ってCPUを名乗ることに疑問を呈するレベルです。

と、筆者は考え、そのことをZOB.Club内で説明しましたが全く取り合ってもらえず、理解すらしてもらえませんでした。どうやらみんなはTD4を良く出来たCPUだと思っているようなのです。筆者からすればメンバーの頭の中身を疑うレベルなのですが、世間一般の基準では、どうやら疑われるべきは筆者の頭の中身のようです。

しかし、疑われたままでは悔しいので、筆者はTD4を拡張してみることにしました。言葉で理解してもらうのが無理ならば、実物で証明するしかなく、拡張することによって、逆にTD4の問題点が良くわかるだろうと考えたからです。

そこで、本Vol.1で製作するCPUは、プログラムエリア(ROM)の容量を4キロバイトに拡張します。さらに次回のVol.2ではデータエリア(RAM)を追加します。常識的なCPUならばちょっとしたゲームくらい作成できる仕様になる筈です。

しかし、TD4はそうはなりません。

なぜでしょうか?

その答えはVol.3で解説します。Vol.3ではTD4の間違いについて解説するとともに、命令デコーダーを丸々変更して拡張し、電卓を製作します。

Vol.1~Vol.3を通じて、CPUとはどのようなものであるべきかを理解して頂ければ幸いです。

写真2 筆者が製作したTD4の拡張4KB ROMバージョン、通称TD4EX2
写真2 筆者が製作したTD4の拡張4KB ROMバージョン、通称TD4EX2