バス・スケジューリング
コマンド、および、コントロール
1553Bバスに対して、複数の7221ターミナルが接続できます。 7221の通信は、7221バス・コントローラ(BC:Bus Controller)によって制御されます。 ターミナルの1つは、7221 BCとして指定する必要があります。 7221 BCは1553B BCから完全に独立しています。 7221 BCと1553B BCは、同じLRUに配置することも、異なるLRUに配置することもできます。 7221ターミナルは全てリモート・ターミナル(RT:Remote Terminal)です。 BC機能は指定されたターミナル上で動作する追加のサービスです。
7221 BCは、コマンド応答プロトコルを使用して時分割多元接続スケジュールを実行します。 スケジュールは各応答のタイミングと長さを指定します。 各応答のソースと宛先も指定します。応答には、ソース、または、宛先として任意のターミナルを指定できるので、 RT to RT通信を可能にします。このスケジュールによって、RT間の保証された最小帯域幅と待ち時間を提供します。
バス・スケジュール
バス・スケジュールは、転送されるメッセージのリストで構成され、可変数のマイナー周期にまとめられています。 マイナー周期は、msec単位で表される固定長の周期です。 すべてのマイナー周期はバス・コマンド・フレーム(BCF)で始まります。 スケジュール内のすべてのマイナー周期の合計がメジャー周期です。 BCは、スケジュールで指定されているように、連続した周期でコマンドのリストをブロードキャストします。 応答が必要なコマンドの場合、BCはすべての応答フレーム、ターミナル確認応答フレーム、および、次のマイナー・フレームまでの残り時間待ちます。 その後、BCは次のコマンドを続行します。 ターミナルがスケジュールどおりに応答しない場合、BCは指定された時刻に次のコマンドを続行します。 応答のないRTはスケジュールの進行を妨げません。下図に、スケジュール構造を示しています。
BCは複数のコマンドを1つのバス・コマンド・フレームにまとめることができます。 コマンド・フレーム、応答フレーム、および、確認応答フレームのシーケンスは、複合トランザクションと呼ばれます。 同期バス・コマンド・フレーム(SBCF)は、マイナー・フレームの開始を指定することを除いてバス・コマンド・フレームと同じです。
BCは各応答フレームの完了ステータスを監視します。 応答の送信が失敗した場合、BCはスケジュールに指定されているメッセージ処理オプションに応じて再送信を開始できます。
スケジュール構造のグラフィカル表現
各バス・コマンドは、どのRTが送信するのか、どのRTが意図された宛先なのか、 送信するバイト数、使用するバス、許容リトライ回数、および、使用するトーンマップを指定します。
複合トランザクション
効率を最大化するために、コマンド/レスポンス・イベントは複合トランザクションとしてまとめられています。 BCは1つのバス・コマンド・フレーム上に1つ以上の転送要求コマンドを入れることができます(要求コマンド数はユーザー設定可能で、XiCDTを使用して設定できます)。 このバス・コマンド・フレーム、応答、そして応答確認は、「複合トランザクション」と呼ばれます。
Edgewaterスケジュール作成ツール(XiCDT)を使用してスケジュールを作成するときに、 ユーザーは複合トランザクション・レベルでメッセージを指定する必要はありません。 ツール上で使用するメッセージ(定義済みVCメッセージ)を選択すれば、 そこに定義されているサイズ、周期、優先度から自動的にスケジュールが生成されます。 ただし、マイナー周期内のコマンド順序はユーザーが入れ換えることはできません。 生成されたスケジュールは、スラック時間とスケジュールの現実可能性が計算されます。 ツールはBCと同じルールを使用するため、計算されたスラック時間(余裕時間)は実際のバス時間を反映します。
7221は複合トランザクションを使用して、ターミナル間通信の制御、および、調整をします。 複合トランザクションは、次のメッセージ・コンポーネントから構成されています。
- BCからの一連のコマンドを含むバス・コマンド・フレーム(BCF/SBCF)
- 各コマンドに対するターミナル応答(データ、管理など)フレーム
- 各ターミナル応答フレームに対するターミナル確認応答フレーム(バス・コマンドで指定された場合)
- ガード・スロット(Guard Slot I、II、IIIは、7221規格に従いShort、Medium、Longとして割り当てられます。Short、Medium、Longのガード・スロットの長さはシンボル時間で指定され、ネットワーク・コンフィグレーション・パラメータの一部です)
下図に複合トランザクションの構造を示します。
複合トランザクション構成
ターミナル応答フレームは、対応するBCコマンドと同じ順序で送信ターミナルによって生成されます。
- ターミナル確認応答フレームは、指定されたときにターミナル応答(データ)フレームを受信したターミナルによって送信されます。
- 最初のターミナル確認応答フレームは、最後のターミナル応答フレームの後に送信されます。確認応答フレームは、応答フレームと同じ順序で送信されます。応答フレームに対して確認応答フレームが要求されなかった場合、次の応答確認フレームが代わりに送信されます。ギャップはありません。
- 失敗した応答フレームごとに、BCは後続の複合トランザクションにそのフレームのリトライ・コマンドを含めることを決定することがあります。
複合トランザクション
航空機環境では、飛行、および、安全性が重要な動作は信頼性が高く、確定的でなければなりません。 多くの現代的な技術は殆どの場合より効率的ですが、それは航空機では十分ではありません。 スケジューリングには、Edgewaterはすべてのデータ・フローをスケジュールに定義する必要がある固定周期スケジュールを使用します。 これは一部のデータ・フローが本来非周期的である場合には効率が低下する可能性がありますが、スケジュールされたすべてのデータ転送が確実に行われるようにします。
スケジュールを定義するときの最初の作業は、メッセージ・サイズと頻度の観点から、必要なすべてのデータ・フローを定義することです。 これはターミナル間のフローではなく、機能的なデータ・フローの観点から行われるべきです。
例えば、2つのターミナル間でビデオ・ストリーム、および、制御ストリームを有する場合、 2つのデータ・ストリームの特性、および、必要性が異なるので、2つのストリームを別々に定義する必要があります。 データ・フローが定義されると、マイナー周期の長さが決定されます。 通常マイナー周期は、システム内でもっとも頻度の高いデータ・フローと一致するように設定されます。 ただし、マイナー周期が短いほど、ネットワークの効率は低下します。 したがって、メッセージ・サイズを大きくすることで頻度が低くなるかどうかを確認するために、頻度の高いデータ・フローを再検討する必要があります。 最適なマイナー周期の長さはシステムに依存しますが、一般的に周期は40 msec~100 mscの範囲でなければなりません。 Edgewaterのバス・スケジューリング・ツールXiCDTを使用すると、最適なスケジュールを評価、および、設定するために、さまざまなメッセージの長さ、頻度、および、マイナー周期長さを入力できます。
管理メッセージ
データ応答フレームに加えて、バス・コマンド・フレームはMAC管理メッセージを指定することができます。 これらは、複合トランザクションでは応答として処理されるという点で、データ応答フレームと同じ方法で処理されます。 定義された管理メッセージは次のとおりです。
- Type 1トーンマップ
- Type 2トーンマップ
- ベンダー固有のメッセージ
ベンダー固有のメッセージとは、追加の機能、または、機能についてベンダーが定義できるメッセージです。 7221コンプライアンス・テスト中は、ベンダー固有のメッセージを使用してはいけません。 Edgewaterは現在ベンダー固有のメッセージを使用していません。
STANAG7221解説文書【日本語技術資料プレゼント】
STANAG7221通信規格の日本語解説書(計70ページ)をIPROSにて配布しており、ダウンロードいただけます。