Vitis ソフトウェア プラットフォーム開発環境

AMD Vitis™ ソフトウェア プラットフォームは、FPGA ファブリック、Arm® プロセッサ、および AI エンジンを対象とした設計のための開発環境です。AMD Vivado™ Design Suite と連携して動作し、より高い抽象度の開発環境を提供します。

Vitis ソフトウェアには、Arm プロセッサ上で C/C++ アプリケーションを開発するための Vitis Embedded、AI エンジン向けのコンパイラおよびシミュレータ、C/C++ ベースで FPGA IP を開発するための Vitis HLS、Simulink® 上でモデルベース設計を行うための Vitis Model Composer が含まれています。さらに、FPGA または AI エンジンでの実装向けに最適化された DSP、Vision、Solver、Ultrasound、BLAS などの高性能ライブラリも提供されています。

設計およびシミュレーション フロー

Adam Taylor 氏による発表内容: Vitis 統合プラットフォームを使用したステップバイステップのシステム設計

Vitis 統合ヘテロジニアス システム フローを使用したエンベデッド システム ソリューションの作成方法を説明します。

Vitis エンベデッド ソフトウェア開発フロー

(従来の FPGA ファミリではエンベデッド SDK と呼称)

Vivado からプラットフォーム ファイルとしてハードウェアをエクスポート
Arrow
アプリケーション コードの開発
 
Arrow
デバッグとブート イメージの生成

AMD アダプティブ SoC の Arm® エンベデッド プロセッサ サブシステムの C/C++ コード開発は、通常次のフローで行われます。

  • ハードウェア エンジニアが、AMD Vivado™ ML Design Suite を使用してプログラマブル ロジックを設計し、ハードウェアを XSA (Xilinx Support Archive) ファイルとしてエクスポートします。 
  • その後、ソフトウェア エンジニアが、このハードウェア デザイン情報をターゲット プラットフォームに組み込み、Vitis エンベデッド ソフトウェアを使用してアプリケーションコードを開発します。

開発者は、Vitis エンベデッド ソフトウェア内でシステム レベルのすべての検証を実行して、アプリケーションを起動するためのブート イメージを生成できます。 

詳細は、UG1400 の「エンベデッド ソフトウェア開発用 Vitis ツール」セクションを参照 >

Vitis を使用するシステム デザイン フロー

(ハードウェアおよびソフトウェア)

Vitis System Design Flow Chart

通常、システム設計者が AMD のアダプティブ SoC 内でソフトウェアとハードウェアを統合する場合、このフローを使用します。

このフローは、Arm® エンベデッド プロセッサ上で動作するソフトウェア アプリケーションと、プログラマブル ロジック (PL) および/または Versal™ AI エンジン アレイ上で動作するコンピュート カーネルで構成されるヘテロジニアス エンベデッド システムの設計開発に使用されます。

このフローの内容:

  • ソフトウェア ホスト アプリケーションは C/C++ で記述され、通常はエンベデッド Arm プロセッサ サブシステム上で実行されます。このアプリケーションは、AMD Vitis ランタイム ライブラリで提供されるネイティブ API を利用して、AMD デバイス内のハードウェア カーネルと相互作用します。 
  • ハードウェア カーネルは、AMD Vitis™ HLS ツールを使用して C++ から生成、あるいは AMD Vivado™ ML Design Suite を使用して RTL で直接記述できます。

詳細は、UG1393 の「ヘテロジニアス システム デザイン用の Vitis ツール」セクションを参照 >

AMD Alveo™ データセンター アクセラレータ カードを使用する場合、同じシステム設計フローを使用します。ソフトウェア プログラムは x86 ホスト上で実行され、カーネルは PCIe® で接続されたアクセラレーション カードの FPGA で実行されます。

詳細は、UG1393 の「データセンター アクセラレーション用の Vitis ツール」セクションを参照 >

Vitis ヘテロジニアス シミュレーション フロー

使い慣れたツールでシミュレーション
 • 既存の MATLAB®、Python™、C++、または HDL テストベンチを使用
 • テストベンチの書き換えや新しいワークフローを学ぶ必要がない
 • アルゴリズムからハードウェア実装までの反復開発を高速化

AI エンジン + PL の統合シミュレーション (Vitis サブシステム)
 • AI エンジンと PL を同時にシミュレーション
 • 分断されていたフローを、一貫した単一の手法に統合
 • 統合時の問題を早期に検出

HIL (Hardware-in-the-Loop) 検証
 • システム レベルの検証時間を短縮
 • 実際の I/O をシリコン経由でストリーム処理し、デバッグを高速化
 • 最終ハードウェア完成前にエンドツーエンドのスループットを検証

ツールとライブラリ

Vitis エンベデッド

Vitis エンベデッド

Vitis™ エンベデッドは、エンベデッド Arm プロセッサ上で実行されるホスト アプリケーションを開発するためのスタンドアロンのエンベデッド ソフトウェア開発パッケージです。

Vitis AI エンジン DSP 設計ツール: コンパイラとシミュレータ

Vitis AI エンジン DSP 設計ツール: コンパイラとシミュレータ

AMD Versal™ アダプティブ SoC には、電力効率とリソース効率を最適化しながら高性能 DSP 機能を実装できる AI エンジン アレイが搭載されています。  AI エンジンを FPGA ファブリック リソースと組み合わせて使用することで、高性能 DSP アプリケーションを非常に効率的に実装できます。

Vitis HLS

Vitis HLS

Vitis HLS ツールは C/C++ で定義した関数を RTL に合成することで、複雑な FPGA アルゴリズムを簡単に作成できます。

このツールは、合成/配置配線用の Vivado Design Suite、およびヘテロジニアス システム デザインとアプリケーション用の Vitis 統合ソフトウェア プラットフォームの両方に密接に統合されています。

Vitis HLS

Vitis Model Composer

Vitis Model Composer は、MathWorks Simulink® 環境でデザインを短時間で試行できるモデル ベースのデザイン ツールです。

このツールでは、AI エンジン ブロックとプログラマブル ロジック (HDL/HLS) ブロックを組み合わせてデザインを構築し、シミュレーションを実行することも可能です。

Vitis ライブラリ

Vitis ライブラリ

C/C++ で記述された既存アプリケーションに最小限のコード変更を加えるだけですぐに高速化を実現できる、パフォーマンスに最適化されたオープンソース ライブラリです。

ドメイン特化のアクセラレーション ライブラリをそのまま利用して要件に合わせて変更することも、アルゴリズム構築ブロックとして利用して独自のアクセラレータを開発することも可能です。

2025.2 の新機能

AMD Versal™ AI Engine 対応の強化されたデザイン フロー
  • AI エンジン API の機能強化
  • 新規および強化されたデータ型
  • プログラミング モデルの更新と最適化
  • DSP ライブラリ関数の新規追加/改善
  • AI エンジンのマップおよび配線機能を強化 
Versal AI エンジン デザインの検証が容易
  • Vitis Functional Simulation ワークフローを更新
  • MATLAB® および Python™ テストベンチを活用した Hardware-in-the-Loop 検証 (アーリー アクセス)
  • Versal AI エンジンの詳細
AI エンジン DSP デザイン向け Vitis Model Composer の機能強化
  • SSR (Super Sample Rate) デザインの使いやすさを改善
  • AIE および HDL の両方で利用できるブロックが追加
  • Vitis Model Composer の詳細
エンベデッド開発向け Vitis IDE のアップデート
  • Vitis Embedded で、サードパーティ提供の AI コード アシスタント ツールを利用可能
  • Eclipse Theia をベースとした VS Code Editor の使用に対応
  • Zephyr (RTOS) をサポート
  • PS Trace によるデバッグ機能が強化
  • Vitis IDE の詳細

リソース