インテルのみ表示可能 — GUID: iga1406293710373
Ixiasoft
インテルのみ表示可能 — GUID: iga1406293710373
Ixiasoft
18.2. 機能の説明
次に示すように、EPCS/EPCQAデバイスのメモリーは2つの個別の領域として考えることができます。
- FPGAコンフィグレーション・メモリー - FPGAコンフィグレーション・データはこの領域に保存されます。
- 汎用メモリー - FPGAコンフィグレーション・データでEPCS/EPCQAデバイス全体がフルになっていない場合は、残りのスペースを汎用データとシステム・スタートアップ・コードに使用することができます。
-
フラッシュデバイス向けのHAL汎用デバイスモデルにより、HAL APIを使用してEPCS/EPCQAデバイスにアクセスすることは、フラッシュメモリーにアクセスすることと同じになります。EPCS/EPCQAデバイスには特定の目的に向けたハードウェア・インターフェイスがあるため、Nios IIのプログラムでは、提供されているHALフラッシュドライバーを使用してEPCS/EPCQAメモリーを読み書きする必要があります。
EPCS/EPCQAシリアル・フラッシュ・コントローラー・コアには、ブートローダー・プログラムを格納するオンチップメモリーが含まれています。 Cyclone® および Cyclone® IIデバイスと組み合わせて使用する場合、コアには512バイトのブートローダーROMが必要です。 Cyclone® III、 Cyclone® IV、 インテル® Cyclone® 10 LP、 Stratix® II、および Stratix® シリーズの新しいデバイスファミリーでは、コアには1KバイトのブートローダーROMが必要です。 Nios® IIプロセッサーは、EPCS/EPCQAシリアル・フラッシュ・コントローラー・コアから起動するようにコンフィグレーションすることができます。これを行うには、 Nios® IIのリセットアドレスをEPCS/EPCQAシリアル・フラッシュ・コントローラー・コアのベースアドレスに設定します。この場合、リセット後にCPUはまずブートローダーROMからコードを実行し、データをEPCS/EPCQA汎用メモリー領域からRAMにコピーします。次に、プログラム制御がRAMに移ります。 Nios® II IDEが提供する機能により、EPCS/EPCQAデバイスに格納するプログラムをコンパイルし、EPCS/EPCQAデバイスにプログラミングするプログラミング・ファイルを作成します。
詳細は、Nios II Flash Programmer User Guideを参照してください。
インテル® Quartus® PrimeのProgrammerを使用してEPCS/EPCQAデバイスをプログラミングする場合、以前のコンテンツはすべて消去されます。FPGAコンフィグレーション・データとNiosIIプログラムデータを組み合わせてEPCS/EPCQAデバイスをプログラミングするには、 Nios® II IDEフラッシュ・プログラマーのユーティリティーを使用します。
インテル EPCS/EPCQAコンフィグレーション・デバイスは、汎用I/Oピンではなく、FPGAの専用ピンを介してFPGAに接続します。 Cyclone® III、 Cyclone® IV、および インテル® Cyclone® 10 LPを除くインテルのデバイスファミリーすべてにおいて、EPCS/EPCQAシリアル・フラッシュ・コントローラー・コアは、トップレベルのプラットフォーム・デザイナー・システム・モジュールにI/Oポートを作成しません。EPCS/EPCQAデバイスとFPGAがボード上でともに配線され、EPCS/EPCQAデバイスを使用するコンフィグレーション (つまり、アクティブ・シリアル・コンフィグレーション・モード) を行う場合、EPCS/EPCQAシリアル・フラッシュ・コントローラー・コアとEPCS/EPCQAデバイス間にそれ以上の接続は必要ありません。 インテル® Quartus® Prime開発ソフトウェアでプラットフォーム・デザイナー・システムをコンパイルする際は、EPCS/EPCQAシリアル・フラッシュ・コントローラー・コアの信号は、EPCS/EPCQAデバイスのデバイスピンに自動的にルーティングされます。
ただし、FPGAの専用ピン (アクティブ・シリアル・コンフィグレーション・モード) を使用しないオプションもあります。それには、MegaWizardインターフェイスでそれぞれのパラメーターをオフにします。このオプションがオフになっている場合、もしくはターゲットデバイスが Cyclone® III、 Cyclone® IVデバイス、または インテル® Cyclone® 10 LPの場合は、トップレベルのデザインにエクスポートされる出力ピンを任意のEPCS/EPCQAデバイスに接続する柔軟性があります。 インテル® Quartus® Prime開発ソフトウェアで次のタスクを実行し、必要なピン割り当てを行います。
- Dual-purpose pinsページ (Assignments > Devices > Device and Pin Options) で、次のピンがそれぞれの値に割り当てられていることを確認します。
- Data[0] = Use as regular I/O
- Data[1] = Use as regular I/O
- DCLK = Use as regular I/O
- FLASH_nCE/nCS0= Use as regular I/O
- Pin Planner (Assignments > Pins) を使用し、次のピンがデバイスのそれぞれのコンフィグレーション機能に割り当てられていることを確認します。
- data0_to_the_epcs_controller = DATA0
- sdo_from the_epcs_controller = DATA1,ASDO
- dclk_from_epcs_controller = DCLK
- sce_from_the_epcs_controller = FLASH_nCE
インテルのデバイスのコンフィグレーション・ピンの詳細に関しては、Pin-Out Files for Intel Devicesのページを参照してください。