めざせ4004! IC24個で電卓用CPUを作ってみた: Chapter 1-2 本書の位置づけ
砺波郁氏の名著『CPUの創りかた』を読んで以来、筆者はこれまで以下の段階を経てTD4というCPUを拡張して来ました。
- TD4EX2
初出:2016年 「あんたCPUなんか創ってどうするのよ?!」
TD4のROM容量を4Kバイトに拡張。 - TD4EX1
初出:2017年 「ええっ?! CPU創ったの?! すっごーい!」
TD4にレジスタ間演算機能を追加。 - TD4EX3
初出:2018年 「この世のCPUを食べ尽くすのだ!」
TD4EX2にRAMを追加。ただしRAM容量は16語 (1語4ビット)。 - TD4EX4
初出:2019年 「あなたCPUなんか創ってどうするのかしら?!」
TD4EX3の命令セットを拡張し、減算命令の追加などを行った。
最後のTD4EX4で整数2桁の四則演算が可能な電卓を作成しました。
そして本書は以下のようになります。今回からCPUの名称からTD4を外すことにしました。
- EX4-2024
初出:2024年「目指せ4004?! IC 24個で電卓用CPUを作ってみた」
TD4EX4を拡張しRAMを256語に増量。そのRAMを活用するためにインデックスレジスタを搭載し、電卓用CPUとして最低限度の実用性を持つに至る。
本書では7桁の整数電卓を作成しています。少数の計算はできないものの、ある程度の実用性を持つ電卓を実現しました。
表1にこれらのCPUの仕様を簡単にまとめます。
| TD4 | TD8 | TD4EX2 | TD4EX1 | TD4EX3 | TD4EX4 | EX4-2024 | |
|---|---|---|---|---|---|---|---|
| 設計者 | 渡波郁 | Exit | |||||
| 発表年 | 2003年 | 2016年 | 2017年 | 2018年 | 2019年 | 2024年 | |
| ROM容量 | 16バイト | 256バイト | 4096バイト | 16バイト | 4096バイト | ||
| RAM容量 | なし | 16語 | 256語 | ||||
| メモリマップドI/O | |||||||
| 演算命令 | イミディエイトデータとの加算 | レジスタ間加算 | イミディエイトデータとの加算 | 加減算 | |||
| 命令長 | 8ビット | 12ビット | 可変長 1~2バイト | 1バイト | 可変長 1~2バイト | 固定長 2バイト | |
| 使用IC数 | 10個 | 17個 | 14個 | 11個 | 17個 | 16個 | 24個 |
| I/Oユニット | なし | あり (RAM含む) | |||||
| IC数9個 | IC数15個 | ||||||
| 入力装置 | ディップスイッチ | テンキー | |||||
| 出力装置 | LED 4ビット | LED 8ビット | LED 4ビット | 7セグメントLED | |||
| 2桁+1桁 | 7桁+1桁 | ||||||
| クロック | 手動 | 1kHz | |||||
| IC数1個 | IC数2個 | IC数4個 | |||||