MC6800
Motorola MC6800 microprocessor
生産時期 1974年 (50年前) (1974)から
生産者 モトローラ
CPU周波数 1 MHz から 2 MHz
アーキテクチャ 6800
パッケージ 40ピンDIP
次世代プロセッサ
トランジスタ 4,100
テンプレートを表示

MC6800(通称「6800」)は1974年にモトローラ社(モトローラの半導体部門は、2004年にフリースケール・セミコンダクタとして独立し、2015年、NXPセミコンダクターズに吸収合併された)が開発した8ビットマイクロプロセッサである。

概要

ミニコンのアーキテクチャと、プログラム分析に基づいて設計された。PDP-11のアーキテクチャを参考にしたといわれる。同時期のインテルの8080と比べて、洗練された構成が評価されている。ただし、インデックスレジスタが一つしかなく、ブロック転送の手順に手間がかかる点が弱点として挙げられる。

8ビットのレジスタを二つ、16ビットのインデクスレジスタを一つ持つ。レジスタの少なさをカバーするために、メモリの0000〜00FFを8ビットで指定するダイレクトアドレッシング機能を備えていた。MC6800の命令は、ALU演算/ロードストア系、インデクスレジスタ/スタックポインタ操作系、絶対番地分岐/相対番地分岐系、CCR操作系に区分されている[1]。分岐命令に-128〜+127の相対アドレッシングを使用できるので、位置に依存しないプログラムを作成できる。そのほかにも10進演算命令やビットテスト命令、ソフトウエア割り込み命令を備えており、また二相クロックを使用してメモリアクセスを1クロックで実行する。これを利用し、CPUがメモリアクセスするタイミングと、ビデオコントローラが表示のためにメモリをアクセスするタイミングを協調させ、バスの競合が起きないようにすることができた(トランスペアレントによるサイクルスチール)。

当初ゼネラルモーターズの自動車用電子制御コンピュータとして設計された。

レジスタ

A アキュムレータ8ビット
B アキュムレータ8ビット
X インデクスレジスタ16ビット
PC プログラムカウンタ16ビット
SP スタックポインタ16ビット
CCR コンディションコードレジスタ(フラグレジスタ)8ビット

周辺デバイス

MC6800バスに接続可能な周辺デバイスファミリーが存在する。メモリマップドI/Oが採用され、I/Oポートは、メインメモリアドレス空間の一部にマッピングされる[2]。

シリーズ展開

MC6800から派生したMPU/MCU

以下に、MC6800をベースに開発されたプロセッサを示す。オブジェクトコードの互換性はないが、一部ではニーモニックレベルでの上位互換が考慮されている。

関連項目

脚注

  1. ↑ “Appendix B 6800 instruction set”, THE ESSENCE OF THE 6800 MICROPROCESSOR, pp. 202-204 2020年12月18日閲覧。
  2. ↑ CompArchOrg & 1978,1979, p. 419.
  3. ↑ “誕生(No.34)”, 富士通の半導体ヒストリー 2020年12月26日閲覧。

参考文献

外部リンク

⌬ Phoenix Mesh CID: 未登録 IPFS未登録 📡 0ピア N=1 CRITICAL PQS B74