(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-13
(45)【発行日】2023-11-21
(54)【発明の名称】自動運転のための時間源を提供するための方法および装置
(51)【国際特許分類】
H04L 7/00 20060101AFI20231114BHJP
H04L 7/04 20060101ALI20231114BHJP
G08G 1/16 20060101ALI20231114BHJP
【FI】
H04L7/00 990
H04L7/04
G08G1/16 A
(21)【出願番号】P 2022529367
(86)(22)【出願日】2019-11-20
(86)【国際出願番号】 CN2019119754
(87)【国際公開番号】W WO2021097718
(87)【国際公開日】2021-05-27
【審査請求日】2022-07-19
(73)【特許権者】
【識別番号】503433420
【氏名又は名称】華為技術有限公司
【氏名又は名称原語表記】HUAWEI TECHNOLOGIES CO.,LTD.
【住所又は居所原語表記】Huawei Administration Building, Bantian, Longgang District, Shenzhen, Guangdong 518129, P.R. China
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133569
【氏名又は名称】野村 進
(72)【発明者】
【氏名】屈 明▲廣▼
【審査官】川口 貴裕
(56)【参考文献】
【文献】米国特許出願公開第2018/0088584(US,A1)
【文献】特表2020-531929(JP,A)
【文献】米国特許出願公開第2019/0313224(US,A1)
【文献】特表2021-524598(JP,A)
【文献】特開2019-008709(JP,A)
【文献】米国特許出願公開第2019/0337545(US,A1)
【文献】米国特許出願公開第2019/0286151(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 7/00 - 7/10
G08G 1/16
H04J 3/06
(57)【特許請求の範囲】
【請求項1】
車両の自動運転システムに適用され、第1のプロセッサと、前記第1のプロセッサに接続された第1の水晶発振器とを備える、自動運転のための時間源を提供するための装置であって、
前記第1のプロセッサが、前記第1の水晶発振器を使用することによって前記自動運転システムの第1のサブシステムに第1の時間源を提供し、受信された衛星時間信号に基づいて前記自動運転システムの第2のサブシステムに第2の時間源を提供するように構成され、前記第1のサブシステムが、前記車両の運転サービス関連データを処理するように構成され、前記第2のサブシステムが、前記車両の管理関連データを処理するように構成された、装置
であって、
前記管理関連データは、リアルタイムに関連するデータを含み、前記リアルタイムに関連するデータが、安全性監査、デジタル証明書有効性チェック、および運転データのリアルタイムでのクラウドへの移行の少なくとも1つを含むデータである、
装置。
【請求項2】
前記第1のプロセッサが、
前記衛星時間信号が受信されない場合、前記第1の水晶発振器を使用することによって前記第2のサブシステムに前記第2の時間源を提供するようにさらに構成された、請求項1に記載の装置。
【請求項3】
前記装置が、前記第1のプロセッサに接続された信号受信モジュールをさらに備え、前記信号受信モジュールが、前記衛星時間信号が受信される場合、前記衛星時間信号に基づいて前記第2の時間源のための基準周波数を提供するように構成され、
前記第1のプロセッサが、
前記基準周波数に基づいて前記第2の時間源を生成し、前記第2のサブシステムに前記第2の時間源を提供するように構成された、請求項1または2に記載の装置。
【請求項4】
前記装置が、前記第1のプロセッサに接続された第1のクロックモジュールをさらに備え、
前記第1のクロックモジュールが前記第2の時間源および予め設定された調整周期に基づいて、第3の時間源を同期させるように構成され、前記第3の時間源が前記第1のクロックモジュールによって提供される時間源である、請求項1から3のいずれか一項に記載の装置。
【請求項5】
前記第1のプロセッサが、
3つの時間源の周波数比を決定するようにさらに構成され、前記3つの時間源の前記周波数比が、前記第2の時間源に対する前記第1の時間源の第1の周波数比、前記第3の時間源に対する前記第1の時間源の第2の周波数比、および前記第3の時間源に対する前記第2の時間源の第3の周波数比を含み、
前記第1のプロセッサが、前記3つの時間源の前記周波数比および前記3つの時間源のいずれか2つに対応する履歴周波数比に基づいて、前記3つの時間源のいずれか2つの周波数比差を決定するようにさらに構成され、前記3つの時間源の前記周波数比差が、前記第1の周波数比と履歴第1の周波数比との第1の周波数比差、前記第2の周波数比と履歴第2の周波数比との第2の周波数比差、および前記第3の周波数比と履歴第3の周波数比との第3の周波数比差を含み、
前記第1のプロセッサが、前記第1の周波数比差、前記第2の周波数比差、および前記第3の周波数比差に基づいて、前記第1の時間源、前記第2の時間源、または前記第3の時間源における目標時間源に対応する水晶発振器の周波数が、予め設定された周波数範囲からずれていると判定するようにさらに構成された、請求項4に記載の装置。
【請求項6】
前記第1のプロセッサが、
N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比が決定されるまで、予め設定された測定周期に基づいて、k番目の第1の周波数比、k番目の第2の周波数比、およびk番目の第3の周波数比を決定するようにさらに構成され、0<k≦Nであり、kが整数であり、
前記第1のプロセッサが、前記N個の第1の周波数比、前記N個の第2の周波数比、および前記N個の第3の周波数比に基づいて、3つのグループの前記周波数比に対応する履歴周波数比を決定するようにさらに構成され、3つのグループの前記周波数比に対応する前記履歴周波数比が、前記第1の周波数比に対応する前記履歴第1の周波数比、前記第2の周波数比に対応する前記履歴第2の周波数比、および前記第3の周波数比に対応する前記履歴第3の周波数比を含む、請求項5に記載の装置。
【請求項7】
前記装置が前記第1のプロセッサに接続された第2のプロセッサをさらに備え、
前記第2のプロセッサが前記第1のプロセッサのバックアッププロセッサであり、
前記第2のプロセッサが第2の水晶発振器および第2のクロックモジュールにさらに接続され、前記第2の水晶発振器が前記第1の水晶発振器のバックアップ水晶発振器であり、前記第2のクロックモジュールが前記第1のクロックモジュールのバックアップモジュールである、請求項4から6のいずれか一項に記載の装置。
【請求項8】
前記第1の水晶発振器が温度補償水晶発振器である、請求項1から7のいずれか一項に記載の装置。
【請求項9】
車両の自動運転システムに適用される、自動運転のための時間源を提供するための方法であって、前記方法が、
第1の水晶発振器を使用することによって前記自動運転システムの第1のサブシステムに第1の時間源を提供し、受信された衛星時間信号に基づいて前記自動運転システムの第2のサブシステムに第2の時間源を提供するステップであって、前記第1のサブシステムが前記車両の運転サービス関連データを処理するように構成され、前記第2のサブシステムが前記車両の管理関連データを処理するように構成された、ステップ
を含む、方法
であって、
前記管理関連データは、リアルタイムに関連するデータを含み、前記リアルタイムに関連するデータが、安全性監査、デジタル証明書有効性チェック、および運転データのリアルタイムでのクラウドへの移行の少なくとも1つを含むデータである、
方法。
【請求項10】
前記方法が、
前記衛星時間信号が受信されない場合、前記第1の水晶発振器を使用することによって前記第2のサブシステムに前記第2の時間源を提供するステップ
をさらに含む、請求項9に記載の方法。
【請求項11】
受信された衛星時間信号に基づいて前記自動運転システムの第2のサブシステムに第2の時間源を提供する前記ステップが、
前記衛星時間信号を前記第2の時間源の基準周波数として使用することによって前記第2の時間源を生成するステップであって、前記衛星時間信号が信号受信モジュールを使用することによって受信される、ステップと、
前記第2の時間源を前記第2のサブシステムに提供するステップと
を含む、請求項10に記載の方法。
【請求項12】
前記方法が、
前記第2の時間源および予め設定された調整周期に基づいて第3の時間源を同期させるステップであって、前記第3の時間源が第1のクロックモジュールによって提供される時間源である、ステップ
をさらに含む、請求項9から11のいずれか一項に記載の方法。
【請求項13】
前記方法が、
3つの時間源の周波数比を決定するステップであって、前記3つの時間源の前記周波数比が、前記第2の時間源に対する前記第1の時間源の第1の周波数比、前記第3の時間源に対する前記第1の時間源の第2の周波数比、および前記第3の時間源に対する前記第2の時間源の第3の周波数比を含む、ステップと、
前記3つの時間源の前記周波数比および前記3つの時間源のいずれか2つに対応する履歴周波数比に基づいて、前記3つの時間源のいずれか2つの周波数比差を決定するステップであって、前記3つの時間源の前記周波数比差が、前記第1の周波数比と履歴第1の周波数比との第1の周波数比差、前記第2の周波数比と履歴第2の周波数比との第2の周波数比差、および前記第3の周波数比と履歴第3の周波数比との第3の周波数比差を含む、ステップと、
前記第1の周波数比差、前記第2の周波数比差、および前記第3の周波数比差に基づいて、前記第1の時間源、前記第2の時間源、または前記第3の時間源における目標時間源に対応する水晶発振器の周波数が予め設定された周波数範囲からずれていると判定するステップと
をさらに含む、請求項12に記載の方法。
【請求項14】
前記方法が、
N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比が決定されるまで、予め設定された測定周期に基づいてk番目の第1の周波数比、k番目の第2の周波数比、およびk番目の第3の周波数比を決定するステップであって、0<k≦Nであり、kが整数である、ステップと、
前記N個の第1の周波数比、前記N個の第2の周波数比、および前記N個の第3の周波数比に基づいて、3つのグループの前記周波数比に対応する履歴周波数比を決定するステップであって、3つのグループの前記周波数比に対応する前記履歴周波数比が、前記第1の周波数比に対応する前記履歴第1の周波数比、前記第2の周波数比に対応する前記履歴第2の周波数比、および前記第3の周波数比に対応する前記履歴第3の周波数比を含む、ステップと
をさらに含む、請求項13に記載の方法。
【請求項15】
前記第1の水晶発振器が温度補償水晶発振器である、請求項9から14のいずれか一項に記載の方法。
【請求項16】
請求項9から15のいずれか一項に記載の方法を実行するチップシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、時間同期技術の分野に関し、詳細には、自動運転のための時間源を提供するための方法および装置に関する。
【背景技術】
【0002】
人工知能(Artificial Intelligence、AI)は、環境を知覚し、知識を取得し、知識に基づいて最適な結果を達成するために、デジタルコンピュータまたはデジタルコンピュータによって制御された機械を使用することによって人間の知能をシミュレートし、拡張し、拡大する、理論、方法、技術、またはアプリケーションシステムである。自動運転は、人工知能の主流の応用である。自動運転技術は、コンピュータビジョン、レーダ、監視装置、全地球測位システムなどの協働に依存して、人間の操作なしに自動車両の自動運転を実現する。自動車両は、乗客をある場所から別の場所に輸送するのを支援するために様々なコンピューティングシステムを使用する。いくつかの自動車両は、オペレータ(ナビゲータ、ドライバ、または乗客など)からの何らかの初期入力または連続入力を必要とすることがある。自動運転車両により、オペレータは手動操作モードから自動運転モードへ、または手動操作モードと自動運転モードとの間でモードを切り替えることが可能になる。自動運転技術は、人間が自動車両を運転する必要がないため、理論的に人間の運転ミスを効果的に回避することができ、交通事故を低減することができ、道路輸送効率を向上させることができる。そのため、自動運転技術がますます注目を集めている。
【0003】
自動運転システムでは、自動運転に関連する大量の異種計算ノード、例えば、様々なセンサ、中央計算ノード、マイクロコントローラユニット(Microcontroller Unit、MCU)制御ノード、電力管理ノード、および安全性監視ノードが存在する。これらのノード間で高精度の時間同期を維持することは、感知、位置決め、ならびに融合計画および制御などの自動運転アルゴリズムの安全で信頼できる動作のための基本的な前提条件である。自動運転に関連するノードとの時間同期を保証することに加えて、自動運転システムに関連する別のサービス(例えば、管理サービス)に対して協定世界時サービスを提供して、安全性監査、メンテナンスおよび試験ログ、ならびに運転データのリアルタイムでのクラウドへの移行などのサービスのリアルタイムの記録要件を満たす必要がある。
【0004】
従来技術では、自動運転システムにおいて高精度の時間同期を実施するために、異なる通信バスおよびプロトコルタイプに基づいた複数の成熟した時間同期プロトコルおよび規格が存在する。時間同期がどのプロトコルまたは規格に基づいて実施されるかにかかわらず、自動運転システム内の各サブノードのための時間同期基準を提供するために、安定した信頼できるグローバルな統一された時間源が必要とされている。現在の自動運転システムでは、全地球的航法衛星システム(Global Navigation Satellite System、GNSS)時間信号は、通常、システム全体のマスタクロック(すなわち、グランドマスタクロック)として使用されて、別のノードに時間基準を提供する。GNSS信号が利用可能である場合、ローカルクロックは、GNSS時間源との同期を維持するように調整される。GNSS信号が利用できない場合、システム時間の動作は、水晶発振器の自由振動に依存して維持される。GNSS信号を追跡する過程において、GNSS信号が、受信されないか、遮蔽されるか、または誤って受信されることがある。加えて、GNSS信号が不安定であるため、車両の運転過程において時間ジャンプがしばしば発生し、これは、自動運転アルゴリズムの安全性および信頼性に影響を与え、自動運転の安全性に深刻な潜在的な安全上のリスクをもたらし、深刻な交通事故さえ引き起こす。
【0005】
したがって、自動運転システムに対して安定した信頼できるグローバルな時間源基準を提供し、自動運転システムの安全な動作を保証し、協定世界時に対するシステムの要求を満たすことは緊急の課題である。
【発明の概要】
【課題を解決するための手段】
【0006】
本発明の実施形態は、自動運転のための時間源を提供するための方法および装置を提供し、自動運転システムのための安定した信頼できるグローバルな時間源基準を提供し、自動運転システムの安全な動作を保証し、システムの協定世界時に対する要求を満たす。
【0007】
第1の態様によれば、本発明の実施形態は、車両の自動運転システムに適用され、第1のプロセッサと、第1のプロセッサに接続された第1の水晶発振器とを含む、自動運転のための時間源を提供するための装置を提供する。
【0008】
第1のプロセッサは、第1の水晶発振器を使用することによって自動運転システムの第1のサブシステムに第1の時間源を提供し、受信された衛星時間信号に基づいて自動運転システムの第2のサブシステムに第2の時間源を提供するように構成されている。第1のサブシステムは、車両の運転サービス関連データを処理するように構成され、第2のサブシステムは、車両の管理関連データを処理するように構成されている。
【0009】
本発明の本実施形態では、異なるサブシステム(第1のサブシステムおよび第2のサブシステムを含む)に独立した時間源が提供される。第1の時間源は、第1のサブシステム(例えば、自動運転意思決定、制御、および感知に関連する運転サービスサブシステム)に時間源を提供するために使用され、第1のサブシステムのマスタクロックとして機能する。第2の時間源は、第2のサブシステム(例えば、安全性監査、メンテナンスおよび試験ログの記録、ならびにクラウドへの運転データの移行に関連する管理サブシステム)に時間源を提供し、第2のサブシステムのマスタクロックとして機能するように構成されている。2つの独立したクロック源のそれぞれは、対応するクロックシステムにおいて動作して、対応するクロックシステムの別のノードに基準時間を提供する。いくつかの実施形態において、第1の時間源が起動時間を取得した後、GNSS信号を受信することができる場合であっても、第1の時間源は、GNSS信号に依存することなく、第1の水晶発振器(以下では第1の水晶発振器と呼ばれ、例えば、ボードの高精度の温度補償水晶発振器である)のみを使用することによって、システムにおける時間の精度を維持する。車両が衛星時間信号(すなわち、GNSS信号)を受信することができる場合、第2の時間源は、衛星によって提供されるGNSSクロックを追跡する。本発明の本実施形態では、2つの独立した時間源および対応するクロックシステムが提供され、その結果、時間源は互いに分離され、独立して動作し、互いに影響を及ぼさない。このようにして、第1のサブシステムが依存するクロック(または時間源と呼ばれる)が、いかなる運転シナリオにおいても外部装置によって影響されないことが保証され、内部アルゴリズムおよび外部センサなどのノードに連続的で安定した時間同期サービスが提供される。本実施形態は、現在の自動運転システムの時間同期ソリューションにおける信頼できない、不安定な、安全でない時間源を解決し、時間同期追跡過程において時間ジャンプが発生しやすいという問題を回避し、安全性監査、デジタル証明書の有効性チェック、クラウドへの運転データの移行などの時間要件を満たし、システムが、自動運転車両が動作するシナリオにかかわらず、自動運転システムに安定した信頼できるグローバルな時間源基準および時間サービスを提供することを保証し、自動運転システムの安全な動作を保証し、協定世界時に関するシステムの要件を満たす。
【0010】
可能な一実施態様において、第1のプロセッサは、
衛星時間信号が受信されない場合、第1の水晶発振器を使用することによって第2のサブシステムに第2の時間源を提供するようにさらに構成されている。本発明の本実施形態では、車両が衛星信号GNSS信号を受信することができない場合、第1の水晶発振器を使用することによって対応するクロックシステムに第2の時間源を提供する。したがって、車両が衛星信号GNSS信号を受信することができず、誤った衛星信号を受信し、不安定な衛星信号を受信するなどの場合、第1のサブシステムが依存する時間源は依然として信頼でき、これは、信号に起因するサブシステムにおける時間不安定性を回避する。
【0011】
可能な一実施態様において、装置は、第1のプロセッサに接続された信号受信モジュールをさらに含む。信号受信モジュールは、衛星時間信号が受信される場合、衛星時間信号に基づいて第2の時間源のための基準周波数を提供するように構成されている。第1のプロセッサは、いくつかの実施形態において、基準周波数に基づいて第2の時間源を生成し、第2のサブシステムに第2の時間源を提供するように構成されている。本発明の本実施形態では、衛星信号(衛星信号は衛星時間信号を含むことができる)は、信号受信モジュールを使用することによって受信され、衛星のGNSS時間は、受信された衛星時間信号に含まれる時間情報に基づいて取得され、衛星時間信号が利用可能である場合、自動運転システムの各分散型サブシステムの時間が協定世界時に基づいて調整され得ることを保証し、水晶発振器のずれによって引き起こされる時間誤差を防止する。
【0012】
可能な一実施態様において、装置は、第1のプロセッサに接続された第1のクロックモジュールをさらに含む。第1のクロックモジュールは、第2の時間源および予め設定された調整周期に基づいて、第3の時間源を同期させるように構成され、第3の時間源が第1のクロックモジュールによって提供される時間源である。本発明の本実施形態では、車両の自動運転プロセスにおいて、第2の時間源(すなわち、GNSSクロック)を使用して、第3の時間源(すなわち、RTCクロック)を周期的に調整して、RTCクロックとGNSSクロックとの同期を維持する。このようにして、車両の各起動後に、自動運転システムの時間とUTC時間との時間差が小さくなり、これは、第1の時間源が限りなく時間ドリフトすることを効果的に防止する。
【0013】
可能な一実施態様において、第1のプロセッサは、
3つの時間源の周波数比を決定するようにさらに構成され、3つの時間源の周波数比が、第2の時間源に対する第1の時間源の第1の周波数比、第3の時間源に対する第1の時間源の第2の周波数比、および第3の時間源に対する第2の時間源の第3の周波数比を含み、
第1のプロセッサは、3つの時間源の周波数比および3つの時間源のいずれか2つに対応する履歴周波数比に基づいて、3つの時間源のいずれか2つの周波数比差を決定するようにさらに構成され、3つの時間源の周波数比差が、第1の周波数比と履歴第1の周波数比との第1の周波数比差、第2の周波数比と履歴第2の周波数比との第2の周波数比差、および第3の周波数比と履歴第3の周波数比との第3の周波数比差を含み、
第1のプロセッサは、第1の周波数比差、第2の周波数比差、および第3の周波数比差に基づいて、第1の時間源、第2の時間源、または第3の時間源における目標時間源に対応する水晶発振器の周波数が、予め設定された周波数範囲からずれていると判定するようにさらに構成されている。
【0014】
本発明の本実施形態では、3つのグループのクロック(すなわち、第1の時間源、第2の時間源、および第3の時間源を含む3つの時間源)の周波数比の変化が、ボード水晶発振器の動作状態を監視するために、予め設定されたアルゴリズムに基づいて周期的に収集される。3つのクロックのうちの1つの水晶発振器が故障しているか否かを判定して、3つの時間源が信頼できるか否かを監視する。
【0015】
可能な一実施態様において、第1のプロセッサは、いくつかの実施形態において、
以下の式に従って、第1の周波数比FR1、第2の周波数比FR2、および第3の周波数比FR3を決定するように構成されている。
【数1】
【0016】
OS_CLKFrequencyは第1の時間源のクロック周波数であり、GNSS_CLKFrequencyは第2の時間源のクロック周波数であり、RTC_CLKFrequencyは第3の時間源のクロック周波数である。
【0017】
本発明の本実施形態では、第1の時間源のクロック周波数、第2の時間源のクロック周波数、および第3の時間源のクロック周波数が最初に決定され、次いで、第1の時間源、第2の時間源、および第3の時間源の3つのグループの周波数比が、前述の式に従って決定される。周波数比および最新の履歴周波数比に基づいて、3つの時間源と履歴周波数比との間のずれが決定され、ずれが大きい無効な時間源を見つけることができる。
【0018】
可能な一実施態様において、第1のプロセッサは、いくつかの実施形態において、
以下の式に従って、第1の周波数比差ΔFR1、第2の周波数比差ΔFR1、および第3の周波数比差ΔFR3を決定するように構成されている。
ΔFR1=abs(FR1-FR1AVG)
ΔFR2=abs(FR2-FR2AVG)
ΔFR3=abs(FR3-FR3AVG)
【0019】
abs(FR1-FR1AVG)は、第1の周波数比と履歴第1の周波数比との差の絶対値であり、abs(FR1-FR1AVG)は第2の周波数比と履歴第2の周波数比との差の絶対値であり、abs(FR3-FR3AVG)は第3の周波数比と履歴第3の周波数比との差の絶対値である。
ΔFR1=abs(FR1-FR1AVG)
ΔFR2=abs(FR2-FR2AVG)
ΔFR3=abs(FR3-FR3AVG)
【0020】
本発明の本実施形態では、3つのグループの周波数比が計算された後、計算された現在の周波数比の履歴平均周波数比からのずれ度合いが、周波数比に対応する履歴周波数比差に基づいて決定される。ずれ度合いが最も明白な時間源が、ずれ度合いおよび投票原理に基づいて無効時間源として決定される。これは、時間源を調整するのに好ましい。
【0021】
可能な一実施態様において、第1のプロセッサは、
N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比が決定されるまで、予め設定された測定周期に基づいて、k番目の第1の周波数比、k番目の第2の周波数比、およびk番目の第3の周波数比を決定するようにさらに構成され、0<k≦Nであり、kが整数であり、
第1のプロセッサは、N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比に基づいて、3つのグループの周波数比に対応する履歴周波数比を決定するようにさらに構成され、3つのグループの周波数比に対応する履歴周波数比が、第1の周波数比に対応する履歴第1の周波数比、第2の周波数比に対応する履歴第2の周波数比、および第3の周波数比に対応する履歴第3の周波数比を含む。
本発明の本実施形態では、各グループの周波数比に対応する履歴周波数比が、履歴的に収集された複数の3つのグループの周波数比に基づいて計算され、続いて、現在の周波数比との比較として使用される。
【0022】
可能な一実施態様において、第1のプロセッサは、いくつかの実施形態において、
以下の式に従って、履歴第1の周波数比FR1
AVG、履歴第2の周波数比FR1
AVG、および履歴第3の周波数比FR3
AVGを決定するように構成されている。
【数2】
【0023】
fr11、fr12、fr13、…、fr1Nは、それぞれ1番目の第1の周波数比、2番目の第1の周波数比、3番目の第1の周波数比、…、N番目の第1の周波数比であり、fr21、fr22、fr23、…、fr2Nは、それぞれ1番目の第2の周波数比、2番目の第2の周波数比、3番目の第2の周波数比、…、N番目の第2の周波数比であり、fr31、fr32、fr33、…、fr3Nは、それぞれ1番目の第3の周波数比、2番目の第3の周波数比、3番目の第3の周波数比、…、N番目の第3の周波数比である。
【0024】
本発明の本実施形態では、各グループの周波数比に対応する複数の履歴周波数比が、前述の式に従って最初に累積され、次いで、累積された履歴周波数比の合計がサンプルの量で除算されて、各グループの周波数比に対応する正確な履歴周波数比を得る。現在の3つの時間源の周波数比が正常であるかどうかが、履歴周波数比に基づいて判断され、範囲からずれる異常な時間源を見つける。
【0025】
可能な一実施態様において、装置は、第1のプロセッサに接続された第2のプロセッサをさらに含む。第2のプロセッサは、第1のプロセッサのバックアッププロセッサであり、第2の水晶発振器および第2のクロックモジュールにさらに接続されている。第2の水晶発振器は、第1の水晶発振器のバックアップ水晶発振器であり、第2のクロックモジュールは、第1のクロックモジュールのバックアップモジュールである。本発明の本実施形態では、デュアルチップシステム冗長性およびバックアップルートクロックソリューションを提供するために、バックアップシステムオンチップ(バックアッププロセッサ(すなわち、第2のプロセッサ)、温度補償水晶発振器(すなわち、第2の水晶発振器)、RTCクロックチップ(すなわち、第2のクロックモジュール)などを含む)が配置されている。具体的には、一般に、バックアッププロセッサは、サイレント状態にある。マスタ/バックアッププロセッサの切り替えが発生すると、バックアッププロセッサがマスタプロセッサを引き継ぎ、対応するシステム内の別のノードにクロックサービスを提供する。
【0026】
可能な実施形態では、第1のサブシステムは、車両の運転サービス関連データを処理するように構成され、第2のサブシステムは、車両の管理関連データを処理するように構成されている。本発明の本実施形態では、車両の運転サービス関連データは、様々なセンサ、中央計算ノード、MCU制御ノード、電力管理ノード、および安全性監視ノードによって処理される、またはそれらに関連するデータを含む。管理関連データは、安全性監査、デジタル証明書有効性チェック、および運転データのリアルタイムでのクラウドへの移行など、リアルタイムに関連するデータを含む。第1のサブシステムは、いくつかの実施形態において、自動運転感知、融合、経路計画、ならびに車両制御コマンド生成および配信などの自動運転システムのコアアルゴリズムの運転サービスロジックを実行するように構成されている。第2のサブシステムは、いくつかの実施形態において、自動運転サービスの構成データを配信し、デバイス管理、ログ記録、車載ブラックボックス、および安全性監査などの自動運転サービスの動作状態に関連するサービスロジックを監視および記録するように構成されている。
【0027】
可能な一実施態様において、第1の水晶発振器は、温度補償水晶発振器である。本発明の本実施形態では、衛星時間信号が受信されない場合、精密発振周波数が、ボード高精度温度補償水晶発振器を使用することによって、クロックの入力パルス信号を提供するために、目標時間源(例えば、第1の時間源)に提供される。
【0028】
第2の態様によれば、本発明の実施形態は、自動運転のための時間源を提供するための方法を提供し、本方法は、車両の自動運転システムに適用され、
第1の水晶発振器を使用することによって自動運転システムの第1のサブシステムに第1の時間源を提供し、受信された衛星時間信号に基づいて自動運転システムの第2のサブシステムに第2の時間源を提供するステップを含み、第1のサブシステムが車両の運転サービス関連データを処理するように構成され、第2のサブシステムが車両の管理関連データを処理するように構成されている。
【0029】
可能な一実施態様において、本方法は、
衛星時間信号が受信されない場合、第1の水晶発振器を使用することによって第2のサブシステムに第2の時間源を提供するステップ、
をさらに含む。
【0030】
可能な一実施態様において、受信された衛星時間信号に基づいて自動運転システムの第2のサブシステムに第2の時間源を提供するステップは、
衛星時間信号を第2の時間源の基準周波数として使用することによって第2の時間源を生成するステップであって、衛星時間信号が信号受信モジュールを使用することによって受信される、ステップと、
第2の時間源を第2のサブシステムに提供するステップと、
を含む。
【0031】
可能な一実施態様において、本方法は、
第2の時間源および予め設定された調整周期に基づいて第3の時間源を同期させるステップであって、第3の時間源が第1のクロックモジュールによって提供される時間源である、ステップ
をさらに含む。
【0032】
可能な一実施態様において、本方法は、
3つの時間源の周波数比を決定するステップであって、3つの時間源の周波数比が、第2の時間源に対する第1の時間源の第1の周波数比、第3の時間源に対する第1の時間源の第2の周波数比、および第3の時間源に対する第2の時間源の第3の周波数比を含む、ステップと、
3つの時間源の周波数比および3つの時間源のいずれか2つに対応する履歴周波数比に基づいて、3つの時間源のいずれか2つの周波数比差を決定するステップであって、3つの時間源の周波数比差が、第1の周波数比と履歴第1の周波数比との第1の周波数比差、第2の周波数比と履歴第2の周波数比との第2の周波数比差、および第3の周波数比と履歴第3の周波数比との第3の周波数比差を含む、ステップと、
第1の周波数比差、第2の周波数比差、および第3の周波数比差に基づいて、第1の時間源、第2の時間源、または第3の時間源における目標時間源に対応する水晶発振器の周波数が予め設定された周波数範囲からずれていると判定するステップと、
をさらに含む。
【0033】
可能な一実施態様において、3つの時間源の周波数比を決定するステップは、
以下の式に従って、第1の周波数比FR1、第2の周波数比FR2、および第3の周波数比FR3を決定するステップを含む。
【数3】
【0034】
OS_CLKFrequencyは第1の時間源のクロック周波数であり、GNSS_CLKFrequencyは第2の時間源のクロック周波数であり、RTC_CLKFrequencyは第3の時間源のクロック周波数である。
【0035】
可能な一実施態様において、3つの時間源の周波数比および3つの時間源のいずれか2つに対応する履歴周波数比に基づいて、3つの時間源のいずれか2つの周波数比差を決定するステップは、
以下の式に従って、第1の周波数比差ΔFR1、第2の周波数比差ΔFR2、および第3の周波数比差ΔFR3を決定するステップを含む。
ΔFR1=abs(FR1-FR1AVG)
ΔFR2=abs(FR2-FR2AVG)
ΔFR3=abs(FR3-FR3AVG)
【0036】
abs(FR1-FR1AVG)は、第1の周波数比と履歴第1の周波数比との差の絶対値であり、abs(FR2-FR2AVG)は、第2の周波数比と履歴第2の周波数比との差の絶対値であり、abs(FR3-FR3AVG)は、第3の周波数比と履歴第3の周波数比との差の絶対値である。
【0037】
可能な一実施態様において、本方法は、
N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比が決定されるまで、予め設定された測定周期に基づいてk番目の第1の周波数比、k番目の第2の周波数比、およびk番目の第3の周波数比を決定するステップであって、0<k≦Nであり、kが整数である、ステップと、
N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比に基づいて、3つのグループの周波数比に対応する履歴周波数比を決定するステップであって、3つのグループの周波数比に対応する履歴周波数比が、第1の周波数比に対応する履歴第1の周波数比、第2の周波数比に対応する履歴第2の周波数比、および第3の周波数比に対応する履歴第3の周波数比を含む、ステップと、
をさらに含む。
【0038】
可能な一実施態様において、N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比に基づいて、3つのグループの周波数比に対応する履歴周波数比を決定するステップは、
以下の式に従って、履歴第1の周波数比FR1
AVG、履歴第2の周波数比FR1
AVG、および履歴第3の周波数比FR3
AVGを決定するステップを含む。
【数4】
【0039】
fr11、fr12、fr13、…、fr1Nは、それぞれ1番目の第1の周波数比、2番目の第1の周波数比、3番目の第1の周波数比、…、N番目の第1の周波数比であり、fr21、fr22、fr23、…、fr2Nは、それぞれ1番目の第2の周波数比、2番目の第2の周波数比、3番目の第2の周波数比、…、N番目の第2の周波数比であり、fr31、fr32、fr33、…、fr3Nは、それぞれ1番目の第3の周波数比、2番目の第3の周波数比、3番目の第3の周波数比、…、N番目の第3の周波数比である。
【0040】
可能な一実施態様において、第1の水晶発振器は、温度補償水晶発振器である。
【0041】
第3の態様によれば、本発明の実施形態は、
第1の水晶発振器を使用することによって自動運転システムの第1のサブシステムに第1の時間源を提供し、受信された衛星時間信号に基づいて自動運転システムの第2のサブシステムに第2の時間源を提供するように構成された第1の時間源ユニット
を含む、自動運転のための時間源を提供するための別の装置を提供する。
【0042】
可能な一実施態様において、本装置は、
衛星時間信号が受信されない場合、第1の水晶発振器を使用することによって第2のサブシステムに第2の時間源を提供する
ように構成されている第2の時間源ユニットをさらに含む。
【0043】
可能な一実施態様において、第1の時間源ユニットは、いくつかの実施形態において、
衛星時間信号を第2の時間源の基準周波数として使用することによって第2の時間源を生成し、衛星時間信号が信号受信モジュールを使用することによって受信され、
第2の時間源を第2のサブシステムに提供する、
ように構成されている。
【0044】
可能な一実施態様において、本装置は、
第2の時間源および予め設定された調整周期性に基づいて、第3の時間源を同期させ、第3の時間源が第1のクロックモジュールによって提供される時間源である、
ように構成された調整ユニットをさらに含む。
【0045】
可能な一実施態様において、本装置は、
3つの時間源の周波数比を決定するように構成された計算ユニットであって、3つの時間源の周波数比が、第2の時間源に対する第1の時間源の第1の周波数比、第3の時間源に対する第1の時間源の第2の周波数比、および第3の時間源に対する第2の時間源の第3の周波数比を含む、計算ユニットと、
3つの時間源の周波数比および3つの時間源に対応する履歴周波数比に基づいて、3つの時間源のうちの任意の2つの周波数比差を決定するように構成された比較ユニットであって、3つの時間源の周波数比差が、第1の周波数比と履歴第1の周波数比との第1の周波数比差、第2の周波数比と履歴第2の周波数比との第2の周波数比差、および第3の周波数比と履歴第3の周波数比との第3の周波数比差を含む、比較ユニットと、
第1の周波数比差、第2の周波数比差、第3の周波数比差に基づいて、第1の時間源、第2の時間源、または第3の時間源における目標時間源に対応する水晶発振器の周波数が、予め設定された周波数範囲からずれていると判定するように構成された判定ユニットと、
をさらに含む。
【0046】
可能な一実施態様において、計算ユニットは、いくつかの実施形態において、
以下の式に従って、第1の周波数比FR1、第2の周波数比FR2、および第3の周波数比FR3を決定するように構成されている。
【数5】
【0047】
OS_CLKFrequencyは第1の時間源のクロック周波数であり、GNSS_CLKFrequencyは第2の時間源のクロック周波数であり、RTC_CLKFrequencyは第3の時間源のクロック周波数である。
【0048】
可能な一実施態様において、比較ユニットは、いくつかの実施形態において、
以下の式に従って、第1の周波数比差ΔFR1、第2の周波数比差ΔFR2、および第3の周波数比差ΔFR3を決定するように構成されている。
ΔFR1=abs(FR1-FR1AVG)
ΔFR2=abs(FR2-FR2AVG)
ΔFR3=abs(FR3-FR3AVG)
【0049】
abs(FR1-FR1AVG)は、第1の周波数比と履歴第1の周波数比との差の絶対値であり、abs(FR2-FR2AVG)は、第2の周波数比と履歴第2の周波数比との差の絶対値であり、abs(FR3-FR3AVG)は、第3の周波数比と履歴第3の周波数比との差の絶対値である。
【0050】
可能な一実施態様において、本装置は、
N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比が決定されるまで、予め設定された測定周期に基づいてk番目の第1の周波数比、k番目の第2の周波数比、およびk番目の第3の周波数比を決定するように構成された測定ユニットであって、0<k≦Nであり、kは整数である、測定ユニットと、
N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比に基づいて、3つのグループの周波数比に対応する履歴周波数比を決定するように構成された履歴周波数比ユニットであって、3つのグループの周波数比に対応する履歴周波数比が、第1の周波数比に対応する履歴第1の周波数比、第2の周波数比に対応する履歴第2の周波数比、および第3の周波数比に対応する履歴第3の周波数比を含む、履歴周波数比ユニットと、
をさらに含む。
【0051】
可能な一実施態様において、履歴周波数比ユニットは、いくつかの実施形態において、
以下の式に従って、前記履歴第1の周波数比FR1
AVG、前記履歴第2の周波数比FR1
AVG、および前記履歴第3の周波数比FR3
AVGを決定するように構成されている。
【数6】
【0052】
fr11、fr12、fr13、…、fr1Nは、それぞれ1番目の第1の周波数比、2番目の第1の周波数比、3番目の第1の周波数比、…、N番目の第1の周波数比であり、fr21、fr22、fr23、…、fr2Nは、それぞれ1番目の第2の周波数比、2番目の第2の周波数比、3番目の第2の周波数比、…、N番目の第2の周波数比であり、fr31、fr32、fr33、…、fr3Nは、それぞれ1番目の第3の周波数比、2番目の第3の周波数比、3番目の第3の周波数比、…、N番目の第3の周波数比である。
【0053】
可能な一実施態様において、第1の水晶発振器は、温度補償水晶発振器である。
【0054】
第4の態様によれば、本出願は、自動運転のための時間源を提供するための装置を提供する。時間源を提供するための装置は、時間源を提供するための前述の方法のうちのいずれか1つを実施する機能を有する。機能は、ハードウェアによって実装されてもよく、または対応するソフトウェアを実行するハードウェアによって実装されてもよい。ハードウェアまたはソフトウェアは、前述の機能に対応する1つまたは複数のモジュールを含む。
【0055】
第5の態様によれば、本出願は、端末を提供する。端末は、プロセッサを含み、プロセッサは、第2の態様で提供される時間源を提供するための方法において対応する機能を実行する際に端末をサポートするように構成されている。端末は、メモリをさらに含んでもよく、メモリは、プロセッサに結合されるように構成され、端末の必要なプログラム命令およびデータを記憶する。端末は、端末と別のデバイスまたは通信ネットワークとの間の通信を行うように構成された通信インターフェースをさらに含んでもよい。
【0056】
第6の態様によれば、本出願は、チップシステムを提供する。チップシステムは、関連する機能が実現されるように、第2の態様における任意の方法を実行することができる。可能な一設計では、チップシステムは、メモリをさらに含む。メモリは、必要なプログラム命令およびデータを記憶するように構成されている。チップシステムは、チップを含んでもよく、またはチップと別の個別部品とを含んでもよい。
【0057】
第7の態様によれば、本出願は、車両を提供する。車両は、第1の態様における時間源を提供するための装置および対応する自動運転システムを備え、第2の態様における任意の方法を実行するように構成されてもよく、それにより、関連する機能が実現される。
【0058】
本発明の実施形態における技術的解決策をより明確に説明するために、以下では、実施形態を説明する際に使用される添付の図面を簡単に説明する。
【図面の簡単な説明】
【0059】
【
図1】本発明の一実施形態による自動運転車両の構成を示す概略図である。
【
図2】本発明の一実施形態による自動運転ハードウェアアーキテクチャの概略図である。
【
図3】本発明の一実施形態によるハードウェア論理アーキテクチャの図である。
【
図4】本発明の一実施形態によるハードウェア構造原理の概略図である。
【
図5】本発明の一実施形態による自動運転のための時間源を提供する原理の概略図である。
【
図6】本発明の一実施形態による自動運転のための時間源を提供する別の原理の概略図である。
【
図7】本発明の一実施形態による自動運転のための時間源を提供するための方法の概略的なフローチャートである。
【
図8】本発明の一実施形態による時間源を生成する概略図である。
【
図9】本発明の一実施形態による時間源を生成する別の概略図である。
【
図10】本発明の一実施形態による起動時間を設定する概略図である。
【
図11】本発明の一実施形態によるマスタ/バックアップSOC接続の概略図である。
【
図12】本発明の一実施形態による時間源を調整する概略フローチャートである。
【
図13】本発明の一実施形態による自動運転のための時間源を提供する装置の構造を示す概略図である。
【
図14】本発明の一実施形態によるチップの構造の概略図である。
【
図15】本発明の一実施形態による車両の概略図である。
【発明を実施するための形態】
【0060】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【0061】
本出願の明細書、特許請求の範囲、および添付の図面において、「第1」、「第2」、「第3」、「第4」などの用語は、異なるオブジェクトを区別することを意図しており、特定の順序を示すものではない。さらに、用語「含む(including)」、「有する(having)」、およびそれらの任意の他の変形は、非排他的な包含をカバーすることが意図されている。例えば、一連のステップまたはユニットを含むプロセス、方法、システム、製品、またはデバイスは、列挙されたステップまたはユニットに限定されず、いくつかの実施形態において、列挙されていないステップまたはユニットをさらに含むか、またはいくつかの実施形態において、プロセス、方法、製品、またはデバイスの別の固有のステップまたはユニットをさらに含む。
【0062】
本明細書で言及される「実施形態」とは、実施形態を参照して説明される特定の特性、構造、または特徴が、本出願の少なくとも1つの実施形態に含まれ得ることを意味する。本明細書中の異なる位置に現れる語句は、必ずしも同じ実施形態を指すとは限らず、または別の実施形態を除く独立したもしくは代替の実施形態を指すとも限らない。当業者であれば、明示的および暗黙的な方法で、本出願に記載された実施形態が別の実施形態と組み合わせることができることを理解する。
【0063】
本明細書で使用される「コンポーネント」、「モジュール」、および「システム」などの用語は、コンピュータ関連エンティティ、ハードウェア、ファームウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェア、または実行されているソフトウェアを示すために使用される。例えば、コンポーネントは、プロセッサ上で実行されるプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、および/またはコンピュータであってもよいが、これらに限定されない。図に示されるように、コンピューティングデバイス上で実行されるアプリケーションとコンピューティングデバイスの両方がコンポーネントであってもよい。1つまたは複数のコンポーネントは、プロセスおよび/または実行スレッド内に常駐してもよく、コンポーネントは、1つのコンピュータに配置されてもよく、および/または2つ以上のコンピュータに分散されてもよい。
【0064】
まず、当業者の理解を容易にするために、本願におけるいくつかの用語について説明し、記載する。
【0065】
(1)水晶発振器は、水晶振動子と略称され、パッケージ内に集積回路を追加して発振回路を形成した水晶素子である。本出願で言及される水晶振動子は、前述の水晶発振器を指すことに留意されたい。水晶発振器は、非温度補償水晶発振器、温度補償水晶発振器(Temperature Compensate X'tal(crystal)Oscillator、TCXO)、電圧制御水晶発振器、恒温制御水晶発振器などを含む。温度補償水晶発振器(以下、「温度補償水晶発振器」と呼ばれる)は、温度補償回路を付加することにより、周囲の温度変化による発振周波数の変動量を低減する水晶発振器である。
【0066】
(2)協定世界時(Coordinated Universal Time、CUT)は、世界統一時間、世界標準時、または国際協定世界時とも呼ばれ、英語とフランス語の略称が異なるためUTCと略称することもできる。本出願で言及されるUTCまたはCUTは、前述の協定世界時を指す。協定世界時(UTC)は、原子秒の長さを基準として使用し、可能な限り世界時に近い時間計測システムである。
【0067】
(3)リアルタイムクロック(Real_Time Clock、RTC)は、集積回路であり、通常、クロックチップまたはリアルタイムクロックチップと呼ばれ、電子システムに正確な時間基準を提供する。現在、ほとんどのリアルタイムクロックチップは、クロック源として高精度の水晶発振器を使用している。いくつかのクロックチップは、主電源が故障したときにクロックチップが依然として動作することができるように、電池で駆動する必要がある。
【0068】
(4)システムオンチップ(System-on-a-chip、SoC)は、単一のチップ上に完全なシステムを集積し、必要な電子回路の全部または一部をグループ化する技術である。完全なシステムは、一般的に、プロセッサ、メモリ、周辺回路などを含む。SoCは、シリコン・オン・インシュレータなどの他の技術と並行して開発され、クロック周波数を向上させて、マイクロチップの電力消費を低減することができる。
【0069】
(5)マルチコアCPUは、複数のCPUコアを単一のチップに集積したものであり、各CPUコアは独立したプロセッサである。各CPUコアは、それ自体のCacheを有することができ、または複数のCPUコアが同じCacheを共有することができる。
【0070】
(6)シリアル周辺インターフェース(Serial Peripheral Interface、SPI)は、高速、全二重、同期通信バスであり、チップのピン上で4本のワイヤのみを占有する。これは、チップのピンを節約し、プリント回路基板のレイアウトのための空間を節約し、利便性を提供する。
【0071】
(7)集積回路間バス(Inter-Integrated Circuit、IIC)はシリアルデータバスであり、2本の信号ケーブルのみを含み、1本は双方向データケーブルであり、もう1本はクロックケーブルである。2本のケーブルは、複数の装置に接続されてもよい。各IICデバイス(ほとんど)は、2つのケーブル上で送信された値がIICデバイスの固定アドレスに等しい場合にのみ応答する固定アドレスを有する。一般に、IICデバイスは、一次デバイスと二次デバイスとに分類される。
【0072】
(8)コントローラエリアネットワーク(Controller Area Network、CAN)は、国際標準化機構によって規定された国際的に標準化されたシリアル通信プロトコルである。CANバスに基づく分散制御システムは、以下の利点を有する。
ネットワークのノード間のリアルタイムデータ通信が強力である、開発周期が短い、国際標準のフィールドバスが形成されているなどである。
【0073】
(9)ローカルエリアネットワークスイッチ(LAN switch)は、交換ローカルエリアネットワーク内でデータ交換に使用される装置である。交換ローカルエリアネットワークでは、データを送信する送信元ノードと宛先ノードとが競合しない場合、データは並列に送信され、データ伝送速度が向上する。
【0074】
(10)IEEE 802.1ASでは、gPTP(generalized Precision Time Protocol)が規定されている。精密時間プロトコルに基づいて、いくつかのfeatures が、時間精度およびロック時間を改善するために追加されている。
【0075】
(11)1秒当たりのパルス数(Pulse Per Second、PPS):全地球測位システムGPSでは、1秒当たり1つのGPS PPSパルス信号が生成される。PPSパルス信号は、1秒全体の時間を示し、時間は、通常PPSパルス信号の立ち上がりエッジによって示される。GPSは、UTC時間を提供することができる。ユーザがUTC時間を受信するとき、遅延がある。正確な時間を受信するために、PPSパルス信号の立ち上がりエッジが、UTCの秒全体の時間を示すために導入されている。精度は、ナノ秒レベルに達することができ、累積誤差はない。
【0076】
(12)時間依存ネットワーキング(Time-Sensitive Networking、TSN)は、時間敏感ネットワーキングとしても知られており、IEEE 802.1ワーキンググループのTSNワーキンググループによって開発された一連の規格である。この規格は、イーサネットを介した時間敏感な送信のためのメカニズムを定義する。
【0077】
(13)アプリケーションプログラミングインターフェース(Application Programming Interface、API)は、ソフトウェアシステムの異なるコンポーネントを接続するためのいくつかの予め定義された機能、または規約である。アプリケーションプログラミングインターフェースは、アプリケーションプログラムおよび開発者に、ソースコードにアクセスすることなく、または内部作業機構の詳細を理解することなく、一連のプロセスにアクセスするためのソフトウェアベースまたはハードウェアベースの能力を提供することを目的とする。カーネルモードおよびユーザモードは、オペレーティングシステムの2つの動作レベルである。カーネルモードは権限が高く、ユーザモードは権限が低い。したがって、カーネルモードインターフェースは権限が高く、ユーザモードインターフェースは権限が低い。
【0078】
(14)複合プログラマブルロジックデバイス(Complex Programmable Logic Device、CPLD)は、CMOS EPROM、EEPROM、フラッシュメモリ、およびSRAMなどのプログラミング技術を使用することによって形成された高密度、高速、および低電力のプログラマブルロジックデバイスである。
【0079】
以下では、まず、本発明の実施形態が基づくアプリケーションアーキテクチャについて説明する。
図1は、本発明の一実施形態による自動車両のアーキテクチャの概略図である。本出願において提供される時間源を提供するための方法および装置は、本アーキテクチャに適用されてもよい。車両100のアーキテクチャは、コンピュータシステム110(プロセッサ111およびメモリ112を含む)、走行システム120、感知システム130、制御システム140、周辺デバイス150、ユーザインターフェース170、電源160などを含むことができる。
図1に示される構成要素は、単に例示的な説明であり、実際のアーキテクチャは、前述の構成要素を含むことができるが、それらに限定されない。時間源を提供するための方法および装置は、このアーキテクチャにおけるプロセッサ111に適用されてもよい。メモリ112は、時間源を提供するための方法を実行するための関連するプログラムまたはコードを記憶することができる。いくつかの実施形態において、車両100は、より多くのまたはより少ないサブシステムを含むことができ、各サブシステムは、複数の要素を含むことができる。加えて、車両100の各サブシステムおよび要素は、有線または無線方式で相互接続されてもよい。
【0080】
走行システム102は、車両100が移動するための動力を提供する構成要素を含むことができる。一実施形態では、走行システム102は、エンジン、エネルギー源、トランスミッション装置、および車輪/タイヤを含むことができる。エンジンは、内燃式エンジン、モータ、空気圧縮エンジン、または他のタイプのエンジンの組み合わせ、例えば、ガソリンエンジンおよびモータを含むハイブリッドエンジン、または内燃式エンジンおよび空気圧縮エンジンを含むハイブリッドエンジンであってもよい。エンジンは、エネルギー源を機械エネルギーに変換する。エネルギー源は、ガソリン、ディーゼル、別の石油系燃料、プロパン、別の圧縮ガス系燃料、無水アルコール、ソーラーパネル、電池、および別の電源を含んでもよい。エネルギー源は、車両100の別のシステムにエネルギーを提供することもできる。トランスミッション装置は、エンジンから車輪に機械的動力を伝達することができる。トランスミッション装置は、ギアボックスと、差動装置と、駆動シャフトと、を含むことができる。一実施形態において、トランスミッション装置は、別の装置、例えばクラッチをさらに含むことができる。駆動シャフトは、1つまたは複数の車輪に連結され得る1つまたは複数のシャフトを含んでもよい。
【0081】
感知システム130は、車両100の周囲環境に関する情報を感知するいくつかのセンサを含むことができる。例えば、センサシステム130は、測位システム(測位システムは、GPSシステム、BeiDouシステム、または別の測位システムであってよい)、慣性計測ユニット(inertial measurement unit、IMU)、レーダ、レーザ距離計、およびカメラを含んでもよい。感知システム130は、監視される車両100の内部システムのセンサ(例えば、車内空気品質モニタ、燃料計、およびオイル温度計)をさらに含んでもよい。これらのセンサのうちの1つまたは複数からのセンサデータは、物体および物体の対応する特性(位置、形状、方向、速度など)を検出するために使用されてもよい。このような検出および認識は、自動車両100の安全な動作の重要な機能である。測位システムは、車両100の地理的位置を推定するように構成されてもよい。IMUは、慣性加速度に基づいて車両100の位置および向きの変化を感知するように構成されている。一実施形態において、IMUは、加速度計とジャイロスコープとの組み合わせであってもよい。レーダは、無線信号を用いることによって車両100の周辺環境の物体を感知することができる。いくつかの実施形態において、物体に加えて、レーダは、物体の速度および/または移動方向を感知するようにさらに構成されてもよい。レーザ距離計は、レーザを用いることによって車両100が位置する環境内の物体を感知することができる。いくつかの実施形態において、レーザ距離計は、1つまたは複数のレーザ源、レーザスキャナ、1つまたは複数の検出器、および別のシステム構成要素を含んでもよい。カメラは、車両100の周囲環境の複数の画像をキャプチャするように構成されてもよい。カメラは、スチールカメラまたはビデオカメラであってもよい。
【0082】
制御システム140は、車両100および車両100の構成要素の動作を制御する。制御システム140は、ステアリングシステム、スロットル、ブレーキユニット、コンピュータビジョンシステム、ルート制御システム、および障害物回避システムを含む様々な構成要素を含むことができる。ステアリングシステムは、車両100の進行方向を調整するように動作可能である。例えば、一実施形態において、ステアリングシステムは、ステアリングホイールシステムであってもよい。スロットルは、エンジンの動作速度を制御し、車両100の速度をさらに制御するように構成されている。ブレーキユニットは、車両100を制御して減速させるように構成されている。ブレーキユニットは、車輪を減速させるために摩擦を使用することができる。他の実施形態では、ブレーキユニットは、車輪の運動エネルギーを電流に変換することができる。ブレーキユニットは、車両100の速度を制御するために、代替として、他の形態を使用することによって車輪の回転速度を低下させることができる。コンピュータビジョンシステムは、カメラによってキャプチャされた画像を処理および分析して、車両100の環境内の物体および/または特徴を認識するように動作することができる。物体および/または特徴は、交通信号灯、道路境界、および障害物を含むことができる。コンピュータビジョンシステムは、物体認識アルゴリズム、ストラクチャフロムモーション(Structure from Motion、SFM)アルゴリズム、ビデオトラッキング、および他のコンピュータビジョン技術を使用することができる。いくつかの実施形態において、コンピュータビジョンシステムは、環境のマップを描画すること、物体を追跡すること、物体速度を推定することなどを行うように構成されてもよい。ルート制御システムは、車両100の走行ルートを決定するように構成されている。いくつかの実施形態において、ルート制御システムは、センサ、GPS、および1つまたは複数の所定のマップからのデータを参照して、車両100の運転ルートを決定することができる。
【0083】
障害物回避システムは、車両100の環境における潜在的な障害物を認識し、評価し、回避または別のやり方で迂回するように構成されている。もちろん、例えば、制御システム140は、図示され説明されたものに加えて、構成要素を追加し、または代替的に含んでもよい。あるいは、制御システム140は、前述の構成要素のうちのいくつかを含まなくてもよい。
【0084】
車両100は、周辺デバイス150を使用することによって、外部センサ、別の車両、別のコンピュータシステム、またはユーザと対話する。周辺デバイス150は、ワイヤレス通信システム、車載コンピュータ、マイクロフォン、および/またはスピーカを含むことができる。いくつかの実施形態において、周辺デバイス150は、車両100のユーザがユーザインターフェース170と対話するための手段を提供する。例えば、車載コンピュータは、車両100のユーザに情報を提供することができる。ユーザインターフェース170は、ユーザからの入力を受信するために車載コンピュータをさらに操作することができる。車載コンピュータは、タッチスクリーンを使用することによって操作を行うことができる。別の場合では、周辺デバイス150は、車両100が車両内に位置する別のデバイスと通信するための手段を提供することができる。例えば、マイクロフォンは、車両100のユーザからオーディオ(例えば、音声コマンドまたは他のオーディオ入力)を受信することができる。同様に、スピーカは、車両100のユーザにオーディオを出力することができる。ワイヤレス通信システムは、1つまたは複数のデバイスと直接または通信ネットワークを介してワイヤレス通信することができる。例えば、ワイヤレス通信システムは、CDMA、EVD0、またはGSM/GPRSなどの3Gセルラーネットワークを介して通信を行うことができ、またはLTEなどの4Gセルラーネットワークを介して通信を行うことができ、または5Gセルラーネットワークを介して通信を行うことができる。ワイヤレス通信システム146は、Wi-Fiを使用することによってワイヤレスローカルエリアネットワーク(wireless local area network、WLAN)と通信することができる。いくつかの実施形態において、ワイヤレス通信システムは、赤外線リンク、Bluetooth、またはZigBeeを介してデバイスと直接通信することができる。他のワイヤレスプロトコル、例えば、ワイヤレス通信システムなどの様々な車両通信システムは、1つまたは複数の専用短距離通信(dedicated short range communications、DSRC)デバイスを含むことができ、これらのデバイスは、車両間および/または路側局間の公衆および/または私的データ通信を含むことができる。
【0085】
電源160は、車両100の様々な構成要素に電力を供給することができる。一実施形態では、電源160は、再充電可能なリチウムイオン電池または鉛蓄電池であってもよい。電池の1つまたは複数の電池パックは、車両100の様々な構成要素に電力を供給するように構成されてもよい。いくつかの実施形態において、電源160とエネルギー源は、いくつかの電池電気車両のように、一緒に実装されてもよい。
【0086】
ユーザインターフェース170は、車両100のユーザに情報を提供し、またはユーザから情報を受信するように構成されている。いくつかの実施形態において、ユーザインターフェース170は、周辺デバイス150のセット内に1つまたは複数の入力/出力デバイス、例えば、ワイヤレス通信システム、車載コンピュータ、マイクロフォン、およびスピーカを含むことができる。
【0087】
車両100の機能の一部または全部は、コンピュータシステム110によって制御される。コンピュータシステム110は、少なくとも1つのプロセッサ111を含むことができる。プロセッサ111は、データ記憶装置などの非一過性コンピュータ可読媒体に記憶された命令を実行する。コンピュータシステム110は、代替として、車両100の個々の構成要素またはサブシステムを分散方式で制御する複数のコンピューティングデバイスであってもよい。プロセッサ111は、任意の従来のプロセッサ、例えば、市販のCPUであってもよい。代替として、プロセッサは、ASICまたは別のハードウェアベースのプロセッサなどの専用デバイスであってもよい。当業者は、プロセッサ、コンピュータ、またはメモリが、実際には、同じ物理的ハウジング内に格納されてもされなくてもよい複数のプロセッサ、コンピュータ、またはメモリを含むことができることを理解すべきである。例えば、メモリは、コンピュータとは異なるハウジング内に配置されたハードディスクドライブまたは他の記憶媒体であってもよい。したがって、プロセッサまたはコンピュータへの言及は、並列に動作してもしなくてもよいプロセッサまたはコンピュータあるいはメモリのセットへの言及を含むことが理解される。本明細書に記載されるステップを実行するために単一のプロセッサを使用するのとは異なり、ステアリング構成要素および減速構成要素などのいくつかの構成要素はそれぞれ、それぞれのプロセッサを含んでもよい。プロセッサは、構成要素固有の機能に関連する計算のみを実行する。
【0088】
本明細書に記載される様々な態様では、プロセッサは、車両から遠く離れて配置され、車両とのワイヤレス通信を行うことができる。別の態様では、本明細書に記載されるプロセスの一部は、車両内に配置されたプロセッサ上で実行され、他のプロセスは、リモートプロセッサによって実行される。プロセスは、単一の動作を実行するために必要なステップを含む。
【0089】
コンピュータシステム110は、様々なサブシステム(例えば、走行システム120、感知システム130、および制御システム140)およびユーザインターフェース170から受信した入力に基づいて、車両100の機能を制御することができる。例えば、コンピュータシステム110は、制御システム140からの入力を使用して、感知システム130および障害物回避システムによって検出された障害物を回避するようにステアリングユニットを制御することができる。いくつかの実施形態において、コンピュータシステム112は、車両100および車両100のサブシステムの多くの態様に対する制御を提供するように動作することができる。
【0090】
いくつかの実施形態において、前述の構成要素のうちの1つまたは複数は、車両100とは別個に設置されてもよく、または関連付けられてもよい。
【0091】
いくつかの実施形態において、前述の構成要素は、単なる例である。実際の応用では、前述のモジュール内の構成要素は、実際の要求に基づいて追加または除去されてもよい。これは、本発明の本実施形態に対する限定として解釈されるべきではない。
【0092】
車両100は、自動車、トラック、オートバイ、バス、ボート、飛行機、ヘリコプター、芝刈り機、レクリエーション用車両、遊び場用車両、建設機械、路面電車、ゴルフカート、列車、手押し車などであってもよい。これは、いくつかの実施形態において、本発明の本実施形態に限定されない。
【0093】
いくつかの実施形態において、コンピュータシステム110は、複数のプロセッサを含んでもよく、異なるプロセッサは、異なるサービスのデータを処理する。例えば、プロセッサAは、時間源を提供するように構成され、プロセッサBは、プロセッサAのバックアッププロセッサであり、プロセッサCは、自動運転サービスに関連するデータを計算するように構成されている。
【0094】
いくつかの実施形態において、コンピュータシステムは1つのプロセッサを含んでもよい。プロセッサは、機能に基づいて複数の処理サブモジュールに分割され、異なるサブモジュールは、異なるサービスのデータを処理するように構成されている。例えば、サブモジュールAは、時間源を提供するように構成され、サブモジュールBは、運転記録および車両安全性性能に関連するデータを処理するように構成されている。
【0095】
いくつかの実施形態において、車両100は、1つまたは複数のコンピュータシステムを含んでもよい。例えば、計算機システムAは、マスタ計算機システムであり、計算機システムBは、マスタ計算機システムのバックアップシステムである。いくつかの実施形態において、コンピュータシステムは、SOC、すなわち複数の機能が集積されたチップであってもよい。
【0096】
図1のシステムは、本発明の本実施形態におけるアプリケーションアーキテクチャの一例にすぎず、本発明の本実施形態におけるアプリケーションアーキテクチャは、前述のアプリケーションアーキテクチャを含むが、これに限定されないことを理解されたい。
【0097】
本発明の以下の実施形態では、2つのチップ(すなわち、各チップが1つのコンピュータシステムを実行し、1つがマスタコンピュータシステム(マスタシステムと呼ばれる)であり、もう1つがバックアップコンピュータシステム(バックアップシステムと呼ばれる)である)が車両の回路基板上に配備されてマスタ/バックアップチップを構成する例が説明のために使用される。本発明の本実施形態では、2つのチップは、SOCであってよい。2つのチップ、すなわちマスタコンピュータシステム110およびバックアップコンピュータシステム110'は、バスを介して接続されてもよい。
【0098】
図2は、本発明の実施形態による自動運転ハードウェアアーキテクチャの概略図である。
図2に示されるように、各チップは、複数のコア(すなわち、複数のプロセッサ)、例えば、
図2におけるプロセッサ301、プロセッサ302、プロセッサ303、およびプロセッサ304を集積する。マスタシステム内のプロセッサ301は、マスタコンピュータシステム上で動作するオペレーティングシステム(すなわち、マスタオペレーティングシステム、Master OS)を動作させるように構成されている。バックアップシステム内のプロセッサ301'は、バックアップコンピュータシステム上で動作するオペレーティングシステム(すなわち、バックアップオペレーティングシステム、Backup OS)を動作させるように構成されている。プロセッサ303、プロセッサ304、プロセッサ303'、およびプロセッサ304'はすべて例として記載されており、具体的な機能は限定されていない。プロセッサ302および処理302'は、同じAO OSを実行するように構成されている。オペレーティングシステムは、自動運転システムにおいて常に電源オンの動作状態を維持するサブシステム上のオペレーティングシステムである。マスタシステムおよびバックアップシステムのMaster OSおよびBackup OSが起動すると、オペレーティングシステムは、ボードRTCのリアルタイムクロックから時間を取得し、その時間をMaster OSおよびBackup OSの起動時間として設定する。いくつかの実施形態において、マスタシステムが故障したとき、バックアップシステムがマスタシステムに取って代わることができる。加えて、マスタシステムが正常に動作しているとき、バックアップシステムは、マスタシステムと同じコンピューティングサービスを実行して、マスタシステムの計算結果を検証することができる。
【0099】
マスタ/バックアップシステムアーキテクチャおよび
図2のコンポーネント間の具体的な論理関係を参照して、本発明の実施形態におけるハードウェア論理アーキテクチャが説明される。
図3は、本発明の一実施形態によるハードウェア論理アーキテクチャの図である。
図3に示されるように、マスタチップ(SOCが例として使用され、以下ではバックアップチップもSOCである例を使用することによって説明を提供する)110は、プロセッサ111およびメモリ112を含むことができる。プロセッサ111は、プロセッサ301(すなわち、プロセッサ1)、プロセッサ302(すなわち、プロセッサ2)、プロセッサ303(すなわち、プロセッサ3)、およびプロセッサ304(すなわち、プロセッサ4)を含むことができる。
【0100】
プロセッサ301は、Master OSを実行するように構成され、プロセッサ2は、AO OSを実行するように構成されている。
【0101】
プロセッサ303は、自動運転に関連するサービスデータを計算する。自動運転に関連するサービスデータは、様々なセンサ、中央計算ノード、MCU制御ノード、電力管理ノード、および安全性監視ノードによって処理されるデータ、またはそれらに関連するデータを含む。いくつかの実施形態において、前述のサービスデータは、自動運転感知、融合、経路計画、ならびに車両制御コマンド生成および配信などの自動運転システムのコアアルゴリズムを実行する運転サービス論理に関する。
【0102】
プロセッサ304は、監査、ログ、およびクラウドへの運転データ移行に関連する管理データを計算するように構成されている。関連する管理データは、安全性監査、デジタル証明書有効性チェック、およびリアルタイムでの運転データのクラウドへの移行などの、リアルタイムに関連するデータを含む。いくつかの実施形態において、前述の管理データは、自動運転サービスの構成データ配信プロセスと、デバイス管理、ログ記録、車両内ブラックボックス、および安全性監査などの、自動運転サービスの動作状態を監視および記録するための関連サービスロジックと、に関する。
【0103】
マスタSOCは、1つまたは複数の他のプロセッサ、メモリ、および別の機能構成要素またはモジュール、例えば、グラフィックス処理ユニット(Graphics Processing Unit、GPU)、ランダムアクセスメモリ(Random Access Memory、RAM)、およびエンコーダをさらに含むことができる。マスタSOCは、信号受信モジュール(例えば、GNSSモジュール)およびエンドポイント307(エンドポイント1、エンドポイント2、 ... 、およびエンドポイントQが例として
図3に列挙され、Qは0より大きい整数である)に接続されている。マスタSOCは、複数のエンドポイントのそれぞれに時間基準を提供する。具体的な接続方式は、本発明の本実施形態において限定されない。エンドポイントは、時間が同期される必要があるエンドポイント(End Point、EP)、例えば、センサ、例えば、車載レーザレーダおよびミリ波レーダ、第1の水晶発振器305(第1の水晶発振器は高精度温度補償水晶発振器であってもよい)、およびクロックモジュール(例えば、RTCリアルタイムクロックチップ)であってよい。いくつかの実施形態において、マスタSOCは、代替として、バックアップSOCに接続され、チップ間の通信および相互作用を実行することができる。
【0104】
いくつかの実施形態において、マスタプロセッサ(すなわち、マスタSOC)が正常に動作しているとき、バックアッププロセッサ(すなわち、バックアップSOC)は、同時に動作することができ、マスタプロセッサと同じサービスを処理するように構成されている。例えば、バックアップSOCの第1の時間源は、マスタSOCの第1の時間源を追跡し、バックアップSOCの時間関連計算結果が、マスタSOCの時間関連計算結果と比較されて、マスタSOCにおける第1の時間源の時間精度を検証する。バックアップSOCの第1の時間源は、マスタプロセッサが故障しているとき、マスタSOCの第1の時間源を追跡することを停止する。
【0105】
バックアップSOC110'は、温度補償水晶発振器(すなわち、第2の水晶発振器)、RTCクロックチップ(すなわち、第2のクロックモジュール)、および信号受信モジュール308に接続されていることに留意されたい。加えて、バックアップSOCも、1つまたは複数のエンドポイントに接続されているが、マスタSOCが正常に動作しているときは、各エンドポイントEPに時間基準を提供しない。
【0106】
図3に示されるハードウェア論理アーキテクチャに基づいて、以下では、本発明の実施形態におけるマスタSOCの関連ハードウェア構造および自動運転のための時間源を提供するための方法を説明する。バックアップSOCの関連原理および方法については、マスタSOCを参照されたい。バックアップSOC、およびバックアップSOCとマスタSOCとの間の接続は、本明細書では重ねて説明されない。
【0107】
図4は、本発明の一実施形態によるハードウェア構造原理の概略図である。
図4に示されるように、本発明の本実施形態では、第1の水晶発振器は、温度補償水晶発振器であり、第1のクロックモジュールは、RTCクロックチップ(すなわち、リアルタイムクロックチップ)であり、衛星信号受信モジュール(または信号受信モジュール)は、GNSSモジュールであってよく、エンドポイントEPは、センサである。本発明の本実施形態では、マスタSOCのハードウェア構造は、プロセッサ301、プロセッサ302、プロセッサ303、プロセッサ304、メモリ112、バスブリッジ401、システムバス402、I/Oインターフェース403、ネットワークインターフェース404などを含む。マスタSOCはさらに、図に示されるI(専用CANバス)を介してGNSSモジュール308に接続されてGNSS信号を受信し、図に示されるII(SPIまたはIICバスなど)を介してRTCクロックチップ306に接続されて真のリアルタイムを取得し、I/Oインターフェース403を介してセンサ406に接続されてエンドポイント307、例えばセンサに時間基準を提供し、回路基板上の温度補償水晶発振器305に接続されて温度補償水晶発振器の発振周波数を取得して、システム時間の動作を維持する。いくつかの実施形態において、マスタSOCは、必要な情報またはリアルタイムデータを取得するために、ネットワークインターフェースを介してネットワークにさらに接続されてもよい。
【0108】
図4に示されるハードウェア構造を参照して、以下では、本発明の実施形態において自動運転のための時間源を提供する原理を説明する。
図5は、本発明の実施形態による自動運転のための時間源を提供する原理の概略図である。
図5に示されるように、本発明の本実施形態では、マスタSOC110内のプロセッサ301、プロセッサ302(AO OSを実行する)、プロセッサ303、プロセッサ304、GNSSモジュール(すなわち、信号受信モジュール)308、温度補償水晶発振器305、およびボードRTC(すなわち、ボードリアルタイムクロックチップ)306が、説明のための例として使用される。マスタSOCのプロセッサ301には、第1の時間源OS-CLKおよび第2の時間源GNSS-CLKである2組のクロックが配備されている。OS-CLKは、車両がGNSS信号を受信できるか否かにかかわらず、基板温度補償水晶発振器305に依存して動作する。車両がGNSS信号を取得することができる場合、GNSS-CLKは、GNSS信号に基づいて衛星によって提供されるGNSS時間を追跡する。車両がGNSS信号を取得することができない場合、GNSS-CLKは、GNSSモジュールからのメッセージフィードバック(GNSSモジュールはCインターフェースに接続されている(すなわち、CANインターフェース、以下ではCANインターフェースはCインターフェースによって表記され、これについては後述しない))に基づいて、温度補償水晶発振器を使用することによってシステムにおける時間の正常な動作を維持するように切り替わる。システムが起動され、またはスリープ状態からウェイクアップされると、ボードRTCは、マスタSOCおよびバックアップSOCのための起動時間を提供する。起動時間は、2つのSOCのOS-CLKおよびGNSS-CLKの設定に用いられる。
図5に示されるように、プロセッサ301は、ネットワークインターフェースM(例えば、ネットワークインターフェースMは10ギガビットイーサネットインターフェース(Ten-GigabitEthernet、XGE)である)を介してローカルエリアネットワークスイッチ(LAN Switch)に時間同期メッセージ(Anounce/Sync packet)を送信する。次いで、ローカルエリアネットワークスイッチが、時間同期メッセージを複数のエンドポイントに送信するための境界クロックとして使用され、各時点の時間同期を確実にする。プロセッサ301は、さらに、OS-CLKの時間同期メッセージをプロセッサ303に提供し、GNSS-CLKの時間同期メッセージをプロセッサ304に提供することができる。バックアップSOCの時間安定化原理および構造は、基本的にマスタSOCのものと同じであることが理解され得る。本明細書において、詳細は重ねて説明されない。
【0109】
いくつかの実施形態において、バックアップSOCのBackup OSのOS-CLKは、マスタSOCのMaster OSのOS-CLKを追跡するためにさらに使用される。
図6は、本発明の一実施形態による自動運転のための時間源を提供する別の原理の概略図である。
図6に示されるように、プロセッサ302およびプロセッサ302'は両方とも、同じAO OSを実行する。バックアップSOCのGNSS-CLKの動作原理は、マスタSOCのGNSS-CLKの動作原理と同じであり、マスタSOCおよびバックアップSOCは、同じ信号受信モジュール(すなわち、GNSSモジュール308)に接続されている。マスタSOCおよびバックアップSOCは、異なる温度補償水晶発振器に接続されている。しかしながら、バックアップSOCのOS-CLKは、マスタSOC(すなわち、マスタチップ)のOS-CLKの時間に基づいている。したがって、マスタSOCが正常に動作している場合、バックアップSOC(すなわち、バックアップチップ)は、マスタSOCのOS-CLKの2次マスタクロックとして使用され、別のエンドポイントのための時間基準を提供することができる。すなわち、ポイントに接続するためのマスタSOCのOS-CLKのネットワークインターフェースまたはポートが拡張される。例えば、
図6に示されるLan Switch 1(LSW 1)は、マスタSOCからの時間同期メッセージとバックアップSOCからの時間同期メッセージの両方を受信する。マスタSOCが正常に動作している場合、バックアップSOCとマスタSOCによって提供される時間の差は許容範囲内であり、運転サービス(例えば、センサによって収集されたデータのタイムスタンプの精度)にほとんど影響を与えない。LSW 1は、マスタSOCによって送信された時間同期メッセージを選択することができる。各LSWは、マスタSOCおよびバックアップSOCの対応するネットワークインターフェースに接続されている。
図6に示されるように、Lan Switch0/Lan Switch1は、内部スイッチングノードとして機能し、内部でgPTPプロトコルスタックを実行し、802.1AS境界クロックとして機能し、ポートのうちの1つを介してマスタプレーン上のMasterポートによって送信されたgPTPパケットを受信して処理し、プロトコルアルゴリズムに基づいてローカルクロックとMasterクロックとの間のずれ(時間ずれおよび周波数ずれ)および経路遅延を計算し、ローカルクロックおよびMasterクロックを調整して10usレベルの同期精度を実現し(このステップは任意選択であり、gPTP eventメッセージの常駐時間のみが補正された後に1588のTransparent ClockによってgPTP eventメッセージを転送することと同様である)、現在の同期ネットワークにおける2次Master Clockになる。次いで、AnounceおよびSyncパケットなどの時間同期メッセージが、デバイスのMaster clockポートを介して、時間が同期される必要があるエンドポイント(End Point)、例えばセンサポイント、例えば車載レーダまたはミリ波レーダに連続的に送信されてもよい。End Pointとして使用されるセンサは、gPTPプロトコル・スタック・ソフトウェアを実行してAnounceおよびSyncパケットを受信して処理し、パケットで搬送されるタイムスタンプ情報に基づいてローカルクロックとGMCクロックとの間のずれおよび経路伝送遅延を計算して調整し、ローカルクロックの時間を調整してGMC時間との同期を維持する。このようなクロック伝達階層により、すべての宛先エンドポイントとGMC時間との間の時間ずれが、設定された範囲内、例えば10us以内に制御される。
【0110】
図6に示される内容は、
図5に示される内容の拡張であり、
図6に含まれないプロセッサ303、プロセッサ304、およびプロセッサ302などの対応する内容は、本明細書では説明されないことに留意されたい。
【0111】
上述したハードウェア構造、自動運転のための時間源を提供する原理などを参照して、本発明の一実施形態による自動運転のための時間源を提供するための方法を説明する。
図7は、本発明の一実施形態による自動運転のための時間源を提供するための方法の概略フローチャートである。
図7に示されるように、本方法は、プロセッサ301(すなわち、第1のプロセッサ)によって実行され、ステップS701およびステップS702を含むことができる。
【0112】
ステップS701:第1の水晶発振器を使用することによって、自動運転システムの第1のサブシステムに第1の時間源を提供し、受信された衛星時間信号に基づいて、自動運転システムの第2のサブシステムに第2の時間源を提供する。
【0113】
いくつかの実施形態において、第1のサブシステムは、車両の運転サービス関連データを処理するように構成され、第2のサブシステムは、車両の管理関連データを処理するように構成されている。
図8は、本発明の一実施形態による時間源を生成する概略図である。
図8に示されるように、システムが起動され、GNSSモジュールがGNSS信号(すなわち、衛星時間信号)を受信することができるようになった後、自動運転の安全性を確保するために、第1の時間源(すなわち、OS-CLK)は、基板温度補償水晶発振器(例えば、基板温度補償水晶発振器の精度は10ppmである)に完全に依存して動作する。Mネットワークインターフェースにおけるハードウェアクロックは、OS-CLKと同じ時間に調整される。次いで、Masterポート(すなわち、Mネットワークインターフェース)は、gPTPプロトコルによって要求される周波数でAnounceおよびSyncパケット(すなわち、時間同期メッセージ)を送信し、その結果、OS-CLKは、ネットワーク全体のマスタクロックとなる。GNSS信号が利用可能である場合、基準周波数が、GNSS信号に基づいて第2の時間源(すなわち、GNSS-CLK)に提供され、GNSS-CLKは、GNSS時間源(すなわち、衛星のGNSS時間)との同期を保証するように調整される。同期後、GNSS-CLKとGNSS時間源との差は10us以内である。OS-CLKは、自動運転のためのコンピューティングサービス(すなわち、第1のサブシステムのサービス)専用であり、起動後はボード水晶発振器のみに依存して動作し、システム内の時間同期ネットワークにおけるルートクロック(またはマスタクロックと呼ばれる)として機能して、自動運転プレーン上の別のノードにグローバル時間源を提供する。GNSS-CLKは、車両管理関連サービス(すなわち、第2のサブシステムのサービス)に使用される。車両内のサービスプレーンは、運転プレーンおよび管理プレーンを含むことが理解され得る。運転プレーンは、車両運転計算に関連するデータを処理するために使用され、管理プレーンは、監査、ログ記録、および走行データ管理に関連するデータを処理するために使用される。運転プレーンおよび管理プレーンは両方とも、走行システム、センサシステム、および制御システムなどの1つまたは複数のサブ
システムを含むか、またはそれらに対応すると見なされてもよい。
【0114】
いくつかの実施形態において、GNSS信号(時間位置を含む)は、CANバスおよびPPSクロック信号ケーブルを通してシステムに直接アクセスされる。加えて、マスタSOCおよびバックアップSOCの両方がGNSS信号を受信することができる。このようにしてGNSS信号を受信することは、マスタSOCのGNSS-CLKおよびバックアップSOCのGNSS-CLKがGNSS信号を効果的に受信することができることを保証し、信号伝送の一貫性を保証し、さらに、後続の時間源の安定性を保証する。
【0115】
可能な一実施態様において、受信された衛星時間信号に基づいて自動運転システムの第2のサブシステムに第2の時間源を提供するステップは、衛星時間信号を第2の時間源の基準周波数として使用することによって第2の時間源を生成するステップであって、衛星時間信号が信号受信モジュールを使用することによって受信される、ステップと、第2のサブシステムに第2の時間源を提供するステップと、を含む。
【0116】
ステップS702:衛星時間信号が受信されない場合、第1の水晶発振器を使用することによって第2のサブシステムに第2の時間源を提供する。
【0117】
いくつかの実施形態において、
図9は、本発明の一実施形態による時間源を生成する別の概略図である。
図9に示されるように、GNSSモジュールが衛星を追跡できない(すなわち、GNSS信号を受信できない)場合、GNSSモジュールも時間を出力するが、この時間はゆっくりとドリフトする可能性がある。GNSSモジュールからフィードバックを受信した後、GNSS-CLKは、一般に、GNSSモジュールによって出力された時間を追跡し続けず、第1の水晶発振器に依存するシステム時間の通常のタイミングサービスを維持する。OS-CLK(すなわち、第1の時間源)は、第1の水晶発振器に依存するシステム時間の通常動作を依然として維持する。UTC時間サービスが提供される。OS-CLKクロックは、GNSS時間を追跡し、管理プレーン上のサービスのためのUCT時間を提供する。いくつかの実施形態において、GNSS-CLKは、時間同期に関与する必要がないネットワークインターフェースのハードウェアクロックであってもよく、またはソフトウェアを通して実装されてもよい。GNSS-CLKは、車両がコールドスタートまたはスリープ状態からウェイクアップされた後、かつAO OSによって初期起動時間が提供された後に実装される。GNSSが利用可能である場合、GNSS時間源が追跡される。GNSSが利用不可能である場合、GNSS-CLKは、管理プレーンサービスのUTC時間要求を満たすために、GNSS-CLKの水晶発振器を使用することによって時間同期される。確かに、GNSS時間が追跡されるときに時間ジャンプが発生する可能性があるが、自動運転の安全性に影響せず、管理プレーンデータの時間精度に対する影響はわずかである。
【0118】
可能な一実施態様において、GNSS-CLKクロックは、いくつかの実施形態において、正確なUTC時間を必要とするモジュールのためにユーザモードAPIおよびカーネルモードAPIをカプセル化する必要がある。ユーザモードAPIは、ユーザに提供され、通常の場合、管理サブシステムにおける時間情報の操作および調整を行うために使用される。カーネルモードAPIは、ユーザに提供され、必要に応じてシステム時間の手動操作および調整を行うために使用される。操作および調整は、システムに大きな影響を与える。一般に、ユーザは、システム時間に対して操作を行うにはカーネルモードAPIを介して許可を得る必要がある。時間同期などの操作は、カーネルレベルで行われる操作であることが理解され得る。ユーザが管理サブシステムにおける時間(例えば、メンテナンスの日付および試験ログ)を取得したい場合、ユーザは、ユーザモードインターフェースのみを介して、処理された時間情報のみを取得することができ、ユーザモードインターフェースのみを介して、システムの基礎となる時間は取得することができない。ユーザは、カーネルモードインターフェースを介してシステムの基礎となる時間を取得する。
【0119】
可能な一実施態様において、起動時間は、第1のクロックモジュールから取得され、起動時間は、第1の時間源および第2の時間源の起動時間である。
図10は、本発明の実施形態による起動時間を設定する概略図である。
図10の(1)に示されるように、AO OS(すなわち、プロセッサ302によって実行されるオペレーティングシステム)は、ボードリアルタイムクロックチップ(すなわち、ボードRTC,board RTC)306から起動時間または起動時点(例えば、13:40)を取得する。起動時間は、Master OS(すなわちプロセッサ301)の起動時間として設定される。いくつかの実施形態において、起動時間は、OS-CLKおよびGNSS-CLKの起動時間として設定される。例えば、システムがスリープ状態から起動またはウェイクアップされると、AO OSは、ボードRTCのリアルタイムクロックから起動時間を取得して、マスタプレーン上のOS-CLKおよびGNSS-CLKの起動時間を設定する。
【0120】
可能な一実施態様において、マスタSOCおよびバックアップSOCは、ネットワークインターフェースを介して直接接続され、バックアップSOCのOS-CLKは、TSNプロトコルに従ってマスタプレーン上のOS-CLKを追跡する。
図11は、本発明の一実施形態によるマスタ/バックアップSOC接続の概略図である。
図11の(2)に示されるように、マスタSOCは、温度補償水晶発振器305に接続され、温度補償水晶発振器305は、OS-CLKの基準発振周波数を提供する。OS-CLKは、対応するクロックシステムにおけるマスタクロックとして使用され、(自動運転関連サービスを処理するように構成された)プロセッサ303、(時間同期メッセージをエンドポイントに送信するために使用される)複数のMネットワークインターフェース、およびバックアップSOC110'に時間基準を提供する。
図11の(3)および(4)に示されるように、マスタSOCおよびバックアップSOCは、異なる温度補償水晶発振器に接続されている。しかしながら、誤差は、MネットワークポートとSネットワークポートとの間の接続を介して補正され得る。バックアップSOCは、異なる温度補償水晶発振器に依存するが、マスタSOCが正常に動作している場合、マスタSOCのOS-CLKは、依然として追跡されて、時間基準として使用される。Masterポートクロックは、gPTPプロトコルで規定されたクロックの役割である。Masterポートクロックのみが時間同期メッセージを外部に送信することができ、より高いクロック精度を有する。Slaveポートクロックは、gPTPプロトコルで規定されたクロックの役割である。Slaveポートクロックは、外部に時間同期メッセージを送信することができず、上位レベルのMasterクロックによって送信された同期メッセージを受信して処理するだけであり、Masterクロックと同期するように調整される必要がある。本発明の本実施形態では、マスタSOCおよびバックアップSOCは、MasterポートクロックとSlaveポートクロックのペアを構成する。マスタSOCおよび別の境界クロックまたは下位レベルのポイントも、MasterポートクロックとSlaveポートクロックのペアを構成することが理解され得る。
【0121】
可能な一実施態様において、本方法は、第2の時間源および予め設定された調整周期に基づいて第3の時間源を同期させるステップであって、第3の時間源が第1のクロックモジュールによって提供される時間源である、ステップをさらに含む。
図12は、本発明の一実施形態による時間源を調整する概略フローチャートである。
図12の(1)~(4)に示されるように、まず、調整周期において、GNSSインターフェースを介してGNSSモジュールによってフィードバックされた現在のGNSS時間が受信される。GNSS-CLKは、GNSS信号を追跡する。RTC時間は、AO OSを介してGNSS-CLKのGNSS時間と同期される。
【0122】
例えば、自動運転計算に関連するクロックOS-CLKの初期起動時間は、車両がコールドスタートされた後、またはスリープ状態からウェイクアップされた後に、AO OSによって提供される。その後、OSクロックは、OSクロックの水晶発振器に完全に依存して動作し、もはやGNSS時間源を追跡しない。ボード上の別のポイントは、gPTPプロトコルに基づいて、OS-CLKを追跡して、ネットワーク全体のクロック同期を実施する。この場合、OSクロックの水晶発振器のドリフトにより、OS-CLKが徐々にずれ、他のノードのクロックもずれる。したがって、自動運転中に、GNSS-CLKは、RTCクロックをGNSSクロックと同期させ続けるためにRTCクロックを周期的に調整するために使用される。このようにして、自動運転システムの時間とUTC時間との差は大きくならず、これは、OS-CLKの時間の限りないドリフトを効果的に防止する。
【0123】
本発明の前述の実施形態では、基板上に独立した水晶発振器を有する3組のクロック、OS-CLK、GNSS-CLK、およびRTC-CLKが配備されている。自動運転プレーンのOS-CLKは、主に基板温度補償水晶発振器の自励発振に依存して動作する。温度補償水晶発振器の異常または故障を防止するために、温度補償水晶発振器の動作状態に対してヘルスモニタリングを行う必要がある。水晶発振器の異常によるルートクロックの時間ジャンプが自動運転の安全性に影響を与えることを防止するために、タイミング(例えば50ms)監視プログラムが設計される。したがって、OS-CLKは、本発明の本実施形態において提供される監視アルゴリズムに基づいて監視および調整される。
【0124】
アルゴリズムは、以下のように記述される。
3つの時間源の周波数比を決定するステップであって、3つの時間源の周波数比が、第2の時間源に対する第1の時間源の第1の周波数比、第3の時間源に対する第1の時間源の第2の周波数比、および第3の時間源に対する第2の時間源の第3の周波数比を含む、ステップと、
3つの時間源の周波数比および3つの時間源のいずれか2つに対応する履歴周波数比に基づいて、3つの時間源のいずれか2つの周波数比差を決定するステップであって、3つの時間源の周波数比差が、第1の周波数比と履歴第1の周波数比との間の第1の周波数比差、第2の周波数比と履歴第2の周波数比との間の第2の周波数比差、および第3の周波数比と履歴第3の周波数比との間の第3の周波数比差を含む、ステップと、
第1の周波数比差、第2の周波数比差および第3の周波数比差に基づいて、第1の時間源、第2の時間源、または第3の時間源における目標時間源に対応する水晶発振器の周波数が予め設定された周波数範囲からずれていると判定するステップと、である。
【0125】
可能な一実施態様において、3つの時間源の周波数比を決定するステップは、
以下の式に従って、第1の周波数比FR1、第2の周波数比FR2、および第3の周波数比FR3を決定するように構成されている。
【数7】
【0126】
OS_CLKFrequencyは第1の時間源のクロック周波数であり、GNSS_CLKFrequencyは第2の時間源のクロック周波数であり、RTC_CLKFrequencyは第3の時間源のクロック周波数である。
【0127】
いくつかの実施形態において、動作プロセスにおいて、各物理クロックの周波数は、実際にはジッタがある。このため、2つのクロックの周波数比もジッタがある。802.1-ASプロトコルで推奨される方法によれば、2つのクロックのタイムスタンプシーケンスを周期的かつ連続的に測定することができる。タイムスタンプシーケンスのサイズは固定されている。各クロックのタイムスタンプシーケンスには、例えば7~10個のタイムスタンプが格納されている。タイムスタンプシーケンスは、キューを介して実装されてもよい。キューが満杯になった後、新しいタイムスタンプがキューに入るたびに、キューの末尾の最も古いタイムスタンプが消去される。次いで、2つのクロックのタイムスタンプシーケンスの最初と最後のタイムスタンプを減算することによって得られる差の比は、以下の通りである。
【数8】
【0128】
例えば、TNは7番目のタイムスタンプであってもよく、T0は1番目のタイムスタンプであってもよい。差は、1番目のタイムスタンプと7番目のタイムスタンプとの間の期間である。
【0129】
この差の逆比が2つのクロックの周波数比として用いられる。
【数9】
【0130】
可能な一実施態様において、3つの時間源の周波数比および3つの時間源のいずれか2つに対応する履歴周波数比に基づいて、3つの時間源のいずれか2つの周波数比差を決定するステップは、
以下の式に従って、第1の周波数比差ΔFR1、第2の周波数比差ΔFR2、および第3の周波数比差ΔFR3を決定するステップを含む。
ΔFR1=abs(FR1-FR1AVG)
ΔFR2=abs(FR2-FR2AVG)
ΔFR3=abs(FR3-FR3AVG)
【0131】
abs(FR1-FR1AVG)は、第1の周波数比と履歴第1の周波数比との差の絶対値であり、abs(FR2-FR2AVG)は、第2の周波数比と履歴第2の周波数比との差の絶対値であり、abs(FR3-FR3AVG)は、第3の周波数比と履歴第3の周波数比との差の絶対値である。
【0132】
例えば、2つのCLKの現在および最新の測定された周波数比は、FR_Curr(すなわち、前述の式におけるFR1)として表記され得て、ΔFRは、現在の周波数比と履歴平均周波数比との差として定義される。通常の場合、ΔFRは予想される適切な値の範囲内で変化し、3つのグループのクロックの周波数が同時にホップまたは故障する確率は限りなく低くなり得る。したがって、ΔFRが予め設定されたしきい値よりも突然大きくなった場合、2つのクロックのうちの一方が故障している可能性があると推測することができる。例えば、OS-CLKとGNSS-CLKとの間の周波数比変化ΔFR1、OS-CLKとRTC-CLKとの間の周波数比変化ΔFR2、およびGNSS-CLKとRTC-CLKとの間の周波数比変化ΔFR3のうちのいずれか2つを比較する3回の比較によって、特定の1つを見つけることができる。
【0133】
いくつかの実施形態において、3つのグループのクロックの周波数が同時にホップまたは故障する確率は限りなく低いため、水晶発振器が異常であるクロックは、投票原理に基づいて決定される。ΔFR1およびΔFR2が急激にしきい値よりも大きくなったが、ΔFR3が正常範囲内である場合、OS-CLKクロックの水晶発振器の周波数が異常であると判定される。
【0134】
いくつかの実施形態において、クロックの水晶発振器の周波数が異常であることが検出されると、クロック例外アラームが上位層管理プレーンに報告される必要がある。
【0135】
周波数比の平均値を算出する必要があることが上述された。以下は、履歴周波数平均値を計算するための方法を提供し、本方法は、
N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比が決定されるまで、予め設定された測定周期に基づいてk番目の第1の周波数比、k番目の第2の周波数比、およびk番目の第3の周波数比を決定するステップであって、0<k≦Nであり、kが整数である、ステップと、
N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比に基づいて、3つのグループの周波数比に対応する履歴周波数比を決定するステップと、をさらに含み、3つのグループの周波数比に対応する履歴周波数比が、第1の周波数比に対応する履歴第1の周波数比、第2の周波数比に対応する履歴第2の周波数比、および第3の周波数比に対応する履歴第3の周波数比を含む。
【0136】
可能な一実施態様において、N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比に基づいて、3つのグループの周波数比に対応する履歴周波数比を決定するステップは、
以下の式に従って、履歴第1の周波数比FR1
AVG、履歴第2の周波数比FR1
AVG、および履歴第3の周波数比FR3
AVGを決定するステップを含む。
【数10】
【0137】
fr11、fr12、fr13、…、fr1Nは、それぞれ1番目の第1の周波数比、2番目の第1の周波数比、3番目の第1の周波数比、…、N番目の第1の周波数比であり、fr21、fr22、fr23、…、fr2Nは、それぞれ1番目の第2の周波数比、2番目の第2の周波数比、3番目の第2の周波数比、…、N番目の第2の周波数比であり、fr31、fr32、fr33、…、fr3Nは、それぞれ1番目の第3の周波数比、2番目の第3の周波数比、3番目の第3の周波数比、…、N番目の第3の周波数比である。
【0138】
Nは、周波数比の最新のサンプル量を表すことができ、7~10の値をとることができる。
【0139】
いくつかの実施形態において、前述の水晶発振器故障検出方法は、ソフトウェアによって実施され、ソフトウェアは、大量のデータを収集、処理、および計算する必要があり、OSのスケジューリングポリシーにも依存する。その結果、検出結果がタイムリーでない可能性がある。本方法は、専用のハードウェアロジック回路によって実施することができる。あるいは、水晶発振器の故障検出をより迅速かつ正確に実施するために、ハードウェア検出ロジックがボードCPLD構成部品に書き込まれる。
【0140】
本発明の実施形態における方法は、上記で詳細に説明されており、以下では本発明の実施形態における相対的な仮想装置が提供される。
【0141】
図13は、本発明の一実施形態による自動運転のための時間源を提供する装置の構造を概略的に示す図である。自動運転のための時間源を提供するための装置131は、第1の時間源ユニット131と、第2の時間源ユニット132と、調整ユニット133と、計算ユニット134と、比較ユニット135と、判定ユニット136と、測定ユニット137と、履歴周波数比ユニット138と、を含む。
【0142】
第1の時間源ユニット131は、第1の水晶発振器を使用することによって自動運転システムの第1のサブシステムに第1の時間源を提供し、受信された衛星時間信号に基づいて自動運転システムの第2のサブシステムに第2の時間源を提供するように構成されている。
【0143】
可能な一実施態様において、装置は、
衛星時間信号が受信されない場合、第1の水晶発振器を使用することによって第2のサブシステムに第2の時間源を提供する
ように構成されている第2の時間源ユニット132をさらに含む。
【0144】
可能な一実施態様において、第1の時間源ユニット131は、いくつかの実施形態において、
衛星時間信号を第2の時間源の基準周波数として使用することによって第2の時間源を生成し、衛星時間信号が信号受信モジュールを使用することによって受信され、
第2の時間源を第2のサブシステムに提供する、
ように構成されている。
【0145】
可能な一実施態様において、本装置は、第2の時間源および予め設定された調整周期性に基づいて、第3の時間源を同期させ、第3の時間源が第1のクロックモジュールによって提供される時間源である、
ように構成された調整ユニット133をさらに含む。
【0146】
可能な一実施態様において、本装置は、
3つの時間源の周波数比を決定するように構成された計算ユニット134であって、3つの時間源の周波数比が第1の時間源と第2の時間源との第1の周波数比、第1の時間源と第3の時間源との第2の周波数比、および第2の時間源と第3の時間源との第3の周波数比を含む、計算ユニット134と、
3つの時間源の周波数比および3つの時間源のいずれか2つに対応する履歴周波数比に基づいて、3つの時間源のいずれか2つの周波数比差を決定するように構成された比較ユニット135であって、3つの時間源の周波数比差が、第1の周波数比と履歴第1の周波数比との第1の周波数比差、第2の周波数比と履歴第2の周波数比との第2の周波数比差、および第3の周波数比と履歴第3の周波数比との第3の周波数比差を含む、比較ユニット135と、
第1の周波数比差、第2の周波数比差、および第3の周波数比差に基づいて、第1の時間源、第2の時間源または第3の時間源における目標時間源に対応する水晶発振器の周波数が、予め設定された周波数範囲からずれていると判定するように構成された判定ユニット136と、
をさらに含む。
【0147】
可能な一実施態様において、計算ユニット134は、いくつかの実施形態において、
以下の式に従って、第1の周波数比FR1、第2の周波数比FR2、および第3の周波数比FR3を決定する、
ように構成されている。
【数11】
【0148】
OS_CLKFrequencyは第1の時間源のクロック周波数であり、GNSS_CLKFrequencyは第2の時間源のクロック周波数であり、RTC_CLKFrequencyは第3の時間源のクロック周波数である。
【0149】
可能な一実施態様において、比較ユニット135は、いくつかの実施形態において、
以下の式に従って、第1の周波数比差ΔFR1、第2の周波数比差ΔFR2、および第3の周波数比差ΔFR3を決定する、
ように構成されている。
ΔFR1=abs(FR1-FR1AVG)
ΔFR2=abs(FR2-FR2AVG)
ΔFR3=abs(FR3-FR3AVG)
【0150】
abs(FR1-FR1AVG)は、第1の周波数比と履歴第1の周波数比との差の絶対値であり、abs(FR2-FR2AVG)は、第2の周波数比と履歴第2の周波数比との差の絶対値であり、abs(FR3-FR3AVG)は、第3の周波数比と履歴第3の周波数比との差の絶対値である。
【0151】
可能な一実施態様において、本装置は、
N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比が決定されるまで、予め設定された測定周期に基づいてk番目の第1の周波数比、k番目の第2の周波数比、およびk番目の第3の周波数比を決定するように構成された測定ユニット137であって、0<k≦Nであり、kが整数である、測定ユニットと、
N個の第1の周波数比、N個の第2の周波数比、およびN個の第3の周波数比に基づいて、3つのグループの周波数比に対応する履歴周波数比を決定するように構成された履歴周波数比ユニット138であって、3つのグループの周波数比に対応する履歴周波数比が第1の周波数比に対応する履歴第1の周波数比、第2の周波数比に対応する履歴第2の周波数比、および第3の周波数比に対応する履歴第3の周波数比を含む、履歴周波数比ユニット138と、
をさらに含む。
【0152】
可能な一実施態様において、履歴周波数比ユニット138は、いくつかの実施形態において、
以下の式に従って、前記履歴第1の周波数比FR1
AVG、前記履歴第2の周波数比FR1
AVG、および前記履歴第3の周波数比FR3
AVGを決定するように構成されている。
【数12】
【0153】
fr11、fr12、fr13、…、fr1Nは、それぞれ1番目の第1の周波数比、2番目の第1の周波数比、3番目の第1の周波数比、…、N番目の第1の周波数比であり、fr21、fr22、fr23、…、fr2Nは、それぞれ1番目の第2の周波数比、2番目の第2の周波数比、3番目の第2の周波数比、…、N番目の第2の周波数比であり、fr31、fr32、fr33、…、fr3Nは、それぞれ1番目の第3の周波数比、2番目の第3の周波数比、3番目の第3の周波数比、…、N番目の第3の周波数比である。
【0154】
可能な一実施態様において、第1の水晶発振器は、温度補償水晶発振器である。
【0155】
なお、本発明の本実施形態に記載される自動運転のための時間源を提供するための装置については、
図7に記載される方法の実施形態における自動運転のための時間源を提供するための方法の関連説明を参照されたい。本明細書において、詳細は重ねて説明されない。
【0156】
図14は、本発明の一実施形態によるチップの構造の概略図である。自動運転のための時間源を提供する装置13は、
図14の構造を用いて実施されてもよい。デバイス14は、少なくとも1つのプロセッサ141および少なくとも1つのメモリ142を含む。加えて、デバイスは、アンテナなどの一般的な構成要素をさらに含んでもよく、詳細は本明細書では説明されない。
【0157】
プロセッサ141は、汎用中央処理装置(CPU)、マイクロプロセッサ、特定用途向け集積回路(application-specific integrated circuit、ASIC)、または前述の解決策のプログラム実行を制御するための1つもしくは複数の集積回路であってよい。
【0158】
メモリ142は、読み取り専用メモリ(read-only memory、ROM)または静的情報および命令を記憶することができる別のタイプの静的記憶デバイス、ランダムアクセスメモリ(random access memory、RAM)または情報および命令を記憶することができる別のタイプの動的記憶デバイス、電気的消去可能プログラマブル読み取り専用メモリ(Electrically Erasable Programmable Read-Only Memory、EEPROM)、コンパクトディスク読み取り専用メモリ(Compact Disc Read-Only Memory、CD-ROM)または別のコンパクトディスクストレージ、光ディスクストレージ(圧縮光ディスク、レーザディスク、光ディスク、デジタルバーサタイルディスク、ブルーレイ光ディスクなどを含む)、磁気ディスク記憶媒体または別の磁気記憶通信装置、あるいは命令またはデータ構造の形態で所定のプログラムコードを担持もしくは記憶するように構成され得て、コンピュータによってアクセスされ得る任意の他の媒体とすることができる。しかしながら、メモリ142は、これらに限定されない。メモリは、独立して存在していてもよく、バスを使用することによってプロセッサに接続される。あるいは、メモリは、プロセッサに統合されてもよい。
【0159】
メモリ142は、前述の解決策を実行するためのアプリケーションコードを記憶するように構成され、プロセッサ141は、実行を制御する。プロセッサ141は、メモリ142に記憶されたアプリケーションコードを実行するように構成される。
【0160】
図14に示されたチップが自動運転のための時間源を提供する装置である場合、メモリ142に記憶されたコードは、
図7で提供された自動運転のための時間源を提供するための方法を実行するために使用されてもよい。例えば、衛星時間信号が受信される場合、第1の水晶発振器を使用することによって第1の時間源が自動運転システムの第1のサブシステムに提供され、受信された衛星時間信号に基づいて第2の時間源が自動運転システムの第2のサブシステムに提供される。
【0161】
なお、本発明の本実施形態に記載されるチップ14の機能については、
図7における方法の実施形態における関連説明を参照されたい。本明細書において、詳細は重ねて説明されない。
【0162】
本発明の一実施形態は、自動運転システムを搭載した車両をさらに提供する。
図15は、本発明の一実施形態による車両の概略図である。
図15に示されるように、車両15は、車載コンピュータ151を含み、衛星16によって送信された衛星時間信号を受信することができる。車載コンピュータは、
図7から
図12に対応する方法の実施形態のいずれか1つに記載されたステップの一部または全部を実行することができる。例えば、衛星時間信号が受信される場合、第1の水晶発振器に依存して動作する第1の時間源と、衛星信号に依存して動作する第2の時間源とが提供される。衛星時間信号が受信されない場合、依然として第1の水晶発振器に依存して動作する第1の時間源と、第1の水晶発振器に依存するように切り替えて動作する第2の時間源とが提供される。いくつかの実施形態において、車両は、自動運転システムにおける単一点故障を回避し、システム全体の信頼性を向上させるために、バックアップ車載コンピュータをさらに含むことができる。
【0163】
前述の実施形態では、実施形態の説明にはそれぞれの注目点がある。実施形態で詳細に説明されていない部分については、他の実施形態の関連する説明を参照されたい。
【0164】
説明を簡潔にするために、前述の方法の実施形態は一連の動作として表されていることに留意されたい。しかしながら、当業者であれば分かるように、本出願によれば、いつかのステップを他の順序でまたは同時に行うことができるため、本出願は、記載された動作順序に限定されない。本明細書に記載される実施形態はすべて好ましい実施形態に属し、関連する動作およびモジュールは必ずしも本出願において必要とされないことが当業者によってさらに理解されるべきである。
【0165】
本出願で提供されるいくつかの実施形態では、開示される装置は、他のやり方で実装され得ることを理解されたい。例えば、記載された装置の実施形態は単なる例である。例えば、ユニットへの分割は、単に論理的な機能分割であり、実際の実施態様では他の分割であってもよい。例えば、複数のユニットまたは構成要素は、組み合わせられ、もしくは別のシステムに統合されてもよく、またはいくつかの特徴は、無視され、もしくは実行されなくてもよい。加えて、表示または議論された相互結合または直接結合または通信接続は、いくつかのインターフェースを使用することによって実現されてもよい。装置またはユニット間の間接的な結合または通信接続は、電子的、機械的、または他の形態で実現されてもよい。
【0166】
別個の部分として記載された前述のユニットは、物理的に分離されてもされなくてもよく、ユニットとして表示される部分は、物理的なユニットであってもなくてもよく、一箇所に位置してもよく、または複数のネットワークユニットに分散されてもよい。ユニットの一部または全部は、実施形態の解決策の目的を達成するための実際の必要性に基づいて選択されてもよい。
【0167】
加えて、本出願の実施形態における機能ユニットは、1つの処理ユニットに統合されてもよく、またはユニットのそれぞれが物理的に単独で存在してもよく、または2つ以上のユニットが1つのユニットに統合される。統合されたユニットは、ハードウェアの形態で実装されてもよく、またはソフトウェア機能ユニットの形態で実装されてもよい。
【0168】
このような理解に基づいて、本出願における技術的解決策は本質的に、あるいは従来技術に寄与する部分は、または技術的解決策のすべてもしくは一部は、ソフトウェア製品の形態で実現されてもよい。コンピュータソフトウェア製品は、記憶媒体に記憶され、コンピュータデバイス(パーソナルコンピュータ、サーバ、またはネットワークデバイスであってよく、いくつかの実施形態においてコンピュータデバイス内のプロセッサであってよい)に、本出願の実施形態に記載された前述の方法のすべてまたはいくつかのステップを実行するように命令するためのいくつかの命令を含む。前述の記憶媒体は、USBフラッシュドライブ、リムーバブルハードディスク、磁気ディスク、光ディスク、読み取り専用メモリ(Read-Only Memory、略してROM)、またはランダムアクセスメモリ(Random Access Memory、略してRAM)などの、プログラムコードを記憶することができる任意の媒体を含むことができる。
【0169】
前述の実施形態は、本出願を限定するためのものではなく、本出願の技術的解決策を説明するためのものにすぎない。本出願は、前述の実施形態を参照して詳細に説明されているが、当業者は、本出願の実施形態の技術的解決策の精神および範囲から逸脱することなく、前述の実施形態に記載された技術的解決策に対して依然として修正を行うことができ、またはその一部の技術的特徴に対して同等の置換を行うことができることを理解されたい。
【符号の説明】
【0170】
1 プロセッサ
2 プロセッサ
3 プロセッサ
4 プロセッサ
13 装置
14 デバイス、チップ
15 車両
16 衛星
100 自動車両
102 走行システム
110 マスタコンピュータシステム
110' バックアップコンピュータシステム
111 プロセッサ
112 メモリ
120 走行システム
130 感知システム
131 第1の時間源ユニット
132 第2の時間源ユニット
133 調整ユニット
134 計算ユニット
135 比較ユニット
136 判定ユニット
137 測定ユニット
138 履歴周波数比ユニット
140 制御システム
141 プロセッサ
142 メモリ
146 ワイヤレス通信システム
150 周辺デバイス
151 車載コンピュータ
160 電源
170 ユーザインターフェース
301 プロセッサ
301' プロセッサ
302 プロセッサ
302' プロセッサ
303 プロセッサ
303' プロセッサ
304 プロセッサ
304' プロセッサ
305 水晶発振器
306 RTCクロックチップ
307 エンドポイント
308 信号受信モジュール、GNSSモジュール
401 バスブリッジ
402 システムバス
403 I/Oインターフェース
404 ネットワークインターフェース
406 センサ