Vitis Model Composer

作成者: Xilinx, Inc

DSP デザインの MATLAB および Simulink 環境で使用できるザイリンクスのツールボックス、Vitis™ Model Composer は、Vivado® ML スタンダード/エンタープライズおよび Vitis™ 開発環境のアドオン ライセンスとして購入できます。

概要

Model Composer は、MathWorks MATLAB® および Simulink® 環境内での効率的なデザイン探索を可能にするモデル ベースの設計ツールで、自動コード生成機能によりザイリンクスのデバイスをベースとする迅速な製品化をサポートします。ユーザーはアルゴリズムを設計し、それらを性能重視で最適化されたブロックを使用して反復し、システム レベル シミュレーションで論理的に正しいかどうかを検証できます。Vitis Model Composer は、自動最適化機能によってデザインをプロダクション品質のインプリメンテーションに変換します。このツールには、200 を超える HDL、HLS、AI エンジン (AIE) ブロックを含むライブラリが含まれており、ザイリンクス デバイスでのアルゴリズムの設計および実装を可能にします。また、カスタムの HDL、HLS、AI エンジン コードをブロックとしてツールにインポートすることも可能です。Vitis Model Composer には、2021.1 以降、スタンドアローン ツールとして提供廃止となったザイリンクスの System Generator for DSP の機能がすべて含まれています。

Vitis Model Composer では、次のことが可能になります。

  • AI エンジンとプログラマブル ロジックをターゲットとする最適化されたブロックを使用してデザインを作成する。
  • シミュレーション結果を視覚化して分析し、MALTAB® および Simulink® を使用して生成されたゴールデン リファレンスと出力を比較する。
  • AI エンジン ブロックとプログラマブル ロジック (HLS、HDL) ブロックの協調シミュレーションをシームレスに実行する。
  • デザインのコード (AI エンジンのデータフロー グラフ、RTL、HLS C++) とテストベンチを自動生成する。
  • カスタマイズした HLS、AI エンジン、RTL コードをブロックとしてインポートする。
  • 圧倒的な使いやすさを誇るハードウェアでのデザイン検証。

Vitis Model Composer の機能

Vits™ Model Composer の機能についての簡単な説明です。全容については、各タブをクリックしてください。

分析、デバッグおよび可視化

分析、デバッグおよび可視化

MATLAB と Simulink 環境を利用して、デザインの解析や視覚的検証が可能になります。

  • Simulink ライブラリ ブラウザーから、最適化済みの AI エンジン、HLS、および HDL ブロックを直接使用する
  • カスタマイズした AI エンジン、HLS、および HDL コードをブロックとしてインポートする
  • Simulink 環境で高速シミュレーションを実行する
  • MATLAB および Simulink のゴールデン リファレンスと結果を比較する
  • 中間信号を利用して、デバッグおよびデザインの視覚的検証を行う
Model Composer 分析
AI エンジンおよび PL の協調シミュレーション

AI エンジンとプログラマブル ロジックの協調シミュレーション

ヘテロジニアス システムの協調シミュレーション:

  • 最適化済みの AIE/HLS/PL ブロックをライブラリ ブラウザーから直接使用、またはコードをブロックとしてインポートする
  • AI エンジン ブロックを HLS カーネル ブロックにシームレスに接続する
  • または AI エンジン ブロックを HDL ブロックに接続する
  • AIE + PL の協調シミュレーションを実行する
Model Composer 協調シミュレーション
コード生成

コード生成

デザインからコードを生成することで、生産性を向上させます。 

  • 制約と共にグラフ コードを生成する
  • RTL (Verilog/VHDL) を生成する
  • プラグマが挿入された最適化した HLS コードを生成する
  • テスト ベンチを生成する
Model Composer コード生成
ハードウェアでのデザインの検証

ハードウェアでのデザインの検証

圧倒的な使いやすさを誇るハードウェアでのデザイン検証

  • データ ムーバー、PS コード、コンフィギュレーション ファイルを生成する
  • ハードウェア用デザインを構築するために必要な make ファイルを生成する
  • ボタンをクリックして、デザインをハードウェアに移動する
VCK190 ボード

最新情報

2022.1 では、Vitis Model Composer に多くの機能が追加および強化されています。

詳細は次のとおりです。

  • AI エンジン
    • Simulink シミュレーションで AI エンジンの DSP ブロックのコンパイル時間が 50% 以上削減
    • DSP ライブラリ ブロックのストリーミング サポート
    • DSP ライブラリに次のブロックが追加:
      • ストリーム FFT および IFFT
      • ストリーム DDS および Mixer
      • ダイナミック ポイント FFT
      • FIR リサンプラー
      • 既存ウィンドウのすべての FIR ブロック (デシメーター、フィルター、インターポレーター)に対応する同等のストリームベース FIR
    • PLIO ブロックと FIFO ブロックが 2 つの独立したブロックになり、AIE Signal Spec ブロックは廃止
    • 制約マネージャーで PLIO 制約と FIFO 制約を指定可能
    • AI エンジンのインポート ブロックは大規模なサブシステムの一部としてマスクされるため、マスク パラメーターの値を使用できる
    • 制約マネージャーの変数に、AI エンジン ブロックを含むサブシステム マスクのマスク パラメーターを使用できる
  • HLS
    • HLS カーネル インポート ブロックはテンプレート関数をサポート
    • HLS カーネル ブロックの使いやすさ向上
  • HDL
    • Vivado シミュレーター フローでの Black-box インポートがアップデートされ、シミュレーションおよびコード生成で VHDL2008 がデフォルトでサポートされる
    • AI エンジンと HDL ドメイン間の接続を容易にする Gateway-in AXI Stream および Gateway-out AXI Stream ユーティリティ ブロックが追加
    • Vitis Model Composer は Qt ライブラリへ依存しなくなりました。これにより、ブロック GUI のルック アンド フィールに一貫性が生まれ、機能を維持したままツールの安定性が向上します。この変更により、ブロック GUI は Qt ベースのブロック GUI よりも高速で起動できるようになりました。
      • HDL ブロックは Qt GUI ではなく、デフォルトで Simulink ネイティブ GUI を使用
      • リソース アナライザーは Qt ベースの GUI ではなく MATLAB アプリ デザイナーを使用するように変更
      • タイミング アナライザーは Qt ベースの GUI ではなく MATLAB アプリ デザイナーを使用するように変更
    • 1Gsps を超える超高速フィルターを効率的に実装する SSR-FIR のデモ
  • 一般
    • Vitis Model Composer のハブ ブロックを大幅に見直し、スケーラビリティと使いやすさが向上
      • System Generator トークンが Vitis Model Composer のハブ ブロックに統合
      • System Generator トークンは 2022.2 で廃止予定
    • ハードウェア検証フローがベアメタルに続き Linux もサポート
    • AIE to HDL および HDL to AIE ブロックに HDL ゲートウェイ ブロックが含まれない
    • インターネットにアクセスできないお客様のためにサンプル デザインのスナップショットを同梱する。このツールで、GitHub から最新のサンプル デザイン リビジョンをダウンロードするよう促す。
    • 使いやすさを考慮し、コード生成に含まれないユーティリティ ブロックは、背景色を白に変更
    • 使いやすさ向上のため、ライブラリ ブラウザーを改善
    • RHEL 8.x サポート
    • MATLAB サポート - R2021a および R2021b
tx_chain_200Mhz
Vitis Model Composer 200MHz TX チェーン

Model Composer ビデオ リンク
Simulink および Vitis Model Composer を使用したザイリンクス Versal ACAP の AI エンジンの設計

2021.2 では、Vitis Model Composer に多くの機能が追加および強化されています。

詳細は次のとおりです。

  • AI エンジン
    • ボタン クリック操作で、AI エンジンと PL (HLS、HDL) ブロックを含むデザインを、Versal AI コア ハードウェアで実行
    • AIE ブロックの並列コンパイルにより、Simulink シミュレーションが大幅に高速化
    • AI エンジンの制約エディター機能が強化
    • AIE DSP ライブラリに DDS および Mixer ブロックが追加
    • 「to fixed size」および「to variable size」ブロックが強化
    • int64 および uint64 データ型をサポート
    • accfloat および caccfloat をサポート
    • GitHub のサンプル デザインがさらに充実し、HLS サンプルが含まれる
    • 生成されるデータフロー グラフのコードに PLIO の仕様が含まれる
    • GitHub からのサンプル デザインのダウンロードや閲覧が簡単になる
    • AIE ソース ブロックをサポート
    • AIE シミュレータまたは x86 シミュレータのデータ ファイルを読み書きするための xmcVitisRead および xmcVitisWrite ユーティリティ
    • AIE の dsplib ブロックの GUI パラメーターを体系化
    • 新しい 64x32 Pseudo Inverse デザイン サンプル
    • 新しい Dual-Stream SSR フィルターの例 (64 個の AI エンジン カーネル、最大 16 GSPS スループット)
  • HDL
    • FIFO ブロックの非対称の読み出し/書き込みデータ幅をサポート
  • HLS
    • ザイリンクスの FIR、FFT、DDS LogiCORE を含む HLS を使用した C コードのシミュレーションとインプリメンテーションをサポート
  • 全般
    • MATLAB サポート - R2020a、R2020b、R2021a
    • 新たに Ubuntu 20.04 のサポートが追加

Vitis Model Composer には、ザイリンクスの System Generator for DSP の機能がすべて含まれています。System Generator for DSP を使用していたユーザーは、今後 Vitis Model Composer を使用して開発を続けることができます。

  • AI エンジン
    • 包括的な制約エディターを使用して、Vitis Model Composer で AI エンジン カーネルのあらゆる制約を指定できる。生成された ADF グラフに、これらの制約が含まれる。
    • ライブラリ ブラウザーへ AI エンジン FFT ブロックと IFFT ブロックを追加。
    • ライブラリ ブラウザーのさまざまな AI エンジン FIR ブロックを利用できる。
    • FIR フィルターの入力ポートを使用して、フィルター係数を指定できる。
    • 2 つの新しいユーティリティ ブロック (RTP Source と To Variable Size) を追加。
    • 機能強化された AIE カーネル インポート ブロックは、テンプレート化された AI エンジン機能のインポートにも対応。
    • Hub ブロックで、AI エンジン デザイン用ザイリンクス プラットフォームを指定できる。
    • Hub ブロックからは、AIE シミュレーション実行後にいつでも Vitis Analyzer を再実行できる。
    • Simulink Data Inspector を使用して、サイクルの概算出力を可視化して、各出力の推定スループットを確認できる。
    • グラフ ヘッダー ファイルのみを使用してグラフをブロックとして取り込む際の操作性が向上。
    • キャンセル ボタンが付いて進捗状況バーが刷新。
    • MATLAB の作業ディレクトリとモデルのディレクトリが異なる場合に、AI エンジン カーネルのインポートやデザインのシミュレーションを行う際の操作性が向上。
    • AIE シミュレーション時のプロファイリングがデフォルトで無効になっている。この機能は、Model Composer の Hub ブロックからオプションで有効にできる。
    • 新しい TX チェーン 200MHz の例。
    • HLS、HDL、AI エンジン ブロックを使用するデザインを紹介する新しい 2D-FFT の例。
  • HDL
    • SSR FIR (10 倍以上) および SSRFFT のシミュレーション速度が向上。
    • RAM や FIFO などのメモリ ブロックのシミュレーション速度が向上
    • ブラック ボックス インポート フローで Questa Simulator が VHDL 2008 に対応
  • 全般
    • Vitis Model Composer には、ザイリンクスの System Generator for DSP の機能がすべて含まれている。System Generator for DSP を使用していたユーザーは、今後 Vitis Model Composer を使用して開発を続けることができる。
    • MATLAB サポート - R2020a、R2020b、R2021a

 

2020.2 には、MATLAB および Simulink のアドオン機能として、ザイリンクスの Model Composer と System Generator for DSP が統合されています。

相互接続可能な 3 つのドメイン:

  • RTL (System Generator for DSP)
  • HLS (Model Composer)
  • AI エンジン (MATLAB および Simulink アドオンで対象となる新しいドメイン)

AI エンジン (Model Composer)

  • AI エンジン カーネルをインポート: C、C++、テンプレート、ステートをカプセル化するクラス
  • アダプティブ データフロー グラフをインポート: テンプレートをサポート
  • 次のドメイン間のゲートウェイ
    • AI エンジンと RTL ドメイン
    • AI エンジンと HLS カーネル ドメイン
  • ロケーション制約と FIFO 挿入に対応
  • ライブラリには AI エンジン DSP ライブラリ ブロックが含まれる
  • SW エミュレーションおよび AI エンジン エミュレーションの実行
  • ベクトル信号の次元サポートが改善: デザイン内のベクトル [N] 信号を処理するためのコード生成インフラが改善され、性能が向上。
  • ベクトル パラメーター用に強化された Constant ブロック: Simulink ライブラリの Constant ブロックと同様に、ベクトル パラメーターを 1 次元として解釈するオプションをサポート。
  • 最適化された DSP ブロックを使用した新しいサンプル デザイン
    • 2D-FFT による MRI の画像再構成
    • FIR ブロックを使用したローパス フィルター デザイン
    • FIR ブロックを使用した画像平滑化フィルター
  • C/C++ 関数のインポート機能が強化: :診断ビューアーに表示されるエラー/警告メッセージが改善され、カスタム コードのトラブルシューティングが強化。
  • IP カタログ エクスポート タイプの IP プロパティをカスタマイズ: 合成されたデザインから、パッケージ化されている IP の名称、バージョン、ハードウェア記述言語 (VHDL または Verilog) などの IP プロパティを指定。
  • [Device Chooser] の検索機能: Model Composer Hub ブロックの [Device Chooser] ダイアログ ボックスを使用し、条件に基づいてデバイスとボードをすばやく検索。
  • マルチチャネル処理をサポートする FIR ブロック: FIR ブロックの機能強化により、マルチチャネル フィルタリング動作の場合、独立したデータ チャネルとして入力信号の列を処理。
  • サポートされる MATLAB バージョン: R2018a、R2018b、R2019a、R2019b
  • DSP ブロック ライブラリ: Model Composer で信号処理アルゴリズムを設計および実装するための新しい FFT、IFFT、および FIR ブロックを利用可能

  • スループット制御の機能強化: スループット制御用に広範なブロックがサポートされている。サポートされているブロックを使用してデザインを構築し、その後、デザインに構造を変更することなくインプリメンテーションのスループット要件を制御可能

  • ストリーミング データをサポートするその他のブロック: ストリーミング データの動作をサポートする広範なブロックセットを使用して、高スループット要件に対応するアルゴリズムを設計および実装。例: Look-up Table、Delay、Matrix Multiply、Submatrix

  • C/C++ 関数のインポートで Complex 型のサポート強化: Std::complex に加えて、hls::x_complex 型を使用する関数のインポートをサポートできるようになり、カスタム ブロック内の複素数信号のサポートを拡張。

  • C/C++ 関数のインポート機能が強化: xmcImportFunction コマンドを使用して、デザイン用のカスタム Source ブロックを作成

  • 信号の次元 (Row-Matrix および Column-Matrix) のサポートが改善: デザイン内の Row-Matrix [Nx1] および Column-Matrix [1xN] 信号を処理するためのコード生成インフラが改善され、性能が向上する。

  • サポートする MATLAB バージョン: R2017a、R2017b、R2018a

ダウンロード

購入

Model Composer は、Vivado® ML スタンダード/エンタープライズおよび Vitis™ 開発環境のアドオン ライセンスとして購入できます。

ご購入を検討されている方は、japan.xilinx.com/getlicense で 90 日間の評価版ライセンスを生成できます。

ダウンロード

Vitis Model Composer は、デザイン ツールとして追加でき、Vivado インストーラーまたは Vitis インストーラーを使用してインストールできます。

必要な知識/スキル