ブラック ボックスのクロッキング - 2023.2 日本語

Vitis Model Composer ユーザー ガイド (UG1483)

Document ID
UG1483
Release Date
2023-11-15
Version
2023.2 日本語

同期または非同期のブラック ボックス モジュールをインポートするには、そのモジュールのクロッキングに関する Model Composer 情報をコンフィギュレーション M 関数に通知する必要があります。Model Composer では、クロックおよびクロック イネーブルはほかのポート タイプとは異なる方法で処理されます。インポートされたモジュールのクロックポートには、常に対応するクロック イネーブル ポートが必要です (その逆も同様)。つまり、クロックとクロック イネーブルはペアで定義する必要があり、インポートされたモジュールでペアとして存在する必要があります。これは、同期クロックが 1 つのデザインでも複数の独立クロックを持つデザインでも同じです。

SysgenBlockDescriptor には addClkCEPair というメソッドがあり、クロック サブシステム ドメインを使用してクロック、クロック イネーブル、およびクロック周期を定義するのに使用できます。クロック ドメイン情報は、同期シングル クロック デザインには不要です。

最初のパラメーターは、モジュールに表示されるクロック ポートの名前を定義します。2 番目のパラメーターは、モジュールに表示されるクロック イネーブル ポートの名前を定義します。

クロックとクロック イネーブルのペアのポート名は、次の命名規則に従う必要があります。

  • クロック ポートには clk という文字列を含めます。
  • クロック イネーブル ポートには ce という文字列を含めます。
  • clk および ce 以外の文字列を同じにします (例: my_clk_1my_ce_1)。

3 番目のパラメーターは、クロックとクロック イネーブル ポートのレートの関係を定義します。このレート パラメーターは、 Simulink® サンプル レートではなく、クロックのサンプル周期と必要なクロック イネーブルのサンプル周期の関係を Model Composer に示すものです。レート パラメーターの値は、クロック レートとそれに対応するクロック イネーブル レートの比を定義する整数値です。

複数の独立したクロックを持つデザインでは、4 番目および 5 番目のパラメーターは必須です。

4 番目のパラメーターは、クロックとクロック イネーブルのペアをグランドに接続するかどうかをブール値で定義します。true に設定すると、クロックおよびクロック イネーブルの両方がシミュレーション中にグランドに接続されます。false に接続すると、クロックおよびクロック イネーブルのレートが変わります。

5 番目のパラメーターは、クロック/クロック イネーブルのペアのクロック周期を定義します。複数の独立クロックを持つデザインでは、クロック周期を設定するのに、ブラック ボックス SysgenPortDescriptorclockDomain プロパティを使用する必要があります。

例:

rate_data = this_block.port('<port_name>').rate;
clkDomain_data = this_block.port(<port_name>).clockDomain;
this_block.addClkCEPair('clk',ce',rate_data, false, clkDomain_data);