Rev1.0J

dg_toe2ip_instruction_xilinx_jp.doc
TOE2-IP 標準デモ手順書 (Xilinx 版)
Rev1.1J 2015/01/13
このドキュメントは Xilinx 製 FPGA 評価キット・ボード(以下 FPGA ボードとします)上で動作する TOE2-IP コアの実機
評価デモにおいて、標準の高速送信デモまたは高速受信デモの具体的な手順を示したものです。 デモ用 BIT ファイ
ルを FPGA ボードに使用し、PC のギガビット・イーサネットと TCP/IP で通信することで実転送パフォーマンスが確認で
きます。 本デモはジャンボフレームをサポートする PC とサポートしない PC のどちらでも実施可能です。
1
動作環境
本デモ・デザインの動作環境を図 1~図 4 に示します。 実機デモ用として以下の部材を揃えてください。
1) FPGA ボード、現在 AC701/KC705/VC707/ZC706 で本デモが可能です。
2) iMPACT ver 14.4 あるいはそれ以降をインストールしたパソコン
3) ZC706 で評価する場合のみ、SFP-RJ45 アダプタ
4) ギガビット・イーサネットのポートを持つパソコン (2 の iMPACT を入れた PC と同一で問題ありません。)
5) PC と FPGA ボードを接続する Cat5E か Cat6 のギガビット・イーサネット・ケーブル
6) FPGA ボードを Configuration するための USB ケーブル(FPGA ボードの付属品)
7) 評価用 SOF ファイルおよび合わせて提供される “send_tcp_client.exe”と“recv_tcp_client.exe” 。
※ 評価用の SOF/EXE ファイルは以下のページからユーザ登録することでダウンロードできます。
TOE2-IP 紹介 URL: http://www.dgway.com/TOE2-IP_X.html
図 1: AC701 ボードでの TOE2-IP デモ環境 (StartSW は SW6)
図 2: KC705 ボードでの TOE2-IP デモ環境 (StartSW は SW5)
2015/01/13
Page 1
dg_toe2ip_instruction_xilinx_jp.doc
図 3: VC707 ボードでの TOE2-IP デモ環境(StartSW は SW6)
図 4: ZC706 ボードでの TOE2-IP デモ環境(StartSW は SW9)
注:ZC706 での実機評価には SFP-RJ45 アダプタが必要です。 アダプタは図 4 のように SFP コネクタに装着し、
LAN ケーブルで PC と接続してください。 ZC706 ボード上の RJ45 コネクタは Zynq デバイス内部 ARM プロセッ
サと直結しており FPGA ファブリックとは接続できないため、TOE2-IP デモには使えませんのでご注意ください。
ZC706 評価で必要となる SFP-RJ45 アダプタは例えば以下の FCLF-8520-3 または FCLF-8521-3 で動作を確
認しています。
アダプタ参考 URL:
http://www.finisar.com/products/optical-modules/sfp/FCLF-8520-3FCLF-8521-3
2015/01/13
Page 2
dg_toe2ip_instruction_xilinx_jp.doc
2
デモ内容
デモ内容の
内容の説明
本デモでは2つのテストモードを用意しています、一つは送信モードでもうひとつは受信モードです。 接続するパ
ソコンはどちらのモードでも TCP のクライアントとして動作し、FPGA ボード側が TCP サーバーとして動作します。
各々の転送モードでは異なるアプリケーションをパソコン側で走らせる必要があり、また FPGA ボードの DIP スイ
ッチも変更する必要があります。 FPGA ボードの DIP スイッチの定義を表1に、LED の発光パターンを表2に示し
ます。
DIPSW
Bit 1
Bit 2
Bit 3
OFF
ON
非ジャンボ・フレーム(1460 バイト)での送信モード
ジャンボ・フレーム(8960 バイト)での送信モード
送信モード
受信モード
データ・ベリファイなしでの受信モード
データ・ベリファイありでの受信モード
(パフォーマンス・モード)
(ベリファイ・モード)
表 1: DIP スイッチの設定
注:送信デモ/受信デモの転送実行中(LED3 が ON の状態)では DIP スイッチは変更しないでください。
GPIO
LED
0
1/R
2/C
3/L
点灯/点滅
ON: IP 初期化完了
点滅: タイムアウト・エラー発生
ジャンボフレーム・モードの送信モード
ON: ポート確立完了
LED 点滅:受信モードでデータベリファ
イ・エラーを検出
消灯
IP 初期化が未完了
スタート・スイッチを押下したことおよび PC 側の IP アドレス設定を確
認してください。
エラー無し
非ジャンボフレーム・モードの送信モード
アイドル(ポートがオープンしていない)状態
表 2: LED の発光パターン
(GPIO LED R,C,L は ZC706 の場合の LED 定義です)
次に、それぞれのテストの詳細を記載します。
2015/01/13
Page 3
dg_toe2ip_instruction_xilinx_jp.doc
2.1
送信モード
送信モード
このモードでは、FPGA ボードから PC へ 4GB のデータが転送されます。そして、PC 上にて動作中の
“recv_tcp_client.exe”がデータのベリファイを実施します。データ値が正しく無い場合、テストアプリケーションはコ
ンソール上にエラーメッセージを表示します。
DIPSW[1]の設定により、2つの転送パケットサイズを選択可能です。 すなわち、非ジャンボフレーム PC 用の
1460 バイトと、ジャンボフレーム PC 用の 8960 バイトです。
LED[2]により設定を確認できます。
送信モードの操作手順は下記の通りです。
1) FPGA ボードはパケットサイズ/転送サイズ/MAC と IP アドレスなどのパラメータを初期化します。そして、PC
との接続を待ちます。
2) PC 上のテストアプリケーションは、FPGA ボードとの接続をオープンします。そしてデータ転送を待ちます。
3) FPGA ボードは PC に対しての 4GB のデータ送信を開始し、PC 側では受信データが正しいか確認するベリフ
ァイ動作を開始します。
4) 全てのデータ転送後、FPGA ボードは、接続をクローズするパケットを送信します。
5) PC は ACK を送信して接続をクローズします。そして、ユーザがキャンセルするまで 2)から 5)を繰り返し実施し
ます。
2.2
受信モード
受信モード
このモードではデータが PC から FPGA ボードへ転送されます。PC 上にて“send_tcp_client.exe”を使用することに
より、設定した値のデータ量が転送されるまでデータを送信します。
このテストではパフォーマンス・テストとデータ・ベリファイの2つのモードがあります。 パフォーマンス・テストで
は、全て‘0’のデータが PC より送信されますが、FPGA ボードでは最高の転送パフォーマンスを確認するため、
ベリファイ・モジュールは動作しません。 データ・ベリファイ・モードでは、32bit のインクリメント・データが PC にて
生成・送信され、FPGA ボードでは同じデータ・パターンでベリファイを実行します。 ベリファイ・エラーが検出され
た場合は LED が点滅します。
PC 側のテストアプリケーションは、コマンドラインのオプションでベリファイの ON/OFF を指定するのに対し、
FPGA ボード側では DIPSW[3]によりベリファイの ON/OFF を設定します。
受信モードの操作手順は、下記の通りです。
1) 送信モードの 1)と同様の動作です。
2) PC 上のテストアプリケーションは、FPGA ボードとの接続を開始します。そして、オール‘0’のデータもしくは、
インクリメント・データの転送を開始します。
3) FPGA ボードは、データを受信し、ベリファイ設定されている場合は、ベリファイを行います。
4) 全てのデータが転送された後、テストアプリケーションは、接続をクローズするパケットを送信します。
5) FPGA ボードは、ACK で応答して接続をクローズします。 受信モードは送信モードの様なループ動作ではなく、
1回しか動作しません。
2015/01/13
Page 4
dg_toe2ip_instruction_xilinx_jp.doc
3
PC 設定
デモを実施する際には、下記の様に PC 上のネットワークを設定する必要があります。
3.1
IP 設定
図 5 IPv4 設定
-
図 5 の左図の様に、テスト接続のローカルエリア接続プロパティーを開きます。
“TCP/IPv4”を選択し、プロパティーをクリックします。
図 5 の右図の様に、IP アドレスを 192.168.11.25 に、サブネットマスクを 255.255.255.0 に設定します。
2015/01/13
Page 5
dg_toe2ip_instruction_xilinx_jp.doc
速度とフレームの
速度とフレームの設定
とフレームの設定
3.2
-
図 6 ネットワーク コンフィグ
Window 上のローカルエリア接続のプロパティーにて、図 6 の様に[構成]のボタンをクリックします。
アドバンス・タブにて図 7 の様に Jumbo Packet = 9014Bytes に設定します。
図 7 ジャンボフレームの設定
2015/01/13
Page 6
dg_toe2ip_instruction_xilinx_jp.doc
-
Link Speed タブにて、図 8 左側のように”1.0 Gbps Full Duplex”を選択します。
アドバンス・タブにて、図 8 右側のように Interrupt Moderation の項目を選択し値を Enabled に設定します。
図 8 Link speed と Interrupt Moderation の設定
-
Intel 製の LAN コントローラでは、アドバンス・タブにパフォーマンス・オプションを設定できる場合があります。
この場合図 9 に示すように”Interrupt Moderation Rate”を”OFF”とすることで TOE2-IP デモの実効転送レー
トを改善するケースがあります。 (LAN コントローラやドライバなどの種類に依存するため、パラメータの設定
は実機にてご確認をお願いします。)
図 9 Interrupt Moderation Rate の設定を変更し実機でパフォーマンスを確認
2015/01/13
Page 7
dg_toe2ip_instruction_xilinx_jp.doc
デモ実施方法
デモ実施方法
4
デモの準備手順
デモの準備手順
4.1
送信/受信モードどちらのデモにも、下記の様に、同じハードウェア設定の初期手順が必要です。
- イーサーネット・ケーブルを FPGA ボードと PC 間に接続します。
ZC706 の場合 SFP-RJ45 アダプタを使って LAN ケーブルを接続してください。ZC706 ボード上の RJ45 コネク
タは TOE2-IP コアのデモには使えません。
- FPGA ボード付属の USB ケーブルを FPGA ボードと PC 間に接続し、電源を FPGA ボードに接続します。
- 3 章[PC 設定]の様に、PC 上のネットワーク設定を行います
- FPGA ボード電源を投入します。
- 下図 10 のように iMPACT を開き、評価用 BIT ファイルを FPGA ボードへダウンロードします。
図 10 iMPACT から評価用 BIT ファイルをダウンロード
-
コンフィグレーション直後の状態で FPGA ボードの LED0,1,3 の全てが消灯していることを確認します。
AC701 の場合、PHY チップの状態を示す LED の DS11 をチェックします。 図 11 左に示すようにこの LED は
消灯しておりリンクが確立していることを確認してください。
KC705/VC707 の場合、1000Link 状態を示す DS11(RJ45 コネクタ近傍にあります)をチェックし、図 11 右のよ
うに LED が点灯していてギガビット速度でイーサネットがリンクしていることを確認してください。
図 11 PHY チップのリンク状態 LED
2015/01/13
Page 8
dg_toe2ip_instruction_xilinx_jp.doc
-
図 1~4 に示す StartSW(ユーザ向けスイッチのうち中央の位置のスイッチ)を押してシステムのパラメータを
初期化します、そして DIPSW[1]の設定にしたがって LED0 が図 12 または図 13 のように点灯することを確認
してください。
図 12 DIPSW[1]が OFF(非ジャンボフレーム)で StartSW を押した後の LED 状態
図 13 DIPSW[1]が ON(ジャンボフレーム)で StartSW を押した後の LED 状態
この時点で、データ転送の準備ができました。次の項にて、送信及び受信テストのステップを述べます。
注意: 本デモの転送パフォーマンスはテスト PC の能力やイーサネット・コントローラに依存します。
2015/01/13
Page 9
dg_toe2ip_instruction_xilinx_jp.doc
4.2
送信デモの
送信デモの実施
デモの実施
送信デモはループ動作を繰り返すためテストを中断するときにユーザがキャンセルする必要があります。
4.2.1 非ジャンボフレーム・モード
- DIPSW[2] = OFF の送信モードに設定します。
- DIPSW[1] = OFF に設定し、LED2 が消灯している事を確認します。
- PC 上の“command prompt”を開きます。そして、“recv_tcp_client”テストアプリケーションを3つの引数をつけ
て以下のコマンドラインで実行します。
>> recv_tcp_client <FPGA の IP アドレス> <FPGA のポート番号> <パケットサイズ>
本デモでは以下のコマンドラインとしてください
recv_tcp_client 192.168.11.42 4000 1460
注意: このデモでは、IP アドレス、ポート番号、パケットサイズを固定しています。そのため、FPGA ボードの
HDL デザイン内 HDL の変更無しには、いずれの値も変えないでください。
-
テストアプリケーションは、図 14 の様に、転送中は現在のパケット数を表示します。また、使用時間とパフォ
ーマンスは、それぞれのループ転送が完了した時に表示されます。
“Ctrl+C”により、動作を停止することができます。
図 14 非ジャンボフレームの送信デモ
図 15 非ジャンボフレームで送信デモを実行中の LED 状態
2015/01/13
Page 10
dg_toe2ip_instruction_xilinx_jp.doc
4.2.2
ジャンボフレーム・モード
DIPSW[2] = OFF の送信モードに設定します。
DIPSW[1] = ON に設定し、LED2 が点灯している事を確認します。
PC 上の“command prompt”を開きます。そして、“recv_tcp_client”テストアプリケーションを3つの引数をつけ
て以下のコマンドラインで実行します。
recv_tcp_client 192.168.11.42 4000 8960
8960
注意: このデモでは、IP アドレス、ポート番号、パケットサイズを固定しています。そのため、FPGA ボードの
HDL デザイン内 HDL の変更無しには、いずれの値も変えないでください。
- テストアプリケーションは、図 16 の様に、転送中は現在のパケット数を表示します。また、使用時間とパフォ
ーマンスは、それぞれのループ転送が完了した時に表示されます。
- “Ctrl+C”により、動作を停止することができます。
-
図 16 ジャンボフレームの送信デモ
図 17 ジャンボフレームで送信デモを実行中の LED 状態
2015/01/13
Page 11
dg_toe2ip_instruction_xilinx_jp.doc
4.3
受信デモの
受信デモの実施
デモの実施
受信デモには実転送速度を実測するパフォーマンス・モードとデータの信頼性を確認するベリファイ・モードの2
種類があります。
4.3.1
パフォーマンス・モード
- DIPSW[2] = ON の受信モードに設定します。
- DIPSW[3] = OFF のパフォーマンス・モードに設定します。
- PC 上の“command prompt”を開きます。そして、“send_tcp_client”テストアプリケーションを4つの引数をつけ
て以下のコマンドラインで実行します。
>> send_tcp_client <FPGA の IP アドレス> <FPGA のポート番号> <16k バイト単位での転送サイズ> <モード>
本デモでは図 18 に示すように、以下のコマンドラインとしてください
send_tcp_client 192.168.11.42 4000 100000 0
注意:
・ 送信デモと同様にこのデモでは、IP アドレスとポート番号を固定しています。そのため、FPGA ボード
の HDL デザイン内 HDL の変更無しには、どちらの値も変えないでください。
・ テストアプリケーションのバッファーサイズである、16k バイト単位にて転送サイズを設定可能です。こ
の例で、100000 は、1600M バイトの転送を意味します。有 効な範囲は 1 - 262143 です。
・ モードの‘0’は、全て‘0’のパターンがパフォーマンス・テストのために転送されます。
-
テストアプリケーションは、パケット転送中に“…”を表示します。 そして転送完了時に図 19 の様に所要時間
とパフォーマンスが表示されます。
図 18 パフォーマンス・モードの受信デモにおけるコマンドライン
図 19 パフォーマンス・モードの受信デモ
2015/01/13
Page 12
dg_toe2ip_instruction_xilinx_jp.doc
4.3.2
-
ベリファイ・モード
DIPSW[2] = ON の受信モードに設定します。
DIPSW[3] = ON のベリファイ・モードに設定します。
PC 上の“command prompt”を開きます。そして、“send_tcp_client”テストアプリケーションを4つの引数をつけ
て以下のコマンドラインで実行します。
send_tcp_client 192.168.11.42 4000 100000 1
注意:
・ 送信デモと同様にこのデモでは、IP アドレスとポート番号を固定しています。そのため、FPGA ボード
の HDL デザイン内 HDL の変更無しには、どちらの値も変えないでください。
・ テストアプリケーションのバッファーサイズである、16k バイト単位にて転送サイズを設定可能です。こ
の例で、100000 は、1600M バイトの転送を意味します。有 効な範囲は 1 - 262143 です。
・ モードの‘1’は、32bit インクメントデータをベリファイ・パターンとして送信します。
・
-
図 20 ベリファイ・モードの受信デモにおけるコマンドライン
テストアプリケーションは、パケット転送中に“…”を表示します。図 21 の様に使用時間とパフォーマンスが転
送完了時に表示されます。
図 21 ベリファイ・モードの受信デモ
-
ベリファイ・モジュールからデータのミスマッチが検出された場合、LED3 が点滅します。
2015/01/13
Page 13
dg_toe2ip_instruction_xilinx_jp.doc
5
5.1
制約事項・
制約事項・注意点
ファイアウォールによる通信
ファイアウォールによる通信の
通信の遮断
PC と FPGA ボードが通信できない場合、PC 側にて Windows やセキュリティソフトのファイヤーウォールが接続を
ブロックしている場合があります。 その場合は、セキュリティソフトや Windows のファイヤーウォールの設定を OFF に
してください。
図 22 Windows のファイヤーウォールの設定
2015/01/13
Page 14
dg_toe2ip_instruction_xilinx_jp.doc
5.2
パケット監視
パケット監視ソフト
監視ソフト
Windows のパケットスケジューラーやウィルススキャンソフトのパケット監視ソフトが起動していると、ネットワーク
の速度が遅くなります。
データ通信速度を評価する場合は、データ通信に余分な機能はできるだけオフにしてご評価ください。 ウィルスス
キャンソフトによっては、機能をオフにしてもインストールしてあるだけで負荷がかかるものもあります。その場合は、
アンインストールしてください。
図 23 Windows のネットワークプロパティの設定例
2015/01/13
Page 15
dg_toe2ip_instruction_xilinx_jp.doc
5.3
設定の
設定の最適化について
最適化について
受信側 PC に Windows XP および Vista を使用されている場合は、デフォルトの設定では速度が十分に出ないこと
があります。 Windows のレジストリ値を設定して、Windows からの ACK の数を減らす必要があります。
詳しくは以下を参照してください。
・ Windows XP および Windows Server 2003 で TCP ACK の動作を制御するための新しいレジストリ エントリ
http://support.microsoft.com/kb/328890/ja
MSS=1460 では、10 前後に設定すると良好な結果が得られることがあります。 また、通常、Winodws 7 ではこの
設定をしなくても、良好なパフォーマンスが得られます。
また、最近の多くのイーサネットアダプタは受信記述子の設定があります。通常デフォルトの設定では十分な性能
が出ませんので、この設定はできるだけ大きい値を設定してください。
図 24 イーサネットアダプタの受信記述子設定例
2015/01/13
Page 16
dg_toe2ip_instruction_xilinx_jp.doc
5.4
1000Mbps でリンクしない場合
でリンクしない場合
PC によっては、評価ボードのイーサネットの PHY との相性で、オートネゴシエーションでは 1000Mbps でリンクしな
いケースがあります。 例えば 100Mbps などでリンクしてしまう場合は、PC のイーサネットアダプタにてリンク速度のプ
ロパティを 1000Mbps 固定として試してください。
図 25 イーサネットアダプタのリンク速度設定
6
改版履歴
リビジョン
1.0
1.0J
1.1J
日付
13-Aug-14
2014/11/07
2015/01/13
内容
English version initial release
日本語訳の初期バージョン作成
ZC706 の記述を追加
Copyright: 2014 Design Gateway Co,Ltd.
2015/01/13
Page 17