65816 (コンピュータ)
W65816(65C816)は、アメリカ・ウェスタンデザインセンター(WDC)社の16ビットCPUで、モステクノロジー社6502の後継にあたるCPUである。65816の65は6502と互換性があることからきており、816は8ビットモードと16ビットモードの両方で動作することを意味している。
概要
6502に対して、メモリ空間が64kバイト×256バンク(計16Mバイト,アドレス長24ビット)に、アキュムレータ、インデックスレジスタおよびスタックポインタが16ビットに拡張された。エミュレーションモードでは6502の動作をエミュレートすることができる。
1980年代中頃から1990年代初頭にかけて、GTEとサンヨーを含む4社が65816をセカンドソースで供給していた。2006年現在でもまだWDCから販売されており、またWinbondの教育用TVのICであるW55V9xシリーズのような一部のシステムではIPコアとしてアーキテクチャが実装されている。
WDCの創設者でありCEOのBill Menschによってプロセッサの大半が設計された。彼は1982年にアップルコンピュータの顧問を務めた後でチップの開発を始めた。彼の仕事を援助した唯一の人間はレイアウトを担当した彼の妹のキャサリンだけだった。1984年3月にアップルとアタリへサンプルを送付し、チップの開発は完了した。
ルネサス エレクトロニクス社のマイクロコンピュータ・7700シリーズは65816と共通した設計だが、完全な互換性はない。
CPUの特徴
本リストは65C816Sの主な機能である(Sはスタティックコアの意)。
- 低消費電力(1MHzあたり300μA)とノイズ耐性の強化のために完全にスタティックなCMOS設計。
- 幅広い電圧幅での運用(様々な電圧の周辺機器を利用するため、1.8V±5%, 2.5V±5%, 3.0V±5%, 3.3V±10%, 5.0V±5%に対応)。
- 6502の設計とハードとソフトの完全な互換性を可能にするエミュレーションモード。
- 16MBのメモリ空間をアクセスできる24bitのアドレスバス。
- 16bitのALU、アキュムレータ、スタック、ポインタ、インデックスレジスタ。
- デュアルキャッシュおよびサイクルスティールのDMA実装のためのVDA(Valid Data Address)出力とVPA(Valid Program Address)出力。
- 割り込みベクタがアドレスされるときにVPB(Vector Pull)を出力。
- プロセッサのバスエラー状態からの復帰をサポートするアボート(ABORTB)入力とその関連ベクタ。
- プログラムのセグメンテーションまたは16MBの完全にリニアなアドレッシングを可能にするプログラムとデータバンクレジスタの分離。
- リエントラント、再帰、リロケータブルプログラミングの機能を提供する、ダイレクトレジスタとスタック相対アドレッシング。
- 24のアドレッシングモード-256のopコード(WDC 65C02の一部の新しいopコードを含む)を利用した92の命令セットでの13の6502互換(アドレッシング)モード。
- さらに電力を削減し、割り込みレイテンシを減らし、外部イベントと同期できるようにするWAI(Wait-for-Interrupt)とSTP(Stop-the-Clock)命令。
- COP(Co-Processor)命令とそのベクタはコプロセッサの構成(例えば浮動小数点プロセッサ)をサポートする。
- ブロック移動機能。
65802
W65802(65C802)は6502と完全にピン互換の65816CPUである。65802は1980年代中~後期から1990年代初頭にかけてWDCとGTEで量産された。
このチップは8ビットの8502/65C02から新しい16ビットの65812へのアップグレードパスとして設計された。65802は6502/65C02のような(64KBのメモリ空間の)16ビットのアドレスバスがあり、65816の24ビットのアドレスバスより削減された。バンク選択レジスタ等の65816の全てのレジスタは65802CPUのコアに残っており、これらは単に動作時に作用しない。ハードウェアメーカーがプロジェクトを一から設計する場合はよりパワフルな65816が一般的に使われた。
主な採用ハード
- エイコーン Acorn Communicator
- Apple IIGS
- スーパーファミコン (Ricoh 5A22というカスタム版CPU)
6502互換ということで、Apple II GSのCPUとして採用されている。
同様にファミリーコンピュータのCPUである6502の上位互換であることからスーパーファミコンにも搭載された(スーパーファミコン自体は公式的にはファミリーコンピュータと互換ではないが、上位互換性を持たせるように設計はされており、ファミコンのカセットを挿せるファミコンアダプタなるものも案としては存在した)。
一部のスーパーファミコン用ゲームソフトは65816上位互換の任天堂SA-1を搭載していた。