コンフィグレーションの比較
さまざまなコンフィグレーション・スキームの比較については、表 1 を参照してください。
表 1.さまざまなコンフィグレーション・スキームの一般的な比較
アクティブまたはパッシブ・コンフィグレーション・スキーム |
コンフィグレーション・スキーム |
シリアルまたはパラレル・コンフィグレーション |
外部メモリーおよび / またはコンフィグレーション・デバイス 1 |
データバスの幅 (ビット) |
相互コンフィグレーション時間 2 |
---|---|---|---|---|---|
アクティブ |
AS |
シリアル |
1 |
中程度 |
|
AS |
シリアル |
1、4 |
中程度 |
||
AP |
パラレル |
共通フラッシュ・インターフェース (CFI) パラレル・フラッシュメモリーに対応 |
16 |
中程度 |
|
パッシブ |
PS |
シリアル |
インテル® MAX® シリーズ CPLD、またはフラッシュメモリー搭載プロセッサー |
1 |
遅い |
シリアル |
ダウンロード・ケーブル |
1 |
遅い |
||
FPP |
パラレル |
インテル® MAX® シリーズ CPLD、またはフラッシュメモリー搭載マイクロプロセッサー |
8、16、32 |
高速 |
|
JTAG |
シリアル |
インテル® MAX® シリーズ CPLD、またはフラッシュメモリー搭載マイクロプロセッサー |
1 |
遅い |
|
シリアル |
ダウンロード・ケーブル |
1 |
遅い |
注:
- 同じコンフィグレーション・スキームを使った異なるデバイスは、異なる外部コントロールおよび / またはコンフィグレーション・デバイスをサポートする場合があります。詳細については、コンフィグレーション・ハンドブック内の、それぞれのインテル® FPGA デバイスのコンフィグレーションの章を参照してください。
- コンフィグレーション時間は相対的な比較として提供されており、一般的なガイドラインです。コンフィグレーション時間は、コンフィグレーション・スキームごとに異なり、コンフィグレーション・ファイル・サイズ、コンフィグレーション・データ幅、ドライブクロックの周波数、およびフラッシュアクセス時間に依存します。
アクティブおよびパッシブ・コンフィグレーション・スキーム
一般的に、インテル® FPGA コンフィグレーション・スキームは、アクティブ・コンフィグレーション・スキームまたはパッシブ・コンフィグレーション・スキームに分類されます。アクティブ・コンフィグレーション・スキームでは、デバイスはコンフィグレーション・プロセスを制御し、外部メモリーデバイスからコンフィグレーション・データを取得します。アクティブ・シリアル (AS) およびアクティブ・パラレル (AP) は、アクティブ・コンフィグレーション・スキームです。メモリーデバイスは、AS コンフィグレーション向けにはシリアル・コンフィグレーション (EPCQ) デバイスで、AP コンフィグレーション向けにはサポートされているパラレル・フラッシュメモリーです。
パッシブ・コンフィグレーション・スキームでは、コンフィグレーション・デバイスがコンフィグレーション・プロセスを制御し、コンフィグレーション・データを供給します。PC、マイクロプロセッサー、MAX シリーズ CPLD などの外部インテリジェント・ホストを、コンフィグレーション・デバイスにすることもできます。パッシブ・シリアル (PS)、ファストパッシブ・パラレル (FPP) および JTAG は、パッシブ・コンフィグレーション・スキームです。
メモリーおよび / またはコンフィグレーション・デバイス
すべてのコンフィグレーション・スキームは、外部メモリーまたはコンフィグレーション・デバイスが必要です。これらの外部デバイスは、特定のコンフィグレーション・スキームを使用する際に、コンフィグレーション・データの保存および / またはインテル® FPGA のコンフィグレーションに必要です。外部メモリー・デバイスの例としては、シリアル・コンフィグレーション (EPCQ) デバイスや、サポートされているパラレル・フラッシュメモリー・デバイスがあります。マイクロプロセッサーや、あらゆるMAX シリーズ CPLD が、コンフィグレーション・コントローラーになれます。異なるコンフィグレーション・スキームは、異なる外部メモリーおよび / またはコンフィグレーション・デバイスでサポートされている点にご注意ください。MAX シリーズ CPLD は、JTAG インターフェイスを介して共通フラッシュ・インターフェース (CFI) フラッシュメモリー・デバイスをプログラムするためのパラレル・フラッシュローダー知的財産 (IP) をサポートしており、フラッシュメモリー・デバイスからインテル® FPGA へのコンフィグレーション (パッシブ・シリアルおよびファストパッシブ・パラレル) を制御するロジックを提供します。
データバスの幅
DATA バスの幅が、コンフィグレーション・スキームの DCLK サイクルの送信ビット数を決定します。一般的に、コンフィグレーション・スキームは、シリアル・コンフィグレーション・スキームまたはパラレル・コンフィグレーション・スキームのどちらかに分類できます。シリアル・コンフィグレーション・スキームは、DCLK サイクルごとに 1 ビットを送信します。PS、AS、JTAG は、シリアル・コンフィグレーション・スキームです。一方、パラレル・コンフィグレーション・スキームは、DCLK サイクルごとに 1 ビット以上を送信します。FPP コンフィグレーション・スキームは、DCLK サイクルごとに 8、16、および32 ビットを送信します。AP コンフィグレーション・スキームは、DCLK サイクルごとに 16 ビットを送信します。一般的に、DCLK サイクルごとに送信されるデータビット数が高ければ高いほど、コンフィグレーション時間は短くなります。
相対的なコンフィグレーション時間
コンフィグレーション・サイクルは、リセット、コンフィグレーション、および初期化の 3 つのステージで構成されています。ここでの相対的なコンフィグレーション時間とは、コンフィグレーション・ステージのみを指します。デバイスがユーザーモードに入るまでの時間は、実際にはもっと長くなります。
コンフィグレーション時間は、コンフィグレーション・スキームごとに異なり、コンフィグレーション・ファイル・サイズ、コンフィグレーション・データ幅、ドライブクロックの周波数、およびフラッシュアクセス時間に依存します。同じデバイスファミリーと密度を持つ異なるコンフィグレーション・スキーム間での、相対的なコンフィグレーション時間は、予測可能です。
AS コンフィグレーション時間は、EPCQ からFPGA デバイスへのデータ転送にかかる時間によって左右されます。AS インターフェイスは、内部オシレーターから生成された FPGA DCLK 出力によってクロックされます。40MHz オシレーターを使用する場合の DCLK 最小周波数は、20MHz (50ns) です。例えば、EP3C10 デバイスの最大 AS コンフィグレーション時間の見積りは、 (2.5Mb の非圧縮データ) = RBF サイズ x (最大 DCLK 周期 / DCLK ごとに 1 ビット) = 2.5Mb x (50ns / 1 ビット) = 125ms となります。
一般的に、FPP コンフィグレーション・スキームのコンフィグレーション時間が最も短くなります。すべての FPP スキームで、コンフィグレーション周波数は外部デバイスによって制御されています。AS、PS、JTAG コンフィグレーション・スキームでは、コンフィグレーション時間は比較的遅めです。しかし、相対的なコンフィグレーション時間は、見積もりに過ぎません。実際のコンフィグレーション時間は、コンフィグレーション・データ幅、デバイスがクロックされているコンフィグレーション周波数、コンフィグレーション・ファイルサイズおよびフラッシュアクセス時間によって、大幅に異なります。
CLKUSR 機能のサポート
いくつかのデバイスでは、CLKUSR ピンは、ユーザ提供のクロックを入力して、コンフィグレーション後に 1 つまたは複数のデバイスの初期化を同期する、オプションのピンです。この機能は、1 つまたは複数のデバイスを、同時にユーザーモードに入れることができます。このピンは、Quartus® Prime または Quartus® II ソフトウェアのユーザー提供のスタートアップ・クロック (CLKUSR) を有効にするというオプションをオンにすることで有効化されます。
詳細については、コンフィグレーション・ハンドブック内の、それぞれのインテル® FPGA デバイスのコンフィグレーションに関する章を参照してください。
スケーラビリティー
インテル® FPGA EPCS デバイス (PDF) および EPCQ デバイス (PDF) は、Stratix® シリーズ (Stratix および Stratix® GX を除く)、Arria® シリーズ、そしてCyclone® シリーズの FPGA 向けの、シングルデバイス・コンフィグレーション・ソリューションをサポートします。
適切なコンフィグレーション・デバイスを選択するには、対象となる FPGA または FPGA チェーンに必要なコンフィグレーション・スペースの合計を決定する必要があります。FPGA のチェーンをコンフィグレーションする場合は、各 FPGA のコンフィグレーション・ファイルサイズを合算し、必要なコンフィグレーション・スペースの合計を決定する必要があります。