Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

cgsl_0104: データ ストアを使用したグローバル共有メモリのモデル化

ID: タイトルcgsl_0104: データ ストアを使用したグローバル共有メモリのモデル化
説明データ ストア ブロックを使用して複数のモデルの共有メモリをモデル化する場合、以下に従ってください。
A

階層のモデルについて、コンフィギュレーション パラメーター [データ ストア名の重複][エラー] に設定する。

BSimulink® 信号または MPT 信号オブジェクトを使用してデータ ストアを定義する。
Cモデルに Data Store Memory ブロックを使用しない。
メモ:

モデル内の複数の Data Store ブロックが同じデータ ストア名を使用している場合、Simulink はデータ ストアの各インスタンスが一意のローカル スコープをもっていると解釈します。

意図せずに識別子を重複使用した場合は、[データ ストア名の重複] を使用して検出します。意図的にローカル データ ストアを使用しているモデルについては、診断を [警告] に設定します。意図的なデータ ストアのみが含まれていることを確認します。

相互排他的な方法で運用しているサブシステムと一緒に使用する Merge ブロックは、複数のモデルのグローバル データをモデル化する第二の方法を提供しています。

根拠A、B、Cすべてのモデルで 1 つの一貫したデータ ストアが使用され、生成コードで 1 つのグローバル インスタンスが作成されるモデル化パターンを促進する。
参考
最終更新R2011b

以下の例は、グローバル共有メモリとしてのデータ ストアの使用を示します。データ ストアはグローバル故障フラグをモデル化するために使用されます。フラグは複数の関数で設定して同じ実行ステップで使用できるため、データ ストアが必要です。

最上位モデルには 3 つのサブシステムが含まれ、それぞれがデータ ストア メモリを使用しています。データ ストアは信号データ オブジェクトを使用して定義されます。

推奨

この例では、Data Store Memory ブロックはありません。結果のコードは、完全なモデルの同じグローバル変数を使用します。

非推奨

この例では、Data Store Memory ブロックが Model ブロックのサブシステムに追加されます。モデルのサブシステムはデータ ストアのローカル バージョンを使用します。Atomic Subsystem は異なるバージョンを使用します。