【FPGAを用いた組み込み開発者必見】AMD社Versal™ 適応型SoCとは?
皆さん、こんにちは。
FPGAを用いた組み込み開発を行う方々にとって注目の製品であるAMD社の適応型SoC(System on Chip)であるVersal™ 適応型SoCについてご存じでしょうか。
本ブログでは、Versal™ 適応型SoCの概要とVersal™ 適応型SoC最大の特徴であるAIエンジンについて詳しくお話ししていきます。それでは始めましょう。
目次
- 1. Versal™ 適応型SoCの概要について
- 1-1. Versal™ 適応型SoCとは?
- 1-2. ユニークなコンセプト
- 1-3. AIエンジンの種類
- 2. AIエンジンの概要について
- 2-1. AIエンジンのアーキテクチャ
- 2-2. ベンチマーク結果によるAIエンジンの性能評価
- 2-2-1. Yoloを使用した際のベンチマーク結果
- 2-2-2. 画像処理を実行した場合の結果
- 2-2-3. 超音波の画像処理の実測値
- 3. 評価ボードVCK190について
- 4. おわりに
1. Versal™ 適応型SoCの概要について
1-1. Versal™ 適応型SoCとは?
Versal™ 適応型SoC(Versal Adaptive Compute Acceleration Platform、以下Versal)は、AMD社が提供する新しい適応型SoCファミリのひとつです。
一番の特徴は、従来のFPGAやSoCにはなかったAIエンジンが新たに追加されていることです。
AIエンジンはGPUライクな性能を持つエンジンであるため、VersalはCPU・FPGA・GPUの要素を兼ね備えたデバイスと言えます。そのため、ヘテロジニアス(異種混在)なアクセラレーションを可能にしています。
1-2. ユニークなコンセプト
Versalという名前は、Versatile(多用途・多目的)とUniversal(一般的な・部分的な・万能)という2つの言葉を組み合わせてできた造語で、多用途かつ万能な性質を持つというコンセプトを表しています。
1-3. AIエンジンの種類
AMD社が提供するVersalは、6つのシリーズで展開されています。
6つの中でも、AI RFシリーズ、AI Coreシリーズ、AI Edgeシリーズ、PremiumシリーズがAIエンジンを搭載しています。これらAIエンジンが搭載されたシリーズを活用することで、GPUよりも高い性能を実現できるとされています。
※2023年10月時点の情報です
図2. Versal 適応型SoCラインナップ
例えば、図3のように同じ消費電力、同じフォームファクターで比較した際にAIエンジンを搭載しているVersal AI Core シリーズでは、1.5倍の性能を実現できています。
図3. 同ファクター、同消費電力におけるパフォーマンスの比較
では次に、AIエンジンのアーキテクチャについて見ていきましょう。
2. AIエンジンの概要について
2-1. AIエンジンのアーキテクチャ
AIエンジンはメッシュ構造を採用しており、コアとメモリが1つになっています。これにより、水平方向や垂直方向、またはストリーム通信を使用して、他のタイルと柔軟なデータ接続が可能となっています。このメッシュ構造によって、最大1.3GHzの高性能で効率的な計算を行うことができます。
また、AIエンジンのアーキテクチャは従来のアーキテクチャとは異なり、キャッシュメモリのボトルネックを回避しています。従来のアーキテクチャでは、複数のコアとキャッシュメモリが外部メモリと接続される構成でしたが、AIエンジンでは直接メモリ同士の連携ができるため、データのアクセスや演算をスムーズに行えます。
図4. AIエンジンのアーキテクチャ
2-2. ベンチマーク結果によるAIエンジンの性能評価
ではここからは、AIエンジンの性能評価結果について見ていきます。
3種類ご紹介させていただきます。
2-2-1. Yoloを使用した際のベンチマーク結果
図5は、Versal評価ボードであるVCK190(Versal AIコアシリーズ VCK190評価キット)、Kria™モジュールの評価キットであるKV260(Kria™ KV260ビジョンAIスターター キット)において、Yoloを使用した際のベンチマーク結果が示されています。
数値よりKria™に対して3~4倍 最大で10倍程度の性能を実現することができ、VersalはGPUを凌駕する高性能を誇り、30fpsのカメラを複数接続しても、1つのデバイスでリアルタイムにAI推論ができると読みかえることができます。
図5. AIエンジンの性能評価
2-2-2. 画像処理を実行した場合の結果
またAIエンジンという名称ではありますが、一般的な画像処理を実行することも可能です。
表1は、オープンCVを使用した場合の画像処理のベンチマーク結果です。入力画像サイズがFull HD、4Kの場合のベンチマーク結果になります。
表1. AIエンジンにおける画像処理パフォーマンス
参考: xfcvDataMovers
2-2-3. 超音波の画像処理の実測値
図6は、医療機器での画像処理をVersal、GPU、CPUで実行した際の結果となります。
高解像度のデータをリアルタイムに処理しなければならないというケースでは、AIに限らず、画像処理においてもGPUよりも圧倒的な性能を発揮します。
図6. AIエンジンにおける画像処理のユースケース
3. 評価ボードVCK190について
AMD社の評価キットには、多くの場合リファレンスデザインが用意されています。評価キットの基本的な性能や各インタフェースの挙動を確認することができます。
Versalの評価ボードとしてVCK190(Versal AIコアシリーズ VCK190評価キット)が用意されており、VCK190にもTargeted Reference Design(略:TRD)が用意されていますので、こちらを使用してVCK190の動作ご確認ください。
TRDのダウンロードはこちらから(※ダウンロードにはAMDアカウントが必要です。)
https://japan.xilinx.com/member/forms/download/design-license-xef.html?filename=rdf0610-vck190_base_trd_platform1_2020.2_v0.5.zip
VCK190に関する詳細は以下よりご確認ください。
https://www.paltek.co.jp/fpga_search/versal-aicore/item_21
<搭載デバイス>
Versal AI Core:VC1902
AI Engine | 400 |
---|---|
AI Engine Data Memory | 100Mb |
LUT | 899k |
BRAM | 34Mb |
URAM | 130Mb |
<ボード仕様>
- 2x FMC+
- PCIe Gen4 x8
- 8GB DDR4 DIMM
- 8GB LPDDR4 8GB(4x 16Gb)
- 3x Ethernet、2x SFP28、1x QSFP28
4. おわりに
本ブログでは、適応型SoCであるVersalについて紹介させていただきました。AIエンジンは、AI推論だけでなく画像処理であってもGPUよりも圧倒的な性能を実現します。
本ブログで紹介した評価ボードVCK190については、サンプルデザインもございますので、お気軽にお問い合わせください。
最後までご覧いただきありがとうございました。