AlveoとCorundumで100GbE NIC作成

NICのオープンソースプロジェクトCorundumを使用してAlveo U200とU50をNIC化し、Alveo間で通信ができたのでその備忘録です。 この記事のゴール 以下の画像のようにAlveo U200とAlveo U50をNIC化したもの使って通信する。 環境 基本的に前に投稿した記事Alveo U200とU50のセットアップのセットアップ環境を用いた。ただし、Vivadoは別マシンにインストールしているものを使ったためバージョンがズレている(2021.1でなく2022.1)。 Corundum: 記事執筆時点での最新コミット(c708bc4) AlveoホストマシンOS: Ubuntu 20.04 Vivado: 2022.1 FPGA: Alveo U200/U50 DACケーブル: 1m (3ft) Cisco QSFP-100G-CU1M互換 100G QSFP28パッシブダイレクトアタッチ銅製Twinaxケーブル(DAC) NIC化の手順 (U200で説明) Corundumでは、10G/25G/100GのEthernetに対応している。今回は、U200とU50を100GbEへNIC化した。以下はCorundumのドキュメントのGetting Startedを参考に進めていったときの手順である。また、以下の説明では、U200を対象とするが、同様の手順でU50もNIC化できる。 1. UltraScale+ Integrated 100G Ethernet Subsystemのライセンス取得 まず、XilinxのUltraScale+ Integrated 100G Ethernet Subsystemから100G Ethernet Subsystemのライセンスを取得する(無償)。また、ライセンスファイルが取得できたら、Vivadoのライセンスマネージャで読み込む。 読み込むと以下の画像のようにcmac_usplusという名前で追加された。 2. Corundumのダウンロード GitHubからCloneする $ git clone https://github....

February 21, 2023 · Eisuke Okazaki

Alveo U200とU50のセットアップ

2022年最終日!今年はARMプロセッサと一体のFPGAボード(SoC FPGA)を中心に使っていたが、卒業論文や学会発表が終わり次第、Alveoカードを中心に使うことになりそうなので開発環境をセットアップした。そのときのメモを残しておく。基本的にUG1301やUG1370を参考にセットアップした。 セットアップ環境 Xilinx Alveoはデータセンター向けのFPGAで、PCI Express経由でホストマシン(x86)と通信することができる。今回はAlveoのU200とU50のセットアップをした。U200もU50も同じような手順でセットアップすることができる。セットアップアップするホストマシンの環境は以下の通りである。 ホストマシン #1 CPU: 12th Gen Intel(R) Core(TM) i5-12400 OS: 20.04.5 LTS (Focal Fossa) Vitis 2021.1 PCI Expressスロット ← Alveo U200を装着 ホストマシン #2 CPU: 12th Gen Intel(R) Core(TM) i5-12400 OS: 20.04.5 LTS (Focal Fossa) Vitis 2021.1 PCI Expressスロット ← Alveo U50を装着 Vitisのインストール Vitis 2021....

December 31, 2022 · Eisuke Okazaki