最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

Function-Call Split

関数呼び出しラインを分割するためのジャンクションを提供する

  • ライブラリ:
  • Simulink / Ports & Subsystems

説明

Function-Call Split ブロックでは、1 つの関数呼び出しラインを分岐して、複数の Function-Call Subsystem または関数呼び出しモデルに接続することができます。

Function-Call Subsystem または関数呼び出しモデルのうち、点で印が付けられた Function-Call Split ブロックの出力端子に接続されたものは、他の出力端子に接続されたサブシステムまたはモデルより先に実行されます。この指定実行順序が、これらサブシステムまたはモデル間でのデータ依存性でサポートされない場合、Function-Call Split ブロックはエラーを返します。このエラーを防止するには、データ依存性ループに関係している Function-Call Subsystem のモデルで 1 つ以上の Inport ブロックで [Function-Call Subsystem 出力のフィードバック信号の入力をラッチする] パラメーターを有効にすることを検討してください。このオプションを選択すると、対応する関数呼び出しが遅延され、結果としてデータ依存性ループが解消されます。

モデルに Function-Call Split ブロックを組み込むには、次の診断を error に設定しなければなりません。([モデル コンフィギュレーション パラメーター]、[診断]、[接続性]、[無効な関数呼び出し接続]

モデルのメニュー オプション [情報表示]、[ブロック]、[ソートされた実行順序] を選択すると、所定の関数呼び出し信号の分岐点に接続された Function-Call Subsystem の実行順序が、ブロック上に表示されます。各サブシステムの実行順序の書式は、s:[B#] です。ここで、# は 0 ~ (所定の信号の分岐点に接続されたサブシステムまたはモデルの合計数 - 1) の範囲の値です。サブシステムは、この値に基づいて昇順に実行します。

Function-Call Split ブロックは信号ラベル伝播をサポートします。

次のモデルは、[Function-Call Subsystem 出力のフィードバック信号の入力をラッチする] パラメーターを適用して、Function-Call Split ブロックを使用して発生したデータ依存性エラーを回避する方法を示します。f1 サブシステム Inport ブロックでこのパラメーターを有効にすることにより、Function-Call Split ブロックは信号 b のデータ依存性を無視します。ブロックは、サブシステム f1 と g1 との間のデータ依存性のループを解消します。モデルは f1 を呼び出して g1 より必ず先に実行するという目的の動作を実現します。所定の実行ステップの場合、サブシステム f1 は前の実行ステップで計算された g1 の出力を使用します。

制限

Function-Call Split ブロックには、次の制限事項があります。

  • 所定の関数呼び出し信号に接続された Function-Call Subsystem とモデルはすべて、モデル階層の同じ非バーチャル層内に存在しなければならない。

  • 分岐された Function-Call Subsystem (またはモデル) とその子を関数呼び出しイニシエーターに直接接続することはできない。

  • 1 つの関数呼び出し信号に接続された Function-Call Subsystem とモデルは、複数のイニシエーターをもつことができない。

  • Function-Call Split ブロックの入力を複数の Function-Call 要素をもつ信号からの入力にすることはできない。

端子

入力

すべて展開する

Function-Call Generator ブロックまたは Stateflow® チャートは関数呼び出しイベントを提供できます。

出力

すべて展開する

Function-Call Subsystem または関数呼び出しモデルに接続された関数呼び出しライン。

パラメーター

すべて展開する

ブロックのアイコンの形状を選択します。

設定

特徴

四角形のブロックのアイコン。

円形

円形のブロックのアイコン。

プログラムでの使用

ブロック パラメーター: IconShape
: 文字ベクトル
: 'distinctive' | 'round'
既定の設定: 'distinctive'

関数呼び出し信号の出力端子の数を指定します。

設定

2

2 つの関数呼び出し出力端子。

整数

整数

プログラムでの使用

ブロック パラメーター: NumOutputPorts
: 文字ベクトル
: '2' | '<integer>'
既定の設定: '2'

関数呼び出しを最初に提供する端子を基準にして、関数呼び出し出力端子の順序を選択します。

設定

既定の設定

最上位の端子が最初に関数呼び出しを提供します。

反転

最下位の端子が最初に関数呼び出しを提供します。

プログラムでの使用

ブロック パラメーター: OutputPortLayout
: 文字ベクトル
: 'default' | 'reverse'
既定の設定: 'default'

ブロックの特性

データ型

double

直接フィードスルー

いいえ

多次元信号

いいえ

可変サイズの信号

いいえ

ゼロクロッシング検出

いいえ

拡張機能

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

R2010a で導入