TinyML プラットフォーム

AI 演算性能を最大化

   

RISC-V プロセッサの Sapphire SoC スイート上の
AIモデルの高速化

Efinixは、Efinix TinyMLアクセラレータを搭載したRISC-V プロセッサの Sapphire SoC スイート上で実行されるオープンソースのTensorFlow Lite for Microcontrollers(TFLite Micro)C++ ライブラリに基づくTinyMLプラットフォームを提供します。

Open Source

Open Source

Field Configurable

Field Reconfigurable

Icon-AI Framework

Free AI Framework

Performance

High Performance and Low Power

人工知能(AI)をネットワークエッジに近づけ、低レイテンシでコンテキストを増やしながらデータを処理できるようにする動きがあります。しかし、エッジでは電力と計算リソースが貴重であり、計算リソースを大幅に消費するAIアルゴリズムでは。必要なパフォーマンスを実現することが困難です。オープンソースコミュニティは、標準のTensorFlowモデルの量子化バージョンを作成し、関数のライブラリを使用して、それらを終端のマイクロコントローラで実行できるようにするTensorFlow Liteを開発しました。Efinix TinyMLプラットフォームは、これらのTensorFlow Liteモデルを取得し、Sapphireコアのカスタム命令機能を使用して、FPGAハードウェアでそれらを高速化し、低消費電力と小さなフットプリントを維持しながらパフォーマンスを大幅に向上させます。

Efinix TinyMLプラットフォームの利点

  • 構成可能なSapphire SoC スイート、Efinix TinyMLアクセラレータ、オプションのユーザー定義アクセラレータ、ハードウェアアクセラレータソケットを備えた柔軟なAIソリューションで、さまざまなアプリケーションのニーズに対応します。
  • オープンソース コミュニティによって管理されている TFLite Micro ライブラリでサポートされているすべての AI推論をサポートします。
  • パフォーマンスと設計効率の比率が異なる複数のアクセラレーション オプションにより、AI推論デプロイメントを迅速にします。

Efinix TinyML Flow

TensorFlow, the TensorFlow logo and any related marks are trademarks of Google Inc.

Efinix TinyML Flow

アクセラレーション戦略

Efinixは、さまざまなアクセラレーション戦略を備えた、柔軟でスケーラブルなRISC-VベースのTinyMLプラットフォームを提供します。

  • Efinixのユーザーが構成可能なSapphire SoC スイートで実行されるオープンソースのTFLite Micro C++ライブラリを使用。
  • 一般的に使用されるAI推論レイヤー/操作を加速するためのEfinix TinyMLアクセラレータ。
  • アプリケーションのニーズに応じて決定される、その他の計算集約型レイヤー/操作を加速するためのオプションのユーザー定義アクセラレータ。
  • データ転送とCPU制御用のダイレクトメモリアクセス(DMA)コントローラと、AI推論の前後の前処理/後処理に使用できるSoCスレーブインターフェイスに接続された定義済みのハードウェアアクセラレータソケット。

Efinixは、Efinix FPGAへのTinyMLアプリケーションの導入を容易にするエンドツーエンドの設計フローを提供します。設計フローには、AIモデルの学習、学習後の量子化から、カスタムTinyMLアクセラレータを使用したRISC-Vでの推論の実行まで、フローのあらゆる側面が含まれます。さらに、非常に柔軟性の高いドメイン固定のフレームワークであるEfinixにTinyMLを導入する手順も示しています。

Efinix TinyML Platform

Efinix TinyMLプラットフォームをさらに詳しく調べるには:

  • 学習と量子化
    • モデルの学習と学習後の量子化フローにご興味のあるユーザーはModelZooディレクトリのEfinix Model Zooを参照してください
    • 学習と量子化のフローをスキップしたいユーザーは、FPGAでのスタティック入力AI推論用のTinyML Hello World設計を試してください事前に学習済みで量子化されたモデルは、TinyML Hello Worldサンプル設計に含まれています
  • FPGAでのAI推論
    • tools/tinyml_generator ディレクトリにある GUIベースの Efinix TinyMLジェネレーターは、モデル データファイルを生成し、さまざまなアクセラレータ モードと並列処理レベルで Efinix TinyML アクセラレータをカスタマイズするために提供されています。ユーザーは、Efinix TinyMLプラットフォームによって提供されるサンプル デザインの初期調査のためにこの手順をスキップできます。
    • TinyML Hello World デザインは、Efinix TinyMLアクセラレータを使用して、TFLite Microライブラリに基づきFPGAで AI推論を実行するために提供されています。
    • スタティック入力によるAI推論は、ゴールデンリファレンスモデルに対するモデル検証を容易にするために不可欠です。さらにプロファイリングを実行して、アクセラレーションのための計算集約型操作/レイヤーを特定できます。
    • 開始するには、TinyML Hello Worldを参照してください
  • FPGA上のTinyMLソリューション
    • 柔軟なドメイン固有のフレームワークは、TinyMLソリューションをFPGAに迅速に導入するために不可欠
    • TinyMLビジョンソリューションの導入にEfinixドメイン固有のフレームワークを活用するには、Edge Vision TinyML Frameworkフレームワークを参照してください
Efinix TinyML Generator
Efinix TinyML Generator

エッジで複数の AI モデルを同時実行

Efinix TinyML プラットフォームは、複数の AI モデルを並列に実行できる次世代エッジ AI ソリューションです。異なるニューラルネットワークを別々の CPU コアで同時に実行可能にします。例えば 1 つのコアで人物検出を実行しながら、別のコアで顔ランドマーク検出をリアルタイムで実行できます。

優位点

マルチモデル構成例

Efinix TinyML プラットフォームでは、「Hello World」 および各種デモアプリケーション向けに、すぐに試せるマルチモデル AI 検出のサンプルを提供しています。

この例では最大 4 つの AI モデルを同時に実行できるこのデザインは、独自モデル展開時のフレームワークを提供します。高性能な Sapphire SoC のマルチコア性能を活用しつつ、ソフトコア版 Sapphire SoC への移植も容易に行えます。

以下のブロック図は、TI375C529 開発キット向けのデモアプリケーションを対象とした設計例を示しています。この設計の詳細については、GitHub を参照してください。

TinyML Multicore Reference Design Block Diagram

ユースケース

Smart Home
スマートホーム

AI 搭載スマートウェイクアップによる最大電力節約

Smart Industry
予知保全

リアルタイム振動監視システムによるスマートなメンテナンス

Robotic Systems
ロボティクス

センサーフュージョンと異常検知により、より安全で高度な自律ロボットを実現

Face Anonymization
顔匿名化

人物の顔を自動的にぼかし、プライバシー保護に配慮した AI ソリューションを提供

オープンソースコード

Github から TinyML プラットフォームのオープンソースコード、サンプル設計、サポート資料をダウンロード。