メインコンテンツ

MATLAB Function ブロックの固定小数点への変換

この例では、固定小数点ツールを使用して MATLAB® Function ブロックを含むモデルを固定小数点に変換する方法を示します。

固定小数点ツールでの MATLAB Function ブロックの操作のためのベスト プラクティス

  • MATLAB Function ブロック アルゴリズムの固定小数点のバリアントを編集しないでください。コード ビューを使用して MATLAB コードの浮動小数点のバリアントを編集し、データ型を再推奨して適用します。

  • 正常に変換を行うには、固定小数点の自動変換でサポートされているモデル構造のみを使用してください。サポートされているモデル構造のリストについては、固定小数点の自動変換でサポートされる MATLAB 言語機能を参照してください。

  • 範囲情報を収集する間は、MATLAB Function ブロックの MATLAB コードを編集しないでください。コードを編集すると、結果を統合しようとする場合に問題が発生します。

  • 固定小数点ツールを使用した固定小数点の変換プロセス中に、[名前を付けて保存] オプションを使用して MATLAB Function ブロックを別の名前で保存しないでください。別の名前で保存すると、元のブロックの既存の結果が失われる可能性があります。

モデルを開く

ex_symm_fir モデルを開きます。

open_system("ex_symm_fir.slx")

ex_symm_fir モデルは対称 FIR フィルターを使用します。モデルのシミュレーションを実行して、モデル出力関数を検査します。MATLAB Function ブロックをダブルクリックすることで対称 FIR フィルター アルゴリズムを検査します。

固定小数点の変換のための準備

  1. 固定小数点ツールを開くには、[アプリ] タブで [アプリ] ギャラリーを展開し、[固定小数点ツール] を選択します。

  2. 固定小数点ツールで [固定小数点の反復的変換] を選択します。

  3. [設計対象のシステム (SUD)] で、変換するシステムとして MATLAB Function ブロックを含む symmetric_fir サブシステムを選択します。

  4. [範囲の収集モード] で、範囲の収集方法として [シミュレーション範囲] を選択します。これにより、理想的な浮動小数点データ型を使用して範囲を収集するようにモデルが設定されます。

  5. ツールストリップの [準備] セクションで、[準備] をクリックします。

範囲情報の収集

理想的な範囲を収集して、データ型の推奨に使用します。[範囲の収集] ボタンの矢印を展開して [倍精度] を選択します。[範囲の収集] をクリックして、シミュレーションを開始します。

固定小数点ツールは、BaselineRun というタイトルの実行にシミュレーション データを格納します。スプレッドシートで MATLAB 変数の範囲情報を確認します。

データ型の推奨

推奨設定を構成し、モデルに固定小数点データ型を推奨します。

  1. ツールストリップの [変換] セクションで、MATLAB Function ブロック変数のデータ型の推奨設定を構成できます。

    この例では、既定の推奨設定を使用します。

  2. [データ型を推奨] をクリックします。

    データ型の推奨は、スプレッドシートの [ProposedDT] 列に表示されます。

    メモ

    [SpecifiedDT] 列は MATLAB Function ブロック変数については常に空白です。

    The Fixed-Point Tool displaying the proposed data types in the Results spreadsheet and a histogram visualization of the simulation ranges.

コードの検査およびデータ型の推奨

MATLAB Function ブロック内のコードを検査し、詳細な変数と式の情報を表示するには、[結果] スプレッドシート内の任意の変数をダブルクリックして、インストルメンテーション レポート ビューアーを開きます。

The Instrumentation Report Viewer as launched by double-clicking the variable a1. The window displays the MATLAB function sfir with instances of a1 highlighted as well as information about the variable like type, size and class.

現在の推奨設定を表示および編集するには、[設定] ドロップダウンをクリックします。

The settings drop-down in the Fixed Point Tool displaying settings for proposing data types, converting to fixed point and MATLAB function block fimath.

この例では、既定の fimath プロパティで十分です。

推奨されたデータ型の適用

推奨された型の確認および推奨の設定の編集が終了したら、推奨されたデータ型をモデルに適用します。コード ビューまたは固定小数点ツールのいずれかからデータ型を適用できます。

固定小数点ツールで、[データ型を適用] をクリックします。

これでバリアント サブシステムが、MATLAB Function ブロックの代わりとなります。バリアント サブシステムには、浮動小数点および固定小数点の両方のバージョンの MATLAB Function ブロックが含まれます。アクティブなバージョンは、固定小数点ツールによってモデルのデータ型オーバーライド設定に基づいて自動的に制御されます。[データ型オーバーライド] は現在モデルでアクティブになっていないため、固定小数点バージョンがアクティブになっています。

The variant subsystem displaying the active fixed-point version of the MATLAB function block

結果の確認

固定小数点ツールに戻り、変換の結果を確認します。

ツールストリップの [検証] セクションで [組み込み型によるシミュレーション] ボタンをクリックし、新しく適用された固定小数点データ型を使用してモデルをシミュレートします。モデルは、固定小数点のバリアントをアクティブなバリアントとして使用してシミュレーションを実行します。

The ex_symm_fir model displaying fixed-point data types after simulation

参考

トピック