このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
内部データのゼロ初期化を削除
ブロック状態やブロック出力などの内部の作業構造体の初期化コードをゼロとして生成することを制御する
モデル コンフィギュレーション ペイン: [コード生成] / [最適化]
説明
[内部データのゼロ初期化を削除] パラメーターは、ブロック状態やブロック出力などの内部の作業構造体の初期化コードをゼロとして生成するかどうかを指定します。
このパラメーターは、カスタム ストレージ クラス デザイナーを使用して作成された TLC ベースのストレージ クラスにマッピングする内部の作業構造体には適用されません。
設定
on | off- オン
内部の作業構造体をゼロに初期化するコードを生成しません。
起動時に、規格に準拠した C および C++ コンパイラは、グローバル データをゼロに初期化するため、このデータのゼロ初期化コードを生成コードに含める必要はありません。規格に準拠したコンパイラは、動的に割り当てられたデータおよびローカル変数を必ずしもゼロに初期化するわけではありません。[内部データのゼロ初期化を削除] パラメーターを選択したままにする前に、モデルが次の条件を満たすことを確認してください。
コンパイラが規格に準拠したものでない場合、グローバル データがゼロに初期化されることを確認します。
[コード インターフェイスのパッケージ化] を
[再利用可能な関数]に設定している場合、データが静的に割り当てられているか、動的に割り当てられたデータがゼロに初期化されることを確認します。
このパラメーターを選択した場合でも、生成コードはInitialize Functionブロックで指定したデータを初期化します。
- オフ
内部の作業構造体をゼロに初期化するコードを生成します。
生成コードは、データをInitialize Functionブロックで指定した場合を除き、インポートされたスコープをもつストレージ クラスのデータを初期化しません。
[コード インターフェイスのパッケージ化] パラメーターを [再利用できない関数] に設定した場合、既定では、[内部データのゼロ初期化を削除] チェック ボックスがオンになり、ZeroInternalMemoryAtStartup は off に設定されます。
[コード インターフェイスのパッケージ化] パラメーターを [再利用可能な関数] に設定した場合、既定では、[内部データのゼロ初期化を削除] チェック ボックスがオフになり、ZeroInternalMemoryAtStartup は on に設定されます。
[コード インターフェイスのパッケージ化] パラメーターを [C++ クラス] に設定した場合、[内部データのゼロ初期化を削除] チェック ボックスがオンになり、変更できません。ZeroInternalMemoryAtStartup は off に設定されます。
[コード インターフェイスのパッケージ化] パラメーターを [再利用可能な関数] に設定し、モデルの初期化に動的メモリ割り当てを使用パラメーターを選択した場合、パラメーターのチェック ボックスがオフになります (ZeroInternalMemoryAtStartup は on に設定されます)。
推奨設定
| アプリケーション | 設定 |
|---|---|
| デバッグ | 影響なし |
| トレーサビリティ | 影響なし |
| 効率性 | オン (GUI)、off (コマンド ライン)、(実行、ROM)、影響なし (RAM) |
| 安全対策 | 推奨なし |
プログラムでの使用
パラメーター: ZeroInternalMemoryAtStartup |
| 型: 文字ベクトル |
値: 'off' (UI 設定オン) | 'on' (UI 設定オフ) |
既定: 'off' |
バージョン履歴
R2007a で導入