AI および DSP ワークロード向けの構成可能なハードウェア IP が FPGA、テンソル ユニット、ソフトウェアを融合する Flex Logix

ニュース

ホームページホームページ / ニュース / AI および DSP ワークロード向けの構成可能なハードウェア IP が FPGA、テンソル ユニット、ソフトウェアを融合する Flex Logix

Nov 11, 2023

AI および DSP ワークロード向けの構成可能なハードウェア IP が FPGA、テンソル ユニット、ソフトウェアを融合する Flex Logix

Oggi parleremo di AI, DSP, FPGA, IP e SoC.Di solito lo sono

今日は、AI、DSP、FPGA、IP、SoC について説明します。 通常、これらのことはすべて一致しません。 確かに、AI および DSP アルゴリズムの実装には FPGA が使用されてきましたが、AI および DSP アルゴリズムには通常、さまざまな種類の計算が含まれます。 (「シングルチップ DSP の簡単な歴史、パート II」を参照してください。) AI トレーニングが GPU に移行している一方で、DSP 設計は、提供される乗算器/アキュムレータ (MAC) の恩恵により、主に FPGA 実装に留まっています。 最近では、AI 推論は、強化された CPU、専用チップ、SoC 用の専用 AI エンジン、さらには FPGA などの複数のハードウェア実装に移行しています。 今回、Flex Logix はさらに別の代替手段を導入しました。それは、AI および DSP ワークロードを実行するように特別に設計された構成可能なハードウェア IP です。

2014 年に設立された Flex Logix は、構成可能なハードウェア IP の新参者ではありません。 同社は、10 年近くにわたって EFLEX 組み込み FPGA (eFPGA) IP タイルとソフトウェアを提供してきました。 Flex Logix の共同創設者兼 CEO である Geoff Tail 氏によると、同社は現在、防衛関連の顧客を数社と、EFLEX eFPGA を組み込んだ 23 種類のチップを量産している 6 社以上の商業顧客を抱えているとのことです。 このようなデバイスの例は、100K-LUT (ルックアップ テーブル) eFPGA と MIMO アンテナ インターフェイス用の複数の送受信デジタル フロント エンドを統合する匿名顧客のハイエンド 5G MIMO SoC から、小型で安価な新しいラインまで多岐にわたります。 1K ~ 4K LUT を備えた Renesas ForgeFPGA は、体積コストが 50 セント未満です。

図 1: 小型で安価な Renesas ForgeFPGA は Flex Logix FPGA IP に基づいており、開発ツールは Flex Logix によって提供されるツールに基づいています。 画像クレジット: Flex Logix

Renesas ForgeFPGA は、私の友人で同僚の Max Maxfield が以前に書いた Silego デバイスにその系譜をたどります。 (「あまり起こらなかったのか、それともできたのか?」および​​「ルネサスが素晴らしい ForgeFPGA ファミリを発表」を参照。) Dialog Semiconductor は 2017 年に Silego を買収し、2021 年にルネサスに買収されました。これにより、ルネサスは FPGA ベンダーになりました。 小さな魚は大きな魚に食べられ、その魚はさらに大きな魚に食べられます。

Renesas FPGA は、ForceFlex デバイスを構成するための Flex Logix FPGA ソフトウェアのバージョンを開発者に直接提供します。これは、Flex Logix が使用可能なソフトウェアをシステム開発者に直接提供できることを示しています。 これは、ハードウェア開発の経験がないデータ サイエンティストやプログラマーが製品を簡単に使用できるようにしたい AI 市場に参入する場合に重要な機能です。

多くの点で、これらの新しい Flex Logix InferX ハードウェア タイルは、その系譜を同社の eFPGA タイルに遡ります。 InferX IP タイルは強化された IP であり、特定のファウンドリの特定の IC 製造ノードの顧客に Flex Logix によって提供されます。 このように、InferX IP は同社の EFLEX FPGA IP とまったく同じです。 InferX IPの場合、Flex Logixは当初TSMCのN5 5nmプロセスノードをターゲットにしているが、同社はあらゆるFinFETプロセスがこのIPの候補になると述べている。

さらに、AI および DSP アルゴリズムは、多数の乗算/累算演算を実行します。 Flex Logix eFPGA タイルを含む FPGA は、通常、これらの演算をすべてリアルタイムで実行するために非常に多くの乗算器/累算器を提供しますが、これらの MAC は、祖母が作った金曜日の夜のおいしいライス プディングのレシピに含まれるレーズンのように FPGA ファブリックに埋め込まれています。それらは比較的少数であり、その間にありました。 FPGA では、強化された MAC が FPGA の相互接続ファブリックで囲まれており、あらゆる種類の実行パイプラインを作成できます。 ただし、AI および DSP アルゴリズムにはそのような柔軟性は必要ありません。計算パイプラインははるかに規則的であるため、FPGA の配線構造のシリコン オーバーヘッドは不要であり、削除できます。 テイト氏によると、そのシリコンのオーバーヘッドは重大で、MAC 内およびその周囲の領域のシリコンの 80% に達する可能性があります。

代わりに、Flex Logix は MAC 設計を採用し、AI および DSP 操作用に強化し、SoC が設計されるのと同じ方法で、多数の MAC を強化された相互接続で相互接続するハードワイヤード テンソル ユニットを作成しました。 結果として得られる InferX ハードウェア IP タイルは、以下の図 2 に示すように、これらの 4 つのテンソル ユニットを個別の L2 SRAM キャッシュと、テンソル ユニットの構成と相互接続に使用される小型の eFPGA と組み合わせます。

図 2: Flex Logix InferX ハードウェア IP タイルは、これらの 4 つのテンソル ユニットと、テンソル ユニットの構成と相互接続に使用される小型の eFPGA を組み合わせています。 画像クレジット: Flex Logix

Flex Logix によると、これらの InferX タイルの計算能力はほぼ直線的に拡張できるため、SoC 開発チームはシステム処理要件を満たすために 1 つのタイル、4 つのタイル、8 つのタイル、場合によってはそれ以上のタイルを組み込むことができます。 以下の図 3 は、いくつかの一般的に使用される AI モデルの 1、2、4、および 8 タイル InferX インスタンス化のパフォーマンス機能を示しています。

図 3: SoC 開発者は、アプリケーションに必要なパフォーマンス レベルを達成するために、複数の InferX タイルをインスタンス化できます。 (注: IPS = 1 秒あたりの推論数。) 画像クレジット: Flex Logix

図 3 に示すように、単一の InferX タイルで、画像解像度が異なる複数の AI 画像認識モデルを実装できます。 2 タイルの InferX インスタンス化では、1 タイルの実装と比較してパフォーマンスが約 2 倍になり、4 タイルと 8 タイルのインスタンス化ではさらにパフォーマンスが向上します。 図 3 からわかるように、パフォーマンスの向上は線形である場合もあれば、超線形である場合もあります。 そして時々それは線形以下です。 InterX タイルの数を増やすことによって得られるパフォーマンスは、メモリ容量 (1 つまたは 2 つの LPDDR5 SDRAM)、I/O 飽和、およびその他のシステム レベルのボトルネックによって異なります。

もちろん、必要なサブシステムのパフォーマンスは最終アプリケーションによって異なります。 時速 200 マイルで走行するレース カーには、時速数マイルで走行する配送ロボットよりも、1 秒あたりの推論 (IPS) の点ではるかに厳しい画像処理パフォーマンス要件があります。 図 3 に示されているパフォーマンス仕様は、他のベンダーが実際の AI パフォーマンスの代用として使用している TOPS (1 秒あたりの操作数) の数値ではなく、1 秒あたりに処理される画像 (IPS) に関するものであることに注意してください。 これは、InferX タイルが組み込み機器のリアルタイム タスク専用に設計および構成されているため、それに応じてスケーリングおよびプログラム/構成が行われるためです。 テイト氏は、もし見込み顧客が TOPS について尋ね始めたら、その営業担当者はおそらく間違った見込み客と話しているのだと言います。 テイト氏によると、InferX タイルの候補となる SoC にとって重要なのは、特定の AI モデルのパフォーマンスです。

Flex Logix が InferX 顧客に提供するソフトウェアは、FPGA 構成やテンソル エンジン プログラミングを開発者に直接公開しません。 代わりに、開発者は、Caffe、TensorFlow、PyTorch、mxnet などの機械学習フレームワーク内でトレーニングされた AI モデルから開始します。 これらのトレーニング済み AI モデルはすべて、推論には必要ない浮動小数点演算を使用しているため、InferX タイルで使用するために AI モデルを変換する最初のステップは、浮動小数点値を 8 ビット整数に変換するモデル量子化器です。 。 その後、グラフ コンパイラとオペレータ コンパイラがモデルを InferX アーキテクチャにマッピングし、同社が「Softlogic」と呼ぶ InferX ランタイム構成と、API 呼び出しを備えたドライバ ソフトウェアを生成します。 InferX ハードウェア IP は構成可能なため、マイクロプロセッサのソフトウェア オーバーレイを使用するのと同様の方法で、AI モデルをマイクロ秒単位で新しいモデルに交換できます。 同社では、InferX タイルと AI ソフトウェアを総称して「InferX AI」と呼んでいます。

今のところ、AI アプリケーションが報道や誇大宣伝の大部分を占める可能性がありますが、Flex Logix は、現時点での InferX タイルの主な用途は DSP アルゴリズムであり、これも多くの MAC を実行する必要があることを発見しました。 そこで同社は、便宜的に「InferX DSP」と呼ばれる、InferX タイルと DSP ソフトウェアの同様のパッケージを作成しました。 テイト氏によると、InferX DSP の主な市場は、ザイリンクス デバイス、具体的には Arm CPU とザイリンクス FPGA ファブリックを組み合わせたザイリンクス Versal FPGA および Zynq SoC および MPSoC の置き換えです。 企業がすでにこれらの既製のザイリンクス デバイスを置き換える SoC の設計に労力と費用を費やしている場合、MAC を実行するために 1 つ以上の InferX タイルを SoC に組み込むことでコストを削減できる可能性があります。

Flex Logix は、FFT、FIR フィルター、複素行列逆行列などの一般的な DSP アルゴリズムを実装する高レベルのソフトウェアを提供します。 InferX AI と InferX DSP の両方で、結果として得られる IP ブロックは、AXI インターフェイスを介して接続されたスレーブ アクセラレータとして実行されます。 DSP の性質により、Flex Logix は InferX タイルにデュアルポートのストリーミング インターフェイスを提供することもできます。 ほとんどの DSP 顧客は、設計に必要なアルゴリズムをすでに知っているため、現在、InferX DSP を使用する設計では、全体的な SoC 設計サイクルが InferX AI に比べてはるかに短くなっているとテイト氏は述べています。