View on GitHub

memo

AWS FPGA Hardware Development Kit (HDK)の使い方

FPGAの構成

AWS EC2 F1インスタンスのFPGA部分は、大きく以下の2つの部分に分かれています。

開発の最終段階で、ShellとCLが結合されてAmazon FPGA Image(AFI)が作成されます。AFIはF1インスタンスにロードされます。

アプリケーション・ソフトウェアとShell(SH)とCustom Logic(CL)の関係

アプリケーション・ソフトウェアとSHとCLの関係は以下のようになります。

FPGA利用時のソフトウェア構成

上図のようにソフトウェアは、SHを経由してCLの機能を利用します。SHには以下の2つのPF(Physical Function)があり、このPFをソフトウェアが利用します:

MgmtPFを利用するには、Aのshellコマンドや、Bのライブラリ、CのOpenCLのライブラリを使います。 AppPFを利用するには、CのOpenCLのライブラリや、DやEやFのライブラリを使います。

次に、SHとCLは以下のように接続されています。

SHとCL

F1インスタンスとFPGAのSHはPCIeインタフェース(I/F)で接続されています。SHとCL間は、主にAXI-4 I/Fで接続されています(つまりSHはPCIeとAXIの変換を行っています)。

左から順に接続を説明していきます。