65816 (コンピュータ)

W65C816S



W65C816Sは、ウェスタンデザインセンター(WDC)によって開発され、1985年にリリースされた16ビットマイクロプロセッサ(MPU)です。このチップは、モステクノロジーの6502 NMOS MPUのCMOS改良版であるWDC 65C02(8ビットMPU)をさらに発展させたもので、先行モデルとの互換性を維持しつつ、16ビット処理能力と拡張された機能を追加しました。Apple IIGSの主要な中央処理装置(CPU)として採用されたほか、日本のゲーム機であるスーパーファミコンでは、これを基にしたカスタム版CPUが使用されました。

プロセッサの名称「65816」は、先行モデルである65C02との高い互換性を持つ「エミュレーションモード」を示す「65」と、8ビットまたは16ビットのレジスタサイズを選択して使用できる能力を示す「816」に由来します。16ビット幅のレジスタが利用可能になったことに加え、W65C816Sはメモリアドレス空間24ビットに拡張し、最大16MB(64KBバンクが256個分)のランダムアクセスメモリ(RAM)をサポート可能になりました。また、強化された命令セット、16ビット幅のスタックポインタ、およびシステムハードウェアの管理を容易にするためのいくつかの新しい電気信号を備えています。

リセットが実行されると、W65C816Sは「エミュレーションモード」と呼ばれる状態で起動します。このモードでは、ほぼ65C02として動作し、多くの既存65C02ソフトウェアとの高い互換性を保ちます。その後、特定の2命令シーケンスを実行することで、「ネイティブモード」に切り替えることが可能です。ネイティブモードでは、16ビットレジスタや24ビットアドレス空間を含む、W65C816Sのすべての強化機能が有効になります。ただし、ピン配置に関しては、65C02のPDIP40パッケージが先代6502とピン互換性を持つのに対し、W65C816SのPDIP40パッケージは6502ファミリーの他のどのMPUともピン互換性を持たない点が異なります。

W65C802(または65802)は、65C816とソフトウェアレベルで完全に互換性がありながら、6502や65C02と電気的なピン互換性を持つように設計された派生モデルです。これにより、65C802は6502または65C02を搭載した多くの既存システムで代替品として使用することが理論上可能でした。しかし、65C802は物理的なピン数の制約から24ビットのアドレスを出力できず、アクセス可能なアドレス空間が64KBに制限されるという欠点がありました。このため、新規設計では通常65C816が選択され、65C802は現在生産されていません。

歴史



WDCの創設者兼CEOであるビル・メンシュは、1981年に65C02の開発に着手しました。主な目標は、オリジナルの6502が採用していたNMOSプロセスを消費電力の低いCMOSプロセスに移行することであり、これにより同じクロックスピードで消費電力を大幅に削減することが可能となりました。また、より高いクロック周波数をサポートする能力の向上も目指されました。65C02の設計では、NMOS 6502に存在したいわゆる「エラッタ」(不具合)を修正し、新たな命令や既存命令に対する新しいアドレッシングモードが導入されました。

1982年、メンシュはアップルコンピュータとの協議を経て、グラフィックスやサウンド機能を強化した新しいApple IIシリーズ向けにW65C816Sの開発を開始しました。Appleは、Apple IIで使用されていた6502とのソフトウェア互換性を維持しつつ、より大容量のメモリにアクセスでき、16ビットのデータを効率的に扱える新しいMPUを求めていました。W65C816Sは1984年3月に設計が完了し、その年の後半にはAppleやAtariにサンプルが提供され、1985年に正式にリリースされました。ビル・メンシュの妹であるキャサリンも開発チームに加わり、デバイスのレイアウトの一部を担当しています。

65C802も同じ開発プロセスの中で誕生しました。このチップは65C816と内部構造は同一であり、同じ製造ラインで生産され、最終段階のメタル化工程で外部ピンへの接続方法が異なりました。65C802はオリジナルの6502と同じピン配置を持つことで互換性を実現しましたが、これによりアドレスピンが16本に制限され、外部メモリへのアクセスが64KBに限定されました。システムをゼロから設計する多くのメーカーは65C816を選択したため、65C802は生産を終了しました。

Appleはその後、Apple IIGSコンピュータに65C816を採用しました。このプロセッサの基本設計は、1980年代中頃から1990年代初頭にかけて、VLSI Technology、GTE、三洋電機など、複数のメーカーによってセカンドソース供給されました。ルネサスエレクトロニクスマイクロコンピュータである7700ファミリは65816と設計上の共通点がありますが、完全な互換性はありません。1990年代には、65C816と65C02は完全にスタティックなコアに改良され、プロセッサのクロック供給を停止してもレジスタの内容を保持できるようになり、待機時の低消費電力を実現する設計を可能にしました。

2024年4月現在でも、W65C816SはWDCから40ピンPDIP、44ピンPLCC、44ピンTQFPといったパッケージで提供されており、また、W65C265としてマイクロコントローラ(MCU)の形で、あるいはASIC統合のためのIPコアとしても提供され続けています。

主な特徴と機能



WDC 65C816は、以下のような特徴を備えています。

スタティックCMOS設計: 完全なスタティック設計により、低い消費電力と優れたノイズ耐性を実現。広い動作電圧・クロック周波数範囲をサポート。
動作モード: 「エミュレーションモード」により6502/65C02と高いソフトウェア互換性を持ち、「ネイティブモード」で全ての強化機能を利用可能。両モードで256個のオペコードが機能します。
拡張アドレッシング: 24ビットメモリアドレッシングにより、16MBの広大なアドレス空間へのアクセスが可能。
16ビットレジスタ: ALU、アキュムレータ(A)、スタックポインタ(SP)、インデックスレジスタ(X、Y)が16ビット幅に拡張。16ビット幅の直接ページ(ゼロページ)レジスタ(DP)も搭載。
バンク機能: 8ビットのデータバンク(DB)およびプログラムバンク(PB)レジスタがアドレスの上位ビット(16-23ビット)を生成し、アドレス空間をバンクに分割。PBとDBが独立していることで、プログラムとデータを異なるバンクに配置可能です。
制御信号: 有効データアドレス(VDA)、有効プログラムアドレス(VPA)、ベクタプル(VPB)といった信号出力により、外部ハードウェア連携を強化。アボート(ABORTB)入力と関連ベクタによるバスエラー処理もサポート。
命令セット: 元の6502の13種を含む合計24種のアドレッシングモードと、92種の新命令を追加。RAM間でデータを効率的に移動させるブロックコピー命令(MVN、MVP)、消費電力を抑えるWAI/STP命令、コプロセッサ連携用のCOP命令などを搭載しています。
モード切り替え (XCE命令): エミュレーションモード(eビット)の状態をキャリーフラグ(cビット)と交換するXCE命令によって、容易に両モードを切り替えることができます。

主な採用ハードウェア



W65C816およびそのカスタム版は、以下のシステムで重要な役割を果たしました。

エイコーン Acorn Communicator
Apple IIGS: 6502互換性を持つ高性能CPUとして採用されました。
SuperCPU: コモドール64用の拡張カートリッジとして開発され、標準のCPUを置き換えて性能を向上させました。
スーパーファミコン: ファミリーコンピュータCPUである6502ファミリーの上位互換にあたる本チップを基に、リコーによってカスタマイズされた Ricoh 5A22がCPUとして搭載されました。
任天堂SA-1: 一部のスーパーファミコン用ゲームカートリッジに搭載されたカスタムチップで、65C816の上位互換の機能を持つコプロセッサとして使用されました。
Foenix Retro Systems C256 U/U+ および F256K: 現代のレトロコンピュータプロジェクトで主要CPUとして採用されています。

これらの採用例は、W65C816が持つ互換性と拡張性が、様々な時代のハードウェア設計において価値ある選択肢であったことを示しています。

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。