(57)【要約】      （修正有）【課題】システムの現在時刻データを、外部から取得した時刻データにより書き換える際に、その時刻データの正当性を正確に検証できるリアルタイムクロック装置等を提供する。【解決手段】リアルタイムクロック装置１００は、振動子を用いて発振信号を生成する発振回路と、発振信号に基づいて現在時刻データＣＴＤを生成する計時回路と、現在時刻データＣＴＤの時刻書き換え要求ＷＲＱ及び時刻書き換えデータＴＷＤを外部装置から受信するインターフェース回路と、計時回路の現在時刻データＣＴＤと時刻書き換えデータＴＷＤとの比較処理を行うことで、時刻書き換えデータＴＷＤが正当であるか否かを判定する制御回路と、を含む。【選択図】図２
2020060461.tif 000002
【特許請求の範囲】
【請求項１】
振動子を用いて発振信号を生成する発振回路と、
前記発振信号に基づいて現在時刻データを生成する計時回路と、
前記現在時刻データの時刻書き換え要求及び時刻書き換えデータを外部装置から受信するインターフェース回路と、
前記計時回路の前記現在時刻データと前記時刻書き換えデータとの比較処理を行うことで、前記時刻書き換えデータが正当であるか否かを判定する制御回路と、
を含むことを特徴とするリアルタイムクロック装置。
【請求項２】
請求項１に記載のリアルタイムクロック装置において、
前記制御回路は、
前記時刻書き換えデータが正当であると判定したとき、前記時刻書き換え要求を実行することを特徴とするリアルタイムクロック装置。
【請求項３】
請求項１又は２に記載のリアルタイムクロック装置において、
前記計時回路の計時精度データを記憶するメモリーと、
前記現在時刻データが前回書き換えられたときの時刻の指標となる参照時刻データを保持する保持回路と、
を含み、
前記制御回路は、
前記参照時刻データと前記計時精度データと前記現在時刻データを用いて前記比較処理を行うことで、前記時刻書き換えデータが正当であるか否かを判定することを特徴とするリアルタイムクロック装置。
【請求項４】
請求項３に記載のリアルタイムクロック装置において、
前記制御回路は、
前記現在時刻データと前記参照時刻データとの差分と、前記計時精度データとに基づいて許容誤差を求め、前記許容誤差に基づいて前記時刻書き換えデータが正当であるか否かを判定することを特徴とするリアルタイムクロック装置。
【請求項５】
請求項４に記載のリアルタイムクロック装置において、
前記制御回路は、
前記現在時刻データと前記時刻書き換えデータとの差分が、前記許容誤差よりも小さい場合に、前記時刻書き換えデータが正当であると判定することを特徴とするリアルタイムクロック装置。
【請求項６】
請求項３乃至５のいずれか一項に記載のリアルタイムクロック装置において、
前記計時精度データは、
前記振動子の発振周波数精度を表すデータであることを特徴とするリアルタイムクロック装置。
【請求項７】
請求項１乃至６のいずれか一項に記載のリアルタイムクロック装置において、
前記インターフェース回路は、
前記外部装置から、暗号化された前記時刻書き換えデータを受信し、
前記制御回路は、
前記暗号化された前記時刻書き換えデータを復号することを特徴とするリアルタイムクロック装置。
【請求項８】
請求項７に記載のリアルタイムクロック装置において、
前記制御回路は、
前記外部装置から前記現在時刻データの読み出し要求があったとき、暗号化した前記現在時刻データを、前記インターフェース回路を介して前記外部装置に出力することを特徴とするリアルタイムクロック装置。
【請求項９】
振動子を用いて発振信号を生成する発振回路と、
前記発振信号に基づいて現在時刻データを生成する計時回路と、
外部装置から要求があったとき、前記現在時刻データの書き換えに用いられる時刻書き換えデータが正当であるか否かを前記外部装置が判定するための判定用データと、前記現在時刻データと、を前記外部装置に送信するインターフェース回路と、
を含むことを特徴とするリアルタイムクロック装置。
【請求項１０】
請求項９に記載のリアルタイムクロック装置において、
前記時刻書き換えデータが正当であると判定した前記外部装置からの時刻書き換え要求を前記インターフェース回路が受信したとき、前記時刻書き換えデータにより前記現在時刻データを書き換える制御回路を含むことを特徴とするリアルタイムクロック装置。
【請求項１１】
請求項１０に記載のリアルタイムクロック装置において、
前記現在時刻データが前回書き換えられたときの時刻の指標となる参照時刻データを保持する保持回路を含み、
前記制御回路は、
前記参照時刻データを前記判定用データとして、前記インターフェース回路を介して前記外部装置に送信することを特徴とするリアルタイムクロック装置。
【請求項１２】
請求項１１に記載のリアルタイムクロック装置において、
前記計時回路の計時精度データを記憶するメモリーを含み、
前記制御回路は、
前記参照時刻データ及び前記計時精度データを前記判定用データとして、前記インターフェース回路を介して前記外部装置に送信することを特徴とするリアルタイムクロック装置。
【請求項１３】
請求項１１に記載のリアルタイムクロック装置において、
前記計時回路の計時精度データを記憶するメモリーを含み、
前記制御回路は、
前記現在時刻データと前記参照時刻データとの差分と、前記計時精度データとに基づいて許容誤差を求め、
前記インターフェース回路は、
前記参照時刻データ及び前記許容誤差を前記判定用データとして前記外部装置に送信することを特徴とするリアルタイムクロック装置。
【請求項１４】
請求項１乃至１３のいずれか一項に記載のリアルタイムクロック装置において、
前記外部装置に供給される第１電源がオフであるときに第２電源が供給される電源端子を含むことを特徴とするリアルタイムクロック装置。
【請求項１５】
請求項１乃至１４のいずれか一項に記載のリアルタイムクロック装置において、
前記振動子を含むことを特徴とするリアルタイムクロック装置。
【請求項１６】
請求項１乃至１５のいずれか一項に記載のリアルタイムクロック装置を含むことを特徴とする電子機器。
【請求項１７】
請求項１乃至１５のいずれか一項に記載のリアルタイムクロック装置を含むことを特徴とする移動体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リアルタイムクロック装置、電子機器及び移動体等に関する。
【背景技術】
【０００２】
種々のシステムにおいて、カウンター等を用いて計時を行い、その計時データをシステムの現在時刻データとして用いる手法が知られている。システムは、ネットワーク或いは衛星測位システム等から時刻データを取得し、その時刻データによりカウンターの計時データを書き換える。これにより、計時データの初期化、或いは計時データの定期的な修正等が可能となる。このとき、不正な時刻データにより計時データが書き換えられると、システムの現在時刻が不正な時刻になる。
【０００３】
システム外部から取得された時刻データの正当性を検証する手法は、例えば特許文献１に開示されている。特許文献１では、ＭＰＵがスリープモードに入る前に、内部時刻情報をもとにタイムスタンプデータを生成し、そのタイムスタンプデータをＭＰＵ内の不揮発性メモリーに記憶させておく。そして、ＭＰＵに電源が再投入された際に、ＭＰＵは、不揮発性メモリーから読み出したタイムスタンプデータと、新たに取得される外部時刻情報とを比較することで、外部時刻情報の正当性を検証する。外部時刻情報がタイムスタンプデータよりも過去である場合には、外部時刻情報が不正であると判定される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−２８６５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
システムの現在時刻データを、外部から取得した時刻データにより書き換える際に、その時刻データの正当性をより正確に検証したいという課題がある。特許文献１の手法では、確実にリジェクトできる不正な外部時刻データは、不揮発性メモリーに記憶されたタイムスタンプデータよりも過去の時刻データに限定される。例えば、外部時刻データが、ＭＰＵがスリープモードに入ってから電源が再投入されるまでの間の時刻であった場合には、その外部時刻データをリジェクトできない。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は態様として実現することが可能である。
【０００７】
本発明の一態様は、振動子を用いて発振信号を生成する発振回路と、前記発振信号に基づいて現在時刻データを生成する計時回路と、前記現在時刻データの時刻書き換え要求及び時刻書き換えデータを外部装置から受信するインターフェース回路と、前記計時回路の前記現在時刻データと前記時刻書き換えデータとの比較処理を行うことで、前記時刻書き換えデータが正当であるか否かを判定する制御回路と、を含むリアルタイムクロック装置に関係する。
【図面の簡単な説明】
【０００８】
【図１】本実施形態のリアルタイムクロック装置を含むシステムの一例。
【図２】本実施形態のリアルタイムクロック装置の第１構成例。
【図３】外部装置及びリアルタイムクロック装置に対して電源を供給する電源システムの例。
【図４】リアルタイムクロック装置の第１の詳細な構成例。
【図５】リアルタイムクロック装置を含むシステムにおける時刻書き換え処理の手順を示すフローチャート。
【図６】本実施形態のリアルタイムクロック装置の第２構成例。
【図７】リアルタイムクロック装置の第２の詳細な構成例。
【図８】電子機器の構成例。
【図９】移動体の例。
【発明を実施するための形態】
【０００９】
以下、本発明の好適な実施の形態について詳細に説明する。なお以下に説明する本実施形態は特許請求の範囲に記載された本発明の内容を不当に限定するものではなく、本実施形態で説明される構成の全てが本発明の解決手段として必須であるとは限らない。
【００１０】
１．システム例
図１は、本実施形態のリアルタイムクロック装置１００を含むシステムの一例である。図１には、システムの一例として車載ネットワークシステム７００を示す。車載ネットワークシステム７００は、車載ネットワークと外部ネットワークとを接続するためのゲートウェイ７４０と、ゲートウェイ７４０に接続される車載ネットワーク用のバス７８０と、を含む。また、車載ネットワークシステム７００は、例えば通信回路ＭＢＮ、ＢＴ、ＷＦと、ＧＮＳＳ７５０（Global Navigation Satellite System）と、センサーシステム７６０と、ＡＤＡＳ７７０（Advanced Driver Assistance Systems）と、を含むことができる。
【００１１】
通信回路ＭＢＮ、ＢＴ、ＷＦは、外部ネットワークとの間の通信を行うための回路であり、ゲートウェイ７４０に接続されている。例えば、通信回路ＭＢＮは、ＬＴＥ（Long Term Evolution）等のモバイルネットワークとの間の無線通信を行う。通信回路ＢＴは、ブルートゥース（登録商標）等の近接通信規格における無線通信を行う。通信回路ＷＦは、Ｗｉ−Ｆｉ（登録商標）等の無線ＬＡＮ通信規格における無線通信を行う。
【００１２】
バス７８０は、例えばＣＡＮ（Controller Area Network）等の車載ネットワーク規格のバスである。ＧＮＳＳ７５０及びセンサーシステム７６０、ＡＤＡＳ７７０は、バス７８０を介してゲートウェイ７４０に接続されている。ＧＮＳＳ７５０は、例えばＧＰＳ（Global Positioning System）等の測位システムである。センサーシステム７６０は、例えばＬＩＤＡＲ（Laser Imaging Detection And Ranging）等のイメージングセンサー又は測距センサー等である。ＡＤＡＳ７７０は、ＧＮＳＳ７５０及びセンサーシステム７６０からの情報に基づく運転支援制御を行う。
【００１３】
ゲートウェイ７４０は、ＭＰＵ６００とリアルタイムクロック装置１００とを含む。なお以下では、ＭＰＵ６００を、リアルタイムクロック装置１００に対して外部装置とも呼ぶ。
【００１４】
ＭＰＵ６００は、車載ネットワークと外部ネットワークとを接続する処理を行う。また、ＭＰＵ６００は、車載ネットワークシステム７００における時刻の同期処理を行う。具体的には、ＭＰＵ６００は、通信回路ＭＢＮ、ＢＴ、ＷＦ或いはＧＮＳＳ７５０等から時刻データを取得し、その時刻データに基づいてリアルタイムクロック装置１００の現在時刻データを書き換える。それと共に、ＭＰＵ６００は、更新されたリアルタイムクロック装置１００の現在時刻データを車載ネットワークにブロードキャストする。この結果、車載ネットワーク内のＧＮＳＳ７５０及びセンサーシステム７６０、ＡＤＡＳ７７０が保持するローカル時刻データが、ゲートウェイ７４０からの現在時刻データにより更新される。
【００１５】
車載ネットワークシステム７００の時刻は、例えば車載ネットワークシステム７００が受信した情報の信頼性判断に用いられている。即ち、受信した情報のタイムスタンプと、車載ネットワークシステム７００が保持する時刻とを比較することで、受信した情報が信頼できるか否かを判断できる。
【００１６】
しかしながら、通信回路ＭＢＮ、ＢＴ、ＷＦ或いはＧＮＳＳ７５０等に対して不正なアクセスが行われ、真の時刻とは異なる時刻データを含む情報が車載ネットワークシステム７００に入力されるおそれがある。この場合、ＭＰＵ６００がリアルタイムクロック装置１００の現在時刻データを書き換えるための時刻書き換えデータが不正なデータとなる。もし仮に、リアルタイムクロック装置１００が、その時刻書き換えデータによる現在時刻データの書き換えを許してしまった場合には、車載ネットワークシステム７００全体の時刻が不正な時刻に設定されるおそれがある。そうすると、車載ネットワークシステム７００が受信した情報の信頼性判断を適正に行えない可能性がある。例えば、車間通信において過去に通信された情報を記録しておき、その記録した情報を再生送信するリプレイアタックという手法が知られている。車載ネットワークシステム７００の時刻が、真の時刻よりも過去の時刻に設定されていると、リプレイアタックを受けた場合でも、そのリプレイアタックにより受信された時刻データが不正であることを検出できない。
【００１７】
２．第１構成例
図２は、本実施形態のリアルタイムクロック装置１００の第１構成例である。リアルタイムクロック装置１００は、インターフェース回路１４０と制御回路１３０と計時回路１２０と発振回路１１０とを含む。
【００１８】
リアルタイムクロック装置１００は、集積回路装置等の回路装置で構成され、その回路装置が、インターフェース回路１４０と制御回路１３０と計時回路１２０と発振回路１１０とを含む。或いは、リアルタイムクロック装置、回路装置と、発振回路１１０に電気的に接続された振動子とを含んでもよい。例えば回路装置と振動子がパッケージに収容されることでリアルタイムクロック装置が構成されてもよい。なお、電気的な接続は、電気信号が伝達可能に接続されていることである。電気信号による情報の伝達が可能となる接続が電気的な接続であり、信号線や能動素子等を介した接続であってもよい。
【００１９】
発振回路１１０は、振動子を用いて発振信号を生成する。計時回路１２０は、発振信号に基づいて現在時刻データＣＴＤを生成する。即ち、発振回路１１０は、発振信号をバッファリング又は分周することでクロック信号を出力する。そして、計時回路１２０は、発振回路１１０からのクロック信号を分周して１秒周期のクロック信号を生成し、その１秒周期のクロック信号をカウントすることで時間を計測する。そのカウンターのカウント値が現在時刻データＣＴＤに対応する。
【００２０】
ここで、現在時刻データとは、現在時刻を示すリアルタイムクロック情報として計測されたデータである。例えば、計時データは日時を示すデータであり、カレンダーデータ、時刻データを含むことができる。例えば、カレンダーデータは、年、月、週、日などのデータであり、時刻データは、時、分、秒などのデータである。
【００２１】
インターフェース回路１４０は、現在時刻データＣＴＤの時刻書き換え要求ＷＲＱ及び時刻書き換えデータＴＷＤを外部装置２０から受信する。外部装置２０は、例えばＳＯＣ（System On Chip）或いはＣＰＵ、ＭＰＵ等の処理装置である。例えば図１において外部装置２０はＭＰＵ６００である。制御回路１３０は、計時回路１２０の現在時刻データＣＴＤと時刻書き換えデータＴＷＤとの比較処理を行うことで、時刻書き換えデータＴＷＤが正当であるか否かを判定する。具体的には、制御回路１３０は、現在時刻データＣＴＤと時刻書き換えデータＴＷＤとの差分が許容誤差よりも小さいか否かを判定する。そして、制御回路１３０は、差分が許容誤差よりも小さい場合には時刻書き換えデータＴＷＤが正当であると判定し、差分が許容誤差以上である場合には時刻書き換えデータＴＷＤが正当でないと判定する。
【００２２】
ここで、時刻書き換え要求ＷＲＱとは、外部装置２０がリアルタイムクロック装置１００に対して現在時刻データの書き換えを指示するコマンド又は制御信号である。また、時刻書き換えデータＴＷＤとは、外部装置２０が、計時回路１２０のカウンターにより計時される現在時刻データＣＴＤを書き換えるための時刻データである。例えば図１において、ＭＰＵ６００は、通信回路ＭＢＮ、ＢＴ、ＷＦ又はＧＮＳＳ７５０から取得した時刻データを、時刻書き換えデータＴＷＤとしてリアルタイムクロック装置１００へ出力する。リアルタイムクロック装置１００の制御回路１３０は、外部装置２０からインターフェース回路１４０を介して時刻書き換え要求ＷＲＱ及び時刻書き換えデータＴＷＤを受け取ったとき、計時回路１２０から現在時刻データＣＴＤを読み出し、その読み出した現在時刻データＣＴＤと、外部装置２０からの時刻書き換えデータＴＷＤとの比較処理を実行する。
【００２３】
また許容誤差とは、時刻書き換えデータＴＷＤの正当性を判断する上で許容される時刻誤差である。例えば、許容誤差は、後述のように参照時刻データ及び計時精度データを用いて求められる。この場合、比較処理を実行する毎に許容誤差が求められ、許容誤差は一定ではない。或いは、許容誤差は、演算により求められる値ではなく一定値であってもよい。この場合、各比較処理において、許容誤差は同一であってもよい。
【００２４】
本実施形態によれば、現在時刻データＣＴＤと時刻書き換えデータＴＷＤとの比較処理が行われることで、時刻書き換えデータＴＷＤが正当であるか否かが判定される。即ち、過去時刻を示す時刻データを基準とするのではなく、現在時刻を示す時刻データを基準とするため、時刻書き換えデータＴＷＤの正当性を正確に判断できる。これにより、例えば図１のようなシステムにおいて、ゲートウェイ７４０が車載ネットワークに対して正当な時刻データをブロードキャストできるようになる。
【００２５】
例えば上述した特許文献１では、ＭＰＵがスリープしたときの時刻データを基準として、電源が再投入された後に取得された時刻データの正当性を判定している。しかしながら、ＭＰＵがスリープしている間は計時が行われていないので、ＭＰＵがスリープしてから電源が再投入されるまでに経過した時間が不明である。このため、正当性の判定精度が低くなるおそれがある。この点、本実施形態によれば、ＭＰＵとは別に設けられたリアルタイムクロック装置１００が計時を行い、その現在時刻データＣＴＤと時刻書き換えデータＴＷＤとの比較処理が行われる。これにより、現在時刻データＣＴＤを基準とする高精度な正当性判断が可能となる。
【００２６】
また上述した特許文献１では、ＭＰＵ内に不揮発性メモリーを搭載し、突発的な電源オフ時にタイムスタンプデータを不揮発性メモリーに緊急退避させるハード構成やシーケンスが必要となる。この点、本実施形態によれば、ＭＰＵとは別に設けられたリアルタイムクロック装置１００が計時を行うので、突発的な電源オフ時にタイムスタンプデータを不揮発性メモリーに緊急退避させるハード構成やシーケンスが不要である。
【００２７】
制御回路１３０は、現在時刻データＣＴＤと時刻書き換えデータＴＷＤとの比較処理を行った後、以下の処理を行う。即ち、制御回路１３０は、上記比較処理において時刻書き換えデータＴＷＤが正当であると判定したとき、時刻書き換え要求ＷＲＱを許可し、時刻書き換え要求ＷＲＱを実行する。具体的には、制御回路１３０は、時刻書き換えデータＴＷＤが正当であると判定したとき、書き込み信号と時刻書き換えデータＴＷＤとを計時回路１２０へ出力する。計時回路１２０は、制御回路１３０からの書き込み信号を用いて、カウンターにより計時される現在時刻データＣＴＤを時刻書き換えデータＴＷＤにより書き換える。計時回路１２０は、時刻書き換えデータＴＷＤから再び計時をスタートし、その計時データを現在時刻データＣＴＤとして出力する。
【００２８】
本実施形態によれば、外部装置２０からの時刻書き換えデータＴＷＤが正当でないと判定された場合に、計時回路１２０の現在時刻データＣＴＤが時刻書き換えデータＴＷＤにより書き換えられない。言い換えると、外部装置２０からの時刻書き換えデータＴＷＤが正当でないと判定された場合に、制御回路１３０は、書き込み信号と時刻書き換えデータＴＷＤとを計時回路１２０へ出力しない。これにより、不正な時刻書き換えデータＴＷＤによりリアルタイムクロック装置１００の現在時刻データＣＴＤが書き換えられることを、防ぐことができる。
【００２９】
なお、制御回路１３０が比較処理後に行う処理は上記に限定されない。例えば、制御回路１３０は、現在時刻データＣＴＤを時刻書き換えデータＴＷＤにより書き換えると共に、時刻書き換えデータＴＷＤが正当であるか否かの判定結果を、インターフェース回路１４０を介して外部装置２０へ通知してもよい。
【００３０】
このようにすれば、不正な時刻書き換えデータＴＷＤによりリアルタイムクロック装置１００の現在時刻データＣＴＤが書き換えられた場合であっても、外部装置２０が、その不正な書き換えに対する措置をとることができる。例えば、外部装置２０は、時刻書き換えデータＴＷＤが正当でないとの判定結果をリアルタイムクロック装置１００から受信した場合、リアルタイムクロック装置１００の現在時刻データＣＴＤを採用しない。例えば、図１においてＭＰＵ６００は、リアルタイムクロック装置１００の現在時刻データＣＴＤを車載ネットワークに対してブロードキャストしない。或いは、外部装置２０は、外部装置２０は、時刻書き換えデータＴＷＤが正当でないとの判定結果をリアルタイムクロック装置１００から受信した場合、再び時刻書き換え要求ＷＲＱ及び時刻書き換えデータＴＷＤをリアルタイムクロック装置１００へ送信してもよい。例えば、図１において、ＭＰＵ６００が、通信回路ＭＢＮ、ＢＴ、ＷＦ或いはＧＮＳＳ７５０から新たに時刻データを取得し、その時刻データを時刻書き換えデータＴＷＤとしてリアルタイムクロック装置１００へ送信してもよい。
【００３１】
本実施形態において、外部装置２０が動作オフした場合であっても、リアルタイムクロック装置１００は動作オンになっており、計時を続ける。以下、詳細を説明する。
【００３２】
図３に、外部装置２０及びリアルタイムクロック装置１００に対して電源を供給する電源システムの例を示す。この電源システムは、例えば図１の車載ネットワークシステム７００と共に自動車に搭載される。或いは、電源システムは、外部装置２０及びリアルタイムクロック装置１００と共に種々の電子機器に搭載されてもよい。
【００３３】
図３に示すように、外部装置２０には電源回路６１０から第１電源が供給される。電源回路６１０はバッテリー６３０から供給される電源に基づいて第１電源を供給する。リアルタイムクロック装置１００は電源端子ＴＶＤを含み、その電源端子ＴＶＤには、電源回路６２０から第２電源が供給される。電源回路６２０はバッテリー６３０から供給される電源に基づいて第２電源を供給する。またリアルタイムクロック装置１００は、電源端子ＴＶＤに供給される第２電源により計時動作を行う。
【００３４】
このとき、電源回路６１０が、外部装置２０への第１電源をオフしている場合であっても、電源回路６２０は、リアルタイムクロック装置１００への第２電源をオンに維持している。即ち、外部装置２０は第１電源のオンオフにより動作オン又は動作オフとなるが、リアルタイムクロック装置１００は、第２電源により動作オンが維持されるようになっている。例えば、自動車において、イグニッションキーに連動して電源回路６１０が第１電源をオン又はオフに制御する。一方、電源回路６２０はイグニッションキーに連動せず、第２電源を常時オンにする。なお、バッテリー６３０が取り外された場合、例えば電池６４０又は不図示の電気二重層キャパシターを搭載しておくことで、電源回路６２０が、電池６４０又は電気二重層キャパシターからの電源に基づいて第２電源をリアルタイムクロック装置１００に供給してもよい。
【００３５】
本実施形態によれば、外部装置２０に供給される第１電源がオフである場合であっても、リアルタイムクロック装置１００へ供給される第２電源がオンとなっている。これにより、現在時刻データＣＴＤと時刻書き換えデータＴＷＤとの比較処理が可能となっている。例えば、システムの起動時においてシステム外部から時刻データを取得し、その時刻データを書き換え時刻データとしてリアルタイムクロック装置１００の現在時刻データを書き換える。このとき、システムの電源がシャットダウンされている間においてもリアルタイムクロック装置１００は計時を続けるので、システムの起動時においても現在時刻データが存在している。これにより、システムの起動時においても現在時刻データＣＴＤと時刻書き換えデータＴＷＤとの比較処理が可能である。
【００３６】
３．第１の詳細な構成例
図４は、リアルタイムクロック装置１００の第１の詳細な構成例である。リアルタイムクロック装置１００は回路装置２００と振動子ＸＴＡＬとを含む。回路装置２００は例えば集積回路装置である。回路装置２００は、発振回路１１０と計時回路１２０と制御回路１３０とインターフェース回路１４０と不揮発性メモリー１５０とリセット回路１６０と保持回路１７０とを含む。なお既に説明した構成要素と同一の構成要素には同一の符号を付し、その構成要素についての説明を適宜に省略する。
【００３７】
振動子ＸＴＡＬは例えば圧電振動子である。圧電振動子は例えば水晶振動子である。水晶振動子は、例えば音叉型の水晶振動子、又はカット角がＡＴカットやＳＣカットなどの厚みすべり振動する水晶振動子である。また振動子として、ＳＡＷ（Surface Acoustic Wave）共振子、シリコン基板を用いて形成されたシリコン製振動子としてのＭＥＭＳ（Micro Electro Mechanical Systems）振動子等を採用してもよい。
【００３８】
リセット回路１６０は、回路装置２００をリセット処理する。具体的には、リセット回路１６０はパワーオンリセット回路であり、回路装置２００に電源が投入されたときにリセットパルスを生成する。制御回路１３０は、リセットパルスによりリセット状態にされた後、リセット解除状態となる。
【００３９】
インターフェース回路１４０は、外部装置２０とリアルタイムクロック装置１００との間の通信を行う。インターフェース回路１４０の通信方式として、例えばＩ２Ｃ（Inter Integrated Circuit）方式、又はＳＰＩ（Serial Peripheral Interface）方式等を採用できる。インターフェース回路１４０は、これらの通信方式を実現する入出力バッファー回路及び制御ロジック等を含むことができる。
【００４０】
不揮発性メモリー１５０は、計時回路１２０の計時精度データＡＰＤを記憶するメモリーである。計時精度データＡＰＤは、真の時間経過に対する計時精度を表すデータであり、例えば単位時間当たりの計時誤差を表すデータである。具体的には、計時精度データＡＰＤは、振動子ＸＴＡＬの発振周波数精度を表すデータである。即ち、計時精度データＡＰＤは、振動子ＸＴＡＬ及び発振回路１１０の発振周波数特性に起因した、単位時間当たりの発振周波数の偏差を示すデータである。計時精度データＡＰＤは、リアルタイムクロック装置１００の製造時等における計測結果、或いは設計値等であり、予め不揮発性メモリー１５０に記憶されている。
【００４１】
不揮発性メモリー１５０は、例えばＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）やフラッシュメモリーなどである。ＥＥＰＲＯＭは例えばフローティングゲート型のメモリーセルなどにより実現できる。フラッシュメモリーは、例えばＭＯＮＯＳ（Metal Oxide Nitride Oxide Silicon）のメモリーセルなどにより実現できる。或いは不揮発性メモリー１５０は、ヒューズセルを用いたメモリーであってもよい。このタイプのメモリーでは、メモリーセルであるヒューズセルが、抵抗素子と、抵抗素子に直列接続されるセレクター素子を含む。セレクター素子は例えばＰＮ接合のダイオード、或いはＭＯＳトランジスターである。例えば抵抗素子の一端は、ビット線に接続され、抵抗素子の他端はダイオードのアノードに接続される。ダイオードのカソードはワード線に接続される。ヒューズ素子として機能する抵抗素子は、抵抗値が可変のプログラマブル抵抗である。この可変の抵抗値によって、ヒューズセルにデータが記憶される。
【００４２】
保持回路１７０は、参照時刻データＰＳＷＤを保持する。参照時刻データＰＳＷＤは、現在時刻データＣＴＤが前回書き換えられたときの時刻の指標となる時刻データである。具体的には、参照時刻データＰＳＷＤは、計時回路１２０の現在時刻データＣＴＤが前回書き換えられたときの時刻データ、或いは、それを代替する時刻データである。参照時刻データＰＳＷＤを用いることで、計時回路１２０の現在時刻データＣＴＤが前回書き換えられたときから、現在までの経過時間を知ることができる。
【００４３】
例えば、保持回路１７０は、前回の時刻書き換えにおいて外部装置２０から入力された時刻書き換えデータＴＷＤを、参照時刻データＰＳＷＤとして保持する。即ち、制御回路１３０が、インターフェース回路１４０を介して外部装置２０から時刻書き換えデータＴＷＤを受信し、その時刻書き換えデータＴＷＤを保持回路１７０へ出力する。保持回路１７０は、その時刻書き換えデータＴＷＤを保持する。これを時刻書き換えデータＴＷＤ１とする。同様にして、制御回路１３０が新たに時刻書き換えデータＴＷＤを受信し、保持回路１７０へ出力すると、保持回路１７０が新たに時刻書き換えデータＴＷＤ２を保持する。このとき、保持回路１７０は、前回の時刻書き換えデータＴＷＤ１を参照時刻データＰＳＷＤとして保持する。或いは、保持回路１７０は、外部装置２０がシャットダウンしたときの現在時刻データＣＴＤを参照時刻データＰＳＷＤとして保持してもよい。即ち、外部装置２０が、シャットダウン時においてイベント信号を出力する。制御回路１３０は、インターフェース回路１４０を介してイベント信号を受信したとき、計時回路１２０から現在時刻データＣＴＤを読み出して保持回路１７０へ出力する。保持回路１７０は、その現在時刻データＣＴＤを参照時刻データＰＳＷＤとして保持する。保持回路１７０は、例えばＳＲＡＭ又はＤＲＡＭ等の半導体メモリーである。或いは保持回路１７０は、フリップフロップ回路等で構成されるレジスターであってもよい。
【００４４】
制御回路１３０は、暗号回路１３１とレジスター１３２と判定回路１３３とゲート回路１３４とを含む。制御回路１３０はロジック回路であり、例えば自動配置配線により構成されたゲートアレイ回路である。なお、制御回路１３０と計時回路１２０は、一体のゲートアレイ回路等として構成されてもよい。
【００４５】
暗号回路１３１は、インターフェース回路１４０を介して受信される暗号化されたデータを、復号処理する。また暗号回路１３１は、インターフェース回路１４０を介して送信されるデータを暗号化処理する。暗号方式としては、例えばＡＥＳ（Advanced Encryption Standard）等の共通鍵暗号方式、或いはＲＳＡ等の公開鍵暗号方式を用いることができる。インターフェース回路１４０は、暗号化された時刻書き換え要求ＷＲＱ及び時刻書き換えデータＴＷＤを受信し、暗号回路１３１は、その時刻書き換え要求ＷＲＱ及び時刻書き換えデータＴＷＤを復号処理する。レジスター１３２は、復号処理された時刻書き換え要求ＷＲＱ及び時刻書き換えデータＴＷＤを記憶する。またインターフェース回路１４０が外部装置２０から読み出し要求を受信したとき、暗号回路１３１は、暗号化した現在時刻データＣＴＤを、インターフェース回路１４０を介して外部装置２０に出力する。
【００４６】
判定回路１３３は、参照時刻データＰＳＷＤと計時精度データＡＰＤと現在時刻データＣＴＤを用いた比較処理を行うことで、時刻書き換えデータＴＷＤが正当であるか否かを判定する。即ち、判定回路１３３は、レジスター１３２に時刻書き換え要求ＷＲＱが書き込まれたとき、保持回路１７０から参照時刻データＰＳＷＤ及び時刻書き換えデータＴＷＤを読み出し、不揮発性メモリー１５０から計時精度データＡＰＤを読み出し、計時回路１２０から現在時刻データＣＴＤを読み出す。そして判定回路１３３は、これらのデータを用いて、時刻書き換えデータＴＷＤと現在時刻データＣＴＤとの比較処理を行う。
【００４７】
具体的には、下式（１）に示すように、判定回路１３３は、現在時刻データＣＴＤと参照時刻データＰＳＷＤとの差分と、計時精度データＡＰＤとに基づいて許容誤差ＴＬＲを求め、その許容誤差ＴＬＲに基づいて時刻書き換えデータＴＷＤが正当であるか否かを判定する。
ＴＬＲ＝（ＣＴＤ−ＰＳＷＤ）×ＡＰＤ  ・・・（１）
【００４８】
許容誤差ＴＬＲの演算の一例を示す。計時精度データＡＰＤは、温度特性及びリフローシフト特性、エージング特性を含む。温度特性は、振動子ＸＴＡＬの発振周波数が有する温度特性に起因した発振周波数偏差であり、一例として±３．４ｐｐｍ／秒とする。リフローシフト特性は、発振周波数の電圧特性に起因した発振周波数偏差であり、一例として±３．０ｐｐｍ／秒とする。エージング特性は、発振周波数の経時変化を示す発振周波数偏差であり、一例として±５．０ｐｐｍ／年とする。ＣＴＤ、ＰＳＷＤは計時回路１２０のカウント値であり、１カウントが１秒を表す。一例としてＣＴＤ＝８６９０００カウント、ＰＳＷＤ＝５０００カウントとする。ＣＴＤ−ＰＳＷＤ＝８６４０００カウントは１０日に相当する。以上の数値を上式（１）に代入すると、許容誤差ＴＬＲは下式（２）となる。
ＴＬＲ＝（８６９０００ｓ−５０００ｓ）×（３．４ｐｐｍ＋３．０ｐｐｍ＋５．０ｐｐｍ／（３６５ｄａｙ×２４ｈ×６０ｍｉｎ×６０ｓ））＝５．５２６ｓ  ・・・（２）
【００４９】
判定回路１３３は、下式（３）及び（４）を満たす場合に、時刻書き換えデータＴＷＤが正当であると判定する。即ち判定回路１３３は、現在時刻データＣＴＤと時刻書き換えデータＴＷＤとの差分が、許容誤差ＴＬＲよりも小さい場合に、時刻書き換えデータＴＷＤが正当であると判定する。
ＴＷＤ＞ＣＴＤ−｜ＴＬＲ｜  ・・・（３）
ＴＷＤ＜ＣＴＤ＋｜ＴＬＲ｜  ・・・（４）
【００５０】
判定回路１３３は、上記判定の結果に基づいて判定信号ＦＤＴをゲート回路１３４に出力する。判定回路１３３は、時刻書き換えデータＴＷＤが正当であると判定したとき判定信号ＦＤＴをアクティブにし、時刻書き換えデータＴＷＤが正当でないと判定したとき判定信号ＦＤＴを非アクティブにする。アクティブは第１論理レベルであり、非アクティブは第２論理レベルである。
【００５１】
ゲート回路１３４は、判定信号ＦＤＴがアクティブであるとき、時刻書き換えデータＴＷＤによる現在時刻データＣＴＤの書き換えを許可し、その書き換えを実行する。即ち、ゲート回路１３４は、判定信号ＦＤＴがアクティブであるとき、レジスター１３２からの時刻書き換えデータＴＷＤを計時回路１２０へ出力すると共に、書き込み信号を計時回路１２０へ出力する。計時回路１２０は、書き込み信号に基づいて、現在時刻データＣＴＤを時刻書き換えデータＴＷＤにより書き換える。
【００５２】
本実施形態によれば、判定回路１３３は、参照時刻データＰＳＷＤ及び計時精度データＡＰＤを用いて許容誤差ＴＬＲを求めることで、現在時刻データＣＴＤの最大誤差を推定できる。そして判定回路１３３は、許容誤差ＴＬＲを用いて時刻書き換えデータＴＷＤと現在時刻データＣＴＤとの比較処理を行うことで、許容誤差ＴＬＲ以上の時刻書き換えデータＴＷＤを不正なデータと判定できる。これにより、時刻書き換えデータＴＷＤが不正であるか否かの判定範囲が限定されるので、時刻書き換えデータＴＷＤの正当性の検証精度が高まる。
【００５３】
また本実施形態によれば、不揮発性メモリー１５０は、リアルタイムクロック装置１００の個体別に計時精度データＡＰＤを記憶することが可能である。これにより、判定回路１３３は、現在時刻データＣＴＤの最大誤差を個体別に推定できるので、時刻書き換えデータＴＷＤの正当性の検証精度が、より高まる。
【００５４】
４．システムの時刻書き換え処理フロー
図５は、リアルタイムクロック装置１００を含むシステムにおける時刻書き換え処理の手順を示すフローチャートである。図５では、図１のＭＰＵ６００とリアルタイムクロック装置１００とＧＮＳＳ７５０とを含むシステムにおける時刻書き換え処理を例に説明する。図５において“ＲＴＣ”はリアルタイムクロック装置１００を意味する。
【００５５】
ステップＳ１に示すように、イグニッションがオンされる。ステップＳ２に示すように、イグニッションのオンオフに関わらずリアルタイムクロック装置１００は計時を続けている。ステップＳ３、Ｓ４に示すように、イグニッションがオンされたときにＭＰＵ６００及びＧＮＳＳ７５０への電源供給がオンになり、ＭＰＵ６００及びＧＮＳＳ７５０が動作を開始する。
【００５６】
ステップＳ５に示すように、ＧＮＳＳ７５０がＧＰＳ衛星から、位置情報と共に時刻情報を受信する。ステップＳ６に示すように、ＧＮＳＳ７５０が時刻情報をＭＰＵ６００へ送信する。
【００５７】
ステップＳ７及びＳ８に示すように、ＭＰＵ６００とリアルタイムクロック装置１００との間で相互にデバイス認証を行う。例えば、ＭＰＵ６００は、リアルタイムクロック装置１００のＩＤナンバーを照合し、リアルタイムクロック装置１００は、ＭＰＵ６００のＩＤナンバーを照合することで、相互にデバイス認証が行われる。但し、デバイス認証の手法は種々の手法を採用可能であり、ＩＤナンバー照合に限定されない。
【００５８】
ステップＳ９に示すように、ＭＰＵ６００は、時刻書き換えデータと共に時刻書き換え要求をリアルタイムクロック装置１００へ送信する。時刻書き換えデータは、ステップＳ６においてＭＰＵ６００がＧＮＳＳ７５０から受信した時刻情報である。
【００５９】
ステップＳ１０に示すように、リアルタイムクロック装置１００は、ＭＰＵ６００からの時刻書き換えデータが正当であるか否かを判定する。判定手法は上述した通りである。ステップＳ１１に示すように、リアルタイムクロック装置１００は、時刻書き換えデータが正当であると判定した場合、計時回路１２０の現在時刻データを時刻書き換えデータで書き換える。
【００６０】
ステップＳ１２に示すように、ＭＰＵ６００は、リアルタイムクロック装置１００において時刻書き換えデータが正当であると判定された場合、ＧＰＳの時刻情報をシステムの時刻情報として採用する。ステップＳ１３に示すように、ＭＰＵ６００は、ＭＰＵ６００内部の計時カウンターにＧＰＳの時刻情報を書き込むことで、ＭＰＵ６００内部の時刻合わせを行う。
【００６１】
ステップＳ１４に示すように、ＧＮＳＳ７５０は、ＧＰＳ衛星から受信した時刻情報をリアルタイムクロック装置１００へ送信する。ステップＳ１５に示すように、ＧＮＳＳ７５０からの時刻情報である時刻書き換えデータが、正当であるか否かを判定する。ステップＳ１６に示すように、ＭＰＵ６００がリアルタイムクロック装置１００に対して時刻同期要求を送信する。リアルタイムクロック装置１００は、ステップＳ１５において時刻書き換えデータが正当であると判定した場合、時刻同期要求を受け入れる。
【００６２】
ステップＳ１７に示すように、ＧＮＳＳ７５０が１ＰＰＳ信号（PPS：Pulse Per Second）をリアルタイムクロック装置１００へ送信する。１ＰＰＳ信号は、ＧＮＳＳ７５０がＧＰＳ衛星信号に基づいて生成した時刻パルス信号である。ステップＳ１８に示すように、リアルタイムクロック装置１００は、１ＰＰＳ信号に基づいて時刻同期を行う。即ち、計時回路１２０が１ＰＰＳ信号に基づいて、サブセカンドを含めた時刻書き換えデータで現在時刻データを書き換えることで、計時回路１２０の現在時刻データをＧＰＳの時刻情報に同期させる。
【００６３】
ステップＳ１９に示すように、ＧＮＳＳ７５０及びリアルタイムクロック装置１００は、時刻同期を繰り返す。即ち、ＧＮＳＳ７５０及びリアルタイムクロック装置１００は、ステップＳ１４〜Ｓ１８の処理を繰り返す。
【００６４】
５．第２構成例
図６は、本実施形態のリアルタイムクロック装置１００の第２構成例である。リアルタイムクロック装置１００は、インターフェース回路１４０と制御回路１３０と計時回路１２０と発振回路１１０とを含む。
【００６５】
発振回路１１０は、振動子を用いて発振信号を生成する。計時回路１２０は、発振信号に基づいて現在時刻データＣＴＤを生成する。インターフェース回路１４０は、外部装置２０から要求があったとき、判定用データＨＴＤと現在時刻データＣＴＤとを外部装置２０に送信する。判定用データＨＴＤは、現在時刻データＣＴＤの書き換えに用いられる時刻書き換えデータＴＷＤが正当であるか否かを外部装置２０が判定するためのデータである。
【００６６】
具体的には、外部装置２０がリアルタイムクロック装置１００に読み出し要求ＲＰＱを送信する。インターフェース回路１４０が読み出し要求ＲＰＱを受信したとき、制御回路１３０は、計時回路１２０から現在時刻データＣＴＤを読み出し、その現在時刻データＣＴＤと判定用データＨＴＤとをインターフェース回路１４０へ出力する。インターフェース回路１４０は、現在時刻データＣＴＤと判定用データＨＴＤとを外部装置２０へ送信する。
【００６７】
判定用データＨＴＤは、許容誤差を求めるためのデータである。即ち、制御回路１３０は、参照時刻データと計時精度データとを判定用データＨＴＤとして出力する。この場合、外部装置２０は、リアルタイムクロック装置１００から受信した現在時刻データＣＴＤと参照時刻データと計時精度データから上式（１）により許容誤差を求める。そして外部装置２０は、その許容誤差に基づいて、時刻書き換えデータＴＷＤと現在時刻データＣＴＤとの比較処理を行うことで、時刻書き換えデータＴＷＤが正当であるか否かの判定を行う。具体的には、外部装置２０は、上式（３）及び（４）により判定を行う。
【００６８】
或いは、判定用データＨＴＤは、許容誤差そのもののデータであってもよい。即ち、制御回路１３０は、現在時刻データＣＴＤと参照時刻データと計時精度データから上式（１）により許容誤差を求め、その許容誤差のデータを判定用データＨＴＤとして出力する。この場合、外部装置２０は、リアルタイムクロック装置１００から受信した許容誤差に基づいて、時刻書き換えデータＴＷＤと現在時刻データＣＴＤとの比較処理を行うことで、時刻書き換えデータＴＷＤが正当であるか否かの判定を行う。具体的には、外部装置２０は、上式（３）及び（４）により判定を行う。
【００６９】
外部装置２０は、時刻書き換えデータＴＷＤが正当であると判定した場合、時刻書き換え要求ＷＲＱと時刻書き換えデータＴＷＤをリアルタイムクロック装置１００へ送信する。インターフェース回路１４０が時刻書き換え要求ＷＲＱを受信したとき、制御回路１３０は、インターフェース回路１４０により受信された時刻書き換えデータＴＷＤにより計時回路１２０の現在時刻データＣＴＤを書き換える。外部装置２０は、時刻書き換えデータＴＷＤが正当であると判定した場合には、時刻書き換え要求ＷＲＱをリアルタイムクロック装置１００へ送信しない。即ち、リアルタイムクロック装置１００の現在時刻データＣＴＤは書き換えられない。
【００７０】
本実施形態によれば、現在時刻データＣＴＤと判定用データＨＴＤが外部装置２０へ送信されることで、外部装置２０が、判定用データＨＴＤに基づいて時刻書き換えデータＴＷＤと現在時刻データＣＴＤとの比較処理を行うことができる。そして、外部装置２０は、比較処理の結果に基づいて、時刻書き換えデータＴＷＤの正当性を判定できる。現在時刻を示す時刻データを基準として正当性が判定されるため、時刻書き換えデータＴＷＤの正当性を正確に判断できる。これにより、例えば図１のようなシステムにおいて、ゲートウェイ７４０が車載ネットワークに対して正当な時刻データをブロードキャストできるようになる。
【００７１】
また本実施形態によれば、特許文献１のようなハード構成やシーケンスが不要となる。即ち、本実施形態によれば、ＭＰＵとは別に設けられたリアルタイムクロック装置１００が計時を行うので、突発的な電源オフ時にタイムスタンプデータを不揮発性メモリーに緊急退避させるハード構成やシーケンスが不要である。
【００７２】
６．第２の詳細な構成例
図７は、リアルタイムクロック装置１００の第２の詳細な構成例である。図７では、制御回路１３０が暗号回路１３１とレジスター１３２とを含み、判定回路１３３とゲート回路１３４とが省略される。なお既に説明した構成要素と同一の構成要素には同一の符号を付し、その構成要素についての説明を適宜に省略する。
【００７３】
インターフェース回路１４０は、暗号化された読み出し要求ＲＰＱを外部装置２０から受信する。暗号回路１３１は、暗号化された読み出し要求ＲＰＱを復号処理する。レジスター１３２は、復号処理された読み出し要求ＲＰＱを記憶する。
【００７４】
制御回路１３０は、レジスター１３２に読み出し要求ＲＰＱが書き込まれたとき、現在時刻データＣＴＤと判定用データＨＴＤをレジスター１３２から暗号回路１３１へ出力する。例えば、制御回路１３０は、不揮発性メモリー１５０からレジスター１３２に計時精度データＡＰＤを読み出し、保持回路１７０からレジスター１３２に参照時刻データＰＳＷＤを読み出す。制御回路１３０は、レジスター１３２に読み出された計時精度データＡＰＤ及び参照時刻データＰＳＷＤを判定用データＨＴＤとして出力する。或いは、制御回路１３０は、不揮発性メモリー１５０から計時精度データＡＰＤを読み出し、保持回路１７０から参照時刻データＰＳＷＤを読み出し、それらのデータに基づいて許容誤差を求め、その許容誤差のデータをレジスター１３２に記憶させる。制御回路１３０は、レジスター１３２に記憶される許容誤差のデータを判定用データＨＴＤとして暗号回路１３１へ出力する。
【００７５】
暗号回路１３１は、レジスター１３２からの現在時刻データＣＴＤと判定用データＨＴＤを暗号化処理する。インターフェース回路１４０は、暗号化処理された現在時刻データＣＴＤと判定用データＨＴＤを外部装置２０へ送信する。
【００７６】
外部装置２０は、リアルタイムクロック装置１００からの現在時刻データＣＴＤと判定用データＨＴＤに基づいて、時刻書き換えデータＴＷＤが正当であると判定した場合、時刻書き換え要求ＷＲＱと時刻書き換えデータＴＷＤを暗号化してリアルタイムクロック装置１００へ送信する。
【００７７】
インターフェース回路１４０は、暗号化された時刻書き換え要求ＷＲＱと時刻書き換えデータＴＷＤを受信する。暗号回路１３１は、暗号化された時刻書き換え要求ＷＲＱと時刻書き換えデータＴＷＤを復号処理する。レジスター１３２は、復号処理された時刻書き換え要求ＷＲＱ及び時刻書き換えデータＴＷＤを記憶する。制御回路１３０は、レジスター１３２に時刻書き換え要求ＷＲＱが書き込まれたとき、書き込み信号と、レジスター１３２に書き込まれた時刻書き換えデータＴＷＤとを、計時回路１２０へ出力する。計時回路１２０は、書き込み信号に基づいて、現在時刻データＣＴＤを時刻書き換えデータＴＷＤで書き換える。
【００７８】
７．電子機器、移動体
図８は、本実施形態のリアルタイムクロック装置１００を含む電子機器３００の構成例である。この電子機器３００は、リアルタイムクロック装置１００とアンテナＡＮＴと通信部５１０と処理部５２０とを含む。また電子機器３００は、操作部５３０と表示部５４０と記憶部５５０とを含むことができる。通信部５１０は通信回路又は通信装置であり、処理部５２０は処理回路又は処理装置である。操作部５３０は操作装置であり、表示部５４０は表示装置であり、記憶部５５０は記憶装置である。なお電子機器３００は図８の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
【００７９】
電子機器３００として、例えば車載の電子装置又は映像機器、印刷機器等を想定できる。車載の電子装置は、ＥＣＵ（Electronic Control Unit）又はメーターパネル等である。映像機器は、デジタルカメラ又はビデオカメラ等である。印刷機器は、プリンター又はプリンター複合機等である。或いは、電子機器３００として、ＧＰＳ内蔵時計又はウェアラブル機器、スマートフォン、携帯電話機、携帯型ゲーム装置、携帯情報端末、コンテンツ提供端末、ネットワーク関連機器等の種々の機器を想定できる。ウェアラブル機器は、生体情報測定機器又は頭部装着型表示装置等である。携帯情報端末は、ノートＰＣ又はタブレットＰＣ、スマートフォン等である。ネットワーク関連機器は、基地局又はルーター等である。
【００８０】
通信部５１０は、アンテナＡＮＴを介して外部からデータを受信する処理、及び、アンテナＡＮＴを介して外部にデータを送信する処理を行う。処理部５２０は、リアルタイムクロック装置１００から現在時刻データを取得し、その現在時刻データに基づいて種々の処理を行う。例えば処理部５２０は、電子機器３００の制御処理、又は、通信部５１０を介して送受信されるデータの種々のデジタル処理などを行う。この処理部５２０の機能は、例えばマイクロコンピューターなどのプロセッサーにより実現できる。操作部５３０は、ユーザーが入力操作を行うためのものであり、操作ボタン又はタッチパネルディスプレイ等により実現できる。表示部５４０は、各種の情報を表示するものであり、液晶ディスプレイ又は有機ＥＬディスプレイ等により実現できる。記憶部５５０は、データを記憶するものであり、例えば、ＲＡＭ又はＲＯＭなどの半導体メモリー、或いはハードディスクドライブ等である。
【００８１】
図９は、本実施形態のリアルタイムクロック装置１００を含む移動体の例である。リアルタイムクロック装置１００は、例えば、車、飛行機、バイク、自転車、ロボット、或いは船舶等の種々の移動体に組み込むことができる。移動体は、例えばエンジンやモーター等の駆動機構、ハンドルや舵等の操舵機構、各種の電子機器を備えて、地上や空や海上を移動する機器・装置である。図９は移動体の具体例としての自動車２０６を概略的に示している。自動車２０６には、リアルタイムクロック装置１００が組み込まれる。制御装置２０８は、このリアルタイムクロック装置１００により生成された現在時刻データに基づいて種々の制御処理を行う。制御装置２０８は、例えば車体２０７の姿勢に応じてサスペンションの硬軟を制御したり、個々の車輪２０９のブレーキを制御する。なおリアルタイムクロック装置１００が組み込まれる機器は、このような制御装置２０８には限定されず、自動車２０６やロボット等の移動体に設けられる種々の機器に組み込むことができる。
【００８２】
以上に説明したように本実施形態のリアルタイムクロック装置は、振動子を用いて発振信号を生成する発振回路と、発振信号に基づいて現在時刻データを生成する計時回路と、現在時刻データの時刻書き換え要求及び時刻書き換えデータを外部装置から受信するインターフェース回路と、制御回路とを含む。制御回路は、計時回路の現在時刻データと時刻書き換えデータとの比較処理を行うことで、時刻書き換えデータが正当であるか否かを判定する。
【００８３】
本実施形態によれば、外部から取得された時刻書き換えデータにより現在時刻データを書き換える際に、その時刻書き換えデータの正当性を正確に検証できる。即ち本実施形態によれば、現在時刻データと時刻書き換えデータとの比較処理が行われることで、時刻書き換えデータが正当であるか否かが判定される。即ち、過去時刻を示す時刻データを基準とするのではなく、現在時刻を示す時刻データを基準とするため、時刻書き換えデータの正当性を正確に判断できる。
【００８４】
また本実施形態では、制御回路は、時刻書き換えデータが正当であると判定したとき、時刻書き換え要求を実行してもよい。
【００８５】
このようにすれば、外部装置からの時刻書き換えデータが正当でないと判定された場合に、計時回路の現在時刻データが時刻書き換えデータにより書き換えられない。これにより、不正な時刻書き換えデータによりリアルタイムクロック装置の現在時刻データが書き換えられることを、防ぐことができる。
【００８６】
また本実施形態では、リアルタイムクロック装置は、計時回路の計時精度データを記憶するメモリーと、現在時刻データが前回書き換えられたときの時刻の指標となる参照時刻データを保持する保持回路と、を含んでもよい。制御回路は、参照時刻データと計時精度データと現在時刻データを用いて比較処理を行うことで、時刻書き換えデータが正当であるか否かを判定してもよい。
【００８７】
このようにすれば、参照時刻データと現在時刻データに基づいて、現在時刻データが前回書き換えられてから現在までの経過時間を知ることができる。そして、その経過時間と計時精度データとに基づいて、現在時刻データの精度を推定できる。これにより、現在時刻データと時刻書き換えデータとが精度範囲内にあるか否かの比較処理を行うことが可能となり、時刻書き換えデータの正当性を正確に判定できる。
【００８８】
また本実施形態では、制御回路は、現在時刻データと参照時刻データとの差分と、計時精度データとに基づいて許容誤差を求め、許容誤差に基づいて時刻書き換えデータが正当であるか否かを判定してもよい。
【００８９】
このようにすれば、現在時刻データと参照時刻データとの差分は、現在時刻データが前回書き換えられてから現在までの経過時間に相当する。そして、その差分と計時精度データとに基づいて許容誤差が求められることで、現在時刻データの精度が推定される。この許容誤差に基づいて時刻書き換えデータが正当であるか否かが判定されることで、時刻書き換えデータが正当であるにもかかわらず、誤差のために間違って不正であると判定してしまう可能性を低くすることができる。
【００９０】
また本実施形態では、制御回路は、現在時刻データと時刻書き換えデータとの差分が、許容誤差よりも小さい場合に、時刻書き換えデータが正当であると判定してもよい。
【００９１】
上記のように、許容誤差は、現在時刻データの精度に対応する。現在時刻データと時刻書き換えデータとの差分が許容誤差よりも小さい場合、時刻書き換えデータが、現在時刻データの精度範囲内にあると判断できる。本実施形態によれば、時刻書き換えデータが、現在時刻データの精度範囲内にあると判断できる場合に、時刻書き換えデータが正当であると判定できる。
【００９２】
また本実施形態では、計時精度データは、振動子の発振周波数精度を表すデータであってもよい。
【００９３】
計時回路は、振動子を用いて生成された発振信号に基づいて現在時刻データを生成する。即ち、発振信号の周波数精度が現在時刻データの精度に関係する。このため、振動子の発振周波数精度を表すデータを計時精度データとして用いることで、現在時刻データの精度に対応した許容誤差を求めることが可能となる。
【００９４】
また本実施形態では、インターフェース回路は、外部装置から、暗号化された時刻書き換えデータを受信してもよい。制御回路は、暗号化された時刻書き換えデータを復号してもよい。
【００９５】
このようにすれば、リアルタイムクロック装置が外部装置から受信する時刻書き換えデータが暗号化データであるため、現在時刻データの書き換えに対するセキュリティーが向上する。即ち、不正な時刻書き換えデータがリアルタイムクロック装置に入力される可能性を、暗号化によって低減できる。
【００９６】
また本実施形態では、制御回路は、外部装置から現在時刻データの読み出し要求があったとき、暗号化した現在時刻データを、インターフェース回路を介して外部装置に出力してもよい。
【００９７】
このようにすれば、リアルタイムクロック装置が外部装置へ送信する現在時刻データが暗号化データであるため、外部装置が現在時刻データを取得する際のセキュリティーが向上する。即ち、外部装置が不正な現在時刻データを取得する可能性を、暗号化によって低減できる。
【００９８】
また以上に説明したように本実施形態のリアルタイムクロック装置は、振動子を用いて発振信号を生成する発振回路と、発振信号に基づいて現在時刻データを生成する計時回路と、インターフェース回路とを含んでもよい。インターフェース回路は、外部装置から要求があったとき、現在時刻データの書き換えに用いられる時刻書き換えデータが正当であるか否かを外部装置が判定するための判定用データと、現在時刻データと、を外部装置に送信してもよい。
【００９９】
本実施形態によれば、外部から取得された時刻書き換えデータにより現在時刻データを書き換える際に、その時刻書き換えデータの正当性を正確に検証できる。即ち本実施形態によれば、現在時刻データと判定用データが外部装置へ送信されることで、外部装置が、判定用データに基づいて時刻書き換えデータと現在時刻データとの比較処理を行うことができる。そして、外部装置は、比較処理の結果に基づいて、時刻書き換えデータの正当性を判定できる。現在時刻を示す時刻データを基準として正当性が判定されるため、時刻書き換えデータの正当性を正確に判断できる。
【０１００】
また本実施形態では、リアルタイムクロック装置は制御回路を含んでもよい。時刻書き換えデータが正当であると判定した外部装置からの時刻書き換え要求をインターフェース回路が受信したとき、制御回路は時刻書き換えデータにより現在時刻データを書き換えてもよい。
【０１０１】
このようにすれば、外部装置において時刻書き換えデータが正当でないと判定された場合に、リアルタイムクロック装置の現在時刻データが時刻書き換えデータにより書き換えられない。これにより、不正な時刻書き換えデータによりリアルタイムクロック装置の現在時刻データが書き換えられることを、防ぐことができる。
【０１０２】
また本実施形態では、リアルタイムクロック装置は、現在時刻データが前回書き換えられたときの時刻の指標となる参照時刻データを保持する保持回路を含んでもよい。制御回路は、参照時刻データを判定用データとして、インターフェース回路を介して外部装置に送信してもよい。
【０１０３】
このようにすれば、外部装置は、参照時刻データと現在時刻データに基づいて、現在時刻データが前回書き換えられてから現在までの経過時間を知ることができる。そして外部装置は、その経過時間に基づいて、現在時刻データの精度を推定できる。これにより、外部装置が、現在時刻データと時刻書き換えデータとが精度範囲内にあるか否かの比較処理を行うことが可能となり、時刻書き換えデータの正当性を正確に判定できる。
【０１０４】
また本実施形態では、リアルタイムクロック装置は、計時回路の計時精度データを記憶するメモリーを含んでもよい。制御回路は、参照時刻データ及び計時精度データを判定用データとして、インターフェース回路を介して外部装置に送信してもよい。
【０１０５】
このようにすれば、外部装置は、上記の経過時間と計時精度データとに基づいて、現在時刻データの精度を推定できる。これにより、現在時刻データと時刻書き換えデータとが精度範囲内にあるか否かの比較処理を行うことが可能となり、時刻書き換えデータの正当性を正確に判定できる。
【０１０６】
また本実施形態では、リアルタイムクロック装置は、計時回路の計時精度データを記憶するメモリーを含んでもよい。制御回路は、現在時刻データと参照時刻データとの差分と、計時精度データとに基づいて許容誤差を求めてもよい。インターフェース回路は、参照時刻データ及び許容誤差を判定用データとして外部装置に送信してもよい。
【０１０７】
このようにすれば、現在時刻データと参照時刻データとの差分は、現在時刻データが前回書き換えられてから現在までの経過時間に相当する。そして、その差分と計時精度データとに基づいて許容誤差が求められることで、現在時刻データの精度が推定される。外部装置が、この許容誤差に基づいて時刻書き換えデータが正当であるか否かを判定することで、時刻書き換えデータの正当性を正確に判定できる。
【０１０８】
また本実施形態では、リアルタイムクロック装置は電源端子を含んでもよい。外部装置に供給される第１電源がオフであるときに、第２電源が電源端子に供給されてもよい。
【０１０９】
このようにすれば、第１電源がオフであることで外部装置がシャットダウンしているときにも、リアルタイムクロック装置は第２電源が供給されることで計時動作を行うことができる。即ち、外部装置に再び第１電源が供給されることで外部装置が起動したとき、リアルタイムクロック装置は計時により現在時刻データを生成し続けている。これにより、外部装置が起動後に時刻書き替え要求及び時刻書き換えデータをリアルタイムクロック装置へ送信したとき、リアルタイムクロック装置が現在時刻データと時刻書き換えデータとの比較処理を行うことが可能となっている。
【０１１０】
また本実施形態では、リアルタイムクロック装置は、発振回路に電気的に接続される振動子を含んでもよい。
【０１１１】
また本実施形態の電子機器は、上記に記載のリアルタイムクロック装置を含む。
【０１１２】
また本実施形態の移動体は、上記に記載のリアルタイムクロック装置を含む。
【０１１３】
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また本実施形態及び変形例の全ての組み合わせも、本発明の範囲に含まれる。また回路装置、リアルタイムクロック装置、電子機器及び移動体等の構成及び動作等も、本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【符号の説明】
【０１１４】
２０…外部装置、１００…リアルタイムクロック装置、１１０…発振回路、１２０…計時回路、１３０…制御回路、１３１…暗号回路、１３２…レジスター、１３３…判定回路、１３４…ゲート回路、１４０…インターフェース回路、１５０…不揮発性メモリー、１６０…リセット回路、１７０…保持回路、２００…回路装置、２０６…自動車、２０７…車体、２０８…制御装置、２０９…車輪、３００…電子機器、５１０…通信部、５２０…処理部、５３０…操作部、５４０…表示部、５５０…記憶部、６００…ＭＰＵ、６１０…電源回路、６２０…電源回路、６３０…バッテリー、６４０…電池、７００…車載ネットワークシステム、７４０…ゲートウェイ、７６０…センサーシステム、７８０…バス、ＡＰＤ…計時精度データ、ＣＴＤ…現在時刻データ、ＦＤＴ…判定信号、ＨＴＤ…判定用データ、ＰＳＷＤ…参照時刻データ、ＲＰＱ…読み出し要求、ＴＶＤ…電源端子、ＴＷＤ…時刻書き換えデータ、ＷＲＱ…時刻書き換え要求、ＸＴＡＬ…振動子
【図１】
2020060461.tif 000003
【図２】
2020060461.tif 000004
【図３】
2020060461.tif 000005
【図４】
2020060461.tif 000006
【図５】
2020060461.tif 000007
【図６】
2020060461.tif 000008
【図７】
2020060461.tif 000009
【図８】
2020060461.tif 000010
【図９】
2020060461.tif 000011