FPGAベンダー大手の米Alteraは、2014年頃に出荷予定の同社のハイエンドFPGA「Stratix 10 SoC」に、英ARMの64ビットCPUコア「Cortex-A53」を採用すると発表した。CPUコアを搭載する同社の「SoC FPGA」シリーズとして初めて64ビットプロセッサを採用した。

 用途としては、データセンターのサーバーにおける検索処理やデータマイニングのアクセラレーション、ネットワーク機器におけるビットレベルでのパケット処理などに向ける。CPUでのソフト処理からFPGAでの論理処理に置き換えることで計算能力を高めるほか、データセンターの電力効率も向上できる。

 Stratix 10 SoCは、クアッドコアのCortex-A53、浮動小数点演算向けのDSPコア、ユーザーロジックを搭載するFPGA部から成る。いずれの用途でもサーバーやネットワーク機器本体にホストとなるIAなどのプロセッサを用意することになるが、Stratix 10 SoC上のARMコアは、Open CLカーネルのフロー制御やネットワーク機器のラインカードの管理などを担う。

 Stratix 10 SoCのようにFPGAやDSP、CPUといった異なる種類の演算資源が混在した環境は「ヘテロジニアス・コンピューティング」と呼ばれている。Alteraは、ヘテロジニアス・コンピューティングのためのプログラミングモデルとして米Khronos Groupの「OpenCL」を推進している。OpenCLは、米NVIDIAのGPGPU向けプログラミングモデル「CUDA」をベースにして、DSPやFPGAも扱えるように拡張したものである。

 現状では、FPGAのユーザーロジック部の設計は、「Verilog」や「VHDL」などのハードウエア記述言語(HDL)を用いて、「RTL(register transfer level)」という抽象度で設計することが多い。これに対し、OpenCLはC言語ベースのプログラミングモデルであり、ソフトウエア技術者が馴染みやすい。

 Alteraとしては、今後、OpenCLの利用が増えると見込んでいる。OpenCLで記述したソフトウエアを、FPGA向けのコンフィギュレーションデータに変換できるツール「SDK for OpenCL」を提供している。

 Stratix 10 SoCは、米Intelの14nm世代のトライゲート・プロセスで製造する。FPGA部は1GHz以上のクロックで動作する。