Main Content

このページは前リリースの情報です。該当の英語のページはこのリリースで削除されています。

一般的な最適化パラメーター

このページでは、[コンフィギュレーション パラメーター] ダイアログ ボックスの [HDL コード生成][最適化][一般] タブにあるコンフィギュレーション パラメーターについて説明します。このセクションのパラメーターを使用することで、HDL コード生成用に設計を最適化できます。

非ゼロ初期値の遅延の変換

設定

既定の設定: オン

オン

Simulink® モデルの [初期条件] が非ゼロの Delay ブロックを、生成された HDL コードで [初期条件] がゼロで追加のロジックをもつ Delay ブロックに変換します。

この変換を使用して、HDL Coder™ は共有、分散型パイプライン、クロックレート パイプラインなどの最適化をより効率的に実行し、アサーションが検証モデルでトリガーされるのを防ぐことができます。

オフ

Simulink モデルの [初期条件] が非ゼロの Delay ブロックを変換しません。

コマンド ライン情報

プロパティ: TransformNonZeroInitValDelay
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'on'

このプロパティを設定するには、関数 hdlset_param または makehdl を使用します。プロパティの値を表示するには、関数 hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に TransformNonZeroInitValDelay プロパティを on に設定できます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
            'TransformNonZeroInitValDelay','on')
  • hdlset_param を使用すると、モデルにパラメーターを設定してから、makehdl を使用して HDL コードを生成できる。

    hdlset_param('sfir_fixed','TransformNonZeroInitValDelay','on')
    makehdl('sfir_fixed/symmetric_fir')

参考

makehdl

未使用の端子を削除

設定

既定の設定: オン

オン

生成された HDL コードから設計内にある未使用の端子を削除します。この最適化により、最上位の DUT サブシステムにある未使用の端子は保持されます。その他すべての未使用の端子は、HDL コードから削除されます。

オフ

HDL コードから未使用の端子を削除しません。

コマンド ライン情報

プロパティ: DeleteUnusedPorts
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'on'

このプロパティを設定するには、関数 hdlset_param または makehdl を使用します。プロパティの値を表示するには、関数 hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に DeleteUnusedPorts プロパティを off に設定できます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
            'DeleteUnusedPorts','off')
  • hdlset_param を使用すると、モデルにパラメーターを設定してから、makehdl を使用して HDL コードを生成できる。

    hdlset_param('sfir_fixed','DeleteUnusedPorts','on')
    makehdl('sfir_fixed/symmetric_fir')

参考

遅延の均衡化

パイプラインやリソース共有といった特定の最適化を有効にするか、特定のブロック実装を指定してコードを生成するときに、HDL Coder はモデル内の特定の信号パスでパイプライン遅延を引き起こします。既定では、モデルに対する遅延の均衡化はオンになっています。HDL Coder は、あるパスで発生したこれらのパイプライン遅延を検出すると、それに一致する遅延を他のパスに挿入します。詳細については、遅延の均衡化を参照してください。

HDL コード生成後に生成されたモデルの機能が元の Simulink モデルと同等であるようにするには、この設定を有効のままにします。この設定を無効にした場合、HDL Coder は検証モデルで数値の不一致が発生する可能性を示す警告を生成します。この警告を修正するには、遅延の均衡化の設定をチェックのモデルのチェックを実行します。

互換性の考慮事項

モデル全体で遅延の均衡化を無効にすることは推奨されません。モデルの遅延の均衡化オプションは、[コンフィギュレーション パラメーター] ダイアログ ボックスの [HDL コード生成][最適化][一般] タブから削除されています。遅延の均衡化の推奨事項については、遅延の均衡化における考慮事項を参照してください。MATLAB コマンド ライン インターフェイスで hdlset_param コマンドまたは makehdl コマンドを使用することで、引き続きこのオプションを有効にすることができます。

コマンド ライン情報

プロパティ: BalanceDelays
型: 文字ベクトル
値: 'on' | 'off'
既定の設定: 'on'

このプロパティを設定するには、関数 hdlset_param または makehdl を使用します。プロパティの値を表示するには、関数 hdlget_param を使用します。

たとえば、次のいずれかの方法を使用して sfir_fixed モデル内の symmetric_fir サブシステムの HDL コードを生成する際に BalanceDelays 設定を有効にできます。

  • プロパティを引数として関数 makehdl に渡す。

    makehdl('sfir_fixed/symmetric_fir', ... 
            'BalanceDelays','on')
  • hdlset_param を使用すると、モデルにパラメーターを設定してから、makehdl を使用して HDL コードを生成できる。

    hdlset_param('sfir_fixed','BalanceDelays','on')
    makehdl('sfir_fixed/symmetric_fir')

参考