MC68020(エムシー ロクハチゼロニゼロ)は、1984年に
モトローラによって開発された
32ビットマイクロプロセッサです。このプロセッサは、先代の68000および68010の後継であり、68030へとつながる重要な系譜を持っています。さらに、低価格版として68EC020も存在し、コストパフォーマンスを重視した選択肢を提供します。
設計の革新
MC68020の大きな特徴は、データバスと
アドレスバスの完全な
32ビット化です。従来の68000系および68010は、データバスが16ビット、
アドレスバスが23ビットであったのに対し、68020はその制約を取り払い、両方を
32ビットに拡張しました。これにより、性能が大幅に向上し、多くの演算や処理が迅速に行えるようになりました。また、新しいパッケージング技術によって、多くのピンを必要としながらも従来のDIPサイズを維持しています。
低価格版の68EC020は
アドレスバスを24ビットに制限し、より手頃なコストでの利用を可能にしました。この
マイクロプロセッサは、12MHzから33MHzの範囲で動作する製品として出荷され、幅広い用途に対応しています。
68010からの改良点
68020は、演算論理ユニット(ALU)や外部データバス、外部
アドレスバスの完全
32ビット化を実施し、また新しい命令や
アドレッシングモードを追加しました。さらに、3ステージのパイプラインを導入し、高速な命令処理を実現しています。68010に搭載されていた「ループモード」は、68020では256バイトの通常の命令キャッシュに置き換えられ、68kシリーズで初めて
キャッシュメモリが標準装備されました。
従来の68000および68010では、アクセス可能なワードやロングワードに制限がありましたが、68020ではその制約が取り除かれ、より柔軟なデータアクセスが可能になりました。ただし、整列されていないロングワードへのアクセスは、整列されたものよりも遅いという点には留意が必要です。
さらに、68020では
リアルタイムオペレーティングシステムのニーズに応えるために、割り込み処理用のスタックポインタが追加され、通常のユーザーモードおよびスーパーバイザモードとは独立した処理が可能となりました。これにより、割り込み処理の効率が向上しました。
MC68020は新しい
コプロセッサインターフェースを搭載し、最大8個の
コプロセッサを接続可能です。特に、
メモリ管理ユニット(MMU)や
浮動小数点数演算装置(
FPU)の接続が可能で、メインプロセッサとの協調作業を行うことができます。これにより、より高度な計算処理能力が求められる場合でも対応できる柔軟性を持っています。
マルチプロセッシング機能も搭載されており、RMCピンを通じて他のプロセッサへの信号供給が行われ、メモリアクセスの競合を防いでいます。この機能により、複数のCPUが同時に動作するシステムでの効率的な処理が可能となります。
MC68020では、スーパーバイザモードに関連するいくつかの改良も加えられており、特権レベルの実装が強化されました。新しい命令セットには、
32ビット間の掛け算や64ビット数を
32ビットで割るといった機能が含まれており、高難度の数値処理を行う能力が向上しています。
アドレッシングモードも改善され、間接アドレッシングが柔軟になるなど、多くのアプリケーションに対応できるように設計されています。これにより、MC68020は特にページプリンティングに適した性能を発揮することができ、1990年代初頭の多くの
レーザープリンターにおいてそのコアが利用されました。
使用例
実際にMC68020は、コモドールの
Amigaや
Appleの
Macintosh II、
Sun-3ワークステーションなど、様々な
パーソナルコンピュータに広く使われました。また、ナムコのアーケードゲーム
SYSTEM22やフランスの
TGVのシステムにも使われ、技術的な影響力を知らしめています。
派生版とまとめ
68EC020は68020の低価格版として、特定の用途向けに制作されました。コモドールの
Amiga 1200やアーケードゲームの基板にも採用されるなど、MC68020の技術は様々な領域で活用されています。新しいアーキテクチャと命令セットの導入により、MC68020はその後の
マイクロプロセッサ技術の発展に大きな影響を与えました。