Vitis ツール - 2023.2 日本語

Versal アダプティブ SoC システム ソフトウェア開発者向けガイド (UG1304)

Document ID
UG1304
Release Date
2023-10-18
Version
2023.2 日本語

Vitis 開発環境には、AMDのエンベデッド ソフトウェア開発で使用する次のツールが用意されています。

ザイリンクス システム デバッガー (XSDB)
AMD hw_server へのコマンド ライン インターフェイスを提供します。hw_server は、デバイス/プロセッサ レベルのデバッグ機能を XSDB などのフロントエンド ツールや Vitis IDE に提供するバックエンド ツールです。また、Vitis 開発環境では直接利用できない低レベルのデバッグ機能も各種揃っています。
フラッシュ プログラマ
ソフトウェア アプリケーション イメージを QSPI、OSPI、または eMMC などの外部フラッシュ デバイスに書き込みます。
リンカー スクリプト ジェネレーター
ベアメタル/FreeRTOS アプリケーションの ELF セクションをハードウェア メモリ空間にマップします。
GNU コンパイラ ツール スイート
AMD の全プロセッサでコンパイルに使用される GNU Compiler Collection (GCC)、AS、LD、binutils などのツールを含みます。
Bootgen
PDI と呼ばれるブート イメージの生成に使用します。
パフォーマンス解析ツール
GPROF、TCF プロファイラー、および OProfile を含みます。
デバッグ/ダウンロード ツール
GNU デバッガー (GDB)、XSDB、フラッシュ ライターを含みます。
シミュレータ
QEMU
ソフトウェア コマンド ライン ツール (XSCT)
ソフトウェア コマンド ライン ツール (XSCT) は、Vitis IDE への対話型コマンド ライン インターフェイスで、スクリプトの実行が可能です。ほかの AMD ツール同様、XSCT のスクリプト言語はツール コマンド言語 (Tcl) に基づいています。これらのツールは細部を抽象化し、一般的な機能をわかりやすいウィザード形式にまとめてあるため、初心者でも簡単に使えます。

ただし、ツールの機能を柔軟に拡張するには、スクリプトへの対応も欠かせません。この機能は、夜間に実行するリグレッション テストの作成、または開発者がよく使用するコマンド セットの実行において特に役立ちます。

XSCT のコマンドは対話形式で実行することも、スクリプトを作成して自動化することもできます。XSCT は次のアクションをサポートしています。

  • ハードウェア、ドメイン、プラットフォーム プロジェクト、システム プロジェクト、およびアプリケーション プロジェクトを作成する
  • リポジトリを管理する
  • ツールチェーンの設定をカスタマイズする
  • ドメイン/BSP およびアプリケーションを設定およびビルドする
  • アプリケーションをターゲット ハードウェアにダウンロードして実行する
  • Bootgen および program_flash ツールを実行してブート イメージを作成し、フラッシュ メモリに書き込む

このリファレンス コンテンツは、AMD FPGA エンベデッド プロセッサをターゲットにしたソフトウェアの開発とデバッグのためのスクリプトを作成するのに必要な情報を提供することを目的としています。

詳細は、 『Vitis 統合ソフトウェア プラットフォームの資料: エンベデッド ソフトウェア開発』 (UG1400) のソフトウェア コマンド ライン ツール を参照してください。

Vitis 開発プラットフォームでは、ソフトウェア開発プロセスを容易にするために、各タスクに対応する個別のパースペクティブを提供します。C/C++ 開発で利用可能なパースペクティブには次のものがあります。

デザイン パースペクティブ ビュー
ソフトウェア C/C++ プロジェクトの表示、作成、ビルドに利用します。デフォルトでは、エディター領域のほか、Vitis プロジェクト、C/C++ プロジェクト (ワークスペース内のソフトウェア プロジェクトを表示)、ナビゲーション コンソール、プロパティ、タスク、make ターゲット、アウトライン、検索などの各種ビューで構成されます。
デバッグ ビュー
ソフトウェア アプリケーションのデバッグに利用します。デバッグ パースペクティブからオープンソース アプリケーションをカスタマイズして、Vitis 統合設計環境に統合できます。
リモート システム エクスプローラー
Versal デバイス上で動作する Linux など、各種リモート システムに接続して動作します。