この章では、Arm Cortex-M55にオプションとして提供されているAIアクセラレーター機能のMVEを解説します。
Arm Cortex-M55はArmv8.1-Mアーキテクチャです。従来のArmv8-Mに、信号処理や機械学習アプリケーション向けMVEなどの新機能が追加されています。Arm Cortex-Mプロセッサ向けのMVEは、「Arm Heliumテクノロジー」*2)と呼ばれています。どちらかと言うと、MVE よりもHeliumの名前の方が、世に出回っているので、読者の中には、すでにご存じの方がいるかもしれません。
*2):https://www.arm.com/ja/technologies/helium
Heliumは、新しいベクトル命令セット拡張です。特に次のような処理を高速化することを目的にしています。
従来のArm Cortex-Mプロセッサに比べて、信号処理で最大約5倍、機械学習で最大約15倍の性能向上が見込まれます。
Heliumは、オプション機能なので、マイコンメーカーがマイコンを製品化する際に機能を選択します。例えばSTM32N6シリーズでは図3に示すように、Heliumを選択しています。
少し難しくなりますが、Heliumの特徴を挙げると次のようになります。
プログラミングする際は、C言語で普通にコードを書いて、コンパイラに任せるのが一番簡単な使い方です。GCCやArm Compilerなどでは、Helium対応コンパイラがMVE用バックエンドを持っているため(使用前に確認が必要)、ループベースのDSP/MLコードを自動でベクター化してくれます。
AI時代でもマイコンが必要とされる理由
C言語コード生成ツールが普及する理由
I3Cって何? 特長と使い方を基礎から解説
マイコンの割り込み優先度、変更する理由とその仕組み
マイコンの外部クロックと内部クロックの違い 種類や役割を一気に解説
マイコンのクロックセキュリティシステムって何?Copyright © ITmedia, Inc. All Rights Reserved.
記事ランキング