Main Content

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

コシミュレーションでの HDLパラメーターの使用

コシミュレーションでは Verilog または VHDLパラメーターを設定できます。コシミュレーション ウィザードを使用してHDL Cosimulationブロックまたはhdlverifier.HDLCosimulation System object™を生成すると、 Simulation Optionsこの手順では、 parameter_DUT.cfgという名前の構成ファイルを作成します。ここで、 DUTは HDL DUT の名前です。構成ファイルには、デフォルト値が割り当てられた各 HDLパラメーターの行が含まれています。構成するパラメーターの行のコメントを解除し、値を割り当ててデフォルト値をオーバーライドします。

たとえば、 ModelSim®コシミュレーション用に生成された、この生成された構成ファイルについて考えてみましょう。

# Uncomment lines below for any parameter whose default value you want to change.
# For parameters marked "N/A" (not available) the default value could not be 
# determined, but you can override in the same way.

#-G/design_top/coeff1=0
#-G/design_top/coeff2=18
#-G/design_top/coeff3=74

coeff1の値を 32 に変更するには、その行のコメントを解除し、値 32 を割り当てます。

-G/design_top/coeff1=32
#-G/design_top/coeff2=18
#-G/design_top/coeff3=74

同様に、 Xcelium™を使用して協調シミュレーションを行う場合、構成ファイル内のパラメーターは-gpgディレクティブを使用して作成され、ジェネリックスとパラメーターに値を強制的に割り当てます。

-gpg "design_top.coeff1=120
#-gpg "design_top.coeff2=18
#-gpg "design_top.coeff3=74

この機能はVivado®協調シミュレーションではサポートされていません

サポートされているデータ型

サポートされている Verilog データ型

  • 整数 — 最大 32 ビット

  • 実数

  • 文字列 - 最大 256 バイト

サポートされている VHDL データ型

  • 整数

  • 実数

  • 文字列 - 最大 256 バイト

  • 時刻

  • ビット

  • boolean

  • Enum

  • 標準ロジック

パラメータ化されたポート サイズを使用した協調シミュレーション

Simulink®コシミュレーションでは、HDL デザインに入力ポートまたは出力ポートの幅を構成するパラメーターが含まれている場合、コシミュレーション ウィザードはデフォルトのブロックを使用してHDL Cosimulationブロックを作成します。そのポート幅の値。ブロックを生成した後、デフォルト値をオーバーライドしてそのパラメーターに別の値を割り当てる場合は、次の手順に従う必要があります。

  1. parameter_DUT.cfgファイルを編集し、必要なポート幅を反映するようにパラメーター値をオーバーライドします。たとえば、 output_widthパラメーターを8に変更します。

    -G/design_top/output_width=8

  2. HDL シミュレーターが開いていないことを確認してください。Simulinkブロックの生成後に開くHDL Cosimulationキャンバスで、 Compile HDL Designというラベルのブロックをダブルクリックして、HDL デザインを再コンパイルします。次に、 Launch HDL Simulatorというラベルのブロックをダブルクリックして、HDL シミュレーターを起動します。

    Simulink canvas open with the generated HDL Cosimulation block. Two blocks are highlighted: Compile HDL Design and Launch HDL Simulator.

  3. HDL シミュレーターが開いてデザインをロードした後、 HDL Cosimulationブロック マスクを開きます。「Ports」タブで各ポートを選択し、テーブルが空になるまで「Delete」をクリックします。

  4. Auto Fill」をクリックし、開いた「Auto Fill」ペインに DUT へのパスを入力します。

    HDL Cosimulation block mask open on the Ports tab. The ports are deleted, and the 'Auto Fill' button is highlighted.

  5. [Fill]をクリックします。ポート リストには新しいパラメーター値が反映されます。

    このポート リストには、クロックおよびリセット用のポートだけでなく、ポート幅が変更された HDL ポートも含まれています。Simulinkには暗黙的なクロックとリセットがあるため、リストからこれら 2 つのポートを選択して削除できます。

  6. 協調シミュレーション活動を継続します。ブロックを再生成しないでください。

参考

|

関連するトピック