• 検索結果がありません。

2. 概念

2.7 S/R 連携

2.7.4 S/R 連携の操作

表 2-9 受信キューの遷移

受信キューの遷移 説明

データ送信 送信側ポートからデータが送信された.

・ 2.7.4.1イベントセマンティックスのデータ送信の挙動に示す処理を行う.

受信データ取得 受信側ポートでデータを取得した.

・ 2.7.4.3イベントセマンティックスの受信データ取得の挙動に示す処理を

行う.

表 2-10 受信キューの状態遷移表

遷移

受信キューの状態 データ送信 受信データ取得

キュー空状態 (初期状態) キューイング状態 キュー空状態 キューイング状態

[キューが満たされていない]

キューイング状態

[キューが満たされている]

キューあふれ状態

[キューに1つのデータがキューイ

ングされている]

キュー空状態

[キューに2つ以上のデータがキュ

ーイングされている]

キューイング状態 キューあふれ状態 キューあふれ状態 キューイング状態

2.7.4 S/R連携の操作

(1) RTEは,データ送信時に指定された値を受信側ポートに伝搬する.

(2) 受信側ポートにおいてフィルタが有効である場合,規定のアルゴリズムに従い値のフィルタを 実施する.フィルタ対象となった場合,(3)以降を実施しない.

(3) 受信側ポートにおいて伝搬が完了すると,受信データセットを伝搬された値に設定する

【rte_sws_2520】.そして,受信データセットの状態を「正常状態」に移行する.

イベントセマンティックスのデータ送信の挙動

Rte_Sendによりデータ送信が開始された場合の挙動は以下の通りである【nrte_sws_0068】.RTE

は,各受信側ポートへの値の伝搬を独立して行うため,以下の手順を受信側ポート毎に並行して実施 する.

(1) RTEは,データ送信時に指定された値を受信側ポートに伝搬する.

(2) 受信側ポートにおいて伝搬が完了すると,以下の方法で受信への値のキューイングを行う.

キューが満たされていない場合,値をキューの最後に追加し,受信キューの状態を「キューイ ング状態」に移行する.

キューが満たされている場合,値を破棄し,受信キューの状態を「キューあふれ状態」に移行 する【rte_sws_2523】.

データ送信時に検出したエラーの影響

ある受信側ポートへの値の送信中に検出したエラーが,他の受信側ポートへの値の伝搬に影響を与 えないことを保証する【rte_sws_1082】.

受信側ポートへの値の伝搬順序

複数の受信側ポートが存在する場合,どの受信側ポートから順に値の伝搬を開始するかの順序は実 装定義とする【nrte_sws_0020】.

受信側ポートへの値の伝搬の同期性

RTEは,全受信側ポートへ値が同時に伝搬されることを保証しない【rte_sws_a_0020】.また受信 側ポートへ値が伝搬される順番についても保証しない【nrte_sws_0021】.

2.7.4.2 データ無効化

RTEは,データ要素毎に,データ無効化のためのAPI(Rte_Invalidate)を提供する.送信側SW-Cは,

提供されたAPIを使用することができる.

データ無効化の挙動 (無効値受信時処理keepの場合)

無効値受信時処理keepの場合に,Rte_Invalidateによりデータ無効化が開始された際の挙動は以下 の通りである【nrte_sws_0069】.RTEは,各受信側ポートへの無効値の伝搬を独立して行うため,以 下の手順を受信側ポート毎に並行して実施する.

(1) RTEは,送信側ポートの無効値を受信側ポートに伝搬する.

(2) 受信側ポートにおいて伝搬が完了すると,受信データセットを無効値に設定し,受信データ セットの状態を「無効化状態」に移行する.

無効値受信時処理keepの場合,データのフィルタ処理は実施しない【nrte_sws_0070】.

データ無効化の挙動 (無効値受信時処理replaceの場合)

無効値受信時処理replaceの場合に,Rte_Invalidateによりデータ無効化が開始された際の挙動は以 下の通りである【nrte_sws_0071】.RTEは,各受信側ポートへの無効値の伝搬を独立して行うため,

以下の手順を受信側ポート毎に並行して実施する.

(1) RTEは,送信側ポートの無効値を受信側ポートに伝搬する.

(2) 受信側ポートで伝搬が開始すると,伝搬される値を初期値に置き換える.

(3) 受信側ポートにおいてフィルタが有効である場合,規定のアルゴリズムに従い値のフィルタ を実施する.フィルタ対象となった場合,(4)以降を実施しない.

(4) 受信側ポートにおいて置き換え後の値を受信データセットに設定し,その受信データセット の状態を「正常状態」に移行する.

受信側ポートへの無効値の伝搬順序

複数の受信側ポートが存在する場合,どの受信側ポートから順に値の伝搬を開始するかの順序は実 装定義とする【nrte_sws_0022】.

受信側ポートへの無効値の伝搬の同期性

RTEは,全受信側ポートへ無効値が同時に伝搬されることを保証しない【rte_sws_a_0021】.また 受信側ポートへ無効値が伝搬される順番についても保証しない【nrte_sws_0023】.

2.7.4.3 受信データ取得

RTEは,データ要素毎に,受信データ取得のためのAPI(データセマンティックスの場合,

Rte_Read,イベントセマンティックスの場合,Rte_Receive)を提供する【rte_sws_6011】. 受信側

SW-Cは,提供されたAPIを使用することができる.

データセマンティックスの受信データ取得の挙動

Rte_Readにより受信データ取得が開始された場合,受信データセットの値をAPIのOUT引数に設

定する【rte_sws_2518】.受信側データセットの状態をAPIの返り値として受信側SW-Cに返す

〔rte_sws_1093〕〔rte_sws_2626〕〔rte_sws_2703〕〔rte_sws_7690〕.

イベントセマンティックスの受信データ取得の挙動

Rte_Receiveにより受信データ取得が開始された場合の挙動は以下の通りである【nrte_sws_0073】.

(1) 受信キューの状態が「キューイング状態」の場合,受信キューから値を取り出し,取り出した値

をOUT引数に設定する.受信キューの状態をAPIの返り値として返す.

(2) 受信キューの状態が「キュー空状態」の場合,受信キューの状態をAPIの返り値として返す

【rte_sws_2525】.

(3) 受信キューの状態が「キューあふれ状態」の場合,受信キューから値を取り出し,取り出した値 をOUT引数に設定する.受信キューの状態を「キューイング状態」に移行する【rte_sws_2524】.

「キューあふれ状態」をAPIの返り値として返す.

2.7.4.4 データのタイムアウト

一定時間のデータ受信がないことによるタイムアウトの挙動

データのタイムアウト監視が有効であり,ECU間連携である場合,RTEは,前回データを受信して からタイムアウト時間が経過したことを検出した際に,受信データセットの値をCOMにより提供され た値に設定し,受信側データセットの状態を「タイムアウト状態」に移行する【rte_sws_5022】.

パーティションの停止/再起動にともなうタイムアウトの挙動

データのタイムアウト監視が有効であり,パーティション間連携である場合,送信側パーティショ ンが停止されたらすぐに受信側にタイムアウトを通知し,受信データセットの状態を「タイムアウト状 態」に移行する【rte_sws_2710】.

2.7.5 S/R連携の実現方式