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

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

▶ セイコーエプソン株式会社の特許一覧

<>
  • 特開-リアルタイムクロックモジュール 図1
  • 特開-リアルタイムクロックモジュール 図2
  • 特開-リアルタイムクロックモジュール 図3
  • 特開-リアルタイムクロックモジュール 図4
  • 特開-リアルタイムクロックモジュール 図5
  • 特開-リアルタイムクロックモジュール 図6
  • 特開-リアルタイムクロックモジュール 図7
  • 特開-リアルタイムクロックモジュール 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023161717
(43)【公開日】2023-11-08
(54)【発明の名称】リアルタイムクロックモジュール
(51)【国際特許分類】
   G06F 11/34 20060101AFI20231031BHJP
【FI】
G06F11/34 176
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022072223
(22)【出願日】2022-04-26
(71)【出願人】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】100090387
【弁理士】
【氏名又は名称】布施 行夫
(74)【代理人】
【識別番号】100090398
【弁理士】
【氏名又は名称】大渕 美千栄
(74)【代理人】
【識別番号】100148323
【弁理士】
【氏名又は名称】川▲崎▼ 通
(74)【代理人】
【識別番号】100168860
【弁理士】
【氏名又は名称】松本 充史
(72)【発明者】
【氏名】須藤 泰宏
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042GA38
5B042MA08
5B042MC35
5B042MC40
(57)【要約】
【課題】タイムスタンプにおいてアプリケーション毎に不要なイベントデータを記憶させないようにすることが可能なリアルタイムクロックモジュールを提供すること。
【解決手段】計時を行って時刻データを生成する計時回路と、イベントの発生に応じて、複数種類のイベントデータの少なくとも1つを、記憶対象となる対象イベントデータとして選択するとともに、前記時刻データの少なくとも一部の時刻桁に対応するデータを、記憶対象となる対象時刻データとして選択する選択回路と、前記対象時刻データ及び前記対象イベントデータを記憶するメモリー回路と、を備える、リアルタイムクロックモジュール。
【選択図】図2
【特許請求の範囲】
【請求項1】
計時を行って時刻データを生成する計時回路と、
イベントの発生に応じて、複数種類のイベントデータの少なくとも1つを、記憶対象となる対象イベントデータとして選択するとともに、前記時刻データの少なくとも一部の時刻桁に対応するデータを、記憶対象となる対象時刻データとして選択する選択回路と、
前記対象時刻データ及び前記対象イベントデータを記憶するメモリー回路と、を備える、リアルタイムクロックモジュール。
【請求項2】
前記選択回路は、
前記対象イベントデータを指定する命令セットを記憶する不揮発性メモリーと、
前記命令セットに基づいて前記対象イベントデータを選択するプロセッサーと、を含む、請求項1に記載のリアルタイムクロックモジュール。
【請求項3】
前記選択回路は、前記イベントが発生した後、次の時刻更新タイミングが到来した後に前記対象時刻データを取得して前記メモリー回路に記憶させる、請求項1に記載のリアルタイムクロックモジュール。
【請求項4】
電源電圧を監視し、電源電圧監視データを生成する電源電圧監視回路を備え、
前記複数種類のイベントデータは前記電源電圧監視データを含む、請求項1に記載のリアルタイムクロックモジュール。
【請求項5】
前記イベントは、前記リアルタイムクロックモジュールの外部から入力される外部入力信号によって発生し、
前記複数種類のイベントデータは、前記外部入力信号に対応するデータを含む、請求項1に記載のリアルタイムクロックモジュール。
【請求項6】
前記複数種類のイベントデータは、外部のセンサーデバイスが検出したデータに基づくセンサーデータを含む、請求項1に記載のリアルタイムクロックモジュール。
【請求項7】
前記センサーデバイスは、温度センサーであり、
前記センサーデータは、温度データを含む、請求項6に記載のリアルタイムクロックモジュール。
【請求項8】
前記センサーデバイスは、位置情報センサーであり、
前記センサーデータは、位置データを含む、請求項6に記載のリアルタイムクロックモジュール。
【請求項9】
前記センサーデバイスは、慣性センサーであり、
前記センサーデータは、慣性データを含む、請求項6に記載のリアルタイムクロックモジュール。
【請求項10】
振動子と、
前記振動子を発振させてクロック信号を生成する発振回路と、を備え、
前記計時回路は前記クロック信号に基づいて前記計時を行う、請求項1乃至9のいずれか一項に記載のリアルタイムクロックモジュール。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、リアルタイムクロックモジュールに関する。
【背景技術】
【0002】
特許文献1には、計時を行って複数の桁からなる時刻データを生成する計時部と、時刻データを記録するメモリーと、複数の桁を備えた時刻データのうちの一部の桁を選択する記録桁設定手段と、イベント発生を検出するイベント検出回路と、イベントが発生した場合、記録桁設定手段で選択した桁のみを備えた時刻データとイベント発生とをメモリーに記録する制御回路と、を備えたイベントレコーダーが開示されている。このイベントレコーダーによれば、メモリーに記録される時刻のデータ量を減らして、メモリーの容量を節約することができる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2009-019996号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載のイベントレコーダーでは、イベント発生時にメモリーに保存される時刻データの桁を選択することができるが、同時に保存されるイベントデータの種類は固定されており、アプリケーションによっては不要なイベントデータがメモリーに保存される場合がある。
【課題を解決するための手段】
【0005】
本発明に係るリアルタイムクロックモジュールの一態様は、
計時を行って時刻データを生成する計時回路と、
イベントの発生に応じて、複数種類のイベントデータの少なくとも1つを、記憶対象となる対象イベントデータとして選択するとともに、前記時刻データの少なくとも一部の時刻桁に対応するデータを、記憶対象となる対象時刻データとして選択する選択回路と、
前記対象時刻データ及び前記対象イベントデータを記憶するメモリー回路と、を備える。
【図面の簡単な説明】
【0006】
図1】第1実施形態のリアルタイムクロックモジュールを含むシステムの構成例を示す図。
図2】第1実施形態のリアルタイムクロックモジュールの機能ブロック図。
図3】プロセッサーの構成例を示す図。
図4】第1実施形態におけるキャプチャーデータの一例を示す図。
図5】選択回路によるタイムスタンプ処理の一例を示すタイミングチャート図。
図6】第2実施形態のリアルタイムクロックモジュールを含むシステムの構成例を示す図。
図7】第2実施形態のリアルタイムクロックモジュールの機能ブロック図。
図8】第2実施形態におけるキャプチャーデータの一例を示す図。
【発明を実施するための形態】
【0007】
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するもので
はない。また以下で説明される構成の全てが本発明の必須構成要件であるとは限らない。
【0008】
1.第1実施形態
図1は、第1実施形態のリアルタイムクロックモジュールを含むシステムの構成例を示す図である。
【0009】
図1に示すように、第1実施形態のリアルタイムクロックモジュール1は、メイン電源4、バックアップ電源5及びホストデバイス6と接続される。
【0010】
リアルタイムクロックモジュール1は、メイン電源4から電源電圧VDDが供給され、バックアップ電源5から電源電圧VBATが供給される。リアルタイムクロックモジュール1は、メイン電源4から電源電圧VDDが供給されているときは電源電圧VDDで動作し、メイン電源4からの電源電圧VDDの供給が遮断されると電源電圧VBATで動作する。したがって、リアルタイムクロックモジュール1は、メイン電源4からの電源電圧VDDの供給が遮断されている間も計時動作を継続することができる。
【0011】
ホストデバイス6は、メイン電源4から電源電圧VDDが供給されて動作する。本実施形態では、ホストデバイス6とリアルタイムクロックモジュール1とは、ホストデバイス6がマスター、リアルタイムクロックモジュール1がスレーブとして、ICバスを介して通信する。ICは、Inter-Integrated Circuitの略である。ホストデバイス6は、例えば、MCUやMPUによって実現される。MCUはMicro Controller Unitの略であり、MPUはMicro Processor Unitの略である。
【0012】
図2は、第1実施形態のリアルタイムクロックモジュール1の機能ブロック図である。図2に示すように、リアルタイムクロックモジュール1は、振動子2と、リアルタイムクロック回路3とを備える。
【0013】
リアルタイムクロックモジュール1は、メイン電源4からリアルタイムクロック回路3の端子P1を介して電源電圧VDDが供給され、バックアップ電源5からリアルタイムクロック回路3の端子P2を介して電源電圧VBATが供給される。
【0014】
振動子2は、音叉型水晶振動子、ATカット水晶振動子、SCカット水晶振動子等であってもよいし、SAW共振子や水晶振動子以外の圧電振動子であってもよい。SAWは、Surface Acoustic Waveの略である。また、振動子2は、シリコン半導体を材料とするMEMS振動子であってもよい。MEMSは、Micro Electro Mechanical Systemsの略である。振動子2は、圧電効果によって励振されてもよいし、クーロン力によって駆動されてもよい。
【0015】
リアルタイムクロック回路3は、発振回路10、分周回路20、計時回路30、イベントトリガー回路40、選択回路50、メモリー回路60、レジスター群70、インターフェース回路80、温度センサー90、発振監視回路100、電源電圧監視回路110、電源電圧選択回路120、電源回路130及び割込発生回路140を備える。ただし、リアルタイムクロック回路3は、これらの要素の一部を省略又は変更し、あるいは他の要素を追加した構成としてもよい。本実施形態では、リアルタイムクロック回路3は、1チップの集積回路であるが、複数チップの集積回路で構成されてもよいし、少なくとも一部がディスクリート部品で構成されてもよい。
【0016】
電源電圧監視回路110は、電源電圧VDDを監視し、電源電圧VDDが所定の電圧値VT1以上であるか否かを判定し、判定信号VDETを出力する。本実施形態では、電源電圧監視回路110は、電源電圧VDDが電圧値VT1以上であると判定した場合はハイ
レベルの判定信号VDETを出力し、電源電圧VDDが電圧値VT1未満であると判定した場合はローレベルの判定信号VDETを出力する。
【0017】
また、電源電圧監視回路110は、電源電圧VDDを監視し、電源電圧VDDが所定の電圧値VT2以下であるか否かを判定し、第1電源電圧低下信号VDDLOWを出力する。本実施形態では、電源電圧監視回路110は、電源電圧VDDが電圧値VT2以下であると判定した場合はハイレベルの第1電源電圧低下信号VDDLOWを出力し、電源電圧VDDが電圧値VT2よりも大きいと判定した場合はローレベルの第1電源電圧低下信号VDDLOWを出力する。なお、電圧値VT2は、電圧値VT1と同じであってもよいし、異なっていてもよい。
【0018】
また、電源電圧監視回路110は、電源電圧VBATを監視し、電源電圧VBATが所定の電圧値VT3以下であるか否かを判定し、第2電源電圧低下信号VBATLOWを出力する。本実施形態では、電源電圧監視回路110は、電源電圧VBATが電圧値VT3以下であると判定した場合はハイレベルの第2電源電圧低下信号VBATLOWを出力し、電源電圧VBATが電圧値VT3よりも大きいと判定した場合はローレベルの第2電源電圧低下信号VBATLOWを出力する。
【0019】
また、電源電圧監視回路110は、電源電圧選択回路120から出力される電源電圧VOUTを監視し、電源電圧VOUTが所定の電圧値VT4以下であるか否かを判定し、第3電源電圧低下信号VTMPLOWを出力する。本実施形態では、電源電圧監視回路110は、電源電圧VOUTが電圧値VT4以下であると判定した場合はハイレベルの第3電源電圧低下信号VTMPLOWを出力し、電源電圧VOUTが電圧値VT4よりも大きいと判定した場合はローレベルの第3電源電圧低下信号VTMPLOWを出力する。
【0020】
このように、電源電圧監視回路110は、電源電圧VDD,VBAT,VOUTを監視し、それぞれ電源電圧監視データである第1電源電圧低下信号VDDLOW、第2電源電圧低下信号VBATLOW及び第3電源電圧低下信号VTMPLOWを生成する。
【0021】
電源電圧選択回路120は、判定信号VDETに基づいて電源電圧VDD又は電源電圧VBATを選択して電源電圧VOUTとして出力する。具体的には、電源電圧選択回路120は、判定信号VDETがハイレベルである場合、すなわち、電源電圧監視回路110により電源電圧VDDが電圧値VT1以上であると判定された場合は、電源電圧VDDを選択する。また、電源電圧選択回路120は、判定信号VDETがローレベルである場合、すなわち、電源電圧監視回路110により電源電圧VDDが電圧値VT1未満であると判定された場合は、電源電圧VBATを選択する。
【0022】
したがって、メイン電源4からリアルタイムクロックモジュール1に電源電圧VDDが供給されているときは、電源電圧VOUTは、電源電圧VDDであり、VT1以上の所定の電圧値である。メイン電源4からリアルタイムクロックモジュール1への電源電圧VDDの供給が遮断されると、電源電圧VOUTは、直ちに電源電圧VBATに切り替わり、VT1以下の所定の電圧値となる。そのため、リアルタイムクロックモジュール1は、メイン電源4からの電源電圧VDDの供給が遮断されている間も計時動作を継続することができる。これに対して、リアルタイムクロックモジュール1の動作を制御するホストデバイス6は、メイン電源4から電源電圧VDDが供給されて動作し、メイン電源4からの電源電圧VDDの供給が遮断されると動作を停止する。
【0023】
電源回路130は、電源電圧VOUTに基づいて、一定の電圧値の安定化された電源電圧VOSC及び電源電圧VLOGICを生成する。電源回路130は、例えば、レギュレーターによって実現される。
【0024】
電源電圧VOSCは、発振回路10に供給される。また、電源電圧VLOGICは、分周回路20、計時回路30、イベントトリガー回路40、選択回路50、メモリー回路60、レジスター群70、インターフェース回路80、温度センサー90、発振監視回路100、電源電圧監視回路110及び割込発生回路140に供給される。
【0025】
温度センサー90は、温度に応じて大きさが変化する温度信号VTMPを出力する。温度信号VTMPは、デジタル信号であってもよいし、アナログ信号であってもよい。
【0026】
発振回路10は、振動子2を発振させて第1クロック信号CK1を生成する。具体的には、発振回路10は、リアルタイムクロック回路3の端子P3,P4を介して振動子2の両端と電気的に接続されており、振動子2の出力信号を増幅してフィードバックすることにより振動子2を発振させて第1クロック信号CK1を出力する。また、発振回路10は、温度センサー90から出力される温度信号VTMPに応じて第1クロック信号CK1の周波数を変化させることにより、第1クロック信号CK1の周波数が温度によらず一定となるように制御する温度補償回路を内蔵している。本実施形態では、第1クロック信号CK1の周波数は32.768kHzである。ただし、第1クロック信号CK1の周波数は特に限定されない。本実施形態では、電源電圧VOUTが電圧値VT4よりも大きい場合、すなわち、第3電源電圧低下信号VTMPLOWがローレベルのときは、温度補償回路が正常に動作する。一方、電源電圧VOUTが電圧値VT4以下の場合、すなわち、第3電源電圧低下信号VTMPLOWがハイレベルのときは、温度補償回路の正常動作が保証されないので、温度補償回路は動作を停止する。
【0027】
発振監視回路100は、第1クロック信号CK1を監視し、発振回路10が発振動作を停止したか否かを判定し、発振停止信号FSTを出力する。本実施形態では、発振監視回路100は、第1クロック信号CK1の論理レベルが所定時間継続して反転しない場合に発振回路10が発振動作を停止したと判定し、ハイレベルの発振停止信号FSTを出力する。また、発振監視回路100は、第1クロック信号CK1論理レベルが所定時間内に反転する場合に発振回路10が発振動作を停止していないと判定し、ローレベルの発振停止信号FSTを出力する。このように、発振監視回路100は、第1クロック信号CK1を監視し、発振監視データである発振停止信号FSTを生成する。
【0028】
分周回路20は、第1クロック信号CK1を分周して、所望の周波数を有する第2クロック信号CK2を生成する。本実施形態では、分周回路20の分周比が32であり、第2クロック信号CK2の周波数は1.024kHzである。ただし、分周回路20の分周比や第2クロック信号CK2の周波数は特に限定されない。
【0029】
計時回路30は、第2クロック信号CK2に基づいて計時を行って時刻データTMを生成する。本実施形態では、時刻データTMは、時刻桁として、1/1024秒、秒、分、時、日、月、年を有する。具体的には、時刻データTMは、1/1024秒単位の時刻を0~1023で表すバイナリー形式のサブ秒データ、秒単位の時刻を0~59で表すBCD形式の秒データ、分単位の時刻を0~59で表すBCD形式の分データ、時単位の時刻を0~23で表すBCD形式の時データ、日単位の時刻を1~31で表すBCD形式の日データ、月単位の時刻を1~12で表すBCD形式の月データ及び年単位の時刻を0~9999で表すBCD形式の年データによって構成されている。BCDは、Binary Coded Decimalの略である。
【0030】
イベントトリガー回路40には、ホストデバイス6からリアルタイムクロック回路3の端子P7,P8,P9を介してそれぞれ入力される第1イベント信号EVIN1、第2イベント信号EVIN2及び第3イベント信号EVIN3が入力される。また、イベントト
リガー回路40には、インターフェース回路80から出力されるイベントコマンド検出信号WRComが入力される。また、イベントトリガー回路40には、電源電圧監視回路110から出力される第1電源電圧低下信号VDDLOW、第2電源電圧低下信号VBATLOW及び第3電源電圧低下信号VTMPLOWが入力される。また、イベントトリガー回路40には、発振監視回路100から出力される発振停止信号FSTが入力される。そして、イベントトリガー回路40は、イベントコマンド検出信号WRCom、第1電源電圧低下信号VDDLOW、第2電源電圧低下信号VBATLOW、第3電源電圧低下信号VTMPLOW及び発振停止信号FSTの少なくとも1つの立ち上がりエッジが発生すると、ハイパルスのイベントトリガー信号TRGを出力する。また、イベントトリガー回路40は、第1イベント信号EVIN1の指定されたエッジ、第2イベント信号EVIN2の指定されたエッジ及び第3イベント信号EVIN3の指定されたエッジの少なくとも1つが発生した場合も、ハイパルスのイベントトリガー信号TRGを出力する。イベントトリガー信号TRGを発生させる第1イベント信号EVIN1、第2イベント信号EVIN2及び第3イベント信号EVIN3の各エッジは、レジスター群70に含まれるイベント制御レジスターによって、それぞれ立ち上がりエッジ、立ち下がりエッジ又は両エッジを指定可能であってもよい。
【0031】
選択回路50は、イベントの発生に応じて、複数種類のイベントデータの少なくとも1つを、記憶対象となる対象イベントデータとして選択するとともに、計時回路30が生成した時刻データTMの少なくとも一部の時刻桁に対応するデータを、記憶対象となる対象時刻データとして選択する。すなわち、選択回路50は、イベントトリガー回路40から出力されるイベントトリガー信号TRGに応じて、対象イベントデータ及び対象時刻データを選択する。
【0032】
複数種類のイベントデータは、それぞれ電源電圧監視回路110が生成した電源電圧監視データである第1電源電圧低下信号VDDLOW、第2電源電圧低下信号VBATLOW及び第3電源電圧低下信号VTMPLOWを含んでもよい。また、複数種類のイベントデータは、発振監視回路100が生成した発振監視データである発振停止信号FSTを含んでもよい。
【0033】
また、イベントは、リアルタイムクロックモジュール1の外部から入力される外部入力信号によって発生し、複数種類のイベントデータは、当該外部入力信号に対応するデータを含んでもよい。本実施形態では、当該外部入力信号は、第1イベント信号EVIN1、第2イベント信号EVIN2、第3イベント信号EVIN3及びイベントを発生させるイベント発生コマンドであり、当該外部入力信号に対応するデータは、第1イベント信号EVIN1、第2イベント信号EVIN2、第3イベント信号EVIN3及びイベントコマンド検出信号WRComである。
【0034】
そして、選択回路50は、対象時刻データ及び対象イベントデータを含むキャプチャーデータCPDTをメモリー回路60に記憶させる。すなわち、選択回路50は、イベントトリガー信号TRGに応じて、対象時刻データと対象イベントデータとを対応づけてメモリー回路60に記憶させるタイムスタンプ処理を行う。
【0035】
本実施形態では、選択回路50は、プロセッサー51と、不揮発性メモリー52とを含む。不揮発性メモリー52は、対象時刻データ及び対象イベントデータを指定する命令セット521を記憶しており、プロセッサー51は、第1クロック信号CK1に同期して、命令セット521に基づいて対象時刻データ及び対象イベントデータを選択し、メモリー回路60に記憶させる。すなわち、命令セット521は、選択回路50がタイムスタンプ処理を行うために必要な複数の命令コードによって構成される。
【0036】
なお、消費電力を低減させるために、プロセッサー51は、イベントトリガー信号TRGの発生によってスリープ状態から復帰して電源回路130の制御処理及びタイムスタンプ処理を行い、これらの処理を終了すると再びスリープ状態に移行してもよい。
【0037】
図3は、プロセッサー51の構成例を示す図である。図3に示すように、プロセッサー51は、フェッチ回路511、デコード回路512、論理演算回路513、データバッファー514及びキャプチャー回路515を含む。
【0038】
フェッチ回路511は、第1クロック信号CK1に同期して、命令セット521に含まれる各命令コードを順番にフェッチする。
【0039】
デコード回路512は、第1クロック信号CK1に同期して、フェッチ回路511がフェッチした各命令コードを順番にデコードし、デコード結果に応じた制御信号を出力する。
【0040】
論理演算回路513は、デコード回路512から出力される制御信号に応じて複数の入力データから選択された1つ又は2つの入力データに対して、当該制御信号に応じて複数種類の論理演算から選択された論理演算を行う。複数の入力データは、時刻データTMに含まれるサブ秒データ、秒データ、分データ、時データ、日データ、月データ及び年データ、複数種類のイベントデータに含まれる第1電源電圧低下信号VDDLOW、第2電源電圧低下信号VBATLOW、第3電源電圧低下信号VTMPLOW、発振停止信号FST、第1イベント信号EVIN1、第2イベント信号EVIN2、第3イベント信号EVIN3及びイベントコマンド検出信号WRCom等である。複数種類の論理演算は、例えば、スルー演算、NOT演算、AND演算、OR演算、XOR演算、ビットシフト演算、加算、減算等である。
【0041】
データバッファー514は、第1クロック信号CK1に同期して、論理演算回路513から出力されるデータを保持する。
【0042】
キャプチャー回路515は、デコード回路512から出力される制御信号に従い、第1クロック信号CK1に同期して、データバッファー514が保持しているデータをメモリー回路60の現在のアドレスに書き込み、アドレスをインクリメントする。データバッファー514には、キャプチャーデータCPDTを構成する、例えば8ビットの各データが順番に保持され、キャプチャー回路515は、当該各データをメモリー回路60に書き込む。
【0043】
本実施形態では、プロセッサー51は、命令セット521に従い、イベントトリガー信号TRGが発生したときに、選択された対象時刻データ及び対象イベントデータを含むキャプチャーデータCPDTをメモリー回路60に記憶させることができる。すなわち、キャプチャーデータCPDTを構成する各データは、命令セット521によって任意に選択可能である。
【0044】
また、プロセッサー51は、命令セット521に従い、イベントトリガー信号TRGが発生したときに、イベントトリガー信号TRGの発生要因が、第1電源電圧低下信号VDDLOW、第2電源電圧低下信号VBATLOW、第3電源電圧低下信号VTMPLOW、発振停止信号FST、第1イベント信号EVIN1、第2イベント信号EVIN2、第3イベント信号EVIN3、及びイベントコマンド検出信号WRComから選択された1種類又は複数種類の信号のいずれかである場合のみ、タイムスタンプ処理を行うこともできる。すなわち、タイムスタンプ処理のトリガー要因となる信号は、命令セット521によって任意に選択可能である。例えば、命令セット521により、タイムスタンプ処理の
トリガー要因となる信号として第1イベント信号EVIN1のみが選択された場合、プロセッサー51は、イベントトリガー信号TRGが発生したときに第1イベント信号EVIN1の論理レベルに基づいて、イベントトリガー信号TRGの発生要因が第1イベント信号EVIN1であるか否かを判定し、判定結果に基づいてタイムスタンプ処理を行うか否かを決定することができる。
【0045】
図2の説明に戻り、メモリー回路60は、選択回路50が選択した対象時刻データ及び対象イベントデータを含むキャプチャーデータCPDTを記憶する。本実施形態では、メモリー回路60は、SRAM等の揮発性のメモリーであり、N個のキャプチャーデータCPDTを記憶可能なN段FIFOとして機能する。すなわち、メモリー回路60は、N回のイベントの発生に対するN個のキャプチャーデータCPDTを同時に記憶可能である。SRAMは、Static Random Access Memoryの略であり、FIFOはFirst In First Outの略である。
【0046】
プロセッサー51は、イベントトリガー信号TRGに基づくタイムスタンプ処理を終了すると、割込発生回路140にタイムスタンプ終了信号TSENDを出力する。
【0047】
割込発生回路140は、タイムスタンプ終了信号TSENDに基づいて割込み信号INTを発生し、割込み信号INTを、リアルタイムクロック回路3の端子P10を介してホストデバイス6に出力する。ホストデバイス6は、割込み信号INTを受けると、所定の割込み処理を行う。例えば、ホストデバイス6は、リアルタイムクロックモジュール1に対してタイムスタンプのデータ読み出しを要求するコマンドを送信し、リアルタイムクロックモジュール1からメモリー回路60に記憶されているキャプチャーデータCPDTを受信する。
【0048】
なお、システム全体としての消費電力を低減させるために、ホストデバイス6は、処理を行わないときはスリープ状態に移行し、スリープ状態のときに割込み信号INTを受けると、スリープ状態から復帰してタイムスタンプのデータを読み出す処理を行い、必要な処理を終了すると再びスリープ状態に移行する。
【0049】
レジスター群70は、各種のレジスターを備えている。例えば、レジスター群70は、イベント制御レジスター、フラグレジスター、コマンドトリガーレジスター等を含む。イベント制御レジスターは、例えば、イベントトリガー信号TRGを発生させる第1イベント信号EVIN1、第2イベント信号EVIN2及び第3イベント信号EVIN3の各エッジとして、立ち上がりエッジ、立ち下がりエッジ又は両エッジのいずれかを指定するための各2ビットのデータ等を保持する。フラグレジスターは、第1電源電圧低下信号VDDLOWの立ち上がりエッジの発生によって1が設定される第1電源電圧低下フラグ、第2電源電圧低下信号VBATLOWの立ち上がりエッジの発生によって1が設定される第2電源電圧低下フラグ、第3電源電圧低下信号VTMPLOWの立ち上がりエッジの発生によって1が設定される第3電源電圧低下フラグ、発振停止信号FSTの立ち上がりエッジの発生によって1が設定される発振停止フラグ等を保持する。コマンドトリガーレジスターは、イベント発生コマンドに応じてイベントコマンド検出信号WRComを発生させるためのレジスターである。
【0050】
インターフェース回路80は、リアルタイムクロックモジュール1とホストデバイス6との間の通信のインターフェース回路である。インターフェース回路80による通信では、ホストデバイス6がマスターであり、リアルタイムクロックモジュール1がスレーブである。すなわち、インターフェース回路80は、ホストデバイス6に対してスレーブインターフェースとして機能する。本実施形態では、インターフェース回路80は、ICバス対応のインターフェース回路であり、リアルタイムクロック回路3の端子P5を介して
入力されるシリアルクロック信号SCLと、リアルタイムクロック回路3の端子P6を介して入出力されるシリアルデータ信号SDAとに基づいて、ホストデバイス6と通信する。ただし、インターフェース回路80は、SPIなどの他のシリアルバス対応のインターフェース回路であってもよいし、パラレルバス対応のインターフェース回路であってもよい。SPIは、Serial Peripheral Interfaceの略である。
【0051】
インターフェース回路80は、ホストデバイス6から端子P5,P6を介してコマンドを受信し、受信したコマンドに応じた各種の処理を行う。
【0052】
具体的には、インターフェース回路80は、ホストデバイス6から時刻設定を要求するコマンドを受信した場合、計時回路30が生成する時刻データTMを、当該コマンドに含まれる時刻データに更新する。
【0053】
また、インターフェース回路80は、ホストデバイス6から時刻読み出しを要求するコマンドを受信した場合、計時回路30が生成する時刻データTMを取得し、ホストデバイス6に送信する。
【0054】
また、インターフェース回路80は、ホストデバイス6からタイムスタンプのデータ読み出しを要求するコマンドを受信した場合、メモリー回路60からキャプチャーデータCPDTを読み出し、ホストデバイス6に送信する。
【0055】
また、インターフェース回路80は、ホストデバイス6からレジスター群70に含まれる各種のレジスターに対するデータの書き込みや読み出しを要求するコマンドを受信した場合、対象のレジスターに対するデータの書き込みや読み出しを行う。例えば、インターフェース回路80は、コマンドトリガーレジスターへの任意のデータの書き込みを要求するコマンドであるイベント発生コマンドを受信した場合、イベントコマンド検出信号WRComを発生させる。
【0056】
また、インターフェース回路80は、ホストデバイス6から不揮発性メモリー52に対するデータの書き込みや読み出しを要求するコマンドを受信した場合、不揮発性メモリー52に対するデータの書き込みや読み出しを行う。例えば、リアルタイムクロックモジュール1の出荷前の検査工程において、ホストデバイス6として機能する検査装置が、不揮発性メモリー52への命令セット521の書き込みを要求するコマンドを送信し、インターフェース回路80は、当該コマンドを受信して不揮発性メモリー52に命令セット521を書き込む。
【0057】
図4は、メモリー回路60に記憶されるキャプチャーデータCPDTの一例を示す図である。図4の例では、キャプチャーデータCPDTは64ビットのデータであり、例えば、メモリー回路60のアドレス0x0~0x07に記憶される。
【0058】
具体的には、メモリー回路60のアドレス0x0において、ビット7~2には時刻データTMに含まれる10ビットのサブ秒データの下位6ビットのデータが記憶され、ビット1には第3イベント信号EVIN3の論理レベルに対応するデータが記憶され、ビット0には第2イベント信号EVIN2の論理レベルに対応するデータが記憶される。
【0059】
また、メモリー回路60のアドレス0x1において、ビット7~4には時刻データTMに含まれる7ビットの秒データの下位4ビットのデータが記憶され、ビット3~0には10ビットのサブ秒データの上位4ビットのデータが記憶される。
【0060】
また、メモリー回路60のアドレス0x2において、ビット7~3には時刻データTM
に含まれる5ビットの分データが記憶され、ビット2~0には7ビットの秒データの上位3ビットのデータが記憶される。
【0061】
また、メモリー回路60のアドレス0x3において、ビット7~2には時刻データTMに含まれる6ビットの時データが記憶され、ビット1~0には7ビットの分データの上位2ビットのデータが記憶される。
【0062】
また、メモリー回路60のアドレス0x4において、ビット7~6には時刻データTMに含まれる5ビットの月データの下位2ビットのデータが記憶され、ビット5~0には時刻データTMに含まれる6ビットの日データが記憶される。
【0063】
また、メモリー回路60のアドレス0x5において、ビット7~3には時刻データTMに含まれる8ビットの年データの下位5ビットのデータが記憶され、ビット2~0には5ビットの月データの上位3ビットのデータが記憶される。
【0064】
また、メモリー回路60のアドレス0x6において、ビット7には第2電源電圧低下信号VBATLOWの論理レベルに対応するデータが記憶され、ビット6には第3電源電圧低下信号VTMPLOWの論理レベルに対応するデータが記憶され、ビット5には第1電源電圧低下信号VDDLOWの論理レベルに対応するデータが記憶され、ビット4には発振停止信号FSTの論理レベルに対応するデータが記憶され、ビット3には第1イベント信号EVIN1の論理レベルに対応するデータが記憶され、ビット2~0には8ビットの年データの上位3ビットのデータが記憶される。
【0065】
また、メモリー回路60のアドレス0x7には、タイムスタンプ処理のトリガーとなった要因を示すデータが記憶される。具体的には、第3イベント信号EVIN3がトリガー要因であればビット7に1が記憶され、第2イベント信号EVIN2がトリガー要因であればビット6に1が記憶され、第1イベント信号EVIN1がトリガー要因であればビット5に1が記憶され、第2電源電圧低下信号VBATLOWがトリガー要因であればビット4に1が記憶され、第3電源電圧低下信号VTMPLOWがトリガー要因であればビット3に1が記憶され、第1電源電圧低下信号VDDLOWがトリガー要因であればビット2に1が記憶され、発振停止信号FSTがトリガー要因であればビット1に1が記憶され、イベントコマンド検出信号WRComがトリガー要因であればビット0に1が記憶される。
【0066】
なお、図4の例では、サブ秒データ、秒データ、分データ、時データ、日データ、月データ及び年データが対象時刻データであり、その他のすべてのデータが対象イベントデータである。
【0067】
図4の例では、タイムスタンプの対象となるキャプチャーデータCPDTは64ビットのデータであり、選択回路50がキャプチャーデータCPDTを一括してメモリー回路60に書き込むためには、メモリー回路60の1つのアドレスに64ビットのデータを割り当てる必要があり、メモリー回路60や選択回路50のサイズが大きくなってしまう。そのため、本実施形態では、メモリー回路60の1つのアドレスに8ビットのデータを割り当て、選択回路50が8ビットのデータを取得してメモリー回路60に書き込む処理を8回行うように構成することで、メモリー回路60や選択回路50のサイズを低減させているが、一方で選択回路50がキャプチャーデータCPDTに必要なデータを取得するために少なくとも8サイクルが必要となる。したがって、仮に、選択回路50が時刻データTMを取得している期間中に、時刻データTMが更新される時刻更新タイミングが到来すると、キャプチャーデータCPDTに含まれる対象時刻データは、一部が更新前のデータであるのに対して他の一部が更新後のデータになってしまい、メモリー回路60に誤った対
象時刻データが記憶されてしまう可能性がある。
【0068】
そこで、本実施形態では、選択回路50は、イベントが発生した後、すなわちイベントトリガー信号TRGが発生した後、次の時刻更新タイミングが到来した後に対象時刻データを取得してメモリー回路60に記憶させるタイムスタンプ処理を行う。図5は、選択回路50によるタイムスタンプ処理の一例を示すタイミングチャート図である。図5において、キャプチャーデータCPDTは64ビットのデータであるものとしている。
【0069】
図5の例では、時刻t1における第1クロック信号CK1の立ち上がりエッジに同期してイベントトリガー信号TRGがローレベルからハイレベルに変化し、時刻t2における第1クロック信号CK1の立ち上がりエッジに同期してイベントトリガー信号TRGがハイレベルからローレベルに変化している。すなわち、時刻t1~t2において、タイムスタンプ処理のトリガーとなるイベントトリガー信号TRGが発生している。
【0070】
時刻t3における第1クロック信号CK1の立ち上がりエッジに同期して、サブ秒データSSBがnからn+1に変化することにより時刻データTMが更新される。すなわち、時刻t3が、イベントトリガー信号TRGが発生した後の次の時刻更新タイミングに相当する。
【0071】
時刻t3において時刻更新タイミングが到来した後、まず、選択回路50は、時刻t4における第1クロック信号CK1の立ち上がりエッジに同期して、キャプチャーデータCPDTの1番目の8ビットデータD0をデータバッファー514に取得する。
【0072】
次に、選択回路50は、時刻t5における第1クロック信号CK1の立ち上がりエッジに同期して、書き込み信号wrをハイレベルに設定し、メモリーアドレスmaddrを0x0に設定し、メモリーデータmdataをデータバッファー514が保持する8ビットデータD0に設定する。書き込み信号wr、メモリーアドレスmaddr及びメモリーデータmdataは、キャプチャー回路515からメモリー回路60に供給される。また、選択回路50は、時刻t5における第1クロック信号CK1の立ち上がりエッジに同期して、キャプチャーデータCPDTの2番目の8ビットデータD1をデータバッファー514に取得する。
【0073】
次に、時刻t6における第1クロック信号CK1の立ち上がりエッジに同期して、メモリー回路60のアドレス0x0に8ビットデータD0が書き込まれる。また、選択回路50は、時刻t6における第1クロック信号CK1の立ち上がりエッジに同期して、メモリーアドレスmaddrを0x1に設定し、メモリーデータmdataをデータバッファー514が保持する8ビットデータD1に設定する。さらに、選択回路50は、時刻t6における第1クロック信号CK1の立ち上がりエッジに同期して、キャプチャーデータCPDTの3番目の8ビットデータD2をデータバッファー514に取得する。
【0074】
次に、時刻t7における第1クロック信号CK1の立ち上がりエッジに同期して、メモリー回路60のアドレス0x1に8ビットデータD1が書き込まれる。また、選択回路50は、時刻t7における第1クロック信号CK1の立ち上がりエッジに同期して、メモリーアドレスmaddrを0x2に設定し、メモリーデータmdataをデータバッファー514が保持する8ビットデータD2に設定する。さらに、選択回路50は、時刻t7における第1クロック信号CK1の立ち上がりエッジに同期して、キャプチャーデータCPDTの4番目の8ビットデータD3をデータバッファー514に取得する。
【0075】
次に、時刻t8における第1クロック信号CK1の立ち上がりエッジに同期して、メモリー回路60のアドレス0x2に8ビットデータD2が書き込まれる。また、選択回路5
0は、時刻t8における第1クロック信号CK1の立ち上がりエッジに同期して、メモリーアドレスmaddrを0x3に設定し、メモリーデータmdataをデータバッファー514が保持する8ビットデータD3に設定する。さらに、選択回路50は、時刻t8における第1クロック信号CK1の立ち上がりエッジに同期して、キャプチャーデータCPDTの5番目の8ビットデータD4をデータバッファー514に取得する。
【0076】
次に、時刻t9における第1クロック信号CK1の立ち上がりエッジに同期して、メモリー回路60のアドレス0x3に8ビットデータD3が書き込まれる。また、選択回路50は、時刻t9における第1クロック信号CK1の立ち上がりエッジに同期して、メモリーアドレスmaddrを0x4に設定し、メモリーデータmdataをデータバッファー514が保持する8ビットデータD4に設定する。さらに、選択回路50は、時刻t9における第1クロック信号CK1の立ち上がりエッジに同期して、キャプチャーデータCPDTの6番目の8ビットデータD5をデータバッファー514に取得する。
【0077】
次に、時刻t10における第1クロック信号CK1の立ち上がりエッジに同期して、メモリー回路60のアドレス0x4に8ビットデータD4が書き込まれる。また、選択回路50は、時刻t10における第1クロック信号CK1の立ち上がりエッジに同期して、メモリーアドレスmaddrを0x5に設定し、メモリーデータmdataをデータバッファー514が保持する8ビットデータD5に設定する。さらに、選択回路50は、時刻t10における第1クロック信号CK1の立ち上がりエッジに同期して、キャプチャーデータCPDTの7番目の8ビットデータD6をデータバッファー514に取得する。
【0078】
次に、時刻t11における第1クロック信号CK1の立ち上がりエッジに同期して、メモリー回路60のアドレス0x5に8ビットデータD5が書き込まれる。また、選択回路50は、時刻t11における第1クロック信号CK1の立ち上がりエッジに同期して、メモリーアドレスmaddrを0x6に設定し、メモリーデータmdataをデータバッファー514が保持する8ビットデータD6に設定する。さらに、選択回路50は、時刻t11における第1クロック信号CK1の立ち上がりエッジに同期して、キャプチャーデータCPDTの8番目の8ビットデータD7をデータバッファー514に取得する。
【0079】
次に、時刻t12における第1クロック信号CK1の立ち上がりエッジに同期して、メモリー回路60のアドレス0x6に8ビットデータD6が書き込まれる。また、選択回路50は、時刻t12における第1クロック信号CK1の立ち上がりエッジに同期して、メモリーアドレスmaddrを0x7に設定し、メモリーデータmdataをデータバッファー514が保持する8ビットデータD7に設定する。
【0080】
次に、時刻t13における第1クロック信号CK1の立ち上がりエッジに同期して、メモリー回路60のアドレス0x7に8ビットデータD7が書き込まれる。また、選択回路50は、時刻t13における第1クロック信号CK1の立ち上がりエッジに同期して、書き込み信号wrをローレベルに設定する。
【0081】
その後、時刻t14における第1クロック信号CK1の立ち上がりエッジに同期して、サブ秒データSSBがn+1からn+2に変化することにより時刻データTMが更新される。すなわち、時刻t4において、さらに次の時刻更新タイミングが到来する。
【0082】
このように、図5の例では、選択回路50は、時刻t1~t2においてイベントトリガー信号TRGが発生した後、時刻t3において次の時刻更新タイミングが到来してから時刻t14においてさらに次の時刻更新タイミングが到来するまでの間に、キャプチャーデータCPDTを構成する各8ビットデータを取得してメモリー回路60に書き込む。したがって、選択回路50がキャプチャーデータCPDTに含まれる対象時刻データを取得し
ている期間中に時刻更新タイミングが到来しないので、選択回路50は、対象イベントデータを正しい対象時刻データと対応づけてメモリー回路60に記憶させることができる。なお、対象イベントデータは時刻の変化に影響されないため、選択回路50が対象イベントデータを取得している期間については時刻更新タイミングが到来することは許容される。
【0083】
以上に説明したように、第1実施形態のリアルタイムクロックモジュール1では、選択回路50は、イベントの発生に応じて、複数種類のイベントデータの少なくとも1つを、記憶対象となる対象イベントデータとして選択するとともに、時刻データTMの少なくとも一部の時刻桁に対応するデータを、記憶対象となる対象時刻データとして選択し、対象時刻データ及び対象イベントデータを含むキャプチャーデータCPDTをメモリー回路60に記憶させる。具体的には、選択回路50において、プロセッサー51が不揮発性メモリー52に記憶されている命令セット521に基づいて対象時刻データ及び対象イベントデータを選択する。したがって、第1実施形態のリアルタイムクロックモジュール1によれば、タイムスタンプにおいてアプリケーション毎に不要なイベントデータをメモリー回路60に記憶させないようにすることができる。さらに、リアルタイムクロックモジュール1がメモリー回路60にキャプチャーデータCPDTを書き込むため、リアルタイムクロックモジュール1よりも消費電力の大きいホストデバイス6がスリープする期間を長くすることができるので、システム全体としての消費電力を低減させることができる。
【0084】
また、第1実施形態のリアルタイムクロックモジュール1では、選択回路50は、イベントが発生した後、次の時刻更新タイミングが到来した後に対象時刻データを取得してメモリー回路60に記憶させる。したがって、第1実施形態のリアルタイムクロックモジュール1によれば、イベントの発生に応じて、選択回路50が対象時刻データを取得している期間中に時刻更新タイミングが到来しないので、誤った対象時刻データがメモリー回路60に記憶されるおそれが低減される。
【0085】
また、第1実施形態のリアルタイムクロックモジュール1によれば、選択回路50は、イベントの発生に応じて、対象イベントデータとして、電源電圧監視データである第1電源電圧低下信号VDDLOW、第2電源電圧低下信号VBATLOW又は第3電源電圧低下信号VTMPLOWを選択してメモリー回路60に記憶させることができる。
【0086】
また、第1実施形態のリアルタイムクロックモジュール1によれば、選択回路50は、イベントの発生に応じて、対象イベントデータとして、イベントを発生させる外部入力信号に対応するデータである第1イベント信号EVIN1、第2イベント信号EVIN2、第3イベント信号EVIN3又はイベントコマンド検出信号WRComを選択してメモリー回路60に記憶させることができる。
【0087】
2.第2実施形態
第2実施形態のリアルタイムクロックモジュール1について、第1実施形態と同様の構成要素には同じ符号を付し、第1実施形態と重複する説明は省略または簡略し、主に第1実施形態と異なる内容について説明する。
【0088】
図6は、第2実施形態のリアルタイムクロックモジュール1を含むシステムの構成例を示す図である。
【0089】
図6に示すように、第2実施形態のリアルタイムクロックモジュール1は、メイン電源4、バックアップ電源5、ホストデバイス6及びM個のセンサーデバイス7-1~7-Mと接続される。Mは1以上の整数である。
【0090】
第1実施形態と同様、リアルタイムクロックモジュール1は、メイン電源4から電源電圧VDDが供給され、バックアップ電源5から電源電圧VBATが供給される。リアルタイムクロックモジュール1は、メイン電源4から電源電圧VDDが供給されているときは電源電圧VDDで動作し、メイン電源4からの電源電圧VDDの供給が遮断されると電源電圧VBATで動作する。したがって、リアルタイムクロックモジュール1は、メイン電源4からの電源電圧VDDの供給が遮断されている間も計時動作を継続することができる。
【0091】
第1実施形態と同様、ホストデバイス6は、メイン電源4から電源電圧VDDが供給されて動作し、ホストデバイス6とリアルタイムクロックモジュール1とは、ホストデバイス6がマスター、リアルタイムクロックモジュール1がスレーブとして、ICバスを介して通信する。
【0092】
センサーデバイス7-1~7-Mは、例えば、温度センサー、位置情報センサー、慣性センサー等である。リアルタイムクロックモジュール1とセンサーデバイス7-1~7-Mは、リアルタイムクロックモジュール1がマスター、センサーデバイス7-1~7-Mがスレーブとして、ICバスを介して通信する。
【0093】
図7は、第2実施形態のリアルタイムクロックモジュール1の機能ブロック図である。図7に示すように、第2実施形態のリアルタイムクロックモジュール1は、センサーデバイス7-1~7-Mが接続され、リアルタイムクロック回路3がセンサーインターフェース回路150を備える点が第1実施形態のリアルタイムクロックモジュール1と異なる。
【0094】
センサーインターフェース回路150には、電源電圧VLOGICが供給される。センサーインターフェース回路150は、リアルタイムクロックモジュール1と、リアルタイムクロックモジュール1の外部のM個のセンサーデバイス7-1~7-Mとの間の通信のインターフェース回路である。Mは1以上の整数である。センサーインターフェース回路150による通信では、リアルタイムクロックモジュール1がマスター、具体的にはプロセッサー51がマスターであり、センサーデバイス7-1~7-Mがスレーブである。すなわち、センサーインターフェース回路150は、センサーデバイス7-1~7-Mに対してマスターインターフェースとして機能する。本実施形態では、センサーインターフェース回路150は、ICバス対応のインターフェース回路であり、リアルタイムクロック回路3の端子P11を介して出力されるシリアルクロック信号SCL2と、リアルタイムクロック回路3の端子P12を介して入出力されるシリアルデータ信号SDA2とに基づいて、センサーデバイス7-1~7-Mと通信する。ただし、センサーインターフェース回路150は、SPIなどの他のシリアルバス対応のインターフェース回路であってもよいし、パラレルバス対応のインターフェース回路であってもよい。
【0095】
センサーインターフェース回路150は、プロセッサー51の指示に応じたコマンドを端子P11,P12を介してセンサーデバイス7-1~7-Mに送信し、センサーデバイス7-1~7-Mは、当該コマンドを受信して当該コマンドに応じた各種の処理を行う。
【0096】
特に、本実施形態では、センサーインターフェース回路150は、プロセッサー51の指示に応じて、センサーデバイス7-iに対して検出したデータの送信を要求するコマンドを送信し、センサーデバイス7-iは当該コマンドを受信し、検出したデータをセンサーインターフェース回路150に送信する。センサーインターフェース回路150は、センサーデバイス7-iが検出したデータを受信し、受信した当該データをプロセッサー51に送信する。iは、1以上M以下のいずれかの整数である。
【0097】
第2実施形態でも、第1実施形態と同様、選択回路50は、イベントの発生に応じて、
すなわちイベントトリガー信号TRGに応じて、複数種類のイベントデータの少なくとも1つを、記憶対象となる対象イベントデータとして選択するとともに、計時回路30が生成した時刻データTMの少なくとも一部の時刻桁に対応するデータを、記憶対象となる対象時刻データとして選択する。
【0098】
第1実施形態と同様、複数種類のイベントデータは、第1電源電圧低下信号VDDLOW、第2電源電圧低下信号VBATLOW、第3電源電圧低下信号VTMPLOW、発振停止信号FST、第1イベント信号EVIN1、第2イベント信号EVIN2、第3イベント信号EVIN3及びイベントコマンド検出信号WRComを含んでもよい。
【0099】
さらに、第2実施形態では、複数種類のイベントデータは、センサーデバイス7-1~7-Mが検出したデータに基づくセンサーデータをさらに含む。例えば、センサーデバイス7-1~7-Mのいずれかが温度センサーであり、センサーデータは、温度データを含んでもよい。この場合、発振回路10に含まれる温度補償回路は、温度センサー90から出力される温度信号VTMPに代えて、センサーデバイス7-1~7-Mのいずれかである温度センサーが検出したデータを用いてもよい。また、例えば、センサーデバイス7-1~7-Mのいずれかが位置情報センサーであり、センサーデータは、位置データを含んでもよい。位置情報センサーは、例えば、GPSセンサーであってもよい。GPSは、Global Positioning SystemあるいはGlobal Positioning Satelliteの略である。また、例えば、センサーデバイス7-1~7-Mのいずれかが慣性センサーであり、センサーデータは、慣性データを含んでもよい。例えば、慣性センサーが加速度センサーであって、慣性データが加速度データであってもよい。また、例えば、慣性センサーが角速度センサーであって、慣性データが角速度データであってもよい。また、例えば、慣性センサーがIMUであり、慣性データが加速度データ及び角速度データを含むデータであってもよい。IMUは、Inertial Measurement Unitの略である。
【0100】
そして、選択回路50は、対象時刻データ及び対象イベントデータを含むキャプチャーデータCPDTをメモリー回路60に記憶させる。すなわち、選択回路50は、イベントトリガー信号TRGに応じて、対象時刻データと対象イベントデータとを対応づけてメモリー回路60に記憶させるタイムスタンプ処理を行う。
【0101】
図8は、第2実施形態においてメモリー回路60に記憶されるキャプチャーデータCPDTの一例を示す図である。図8の例では、キャプチャーデータCPDTは64ビットのデータであり、例えば、メモリー回路60のアドレス0x0~0x07に記憶される。
【0102】
具体的には、メモリー回路60のアドレス0x0において、ビット7には0が記憶され、ビット6~0には時刻データTMに含まれる7ビットの秒データが記憶される。
【0103】
また、メモリー回路60のアドレス0x1において、ビット7には0が記憶され、ビット6~0には時刻データTMに含まれる7ビットの分データが記憶される。
【0104】
また、メモリー回路60のアドレス0x2において、ビット7,6には0が記憶され、ビット5~0には時刻データTMに含まれる6ビットの時データが記憶される。
【0105】
また、メモリー回路60のアドレス0x3において、ビット7,6には0が記憶され、ビット5~0には時刻データTMに含まれる6ビットの日データが記憶される。
【0106】
また、メモリー回路60のアドレス0x4において、ビット7には第3イベント信号EVIN3の論理レベルに対応するデータが記憶され、ビット6には第2イベント信号EVIN2の論理レベルに対応するデータが記憶され、ビット5には第1イベント信号EVI
N1の論理レベルに対応するデータが記憶され、ビット4~0には時刻データTMに含まれる5ビットの月データが記憶される。
【0107】
また、メモリー回路60のアドレス0x5において、ビット7~3には時刻データTMに含まれる8ビットの年データが記憶される。
【0108】
また、メモリー回路60のアドレス0x6において、ビット7~0にはセンサーデータの上位8ビットのデータが記憶される。
【0109】
また、メモリー回路60のアドレス0x7において、ビット7~0にはセンサーデータの下位8ビットのデータが記憶される。
【0110】
なお、図8の例では、秒データ、分データ、時データ、日データ、月データ及び年データが対象時刻データであり、その他のすべてのデータが対象イベントデータである。
【0111】
図8の例では、タイムスタンプの対象となるキャプチャーデータCPDTは64ビットのデータであり、メモリー回路60の1つのアドレスに8ビットのデータを割り当て、選択回路50が8ビットのデータを取得してメモリー回路60に書き込む処理を8回行う。したがって、仮に、選択回路50が時刻データTMを取得している期間中に、時刻データTMが更新される時刻更新タイミングが到来すると、キャプチャーデータCPDTに含まれる対象時刻データは、一部が更新前のデータであるのに対して他の一部が更新後のデータになってしまい、メモリー回路60に誤った対象時刻データが記憶されてしまう可能性がある。
【0112】
そこで、第2実施形態でも、第1実施形態と同様、選択回路50は、イベントが発生した後、すなわちイベントトリガー信号TRGが発生した後、次の時刻更新タイミングが到来した後に対象時刻データを取得してメモリー回路60に記憶させるタイムスタンプ処理を行う。選択回路50によるタイムスタンプ処理の一例を示すタイミングチャートは図5と同様であってもよいので、その図示及び説明を省略する。
【0113】
以上に説明した第2実施形態のリアルタイムクロックモジュール1によれば、第1実施形態のリアルタイムクロックモジュール1と同様の効果を奏することができる。
【0114】
さらに、第2実施形態のリアルタイムクロックモジュール1によれば、選択回路50は、イベントの発生に応じて、対象イベントデータとして、センサーデータである温度データ、位置データ、慣性データ等を選択してメモリー回路60に記憶させることができる。
【0115】
3.変形例
本発明は本実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
【0116】
例えば、上記の各実施形態では、選択回路50が選択する対象時刻データ及び対象イベントデータは、イベントトリガー信号TRGの発生要因によらず同じであったが、イベントトリガー信号TRGの発生要因毎に異なってもよい。
【0117】
また、例えば、上記の各実施形態では、選択回路50においてプロセッサー51が命令セット521に基づくソフトウェア処理を行うことで対象時刻データ及び対象イベントデータを任意に選択可能であったが、選択回路50は、不揮発性メモリー52又はレジスター群70に含まれる所定のレジスターに任意に設定された選択用データに基づいて対象時刻データ及び対象イベントデータを選択するハードウェアとして構成されてもよい。
【0118】
また、例えば、上記の各実施形態では、命令セット521は、対象時刻データ及び対象イベントデータを指定しているが、対象時刻データを指定せずに対象イベントデータを指定してもよい。すなわち、選択回路50が選択する対象時刻データは、種類が固定されていて命令セット521によって選択不可能であり、対象イベントデータは命令セット521によって任意に選択可能であってもよい。
【0119】
上述した実施形態および変形例は一例であって、これらに限定されるわけではない。例えば、各実施形態および各変形例を適宜組み合わせることも可能である。
【0120】
本発明は、実施の形態で説明した構成と実質的に同一の構成(例えば、機能、方法及び結果が同一の構成、あるいは目的及び効果が同一の構成)を含む。また、本発明は、実施の形態で説明した構成の本質的でない部分を置き換えた構成を含む。また、本発明は、実施の形態で説明した構成と同一の作用効果を奏する構成又は同一の目的を達成することができる構成を含む。また、本発明は、実施の形態で説明した構成に公知技術を付加した構成を含む。
【0121】
上述した実施形態および変形例から以下の内容が導き出される。
【0122】
リアルタイムクロックモジュールの一態様は、
計時を行って時刻データを生成する計時回路と、
イベントの発生に応じて、複数種類のイベントデータの少なくとも1つを、記憶対象となる対象イベントデータとして選択するとともに、前記時刻データの少なくとも一部の時刻桁に対応するデータを、記憶対象となる対象時刻データとして選択する選択回路と、
前記対象時刻データ及び前記対象イベントデータを記憶するメモリー回路と、を備える。
【0123】
このリアルタイムクロックモジュールによれば、イベントの発生に応じて、対象時刻データとともに複数種類のイベントデータから選択した対象イベントデータをメモリー回路に記憶するので、タイムスタンプにおいてアプリケーション毎に不要なイベントデータを記憶させないようにすることができる。
【0124】
前記リアルタイムクロックモジュールの一態様において、
前記選択回路は、
前記対象イベントデータを指定する命令セットを記憶する不揮発性メモリーと、
前記命令セットに基づいて前記対象イベントデータを選択するプロセッサーと、を含んでもよい。
【0125】
このリアルタイムクロックモジュールによれば、プロセッサーが命令セットに基づいて対象イベントデータを選択することにより、タイムスタンプにおいてアプリケーション毎に不要なイベントデータをメモリー回路に記憶させないようにすることができる。
【0126】
前記リアルタイムクロックモジュールの一態様において、
前記選択回路は、前記イベントが発生した後、次の時刻更新タイミングが到来した後に前記対象時刻データを取得して前記メモリー回路に記憶させてもよい。
【0127】
このリアルタイムクロックモジュールによれば、イベントの発生に応じて、選択回路が対象時刻データを取得している期間中に時刻更新タイミングが到来しないので、誤った対象時刻データがメモリー回路に記憶されるおそれが低減される。
【0128】
前記リアルタイムクロックモジュールの一態様は、
電源電圧を監視し、電源電圧監視データを生成する電源電圧監視回路を備え、
前記複数種類のイベントデータは前記電源電圧監視データを含んでもよい。
【0129】
このリアルタイムクロックモジュールによれば、イベントの発生に応じて、対象イベントデータとして電源電圧監視データを選択してメモリー回路に記憶させることができる。
【0130】
前記リアルタイムクロックモジュールの一態様において、
前記イベントは、前記リアルタイムクロックモジュールの外部から入力される外部入力信号によって発生し、
前記複数種類のイベントデータは、前記外部入力信号に対応するデータを含んでもよい。
【0131】
このリアルタイムクロックモジュールによれば、イベントの発生に応じて、対象イベントデータとして、イベントを発生させる外部入力信号に対応するデータを選択してメモリー回路に記憶させることができる。
【0132】
前記リアルタイムクロックモジュールの一態様において、
前記複数種類のイベントデータは、外部のセンサーデバイスが検出したデータに基づくセンサーデータを含んでもよい。
【0133】
このリアルタイムクロックモジュールによれば、イベントの発生に応じて、対象イベントデータとしてセンサーデータを選択してメモリー回路に記憶させることができる。
【0134】
前記リアルタイムクロックモジュールの一態様において、
前記センサーデバイスは、温度センサーであり、
前記センサーデータは、温度データを含んでもよい。
【0135】
このリアルタイムクロックモジュールによれば、イベントの発生に応じて、対象イベントデータとして温度データを含むセンサーデータを選択してメモリー回路に記憶させることができる。
【0136】
前記リアルタイムクロックモジュールの一態様において、
前記センサーデバイスは、位置情報センサーであり、
前記センサーデータは、位置データを含んでもよい。
【0137】
このリアルタイムクロックモジュールによれば、イベントの発生に応じて、対象イベントデータとして位置データを含むセンサーデータを選択してメモリー回路に記憶させることができる。
【0138】
前記リアルタイムクロックモジュールの一態様において、
前記センサーデバイスは、慣性センサーであり、
前記センサーデータは、慣性データを含んでもよい。
【0139】
このリアルタイムクロックモジュールによれば、イベントの発生に応じて、対象イベントデータとして慣性データを含むセンサーデータを選択してメモリー回路に記憶させることができる。
【0140】
前記リアルタイムクロックモジュールの一態様は、
振動子と、
前記振動子を発振させてクロック信号を生成する発振回路と、を備え、
前記計時回路は前記クロック信号に基づいて前記計時を行ってもよい。
【0141】
このリアルタイムクロックモジュールによれば、振動子を発振させて得られた高精度なクロック信号に基づいて計時を行うことができる。
【符号の説明】
【0142】
1…リアルタイムクロックモジュール、2…振動子、3…リアルタイムクロック回路、4…メイン電源、5…バックアップ電源、6…ホストデバイス、7-1~7-M…センサーデバイス、10…発振回路、20…分周回路、30…計時回路、40…イベントトリガー回路、50…選択回路、51…プロセッサー、52…不揮発性メモリー、60…メモリー回路、70…レジスター群、80…インターフェース回路、90…温度センサー、100…発振監視回路、110…電源電圧監視回路、120…電源電圧選択回路、130…電源回路、140…割込発生回路、150…センサーインターフェース回路、511…フェッチ回路、512…デコード回路、513…論理演算回路、514…データバッファー、515…キャプチャー回路、521…命令セット
図1
図2
図3
図4
図5
図6
図7
図8