• 検索結果がありません。

コンフィギュレーション・デバイスを使用した 単一デバイスの PS コンフィギュレーション

ドキュメント内 Cyclone II Device Handbook (ページ 35-41)

アルテラのコンフィギュレーション・デバイス(例えば、EPC2、EPC1、

またはエンハンスド・コンフィギュレーション・デバイス)を使用する と、シリアル・コンフィギュレーション・ビットストリームを使用する

Cyclone II デバイスをコンフィギュレーションできます。コンフィギュ

レーション・データは、コンフィギュレーション・デバイスに格納され ています。図13-13に、Cyclone IIデバイスとコンフィギュレーション・

デバイス間のコンフィギュレーション・インタフェース接続を示します。

この章の図には、コンフィギュレーション関連のピン、およびコ ンフィギュレーション・デバイスとFPGA間のコンフィギュレー ション・ピン接続のみを示します。

エンハンスド・コンフィギュレーション・デバイスとフラッシュ・イン タフェース・ピン(PGM[2..0]、EXCLK、PORSEL、A[20..0]、DQ[15..0]

など)の詳細については、「Enhanced Configuration Devices (EPC4, EPC8

& EPC16) Data Sheet」を参照してください。

図13-13.エンハンスド・コンフィギュレーション・デバイスを使用した

単一デバイスのPSコンフィギュレーション

図13-13の注:

(1) プルアップ抵抗は、コンフィギュレーション・デバイスと同じ電源電圧に接 続する必要があります。このプルアップ抵抗は10 kです。

(2) nINIT_CONF ピンは、エンハンスド・コンフィギュレーション・デバイス上 で使用できるピンで、常にアクティブな内部プルアップ抵抗があります。つ まり、nINIT_CONFからnCONFIGへのラインでは、外部プルアップ抵抗を使 用してはなりません。nINIT_CONF ピンは、その機能を使用しない場合、接 続する必要はありません。nINIT_CONFを使用しない場合、nCONFIGを直接 または抵抗を通してVCCにプルする必要があります。

(3) エンハンスド・コンフィギュレーション・デバイスの OEピンと nCSピンには、

内部プログラマブル・プルアップ抵抗があります。内部プルアップ抵抗を使 用する場合、これらのピンでは外部プルアップ抵抗を使用しないでください。

Quartus II 開発ソフトウェアでは、デフォルトで内部プルアップ抵抗が使用

されます。内部プルアップ抵抗をオフにするには、プログラミング・ファイ ルの生成時にDisable nCS and OE pull-ups on configuration deviceオプショ ンをオンにします。

(4) nCEOピンは、未接続のままにするか、他のデバイスのnCEピンに信号を供給し ていない場合は、ユーザI/Oピンとして使用できます。

エンハンスド・コンフィギュレーション・デバイスとEPC2デバイス上 の内部プルアップ抵抗の値については、「Enhanced Configuration Devices (EPC4, EPC8, & EPC16) Data Sheet」または「Configuration Devices for SRAM-Based LUT Devices Data Sheet」を参照してください。

Cyclone II FPGA

DCLK DATA OE nCS nINIT_CONF (2) MSEL0

MSEL1

DCLK DA TA0 nSTATUS CONF_DONE nCONFIG

VCC VCC

GND

(1) (1)

nCE

nCEO N.C. (4)

(3) (3)

エンハンスド・ 

コンフィギュレーション・

10 kΩ 10 kΩ 10 kΩ デバイス

VCC

VCC

GND

(1)

エンハンスド・コンフィギュレーション・デバイスまたはEPC2デバイ スの使用時には、Cyclone II デバイスのnCONFIG ピンをコンフィギュ レーション・デバイスのnINIT_CONFピンに接続できます。このピンで は、FPGA コンフィギュレーションを開始するINIT_CONF JTAG命令 を実行できます。nINIT_CONFピンを使用しない場合、このピンを接続 する必要はありません。nINIT_CONFを使用しない場合、または使用で きない場合(EPC1デバイス上などで)は、nCONFIG信号を直接または 抵抗を通してVCCにプルします。エンハンスド・コンフィギュレーショ ン・デバイスと EPC2 デバイスでは、nINIT_CONF ピン上の内部プル アップ抵抗は常にアクティブになっています。このため、nCONFIG を nINIT_CONFに接続する場合、外部プルアップ抵抗は不要です。

パワーアップ時には、Cyclone IIデバイスではPORの処理が行われます。

POR の処理中、デバイスはリセットされ、nSTATUSとCONF_DONEを Lowに保持し、すべてのユーザI/Oピンをトライ・ステートにします。

PORの処理(通常100 ms)後、Cyclone II FPGAはnSTATUSを解放し、

この信号が10 kΩの外部抵抗によってHighにプルアップされると、コン フィギュレーション・モードに移行します。FPGAがPORを正常に終了 すると、すべてのユーザI/Oピンはトライ・ステート状態を継続します。

Cyclone IIデバイスのユーザI/Oピン上には、コンフィギュレーション

の実行前と実行時にオンになる弱いプルアップ抵抗があります。

コンフィギュレーション・デバイスでは、電源を安定させるためにPOR 遅延の処理が行われます。EPC2デバイスまたはEPC1デバイスの最大

POR時間は200 msです。エンハンスド・コンフィギュレーション・デ

バイスの POR 時間は、エンハンスド・コンフィギュレーション・デバ イスのPORSELピン設定に応じて、100 msまたは2 msに設定できます。

PORSELピンがGNDに接続されている場合、POR遅延は100 msとな り、PORSELピンがVCCに接続されている場合は、POR遅延は2 msと なります。エンハンスド・コンフィギュレーション・デバイスのPOR時 間前またはPOR時間中は、Cyclone IIデバイスに電源を投入する必要が あります。POR の処理中、コンフィギュレーション・デバイスは、OE ピンをLowに遷移させます。このLow信号は、OEピンがターゲット・

デバイスのnSTATUSピンに接続されているため、コンフィギュレーショ ンを遅延させます。ターゲット・デバイスとコンフィギュレーション・

デバイスがPORの処理を完了すると、両デバイスはOEラインにnSTATUS を解放するため、プルアップ抵抗によってHighにプルアップされます。

電源が適切な動作電圧に達すると、ターゲット FPGAは、nCONFIG上 でLowからHighへの遷移を検知し、コンフィギュレーション・サイク ルを開始します。コンフィギュレーション・サイクルは、リセット、コ ンフィギュレーション、初期化の3つのステージから構成されています。

Cyclone IIデバイスには、PORSELピンはありません。

リセット・ステージ

nCONFIGまたはnSTATUSがLowの間、デバイスはリセット状態です。

nCONFIGピンまたはnSTATUSピンをLowに保持すると、コンフィギュ レーションを遅延させることができます。

コンフィギュレーション・プロセスを開始するには、コンフィ ギュレーションとJTAGピンが存在するバンクのVCCINTとVCCIO に十分な電力を供給して、適切な電圧レベルにする必要があります。

nCONFIG信号がHighになると、デバイスはリセット状態を抜け、nSTATUS ピンを解放します。その後、このピンはプルアップ抵抗によってHighに プルアップされます。エンハンスド・コンフィギュレーション・デバイス とEPC2デバイスには、OEピン上にオプションの内部プルアップ抵抗があ ります。Quartus II開発ソフトウェアでは、Device & Pin Optionsダイア ログ・ボックスのGeneralタブからこのオプションをオンにできます。こ の内部プルアップ抵抗を使用しない場合は、10 kΩの外部プルアップ抵抗 をOEとnSTATUSラインに接続する必要があります。nSTATUSが解放さ れると、FPGAはコンフィギュレーション・データを受信可能な状態にな り、コンフィギュレーション・ステージを開始できます。

コンフィギュレーション・ステージ

nSTATUSピンがHighに遷移すると、コンフィギュレーション・デバイ スのOEピンもHighに遷移し、コンフィギュレーション・デバイスは、

内部発振器を使用してクロックで FPGA にデータをシリアルに送りま す。Cyclone IIデバイスは、DATA0 ピン上でコンフィギュレーション・

データを受信し、DCLKピン上でクロックを受信します。データは、DCLK の立ち上がりエッジでFPGAにラッチされます。

FPGAはすべてのコンフィギュレーション・データを正常に受信後、オー プン・ドレインCONF_DONEピンを解放します。その後、このピンはプ ルアップ抵抗によって High にプルアップされます。Cyclone II デバイ スのCONF_DONEピンはコンフィギュレーション・デバイスのnCSピン に接続されるため、CONF_DONE がHigh になると、コンフィギュレー ション・デバイスはディセーブルされます。エンハンスド・コンフィギュ レーション・デバイスとEPC2デバイスには、nCSピン上にオプション の内部プルアップ抵抗があります。Quartus II 開発ソフトウェアでは、

Device & Pin Optionsダイアログ・ボックスのGeneralタブからこのオ プションをオンにできます。この内部プルアップ抵抗を使用しない場合 は、10 kΩの外部プルアップ抵抗をnCSとCONF_DONEラインに接続す る必要があります。CONF_DONE上でのLowからHighへの遷移は、コ ンフィギュレーションが完了し、デバイスの初期化を開始できることを 示します。

初期化ステージ

Cyclone IIデ バ イ ス の デ フ ォ ル ト の 初 期 化 ク ロ ッ ク・ソ ー ス は、

Cyclone IIデバイスの内部発振器(通常10 MHz)です。Cyclone IIデバ イスでは、オプションのCLKUSRピンも使用できます。デザインで内部 発振器を使用する場合、Cyclone II デバイスでは、適切に初期化するの に十分なクロック・サイクルが供給されます。内部発振器を使用する利 点は、初期化ステージで、別のデバイスまたはソースを使用して追加ク ロック・サイクルをCLKUSRピンに送信する必要がないことです。さら にCLKUSRピンをユーザI/Oピンとして使用できるため、追加のユーザ I/Oピンがあることになります。

デバイスの初期化を遅延させる場合、このCLKUSRピンを使用できます。

CLKUSR ピンを使用すると、Cyclone II デバイスがユーザ・モードに移 行するタイミングを制御できます。Cyclone II デバイスがユーザ・モー ドに移行するのを無期限に遅延できます。Quartus II開発ソフトウェア では、Device & Pin Optionsダイアログ・ボックスのGeneralタブから Enable user-supplied start-up clock (CLKUSR) オプションをオンにで きます。CLKUSR にクロックを供給しても、コンフィギュレーション・

プロセスに影響はありません。コンフィギュレーション・データのすべ て受け入れられ、CONF_DONEがHighになった後、Cyclone IIは、適切 に初期化を実行し、100 MHz の CLKUSR fMAX をサポートするために、

299個のクロック・サイクルを必要とします。

オプションのINIT_DONEピンが用意されており、初期化の終了とユー ザ・モードの開始をLowからHighへの遷移で知らせます。Quartus II 開発ソフトウェアでは、Device & Pin Optionsダイアログ・ボックスの GeneralタブからEnable INIT_DONE outputオプションを使用できま す。INIT_DONEピンを使用する場合、nCONFIGがLowでかつコンフィ ギュレーションの開始時には、10 kΩ の外部プルアップ抵抗がピンを Highにプルアップします。(コンフィギュレーション・データの最初の フレームで)INIT_DONE をイネーブルするオプションのビットをデバ イスにプログラムすると、INIT_DONEピンがLowになります。初期化 が完了すると、INIT_DONEピンが解放され、Highにプルアップされま す。このLowからHighへの遷移で、FPGAがユーザ・モードに入った ことがわかります。INIT_DONEピンを使用しない場合、CONF_DONE信 号がHighになり299個のクロック・サイクルがCLKUSRピンに送信さ れた後、またはCyclone IIデバイスが内部発振器を使用しているときは

tCF2UM時間(表13–7を参照)経過後に、初期化期間が完了します。

ドキュメント内 Cyclone II Device Handbook (ページ 35-41)