マイクロプロセッサ・サブシステム
Excalibur デバイスのマイクロプロセッサ・サブシステム(またはエンベデッド・ストライプ)は、AMBA AHB (Advanced High-performance Bus) バス構造、SRAM およびデュアルポート SRAM メモリ、Flash、SRAM、SDRAM インタフェース、およびペリフェラルを備えた 32 ビット ARM922T プロセッサを内蔵しています。 このサブシステムには、JTAG (Joint Test Action Group) デバッグ機能と ETM9 エンベデッド・トレース・マクロセルも含まれています。
図 1 に Excalibur デバイスのマイクロプロセッサ・サブシステムを示します。
図 1. Excalibur デバイス・ブロック図
注:
- MMU = Memory management unit (メモリ・マネージメント・ユニット)
- PLD = Programmable logic device (最新高性能バス)
- EBI = Expansion bus interface (拡張バス・インタフェース)
AHB バス構造
システム性能を最大限に維持するために、マイクロプロセッサ・サブシステムのデュアル AMBA AHB 構造により、低速ペリフェラルへのアクセス中に最適な性能を達成することができます。 AHB1 シングル・マスタ・バスは最大プロセッサ速度で動作し、他方 AHB2 には複数のマスタ(FPGA からのマスタを含む)があり、AHB1 の半分の速度で動作します。 AMBA AHB バス構造の詳細についてはARM922T アーキテクチャ のWeb ページをご覧ください。
クロック
Excalibur デバイスは複数の内部クロック・ドメインを実装しています。 プロセッサ、デュアル AHB バス構造、および SDRAM コントローラにはすべて独自のクロック・ドメインがあります。 2 個の専用プログラマブル・フェーズロック・ループ (PLL) がこれらのクロック・ドメインを制御します。 一方の PLL が AHB1 および AHB2 用のクロックを生成し、別の PLL は SDRAM コントローラ用のクロックを生成します。 AHB1 プロセッサ・バスおよび SDRAM バスは、それぞれ最大 200 MHz と 133 MHz の速度で動作します(fAHB2 = fAHB1/2の場合)。 クロック・ドメインは独立しており、APEX PLL 仕様およびクロック信号に従います。
Excalibur デバイスのクロック構造の詳細については、Excalibur Devices Overview Data Sheet および Excalibur Devices Hardware Reference Manualを参照してください。
FPGA コンフィギュレーション・ロジック
Excalibur デバイスはいくつかの方法でコンフィギュレーションできます。 プロセッサは FPGA から単独でブートすることができ、FPGA を外部(フラッシュ)メモリに保存されたデータまたはオンチップ SRAM にダウンロードしたデータからプログラムするためのコンフィギュレーション・ロジックを内蔵しています。 Excalibur デバイスは、FPGA ソリューションとは異なり、プロセッサが動作を継続している間に、プロセッサ制御の下でいつでもリコンフィギュレーション可能です。 これはコンフィギュレーションが必要なときに、セットアップ・シーケンスまたは自動検出によって行うことができます。
また、プロセッサ・メモリ・スペースは、伝統的な FPGA コンフィギュレーション・モードとメモリを使用してリコンフィギュレーションすることができます。 この場合、プロセッサはリセット状態に保持され、FPGA のコンフィギュレーションが完了した時点でのみブートが可能になります。
Excalibur デバイスのコンフィギュレーション方法の詳細については、Excalibur Devices Overview Data Sheet および Excalibur Devices Hardware Reference Manualを参照してください。
マイクロプロセッサ・サブシステム - FPGA インタフェース
FPGA とプロセッサを両デバイス間でデータ転送が可能な状態にしないで統合するのは無意味です。 この機能を提供するために、Excalibur プロセッサは AHB2 上に 2 つの AHB ブリッジを備えており、これらのブリッジによってプロセッサ(またはサブシステム内の他のマスタ)と FPGA は AHB2 バス上でそれぞれバス・マスタとして動作できます。バス・マスタになると、いずれかの方向のバス・ブリッジを通してデータ転送を開始することができます。 FPGA とプロセッサがバス転送を開始できるため、プロセッサと FPGA 間でリアルタイム・インタラクションを提供する複雑なシステムを構築して、完全な system-on-a-programmable-chip (SOPC) デザインを形成することができます。
デュアルポート SRAM メモリは、FPGA とプロセッサの両方からアクセス可能です。 このメモリ・スペースでデータの読み書きが可能なため、アプリケーション・インタフェースに簡単な共有データ領域を提供することができます。 このような用途の 1つが、デュアルポート・メモリ内の適切なメモリメモリ・スペースを読み書きして、FPGA に実装されたデジタル信号処理(DSP) 機能にインタフェースするプロセッサ用の領域です。
Excalibur デバイスの AHB ブリッジおよびデュアルポート・メモリの詳細については、Excalibur Devices Overview Data Sheet および Excalibur Devices Hardware Reference Manualを参照してください。
