AMBA 4
AMBA 4仕様では、AMBA 3仕様上に、ACE(AXI Coherency Extensions)を含む、より多くのインタフェースプロトコルが導入されました。高帯域幅、高クロック周波数のシステム設計に対応し、モバイルやコンシューマ向けアプリケーションで一般的な高速インターコネクトに適した機能を備えています。
AMBA AXI / ACE
AMBA 4 AXI および ACE 仕様では、一連のプロトコル、特に AXI4、AXI4-Lite、ACE、および ACE-Lite が定義されています。
ACE
ACEプロトコルは、ACEマネージャキャッシュとキャッシュメンテナンスハードウェア制御の間でデータを共有するための3つのチャネルを追加しています。ACEはまた、複数の未処理トランザクションの順序付けを強制するバリアサポートを追加し、先行トランザクションの完了を待つCPUストールを最小化します。Distributed Virtual Memory (DVM)シグナリングは、複数のACEマネージャにまたがる仮想メモリマッピングを維持します。
ACE-Lite
ACE-Liteプロトコルは、ACEシグナルの小さなサブセットで、ACEマネージャがACE-Liteマネージャのキャッシュコヒーレンシーを維持するI/O、または一方向のコヒーレンシーを提供します。ACE-Lite Managerは、ACE Managerのキャッシュをスヌープすることができますが、他のManagerはACE-Lite Managerのキャッシュをスヌープすることはできません。ACE-Lite は、バリアもサポートしています。
AXI4
AXI4 プロトコルは、AXI3 の更新版で、複数のマネージャで使用する場合のインターコネクトの性能と使用方法を向上させるものです。以下のような機能強化が含まれています。
- 最大256ビートまでのバースト長のサポート
- Quality of Service シグナリング
- 複数領域のインターフェイスのサポート
AXI4-Lite
AXI4-Liteプロトコルは、AXI4プロトコルのサブセットで、コンポーネント内のよりシンプルで小さな制御レジスタスタイルのインターフェイスとの通信を目的としています。AXI4-Liteインターフェイスの主な特徴は以下の通りです。
- すべてのトランザクションが1バースト長
- すべてのデータアクセスは、データバスの幅と同じサイズ
- 排他的アクセスはサポートしていない
AMBA AXI-STREAM
AMBA 4 AXI-Stream仕様では、送信機から受信機への一方向のデータ転送を目的としたAXI4-Streamプロトコルが定義されており、信号の配線が大幅に削減されています。このプロトコルの主な特徴は以下の通りです。
- 同じ共有配線セットを使用したシングルおよびマルチデータストリームをサポート。
- 同一インターコネクト内で複数のデータ幅をサポート。
- FPGAへの実装に最適。
AMBA ATB
AMBA 4 ATB仕様では、ATBインターフェースを拡張し、トレース同期信号と同期要求信号などの機能を導入しています。ATBは、トレースシステム内のコンポーネント間でトレース情報を転送するための、データに依存しないインタフェースである。トレースコンポーネントとバスは、ペリフェラルやインターコネクトと並列に配置され、デバッグのための可視性を提供します。
AMBA APB
AMBA 4のAPB仕様では、APBインタフェースにトランザクション保護とスパースデータ転送を導入しています。APBは、コンフィギュレーションレジスタへのアクセスに必要な低帯域幅トランザクションや、ペリフェラルにおける低帯域幅のデータトラフィックをサポートします。APBは非常にコンパクトで低消費電力であり、コンフィギュレーションや低帯域幅のトラフィックを高性能インターコネクトから分離することが可能です。AMBA 4 APBはAMBA 3 APBと完全な下位互換性があり、既存のAPBペリフェラルを使用することができます。
AMBA LPI
QチャンネルとPチャンネルのLPIプロトコルは、SoCコンポーネントのクロックと電源の機能を管理するために設計されています。LPIプロトコルの主な機能は以下のとおりです。
- Qチャンネルは、自律的な階層型クロックゲーティングとシンプルなコンポーネントの電源制御を管理します。
- Pチャンネルは、より複雑な電源制御機能を管理し、電力効率を向上させます。
AMBA 3
AMBA 3は、Advanced eXtensible Interface(AMBA AXI)プロトコルを導入した旧世代のAMBAです。Advanced Trace Buffer(ATB)を導入し、APBとAHBプロトコルを拡張しています。
AMBA AXI
AMBA 3 AXIインターフェース仕様では、AXIプロトコルを定義しており、後世代のAMBAではAXI3プロトコルとして知られています。AXIは、5つの一方向チャネルをサポートし、チャネル間のタイミングを柔軟に変更でき、複数の未処理のトランザクションとアウトオブオーダーのデータ機能を備えています。これにより、以下のことが可能になります。
- 高速動作のためのパイプライン型インターコネクト
- 周波数間の効率的なブリッジングによるパワーマネージメント
- 読み取りと書き込みを同時に行うトランザクション
- 高初期レイテンシペリフェラルの効率的なサポート
AMBA AHB
AMBA 3 AHB仕様では、AHB-Liteプロトコルが導入されました。AXIの性能を必要としない単一周波数のサブシステムで、よりシンプルなペリフェラル間の相互接続を可能にします。固定パイプライン構造と一方向チャネルにより、AMBA 2 AHB仕様向けに開発されたペリフェラルとの互換性があります。
AMBA ATB
AMBA 3 ATB仕様では、トレースシステム内のコンポーネント間でトレース情報を転送するための、データに依存しないインタフェースであるATBを定義しています。トレースコンポーネントとバスは、ペリフェラルとインターコネクトと並列に配置され、デバッグのための可視性を提供します。
AMBA APB
AMBA 3 APB仕様では、AMBA 2仕様で定義されたAPBインタフェースを拡張し、待機状態やエラー報告機能を追加しています。APBは、コンフィギュレーションレジスタへのアクセスや低帯域幅のペリフェラルによるデータトラフィックに必要な低帯域幅のトランザクションをサポートします。
AMBA 2
AMBA 2は、シングルクロックエッジプロトコルであるAHB(AMBA High-performance Bus)を追加した、旧世代のオンチップバスアーキテクチャです。Arm7、Arm9、Arm Cortex-Mの設計で広く使用されています。