Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

モデル コンフィギュレーション セットのカスタマイズ

コード ジェネレーターによるコードの生成方法のカスタマイズ

モデル コンフィギュレーション セットには、コード ジェネレーターによってモデルからコードが生成される方法を制御するパラメーターが含まれます。コードの最適化、インターフェイス、コード スタイル、ビルド オプション、および生成されたコードの他の側面を制御するには、コンフィギュレーション パラメーターを使用します。多くのモデルで同じ設定を使用する場合は、1 つのコンフィギュレーション セットをモデル間で共有できます。スクリプトを使用してコード生成用にモデルをプログラムで構成することも可能です。

モデル設定

すべて展開する

ターゲットの選択

システム ターゲット ファイルビルド プロセスのコード生成段階を制御するファイル
言語生成コードのプログラミング言語
言語標準コンパイラでサポートされている言語標準

ビルド プロセス

コード生成のみコードを生成するが実行可能プログラムは生成しない
ツールチェーン実行可能プログラムまたはライブラリのビルド時に使用するツールチェーン
ツールチェーンの詳細ベースライン ツールチェーン設定
コードとアーティファクトのパッケージ化生成コードとアーティファクトを ZIP ファイルにパッケージ化する
ビルド構成ツールチェーンで定義されるビルド構成
コンパイラ最適化レベルコンパイラ最適化の適用を制御する
カスタム コンパイラ最適化フラグコンパイラ最適化フラグ
makefile の生成生成コードのコンパイルに使用する makefile の生成を有効にする
make コマンドビルド プロセスを開始するための make コマンドおよびオプション
テンプレート makefile指定したシステム ターゲット ファイル用の makefile の生成に使用するテンプレート makefile

コード生成の目的

目的を選択コード生成の目的
コード生成前にモデルをチェックコード生成アドバイザー チェックを実行するかどうかを選択する

詳細設定

組み込み FFTW ライブラリ コールバックFFTW ライブラリ用に組み込みコールバックを使用する (R2023a 以降)
カスタム FFT ライブラリのコールバックカスタム FFT ライブラリ用のコールバック
カスタム BLAS ライブラリのコールバックCallback for custom BLAS library usage
カスタム LAPACK ライブラリのコールバックカスタム LAPACK ライブラリ用のコールバック
詳細なビルド (コマンド表示)ビルド プロセス段階およびコンパイラ出力の表示を有効にする
.rtw ファイルを残す生成された model.rtw ファイルを残す
TLC プロファイルモデルのコードの生成に使用する TLC ファイルの実行をプロファイルする
TLC アサーションを有効にするTLC スタック トレースを生成する
コード生成時に TLC カバレッジを実行Log coverage of TLC code during code generation
コード生成時に TLC デバッガーを実行コード生成時に TLC デバッガーを開始する
Zip ファイル名Zip ファイルの名前
MATLAB 関数内の大きな定数の生成Whether to write large deep learning constants to binary data files (R2024a 以降)
MATLAB 関数での大きな定数のしきい値 (バイト)Threshold above which the code generator writes DNN constants to binary data files (R2024a 以降)
カスタム ハードウェア アプリを Simulink ツールストリップに表示Show Custom Hardware App in Simulink Toolstrip
組み込みハードウェア アプリを Simulink ツールストリップに表示組み込みハードウェア アプリを Simulink ツールストリップに表示
既定のパラメーター動作生成コードの数値ブロック パラメーターを表現する
ベクトルの代入に対する memcpy の使用ベクトルの割り当てに対して生成されたコードを最適化する
memcpy しきい値 (バイト)ベクトルを代入する for ループを関数 memcpy および関数 memset の呼び出しに置き換える最小の配列サイズを指定する
ループ展開のしきい値 for ループを生成する際の最小配列サイズ幅を指定する
最大スタック サイズ (バイト)モデル内のローカル変数の最大スタック サイズを指定する
インライン不変信号生成コードで不変信号のシンボリック名を変換する
信号ストレージの再利用信号メモリを再利用する
ローカルなブロックの出力を有効にするブロック信号をローカルまたはグローバルに宣言する
ローカル ブロック出力の再利用ローカル出力変数を再利用する
余分なローカル変数の削除 (式の畳み込み)式を単一式に畳み込むことを指定する
float と double を 0.0 に初期化するために memset を使用浮動小数点データを 0.0 に明示的に初期化するコードの生成を制御する
浮動小数点から整数への変換で NaN が 0 にマッピングされて飽和したコードを削除NaN 値に対して浮動小数点から整数への変換を処理する保護コードの生成を制御します。
範囲外の値をラップする浮動小数点から整数への変換コードを削除浮動小数点から整数への変換が範囲外の値になる場合を処理するラッピング コードの生成を制御する
再利用可能なサブシステムのバッファーサブシステムの再利用性を向上させるバッファー
ステート構成を保存するためにビットセットを使用ステート構成変数を保存するためのビットセット
Boolean データを保存するためにビットセットを使用boolean データを保存するビットセット
自動的に作成される列挙の基本ストレージ型ステート出力用の列挙のストレージ型とサイズを指定する
コード生成レポートを作成HTML レポートに生成されたコードを記述する
レポートを自動的に開くコード生成レポートを自動的に表示する
コメントを含める生成コードにコメントを含める
Simulink ブロックのコメントSimulink ブロックのコメントを含める
Stateflow オブジェクトのコメントStateflow オブジェクトのコメントを含める
コメントとして MATLAB ソース コードを含めるコメントとして MATLAB ソース コードを含める
消去されたブロックを表示消去されたブロックのコメントを含める
'Model default' ストレージ クラスに対する詳細なコメントコードのサイズを削減したり、コードのトレーサビリティを向上させたりする
識別子の最大の長さ識別子の最大文字数を指定
シミュレーション ターゲットと同じ予約名を使用[シミュレーション ターゲット] ペインからの予約名を使用するかどうかを指定する
予約名カスタム コードとの名前の競合を回避する
ヘッダー ガードの接頭辞Custom text to prepend to generated header guards (R2024a 以降)
重複する列挙メンバー名コード ジェネレーターが、同じメンバー名をもつ 2 つの列挙型を検出した場合に行うアクションを指定
シミュレーション ターゲットと同じカスタム コードの設定を使用[シミュレーション ターゲット]、[カスタム コード] ペインのカスタム コード設定を使用する
インクルード ヘッダー生成されたモデルのヘッダー ファイルにカスタム コードをインクルードする
インクルード ディレクトリフォルダーをインクルード パスに追加する
ソース ファイル追加のソース ファイルをコンパイルして生成コードにリンクする
ライブラリ生成コードと追加ライブラリのリンク
定義プリプロセッサ マクロ定義をコンパイラ コマンド ラインに追加
初期化コード生成されたモデルの初期化関数にカスタム コードをインクルードする
終了コード生成されたモデルの終了関数にカスタム コードをインクルードする
追加コード生成されたモデル ソース ファイルにカスタム コードを含める

ソフトウェア環境

コード置換ライブラリ特定のターゲット環境用にコード最適化を定義するライブラリ
共有コードの配置共有される生成コードの場所
サポート: 非有限数非有限データのコード生成

コード インターフェイス

コード インターフェイスのパッケージ化生成されたコードのインターフェイスを再利用可能な関数または再利用できない関数または C++ クラスとしてパッケージ化する
マルチインスタンス コードのエラーの診断モデルがマルチインスタンス コード生成の要件に違反した場合における診断の重大度のレベル

データ交換インターフェイス

配列のレイアウトコード ジェネレーターが配列データに使用するレイアウト (列優先または行優先)
行優先コード生成の外部関数互換性多次元配列を使用するが配列のレイアウトを指定していない関数に対する診断アクション
C API の生成: 信号信号構造体内の信号用の生成された C API インターフェイス コード
C API の生成: パラメーターパラメーター構造体内の調整可能なパラメーター用の生成された C API インターフェイス コード
C API の生成: 状態状態構造体内の状態用の生成された C API インターフェイス コード
C API の生成: ルートレベル I/OGenerated C API interface code for root-level inports and outports in root-level I/O structure
ASAP2 インターフェイス生成される ASAP2 データ インターフェイス
エクスターナル モード生成されるエクスターナル モードのデータ インターフェイス
トランスポート層エクスターナル モード通信のトランスポート プロトコル
MEX ファイルの引数エクスターナル モードのインターフェイス MEX ファイルに渡す引数
静的なメモリ割り当てエクスターナル モード通信の動的または静的メモリ割り当て
静的なメモリ バッファー サイズエクスターナル モード通信用の静的メモリ バッファーのサイズ
静的メモリの自動割り当てエクスターナル モード通信の自動の静的メモリ バッファー割り当て (R2022b 以降)
最大持続時間エクスターナル モードがトリガー イベント後のデータのログを作成する基本レート ステップの最大数 (R2022b 以降)
信号を MDF ファイルに記録Log signal and output data from generated code to MDF file (R2024a 以降)

深層学習

ターゲット ライブラリターゲット環境用にコード生成時に使用する深層学習ライブラリ (R2020b 以降)
学習可能なパラメーターの圧縮Compression type, specified as "none" or "bfloat16" (R2023b 以降)
ARM Compute Library のバージョンCompression type, specified as "none" or "bfloat16" (R2023b 以降)
ARM Compute Library のアーキテクチャターゲット ハードウェアでサポートされている ARM アーキテクチャ (R2020b 以降)
自動調整自動調整を有効にした、cuDNN ライブラリを使用するコード生成 (R2021a 以降)

詳細設定パラメーター

最大語長生成されるマルチワードの型定義の最大語長
動的サイズ文字列のバッファー サイズ (バイト)動的な string データ型をもつ信号のバッファーのサイズ
完全なファイル バナーの生成Include code generation information in file banner
1 つの出力/更新関数出力および更新関数用のコードを含む実行エントリポイント関数
MAT ファイルのログMAT ファイルに保存された、エクスポートされたデータ
固定小数点ワード サイズ チェックの生成を抑制Control generation of preprocessor directives that perform fixed-point word size checks (R2024a 以降)
等間隔指定に関する LUT オブジェクト構造体の順序Order of fields in structure generated for lookup table object with even spacing breakpoint specification
明示的な値の指定に関する LUT オブジェクト構造体の順序Order of fields in structure generated for lookup table object with explicit values breakpoint specification
動的サイズ文字列のバッファー サイズ (バイト)動的な string データ型をもつ信号のバッファーのサイズ
行優先コード生成の外部関数互換性多次元配列を使用するが配列のレイアウトを指定していない関数に対する診断アクション
slrealtime から派生するターゲットIndicates whether or not the currently selected target is derived from the slrealtime target (R2022b 以降)

トピック

コード生成のコンフィギュレーション セット

モデル コンフィギュレーション パラメーター: コード生成

コードのコメント

識別子

  • 生成される識別子の構成
    汎用リアルタイム (GRT) ターゲットおよびラピッド シミュレーション (RSim) ターゲットでは、コード ジェネレーターは生成コード内に変数と関数の識別子を自動的に作成します。
  • 予約キーワード
    コード ジェネレーターを使用して C または C++ コードを生成する場合、モデルには内部使用のために予約されているキーワードが含まれていてはなりません。

注目の例