MC6809
出典: フリー百科事典『ウィキペディア(Wikipedia)』
MC6809は、米モトローラ社が1979年に発売した、8ビットのマイクロプロセッサ。対称性の高い命令体系を持っている点が特徴である。
目次 |
[編集] 概要
MC6809は、米モトローラ社が開発した8ビットCPU。レジスタには8ビットのアキュムレータを2つ(A,B。一部の命令では2つを連結して16ビットのアキュムレータ(D)として使用できる)、16ビットのインデックスレジスタを2つ(X,Y)、および16ビットのスタックポインタを2つ持つ(U,S)。インデックスアドレッシングにおいては、スタックポインタもインデックスレジスタとして指定できる。
前身となるMC6800とは、アセンブリのソースを記述するためのニーモニックの互換性は保たれていた(対応したアセンブラでは、自動的に等価な命令に変換する)ものの、ピン配列およびバイナリ(機械語)に互換性はない。命令数は6800の78に対して6809は59であるが、等価な命令によってカバーできる。
8ビットCPUとしては最後発のアーキテクチャであるが、後発ゆえによく練られた直交性の高い命令体系が特徴である。高級言語を意識した豊富なアドレッシングモードや乗算命令を持つ、シンプルかつ高性能なプロセッサである。CPU単体でもOS-9によってプリエンプティブなマルチタスクを実現し、また外付けのMMUを接続することでメモリ空間の拡張やメモリ/プロセス保護さえ実現可能である(モトローラはファミリチップとしてMC6829 MMUを用意し、最大2MBのメモリをサポート。この機能はOS-9 Level2でサポートされる)。
動作クロックは80系CPU(8080、Z80)と比較して低いが、二相クロックの利用により1クロックでメモリアクセスが可能であり、命令の実行に必要なクロック数も6800と比べて大幅に少なくなっている(ほとんどの命令で等価なZ80の命令の半分以下)。またレジスタの少なさをカバーするページメモリへの高速なアクセス(6800では0番地からの256バイトに固定されていたが、6809ではダイレクトページレジスタDPでアドレスの上位8ビットを指定できる)も可能で、実際の処理速度では遜色は無く、当時の水準では最も高速な8ビットCPUであった(6800比最大約5倍)。
6809においては、豊富なアドレッシングモードや全アドレス空間に対応した相対ジャンプ命令などを利用して、位置非依存(ポジションインディペンデント)、再入可能(リエントラント)なコードの記述を容易に行え、組み込みシステムの開発などで利便性を発揮した(リンカやローダによるコードの書き換えを必要とせず、バイナリをメモリ上の自由な位置に配置するだけで動作する)。例えば、OS-9では位置依存コード、再入可能でないコードは利用できない。
このような背景から、登場当時の月刊アスキー誌上では「究極の8ビットCPU」と紹介された。
[編集] バリエーション
MC6809には、クロック周波数が1MHzの6809、1.5MHzの68A09、2MHzの68B09があり、それぞれにクロックジェネレータを内蔵しない外部クロック版(型番の末尾にEが付く)がある。計6つのバリエーションが存在することになる。外部クロック版は2相クロックを外部で生成して供給、内蔵版ではクロックの4倍の周波数の水晶発振子を接続する。
モトローラから発売されたオリジナル品に加え、セカンドソース品が存在する。日本では主に日立製作所と富士通によるものが流通した。
[編集] 6309
日立によるセカンドソース品では、オリジナルと完全互換のHD6809と、CMOS構造のHD6309(クロック周波数2MHzのHD63B09と3MHzのHD63C09。それぞれに外部クロック版(末尾にEが付く)がある)が提供された。6309は単にクロックを高速化しただけではなく、ある隠し命令を実行すると、俗にネイティブモードと呼ばれる、オリジナルには存在しないレジスタや命令が追加され、全体の動作が高速になるモードへ移行する。このモードでは、同じ命令の実行に必要なクロックが互換モードと比べて少なく、ネイティブモードに移行するだけで約30%高速になる。発売当初わずかの間公開されていたものの、モトローラからライセンス違反とのクレームがつき(セカンドソースはオリジナル完全互換であることが要求された)、公式には封印されてしまった。しかし後年、FM-7用のアクセラレータが製作された際に、熱心なユーザの手により資料の発掘が行われた。これらはオリジナルに対してバイナリやピン配列の互換性はあるものの、オリジナルでの未定義コードを用いた場合に双方で動作が異なるため、置き換えには注意が必要である。
[編集] 搭載製品
日本国内で流通したパソコンでは富士通のFM-8、FM-7シリーズ、FM-77シリーズ、FM-11シリーズと日立のベーシックマスターレベル3シリーズとMB-S1が6809を搭載した。
パソコン市場ではふるわなかった感の強い6809だが、アーケードゲーム業界では1980年代を通じて積極的に採用された。ナムコの「ドルアーガの塔」、コナミの「ハイパーオリンピック」、カプコンの「魔界村」などのヒット作品が6809を用いた。(コナミでは6309の搭載実績もあり)