Upgrade to Pro — share decks privately, control downloads, hide ads and more …

実践的!FPGA開発セミナー vol.11

実践的!FPGA開発セミナー vol.11

2022年6月29日実施の「実践的!FPGA開発セミナー vol.11」の当日資料です。

Bbf28bf908ac83e5b85b52a675641641?s=128

fixstars

July 01, 2022
Tweet

More Decks by fixstars

Other Decks in Programming

Transcript

  1. Fixstars Group www.fixstars.com Copyright © Fixstars Group Copyright © Fixstars

    Group 実践的!FPGA開発セミナー vol.11 2022/06/29 18:00~
  2. Fixstars Group www.fixstars.com Copyright © Fixstars Group Copyright © Fixstars

    Group Intel® Agilex™ 開発キットを用いた 各種機能トライアル ~Agilex™ を体感する~
  3. Fixstars Group www.fixstars.com Copyright © Fixstars Group Who I am

    3 写真 Ryuji NISHIDA 西田 竜之 ソリューション第四事業部 シニアエンジニア
  4. Fixstars Group www.fixstars.com Copyright © Fixstars Group 自己紹介 • 西田竜之

    ◦ FPGAを用いたシステム開発に従事 ◦ ハードウェア開発をメインに担当 ◦ 略歴 ▪ 半導体ベンダ • サーバー向けASIC開発 ▪ 映像事務機メーカー • 高画質エンジンLSI 映像機器向けFPGA開発 ▪ フィックスターズ • FPGAを用いた高速取引金融システム • OpenCLによるアプリの高速化 4
  5. Fixstars Group www.fixstars.com Copyright © Fixstars Group アジェンダ 1. Intel®

    Agilex™ 概要 2. Intel® Agilex™ 性能試行&使いこなし 1. コア性能 2. ネットワーク I/O 性能 3. HPS 試行 3. まとめ 5
  6. Fixstars Group www.fixstars.com Copyright © Fixstars Group Intel® Agilex™ 概要

    • Intel® Agilex™ とは ◦ Intel® FPGA 最新デバイス(2019年発表) ◦ シリーズ ▪ F シリーズ : フレキシブル • データセンター、ネットワーク、エッジ PCIe Gen4, DDR4, Cortex-A53(オプション) ▪ I シリーズ : インターフェース • 高帯域&高性能プロセッシング PCIe Gen5, DDR4, Cortex-A53, Xeon CXL ▪ M シリーズ : メモリー • 最高性能 高メモリ帯域 PCIe Gen5, DDR5, Cortex-A53, Xeon CXL, HBM2e 6
  7. Fixstars Group www.fixstars.com Copyright © Fixstars Group 使用評価ボード • Intel®

    Agilex™ Fシリーズ FPGA 開発キット ◦ AGFB014R24A2E2VR0 ※ES品のためPCIe Gen4未対応 ◦ 2 x QSFP-DD(2 x 200Gbps) ※接続ケーブルは40Gbpsまで ◦ 3 x DDR4 DIMM for FPGA, 1 x DDR4 DIMM for HPS 7 参照URL: https://www.intel.com/content/www/us/en/products/details/fpga/development-kits/agilex/f-series.html
  8. Fixstars Group www.fixstars.com Copyright © Fixstars Group 開発環境 • 合成ツールバージョン

    ◦ Quartus® Prime Pro ver 22.1 ※ただし、Programmer は ver 20.4 を使用 (.sof ファイルのconfigに失敗するため) • 合成マシン ◦ CPU : AMD Ryzen Threadripper 3960X 24コア/48スレッド ◦ メモリ : 256GB ◦ OS : CentOS 7.9 8
  9. Fixstars Group www.fixstars.com Copyright © Fixstars Group Agilex™ コア性能 性能試行

    • 目的&方法 ◦ コアロジック領域(ALM、配線)に着目して ▪ どこまでロジック領域を使い切れるのか? ▪ その時のFmaxはどの程度か? ALMを敷き詰める回路で実験 • ALM 構造(参考) ◦ 4 FF, 2 addr, LUT, MUX などで構成される 9 参照URL: https://www.intel.com/content/www/us/en/docs/programmabl e/683577/current/alm-resources.html
  10. Fixstars Group www.fixstars.com Copyright © Fixstars Group • ALM 敷き詰め回路

    ◦ 3入力EXOR x 2 + 4FF ≒ 1 ALM ◦ 690 x 660 = 455,400 ALM(デバイスTotal 487,200 ALM) ◦ 入出力端は FF をスキャンチェーン接続し、入出力1ポートず つを外部接続 ※削除されないようにするため ◦ 合成ターゲット周波数:1GHz Agilex™ コア性能 性能試行 10
  11. Fixstars Group www.fixstars.com Copyright © Fixstars Group Agilex™ コア性能 性能試行

    • 合成結果:Logic Utilization 98%, Fmax 848MHz を達成 ◦ Hyperflex™アーキテクチャの恩恵も一つの要因 11 Timing レポート例 Hyper-Register (配線領域のFF) を使い、配線遅延 の影響を緩和
  12. Fixstars Group www.fixstars.com Copyright © Fixstars Group Agilex™ コア性能 Hyperflex™アーキテクチャ

    • Stratix10から採用 • 配線領域にFFが存在 ⇒ パイプラインを刻みやすい 12 参照URL: https://www.intel.com/content/www/us/en/docs/programmabl e/683458/current/core-architecture.html ・Agilex™ ではBypassパスがより高速に
  13. Fixstars Group www.fixstars.com Copyright © Fixstars Group Agilex™ コア性能 Hyperflex™アーキテクチャ活用法

    • 基本的な使い方 ◦ Hyper-Retimer(配線領域 FF への移動)、 Hyper-Retiming(FFをまたいだタイミング最適化) ⇒ デフォルトでON 自動で最適化が実行される 13
  14. Fixstars Group www.fixstars.com Copyright © Fixstars Group Agilex™ コア性能 Hyperflex™アーキテクチャ活用法

    • さらなるFmax向上のための対処 ◦ あらかじめパイプライン段数を刻む ▪ 例)モジュール間のバス接続の配線遅延に、パイプライン挿入 ▪ スループット→ 向上 レイテンシ → サイクルは増えるものの、 Fmax向上分は補償される ▪ パイプラインが有効な箇所、段数の判断はツールサポートがある (Fast Forward Compile) ◦ パイプライン追加時の注意点 ▪ Hyperflex™に適した構成にすることでFmaxの改善が見込める (詳細は後述) 14
  15. Fixstars Group www.fixstars.com Copyright © Fixstars Group Agilex™ コア性能 Hyperflex™アーキテクチャ活用法

    • Fmax向上のためのパイプライン追加時の主な注意点 ◦ 非同期リセットを使用しない → Hyper-Registerに移動できない ◦ 同期リセット データパスのパイプライン先頭と末尾のみをリセットし、 その間のリセットを削除 末尾のリセット解除タイミングを遅らせることで、不定値伝搬を防ぐ ◦ クロックイネーブルは対応可能 ただし大きなファンアウトは 性能低下となる ◦ Retiming の妨げになる Loop は 避ける 15 参照URL: https://www.intel.com/content/www/us/en/docs/programmable/683353/21-3/retiming-with-clock-enables.html データ保持用のFFを 分離してDuplicate
  16. Fixstars Group www.fixstars.com Copyright © Fixstars Group Agilex™ コア性能 Hyperflex™アーキテクチャ活用法

    • その他ツール対応 ◦ Platform Designer : Hyperflex™ に対応可能 ※ただし、デフォルトから適宜変更必要な設定もある 16 デフォルトOFF → ONに変更 デフォルトFALSE → TRUEでFmax改善
  17. Fixstars Group www.fixstars.com Copyright © Fixstars Group Agilex™ コア性能 Hyperflex™アーキテクチャ活用法

    • その他ツール対応 ◦ Intel™ HLS : Hyperflex™対応のRTLが出力される ▪ 高位合成ツールは、Fmaxに合わせてパイプラインを刻むことは得意 Hyperflex™との親和性も高いと考えらえる 17
  18. Fixstars Group www.fixstars.com Copyright © Fixstars Group Agilex™ ネットワークI/O性能 Tile構成

    • Agilex™ トランシーバー ◦ マルチダイ構成 機能に適したTransceiver Tile(ハードIP)が搭載される ◦ E-Tile ← 今回、試行に使用 ▪ 12ch x 58Gbps PAM4 / 24ch x 28.9Gbps NRZ ▪ 100GbE etc. ◦ F-Tile ▪ 4ch x 116Gbps & 12ch x 58G PAM4 ▪ PCIe Gen4, ~400GbE, etc. ◦ P-Tile ▪ 16ch x 16Gbps NRZ ▪ PCIe Gen4 16Lane, etc. ◦ R-Tile ▪ 16ch x 32Gbps NRZ ▪ PCIe Gen5 16Lane, CXL etc. 18 参考 URL https://www.macnica.co.jp/business/semiconductor/articles/intel/140562/
  19. Fixstars Group www.fixstars.com Copyright © Fixstars Group Agilex™ ネットワークI/O性能 •

    E-Tile Hard IP for Ethernet ◦ 主な特徴 ▪ MAC + PCS, PCS only, FlexE, OTN ▪ 100GE (25Gbps x 4ch)、25GE(25Gbps x 1ch)、 10GE(10Gbps x 1ch) ▪ RS-FEC, PTP (Precision Time Protocol)も使用可能 ▪ 有償ライセンスではない ◦ 10GE x 4Laneを試行 ※40G 対応Cuケーブルを使用したため 19
  20. Fixstars Group www.fixstars.com Copyright © Fixstars Group • E-Tile Hard

    IP for Ethernet試行 ◦ 10GE x 4Lane 動作デザイン ▪ Exampleデザインを流用 Exampleデザインは、1portのみがインスタンス Internal LoopBack or TX->RX LoopBackモジュールを使う前提 ▪ 2port分インスタンスして、ケーブル接続 実動作に近い評価を行うことが目的 Agilex™ ネットワークI/O性能 20 (Example original) TX RX TX RX TX RX ToolKi t ToolKi t
  21. Fixstars Group www.fixstars.com Copyright © Fixstars Group • E-Tile Hard

    IP for Ethernet試行 ◦ E-Tile ToolKit 実行結果 ▪ PRBS31通信 2 port 合計 8ch ▪ No Error で実行可能 Agilex™ ネットワークI/O性能 21
  22. Fixstars Group www.fixstars.com Copyright © Fixstars Group • E-Tile Hard

    IP for Ethernet試行 ◦ 通信特性の確保 ▪ ToolKit 実行では、RX Adaptaion mode を有効にする Initial Adaptation → Start One-Time or Continuous Adaptation ▪ 通常動作時は、Continuous Adaptation モードで動作 している様子 ▪ 高速信号の通信品質の確保には、RX Adaptaionは必須 Agilex™ ネットワークI/O性能 22
  23. Fixstars Group www.fixstars.com Copyright © Fixstars Group • Agilex™ Hard

    Processor System ◦ Cotrtex-A53 クアッドコア ◦ Linux 動作手順は、RocketBoards.org Agilex SoC Golden System Reference Design に記載がある ◦ ただし、 Intel® Agilex™ F-Series Transceiver-SoC Development Kit 用で production versionを使うことが 明記されている ⇒ 手持ちの ES 品評価ボード用に移植、 Linux 起動にチャレンジ Agilex™ HPS 試行 23 参照URL: https://www.intel.com/content/www/us/en/products/details/fpga/development-kits/agilex/f-series-transceiver.html
  24. Fixstars Group www.fixstars.com Copyright © Fixstars Group • Linux 起動試行

    ⇒ 失敗。。 ◦ QSPIからのコンフィグが正常終了しない (ES品だから??デバッグ間に合わず。) ◦ 今回、ボード移植にあたって実施した内容を共有する • ハードウェアのGSRDとの差異を変更 ◦ DDR4 DRAM構成 ▪ DRAMモジュール → UDIMMに変更 ◦ ボードペリフェラルの変更 ▪ Triple Speed Eathernet IPを削除 • Linuxビルドは手順通り実行を完了出来た Agilex™ HPS 試行 24
  25. Fixstars Group www.fixstars.com Copyright © Fixstars Group • ボード移植 ◦

    DDR4 DRAM変更 ▪ UDIMM タイプのDRAMモジュールを挿入 DRAM データシートに従って、EMIF IP 設定を変更する ▪ EMIF Example デザインを生成し、Calibration PASSすればOK ▪ 各種エラーに対応必要 • HPS 用EMIFが2 rank構成UDIMMに未対応 → 1 rankとして使用 • ECCモードでエラー(GSRDではECC使用) → ECCオフにして、64bitモードで使用 • Example Design の Calibration PASS/FAIL 点灯が逆? ◦ Triple Speed Eathernet IPを削除 ▪ HPSのペリフェラルをボードに合わせて設定変更 ▪ Eathernet IPを残すとライセンスエラーで途中停止 Agilex™ HPS 試行 25
  26. Fixstars Group www.fixstars.com Copyright © Fixstars Group • Agilex™ 評価ボードを用いて、以下の各種試行を実施した。

    ◦ コア性能 ◦ ネットワークI/O性能 ◦ HPS 機能 • コア性能は、98% Utilization, Fmax 848MHz を達成 Hyperflex™アーキテクチャが有効に働いていることが 要因の一つと考えられる Hyperflex™を有効に活用する情報を整理、提供した。 • ネットワーク I/O 性能確認において、安定した10Gbps x 4Lane x 2port の通信が確認出来た。 • HPS Linux起動にチャレンジしたがQSPIコンフィグに失敗 まとめ 26
  27. Fixstars Group www.fixstars.com Copyright © Fixstars Group Copyright © Fixstars

    Group 腕の見せ所が満載な FPGA 開発ボードのすすめ
  28. Fixstars Group www.fixstars.com Copyright © Fixstars Group Who I am

    28 写真 Kenta IDA 井田 健太 ソリューション第一事業部 シニアエンジニア
  29. Fixstars Group www.fixstars.com Copyright © Fixstars Group 自己紹介 • 井田

    健太 • FPGA エンジニア ◦ 主にFPGA開発を担当 ▪ RTL開発からLinuxドライバまで ▪ Vivadoぽちぽちマン ◦ ときどきMCU/組込みLinux案件もやります • 略歴 ◦ 製造装置メーカー ▪ 装置の組込みソフトウェア担当 • RTOSを使ったファームウェア開発 • Windowsソフトウェア開発 ▪ 制御ボード上のFPGAの設計にも手をだす • Cyclone II/III/IVが載っていた ◦ フィックスターズ ▪ FPGA を用いたリアルタイム映像処理システム開発 ▪ Alveoなど比較的大規模なFPGA向けの開発が多い 29
  30. Fixstars Group www.fixstars.com Copyright © Fixstars Group ALINX AXU5EV-P •

    ALINX社のZynq Ultrascale+ XCZU5EV搭載ボード 30
  31. Fixstars Group www.fixstars.com Copyright © Fixstars Group ALINX AXU5EV-P •

    ALINX社のZynq Ultrascale+ XCZU5EV搭載ボード 31 HDMI OUT HDMI IN SFP+ 2 SFP+ 1 PCIe Gen3 x2 MIPI CSI-2 M.2 NVMe GbE (PS) GbE (PL) USB3.0 x4 (ハブ経由) Display Port UART (PS) UART (PL) FMC RS-485 CAN JTAG
  32. Fixstars Group www.fixstars.com Copyright © Fixstars Group ALINX AXU5EV-Pの特徴 •

    ALINX社のZynq Ultrascale+ XCZU5EV搭載ボード • aliexpressで17万円くらい (2022/06/06時点) • 機能 • XCZU5EV-SFVC784-1 • EVなのでMali + H.264/265 CODEC • フルハイト・ちょっと長い目のPCIeカード型 • 200mmなのでハーフよりは長い • 後ろ向きにコネクタあるのでフルくらい必要 • PCIe Gen3 x2 • カードエッジはx4だが2レーンのみ接続 • SFP+スロット x2 • HDMI In, Out • ADV7611/7511経由なのでHDMI IP不要 • MIPI CSI-2 • 2レーン • Raspberry Pi互換 • GbE x2 • RGMIIのPHY経由 • PS, PLに1つづつ • USB-UART • PS, PLに1つづつ • なぜかコネクタはmini-B (ケーブル付属) 32
  33. Fixstars Group www.fixstars.com Copyright © Fixstars Group ALINX AXU5EV-Pの特徴(つづき) •

    機能 (つづき) • ミニディスプレイポート (PS) • M.2コネクタ • NVMe用 • PS側PCIe 1レーンのみ • FMC-HPC • LVDS 36本 • GTは繋がってない • JTAGコネクタ • 2.54ピッチのボックスコネクタ • ピン配置はAltera互換に見える • USB-JTAGアダプタ付属 • ちゃんとVivado付属の Xilinx JTAG向けドライバ設定で 使える • とりあえずSFP+とPCIeついてるの が(筆者的に)うれしい • ネットワークオフロード遊びが出来そう 33
  34. Fixstars Group www.fixstars.com Copyright © Fixstars Group 似たようなボードあるのでは? • XilinxのZCUで始まるボード

    • ZCU102 • 基板サイズ大きい • 価格:$2994 • PCIeカードエッジ無し • XCZUEVじゃないのでH.264エンコーダ・デコーダ無し • ZCU104 • SFP+スロット無し • PCIeカードエッジ無し • ZCU106 • 基板サイズ大きい • 価格:$2994 • Kria KV260 • SFP+スロット無し • PCIeカードエッジ無し • Kria KR260 • PCIeカードエッジ無し • MIPI CSI2カメラつながらない • SFP+なネットワーク遊びには良さそう • PL側にも3個GbEがつながってるのも良い 34
  35. Fixstars Group www.fixstars.com Copyright © Fixstars Group 購入先 • amazon.comのストア

    • https://www.amazon.com/stores/Affortable+FPGA+Board+for+Students+and+Enginee rs/page/9AA2DB81-D645-4CF0-928B-119339325E99 • aliexpressのストア • https://ja.aliexpress.com/store/911112202 35 出典:https://ja.aliexpress.com/store/911112202
  36. Fixstars Group www.fixstars.com Copyright © Fixstars Group 購入~到着 • 6/6にaliexpressで注文

    • 6/9に日本到着・通関手続き完了 • 配送はDHL • 通関手続き後、関税支払い待ちに • 支払いしなければ対面で支払い • DHLのサイトから支払い • 6/10到着 36
  37. Fixstars Group www.fixstars.com Copyright © Fixstars Group 開封 • ロゴ入りの箱があらわれる

    37
  38. Fixstars Group www.fixstars.com Copyright © Fixstars Group 開封 • 箱の中はきっちり緩衝材が入っている

    38
  39. Fixstars Group www.fixstars.com Copyright © Fixstars Group 基板外観 • HDMI

    OUT/IN ADV7511とADV7611が見える 39
  40. Fixstars Group www.fixstars.com Copyright © Fixstars Group 基板外観 • USB

    HUB GL3523T • PS/PL Ethernet PHY • KSZ9031RNX 40
  41. Fixstars Group www.fixstars.com Copyright © Fixstars Group 基板外観 • SFP+スロット2つ

    • PCIe x4カードエッジ • x2のみ接続 • ポリイミドテープで 保護されている 41
  42. Fixstars Group www.fixstars.com Copyright © Fixstars Group 基板外観 • M.2

    Mkey • 1レーン • 2280まで • スペーサー付属 • 付属ネジが変なので要別途購入 • 頭が小さすぎて SSDの基板止められない… 42
  43. Fixstars Group www.fixstars.com Copyright © Fixstars Group 動作確認 43 mini

    DP ディスプレイへ接続 PS USB-UART 開発用PCへ接続 +12V供給 裏にmicroSD USBに キーボード マウス 接続
  44. Fixstars Group www.fixstars.com Copyright © Fixstars Group 動作確認 • Zynq

    Ultrascale+なので単体動作可能 • ファクトリテストのイメージ書き込みmicroSDが刺さった状態で届くので 電源投入したら動く • 12Vの電源を入力 • アダプタ付属するけどPSE的にダメなアダプタなので USB Type-C PDトリガーケーブル 12Vから供給 • Shigezoneで買ったケーブルを使用 • https://www.shigezone.com/product/triggercable/ 44
  45. Fixstars Group www.fixstars.com Copyright © Fixstars Group 動作確認 • 出荷時確認画面が表示される

    • ボードの各種機能を確認しているように見える 45
  46. Fixstars Group www.fixstars.com Copyright © Fixstars Group 動作確認 • 開発PCからUSB-UARTでコンソールにアクセス

    • PetaLinuxが動いている • root:rootでログインできる • sshも動作しているのでPS Ethernet接続すればログイン可能 46
  47. Fixstars Group www.fixstars.com Copyright © Fixstars Group 開発環境 • Vivado動作PCと同じマシンに挿すと、PCIeを試すときの再起動が面倒

    • 別のマシンを用意して接続 • ハーフハイトPCIまでのマシンだったのでしばらく蓋を開けて運用 • そのうち延長ケーブルで何とかしたい… • 余談: • DellのOptiplexだと 50系以上だとIntel AMTが使えるものが 多いので、50系の中古品を調達したが つかえなかった… 無念 • AMT使えるとリモートで 電源ON/OFFができる • PCIe開発には是非欲しい機能 • Optiplex 7050などでは使えるのを 確認しているので、そのあたりを 買うと便利 • このマシンは後でRPiから 電源ボタンを制御する回路接続予定 • オフィスのAlveo U50DD搭載機は RPiで電源ボタン制御できるように なっています 47
  48. Fixstars Group www.fixstars.com Copyright © Fixstars Group サンプルデザイン • ボードにメールアドレスが書かれたカードが付属

    • 適当にボード買ったからリンク送ってとメールをする • メールで販売元とボード型式を送ると、 rarアーカイブのダウンロードリンクが送られてくる • Dropboxと聞いてたけど別のサービス経由 • 23.9[GiB] と結構大きいサイズ • 中にはボードの各機能を動かすVivadoのサンプルデザインと、 ボードの回路図やユーザーマニュアルのPDFが含まれている • 一通り開発には困らない情報が含まれる 48
  49. Fixstars Group www.fixstars.com Copyright © Fixstars Group デザイン作成の目標 • 目標

    • ホストとPCIe Gen3 x2での通信を行えるようにする • SFP+経由での10GbE通信を行えるようにする • 要するに、Alveo U50を廉価に置き換えができる環境を構築したい 49
  50. Fixstars Group www.fixstars.com Copyright © Fixstars Group PCI Expressの動作確認 •

    サンプルデザインになぜかPCIeのデザインが含まれていない • とりあえずXDMAを入れたデザインを作って動作を確認 50 XDMA PCIe リセット PCIe refclk DMAアクセス用BRAM PSからILA用クロック供給 リンクアップ信号観測用ILA
  51. Fixstars Group www.fixstars.com Copyright © Fixstars Group PCI Expressの動作確認 •

    XDMAの設定 - 対象デバイスにGTHが1つだけなので特に迷うことはない 51 Gen3 x2
  52. Fixstars Group www.fixstars.com Copyright © Fixstars Group PCI Expressの動作確認 •

    XDMAの設定 - XDMA IPでのGTの配置制約を無効化 • ボード固有の設定を使うようにする • ピンの制約を追加 52 trueに設定 set_property PACKAGE_PIN AC11 [get_ports perstn] set_property IOSTANDARD LVCMOS33 [get_ports perstn] set_property PACKAGE_PIN Y6 [get_ports {pcie_refclk_clk_p[0]}] set_property PACKAGE_PIN P2 [get_ports {pcie_mgt_rxp[1]}] set_property PACKAGE_PIN T2 [get_ports {pcie_mgt_rxp[0]}]
  53. Fixstars Group www.fixstars.com Copyright © Fixstars Group PCI Expressの動作確認 •

    動作確認 • ホストPCがPCIe Gen3 x2として認識 • DMA転送の動作を確認 53 $ sudo lspci -s 01:00.0 -vvv 01:00.0 Serial controller: Xilinx Corporation Device 9032 (prog-if 01 [16450]) Subsystem: Xilinx Corporation Device 0007 ... Region 0: Memory at f7000000 (64-bit, non-prefetchable) [size=1M] Region 2: Memory at f7100000 (64-bit, non-prefetchable) [size=64K] ... Capabilities: [70] Express (v2) Endpoint, MSI 00 ... LnkCap: Port #0, Speed 8GT/s, Width x2, ASPM not supported ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+ LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk+ ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- LnkSta: Speed 8GT/s (ok), Width x2 (ok) TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
  54. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10G用通信機能の追加 • 基本の通信機能

    (トランシーバの制御)はXilinx IPで行う • 10G/25G High Speed Ethernet Subsystem • 10G用のPCS/PMA (トランシーバ部分) だけは無償で使える • 問題1: 10Gの通信とPCIeの通信に使うGTHが共用 • ダイにはもう1つGTHがあるが 使用しているパッケージでは未配線 • XDMAはPCIeのトランシーバのクロックに QPLL1を使う • Gen3の場合 • Gen2はQPLL1もしくはCPLL • 10Gの通信にもQPLLが必要 • 10.3125[GHz]のクロックが必要 54
  55. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10G用通信機能の追加(つづき) • 問題2:

    ボード上のリファレンスクロックが10GbE用ではない • 10GbEの通信には、QPLLから10.3125[GHz]を作る必要がある • 一般的に156.25[MHz] x 66倍 もしくは 161.1328125[MHz] x 64倍で作る • つまり、リファレンスクロックとしていずれかのクロック入力が必要 • しかし、ボード上に実装されているのは 100[MHz] と 125[MHz] のクロック • Xilinxのリファレンス・ボードのようにプログラマブルではない固定のクロック • おそらく10GbEではなく、 1000BASE-X (GbE) 用の1.25[GHz]を作るためのもの 55
  56. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10G用通信機能の追加(つづき) • 対策

    • リファレンスクロックを貼りかえる • 100[MHz]もしくは125[MHz]から10.3125[GHz]を作る • FPGA内部で生成した156.25[MHz]を使う 56
  57. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10G用通信機能の追加(つづき) • 100[MHz]もしくは125[MHz]から10.3125[GHz]を作る

    • QPLLには Fractional-Nという機能があり、整数比ではないクロックを作ることができる 57 UG576 p.51 https://docs.xilinx.com/v/u/en-US/ug576-ultrascale-gth-transceivers
  58. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10G用通信機能の追加(つづき) • GT

    Wizardにて使いたいリファレンス周波数をいれてCalcを押すと計算してくれる 58
  59. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10G用通信機能の追加(つづき) • FPGA内部で生成した156.25[MHz]を使う

    • GTのリファレンスクロックは、 専用のクロック入力から入力した クロックを使うことが推奨される • GT用のクロック入力とそれ以外の入力では 電源が異なる • GT用:VCCINT • それ以外:VCCAUX • ノイズが載りやすい電源とは 別にすることにより、 ジッタの発生を抑えている • 内部テスト用にMMCMなどから クロックを入力することが可能 • GTGREFCLKxにMMCMから入力 • QPLLxREFCLKSELを3’b111に設定 59
  60. Fixstars Group www.fixstars.com Copyright © Fixstars Group 通信できるかどうかの確認 • リファレンスクロックが125[MHz]となっているので、

    SFPは10[Gbps]通らない設計なのでは? • サンプルデザインに12.5[Gbps] のIBERTデザインがあるので動作確認 • 10GbE用のDACでSFP1<->SFP2を接続 • SFP1->SFP2で測定 → 問題なさそう 60
  61. Fixstars Group www.fixstars.com Copyright © Fixstars Group 通信できるかどうかの確認 • 10GbE用の光モジュールとループバック用ファイバを使って測定

    • DACより減衰しているようだが、リンクは出来ている。 61
  62. Fixstars Group www.fixstars.com Copyright © Fixstars Group 通信できるかどうかの確認 • 1000BASE-X

    (1.25[Gbps]) では動くか? • →デザインを作成して10GbEのスイッチと光モジュール+ファイバで接続 • リンクすることを確認 • IBERTも問題なさそう 62
  63. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10GbEチャレンジ! • ハードウェア的には問題なさそうなので、10GbEのデザインを作成

    63
  64. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10GbEチャレンジ! • ハードウェア的には問題なさそうなので、10GbEのデザインを作成

    64 10G周り XDMA GT COMMON
  65. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10GbEチャレンジ! • ハードウェア的には問題なさそうなので、10GbEのデザインを作成

    65 10G周り GT COMMON
  66. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10GbEチャレンジ! • ハードウェア的には問題なさそうなので、10GbEのデザインを作成

    66 10G周り GT COMMON 10G PCS/PMA In System IBERT 10G MAC
  67. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10GbEチャレンジ! • 配線が大変なことになっている

    • 通常はXDMAがGT COMMONを内蔵しているが、設定のため外部に置いている • IPIでやると配線大変ですね… 67 XDMA GT COMMON
  68. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10GbEチャレンジ! • 配線が大変なことになっている

    • In System IBERTの接続が結構大変 • DRPポートとデバッグ線の接続 • 補助用RTLモジュールを作って なんとか配線 68 IBERT 配線 補助 RTL PCS /PMA
  69. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10GbEチャレンジ! • リファレンスクロックはMMCMで156.25[MHz]を生成

    69 156.25[MHz] QPLLREFCLKSEL[2:0] = 3’b111
  70. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10GbEチャレンジ!! • 合成できたので10GbEスイッチに接続!

    …リンクせず。。。 • IBERTを確認 • In System IBERTを入れてあるので同じデザインで確認できる • 光ファイバでのループバックで確認 • 結果 • 全く開いていない… どうして。。。 70
  71. Fixstars Group www.fixstars.com Copyright © Fixstars Group 10GbEチャレンジ!! • 同じデザインで10GbEのDACをSFP1<->SFP2に接続

    • SFP2->SFP1のリンクを測定 • ちゃんと通信できそう… 71
  72. Fixstars Group www.fixstars.com Copyright © Fixstars Group まとめ • 10GbEを動かすにはもう少し調整が必要そう

    • 12.5[Gbps] は動いてるので伝送路的には問題ないはず • ただし、リファレンスクロックの問題は要検討 • トランシーバのアナログ周りの設定 (スイングや増幅器の設定など) を調査 • IBERTは便利 • この周波数帯を観測できる機材はさすがに手がでない… • 現状AXU5EV-Pですぐに動かせるのは 1000BASE-X + PCIe Gen3x2 まで • 10GbEで通信して何かしらPL側で処理をしてホストに流すシステムを作るには 10GbEの問題の解決が必要 • AXU5EV-P • 比較的安価に手に入るボードとしてインターフェースも豊富 • 10GbEさえ動けば、ボードに期待する機能が一通り動きそうなので 引き続き調査を行う 72
  73. Fixstars Group www.fixstars.com Copyright © Fixstars Group Thank You お問い合わせ窓口

    : event@fixstars.com