vivado ip インテグレーターと axi4 を使用する pci …pci express でアイ...

28
© Copyright 2013–2014 Xilinx, Inc. Xilinx, the Xilinx logo, Artix, ISE, Kintex, Spartan, Virtex, Vivado, Zynq, and other designated brands included herein are trademarks of Xilinx in the United States and other countries. ARM is a registered trademark of ARM in the EU and other countries. All other trademarks are the property of their respective owners. 本資料は表記のバージ ョ ンの英語版を翻訳し たもので、内容に相違が生じ る場合には原文を優先し ます。 資料によっては英語版の更新に対応していないものがあります。 日本 語版は参考用 と し てご使用の上、 最新情報につき ま し ては、 必ず最新英語版を ご参照 く だ さ い。 XAPP1198 (v1.0) 2014 1 6 japan .xilinx.com 1 概要 このアプリケーション ノ ー ト では、 Vivado ® IP インテグレーターを使用して、 AXI4 ベース システムに アイ スキャン機能を統合するフローについて説明します。デザインで AXI4 ベースのプロセッサを使用す る場合、 ト ラ ンシーバーの DRP インターフェイスを AXI4 システムにメモリ マップすることで、アイ キャン機能を簡単に実装できます。 IP インテグレーターを使用して、 この機能を実装する方法を示すリ ファレンス デザインが提供されています。 このアプ リ ケーシ ョ ン ノ ー ト では、 『MicroBlaze プロセッサ MCS プロセッサによるアイ スキャン』 [参照 1] のアイ スキャン アルゴ リ ズムを用いてアイ スキャン処理 を実行し ます。 この資料 [参照 1] は、スタンドアロンのアイ スキャン機能を実装する際に参考となるアプ リ ケーシ ョ ン ノ ー ト ですが、 こ こ では、 AXI4 ベース システムへの統合に焦点を当てて解説します。 リファレンス デザインは、 リファレンス ボード (AC701KC705VC709ZC706) PCI Express ® ンクにアイ スキャン機能を実装します。 2013.3 以降、 ト ラ ンシーバーを含むザイ リ ン ク スの IP には IP 最上位に DRP インターフェイスの出力があります。 Integrated Block for PCI Express IP は、 こ の よ う に使 いやすく改善された IP コアの 1 つです。これを利用する こ とによって、 AXI4 システムは PCIe ® IP RTL へ深 く ア ク セ スせずに、 ト ラ ン シーバーの DRP 空間へ メ モ リ マップできます。 その結果、 シンプルな IP フローが維持され、 Vivado 統合設計環境 (IDE) のすべてのプラグアンドプレイ機能が利用できます。 アイ スキャンの結果は、 電圧、 温度、 およびプロセスなど各チャネルのデザインを評価するための重要な 情報を提供します。 アイ スキャンは、単に各チャネル デザインの評価を可能にするだけではな く、 FPGA ファ ミ リで今まで取得できなかった詳しいデバッグ情報も提供します。 はじめに すべての 7 シ リ ーズ ト ランシーバーには、 あらかじめ定義されたパターンを使用せずにレシーバーでイン シ ス テ ムの二次元の統計的ア イ スキャンを実行する機能があ り ます。これには、 1 に示すプ ラ イ マ リ デー サンプラーに並行配置された 2 つ目のサンプラーが使用されます。 アイ ス キ ャ ンの実行は、 リ ン ク の整 合性に影響を与える こ とな く、 動作システムのマージンを維持します。 アイ スキャンの結果には、 ト ラン シーバー イ コ ラ イザーの結果も含まれるため、 レシーバーにおけるマージンの最も正確な解析結果を示す ことができます。 アプリケーション ノート : 7 シリーズ FPGA XAPP1198 (v1.0) 2014 1 6 Vivado IP インテグレーターと AXI4 を使用する PCI Express リンクの 7 シリーズ インシステム アイ スキャン機能 著者 : Luis Bielich X-Ref Target - Figure 1 1: オフセット サンプル イメージ

Upload: others

Post on 21-May-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

© Copyright 2013–2014 Xilinx, Inc. Xilinx, the Xilinx logo, Artix, ISE, Kintex, Spartan, Virtex, Vivado, Zynq, and other designated brands included herein are trademarks of Xilinx in the United States and other countries. ARM is a registered trademark of ARM in the EU and other countries. All other trademarks are the property of their respective owners.

本資料は表記のバージ ョ ンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。 資料によっては英語版の更新に対応していないものがあります。 日本語版は参考用としてご使用の上、 最新情報につきましては、 必ず最新英語版をご参照く ださい。

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 1

概要 このアプリケーシ ョ ン ノートでは、 Vivado® IP インテグレーターを使用して、 AXI4 ベース システムにアイ スキャン機能を統合するフローについて説明します。デザインで AXI4 ベースのプロセッサを使用する場合、 ト ランシーバーの DRP インターフェイスを AXI4 システムにメモリ マップするこ とで、 アイ スキャン機能を簡単に実装できます。 IP インテグレーターを使用して、 この機能を実装する方法を示すリファレンス デザインが提供されています。 このアプリケーシ ョ ン ノートでは、 『MicroBlaze プロセッサMCS プロセッサによるアイ スキャン』 [参照 1] のアイ スキャン アルゴ リズムを用いてアイ スキャン処理を実行します。 この資料 [参照 1] は、スタンドアロンのアイ スキャン機能を実装する際に参考となるアプリケーシ ョ ン ノートですが、 ここでは、 AXI4 ベース システムへの統合に焦点を当てて解説します。

リ ファレンス デザインは、 リ ファレンス ボード (AC701、 KC705、 VC709、 ZC706) の PCI Express® リンクにアイ スキャン機能を実装します。2013.3 以降、 ト ランシーバーを含むザイ リ ンクスの IP には IP の最上位に DRP インターフェイスの出力があり ます。 Integrated Block for PCI Express IP は、 このよ うに使いやすく改善された IP コアの 1 つです。これを利用するこ とによって、AXI4 システムは PCIe® IP の RTLへ深くアクセスせずに、 ト ランシーバーの DRP 空間へメモリ マップできます。 その結果、 シンプルな IPフローが維持され、 Vivado 統合設計環境 (IDE) のすべてのプラグアンドプレイ機能が利用できます。

アイ スキャンの結果は、電圧、温度、およびプロセスなど各チャネルのデザインを評価するための重要な情報を提供します。 アイ スキャンは、単に各チャネル デザインの評価を可能にするだけではなく、 FPGAファ ミ リで今まで取得できなかった詳しいデバッグ情報も提供します。

はじめに すべての 7 シリーズ ト ランシーバーには、 あらかじめ定義されたパターンを使用せずにレシーバーでインシステムの二次元の統計的アイ スキャンを実行する機能があります。これには、図 1 に示すプライマリ データ サンプラーに並行配置された 2 つ目のサンプラーが使用されます。 アイ スキャンの実行は、 リンクの整合性に影響を与えるこ となく、 動作システムのマージンを維持します。 アイ スキャンの結果には、 ト ランシーバー イコライザーの結果も含まれるため、 レシーバーにおけるマージンの最も正確な解析結果を示すこ とができます。

アプリケーシ ョ ン ノート : 7 シリーズ FPGA

XAPP1198 (v1.0) 2014 年 1 月 6 日

Vivado IP インテグレーターと AXI4 を使用する PCI Express リンクの 7 シリーズ インシステム アイ スキャン機能著者 : Luis Bielich

X-Ref Target - Figure 1

図 1 : オフセッ ト サンプル イメージ

Page 2: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

PCI Express でアイ スキャン機能が有効なとき

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2

このアプリ ケーシ ョ ン ノートでは、PCI Express リ ンク上でアイ スキャンを実行する方法について説明します。 こ こでは PCI Express リ ンクに焦点を当てていますが、 リ ファレンス デザインは任意のレートでどのよ うな リ ンクにも活用できます。

デバッグのために PCI Express をループバッ ク ステートにするこ とは一般的ではないため、PCI Expressは、 インシステム アイ スキャンの使用に適したプロ ト コルを提供しています。 リ ンクをループバッ クステートにするこ とが一般的ではないという こ とは、 あらかじめ定義されたパターンがないという こ とです。 インシステム アイ スキャンが PCI Express リ ンクで役に立つも う 1 つの理由は、PCI Express リンク上にビッ ト エラーがある場合でも、このリ ンクは L0 ステートに留まるこ とができるためです。PCIExpress プロ ト コルは、 CRC チェッ クなどのリプレイ メカニズムを使用して、 ビッ ト エラーに対応します。 このプロ ト コルはデータの整合性を維持しますが、 リプレイ メカニズムはスループッ トに影響を及ぼします。つま り、十分なマージンのないリ ンクへの対処が重要になり ます。複数の PCI Express レーンを実装している場合、マージンのないレーンの識別は困難ですが、 インシステムのアイ スキャン機能を使用するこ とで、 このよ うなレーンを迅速に検出できます。

インシステムのアイ スキャン機能は、デザインの全部分が動作している場合の実際のシステム依存状態も考慮します。 アイ スキャン ロジッ クはあらかじめ定義されたパターンを必要と しないため、 ほかの条件を変更するテス ト モードが不要になり ます。 つま り、 アイ スキャン データは通常動作中に抽出できるため、 実際のシステムでのみ生じるコーナーケース条件に対応できます。 PCI Express の場合、 消費電力およびスイ ッチング ノ イズがアイ ドル モード と DMA モードでは大き く異な り ます。 インシステム アイ スキャンの結果には、 これらの依存状態が考慮されているため、 すべてのモードのマージン解析が可能になり ます。

PCI Express でアイ スキャン機能が有効なとき

PCI Express にはアイ スキャン機能の使用ケースがいくつかあ り ます。 このセクシ ョ ンではそれらについて説明します。

リンク ト レーニングの問題をデバッグ シグナル インテグ リ テ ィが原因でリ ンク ト レーニングの問題が生じるこ とがあ り ます。 この問題のデバッグに、 アイ スキャン機能が利用できます。 Gen 1 (2.5 Gb/s) を含むどのスピードにも リ ンクが確立されていない場合は、 アイ スキャンではな く、 コアからの ltssm 信号を使用する方法を推奨します。低速でリ ンク ト レーニングされているものの、最大速度ではト レーニングされていない場合に、アイ スキャンの使用を推奨します。 リ ンクのレートが変動している と、 アイ スキャン データを抽出できないため、 低速レートでアイ スキャン データを抽出する方法が最も簡単なソ リ ューシ ョ ンとな り ます。 低速レートで リ ンク ト レーニング後に、高速レートで十分なマージンを確保できるかど うかを確認するためにマージン解析を実行できます。特定レーンで問題が生じていないかを確認するには、リ ンクの各レーンを解析する必要があ り ます。 アイが許容範囲内であるこ とを確認できた場合、 リ ンク パートナーはこれよ り低いレートで実行を開始できます。

データ転送のリカバリ

ltssm がリ カバリ ステート を行き来している場合は、 ト ランザクシ ョ ン レイヤー パケッ ト (TLP) がデータ リ ンク層でリ ンク CRC (LCRC) チェッ クに失敗しているこ とを意味します。LCRC のエラーは、マージンのないリ ンクを示している可能性があ り ます。 データ転送が行われていない間にリ ンクからアイ スキャンを抽出するこ とで、そのリ ンクに十分なマージンがあるかを検証できます。 また、 LCRC エラーに起因している特定レーンを正確に示すこ と も可能です。

修正可能なエンドポイン ト エラーの検出

デバイス ステータス レジスタを読み出すこ とで、 修正可能なエラーが検出されているかを確認できます。修正可能なエラーの詳細は、『PCI Express の仕様』 [参照 2] を参照してください。修正可能なエラーが検出される場合、マージンのないリ ンクがあるこ とを示している可能性があ り ます。 アイ スキャン機能では、 どのリ ンクがこのよ うな リ ンクの要因となっているかやどのよ うな状況でリ ンクのマージンが確保できないか判断可能です。たとえば、修正可能なエラーが特定のテス ト パターンで検出された場合は、 そのテス ト パターン中にアイ スキャンを抽出し、 どのよ うに リ ンクが影響を受けているかを確認できます。

Page 3: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

ハードウェアの説明

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 3

その他の診断

デザインにアイ スキャン機能が統合されている場合、そのデータを使用して遠隔操作でリ ンクをデバッグ可能です。XADC でサポート されているダイ温度測定機能も利用して、異なるダイ温度におけるアイの状態を確認できます。 リ ンク パートナーのト ランス ミ ッ ター制御がある場合には、 リ ンクを最適な トランス ミ ッ ターの設定に調整するこ と も可能です。 この診断機能によって、 システムのマージンを最適にできます。

製品歩留まりを改善

100 個のボードのうち 1 個が正常に動作しない状況では、 デバッグが困難になる可能性があ り ます。 アイ スキャンを実行するこ とによって、 リ ンク上にマージンの問題があるかを判断できます。問題があると判断した場合には、 IBIS-AMI シ ミ ュレーシ ョ ンを実行して、 そのチャネルを再度解析する必要があり ます。 IBIS-AMI シ ミ ュレーシ ョ ンは、 問題が生じている箇所から根本的な原因を判断するのに役立ちます。 シ リ アル チャネルのデザインを改善するこ とで、 製品歩留ま りの改善を図るこ とができます。

ハードウェアの説明

このアプ リ ケーシ ョ ン ノー ト で提供する リ フ ァ レンス デザインは、 7 シ リーズ FPGA の IntegratedBlock for PCI Express IP または Virtex®-7 FPGA の Gen3 Integrated Block for PCI Express IP から提供されている PCI Express のサンプル デザインを使用しています。 IP からのサンプル デザインでは、『Using the Memory Endpoint Test Driver (MET) with the Programmed Input/Output Example Design forPCI Express Endpoint Cores』 [参照 3] で説明されている ド ラ イバーを使用し て機能する PIO(Programmed Input/Output) を実装しています。 この資料 [参照 3] で説明されている ド ライバーは PIOサンプル デザインで使用できますが、 アイ スキャン データの抽出には不要です。

リ ファレンス デザインには、 ト ランシーバーからアイ スキャン データを抽出するために、 IP インテグレーターで作成したサブシステムを追加しています。 アイ スキャンを実装した場合、 アイ スキャン レジスタへのアクセスには、 ト ランシーバーのダイナミ ッ ク リ コンフ ィギュレーシ ョ ン ポート (DRP) インターフェイスへアクセスする必要があ り ます。 ト ランシーバーを含むすべてのザイ リ ンクス IP には、ト ランシーバーの DRP インターフェイスへアクセスするためのオプシ ョ ンがあ り ます。 この リ ファレンス デザインは、 アイ スキャン サブシステムへのその他の接続を必要とせず、 ト ランシーバーを含むあらゆるザイ リ ンクス IP コアと簡単に統合できるよ うにしています。

PIO サンプル デザインは PCI Express コアからの TLP を実行し、 アイ スキャンのサブシステムはト ランシーバーへの DRP アクセスを実行します。図 2 に、このシステム構成を表すブロ ッ ク図を示します。

X-Ref Target - Figure 2

図 2 : リファレンス デザインの概略ブロック図

Page 4: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

ハードウェアの説明

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 4

ダイナミ ック リ コンフ ィギュレーシ ョ ン ポートへの AXI ブリ ッジ

PCI Express コアからの DRP インターフェイスは、 DRP Bridge IP コアの AXI へ直接接続されます。AXI to DRP Bridge コアはリ ファレンス デザインの一部であ り、 IP インテグレーターの IP コアと してパッケージされています。 この IP によって、 MicroBlaze™、 Zynq®-7000 All Programmable プロセッシング システム (PS)、 または AXI Master IP などの AXI マスターを介して ト ランシーバーの DRP レジスタへ簡単にアクセスできるよ うにな り ます。図 3 に、IP インテグレーターに表示された AXI to DRPBridge IP を示します。 左側の AXI インターフェイスが AXI インターコネク トへ接続されているため、AXI マスターからアクセス可能になり ます。右側では、 PCI Express IP コアから提供される ト ランシーバー DRP インターフェイスを駆動します。

AXI インターフェイスからのアドレス マップは、 DRP アドレスに対して 2 ビッ トのオフセッ トがあ ります。 ブ リ ッジは、 アラ インされていない転送をサポート しないこ とによって軽量化を実現するため、このよ うに実装されました。つま り、 AXI アドレスの下位 2 ビッ トは使用されません。 ト ランシーバーの DRP アドレス幅は 9 ビッ トであるため、DRP アドレスへのマップには、AXI アドレスの下位 11 ビット のみ使用されます。 た と えば、 AXI to DRP Bridge のベース ア ド レ スが 0xC0000000 の場合、0xC0000010 へのアクセスはト ランシーバー DRP のアドレス 0x004 へのアクセスとな り ます。AXI インターフェイスへ返されるデータは、DRP インターフェイスから直接転送されます。 ト ランシーバーのDRP データ幅は 16 ビッ トであるため、 AXI 読み出し /書き込みデータ チャネルの下位 16 ビッ トのみ使用されます。 ソフ ト ウェアは、データ幅とアドレス マップの両方を考慮する必要があ り ます。表 1 にマップの例を示します。

アイ スキャンを実行するすべての ト ランシーバーには、 それぞれ 1 個のブ リ ッジが必要です。 たとえば、 x8 リ ンクの 8 本すべてのレーンをスキャンする場合、 8 個の AXI to DRP Bridge コアをデザインに含める必要があ り ます。4 レーンのみスキャンする場合に必要な AXI to DRP Bridge コアは 4 つのみです。 1 つの AXI to DRP Bridge コアは 34 個の LUT と 60 個の FF のみで構成されているため、 非常に軽量の IP とな り ます。

複数レーンを使用する場合、 各レーンには少なく と も 2(# of DRP address bits+2) = 211= 2KB のオフセッ トが必要です。 2013.3 の IP インテグレーターには、 各 IP のアドレス指定可能な空間と して 4k という制限があ り ます。 したがって、 サンプル デザインでは 4k オフセッ ト を使用しています。

X-Ref Target - Figure 3

図 3 : IP インテグレーター内の AXI to DRP Bridge IP

表 1 : AXI と DRP のアドレスの相関関係の例

AXIアドレス

AXIデータ

DRP アドレス

DRPデータ

x0 x00001234 x0 x1234

x4 x00005678 x1 x5678

x8 x00009ABC x2 x9ABC

xC x0000DEF0 x3 xDEF0

… … … …

Page 5: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

ハードウェアの説明

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 5

プロセッシング システム

MicroBlaze や ARM® A9 コアは、 AXI to DRP Bridge を介して ト ランシーバー DRP インターフェイス と通信します。MicroBlaze で駆動されるソフ ト ウェアは、 『MicroBlaze プロセッサ MCS によるアイスキャン』 [参照 1] で説明されていまるものですが、GTP、GTX、および GTH ト ランシーバーをサポートするよ うに拡張されています。 また、 リ ファレンス デザインに含まれるソフ ト ウェアは、デザイン内のレーン数を簡単に増加できます。 GTP、 GTX、 および GTH ト ランシーバーの切り換えには、 drp.hヘッダー ファ イルを使用して、 #define GTP、 #define GTX、 または #define GTH をインクルード します。 AC701、 KC705、 VC709、 または ZC706 ディ レク ト リから使用されるファ イルの種類に応じて、 適切な #define がすでに使用されています。 レーン数を変更する場合は、 es_controller.hヘッダー ファ イルを使用して、 適切なレーン幅用に変更する必要があ り ます。 NUM_LANES がデザイン内のレーン数を定義します。

プロセッサ上で実行するソフ ト ウェアは、 ト ランシーバーでアイ スキャン アルゴ リズムを実装し、AXIブロ ッ ク RAM にそのデータを格納します。 ブロ ッ ク RAM がアイ スキャン データで満たされる と、JTAG to AXI IP コアがブロ ッ ク RAM からデータを読み出します。 その後、 これらのデータは PC のJTAG 接続を介して、テキス ト ファ イル形式でローカル マシンに保存されます。ブロ ッ ク RAM は AXIベースであ り、レーン幅の変更に応じて縮小/拡大できます。 このリ ファレンス デザインの場合、各レーンで最低限必要となるブロ ッ ク RAM の深さは 2KB です。 これは、 IP インテグレーターの [AddressEditor] で変更できます。

ローカル スト レージ

「プロセッシング システム」 で説明したとおり、 JTAG to AXI IP コアが AXI ブロ ッ ク RAM からアイスキャン データを読み出します。 JTAG to AXI IP がボードへ接続された JTAG を介して、 ローカル マシンにアイ スキャン データを格納します。 この動作は、 水平方向と垂直方向のスキャンがすべて完了するまで続けられます。水平方向と垂直方向のスキャンが完了する と、プロセッサへ伝えられてアイ スキャンの実行が停止します。 ブロ ッ ク RAM のサイズが 2KB の場合、 2KB 分のデータが有効になり ます。通常、フル アイ スキャンでは 2KB 以上のメモ リ空間が必要です。最大で水平方向に 4,096 タ ップ、垂直方向に 256 タ ップあ り ます。各エラー数の測定値は 2 バイ ト幅です。つま り、最大サイズのスキャンには、 256 × 4,096 × 2 = 2MB のエラー スキャン データが含まれるこ とになり ます (その他にも、 プリ スケール、 水平/垂直方向オフセッ ト、 UT サインを格納するために数バイ トが必要)。 AXI ブロ ッ クRAM の深さは、 各レーンでわずか 2KB であるため、 JTAG to AXI IP コアとプロセッサ間にはハンドシェイ クが不可欠です。 このハンドシェイ クによって、 JTAG がブロ ッ ク RAM のコンテンツを読み出し、同時にプロセッサがブロッ ク RAM にスキャン データを格納するこ とが可能になり ます。 このハンドシェイ ク機能の実装はド ロ ップイン ソ リ ューシ ョ ンですが、常に必要とは限り ません。各レーン用に2MB のメモ リ空間がある場合は、 アイ スキャン データをすべて格納できるため、 JTAG to AXI IP コアとプロセッサ間にハンドシェイ ク機能を実装する必要はあ り ません。

Tcl ポストプロセッシング

JTAG to AXI IP コ アがブロ ッ ク RAM から ア イ スキ ャ ン データ を読み出すと、 そのデータはCH#.dump (# はレーン数を示す) という ラベルが付いたローカル ファ イルに格納されます。 このファイルには、 水平方向および垂直方向に配置された各ト ランシーバーの DRP 空間の error_count レジスタから読み出されたエラー数のデータがすべて含まれます。 Vivado IDE にアイ スキャン データを表示するには、CH#.dump ファ イルを Vivado ツールが理解できるフォーマッ トに変換する必要があ り ます。Vivado Eye Scan ビューアでは、 エラー数の代わりにビッ ト エラー レート を入力する必要があ り ます。エラー数をビッ ト エラー レートに変換してください。 このポス ト プロセッシングは、 リ ファレンス デザインで提供されている Tcl スク リプ トで実行されます。 この Tcl スク リプ トは XAPP743 [参照 1] で生成したものであ り、 複数レーン用に簡単に拡張できるよ うに変更し、 XMD の代わりに JTAG to AXIIP コアを使用するこ と もできます。ポス トプロセッシングの出力は、 アイ スキャンと して Vivado で読み込み可能な CSV ファ イルです。 図 4 に、 Vivado IDE に表示されたスキャン結果の例を示します。

Page 6: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

ハードウェアの説明

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 6

IP インテグレーター システム

アイ スキャンのサブシステムは、 <board name>/source/ipi_tcl ディ レク ト リ内の ipi_<boardname>.tcl ファ イルで構築されます。 このファ イルが読み込まれる と、 図 5 に示すよ うに、 あらかじめ定義されたすべてのコンポーネン トが IP インテグレーターによって相互接続されます。 このサブシステムは、デザインに既存のプロセッサがあるなしにかかわらず、デザインへ追加できます。Zynq-7000デバイスに関してはプロセッシング システムが 1 つしかないため、 Zynq-7000 のサンプル デザインはド ロ ップイン ソ リ ューシ ョ ンにはなり ません。 Zynq-7000 を使用する場合は、 サンプル デザインのソフ ト ウェアを統合する必要があ り ます。

X-Ref Target - Figure 4

図 4 : Vivado IDE で表示されるスキャン結果

X-Ref Target - Figure 5

図 5 : IP インテグレーターのアイ スキャン サブシステム

Page 7: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

リファレンス デザインの実行

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 7

クロックおよびリセッ ト

サブシステムへの AXI_aclk と リセッ ト入力は、PIO サンプル デザインの既存信号で提供されます。リセッ ト ラ インは、 PCI Express コアの user_lnk_up 出力へ接続され、 リ ンクが L0 になるまでサブシステムを リセッ ト状態にします。 AXI_aclk は、 PCI Express コアの ext_ch_gt_drpclk 出力から くる ク ロ ッ ク信号です。 この信号は、 ト ランシーバー DRP インターフェイスを駆動するク ロ ッ ク と同じです。

カスタム インプリ メンテーシ ョ ンを行う場合、 AXI_aclk 信号を ト ランシーバーの DRP ク ロ ッ ク と同じ信号にする必要があ り ます。 リセッ ト信号は、 アイ スキャンを実行する と きにディアサート されるように構成されている限り、 どこからでも接続可能です。

リファレンス デザインの実行

このアプリ ケーシ ョ ン ノートのデザイン ファ イルは、 こちらからダウンロード して ください。

リ ファレンス デザインのソース ファ イルは、 次に示す 4 つのディ レク ト リにあ り ます。

• AC701

• KC705

• VC709

• ZC706

各リ ファレンス デザインは、ディ レク ト リ名が示す特定の評価ボードをターゲッ ト と しています。 カスタム デザイン用にこれらを利用する場合、 ト ランシーバーの種類に応じて適切なデザインを選択してください。 Virtex-7 を使用する場合、 一部の Virtex-7 デバイスには GTX ト ランシーバーが搭載されています。 GTX ト ランシーバーを搭載する Virtex-7 デバイスには、 KC705 ファ イルを リ ファレンス と して使用して ください。

ビッ ト ファ イルを作成するには、Vivado IDE を開いて Vivado IDE の下部にある [Tcl Console] を使用、または Windows から Tcl コンソールを起動して使用します。

[Tcl Console] で、 ボードの種類に応じて適切なディ レク ト リ内の run_here ディ レク ト リへ作業ディレク ト リ を変更します。 run_here ディ レク ト リで次のコマンドを入力します。

>> source ./build_bitstream.tcl

この Tcl スク リプ ト を実行する と、 次の動作が実行されます。

• IP インテグレーター デザインを含む Vivado プロジェク ト を作成します。

• プロジェク トにすべての RTL および IP コアを追加します。

• 合成と インプリ メンテーシ ョ ンを実行します。

• LMB ブロ ッ ク RAM に組み込まれたソフ ト ウェアを含むビッ ト ス ト リームを作成します。

• スキャン用に Vivado を準備するために Scanning Tcl ファ イルを読み込みます。

• これによ り、[Tcl Console] に「run_eyescan」 と入力してスキャンを実行できるよ うになり ます。

Tcl スク リプ トの読み込みが完了する と、 FPGA をプログラムできます。 このと き、 評価ボードを PCIExpress スロ ッ トへ差し込む必要があ り ます。 FPGA に電源を投入し、 Vivado IDE 内で FPGA をプログラムします。 JTAG 接続は JTAG to AXI IP コアで必要になるため、 接続したままにしておいてください。 スロ ッ トに差し込まれ、 プログラムされた評価ボード と接続されたホス トに電源を入れます。 こ

X-Ref Target - Figure 6

図 6 : [Tcl Console] ビューでビルド ファイルの読み込みを指示

Page 8: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

リファレンス デザインの実行

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 8

れで リ ンクが完成し、 システムは ト ランシーバーのアイ スキャンを実行できる状態とな り ます。 [Tclconsole] に次を入力します。

>>run_eyescan

run_eyescan コマンドは、 scan_time ディ レク ト リの run_eyescan.tcl ファ イルから実行されます。 プロ ジ ェ ク ト を閉じ る場合、 run_eyscan.tcl フ ァ イルを再び読み込む必要があ り ます。run_eyescan.tcl ファ イルが変更された場合も、 Vivado 内でこのファ イルを再度読み込みます。 Tclファ イルは、次の例で示すよ うに、場合によってはいくつかの変数を変更する必要があ り ます。表 2 で、変更が必要な場合について説明します。

# horz_step:Horizontal sweep step size.Minimum value is 1.Maximum value depends on data rate mode (see user guide and rate variable below).set horz_step($i) 4

# vert_step:Vertical sweep step size.Minimum value is 1.Maximum value is 127.set vert_step($i) 4

# max_prescale:Maximum prescale value for sample count.Minimum value is 0.Maximum value is 31.set max_prescale($i) 5

# data_width:Parallel data width interface.Valid values are 16, 20, 32, and 40.set data_width($i) 40

# lpm_mode:Set to 1 for LPM mode.Set to 0 for DFE mode.set lpm_mode($i) 0

# rate:Set depending on full, half, quarter, octal, or hex modes (see user guide).set rate($i) 64

表 2 : Tcl の変数

変数 説明 変更が必要な場合

horz_step 水平方向スキャンの解像度を示します。

スキャンの実行時間を短縮する場合は、 この値を増加させます。 大きい値ほど、 水平方向の解像度が低くな り ます。 最適な解像度にするには、 1 に設定します。

vert_step 垂直方向スキャンの解像度を示します。

スキャンの実行時間を短縮する場合は、 この値を増加させます。 大きい値ほど、 垂直方向の解像度が低くな り ます。 最適な解像度にするには、 1 に設定します。

max_prescale

垂直/水平方向のサンプルにかかる時 間 を 変 更 し ま す。 詳 細 は、『MicroBlaze プロセッサ MCS によるアイ スキャン』 [参照 1] の 「ギアシフ ト」 を参照してください。

よ り細かいビッ ト エラー レート (BER) が必要な場合は、 この値を大き く します。結果、スキャン時間は長くな り ます。 スキャン時間を短くする場合は、 この値を小さ く します。

data_width

内部データ幅を示します。 詳細は、『7 シ リーズ FPGA GTX/GTH ト ランシーバー ユーザー ガイ ド』 [参照 5] および 『7 シ リ ーズ FPGAGTX/GTH ト ラ ンシーバー ユーザー ガイ ド』 [参照 6] を参照してください。

この値はデザインに依存します。 この値が適切に設定されていない場合は、 BER の計算が不正になり ます。

Page 9: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

異なるレーン幅へ拡張

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 9

異なるレーン幅へ拡張

異なるレーン幅へ拡張する場合は、 次の手順に従ってください。

1. IP インテグレーターの AXI ブロ ッ ク RAM を拡張します。

各レーンには 2KB のブロ ッ ク RAM が必要です。 この値は、 IP インテグレーターの [AddressEditor] で変更できます。 このと き、 必ず jtag_axi_0 および mb_ps/microblaze_1 の幅も変更して ください。 図 7 に [Address Editor] を示します。

AXI ブロ ッ ク RAM のベース アドレスを 0xC2000000 から移動する場合には、run_eyescan.tclファ イルも変更します。 axi_bram_addr の変数は、 図 8 に示すよ うに run_eyescan.tcl ファイルにあ り ます。 この変数は、 [Address Editor] に表示されている値と一致する必要があ り ます。

lpm_mode ト ランシーバーのモード (DEF または LPM) を指定します。

ト ランシーバーの LPMEN ポートが High の場合、 この値を 1 に設定します。 LPMEN がLow の場合は 0 に設定します。

rate 水平方向の解像度を指定します。

適切な値を判断するために、 次を使用します。

RXOUT_DIV = 1rate = 32RXOUT_DIV = 2rate = 64RXOUT_DIV = 4rate = 128RXOUT_DIV = 8rate = 256RXOUT_DIV = 16rate = 512

表 2 : Tcl の変数 (続き)

変数 説明 変更が必要な場合

X-Ref Target - Figure 7

図 7 : レーン幅を拡張するためにブロック RAM 範囲を拡張

X-Ref Target - Figure 8

図 8 : run_eyescan.tcl ファイルの axi_bram_addr 変数

Page 10: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

異なるレーン幅へ拡張

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 10

2. レーン幅と AXI to DRP Bridge コアの数を一致させます。

この作業は、AXI to DRP Bridge コアをデザインから削除またはデザインに追加して行います。AXIto DRP Bridge を追加/削除する場合、 [Address Editor] でアドレスが連続するよ うにします。 アドレスが連続していない場合には、 ソフ ト ウェアの変更も必要になり ます。図 9 は、 IP インテグレーターのキャンパスにおける 4 レーンと 8 レーンのインプリ メンテーシ ョ ンの違いを示しています。

よ り多くの AXI to DRP Bridge コアが使用されるため、 コア数に対応するよ うに AXI インターコネク ト を調整する必要があ り ます。

3. 新しい ELF を生成する必要します。

これには元の C コードを変更する必要があ り ます。 C コードを変更して新しい ELF を生成するには、ハード ウェアの仕様をエクスポート します。エクスポートはさまざまなステージで可能ですが、合成の直後が最も簡単です。 図 10 のよ うに、 IP インテグレーターで [eyescan_subsystem] を右ク リ ッ ク して、 [Export Hardware for SDK] をク リ ッ ク します。

X-Ref Target - Figure 9

図 9 : 異なるレーン幅へ拡張する場合の IP インテグレーターのキャンバス

Page 17: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

異なるレーン幅へ拡張

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 17

10. 次のダイアログ ボッ クスでは、 [Select archive file] をオンにして、source\software ディ レク ト リの適切な ZIP ファ イルを指定します。 このファ イルが GTP、 GTX、 または GTH いずれかのソフ トウェア ファ イルを参照します。 [Projects] では、 図 17 のよ うにソフ ト ウェア ディ レク ト リが選択されているこ とを確認して ください。 その後、 [Finish] をク リ ッ ク します。

X-Ref Target - Figure 17

図 17 : アーカイブ ファイルをインポート

Page 18: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

異なるレーン幅へ拡張

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 18

11. es_controller.h ファ イルを探して、 NUM_LANES を適切なレーン数に変更します。 変更を保存して再コンパイルし、 Debug ディレク ト リに新しい ELF ファ イルを作成します (図 18)。

12. ELF を変更した後、 Vivado プロジェク トに ELF を含めます (MicroBlaze のみ)。 これを実行するには、 [Project Manager] へ移動し、 [Tools] → [Associate ELF Files] をク リ ッ ク します (図 19)。

X-Ref Target - Figure 18

図 18 : 異なるレーン幅用に es_controller.h を変更

X-Ref Target - Figure 19

図 19 : MicroBlaze へ ELF ファイルを関連付ける (パート 1)

Page 19: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

異なるレーン幅へ拡張

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 19

13. 次に表示されるダイアログ ボッ クスで新しい ELF ファ イルを選択して [OK] をク リ ッ ク します。

14. ELF がマップされた後、ビッ ト ス ト リームを生成します。run_eyescan.tcl ファ イルを変更する必要があ り ます。 NUM_CH を実際のレーン数に変更しす。

15. ブート イ メージを作成します (Zynq-7000 のみ)。

通常、ブート イ メージには 3 つのファイル (ビッ ト ファ イル、 ソフ ト ウェア アプリ ケーシ ョ ン、および FSBL) が必要です。 ビッ ト ファ イルと ソフ ト ウェア アプリ ケーシ ョ ンはすでに作成されています。 FSBL を作成するには、 [File] → [New] → [Application Project] をク リ ッ ク します (図 22)。

X-Ref Target - Figure 20

図 20 : MicroBlaze へ ELF ファイルを関連付ける (パート 2)

X-Ref Target - Figure 21

図 21 : 異なるレーン幅用に run_eyescan.tcl を変更

X-Ref Target - Figure 22

図 22 : FSBL の作成

Page 23: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

カスタム デザインに統合

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 23

19. 出力の拡張子を .mcs に変更して [Create Image] をク リ ッ ク します (図 26)。

カスタム デザインに統合

リ ファレンス デザイン ファ イルをカスタム デザインに統合する方法は、 主に 2 つあり ます。

1. IP インテグレーター サブシステム全体を追加して、 DRP インターフェイスへ接続する

2. IP インテグレーター デザインを追加して、 変更を考慮する

• MicroBlaze を削除して、 別の AXI マスターに置き換えます。 有効なオプシ ョ ンを次に示します。

- PCI Express

- イーサネッ ト

• AXI ブロ ッ ク RAM を削除して、 よ り深いメモ リに置き換えます。有効なオプシ ョ ンを次に示します。

- DDR3

- フラ ッシュ

- システムのローカル メモ リ

• JTAG to AXI IP を別の AXI マスターに置き換えます。 有効なオプシ ョ ンを次に示します。

- PCI Express

- イーサネッ ト

X-Ref Target - Figure 26

図 26 : ブート イメージ ファイル名を指定

Page 24: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

アップグレード

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 24

• 既存の MicroBlaze を使用して、 ソフ ト ウェアを統合します。

オプシ ョ ン 1 は簡単な方法であるため、 このセクシ ョ ンでは説明しません。 オプシ ョ ン 2 は、 柔軟性に優れていながら、 IP インテグレーターで AXI4 準拠のプラグアンドプレイ IP を活用できる こ とから、ハード ウェア的には非常にシンプルです。

図 27 に、 カスタム デザインにサンプル デザインを統合した例を示します。

図 27 では、 MicroBlaze が DDR3 SDRAM にすべてのスキャン データを格納できるインプリ メンテーシ ョ ン オプシ ョ ンを示しています。 スキャン完了後、 イーサネッ ト コン ト ローラーを使用してデータをアップロードできるため、 後にスキャン結果を表示可能です。 この例の MicroBlaze は、 リ ファレンス デザインの MicroBlaze 機能のほかに、 ス ト レージからデータを読み出す JTAG to AXI IP の機能を果たします。 代わりに、 FPGA からの通信はイーサネッ ト経由で実行します。

アップグレード Vivado を新しいバージ ョ ンにアップグレードする場合、 リ ファレンス デザインは Vivado 2013.3 ですべての出力ファ イルを生成する必要があ り ます。 出力ファ イルの生成後、 新しいバージ ョ ンの Vivadoでそのプロジェ ク ト を開き、 IP コアをアップグレードできます。 詳細は、 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 [参照 4] を参照して、 アップグレードに関するガイ ド ラインに従ってください。

あらかじめ構築されたイ メージを使用

AC701、 KC705、 および VC709 用に構築済みのビッ ト ス ト リームが提供されているため、 すべての出力ファイルを構築する必要がなく、 すぐにサンプル デザインを実行できます。 ZC706 用には、 PS ソフト ウェアおよび PL ビッ ト ス ト リームをロードするための MCS イ メージが提供されています。 ビッ トス ト リームは Vivado でプログラムできますが、 MCS イ メージは SDK でプログラムする必要があ り ます。

あらかじめ構築されたイ メージを使用する場合は、 Vivado IDE を開き、 [Tcl Console] で作業ディ レクト リ を prebuilt_images に変更してください。ボードがプログラムされた後、Vivado の [Tcl Console]で次のコマンドを実行して ください。

>> open_hw

[Tcl Console] で次のコマンドを実行して、 source_eyescan.tcl ファ イルを実行します。

X-Ref Target - Figure 27

図 27 : 統合オプシ ョ ンを示すサンプル システム

Page 25: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

リソース使用状況

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 25

>> source -quiet ./source_eyescan.tcl

次のコマンドは使用するボードによって異な り ます。 たとえば、 VC709 評価ボードを使用している場合、 [Tcl Console] で次のコマンドを実行します。

>> source_eyescan -board VC709

これでスキャンが開始し、 アイ スキャンの結果を Vivado IDE へアップロード して終了します。

リソース使用状況 表 3 は、 x4 レーン サブシステムのリ ソース使用状況について示しています。

表 4 は、 x8 レーン サブシステムのリ ソース使用状況について示しています。

表 3 : x4 レーン サブシステムのリソース使用状況

アイ スキャンのサブシステム (x4 レーン)

LUT FF RAM

MicroBlaze 788 655 0

インターコネク ト 1,864 1,677 0

4 DRP ブリ ッジ 136 240 0

AXI ブロ ッ ク RAM 293 270 2

ローカル ブロ ッ ク RAM 12 6 4

JTAG to AXI 1,488 1,801 0

表 4 : x8 レーン サブシステムのリソース使用状況

アイ スキャンのサブシステム (x8 レーン)

LUT FF RAM

MicroBlaze 795 655 0

インターコネク ト 3,522 3,270 0

8 DRP ブリ ッジ 272 480 0

AXI ブロ ッ ク RAM 295 276 4

ローカル ブロ ッ ク RAM 12 6 4

JTAG to AXI 1,487 1,801 0

Page 26: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

ファイルの説明

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 26

ファイルの説明 表 5 に、 リ ファレンス デザインのディ レク ト リ構造を示します。

表 5 : ファイルおよびディ レク ト リ構造の説明

ディレク ト リ とファイル (<> はディレク ト リを示す) 説明

<ボード名 : AC701、 KC705、 VC709、または ZC706><run_here>build_bitstream.tcl

この Tcl スク リプ トは Vivado プロジェク ト を作成し、ツールを使用してビッ ト ファ イルを生成します。また、アイ スキャン スク リプ ト も読み込むため、随時スキャンを実行できます。

<ボード名 : AC701、 KC705、 VC709、または ZC706><scan_time>run_eyescan.tcl

この Tcl スク リプ トには、アイ スキャンを実行するための手順が含まれています。 このファイルが読み込まれた後には、 run_scan コマンドを実行してアイ スキャン データを抽出する必要があ り ます。 このファ イルには変数が含まれており、アイ スキャンが正常に機能するにはこれらの値が適切である必要があ り ます。

<ボード名 : AC701、 KC705、 VC709、または ZC706><scan_time>Es_pc_host.tcl

この Tcl スク リプ トには、 制御レジスタをポーリ ングする主な手順が含まれています。 またブロ ッ ク RAM からアイスキャン データを読み出します。

<ボード名 : AC701、 KC705、 VC709、または ZC706><scan_time>Load_vivado_scans.tcl

この Tcl スク リプ トは、 アイ スキャンで作成された CSVファ イルを Vivado IDE 内で表示します。

<ボード名 : AC701、 KC705、 VC709、または ZC706><source/rtl>

このフォルダーには、 PCI Express サンプル デザインのすべての RTL が含まれています。

<ボード名 : AC701、 KC705、 VC709、または ZC706><source/ipi_design>[board name]_ipi.tcl

この Tcl ス ク リ プ トは、IP インテグレーター デザインを作成し ます。 サブシステムが初めて作成された と きに、write_bd_tcl コマン ドで最初に作成されたス ク リ プ ト です。

<ボード名 : AC701、 KC705、 VC709、または ZC706><source/custom_ip><drp_bridge_ip><drp_mux_ip>

これらの 2 つのディ レク ト リには、 IP インテグレーターデザイン用のカスタム IP が含まれています。<custom_ip>ディ レク ト リは、 プロジェ ク ト の IP レポジ ト リに追加する必要があ り ます。これらの IP は、Vivado の IP パッケージャーを使用してパッケージされています。 このサンプルデザインでは drp MUX IP を使用しませんが、 2 つの異なるモジュールが DRP へアクセスするために MUX が提供されています。

<ボード名 : AC701、 KC705、 VC709、または ZC706><source/core>

このディ レク ト リには、 PCI Express コアのソース ファ イルが含まれています。 拡張子は .XCI です。

<ボード名 : AC701、 KC705、 VC709、または ZC706><source/constraints>

このディ レク ト リには、 PCI Express サンプル デザインのVivado 制約ファイルが含まれています。拡張子は .XDC です。

<ボード名 : AC701、 KC705、 VC709、または ZC706><source/software>Prebuilt.er

prebuilt_elf.elf は、MicroBlaze 用にコンパイルされたソフト ウェアであ り、 アイ スキャン アルゴ リ ズムを実行します。ELF ファ イルは最終的に MicroBlaze ローカル ブロ ック RAM にパッ ク されます。

Page 27: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

まとめ

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 27

まとめ リ ンクからアイ スキャン データを抽出するこ とによって、 実際のシステムのマージンを正確に測定できます。 あらかじめ定義されたパターンは不要で、 アイ スキャンの実行がシステムに悪影響を及ぼすことはないため、 どの ト ランシーバーにも追加できます。 アイ スキャン ロジッ クの実装は、 リ ファレンス デザインで提供されているファ イルを利用するこ とで非常に簡単にな り ます。 リ ファレンス デザインでは、 使い方がわかりやすい IP インテグレーター ツールと AXI プラグアンドプレイ IP を活用しています。 このよ うに簡単なフローでアイ スキャンを新機能と して素早く製品に導入できます。

参考資料 この文書の参考資料は次のとおりです。

1. 『MicroBlaze プロセッサ MCS によるアイ スキャン』 (XAPP743)

2. PCI-SIG® 仕様

3. 『PCI Express Endpoint コアの PIO サンプル デザインで MET を使用』 (XAPP1022)

4. 『Vivado Design Suite ユーザー ガイ ド :IP を使用した設計』 (UG896)

5. 『7 シ リーズ FPGA GTX/GTH ト ランシーバー ユーザー ガイ ド』 (UG476)

6. 『7 シ リーズ FPGA GTP ト ランシーバー ユーザー ガイ ド』 (UG482)

改訂履歴 次の表に、 この文書の改訂履歴を示します。

<ボード名 : AC701、 KC705、 VC709、または ZC706><source/software>

eyescan_software_[GT の種類 : GTP、GTX、 または GTH].zip

この ZIP ファ イルは、 SDK 用にアーカイブされたソフ トウェア プロジェク トです。 独自の ELF をコンパイルする場合に、 このファイルを SDK へインポートできます。

<prebuilt_image>

このディ レク ト リには、 AC701、 KC705、 および VC709用のビ ッ ト フ ァ イルが含まれています。 ZC706 用には、MCS イ メージが提供されています。すべてのイ メージは、随時アイ スキャンを実行できます。

<prebuilt_image>/source_eyescan.tcl この Tcl スク リプ トは、ターゲッ ト ボードのアイ スキャンを実行します。

表 5 : ファイルおよびディ レク ト リ構造の説明 (続き)

ディレク ト リ とファイル (<> はディレク ト リを示す) 説明

日付 バージョ ン 内容

2013 年 12 月 18 日 1.0 初版

2014 年 1 月 6 日 1.0 • 表 1 : 「AXI と DRP のアドレスの相関関係の例」 の DRP アドレスの x3 を更新。

• 手順 18 の eye_scan_software を更新。

• 表 5 : 「ファ イルおよびディ レク ト リ構造の説明」 を更新

Page 28: Vivado IP インテグレーターと AXI4 を使用する PCI …PCI Express でアイ スキャン機能が有効なときXAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 2このアプリケーションノートでは、PCI

Notice of Disclaimer

XAPP1198 (v1.0) 2014 年 1 月 6 日 japan.xilinx.com 28

Notice of Disclaimer

The information disclosed to you hereunder (the “Materials”) is provided solely for the selection and useof Xilinx products.To the maximum extent permitted by applicable law:(1) Materials are made available"AS IS" and with all faults, Xilinx hereby DISCLAIMS ALL WARRANTIES AND CONDITIONS,EXPRESS, IMPLIED, OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OFMERCHANTABILITY, NON-INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE;and (2) Xilinx shall not be liable (whether in contract or tort, including negligence, or under any othertheory of liability) for any loss or damage of any kind or nature related to, arising under, or in connectionwith, the Materials (including your use of the Materials), including for any direct, indirect, special,incidental, or consequential loss or damage (including loss of data, profits, goodwill, or any type of lossor damage suffered as a result of any action brought by a third party) even if such damage or loss wasreasonably foreseeable or Xilinx had been advised of the possibility of the same.Xilinx assumes noobligation to correct any errors contained in the Materials or to notify you of updates to the Materials orto product specifications.You may not reproduce, modify, distribute, or publicly display the Materialswithout prior written consent.Certain products are subject to the terms and conditions of the LimitedWarranties which can be viewed at http://www.xilinx.com/warranty.htm; IP cores may be subject towarranty and support terms contained in a license issued to you by Xilinx.Xilinx products are notdesigned or intended to be fail-safe or for use in any application requiring fail-safe performance; youassume sole risk and liability for use of Xilinx products in CriticalApplications:http://www.xilinx.com/warranty.htm#critapps.

Automotive Applications Disclaimer

XILINX PRODUCTS ARE NOT DESIGNED OR INTENDED TO BE FAIL-SAFE, OR FOR USE INANY APPLICATION REQUIRING FAIL-SAFE PERFORMANCE, SUCH AS APPLICATIONSRELATED TO:(I) THE DEPLOYMENT OF AIRBAGS, (II) CONTROL OF A VEHICLE, UNLESSTHERE IS A FAIL-SAFE OR REDUNDANCY FEATURE (WHICH DOES NOT INCLUDE USE OFSOFTWARE IN THE XILINX DEVICE TO IMPLEMENT THE REDUNDANCY) AND A WARNINGSIGNAL UPON FAILURE TO THE OPERATOR, OR (III) USES THAT COULD LEAD TO DEATHOR PERSONAL INJURY.CUSTOMER ASSUMES THE SOLE RISK AND LIABILITY OF ANY USEOF XILINX PRODUCTS IN SUCH APPLICATIONS.

こ の 資 料 に 関 す る フ ィ ー ド バ ッ ク お よ び リ ン ク な ど の 問 題 に つ き ま し て は、[email protected] まで、 または各ページの右下にある [フ ィードバッ ク送信] ボタンをクリ ッ クする と表示されるフォームからお知らせください。 いただきましたご意見を参考に早急に対応させていただきます。 なお、 このメール アドレスへのお問い合わせは受け付けており ません。 あらかじめご了承ください。