Vitis Model Composer

作成者: Xilinx, Inc

Vitis™ Model Composer は、MathWorks MATLAB® および Simulink® 環境でデザインを短時間で試行できるモデル ベースのデザイン ツールです。Model Composer は、Vivado® ML スタンダード/エンタープライズおよび Vitis™ 開発環境のアドオン ライセンスとして購入できます。

概要

Vitis Model Composer の概要

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

特集ウェビナー

Model Composer ウェビナー

Simulink および Vivado シミュレータを使用した初期段階の FPGA/SoC デザイン検証

ウェビナーを視聴

Vitis Model Composer の機能

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

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

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

Model Composer 分析

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

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

AI エンジンおよび適応型エンジンの協調シミュレーション

Model Composer 協調シミュレーション

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

  • 最適化済みの AI エンジン / HLS / 適応型エンジンをライブラリ ブラウザーから直接使用、またはコードをブロックとしてインポートする
  • AI エンジン アレイを HLS カーネル ブロックまたは HDL ブロックにシームレスに接続する
コード生成

コード生成

Model Composer コード生成

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

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

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

VCK190 ボード

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

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

最新情報

2022.2 の新機能と拡張機能

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

Versal AI エンジン デザインの主な機能

  • AI エンジンの DSP ブロックにグラフ制約を追加できる – 実装を最適化して性能と使用率を向上させる
  • AI エンジンのサイクル近似シミュレーション実行後、Simulink Data Inspector でカーソルで選択した出力データ部分のスループットを表示
  • AI Engine Graph Import ブロックの使いやすさが向上:
    • *.cpp を使用してグラフをインポートする方法は推奨されない
    • RTP ポートは自動で検出するため、手動で指定する必要がない
  • DSP ライブラリ ブロックの機能強化
    • ストリームベースのダイナミック ポイント FFT ブロックが追加
    • 新しいウィンドウおよびストリームベースのウィンドウ関数ブロックが追加
    • スーパー サンプル レート (SSR> 1) がすべてのストリームベース FIR ブロックでサポートされる
    • ハーフバンド デシメーター ブロックに Decimate Polyphase (TP_PARA_DECI_POLY) パラメーターが追加
    • ハーフバンド インターポレート ブロックに Interpolate Polyphase (TP_PARA_INTERP_POLY) パラメーターが追加
    • FIR ハーフバンド インターポレーター ウィンドウおよびストリーム ブロックにアップシフト センター タップ パラメーターが追加
  • アーリー アクセスとして buffer_1d のサポートを追加
    • sync、async、cyclic buffer_1d がサポートされる
    • GUI やカーネル コードからのサイズ指定が可能
    • カーネル コードでマージンを指定可能

HLS

  • HLS カーネル ブロックの機能が強化され、拡張されたテンプレート パラメーターをサポート
  • ウィンドウ処理ブロックを改善して URAM リソースに対応


HDL

  • Vitis Model Composer への Blackbox RTL のインポート フローを大幅に改善
    • 入力ポートのデータ型サポートを拡張 (SIGNED、UNSIGNED、BOOLEAN、FLOAT32、FLOAT64)
    • 入力ポートのデータ型 UFIXED および SFIXED のサポートを追加。(バイナリ ポイントの位置が 0 より大きい場合には、手動で操作が必要)
    • ジェネリック パラメーターを使用して整数型や Float 型の配列をサポート
    • 新しい API の addDirectory() が追加され、複数の HDL ファイルを取得できる
  • サードパーティの Questa シミュレータ ブロックの GUI を更新し、コンパイル済みの unisim ライブラリを提供


全般

  • Vitis Model Composer ハブ ブロックを大幅に改善
    • ユーザー インターフェイスをアップグレードしてヘテロジニアス デザインに対応
    • 有効な AI エンジン、HDL、HLS のサブシステムを自動検出
    • System Generator トークンは廃止される。既存の System Generator デザインは自動的にアップグレードされて新しいハブ ブロックを使用できるようになる。
  • ハードウェア検証フローが強化され、Versal プラットフォームに対しては HDL ブロックのみを含むデザインおよび HDL - AI エンジン間ブロックを含むデザインをサポート
  • MATLAB サポート - R2021a および R2021b
  • キャンバス上での右クリック オプション、Xilinx BlockAdd や BlockConnect などのブロック、および Xilinx Tools が削除。
  • パッチの使用法が改善
tx_chain_200Mhz
Vitis Model Composer 200MHz TX チェーン

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

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 アナライザーを再実行できる。
    • 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 ビデオ リンク

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

ビデオへのアクセス リンク

Model Composer ビデオ リンク

Vitis Model Composer を使用した Avnet ZUBoard 上での FIR フィルターの設計
 

ビデオへのアクセス リンク

Model Composer ビデオ リンク

Simulink および Vivado シミュレータを使用した初期段階の FPGA/SoC デザイン検証

ビデオへのアクセス リンク

ダウンロード

購入

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

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

ダウンロード

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

必要な知識/スキル