e
Z80は、2001年に米ザイログ社からリリースされた
8ビットマイクロプロセッサです。同社の歴史的な成功作である
Z80のアーキテクチャを基盤としつつ、性能と機能の向上を目指して開発されました。
概要と特徴
e
Z80は基本的な命令セットレベルで
Z80とのバイナリ互換性を維持しており、既存の
Z80向けソフトウェア資産をある程度活用することが可能です。しかし、内部アーキテクチャには改良が加えられており、特に3ステージのパイプライン処理機構が導入されています。このパイプラインにより、同じクロック周波数で動作させた場合に、従来の
Z80と比較して約3倍の命令実行性能を発揮することが可能となりました。さらに、最大50MHzという高いクロック周波数での動作に対応しています。この速度は、従来の
Z80を理論上150MHzで駆動した場合に匹敵する処理能力に相当し、特に高速な外部メモリと組み合わせることで、そのポテンシャルを最大限に引き出すことができます。
メモリアーキテクチャ
e
Z80のメモリアクセスには、主に二つのモードが用意されています。一つは従来の
Z80と互換性のある「
Z80メモリーモード」です。そしてもう一つが、e
Z80独自の「ADL(Advanced Data Length)モード」です。ADLモードでは、
メモリ管理ユニット(MMU)を使用することなく、最大16MBという大容量のメモリ空間を直接アドレス指定できるようになりました。これは、従来の
Z80が扱える64KBのアドレス空間から大幅に拡張された点です。ADLモードの利用に伴い、多くの主要なレジスタ(HL、BC、DE、インデックスレジスタのIXおよびIY、プログラムカウンタPC、スタックポインタSPなど)が、従来の
16ビットから
24ビット幅に拡張されています。
ADLモードで動作するコードは、直接的には
Z80コードとのバイナリ互換性はありません。しかし、MBASEレジスタを設定することにより、16MBのアドレス空間内の特定の場所(64KBの倍数アドレスのみ指定可能)を
Z80コードの実行領域として割り当てることが可能です。この機能を利用することで、広大なメモリ空間内にe
Z80独自のコードと従来の
Z80コードを混在させ、必要に応じてモードを切り替えながら実行することができます。
ハードウェアとソフトウェア
メモリインターフェースは
Z80のそれに類似していますが、バス要求/ACKピンに加えて、拡張されたメモリ空間や周辺デバイスへのアクセスを容易にするために4つのチップ選択ピンが追加されています。また、e
Z80をコアとする製品の中には、オンチップに
フラッシュメモリ(最大256KB)や高速SRAM(最大16KB)を内蔵したバージョンも提供されており、システムの小型化やコスト削減に貢献しています。
ソフトウェア開発環境についても、利用可能なリソースが存在します。フリーで利用できるTCP/IPスタックや、
組み込みシステム向けのオペレーティングシステムとして知られる
Xinuを基盤としたシステム、
リアルタイムオペレーティングシステム(RTOS)のカーネルなどが利用可能であり、e
Z80を用いたシステム構築を支援しています。
派生製品
e
Z80コアは、特定の応用分野向けに機能を統合したASSP(特定用途向け標準製品)シリーズの基盤としても利用されました。主な派生製品には以下があります。
eZ80Acclaim!: 最大128KBの
フラッシュメモリと8KBのSRAMを搭載し、最大20MHzで動作するASSPです。
eZ80AcclaimPlus!: 通信機能を強化したバージョンで、最大256KBの
フラッシュメモリ、16KBのSRAMを備え、最大50MHzでの高速動作が可能です。10/100BaseT
イーサネットMACなど、ネットワーク関連の周辺機能をオンチップで内蔵しています。