ブロックプロパティの変更

コード生成のためのアトミック性、入出力データの種類とサイズ、入力時間依存性について学びます。

スーパーブロックのコードがどのように生成されるかは、いくつかの要因に影響されます。

  • アトミック性スーパーブロックがアトミックタグを持つ場合、生成されるコードは一般的によりシンプルになります。スーパーブロックが入力アクティベーションポートを持つ場合、それはアクティベーションの唯一のソースとして扱われます(スーパーブロックが常にアクティブなブロックを含む場合は常にアクティブなブロックによるアクティベーションも追加されます)。そして、もしスーパーブロックが入力アクティベーションポートを持っていない場合、そのアクティベーションは、そのスーパーブロックの通常の入力信号のアクティベーションの集合として継承されます。スーパーブロックにアトミックを宣言しない場合、ブロックがアクティベーションされる方法のすべての可能な組み合わせを考慮することになりますが、ほとんどのコード生成アプリケーションでは、Atomicオプションが適切な選択肢です。スーパーブロックにアトミックタグを設定すると、シミュレーション中の動作にも影響するため、実際のコード生成の前にシミュレーションで選択肢を検証することができます。
  • 入出力ポートのデータタイプとサイズ。スーパーブロックの入出力ブロックのポートパラメータを使用して、対応する信号のデータタイプとサイズを設定することができます。この情報はコード生成にのみ使用されますが、コンパイラがモデル信号に適切なタイプを与えるために提供する必要がある場合があります。シミュレーションのための完全なモデルのコンパイルとは異なり、スーパーブロックのコンパイルは環境に関する情報を持たずに個別に行われるため、このようなコード生成のための追加情報が必要になる場合があります。その場合、スーパーブロック内のタイプ設定の制約では、入出力信号の種類とサイズを一意に決定するのに十分な制約が課せられない場合があります。
  • 入力時間依存性。データタイプおよびサイズについては、スーパーブロックに入る信号のアクティベーションプロパティを指定する必要がある場合があります。特に、入力信号が常にアクティブである場合、対応する入力ポートの 時間依存性 パラメータを設定する必要があります。

後者の2点は、スーパーブロックの環境を定義するためにユーザが提供する必要がある情報です。そのため、シミュレーションに使用する完全なモデルにおいて、実際の環境と整合性が取れていることが重要になります。

アトミックスーパーブロックの作成

スーパーブロックをアトミックにするには、ブロックを右クリックし、コンテキストメニューから Atomic選択します。