AR# 18329

Endpoint for PCI Express - PCI Express ソリューションをザイリンクス デバイスにインプリメントする際のクロック周波数

説明

PCI Express アドイン カードには、規格に完全に準拠させるため、PCI Express コネクタからの 100MHz の基準クロックを使用する必要があります。ザイリンクス デバイス上の MGT ブロックにクロックを供給するには、アドイン カードでコネクタ クロックを使用する必要があります。

PCI Express ソリューションをインプリメントする際にザイリンクス FPGA にクロックを供給する方法を教えてください。

ソリューション

重要 : Virtex-6、Virtex-5、Virtex-4、Virtex-II Pro、および Spartan-6 FPGA の PCI Express アドイン カードをオープン システムで動作させるには、カードに中央マザー ボードのクロック リソースからクロックを供給し、クロック周波数をマザー ボードのクロック周波数に固定する必要があります (同期クロック供給)。アドイン カードにオンボード オシレータからクロックを供給すると (非同期クロック供給)、カードはオープン システムでは動作しません。

非同期クロック供給

7 シリーズ、Virtex-6 および Spartan-6 FPGA

非同期クロック供給は、SSC および ASPM が使用されていない場合、Virtex-6 および Spartan-6 FPGA のエンベデッドまたはバックプレーン アプリケーションに使用できます。ザイリンクス FPGA をソースにしているオシレーター、またはリンク パートナー デバイスをソースにしているオシレーターで拡散スペクトラム クロック (SSC) が使用されていないことを必ず確認する必要があります。また、両方のクロックが PCI Express 仕様およびザイリンクス FPGA の ppm 精度要件を満たす必要があります。SSC を使用する場合は、非同期クロック供給は使用できません。

ASPM が有効になっている場合の非同期クロック供給をサポートできるかどうかは現在調査中です。現在、ASPM が使用されている場合非同期クロック供給はサポートされていません。APSM はハードウェアの自動アクティブ ステート電力管理で、アイドル リンクが 電気的アイドルがソフトウェアの介入なしにリンク上で駆動される L0 ステートに遷移することで消費電力を低減します。ASPM の詳細は、『PCI Express Base Specification』の第 5 章を参照してください。ASPM が使用されていることを確認するには、PCI Express 機能セットのオフセット 10h にあるリンク制御レジスタのビット 1:0 を確認します。ASPM はエンドポイントでは無効にできませんが、場合によっては BIOS で変更を行い、ダウンストリーム ポートで無効にすることが可能です。 または、L0 の終了レイテンシを最大値 (111b) に、L0 の許容可能なレイテンシを低い値に設定し、電力管理ファームウェアで ASPM が有効にされないように、システムで ASPM を強制的に無効にすることも可能です。これはカスタム GUI で設定できます。7 シリーズの Integrated Block では ASPM Optionality がサポートされており、ASPM Optionality をサポートする比較的新しいシステムではこのオプションを使用して ASPM をオフにできます。

次に、ボード レイアウトの略図を示します。ボードをレイアウトするときに、適切なカップリングと終端が使用されているかを確認してください。

使用デバイスをクリックしてください。

7 シリーズ
Virtex-6
Spartan-6
Virtex-5
Virtex-4
Virtex-II Pro

7 シリーズ Gen 1 および Gen 2

7 Series FPGA Integrated Block for PCI Express には 100MHz、125MHz、250MHz のシステム基準クロックを使用できます。CORE Generator の GUI から適切な基準クロック周波数を選択します。125 または 250MHz の場合、100MHz のシステム クロックを 125 または 250MHz に変換するのに外部 PLL を使用する必要があります。100MHz 基準クロックの使用は規格に準拠しているのですが、125MHz または 250MHz を使用することにより、さらに柔軟性が増し、必要に応じて TX ジッター マージンを増加させることができます。

100MHz 基準クロック

7 Series FPGA PCI Express Gen 1 または Gen 2 (100MHz 基準クロックを使用)

125 または 250MHz 基準クロック

7 Series FPGA PCI Express Gen 1 または Gen 2 (100MHz 基準クロックを使用)



Virtex-6 FPGA Gen 1 および Gen 2

Virtex-6 FPGA Integrated Block for PCI Express には 100MHz、125MHz、250MHz のシステム基準クロックを使用できます。CORE Generator の GUI から適切な基準クロック周波数を選択します。125 または 250MHz の場合、ザイリンクスでは、ICS874001AG-05LF を使用して 100MHz から 125MHz または 250MHz へ変換することをお勧めします。100MHz 基準クロックの使用は規格に準拠しているのですが、125MHz または 250MHz を使用することにより、さらに柔軟性が増し、必要に応じて TX ジッター マージンを増加させることができます。

IDT 社のデータシートおよびパーツはこちらをご覧ください。
http://www.idt.com

詳細は IDT にお問い合わせください。
netcom@idt.com

100MHz 基準クロック

図 1. Virtex-6 FPGA PCI Express Gen または Gen 2 (100MHz 基準クロックを使用)



125 または 250MHz 基準クロック 

 図 2. 125MHz または 250MHz の基準クロックを使用した Virtex-6 FPGA PCI Express Gen 1


Spartan-6 FPGA

Spartan-6 FPGA Integrated Block for PCI Express には 100MHz または 125MHz のシステム基準クロックを使用できます。CORE Generator の GUI から適切な基準クロック周波数を選択します。125MHz を使用する場合、図 5 に示すように、ICS874001AG-05LF を使用して 100MHz から 125MHz へ変換することをお勧めします。100MHz 基準クロックの使用は規格に準拠しているのですが、125MHz を使用することにより、さらに柔軟性が増し、必要に応じて TX ジッター マージンを増加させることができます。

100MHz の基準クロックをイネーブルにする方法については、(ザイリンクス アンサー 33761) を参照してください。GUI では、ISE ソフトウェア 12.1 でリリースされる v1.3 からこの機能がサポートされます。 

IDT 社のデータシートおよびパーツはこちらをご覧ください。
http://www.idt.com

詳細は IDT にお問い合わせください。
netcom@idt.com

100MHz 基準クロック

図 3. 100MHz 基準クロックを使用した Spartan-6 FPGA PCI Express Gen
 

 
125MHz 基準クロック 

 図 4. 125MHz 基準クロックを使用した Spartan-6 FPGA PCI Express Gen 1


Virtex-5 FPGA
PCI Express GEN 2 (Virtex-5 FXT FPGA のみ)

PCIe GEN 2 では 250MHz の入力基準クロックが必要です。250MHz の基準クロックは、PCI Express コネクタからの 100MHz 基準クロックから生成する必要があります。250MHz に逓倍すると同時に、Virtex-5 FPGA MGT に必要なジッター仕様に準拠する必要があります。図 5 に示すように、ICS874003BG-05 を使用して 100MHz から 250MHz へ変換することをお勧めします。この PLL は、PCIe GEN2 PLL のバンド幅要件を満たしています。

IDT 社のデータシートおよびパーツはこちらをご覧ください。
http://www.idt.com

詳細は IDT にお問い合わせください。
netcom@idt.com

図 5. ICS874003BG-05 を使用した PCI Express Gen 2 クロック変換


PCI Express Gen 1

ザイリンクス Endpoint Block Plus Core for PCI Express には 100MHz または 250MHz のシステム基準クロックを使用できます。CORE Generator の GUI から適切な基準クロック周波数を選択します。100MHz 基準クロックの使用は規格に準拠しているのですが、125MHz を使用することにより、さらに柔軟性が増し、必要に応じて TX ジッター マージンを増加させることができます。v1.1 の PCI Express に準拠するには、次に説明する IDT PLL で PCI Base Specification v1.1 のセクション 4.3.3.3 に記述されているバンド幅要件が満たされている必要があります。IDT パーツ (ICS874003CGI-02 および 874003DGI-02) の新しいリビジョンは、この要件を満たしています。IDT 社にお問い合わせください。 netcom@idt.com

100MHz 基準クロックの使用

PCI Express コネクタから供給される 100MHz のクロックは直接 Virtex-5 に接続でき、図 6 に示すように PCI Express Endpoint Block および PCI Express Endpoint Block Plus LogiCORE にクロックを供給します。


図 6. 100MHz をシステム基準クロックとして使用/
 

 

 
250MHz 基準クロック 

250MHz 基準クロックは、PCI Express コネクタからの 100MHz 基準クロックから生成する必要があります。250MHz に逓倍すると同時に、Virtex-5 MGT に必要なジッター仕様に準拠する必要があります。図 7 に示すように、ICS874003-02 を使用して 100MHz から 250MHz へ変換することをお勧めします。IDT 社のデータシートおよびパーツはこちらをご覧ください。http://www.idt.com

詳細は IDT にお問い合わせください。
netcom@idt.com

図 7. ICS874003-02 を使用した PCI Express クロック変換



Virtex-4

Virtex-4 をターゲット デバイスとする場合、ザイリンクス LogiCORE IP Endpoint for PCI Express には 250MHz の基準クロックが必要です。

つまり、PCI の基準クロック入力を 250MHz にする必要があります。

注記 : 125MHz クロックを使用すると、MGT で生成される送信ジッターの合計が、PCI Express Base Specification v1.1 の Ttx-eye パラメーター (最小 TX UI 幅) で指定されている送信 UI 幅の仕様 0.75 UI に違反します。このため、Virtex-4 PCI Express デザインには 250MHz の基準クロックを使用してください。

コネクタから PCI Express の 100MHz の基準クロックを使用するには、250MHz に逓倍すると同時に、Virtex-4 MGT のジッター仕様に準拠する必要があります。ザイリンクスでは、100MHz から 250MHz に変換するために 2 つのソリューションを推奨しています。これらのソリューションは、デバイスにより柔軟にアクセスするためのものです。どちらのソリューションでも、クロックの 250MHz への変換を達成できます。1 つ目のソリューションでは、ICS874003-02 を使用して 100MHz から 250MHz に変換します。2 つ目のソリューションでは、ICS87354I を使用してクロックを 25MHz に分周し、ICS8432I-101 を使用してこの 25MHz のクロックを 250MHz に逓倍します。IDT 社のデータシートおよびパーツはこちらをご覧ください。 http://www.idt.com

詳細は IDT にお問い合わせください。
netcom@idt.com

1 つのチップを使用したソリューション

図 8 に示すように、ICS874003-02 を使用して 100MHz クロックを 250MHz に変換できます。


Figure 8. ICS874003-02 を使用したPCI Express クロック変換



2 つのチップを使用したソリューション

ザイリンクスでは、2 つの ICS を使用したソリューションも推奨します。 このソリューションでは、ICS87354I を使用して 100MHz クロックを 25MHz に分周し、ICS8432I-101 を使用してこの 25MHz のクロックを 250MHz に逓倍します。この変換を図 9 に示します。


図 9. ICS87354I および ICS8432I-101 を使用した PCI Express クロック変換



Virtex-II Pro

Virtex-II Pro Virtex-II Pro デバイスをターゲット デバイスとする場合、ザイリンクス LogiCORE Endpoint for PCI Express には 125MHz の基準クロックが必要です。

コネクタから PCI Express の 100MHz の基準クロックを使用するには、125MHz に逓倍すると同時に、Virtex-II Pro MGT のジッター仕様に準拠する必要があります。仕様を満たすには、ICS9DB306 を使用して 100MHz クロックを 125MHz に変換し、ICS85411 を使用して ICS9DB306 の出力を LVDS に変換します。IDT 社のデータシートおよびパーツはこちらをご覧ください。 http://www.idt.com

詳細は IDT にお問い合わせください。
netcom@idt.com

次の図に、上記 2 つのデバイスを使用して Virtex-II Pro RocketIO 用の 125MHz MGT 基準クロックを作成する方法を示します。


図 10. 100MHz コネクタ クロックの 125MHz RocketIO クロックへの変換 (Virtex-II Pro)/
 

 
上図では、100MHz 差動コネクタ クロックが Virtex-II Pro RocketIO MGT のジッター要件を満たした 125MHz LVDS クロックに変換されます。ボードのレイアウトでは、Virtex-II Pro デバイスのデータシートに記述されているジッターおよびその他の仕様に従ってください。

PCI Express システムのクロック供給については (ザイリンクス アンサー 19760) を参照してください。
PCI Express システムでの SSC については (ザイリンクス アンサー 19782) を参照してください。

改訂履歴
2012/02/03 - 7 シリーズ FPGA 向けに非同期クロック供給情報をアップデート
2011/03/14 - 7 シリーズの情報を追加
2010/11/01 - 重複した図を修正
2010/08/27 - 非同期クロック供給および ASPM の情報を追加
2010/02/22 - 行間および画像順を修正
2010/01/29- Virtex-6 Gen 2 に 100MHz を追加 
2009/11/18 - 250MHz の記述を削除するよう Spartan-6 FPGA 125MHz への変換のヘッディングを修正
2009/11/09 - Spartan-6 FPGA の 250MHz オプションを削除 (ザイリンクス アンサー 33774) を参照。アンサー 33761 へのリンクを修正
2009/11/05- Spartan-6 FPGA に 100MHz クロックを追加
2009/10/15 - Virtex-6 FPGA 非対称クロックの制限を削除、Virtex-5 Gen 1 セクションで LXT を指定しないように修正
2009/09/22 - Virtex-6 および Spartan-6 用にアップデート
2009/02/02 - 非同期クロック供給に関する注記を追加
2008/10/30 - PCIe GEN 2 の要件を追加
08/27/2008 - Block Plus コアで使用可能なのは 100MHz または 250MHz であるため、Virtex-5 FPGA のセクションから 125MHz に関する記述を削除

アンサー レコード リファレンス

関連アンサー レコード

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
36677 Virtex-6 FPGA Integrated Block Wrapper v1.3 rev 2 および v1.5 for PCI Express - MGT 設定のアップデート N/A N/A
AR# 18329
日付 05/24/2013
ステータス アクティブ
種類 一般
IP 詳細 概略