17

24

20

16

23

18

25

21

19

22

MCS−4チップ・セット 511

●はじめに

 これまでいろいろなことを長々と解説してきました
が,その集大成として,世界最初のマイクロコン
ピュータであるインテル社4ビット・マイクロコン
ピュータ・システムMCS−4の4004(CPU)および,そ
のチップ・セット一式をVerilog HDLで論理設計し,
MAX 10に実装したいと思います.
 その前にまず本章では,4004をはじめとする
MCS−4システムのアーキテクチャ全体を詳細に解説
します.さらに4004のプログラム開発用アセンブラ
やシミュレータを自作したので,それについても説明
します.これで今日からあなたも,4004の名プログ
ラマになれます.

●4ビットに慣れよう

 4004は4ビットCPUなので,扱うデータは基本的
には4ビット単位です.よって,データのアドレスは
4ビット単位でアサインされます.今どきのマイコン
少年〜中年の皆さんは,8ビット単位のデータとアド
レスには慣れていると思いますが,4ビット単位にな
ると少し違和感を感じるかもしれません.ぜひ,その
違和感を快感として楽しんでみてください.なお,命
令コードは8ビット単位なので,そのアドレス・アサ
インは8ビット単位になっています.

MCS−4チップ・セット

●MCS−4チップ・セット

 4ビット・マイクロコンピュータ・システムを組む
ためのチップとしては,4004(CPU),4001(ROM),

本書付属DVD-ROM収録関連データ

DVD-ROM格納場所

内 容

CQ-MAX10¥RaspberryPi¥
CQ-MAX10.tar.gz

Raspberry Piのホーム・ディレクトリ下に作業用ディレクトリ/home/pi/tempを作成し,本ファイル

をその下に置いて解凍(tar xvfz CQ-MAX10.tar.gz)する.その後,解凍してできたディレクトリのうち

/home/pi/temp/CQ-MAX10/MCS4を,/home/pi/CQ-MAX10/の下にコピー
/home/pi/CQ-MAX10/MCS4/ADS4004が,4004 CPUの2パス・アセンブラ,逆アセンブラ,シミュ

レータ(標準Cで記述)

23

インテルMCS−4アーキテクチャをじっくりと堪能して,

先人の知恵の深さを感じとろう

4004CPUアーキテクチャと

MCS-4システム

第6部 マイコン黎明期の4004システムを設計し,歴史的電卓を再現する

写真1 筆者所蔵のインテル社MCS-4チップ・セット

上から,4001(マスクROMおよび入出力ポート),4002-1/4002-2(RAM
および出力ポート),4003(出力ポート拡張用シフトレジスタ),4004(4
ビットCPU).4002には4002-1と4002-2の2種類があるが,RAM
のバンク内チップ番号の割り当て方法によって使い分けるために用意さ
れている