IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ バイエリシエ・モトーレンウエルケ・アクチエンゲゼルシヤフトの特許一覧

<>
  • 特表-時刻同期の検証 図1
  • 特表-時刻同期の検証 図2
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-10-19
(54)【発明の名称】時刻同期の検証
(51)【国際特許分類】
   H04L 7/00 20060101AFI20231012BHJP
【FI】
H04L7/00 990
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023515640
(86)(22)【出願日】2020-10-12
(85)【翻訳文提出日】2023-03-08
(86)【国際出願番号】 EP2020078637
(87)【国際公開番号】W WO2022078571
(87)【国際公開日】2022-04-21
(81)【指定国・地域】
(71)【出願人】
【識別番号】398037767
【氏名又は名称】バイエリシエ・モトーレンウエルケ・アクチエンゲゼルシヤフト
(74)【代理人】
【識別番号】100069556
【弁理士】
【氏名又は名称】江崎 光史
(74)【代理人】
【識別番号】100111486
【弁理士】
【氏名又は名称】鍛冶澤 實
(74)【代理人】
【識別番号】100191835
【弁理士】
【氏名又は名称】中村 真介
(74)【代理人】
【識別番号】100221981
【弁理士】
【氏名又は名称】石田 大成
(74)【代理人】
【識別番号】100208258
【弁理士】
【氏名又は名称】鈴木 友子
(72)【発明者】
【氏名】レングスト・ヴォルフガング
(72)【発明者】
【氏名】アブデルハミード・モハメド-サード
(72)【発明者】
【氏名】ブドヴァイザー・カール
(72)【発明者】
【氏名】ビルラ・マンジート・シン
【テーマコード(参考)】
5K047
【Fターム(参考)】
5K047AA01
(57)【要約】
【課題】プライベートバスで接続されている複数コントローラにおける時刻同期の検証技術を提供する。
【解決手段】プライベートバス経由で互いに接続された少なくとも2つのコントローラの時刻同期を検証する方法が提供されていて、それら少なくとも2つのコントローラの1つはマスターコントローラであり、もう1つはスレーブコントローラである。この方法は、複数のサイクルを備える。各サイクルは、
マスターコントローラからスレーブコントローラに、マスターコントローラの予め定義されたピンのプルに応答してフォローアップメッセージを送信するステップであって、ここでは前記フォローアップメッセージには、予め定義されたピンの、プルがなされたときのマスターコントローラのグローバル時刻が含まれている、マスターコントローラからスレーブコントローラに送信するステップと、
スレーブコントローラからマスターコントローラに、受信したフォローアップメッセージに応答して検証メッセージを送信するステップであって、ここでは前記検証メッセージには、予め定義されたピンの、プルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻が含まれている、スレーブコントローラからマスターコントローラに送信するステップと、
予め定義されたピンのプルがなされたときのマスターコントローラのグローバル時刻と、
予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻と
の差が、予め定義された第1しきい値よりも小さいかどうかの検査により、マスターコントローラと、スレーブコントローラの少なくとも一方で時刻同期を検証するステップと
を備える。
【特許請求の範囲】
【請求項1】
プライベートバス(4)経由で互いに接続された少なくとも2つのコントローラの時刻同期を検証する方法であって、ここでは少なくとも2つのコントローラの1つはマスターコントローラ(2)であり、もう1つはスレーブコントローラ(3)であり、前記方法が複数のサイクルを備えていて、ここでは各サイクルは、
マスターコントローラ(2)からスレーブコントローラ(3)に、マスターコントローラ(2)の予め定義されたピンのプルに応答してフォローアップメッセージを送信するステップであって、ここでは前記フォローアップメッセージには、予め定義されたピンの、プルがなされたときのマスターコントローラ(2)のグローバル時刻(t’aM2)が含まれている、前記マスターコントローラ(2)からスレーブコントローラ(3)に送信するステップと、
スレーブコントローラ(3)からマスターコントローラ(2)に、受信したフォローアップメッセージに応答して検証メッセージを送信するステップであって、ここでは前記検証メッセージには、予め定義されたピンの、プルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)が含まれている、前記スレーブコントローラ(3)からマスターコントローラ(2)に送信するステップと、
予め定義されたピンのプルがなされたときのマスターコントローラ(2)のグローバル時刻(t’aM2)と、
予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)の差が、予め定義された第1しきい値よりも小さいかどうかの検査により、マスターコントローラ(2)と、スレーブコントローラ(3)の少なくとも一方で時刻同期を検証するステップと
を備える、プライベートバス(4)経由で互いに接続された少なくとも2つのコントローラの時刻同期を検証する方法。
【請求項2】
マスターコントローラ(2)で予め定義されたピンのプルがなされたときのマスターコントローラ(2)のグローバル時刻(taM2)を捕捉するステップを備え、
前記検証メッセージは、スレーブコントローラ(3)のローカルハードウェアカウンタ(cbs2)を備え、ここでは、ローカルハードウェアカウンタ(cbs2)は、予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)に相当していて、
時刻同期を検証するステップが、
予め定義されたピンのプルがなされたときにマスターコントローラ(2)によって捕捉されたグローバル時刻(taM2)と、以前のサイクルで予め定義されたピンのプルがなされたときにマスターコントローラ(2)によって捕捉されたグローバル時刻(taM1)との差と、
予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)に相当するローカルハードウェアカウンタ(cbs2)と、以前のサイクルで予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS1)に相当するローカルハードウェアカウンタ(cbS1)の差と
の差が予め定義された第2しきい値よりも小さいかどうかの検査をマスターコントローラ(2)にて備えることと、
時刻同期を検証するステップが、
フォローアップメッセージでスレーブコントローラ(3)が受信したマスターコントローラ(2)のグローバル時刻(t’aM2)と、以前のサイクル内のフォローアップメッセージでスレーブコントローラ(3)が受信したマスターコントローラ(2)のグローバル時刻(t’aM1)の差と、
予め定義されたピンのプルがスレーブコントローラ(3)によって検出されるときのスレーブコントローラ(3)のグローバル時刻(tbS2)に相当するローカルハードウェアカウンタ(Cbs2)と、以前のサイクル内でスレーブコントローラ(3)によって予め定義されたピンのプルが検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS1)に相当するローカルハードウェアカウンタ(cbs1)との差と、
の差が、予め定義された第2しきい値よりも小さいかどうかの検査をスレーブコントローラ(3)にて備えることと
の少なくとも一方である、請求項1に記載の方法。
【請求項3】
前記検証メッセージには、
予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)に相当するローカルハードウェアカウンタ(Cbs2)と、
前のサイクルでスレーブコントローラ(3)によって予め定義されたピンのプルが検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS1)に相当するローカルハードウェアカウンタ(Cbs1)と
の差が含まれている、請求項2に記載の方法。
【請求項4】
マスターコントローラ(2)は、マスターポートとスレーブポートとを備えて、マスターコントローラ(2)は、そのスレーブポート経由でさらなるバスに接続されていて、スレーブポートとマスターポートは、それぞれ独自のクロックを備えていて、
前記方法が、
マスターコントローラ(2)のスレーブポート(21)のクロックのグローバル時刻と、さらなるバスのグローバル時刻とを同期するステップと、
マスターコントローラ(2)のマスターポート(22)のクロックのグローバル時刻と、そのマスターコントローラ(2)のスレーブポート(21)のクロックのグローバル時刻とを同期するステップと、
マスターコントローラ(2)において、予め定義されたピンのプルがなされたときのスレーブポート(21)のグローバル時刻(taS2)を捕捉するステップとを備え、
ここでは前記時刻同期を検証するステップが、
マスターコントローラ(2)がマスターポートで捕捉した、予め定義したピンのプルがなされたときのマスターコントローラ(2)のマスターポート(22)のグローバル時刻(taM2)と、
マスターコントローラ(2)がスレーブポート(21)で捕捉した、予め定義したピンのプルがなされたときのマスターコントローラ(2)のスレーブポート(21)のグローバル時刻(taS2)と
の差が予め定義された第3しきい値よりも小さいかどうかの検査を前記マスターコントローラ(2)にて備える、請求項2又は3に記載の方法。
【請求項5】
予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbs2)及びローカルハードウェアカウンタ(cbS2)を捕捉した後、スレーブコントローラ(3)のグローバル時刻を、フォローアップメッセージに含まれているマスターコントローラ(2)のグローバル時刻(t’aM2)に更新するステップを備える、請求項2から4のいずれか一項に記載の方法。
【請求項6】
前記検証メッセージは、マスターコントローラ(2)からスレーブコントローラ(3)にフォローアップメッセージ内にて送信されたグローバル時刻(t’aM2)を備えて、
時刻同期を検証するステップが、
予め定義されたピンのプルがなされたときのマスターコントローラ(2)によって捕捉されたグローバル時刻(taM2)と、
検証メッセージに含まれるグローバル時刻(t’aM2)と
の差が、予め定義された第4しきい値よりも小さいかどうかをマスターコントローラ(2)で検査するステップを備える、請求項2から5のいずれか一項に記載の方法。
【請求項7】
プライベートバス経由でスレーブコントローラ(3)に接続されるように構成されているマスターコントローラ(2)であって、
前記マスターコントローラ(2)が、
マスターコントローラ(2)の予め定義されたピンのプルに応答してプライベートバス経由でスレーブコントローラ(3)にフォローアップメッセージを送信するように、さらに構成されていて、ここでは前記フォローアップメッセージは、予め定義されたピンのプルがなされたときのマスターコントローラ(2)のグローバル時刻(t’aM2)を備え、
前記マスターコントローラ(2)が、
送信されたフォローアップメッセージに応答してプライベートバス経由で前記スレーブコントローラ(3)から検証メッセージを受信するように構成されていて、ここでは前記検証メッセージは、予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)を備え、
前記マスターコントローラ(2)が、
予め定義されたピンのプルがなされたときのマスターコントローラ(2)のグローバル時刻(t’aM2)と、
予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)と
の差が、予め定義された第1しきい値よりも小さいかどうかの検査によって、スレーブコントローラ(3)のグローバル時刻とマスターコントローラ(2)のグローバル時刻の時刻同期を検証するように、さらに構成されている、
マスターコントローラ(2)。
【請求項8】
前記検証メッセージは、スレーブコントローラ(3)のローカルハードウェアカウンタ(cbs2)を備え、ここでは、ローカルハードウェアカウンタ(cbs2)は、予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)に相当していて、
前記マスターコントローラ(2)は、予め定義されたピンのプルがなされたときにマスターコントローラ(2)のグローバル時刻(taM2)を捕捉するように構成されていて、
マスターコントローラ(2)は、
予め定義されたピンのプルがなされたときにマスターコントローラ(2)によって捕捉されたグローバル時刻(taM2)と、以前のサイクル内で予め定義されたピンのプルがなされたときにマスターコントローラ(2)によって捕捉されたグローバル時刻(taM1)との差と、
予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)に相当するローカルハードウェアカウンタ(cbS2)と、以前のサイクル内で予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)に相当するローカルハードウェアカウンタ(cbS1)との差と
の差が、予め定義された第2しきい値よりも小さいかどうかの検査によって、スレーブコントローラ(3)のグローバル時刻とマスターコントローラ(2)のグローバル時刻の時刻同期を検証するように構成されていて、
選択的に、前記検証メッセージは、予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)に相当するローカルハードウェアカウンタ(cbS2)と、以前のサイクル内でスレーブコントローラ(3)によって予め定義されたピンのプルが検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)に相当するローカルハードウェアカウンタ(cbS1)との差を備える、
請求項7に記載のマスターコントローラ(2)。
【請求項9】
前記マスターコントローラ(2)が、
-マスターポート(22)及びスレーブポート(21)を備え、スレーブポート(21)及びマスターポート(22)それぞれがクロックを備え、
-スレーブポート(21)経由でさらなるバスに接続されていて、
-スレーブポート(21)のクロックのグローバル時刻をさらなるバスのグローバル時刻に同期するように構成されていて、
-マスターポート(22)のクロックのグローバル時刻をマスターコントローラ(2)のスレーブポート(21)のクロックのグローバル時刻に同期するように構成されていて、
-予め定義されたピンのプルがなされたときのスレーブポート(21)のグローバル時刻(taS2)を捕捉するものであり、
-予め定義されたピンのプルがなされたときのマスターポート(22)のクロックのグローバル時刻(taM2)と、
予め定義されたピンのプルがなされたときのスレーブポート(21)のクロックのグローバル時刻(tas2)と
の差が、予め定義された第3しきい値よりも小さいかどうかの検査によって、マスターコントローラ(2)のグローバル時刻の時刻同期を検証するように構成されている、請求項7又は8に記載のマスターコントローラ(2)。
【請求項10】
プライベートバス経由でマスターコントローラ(2)に接続されるように構成されている、スレーブコントローラ(3)であって、前記スレーブコントローラ(3)は、
-マスターコントローラ(2)の予め定義されたピンのプルに応答して、プライベートバス経由で前記マスターコントローラ(2)からフォローアップメッセージを受信するように構成されていて、ここではフォローアップメッセージには、予め定義されたピンのプルがなされたときのマスターコントローラ(2)のグローバル時刻(t’aM2)が含まれていて、
-マスターコントローラ(2)の予め定義されたピンのプルを検出し、予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)を捕捉するように構成されていて、
-フォローアップメッセージに含まれるマスターコントローラ(2)のグローバル時刻(t’aM2)と、
予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときにスレーブコントローラ(3)によって捕捉されたグローバル時刻(tbS2)と
の差が予め定義された第1しきい値より小さいかどうかの検査によって、時刻同期を検証するように構成されている、スレーブコントローラ(3)。
【請求項11】
前記スレーブコントローラ(3)が、
-受信したフォローアップメッセージに応答して、プライベートバス経由でマスターコントローラ(2)に検証メッセージを送信し、ここでは前記検証メッセージには、予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)が含まれていて、これにより、マスターコントローラ(2)は、
予め定義されたピンのプルがなされたときのマスターコントローラ(2)のグローバル時刻(t’aM2)と、
予め定義されたピンのプルがスレーブコントローラ(3)によって検出されるときのスレーブコントローラ(3)のグローバル時刻(tbS2)と
の差が予め定義された第1しきい値よりも小さいかどうかの検査の検査によってマスターコントローラ(2)で時刻同期を検証可能である、請求項10に記載のスレーブコントローラ(3)。
【請求項12】
前記スレーブコントローラ(3)は、
-スレーブコントローラ(3)のローカルハードウェアカウンタ(cbS2)を捕捉し、前記ローカルハードウェアカウンタ(cbS2)は、予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)に相当していて、
-フォローアップメッセージに含まれるマスターコントローラ(2)のグローバル時刻(t’aM2)と、以前のサイクル内のフォローアップメッセージに含まれるマスターコントローラ(2)のグローバル時刻(t’aM1)の差と、
-予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)に相当するローカルハードウェアカウンタ(cbS2)と、以前のサイクル内で予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS1)に相当するローカルハードウェアカウンタ(cbS1)との差と
の差が、予め定義された第2しきい値よりも小さいかどうかの検査の検査によって、スレーブコントローラ(3)のグローバル時刻とマスターコントローラ(2)のグローバル時刻の時刻同期を検証する
ように構成されている、請求項10又は11に記載のスレーブコントローラ(3)。
【請求項13】
前記スレーブコントローラ(3)は、スレーブコントローラ(3)のローカルハードウェアカウンタ(cbS2)とフォローアップメッセージに含まれるマスターコントローラ(2)のグローバル時刻(t’aM2)を含む検証メッセージを送信するように構成されていて、これにより、マスターコントローラ(2)は、
-検証メッセージに含まれるマスターコントローラ(2)のグローバル時刻(t’aM2)と、以前のサイクル内で検証メッセージに含まれるマスターコントローラ(2)のグローバル時刻(t’aM1)の差と、
-予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS2)に相当するローカルハードウェアカウンタ(cbS2)と、以前のサイクル内で予め定義されたピンのプルがスレーブコントローラ(3)によって検出されたときのスレーブコントローラ(3)のグローバル時刻(tbS1)に相当するローカルハードウェアカウンタ(cbS1)との差と
の差が予め定義された第2しきい値よりも小さいかどうかの検査によって、スレーブコントローラ(3)のグローバル時刻とマスターコントローラ(2)のグローバル時刻の時刻同期を検証可能である、
請求項12に記載のスレーブコントローラ(3)。
【請求項14】
前記スレーブコントローラ(3)は、ローカルハードウェアカウンタ(cbS2)とスレーブコントローラ(3)のグローバル時刻(tbS2)を捕捉した後、スレーブコントローラ(3)のグローバル時刻をフォローアップメッセージに含まれるマスターコントローラ(2)のグローバル時刻(t’aM2)に更新するように構成されている、請求項10から13のいずれか一項に記載のスレーブコントローラ(3)。
【請求項15】
請求項7から9のいずれか一項に記載のマスターコントローラ(2)と、
請求項10から14のいずれか一項に記載のスレーブコントローラ(3)と、
前記マスターコントローラ(2)と前記スレーブコントローラ(3)とを相互に接続するプライベート通信バス(4)と
を備える、通信ネットワークにおいて、
前記プライベート通信バス(4)が、マスターコントローラ(2)の予め定義されたピンとスレーブコントローラ(3)間の接続を備えている、前記通信ネットワーク。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プライベートバス経由で互いに接続された少なくとも2つのコントローラの時刻同期の検証方法と、プライベートバス経由でスレーブコントローラに接続され、少なくとも部分的に前述の検証方法を実行するように構成されたマスターコントローラと、プライベートバス経由でマスターコントローラに接続され、少なくとも部分的に前述の検証方法を実行するように構成されたスレーブコントローラと、前述のマスターコントローラ及びスレーブコントローラを備える通信ネットワークと、前述の通信ネットワークを備える車両、例えば自動車とを対象としている。
【背景技術】
【0002】
自律運転車や自動運転車の複雑さが増すにつれて、さまざまな電子制御ユニット(ECU)によって、自律運転又は自動運転機能が安全要件、例えば、いわゆる自動車安全度水準(ASIL)を満たすのに必要な要件を確実に満たすべく、複数の通信バスが使用される。
【0003】
自動車安全度水準(ASIL)は、ISO 26262「道路車両の機能安全」により定義されているリスク分類スキームである。ASIL分類は、安全要件が最も低いQMから、安全要件が最も高いASIL Dまで、5つの安全水準(レベル)で構成されている。
【0004】
自動運転機能の重要な意思決定に関与する全ての関連コントローラは、他のコントローラに従って同期された時間を持つ必要がある。例えばSAEレベル3又はレベル4以上の車両(SAE J3016規格には、自動運転システムを搭載した道路走行車両の用語の分類と定義が説明されている)の高度に自動化された車両の時刻同期は、ASIL Dを満たす必要がある。
【0005】
最先端の技術では、イーサネットバスの時刻同期は、TSN(時間に敏感なネットワーク)用にはIEEE 802.IASが、PTP(高精度時間プロトコル)に関してはIEEE 1588に従って行われる。しかしながら、PTPを介した時刻同期には、同期プロセスの整合性、したがって分散タイムベースの整合性を確保できるように、それぞれの標準に加えて採用され得る対策がいくつも存在する。
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、コントローラがプライベートバスシステム(例えば、PCI Express、CAN-FD、MIPI、SERDES、SPIなど)によって相互に接続されている場合、時刻同期のPTP実装は使用できない。この技術水準に照らして、本発明の課題は、プライベートバス経由で互いに接続された少なくとも2つのコントローラの時刻同期の検証の解決手段の提供である。ここでは、予め定義された安全度水準(例えば、ASIL B以上)が満たされていることが確保される。
【課題を解決するための手段】
【0007】
この課題は、独立請求項の(複数の)特徴によって解決される。従属請求項には、本発明の好ましいさらなる発展が含まれている。
【0008】
より具体的には、上記の目的は、プライベートバス経由で互いに接続された少なくとも2つのコントローラの時刻同期を検証する方法によって解決される。ここでは、それら少なくとも2つのコントローラの1つはマスターコントローラであり、もう1つはスレーブコントローラである。
【0009】
この方法は、複数のサイクルを備える。各サイクルには、マスターコントローラからスレーブコントローラに、マスターコントローラの予め定義されたピンのプルに応答してフォローアップメッセージを送信することが含まれている。ここでは、フォローアップメッセージには、予め定義されたピンの、プルがなされたときのマスターコントローラのグローバル時刻が含まれている。
【0010】
各サイクルは、さらに、スレーブコントローラからマスターコントローラに、受信したフォローアップメッセージに応答して検証メッセージを送信することを備える。ここでは、その検証メッセージには、予め定義されたピンの、プルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻が含まれる。
【0011】
(最初すなわち第1サイクルを除く)各サイクルは、次の検査による、マスターコントローラと、スレーブコントローラの少なくとも一方で時刻同期の検証をさらに備える。その検査とは、予め定義されたピンのプルがなされたときのマスターコントローラのグローバル時刻と、予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻の差が、予め定義された第1しきい値よりも小さいかどうかの検査である。この実行の前提条件は、マスターコントローラで同期されたグローバル時刻が既に検証されていることである。
【0012】
この方法は、マスターコントローラで予め定義されたピンのプルがなされたときのマスターコントローラのグローバル時刻の捕捉を、備えてよい。検証メッセージは、スレーブコントローラのローカルハードウェアカウンタを含めてよい。ここでは、ローカルハードウェアカウンタは、予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻に、相当する。
【0013】
スレーブコントローラのローカルハードウェアカウンタは、マスターコントローラとスレーブコントローラとの少なくとも一方の次の検査の実行を可能にする、時間の第2ソースである。
【0014】
すなわち、時刻同期の検証は、マスターコントローラにて、次の検査をさらに備えてよい。その検査とは、
予め定義されたピンのプルがなされたときにマスターコントローラによって捕捉されたグローバル時刻と、以前のサイクルで予め定義されたピンのプルがなされたときにマスターコントローラによって捕捉されたグローバル時刻との差と、
予め定義されたピンのプルがなされたときのスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタと、以前のサイクルでスレーブコントローラによって検出されたスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタの差と
の差が予め定義された第2しきい値よりも小さいかどうかの検査である。 この検証は、この方法の最初すなわち第1サイクルでは実行されない。
【0015】
追加的又は代替的に、時刻同期の検証は、スレーブコントローラでの次の検査を備えてよい。その検査とは、
フォローアップメッセージでスレーブコントローラが受信したマスターコントローラのグローバル時刻と、以前のサイクル内のフォローアップメッセージでスレーブコントローラが受信したマスターコントローラのグローバル時刻の差と、
予め定義されたピンのプルがスレーブコントローラによって検出されるときのスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタと、以前のサイクル内でスレーブコントローラによって予め定義されたピンのプルが検出されたときのスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタとの差と、
の差が、予め定義された第2しきい値よりも小さいかどうかの検査である。
【0016】
検証メッセージには、予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタと、前のサイクルでスレーブコントローラによって予め定義されたピンのプルが検出されたときのスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタとの差が含まれてよい。つまり、検証メッセージには、ハードウェアカウンタ間の差分が既に入っているということであり、その差分はスレーブコントローラによって計算される。マスターコントローラは、さらなる(別の)バスに接続してよい。このさらなるバスをメインバスと呼んでもよい。
【0017】
マスターコントローラは、マスターポートとスレーブポートとを備えてよく、マスターコントローラは、そのスレーブポート経由でさらなるバスに接続される。スレーブポートとマスターポートは、それぞれ独自のクロックを備えてよい。
【0018】
この方法は、
マスターコントローラのスレーブポートのクロックのグローバル時刻と、さらなるバスのグローバル時刻との同期と、
好ましくはスレーブポートのクロックのグローバル時刻をさらなるバスのグローバル時刻に同期させた後に、そのマスターコントローラのマスターポートのクロックのグローバル時刻と、そのマスターコントローラのそのスレーブポートのクロックのグローバル時刻との同期と
を備えてよい。
【0019】
この方法は、マスターコントローラにおいて、予め定義されたピンのプルがなされたときのスレーブポートのグローバル時刻の捕捉をさらに備えてよい。これはまた、好ましくは、スレーブポートのクロックのグローバル時刻をさらなるバスのグローバル時刻に同期させた後に行う。
【0020】
以上のことから、マスターコントローラは以下の検査を実行可能である。すなわち、時刻同期の検証は、マスターコントローラでの次の検査を備えてよい。この検査とは、
マスターコントローラがマスターポートで捕捉したグローバル時刻、すなわち予め定義したピンのプルがなされたときのマスターコントローラのマスターポートのクロックのグローバル時刻と、
マスターコントローラがスレーブポートで捕捉したグローバル時刻、すなわち予め定義したピンのプルがなされたときのマスターコントローラのスレーブポートのクロックのグローバル時刻と
の差が予め定義された第3しきい値よりも小さいかどうかの検査である。
【0021】
この方法は、好ましくは、予め定義されたピンのプルがスレーブコントローラによって検出されたときにローカルハードウェアカウンタ及びスレーブコントローラのグローバル時刻を捕捉した後、スレーブコントローラのグローバル時刻を、フォローアップメッセージに含まれているマスターコントローラのグローバル時刻に更新することを備えてよい。
【0022】
検証メッセージには、マスターコントローラからスレーブコントローラにフォローアップメッセージ内にて送信されたグローバル時刻が含まれてよい。よって、時刻同期の検証には、
予め定義されたピンのプルがなされたときのマスターコントローラによって捕捉されたグローバル時刻と、
検証メッセージに含まれるグローバル時刻と
の差が、予め定義された第4しきい値よりも小さいかどうかをマスターコントローラで検査することが含まれ得る。
【0023】
さらに、マスターコントローラが提供される。ここでは、マスターコントローラは、プライベートバス経由でスレーブコントローラに接続されるように構成されている。
【0024】
マスターコントローラは、マスターコントローラの予め定義されたピンのプルに応答してプライベートバス経由でスレーブコントローラにフォローアップメッセージを送信し、ピンのプルがなされた時刻を記録する、すなわち捕捉するように、さらに構成されている。ここでは、フォローアップメッセージは、予め定義されたピンのプルがなされたときのマスターコントローラのグローバル時刻が含まれる。
【0025】
マスターコントローラは、送信されたフォローアップメッセージに応答してプライベートバス経由で前記スレーブコントローラから検証メッセージを受信するように構成されている。ここでは、検証メッセージは、予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻を含む。
【0026】
マスターコントローラはさらに、次の検査によって、スレーブコントローラのグローバル時刻とマスターコントローラのグローバル時刻の時刻同期を検証するように、さらに構成されている。その検査とは、
予め定義されたピンのプルがなされたときのマスターコントローラのグローバル時刻と、
予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻と
の差が、予め定義された第1しきい値よりも小さいかどうかである。
【0027】
検証メッセージは、時間の第2ソースとしてスレーブコントローラのローカルハードウェアカウンタを備えてよい。ここでは、ローカルハードウェアカウンタは、予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻に相当する。
【0028】
マスターコントローラは、予め定義されたピンのプルがなされたときにマスターコントローラのグローバル時刻を捕捉するように構成可能である。すなわち、マスターコントローラは少なくとも1つのクロックを備えてよく、このクロックの時刻は、予め定義されたピンのプルがなされたときにマスターコントローラによって捕捉される。
【0029】
マスターコントローラは、次の検査によって、スレーブコントローラのグローバル時刻とマスターコントローラのグローバル時刻の時刻同期を検証するように構成可能である。その検査とは、
予め定義されたピンのプルがなされたときにマスターコントローラによって捕捉されたグローバル時刻と、前のサイクルで予め定義されたピンのプルがなされたときにマスターコントローラによって捕捉されたグローバル時刻との差と、
予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタと、以前のサイクル内で予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタとの差と
の差が、予め定義された第2しきい値よりも小さいかどうかである。
【0030】
検証メッセージは、予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタと、以前のサイクル内でスレーブコントローラによって予め定義されたピンのプルが検出されたときのスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタとの差を備えてよい。
【0031】
マスターコントローラは、さらなるバスに接続して、マスターコントローラのグローバル時刻をさらなるバスのグローバル時刻に同期するように構成してよい。
【0032】
より具体的には、マスターコントローラは、マスターポート及びスレーブポートを備えてよい。ここでは、スレーブポート及びマスターポートそれぞれがクロックを備える。マスターコントローラは、そのスレーブポート経由で、例えば車両のメインバスの、さらなるバスに接続してよい。そしてマスターコントローラは、スレーブポートのクロックのグローバル時刻をさらなるバスのグローバル時刻に同期するように構成してよい。これは、PTPを使用して実行可能である。好ましくはその後、マスターコントローラは、マスターポートのクロックのグローバル時刻をマスターコントローラのスレーブポートのクロックのグローバル時刻に同期させ、予め定義されたピンのプルがなされたときのスレーブポートのグローバル時刻を捕捉する。
【0033】
マスターコントローラは、次の検査によって、スレーブポートのクロックのグローバル時刻とマスターポートのクロックのグローバル時刻の時刻同期を検証するように構成可能である。その検査とは、
そのマスターポートのクロックのグローバル時刻(好ましくは、予め定義されたピンのプルがなされたときに捕捉される)と、
そのスレーブポートのクロックのグローバル時刻(また、予め定義されたピンのプルがなされたときに好ましくは捕捉される)と
の差が、予め定義された第3しきい値よりも小さいかどうかの検査である。
【0034】
この検証により、マスターコントローラは内部クロック間の差が、ある許容範囲内にあるかどうかを検査できる。
【0035】
さらに、スレーブコントローラが提供され、ここで、スレーブコントローラは、プライベートバス経由でマスターコントローラに接続されるように構成されている。スレーブコントローラは、マスターコントローラの予め定義されたピンのプルに応答して、プライベートバス経由で前記マスターコントローラからフォローアップメッセージを受信するように構成される。ここではフォローアップメッセージには、予め定義されたピンのプルがなされたときのマスターコントローラのグローバル時刻が含まれる。
【0036】
スレーブコントローラはさらに、マスターコントローラの予め定義されたピンのプルを検出し、予め定義されたピンのプルがスレーブコントローラによって検出された場合にスレーブコントローラのグローバル時刻を捕捉するように構成されている。
【0037】
スレーブコントローラは、次の検査によって、時刻同期を検査することで検証するようにさらに構成されている。その検査とは、
フォローアップメッセージに含まれるマスターコントローラのグローバル時刻と、
予め定義されたピンのプルがスレーブコントローラによって検出されたときにスレーブコントローラによって捕捉されたグローバル時刻、すなわち、スレーブコントローラで予め定義されたピンのプルを検出したときのスレーブコントローラのクロックのグローバル時刻と
の差が予め定義された第1しきい値より小さいかどうかの検査である。
【0038】
スレーブコントローラは、受信したフォローアップメッセージに応答して、プライベートバス経由でマスターコントローラに検証メッセージを送信するように構成可能である。
【0039】
検証メッセージには、予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻が含まれてよい。これにより、マスターコントローラは、次の検査によってマスターコントローラで時刻同期を検証可能である。その検査とは、
予め定義されたピンのプルがなされたときのマスターコントローラのグローバル時刻と、
予め定義されたピンのプルがスレーブコントローラによって検出されるときのスレーブコントローラのグローバル時刻と
の差が予め定義された第1しきい値よりも小さいかどうかの検査である。検証メッセージには、フォローアップメッセージに含まれるマスターコントローラのグローバル時刻も含まれてよい。
【0040】
スレーブコントローラは、スレーブコントローラのローカルハードウェアカウンタを捕捉するように構成してよい。ここでは、ローカルハードウェアカウンタは、予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻に相当する。
【0041】
スレーブコントローラは、次の検査によって、スレーブコントローラのグローバル時刻とマスターコントローラのグローバル時刻の時刻同期を検証するように構成してよい。その検査とは、
フォローアップメッセージに含まれるマスターコントローラのグローバル時刻と、以前のあるサイクル内のフォローアップメッセージに含まれるマスターコントローラのグローバル時刻の差と、
予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタと、以前のあるサイクル内で予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタとの差と
の差が、予め定義された第2しきい値よりも小さいかどうかの検査である。
【0042】
スレーブコントローラは、スレーブコントローラのローカルハードウェアカウンタとフォローアップメッセージに含まれるマスターコントローラのグローバル時刻を含む検証メッセージを送信するように構成可能である。これにより、マスターコントローラは、次の検査によって、スレーブコントローラのグローバル時刻とマスターコントローラのグローバル時刻の時刻同期を検証可能である。その検査とは、
検証メッセージに含まれるマスターコントローラのグローバル時刻と、以前のサイクル内で検証メッセージに含まれるマスターコントローラのグローバル時刻の差と、
スレーブコントローラによって予め定義されたピンのプルが検出された場合のスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタと、以前のサイクル内で予め定義されたピンのプルがスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタとの差と
の差が予め定義された第2しきい値よりも小さいかどうかの検査である。両方のローカルハードウェアカウンタを検証メッセージに含められる。また、2つのローカルハードウェアカウンタの差のみが検証メッセージに含まれているようにしてもよい。
【0043】
スレーブコントローラは、ローカルハードウェアカウンタとスレーブコントローラのグローバル時刻を捕捉した後、スレーブコントローラによって予め定義されたピンのプルが検出されたときに、スレーブコントローラのグローバル時刻をフォローアップメッセージに含まれるマスターコントローラのグローバル時刻に更新するように構成可能である。
【0044】
さらに、通信ネットワークが提供される。ここでは、通信ネットワークは、上述したマスターコントローラと、上述したスレーブコントローラと、マスターコントローラとスレーブコントローラとを相互に接続するプライベート通信バスとを備えてよい。プライベート通信バスは、マスターコントローラの予め定義されたピンとスレーブコントローラ間の接続で構成できる。通信ネットワークは、マスターコントローラに接続されたさらなる通信バスを備えてよい。ここで、マスターコントローラは、そのグローバル時刻をさらなるバスのグローバル時刻に同期するように構成されている。
【0045】
さらに車両、例えば自動車を提供可能である。ここでは、この車両は上述の通信ネットワークを備える。
【0046】
要するに、本発明の基本原理は、コントローラの時間同期のためにPTPをエミュレートすることである。
【0047】
ASIL B又はASIL Dに準拠した時刻同期の検証は、さまざまな安全機構によって確保できる。例えばマイクロコントローラといったコントローラは、1つ又はそれより多いスレーブコントローラを備えたマスターコントローラに分割してよい。ここでは、マスターコントローラは標準時刻同期を可能にする任意の通信バス(例えば、イーサネット(登録商標)、Flexray(FlexRay、登録商標)、CAN-FD)に接続される。マスターコントローラのみが追加のバス、すなわちメインバスに接続されているため、マスターコントローラとスレーブコントローラはプライベートネットワーク、すなわち自己完結型ネットワークの一部である。
【0048】
マスターコントローラは、1つの時刻表現のみを持つものとしてもよく、もしくは時刻同期スレーブポートと複数の時刻同期マスターポートを備えるものとしてもよい。
【0049】
マスターコントローラは、例えば、汎用入出力ピン(GPIO)の予め定義されたピンがマスターコントローラからプルがなされると、グローバル時刻を含むフォローアップメッセージを提供する。スレーブコントローラは、時刻同期スレーブポートのみを備えるものとしてよい。
【0050】
ピンのプルの組み合わせによる使用、もしくはエミュレートされたピンのプルを、フォローアップメッセージを備えた時刻同期機構と共にエミュレートされたピンのプルを、提供可能である。
【0051】
マスターコントローラでの、予め定義されたピンのプルがスレーブコントローラ側で検出された時点にできるだけ近い時点で、ローカルハードウェアカウンタの値とそれに関連するグローバル時刻を捕捉できる。
【0052】
スレーブコントローラでのグローバル時刻は、フォローアップメッセージによって受信された新しい値に基づいてスレーブコントローラでのグローバル時刻が更新される前に、捕捉される必要がある。このフォローアップは、すなわち、予め定義されたピンのプルに応答してマスター(コントローラ)からスレーブコントローラに送信されるフォローアップメッセージである。
【0053】
スレーブコントローラでハードウェアカウンタ及びグローバル時刻の捕捉後、時刻同期機構は、フォローアップメッセージを使用してスレーブコントローラでのグローバル時刻を更新可能である。
【0054】
時刻同期機構、すなわち、GPIOのプルとフォローアップメッセージと、ローカル ハードウェアカウンタを使用して、スレーブコントローラ側のシステム時刻を検証できる。
【0055】
この概念により、通信チャネルによって相互接続されていてよい異なる複数のコントローラ(そこでは、標準の同期及び検証機構を利用できない)が、それらの時刻を内部検証できるようになる。
【0056】
時刻検証では、一般的に使用される時刻同期用の1つのピン接続を、マスターとスレーブコントローラでそれぞれ時刻同期と時刻検証の間で共有できるため、マスターとスレーブコントローラ間の追加のピン(例えば、GPIO)接続は不要である。
【0057】
任意の2つの同期の間の期間に、検証メッセージ、すなわち受信したフォローアップメッセージに応答する検証メッセージを、スレーブコントローラからマスターコントローラに送信可能である。
【0058】
この検証メッセージには、2つの同期ポイント間のスレーブコントローラのハードウェアカウンタの差と、予め定義したのピンのプルが現在の通信サイクルに登録されたときに捕捉されたスレーブコントローラのグローバル時刻と、加えてフォローアップメッセージ内で受信されたグローバル時刻も含められる。
【0059】
マスターコントローラは、予め定義されたピンのプルがなされた時点に非常に近いフォローアップメッセージに書き込まれるグローバル時刻を捕捉可能である。
【0060】
安全性又は検証検査は、マスターコントローラとスレーブコントローラ両方でのリープ(LEAP)検出を含めるため、マスターコントローラとスレーブコントローラで実行可能である。スレーブ側では、予め定義されたピンのプルがなされた時点にスレーブコントローラで捕捉されたグローバル時刻と、フォローアップメッセージで受信したグローバル時刻との差は、予め定義された第1しきい値よりも小さくなければならない。
【0061】
マスター側では、フォローアップメッセージに書き込まれるグローバル時刻と、検証メッセージに含まれるスレーブ側で受信されたグローバル時刻の差は、予め定義された第1しきい値よりも小さくなければならない。
【0062】
以下では、本発明の一実施形態について、図1及び図2に関して説明する。
【図面の簡単な説明】
【0063】
図1図1は、プライベートバス経由で相互接続された少なくとも2つのコントローラの時刻同期の検証方法で使用される通信ネットワークを概略的に示す。
図2図2は、プライベートバス経由で互いに接続されている少なくとも2つのコントローラの時刻同期の検証方法のフローチャートを概略的に示す。
【発明を実施するための形態】
【0064】
図1からまとめると、通信ネットワーク1は、マスターコントローラ2と、スレーブコントローラ3と、マスターコントローラ2とスレーブコントローラ3とを相互接続するプライベート通信バス4とを備える。
【0065】
マスターコントローラ2は、別の、すなわちさらなる通信ネットワークの、マスターコントローラ5のマスターポート51に接続されているスレーブポート21を備える。マスターコントローラ2は、プライベート通信バス4経由でスレーブコントローラ3のスレーブポート31に接続されているマスターポート22をさらに備える。ここでは、これらのポート22、31は、図2に関して以下に詳述するマスターコントローラ2とスレーブコントローラ3との時刻同期に用いられる。
【0066】
さらなる通信ネットワーク、すなわちさらなる通信バス(例えば、イーサネット(登録商標)、Flexray(FlexRay、登録商標)、CAN-FD)は、標準時刻同期を可能にする。標準時刻同期とは、マスターコントローラ2のグローバル時刻が、さらなる通信バスのグローバル時刻に同期され、例えば、マスターコントローラ2においてスレーブポート21経由でさらなる通信ネットワークのマスターコントローラ51から同期時刻TASIを備える時刻同期メッセージを受信することによって、さらなる通信バスのグローバル時刻に同期されるような処理である。
【0067】
より具体的には、各マスターポート22及びスレーブポート21は独自のクロックを備える。スレーブポート21のクロックのグローバル時刻は、例えばPTPを使用して、さらなるバスのグローバル時刻に同期され、その後、マスターポート22のクロックのグローバル時刻が、スレーブポート21のクロックの同期されたグローバル時刻に同期される。
【0068】
前述の方法は、複数のサイクルを備える。ここでは、2つのサイクルが図2に示されている。各サイクルの開始は、マスターコントローラ2の予め定義されたピンのプル、ここではサイクリックGPIOのプルによって起動される。
【0069】
最初に、すなわちマスターコントローラ2のグローバル時刻をさらなるバスのグローバル時刻に同期させた後、マスターコントローラ2は、プライベート通信バス4経由でマスターコントローラ2の予め定義されたピンのプルに応じてフォローアップメッセージをスレーブコントローラ3のスレーブポート31に送信する。
【0070】
フォローアップメッセージは、マスターコントローラ2のグローバル時刻taM1、taM2、すなわち、方法の実際のサイクル中に予め定義されたピンのプルされた時刻を備える。
【0071】
スレーブコントローラ3で受信したフォローアップメッセージに応答して、スレーブコントローラ3は、そのスレーブポート31及び通信バス4経由でマスターコントローラ2に検証メッセージを送信する。
【0072】
検証メッセージには、予め定義されたピンのプルが実際の又は現在のサイクルでスレーブコントローラ3によって検出されたときのスレーブコントローラ3のグローバル時刻tbs1、tbs2が含まれている。マスターコントローラ3は、受信したグローバル時刻tbs1、tbs2を捕捉する、すなわち保存するように構成されている。検証メッセージには、前記スレーブコントローラ3のローカルハードウェアカウンタCbs1、Cbs2がさらに含まれている。ここではローカルハードウェアカウンタCbs1、Cbs2は、現在のサイクル内でスレーブコントローラ3によって予め定義されたピンのプルが検出されたときのスレーブコントローラ3のグローバル時刻tbs1、tbs2に相当する。
【0073】
そのため、スレーブコントローラ3は、予め定義されたピンのプルがスレーブコントローラ3によって検出された場合にローカルハードウェアカウンタCbs1、Cbs2とともにスレーブコントローラ3のグローバル時刻tbs1、tbs2を捕捉する。図2からまとめられるように、ハードウェアカウンタCbs1、Cbs2の各値は、それぞれのサイクルのスレーブコントローラ3のグローバル時刻tbs1、tbs2、すなわち同期時間に直接リンクされている。
【0074】
スレーブコントローラ3は、現在のサイクルにおいてスレーブコントローラ3により予め定義されたピンのプルが検出された場合のスレーブコントローラ3のグローバル時刻tbs2に相当するローカルハードウェアカウンタCbs2と、前回のスレーブコントローラ3により予め定義されたピンのプルが検出された場合のスレーブコントローラのグローバル時刻tbs1に相当するローカルハードウェアカウンタCbs1との差分を算出する。この差は、検証メッセージでスレーブコントローラ3からマスターコントローラ2に送られる。値tbs1、Cbs1は、前の同期サイクルで捕捉された値である。この方法の最初のサイクルではこの差を計算できないため(前のサイクルでスレーブコントローラ3によって予め定義されたピンのプルが検出されたときに、スレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタがないため)、この値は最初のサイクル中、すなわち、第1検証メッセージ内でゼロに設定される。
【0075】
これらの値tbs1、Cbs1、tbs2、Cbs2を捕捉後、スレーブコントローラ3は、更新、すなわち、そのグローバル時刻をグローバル時刻t’aM1、t’aM2がマスターコントローラ2から受信したフォローアップメッセージに同期させる。
【0076】
さらに、スレーブコントローラ3は、フォローアップメッセージにおいてマスターコントローラ2から受信した検証メッセージにグローバル時刻t’aM1、t’aM2を加算する。そのグローバル時刻は、スレーブコントローラ3のグローバル時刻が更新された時刻である。フォローアップメッセージから受信したグローバル時刻t’aM1、t’aM2をマスターコントローラ2に送り返すことは、通信経路上(例えば、プライベートバス4上での伝送の間のマスターコントローラ2の送信している通信スタックにて、スレーブコントローラ3の受信している通信スタックにて、スレーブコントローラ3の送信している通信スタックにて、マスターコントローラ2の受信している通信スタックにて、の少なくとも1か所)で値が改ざんされなかったことを確実にする。
【0077】
スレーブコントローラ3でのソフトウェア処理には時間がかかる(この遅延は図2のAtで示されている)ので、また、プログラムとハードウェアの処理には他の不確実性も存在するので、マスターコントローラ2とスレーブコントローラ3の時刻同期はASIL QM安全要件のみを満たす標準機構で処理される。すなわち、マスターコントローラ2とスレーブコントローラ3のグローバル時刻の差が特定の範囲内にあることを検証、すなわち確保しなければならない。これは、ASIL Dまでの安全要件で実行可能であろう。
【0078】
時刻同期の検証は、マスターコントローラ2及びスレーブコントローラ3において、次の検査を備える。その検査とは、
第2サイクル中に予め定義されたピンのプルがなされた場合のマスターコントローラ2のグローバル時刻t’aM2と、
第2サイクル中にスレーブコントローラ3によって予め定義されたピンのプルが検出されたときのスレーブコントローラのグローバル時刻tbs2
の差が、予め定義された第1しきい値よりも小さいかどうかの検査である。それゆえ、マスターコントローラ2は、フォローアップメッセージに含まれるグローバル時刻t’aM2と、スレーブコントローラ3からマスターコントローラ2に送信される検証メッセージ内のスレーブコントローラ3のグローバル時刻tbs2とを受信する。換言すると、スレーブコントローラ3は、検証メッセージ内でグローバル時刻t’aM2をマスターコントローラ2に送り返す。
【0079】
この検査は、マスターコントローラ2のグローバル時刻とスレーブコントローラ3のグローバル時刻が、例えば、ASIL Dといった、安全度要件を満たすように同期されていることを確かにするため、実行される。
【0080】
代替的又は追加的に、マスターコントローラ2は、予め定義されたピンのプルがなされたときのマスターコントローラ2のグローバル時刻t’aM2を送信するだけでなく、予め定義されたピンのプルがなされたときのマスターコントローラ2のグローバル時刻taM2を捕捉して保存する。
【0081】
時刻同期の検証は、それから、マスターコントローラ2において、次の検査の実施も備える。その検査とは、
第2サイクル中にマスターコントローラ2によって捕捉されたグローバル時刻taM2と、第1サイクル中に予め定義されたピンのプルがなされたときにマスターコントローラ2によって捕捉されたグローバル時刻taM1との差と、
第2サイクル中にマスターコントローラ2によって受信されたローカルハードウェアカウンタCbs2と、第2サイクル中にマスターコントローラ2によっても受信されかつ第1サイクル中で予め定義されたピンのプルがスレーブコントローラ3によって検出されたときのスレーブコントローラ3のグローバル時刻tbs1に相当するローカルハードウェアカウンタCbs1との間の差と
の差が予め定義された第2しきい値よりも小さいかどうかの検査である。
【0082】
これによりカウンタ値、すなわちローカルハードウェアカウンタCbs2-Cbs1の差を用いて前記スレーブコントローラ3上で第1サイクルと第2サイクルとの間の経過時間と、マスターポート31の時間差とを用いてマスターコントローラ2上の第1サイクルと第2サイクルとの間の経過時間と(すなわちtaM2-taM1)が、同期しているか(すなわち、許容範囲内(上述を参照されたい。例えば、ASIL D)にあるか)を検査できる。
【0083】
時刻同期の検証は、スレーブコントローラ3において次の検査の実施を備える。それは、
第2サイクル中にスレーブコントローラ3が受信したグローバル時刻t’aM2と第1サイクル中にスレーブコントローラ3が受信したグローバル時刻t’aM1との差と、
第2サイクル中にスレーブコントローラ3によって捕捉されたローカルハードウェアカウンタCbs2と、第1サイクル中にスレーブコントローラ3によって捕捉されたローカルハードウェアカウンタCbs1であって、第1サイクル中に予め定義されたピンのプルがスレーブコントローラ3によって検出されたときのスレーブコントローラ3のグローバル時刻tbs1に相当するローカルハードウェアカウンタCbs1との差と
との差が予め定義された第2しきい値よりも小さいかどうかの検査である。
【0084】
これにより、
カウンタ値(すなわち、ローカルハードウェアカウンタ間の差Cbs2-Cbs1)を使ってスレーブコントローラ3上の第1サイクルと第2サイクルとの間の経過時間と、
フォローアップメッセージに含まれているグローバル時刻の差(すなわちt’aM2-t’aM1)を使ってマスターコントローラ2上の第1サイクルと第2サイクルとの間の経過時間と
が同期している(すなわち許容範囲(上記参照、例えばASIL D)内である)かどうか検査できる。
【0085】
また、マスターコントローラ2のマスターポート22とスレーブポート21の時刻同期が同期しているか、すなわち許容範囲(上述を参照のこと。例えばASIL D)内にあるかも検査できる。したがって、時刻同期の検証は、次の検査を備えられる。その検査とは、
マスターコントローラ2において、第2サイクル中に予め定義されたピンのプルがなされたときにマスターコントローラ2がマスターポート22で捕捉したグローバル時刻taM2と、
第2サイクル中に予め定義されたピンのプルがなされたときにマスターコントローラ2がスレーブポート21で捕捉したグローバル時刻tas2
の差が、予め定義された第3しきい値よりも小さいかどうかの検査である。この検査は、この方法の第1サイクル(taM1-tas1<第3しきい値)から開始して実行もできる。
【0086】
さらに、プライベートバス4の通信経路の完全性を確保するために、マスターコントローラ2で捕捉された時間taM2(予め定義されたピンのプルがなされ、スレーブコントローラ3へのフォローアップメッセージに書き込まれたとき)は、マスターコントローラ2によってグローバル時刻t’aM2(スレーブコントローラ3がフォローアップメッセージで受信し、マスターコントローラ2への検証メッセージに書き込んだ)と比較される。ここで、これらの値の差は、予め定義された第4しきい値よりも小さくする必要がある。taM2とt’aM2は、マスターコントローラ3の送信経路、スレーブコントローラ3の送信経路及び受信経路が、標準のオートザー(Autosar、AUTomotive Open System Architecture)機構を使用してASIL QMとしてのみ実現されるため、異なる場合がある。この検査は、方法の最初のサイクル(t’aM1-taM1<第4しきい値)から開始して実行もできる。
【0087】
上述の検査は、マスターコントローラ2について次のように要約できる。
【数1】
【0088】
上述した検査は、スレーブコントローラ3について次のように要約できる。
【数2】
【符号の説明】
【0089】
1 通信ネットワーク
2 マスターコントローラ
21 マスターコントローラのスレーブポート
22 マスターコントローラのマスターポート
3 スレーブコントローラ
31 スレーブコントローラのスレーブポート
4 プライベート通信バス
5 さらなる通信ネットワークのさらなるマスターコントローラ
51 さらなるマスターコントローラのマスターポート
GPIO 汎用入出力
aM1、taM2 マスターコントローラのマスターポートのクロックのグローバル時刻で、第1又は第2サイクル中に予め定義されたピンのプルがなされた時刻
t’aM1、t’aM2 スレーブコントローラが受信する第1又は第2サイクル中に予め定義されたピンのプルがなされたときのマスターコントローラのマスターポートのグローバル時刻
as1、tas2 マスターコントローラのスレーブポートのグローバル時刻
bs1、Cbs2 予め定義されたピンのプルが第1又は第2サイクルでスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻に相当するローカルハードウェアカウンタ
bs1、tbs2 予め定義されたピンのプルが第1又は第2サイクルでスレーブコントローラによって検出されたときのスレーブコントローラのグローバル時刻
図1
図2
【国際調査報告】