Comments
Description
Transcript
Xilinx版TOE2-IPコアのご紹介 超高速のTCPを今すぐお届けします
Xilinx版 Xilinx版TOE2TOE2-IPコアのご IPコアのご紹介 コアのご紹介 Ver1.3J 超高速の 超高速のTCPを TCPを今すぐお届 すぐお届けします 2015/2/2 Design Gateway Page 1 アジェンダ • GbE GbEでの でのTCP/IP でのTCP/IP実装 TCP/IP実装メリット・デメリット 実装メリット・デメリット • TOE2コアの概要 概要 TOE2-IPコアの IPコアの • コアの動作 コアの動作 – 初期化 – 高速送信 – 高速受信 • ユーザ ユーザI/F I/F・ I/F・バッファ容量 バッファ容量のパラメタライズ 容量のパラメタライズ • リファレンス・デザイン • リソース例 リソース例・実機パフォーマンス 実機パフォーマンス例 パフォーマンス例 2015/2/2 Design Gateway Page 2 GbEでの GbEでのTCP/IP でのTCP/IP実装 TCP/IP実装メリット 実装メリット • GbE (ギガビット・イーサネット (ギガビット・イーサネット) ギガビット・イーサネット)の実装メリット 実装メリット – – – 理論上限は 理論上限は1Gbpsと Gbpsと高速転送 どのパソコンにもGbE どのパソコンにもGbEのポートが GbEのポートが標準 のポートが標準で 標準で搭載 広く普及し 普及し、装置、 装置、ケーブルのコストが安 ケーブルのコストが安い • TCP/IPの TCP/IPの実装メリット 実装メリット – イーサネットの イーサネットの標準 標準プロトコル 標準プロトコル規格 プロトコル規格 – データの欠損 転送データの データの信頼性 データの欠損がなく 欠損がなく転送 がなく転送 データの信頼性が 信頼性が確保される 確保される – 多くのOS くのOSが OSが標準でプロトコルスタックを 標準でプロトコルスタックを持 でプロトコルスタックを持っている 2015/2/2 Design Gateway Page 3 GbEでの GbEでのTCP/IP でのTCP/IP実装 TCP/IP実装デメリット 実装デメリット • パフォーマンスが出 パフォーマンスが出ない – プロトコル プロトコル処理 処理が 処理が複雑 – 実装には 実装には高性能 には高性能の 高性能のCPUが CPUが必要 – それでも200 それでも200~ 200~300Mbps 300Mbps程度 Mbps程度が 程度が実情 • 高性能の 高性能の外部CPU 外部CPUが CPUが必要 – FPGA FPGA内蔵 内蔵CPU(MicroBlaze) 内蔵CPU(MicroBlaze)ではパフォーマンスが CPU(MicroBlaze)ではパフォーマンスが出 ではパフォーマンスが出ない – 外部にハイエンドの 外部にハイエンドの高価 にハイエンドの高価な 高価なCPUが CPUが必要となる 必要となる – Zynqで するとCPU CPUリソースの Zynqで実装すると 実装すると CPUリソースの大半 リソースの大半を 大半を消耗してしまう 消耗してしまう 2015/2/2 Design Gateway Page 4 TOE2TOE2-IPコアの IPコアの概要 コアの概要 • • • • 第2世代の 世代のTCP/IPオフロード・エンジン・コア TCP/IPオフロード・エンジン・コア ユーザ回路 ユーザ回路と 回路とXilinx製 Xilinx製TEMACコアの TEMACコアの間 コアの間に挿入 TCPの TCPの送信・ 送信・受信の 受信の両方向の 両方向の処理を 処理を完全HW 完全HW化 HW化 Full Duplex(送受信同時 Duplex(送受信同時) 送受信同時)通信をサポート 通信をサポート TOE2-IPコア・ブロック図 2015/2/2 Xilinx標準 Xilinx標準MAC 標準MACコア MACコア (EF(EF-DIDI-TEMAC) Design Gateway Page 5 TOE2TOE2-IPコアの IPコアの特長 コアの特長1 特長1 • TCP/IP処理 TCP/IP処理を 処理を完全ロジック・ハードウエア 完全ロジック・ハードウエア化 ロジック・ハードウエア化 – CPU CPUなしでの なしでの組込 なしでの組込みシステム 組込みシステム実装 みシステム実装が 実装が可能! 可能! – CPUシステムでは CPUシステムではCPU システムではCPU負荷 CPU負荷がゼロ 負荷がゼロ! がゼロ! • 送信のみ 送信のみ/ のみ/受信のみ 受信のみ/ のみ/同時送受信を 同時送受信を高速転送 – 片方向 片方向で で110MByte/sec 110MByte/secの MByte/secの実パフォーマンス – 同時送受信(Full 同時送受信(Full Duplex)でも Duplex)でも送受信 でも送受信とも 送受信とも100MByte/sec とも100MByte/sec • 転送データの 転送データの信頼性 データの信頼性を 信頼性を確保 – 送信時 送信時: :ACK抜 ACK抜け/重複/ 重複/タイムアウト等 タイムアウト等で自動リトライ 自動リトライ – 受信時: 受信時:シーケンス番号 シーケンス番号を 番号を評価し 評価し返信ACK 返信ACKを ACKを自動制御 2015/2/2 Design Gateway Page 6 TOE2TOE2-IPコアの IPコアの特長 コアの特長2 特長2 • データバッファ容量 データバッファ容量を 容量を選択可能 – FPGAメモリ・リソースとパフォーマンスからユーザが FPGAメモリ・リソースとパフォーマンスからユーザが選択 メモリ・リソースとパフォーマンスからユーザが選択 • Xilinx純正 Xilinx純正MAC 純正MACコア MACコア( コア(EFEF-DIDI-TEMAC)に TEMAC)に対応 – 直結可能のため 直結可能のため接続用 のため接続用の 接続用の外部ロジック 外部ロジック不要 ロジック不要 • 豊富な 豊富な実機動作リファレンス・デザイン 実機動作リファレンス・デザイン – – – – – Xilinx評価 Xilinx評価ボードで 評価ボードで動作 ボードで動作するプロジェクト 動作するプロジェクト 購入前にパフォーマンス・ 購入前にパフォーマンス・信頼性 にパフォーマンス・信頼性の 信頼性の実機評価を 実機評価を検証可能 製品のリファレンスはコア 製品のリファレンスはコア以外 のリファレンスはコア以外の 以外の全回路をソースで 全回路をソースで添付 をソースで添付 高速(TOE2 高速(TOE2(TOE2-IP)/低速 IP)/低速(CPU) 低速(CPU)の2ポート・デザインあり (CPU)の2ポート・デザインあり TOE2TOE2-IPコア IPコア応用高速 コア応用高速FTP 応用高速FTPサーバーのデザインあり FTPサーバーのデザインあり 2015/2/2 Design Gateway Page 7 TOE2TOE2-IPコアの IPコアの動作概要 コアの動作概要 • • • • • • リセット状態 アドレス等 を設定 リセット状態でパラメータ 状態でパラメータ(IP&MACアドレス でパラメータ アドレス等)を リセット解除 等)を を実行 リセット解除で 解除で初期化(ARP等 初期化 初期化完了でアイドル 初期化完了でアイドル(コマンド 状態 でアイドル コマンド待 コマンド待ち)状態 その後 その後ポートをオープン(アクティブ ポートをオープン アクティブ/パッシブ アクティブ パッシブ) パッシブ 送信・ 送信・受信は 受信は独立して 独立して動作 して動作(同時送受信可 動作 同時送受信可) 同時送受信可 パラメータ変更 パラメータ変更はリセット 変更はリセット状態 はリセット状態で 状態で実施 (転送長 転送長/パケット 転送長 パケット長 パケット長はビジー状態以外 はビジー状態以外で 状態以外で変更可) 変更可 コアの状態遷移図 2015/2/2 Design Gateway Page 8 初期化動作 • パラメータの初期値設定 パラメータの初期値設定 – コアのリセット コアのリセット維持中 維持中にユーザ 維持中にユーザ回路 にユーザ回路より 回路より設定 より設定 – IPおよび IPおよびMAC およびMACアドレス・ポート MACアドレス・ポート番号 アドレス・ポート番号を 番号を指定 – 設定を 設定を完了するとリセットを 完了するとリセットを解除 するとリセットを解除 • リセット解除後 リセット解除後ARP 解除後ARP実行 ARP実行 – 接続 接続ターゲットに ターゲットに対 ターゲットに対してARP してARPを ARPを発行 – 実行結果からターゲット 実行結果からターゲットMAC からターゲットMACアドレス MACアドレス情報 アドレス情報を 情報を自動更新 ユーザ回路 ユーザ回路 ARP コア内部 コア内部パラメータ 内部パラメータ コア内部 コア内部パラメータ 内部パラメータ リセット解除 リセット解除 リセット中 リセット中にユーザ回路 にユーザ回路か 回路か らパラメータをセット 2015/2/2 MAC Adr 接続 ターゲット リセット解除後 リセット解除後ARP 解除後ARPで ARPで MACアドレス MACアドレス情報 アドレス情報を 情報を更新 Design Gateway Page 9 高速送信 • 送信パケットの 送信パケットの生成 パケットの生成 – ユーザ ユーザ回路 回路は 回路は送信データを 送信データをFIFO データをFIFO I/Fで I/Fで書込み 書込み – 送信データをフレームサイズで 送信データをフレームサイズで分割 データをフレームサイズで分割 – ヘッダと送信 データを結合 結合し ヘッダと送信データを 送信データを 結合しEMACへ EMACへ出力 • 自動再送機能 – ターゲットからの ターゲットからのACK ACKを ACKを常時チェック 常時チェック – ACK抜 ACK抜け/重複/ 重複/タイムアウト等 タイムアウト等の異常ACK 異常ACKを ACKを検出 – 異常ACK じて適切 適切な 異常ACKの ACKの種類に 種類に応じて 適切な再送データを 再送データを用意 データを用意 2015/2/2 Design Gateway Page 10 送信パケットの 送信パケットの生成 パケットの生成 • 送信データにヘッダを 送信データにヘッダを自動的 データにヘッダを自動的に 自動的に付加し 付加しEMACへ EMACへ転送 – データはコア データはコア内 内にてフレーム・サイズで分割 にてフレーム・サイズで分割 – チェックサムやシーケンス番号 チェックサムやシーケンス番号などもコアが 番号などもコアが自動生成 などもコアが自動生成 フレームごとに分割 フレームごとに分割 1460Byte 1460Byte ヘッダを結合 ヘッダを結合 送信データのパケット生成 2015/2/2 Design Gateway Page 11 自動再送機能 • 専用設計された 専用設計された特殊 された特殊な 特殊なFIFOで FIFOで再送を 再送を実装 – 正常 正常ACK ACKで ACKで読み出しポインタを進 しポインタを進める – 異常ACK 異常ACKの ACKの場合コアは 場合コアは適切 コアは適切な 適切な位置にポインタを 位置にポインタを戻 にポインタを戻す – ポインタ制御 ポインタ制御・ 制御・再送の 再送の実行をコアが 実行をコアが自動制御 をコアが自動制御 ACKエラーでデータ ACKエラーでデータ読 エラーでデータ読み 出しポインタを戻 しポインタを戻す 正常ACK 正常ACK受信 ACK受信でデータ 受信でデータ読 でデータ読み 出しポインタを進 しポインタを進める 送信データ 読み出しポインタ 正常ACK 正常ACK未着 ACK未着で 未着で送信が 送信が確認されていないデータは 確認されていないデータはFIFO されていないデータはFIFOに FIFOに 残るようコアはユーザ回路 るようコアはユーザ回路からの 回路からの書込 からの書込みを 書込みを制御 みを制御 送信データ 書き込みポインタ 特殊FIFOによる再送機能 2015/2/2 Design Gateway Page 12 高速受信 • 受信パケットのヘッダ・チェック 受信パケットのヘッダ・チェック – 受信対象でない 受信対象でない場合 でない場合やチェックサム・エラーの 場合やチェックサム・エラーの場合 やチェックサム・エラーの場合は 場合は破棄 • データ並 データ並び替え – シーケンス シーケンス番号 番号の 番号の入れ替え発生時に 発生時に並び替え – 受信済みデータの 受信済みデータの再送要求 みデータの再送要求を 再送要求を防ぎ転送効率を 転送効率を維持 – 並び替え処理できない 処理できない場合 できない場合は 場合は重複ACK 重複ACKで ACKで再送要求 • 重複データの 重複データの結合 データの結合 – 受信 受信データが データが前回受信 データが前回受信パケットと 前回受信パケットと重複 パケットと重複する 重複する部分 する部分を 部分を検出 – 重複箇所のみ 破棄し し連続データとして 重複箇所のみ破棄 のみ破棄 連続データとして復元 データとして復元 • フロー制御 フロー制御 – Window Sizeの の復活で パケット自動送信 復活でWindow Updateパケット パケット自動送信 2015/2/2 Design Gateway Page 13 受信パケットのヘッダ・チェック 受信パケットのヘッダ・チェック • 受信ヘッダのチェック・サムが 受信ヘッダのチェック・サムが正 ヘッダのチェック・サムが正しいことを確認 しいことを確認 – 更に以下の 以下の条件を 条件を満たすこともコアが確認 たすこともコアが確認 Byteオフセット 0-5 6-11 12-13 14 20 23 26-29 30-33 プロトコル データ内容 ICMP あて先MACアドレス ICMP 送信元MACアドレス ICMP タイプ IP バージョン/ヘッダ長 IP フラグ/フラグメントOFS IP プロトコル番号 IP 送信元IPアドレス IP あて先IPアドレス 34-35 36-37 38-41 TCP TCP TCP 送信元ポート番号 あて先ポート番号 シーケンス番号 確認条件 SML/SMHレジスタで設定したコアのMACアドレスと一致 ARPで検出した通信ターゲットのMACアドレスと一致 0x0800 (IPパケット)であること 0x45 (IPv4, IPヘッダ長=20)であること 下位6ビットがゼロ(フラグメントの有無チェック)であること 0x06(TCPパケット)であること DIPレジスタで設定した通信ターゲットのIPアドレスと一致 SIPレジスタで設定したコアのIPアドレスと一致 DPNレジスタで設定/パッシブオープンで 取得した通信ターゲットのポート番号と一致 SPNレジスタで設定したコアのポート番号と一致 前回処理時のシーケンス番号との差分がコアで処理可能範囲内 受信パケット・ヘッダの確認条件 2015/2/2 Design Gateway Page 14 データ並 データ並び替え • シーケンス番号 シーケンス番号がスキップした 番号がスキップした( がスキップした(ロスト) ロスト)場合に 場合に機能 – ロスト ロスト状態 状態を 状態を解消するパケット 解消するパケット以外 するパケット以外は 以外は受信しない 受信しない – スキップ部 のデータを回復 回復するロスト スキップ部のデータを 回復するロスト解消 するロスト解消パケットのみ 解消パケットのみ受信 パケットのみ受信 • データ並 データ並び替え – ロスト ロスト解消 解消パケットからデータの 解消パケットからデータの連続性 パケットからデータの連続性を 連続性を完全に 完全に復元 – 受信済みデータは 受信済みデータは再送要求 みデータは再送要求せずパフォーマンスを 再送要求せずパフォーマンスを維持 せずパフォーマンスを維持 ① ① ① ① ① ② ③ ② ③ ② ③ ③ ④ ③ (正 正しい受信 しい受信パケット 受信パケット) パケット ②をロストし③を受信 ②をロストし③を受信 × ② ④ ④ ②以外を 以外を拒否 ③ 正常に 正常に復帰 ②を受信 ②を受信 受信済みの③は 受信済みの③は再送不要 みの③は再送不要! 再送不要! 2015/2/2 Page 15 Design Gateway 重複データの 重複データの結合 データの結合 • データの重複 データの重複を 重複を検出し 検出し自動的に 自動的に補正 – シーケンス シーケンス番号 番号から 番号から受信 から受信データの 受信データの重複 データの重複を 重複を検出 – 重複箇所のみ 重複箇所のみ破棄 のみ破棄し 破棄し連続データとして 連続データとして復元 データとして復元 今回パケットの 今回パケットの後半 パケットの後半 1000Byte Byteのみ 1000 Byteのみ格納 のみ格納 1460Byte 1460Byte 1460Byte 1460Byte 前回SEQ# 前回 =0 今回SEQ# 今回 =1460 前回SEQ# 前回 =0 今回SEQ# 今回 =1000 今回パケットの 今回パケットの重複 パケットの重複データ 重複データ 460Byte 460Byteを Byteを破棄 重複がない 重複がない場合 がない場合はその 場合はその まま受信 まま受信バッファに 受信バッファに格納 バッファに格納 受信バッファ 受信バッファ 2015/2/2 受信バッファ 受信バッファ Design Gateway Page 16 ④ フロー制御 フロー制御 (Window Update自動送信機能 Update自動送信機能) 自動送信機能) • TCP Window Update (ACK)パケット (ACK)パケット生成 パケット生成 – 受信 受信データ・バッファの データ・バッファの空 データ・バッファの空きスペース復活 きスペース復活を 復活を検出 – 設定した Updateパケットを パケットを自動送信 設定した閾値 した閾値で 閾値でWindow Update パケットを自動送信 – PC側 PC側ではWindow ではWindowサイズ Windowサイズ復活 サイズ復活で 復活で送信が 送信が再開可能 (PC(PC->FPGAの >FPGAの受信 に対する通常 する通常ACK) 通常ACK) IP末尾 末尾25=PC 末尾 IP末尾 末尾42=FPGA 末尾 Windowサイズ Windowサイズ復活 サイズ復活 後PCからのデータ PCからのデータ 送信を 送信を再開 Window Updateパケットの自動送信 2015/2/2 Windowサイズ Windowサイズ復活 サイズ復活でコ 復活でコ アからWindow アからWindow Update パケットを自動発行 パケットを自動発行 Design Gateway Page 17 ユーザ・インターフェース( ユーザ・インターフェース(制御) 制御) • レジスタI/F レジスタI/F、 I/F、送信FIFO 送信FIFO I/F、 I/F、受信FIFO 受信FIFO I/Fの3 I/Fの3種類 の3種類 – レジスタ レジスタI/F I/Fは I/Fは初期パラメータの 初期パラメータの設定 パラメータの設定、 設定、方向切り 方向切り替え指示 – 送信データ・ 受信データ データ用 送信データ・受信 データ・受信 データ用I/Fは I/Fは標準的な 標準的なFIFO I/F Clk [レジスタの書込 レジスタの書込み 書込み] ①アドレスとデータを 設定し 設定しWrEnで WrEnで書込み 書込み 2 RegAddr[3:0] A0 RegWrData[31:0] D0 RegWrEn RegRdData[31:0] A1 1 D1 3 [レジスタの読出 レジスタの読出し 読出し] ②アドレスを与 与えたる ②アドレスを ③次クロックで有効 クロックで有効 データが出力 データが出力 レジスタI/Fのタイムチャート 2015/2/2 Design Gateway Page 18 ユーザ・インターフェース( ユーザ・インターフェース(データ) データ) [送信データの 送信データの書込 データの書込み 書込み] ①データをWrEn WrEnで ①データを WrEnで書込み 書込み ②Fullになってから Fullになってから4 になってから4クロック 以内にライト 以内にライト中断 にライト中断 ③Flushで FlushでFIFOクリア FIFOクリア 送信FIFO I/Fのタイムチャート [受信データの 受信データの読 データの読み出し] ①非Emptyで EmptyでRdEnにて RdEnにて読出 にて読出し 読出し ②次のクロックでデータ出力 のクロックでデータ出力 ③Emptyではリード Emptyではリード禁止 ではリード禁止 ④Flushで FlushでFIFOクリア FIFOクリア 受信FIFO I/Fのタイムチャート 2015/2/2 Design Gateway Page 19 データ・バッファ容量 データ・バッファ容量の 容量の設定 • 3種類のデータ・バッファをパラメタライズで 種類のデータ・バッファをパラメタライズで設定可能 のデータ・バッファをパラメタライズで設定可能 ① 送信データ・バッファ 送信データ・バッファ: データ・バッファ: 4KByte~ KByte~64KByte 64KByte ② 送信パケット・バッファ 送信パケット・バッファ: パケット・バッファ: 2KByte~ KByte~16KByte 16KByte ③ 受信データ・バッファ 受信データ・バッファ: データ・バッファ: 2KByte~ KByte~64KByte 64KByte • リソースとパフォーマンスの最適点 リソースとパフォーマンスの最適点を 最適点を調整できる 調整できる ジェネリック名 ジェネリック名 TxBufBitWidth 設定範囲 1212-16 説明 送信データ・バッファ・サイズをアドレス・ビット 送信データ・バッファ・サイズをアドレス・ビット幅 データ・バッファ・サイズをアドレス・ビット幅で設定します 設定します。 します。 例えば 12 の場合 4K バイト、 バイト、16 の場合 64K バイトとなります。 バイトとなります。 TxPacBitWidth 1111-14 送信パケット・バッファ・サイズをアドレス・ビット 送信パケット・バッファ・サイズをアドレス・ビット幅 パケット・バッファ・サイズをアドレス・ビット幅で設定します 設定します。 します。 例えば 11 の場合 2K バイト、 バイト、14 の場合 16K バイトとなります。 バイトとなります。 RxBufBitWidth 1111-16 受信データ・バッファ・サイズをアドレス・ビット 受信データ・バッファ・サイズをアドレス・ビット幅 設定します。 データ・バッファ・サイズをアドレス・ビット幅で設定します します。 例えば 11 の場合 2K バイト、 バイト、16 の場合 64K バイトとなります。 バイトとなります。 各データ・バッファはパラメタライズで設定できる 2015/2/2 Design Gateway Page 20 評価用BIT 評価用BITファイル BITファイル • Xilinx各評価 Xilinx各評価ボードで 各評価ボードで動作 ボードで動作する 動作するbit するbitファイル bitファイル – – – – VC707/KC705/AC701/ZC706(※)で VC707/KC705/AC701/ZC706(※)で評価可能 片方向( 片方向(送信or 送信or受信 or受信)/ 受信)/同時双方向 )/同時双方向を 同時双方向を実機評価 転送パフォーマンス 転送パフォーマンス測定 パフォーマンス測定・データベリファイ 測定・データベリファイ確認 ・データベリファイ確認 2ポート( ポート(高速+ 高速+低速) 低速)評価版/FTP 評価版/FTP評価版 /FTP評価版あり 評価版あり (※)ZC706評価ではSFP-RJ45アダプタが別途必要 Xilinx評価ボードを使った実機検証環境 2015/2/2 Design Gateway Page 21 リファレンス・デザイン概要 リファレンス・デザイン概要 • 実機動作するデザインプロジェクト 実機動作するデザインプロジェクト – コア コア((ネットリスト) ネットリスト)部以外の 部以外の全回路をソースコードで 全回路をソースコードで提供 をソースコードで提供 – 標準デモと 標準デモと同時送受信 デモと同時送受信デモのデザインを 同時送受信デモのデザインを製品 デモのデザインを製品に 製品に標準添付 – 正規ユーザに 正規ユーザに2 ユーザに2ポート版 ポート版/FTPデモのプロジェクト /FTPデモのプロジェクト無償提供 デモのプロジェクト無償提供 User Module PacSel Tx Packet Size Register TCPTxFfFull rPacketSizeSet Tx Packet Counter TCPTxFfWrEn TxFfDataCnt TxPatt Generator RxPatt Generator rRxFfRdEn TCPTxFfWrData TCPRxFfRdEmpty DFF TCPRxFfRdEn rExpPatt ErrLED TCPRxFfRdData Comparator TOE2-IP ConnOn StartSW Debounce rStartCnt RegAddr rState ModeSel State Machine State Decoder RegWrEn RegWrData RegRdData GMII I/F MAC I/F EMAC TCPCtrlTest. vhd 実動作するVivado/EDKプロジェクト 2015/2/2 Design Gateway リファレンス・デザイン・ブロック図 Page 22 リファレンス・デザイン( リファレンス・デザイン(2ポート版 2ポート版) • TOE2 TOE2-IPによる IPによる高速 による高速ポートと 高速ポートとCPU ポートとCPUによる CPUによる低速 による低速ポートを 低速ポートを実装 ポートを実装 • 高速ポートのデータ 高速ポートのデータ送受信 ポートのデータ送受信と 送受信と低速ポートの 低速ポートのPing ポートのPing応答 Ping応答をサポート 応答をサポート • プリンタ/ プリンタ/計測機等の 計測機等の実製品システムをエミュレーション 実製品システムをエミュレーション マルチプレクサで高速 マルチプレクサで高速or 高速or低速 or低速ポートを 低速ポートを選択 ポートを選択 TOE2TOE2-IPコアによる IPコアによる 高速ポートでテスト 高速ポートでテスト ・データを送受信 ・データを送受信 低速ポートは 低速ポートはCPU ポートはCPUが CPUが制御し 制御し Ping 応答(ICMP) 応答(ICMP)をサポート (ICMP)をサポート 2ポート版デザイン・ブロック図 2015/2/2 Design Gateway Page 23 リファレンス・デザイン( リファレンス・デザイン(FTP版 FTP版) • FPGA FPGAボードが ボードが高速 ボードが高速FTP 高速FTPサーバーとして FTPサーバーとして動作 サーバーとして動作 • ファイル・データの転送 ファイル・データの転送は 転送はTOE2TOE2-IPコアで IPコアで超高速転送 コアで超高速転送 • FTPコマンド FTPコマンド処理 コマンド処理は 処理はCPU(MicroBlaze)ファームウエアで CPU(MicroBlaze)ファームウエアで実装 ファームウエアで実装 FTPコマンドは FTPコマンドはCPU コマンドはCPUフ CPUフ ァームウエアで処理 ァームウエアで処理 PC側 PC側は標準の 標準のFTPツ FTPツ ールでアクセス可 ールでアクセス可 (CPU) (TOE2(TOE2-IPコア IPコア) コア) ファイル・データはTOE2 ファイル・データはTOE2TOE2IPコアで IPコアで高速転送 コアで高速転送 2015/2/2 FTPデモのシステム・イメージ Design Gateway Page 24 リファレンス・デザイン( リファレンス・デザイン(FTP版 FTP版:続き) • 100MB/sを 100MB/sを超えるファイル転送 えるファイル転送パフォーマンス 転送パフォーマンス! パフォーマンス! 943MBのファイルを 943MBのファイルを8 のファイルを8秒で転送 FTPアプリ(FileZilla)で943MBのファイルをPCへダウンロードした結果例 2015/2/2 Design Gateway Page 25 リファレンスと実機評価 リファレンスと実機評価による 実機評価による開発 による開発 • リファレンス+ リファレンス+評価ボードによる 評価ボードによる確実 ボードによる確実な 確実な開発 – – – – まず最初 まず最初に 最初に製品添付のリファレンスで 製品添付のリファレンスで実機動作 のリファレンスで実機動作を 実機動作を確認 そこからユーザ製品 そこからユーザ製品に 製品に向け少しずつ編集 しずつ編集 編集ごとに 編集ごとに実機動作 ごとに実機動作を 実機動作をStep by Stepで Stepで確認 問題があれば1ステップ 問題があれば1ステップ前 があれば1ステップ前に戻るだけで 動く状態にすぐ 状態にすぐ復帰 にすぐ復帰できる 復帰できる 大きな後戻 きな後戻りがなく 後戻りがなく確実 りがなく確実で 確実で短期間での 短期間での製品開発 での製品開発が 製品開発が可能! 可能! 2015/2/2 Design Gateway Page 26 消費リソース 消費リソース • コアの消費 コアの消費リソース 消費リソース – 送信データ・バッファ 送信データ・バッファ=64 データ・バッファ=64KByte =64KByte、 KByte、送信パケット・バッファ 送信パケット・バッファ =16KByte =16KByte、 KByte、受信データ・バッファ 受信データ・バッファ=64 データ・バッファ=64KByte =64KByteの KByteの最大設定時 Family Example Device Fmax (MHz) Slice Regs Slice LUTs Slic es1 RAMB 36E1 Design Tools Artix-7 XC7A200T-2FBG676 125 2674 2502 1020 37 Vivado2014.1 Kintex-7 XC7K325T-2FFG900 125 2674 2502 1087 37 Vivado2014.1 Zynq-7000 XC7Z045-2FFG900 125 2674 2052 1119 37 Vivado2014.1 Virtex-7 XC7VX485T-2FFG1761 125 2674 2502 1086 37 Vivado2014.1 TOE2-IPコア単体コンパイル結果 メモリ消費量 メモリ消費量は 消費量は送受信ともバッファを 送受信ともバッファを最大 ともバッファを最大に 最大に設定した 設定した場合 した場合です 場合です。 です。 バッファ容量 バッファ容量を 削減すれば内部 容量を削減すれば すれば内部メモリ 内部メモリ消費 メモリ消費リソースを 消費リソースを節約 リソースを節約できます 節約できます。 できます。 2015/2/2 Design Gateway Page 27 転送パフォーマンス 転送パフォーマンス • 同時送受信(Full 同時送受信(Full Duplex)での Duplex)での実機 での実機パフォーマンス 実機パフォーマンス 送受信同時で 送受信同時で100MByte/secの 100MByte/secの 高速転送を 高速転送を実現 2015/2/2 Design Gateway Page 28 TOE2TOE2-IPのアプリケーション IPのアプリケーション • FAなどにおけるデータ FAなどにおけるデータ転送 などにおけるデータ転送 – 医療系 医療系の の画像処理装置の 画像処理装置の採用例が 採用例が多い – 欠落が 欠落が許されないセンサーデータなどをPC されないセンサーデータなどをPCに PCに転送 • NAS, iSCSIなどの iSCSIなどのTCP などのTCPを TCPを用いたストレージ – TCPの TCPの負荷を 負荷を大幅に 大幅に軽減し 軽減し、転送速度UP 転送速度UP • 監視カメラデータの 監視カメラデータの転送 カメラデータの転送 – TCPの TCPの負荷が 負荷が軽くなり、 くなり、コストダウン、 コストダウン、 低消費電力化が 低消費電力化が可能 2015/2/2 Design Gateway Page 29 問い合わせ • ホームページに詳細 ホームページに詳細な 詳細な技術資料を 技術資料を用意 – http://www.dgway.com/TOE2http://www.dgway.com/TOE2-IP_X.html • 問い合わせ – 株式会社 株式会社Design Design Gateway – E-mail : [email protected] – FAX : 050050-35883588-7915 2015/2/2 Design Gateway Page 30 改版履歴 Rev. 1.0J 1.1J 1.2J 1.3J 2015/2/2 日時 2013/6/10 2013/8/22 2014/10/23 2015/2/2 履歴 日本語プレゼン初版リリース page4を修正 同時双方向(Full Duplex)に対応 2ポート版/FTP版のデモ・デザイン追加、Zynqサポート追加 Design Gateway Page 31