(57)【要約】【課題】補正に利用する高周波発振器が発振を停止することがあっても、時刻の補正を常に行うことのできるリアルタイムクロックを提供する。【解決手段】実施形態のリアルタイムクロック１は、発振が停止することがある外部の高周波発振器１０００を利用する。リアルタイムクロック１は、低周波発振器１１を備え、計時部１２が、低周波発振器１１の発振周波数を分周して時刻情報を生成し、誤差測定部が１３、高周波発振器１０００が発振しているときに、高周波発振器１０００の発振周波数を基準に低周波発振器１１の発振周波数の誤差量ＤＦを測定する。誤差量ＤＦは、補正データ保存部１４に保存される。補正部１５が、補正データ保存部１４から誤差量ＤＦを読み出し、計時部１２の分周比を誤差量ＤＦに応じた分周比ＤＶに変更する。【選択図】  図１
2013167597.tif 000002
【特許請求の範囲】
【請求項１】
発振が停止することがある外部の高周波発振器を利用するリアルタイムクロックであって、
低周波発振器と、
前記低周波発振器の発振周波数を分周して時刻情報を生成する計時部と、
前記高周波発振器が発振しているときに、前記高周波発振器の発振周波数を基準に前記低周波発振器の発振周波数の誤差量を測定する誤差測定部と、
前記誤差量が保存される補正データ保存部と、
前記補正データ保存部から前記誤差量を読み出し、前記計時部の分周比を前記誤差量に応じた分周比に変更する補正部と
を備えることを特徴とするリアルタイムクロック。
【請求項２】
周囲温度を計測する温度センサを備え、
前記誤差量測定時の温度データが、前記誤差量と対にされて前記補正データ保存部に保存される
ことを特徴とする請求項１に記載のリアルタイムクロック。
【請求項３】
前記高周波発振器が発振を停止しているときは、
前記補正部が、前記温度センサで計測された現在の温度に対応する前記誤差量を前記補正データ保存部から読み出す
ことを特徴とする請求項２に記載のリアルタイムクロック。
【請求項４】
温度センサで計測される温度の変動量が予め設定された値を超えたことを検出したときに温度変化検出信号を出力する温度変化検出部を備え、
前記誤差測定部が、
前記温度変化検出部から前記温度変化検出信号が出力されるごとに、前記誤差量の測定を行う
ことを特徴とする請求項３に記載のリアルタイムクロック。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、リアルタイムクロックに関する。
【背景技術】
【０００２】
従来、時刻と密接な関係を持たせて動作させる必要がある装置、例えばパーソナルコンピュータなどでは、リアルタイムクロックにより計時を行っている。このようなリアルタイムクロックでは、３２.７６８ＫＨｚで発振する水晶振動子を用いた発振回路が用いられる。この発振回路で発生されるクロック信号が分周されて、１秒のパルス信号が生成される。さらに、この１秒のパルス信号が、分用カウンタおよび時間用カウンタで順次カウントされることで時計が構成される。
【０００３】
しかし、水晶振動子はもともと個体誤差（ばらつき）を持っている。また、発振回路で使用される負荷容量コンデンサの誤差、さらには使用環境温度などによっても、発振周波数が少なからず変動する。水晶振動子の発振周波数が変動すると、リアルタイムクロックの計時に誤差が生じる。
【０００４】
そこで、この計時の誤差を補正することが行われる。この補正の方式の１つとして、リアルタイムクロックとは別に高精度の水晶発振器を用意し、この高精度発振器の周波数を基準としてリアルタイムクロックの時刻を補正する方式がある。
【０００５】
ただし、高精度発振器は高価格なため、専用の高精度発振器を用いると、コストが高くなるという問題点がある。しかし、リアルタイムクロックが用いられるパーソナルコンピュータなどの装置では、ＣＰＵのクロック周波数を発生させるために、高精度の高周波発振器が搭載されている。そこで、この高周波発振器を利用してリアルタイムクロックの時刻を補正する方法が考えられる。
【０００６】
ところが、パーソナルコンピュータなどの装置では、リアルタイムクロックは、バックアップ電源により常に動作しているのに対して、高周波発振器は、常に発振動作を行うとは限らない。例えば、低消費電力モードになると、電源供給が制限され、高周波発振器は発振を停止する。すなわち、上述の方法には、高周波発振器の発振停止中は、リアルタイムクロックの時刻の補正ができない、という問題があった。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００２−１８１９７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明が解決しようとする課題は、補正に利用する高周波発振器が発振を停止することがあっても、時刻の補正を常に行うことのできるリアルタイムクロックを提供することにある。
【課題を解決するための手段】
【０００９】
実施形態のリアルタイムクロックは、発振が停止することがある外部の高周波発振器を利用するリアルタイムクロックである。このリアルタイムクロックは、低周波発振器を備え、計時部が、前記低周波発振器の発振周波数を分周して時刻情報を生成し、誤差測定部が、前記高周波発振器が発振しているときに、前記高周波発振器の発振周波数を基準に前記低周波発振器の発振周波数の誤差量を測定する。前記誤差量は、補正データ保存部に保存される。補正部が、前記補正データ保存部から前記誤差量を読み出し、前記計時部の分周比を前記誤差量に応じた分周比に変更する。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態のリアルタイムクロックの構成の例を示すブロック図。
【図２】第１の実施形態のリアルタイムクロックの誤差測定部の構成の例を示すブロック図。
【図３】図２に示す誤差測定部の動作の例を示す波形図。
【図４】第１の実施形態のリアルタイムクロックの補正部の動作を説明するための図。
【図５】第１の実施形態のリアルタイムクロックの補正部による時刻補正動作の例を示す図。
【図６】第２の実施形態のリアルタイムクロックの構成の例を示すブロック図。
【図７】第２の実施形態のリアルタイムクロックの補正データ保存部に保存されるデータの例を示す図。
【図８】第３の実施形態のリアルタイムクロックの構成の例を示すブロック図。
【図９】第３の実施形態のリアルタイムクロックの温度変化検出部の動作の例を示す図。
【発明を実施するための形態】
【００１１】
以下、本発明の実施の形態について図面を参照して説明する。なお、図中、同一または相当部分には同一の符号を付して、その説明は繰り返さない。
【００１２】
（第１の実施形態）
図１は、第１の実施形態のリアルタイムクロックの構成の例を示すブロック図である。本実施形態のリアルタイムクロック１は、時刻情報生成の元となる低周波発振器１１の発振周波数のずれを、外部の高周波発振器１０００を利用して補正するリアルタイムクロックである。ただし、この高周波発振器１０００は、停止信号ＳＴＯＰが入力されたときは発振を停止するものである。
【００１３】
本実施形態のリアルタイムクロック１は、本来の発振周波数がｆ０の低周波発振器１１と、低周波発振器１１の発振周波数を分周して時刻情報を生成する計時部１２と、高周波発振器が発振しているときに、高周波発振器１０００の発振周波数を基準に低周波発振器１１の発振周波数の誤差量ＤＦを測定する誤差測定部１３と、誤差測定部１３により測定された誤差量ＤＦが保存される補正データ保存部１４と、補正データ保存部１４から誤差量ＤＦを読み出し、計時部１２の分周比を誤差量ＤＦに応じた分周比ＤＶに変更する補正部１５と、を備える。
【００１４】
低周波発振器１１は、例えば水晶発振器である。一般に、時計用に用いられる水晶発振器は、発振周波数の精度が低く、個体差による発振周波数のばらつきも大きい。
【００１５】
計時部１２は、低周波発振器１１の発振周波数を分周して「秒」クロックを生成し、さらに分周を繰り返して、「分」、「時」、「日」、「年」のクロックを生成する。
【００１６】
誤差測定部１３は、高周波発振器１０００の発振周波数を基準に、低周波発振器１１の発振周波数の、本来の発振周波数ｆ０に対する誤差量ＤＦを測定する。
【００１７】
図２に、誤差測定部１３の内部構成の例、また、図３に、その動作波形の例を示す。
【００１８】
図２に示す誤差測定部１３は、高周波発振器１０００から出力されるクロックＣＫＨを分周して、Ｈレベル期間が１秒ある１ｓｅｃ信号を出力する分周器１３１と、図３に示すように、１ｓｅｃ信号がＨレベルである期間、低周波発振器１１から出力されるクロックＣＫＬの数をカウントするカウンタ１３２と、カウンタ１３２のカウント値ｆ１と低周波発振器１１の本来の発振周波数ｆ０との差（ｆ１−ｆ０）を算出する減算器１３３と、を有する。
【００１９】
誤差測定部１３は、減算器１３３で算出された差分値を、低周波発振器１１の発振周波数の誤差量ＤＦ（＝ｆ１−ｆ０）として出力する。
【００２０】
補正データ保存部１４は、例えばＥ２ＰＲＯＭやフラッシュメモリなどの不揮発性メモリを有しており、この不揮発性メモリに、誤差測定部１３により測定された誤差量ＤＦが保存される。
【００２１】
補正部１５は、補正データ保存部１４から誤差量ＤＦを読み出し、計時部１２の分周比を誤差量ＤＦに応じた分周比ＤＶに変更する。
【００２２】
なお、補正部１５による補正を任意の周期で行えるようにすることもできる。
【００２３】
図４に、任意の補正周期ｍで行うための分周比ＤＶを生成する分周比設定部１５１を有する補正部１５の例を示す。
【００２４】
分周比設定部１５１は、補正周期ｍに応じて、計時部１２の秒カウンタ１２１の分周比ＤＶを変更する。
【００２５】
このとき、分周比設定部１５１は、周期１〜（ｍ−１）周期目は分周比ＤＶを１／ｆ０とし、ｍ周期目の分周比ＤＶを１／（ｆ０＋ｍ・ＤＦ）と設定する。これにより、補正周期ｍ全体を通した分周比は、１／（ｆ０＋ＤＦ）となる。
【００２６】
ここで、ＤＦ＝ｆ１−ｆ０であるので、上記の分周比は１／ｆ１となる。すなわち、計時部１２の秒カウンタ１２１は、発振器１１の実際の発振周波数ｆ１を分周比１／ｆ１で分周する。これにより、秒カウンタ１２１から出力される１秒パルスの周期は、正確な１秒となる。
【００２７】
図５に、分周比設定部１５１による分周比ＤＶの変更の例を示す。
【００２８】
図５（ａ）は、補正周期ｍが、ｍ＝１の例である。この場合、分周比ＤＶは、毎周期、
ＤＶ＝１／（ｆ０＋ＤＦ）と設定される。
【００２９】
図５（ｂ）は、補正周期ｍをｍ＝２０とし、２０秒ごとに補正を行う場合の例である。この場合、分周比ＤＶは、
１〜１９周期目は、ＤＶ＝１／ｆ０、
２０周期目は、ＤＶ＝１／（ｆ０＋２０ＤＦ）
と設定される。
【００３０】
図５（ｃ）は、補正周期ｍをｍ＝３０とし、３０秒ごとに補正を行う場合の例である。この場合、分周比ＤＶは、
１〜２９周期目は、ＤＶ＝１／ｆ０、
３０周期目は、ＤＶ＝１／（ｆ０＋３０ＤＦ）
と設定される。
【００３１】
このような本実施形態によれば、高周波発振器１０００が発振しているときに低周波発振器１１の発振周波数の誤差量ＤＦを算出して補正データ保存部１４に保存しておくので、補正部１５は、計時部１２の時刻情報の補正を行うときに、誤差量ＤＦを補正データ保存部１４から読み出すことにより、計時部１２の分周比を、誤差量ＤＦに応じた分周比ＤＶに変更することができる。
【００３２】
これにより、高周波発振器１０００が発振を停止している間も、補正部１５は、補正データ保存部１４に保存された誤差量ＤＦを用いて、計時部１２の時刻情報の補正を行うことができる。すなわち、補正部１５は、高周波発振器１０００が発振を停止することがあっても、計時部１２の時刻情報を、常に、高精度で補正することができる。
【００３３】
（第２の実施形態）
時計用に用いられる水晶発振器は、温度変動に対する発振周波数の変動が大きい。そこで、本実施形態では、低周波発振器１１の発振周波数の温度による変動も補正することのできるリアルタイムクロックの例を示す。
【００３４】
図６は、第２の実施形態のリアルタイムクロックの構成の例を示すブロック図である。本実施形態のリアルタイムクロック２は、第１の実施形態のリアルタイムクロックに対して、温度センサ２１を追加し、補正部１５を補正部１５ａに変更したものである。
【００３５】
温度センサ２１は、誤差測定部１３が低周波発振器１１の発振周波数の誤差量ＤＦを測定しているとき、周囲温度Ｔａを測定する。
【００３６】
温度センサ２１で測定された周囲温度Ｔａの温度データは、誤差測定部１３で測定された誤差量ＤＦと対にされて補正データ保存部１４に保存される。
【００３７】
図７に、補正データ保存部１４に保存された、周囲温度Ｔａと誤差量ＤＦのデータの対の例を示す。
【００３８】
補正データ保存部１４には、周囲温度Ｔａ＝Ｔ１のときの誤差量ＤＦ＝Ｄ１、周囲温度Ｔａ＝Ｔ２のときの誤差量ＤＦ＝Ｄ２、周囲温度Ｔａ＝Ｔ３のときの誤差量ＤＦ＝Ｄ３、・・・という形で、周囲温度Ｔａと誤差量ＤＦのデータが保存される。
【００３９】
温度センサ２１で測定された周囲温度Ｔａの値は、補正部１５ａへも出力される。
【００４０】
補正部１５ａは、入力された周囲温度Ｔａの値にもとづき、その周囲温度Ｔａの値と対になった誤差量ＤＦのデータを補正データ保存部１４から読み出す。
【００４１】
補正部１５ａは、補正データ保存部１４から読み出した誤差量ＤＦを用いて、第１の実施形態の補正部１５と同様、計時部１２に設定する分周比ＤＶを算出する。
【００４２】
これにより、補正部１５ａは、低周波発振器１１の周囲温度Ｔａにおける発振周波数に合わせて、計時部１２の時刻情報の補正を行うことができる。
【００４３】
温度センサ２１は、高周波発振器１０００が発振を停止している間も、周囲温度Ｔａの測定を行い、その測定温度を補正部１５ａへ伝達する。
【００４４】
これを受けて、補正部１５ａは、その測定温度に対する誤差量ＤＦのデータを補正データ保存部１４から読み出す。
【００４５】
これにより、補正部１５ａは、高周波発振器１０００が発振を停止している間も、現在の周囲温度Ｔａに応じた、計時部１２の時刻情報の補正を行うことができる。
【００４６】
このような本実施形態によれば、誤差測定部１３が低周波発振器１１の発振周波数の誤差量ＤＦを測定しているときの周囲温度Ｔａを温度センサ２１で測定し、その温度データを誤差量ＤＦと対にして補正データ保存部１４しておくので、補正部１５は、計時部１２の時刻情報の補正を行うときに、現在の周囲温度Ｔａに対応する誤差量ＤＦを補正データ保存部１４から読み出すことにより、計時部１２の分周比を、現在の周囲温度Ｔａにおける誤差量ＤＦに応じた分周比ＤＶに変更することができる。
【００４７】
これにより、補正部１５ａは、高周波発振器１０００が発振を停止している間も、現在の周囲温度Ｔａに応じた計時部１２の時刻情報の補正を、常に、高精度で行うことができる。
【００４８】
（第３の実施形態）
図８は、第３の実施形態のリアルタイムクロックの構成の例を示すブロック図である。本実施形態のリアルタイムクロック３は、第２の実施形態のリアルタイムクロックに対して、温度変化検出部３１を追加し、誤差測定部１３を誤差測定部１３ａに変更したものである。
【００４９】
温度変化検出部３１は、温度センサ２１で計測された周囲温度Ｔａの変動量を算出し、その変動量が予め設定された値Ｒを超えたことを検出したときに、温度変化検出信号Ｓｔを出力する。
【００５０】
図９に、周囲温度Ｔａの変化に対する温度変化検出信号Ｓｔの出力の関係を示す。図９に示す例では、周囲温度Ｔａが上昇するときに、その温度上昇幅が予め設定された値Ｒを超えるごとに、温度変化検出信号Ｓｔが出力される。同様に、温度下降幅が予め設定された値Ｒを超えるときも、温度変化検出信号Ｓｔが出力される。
【００５１】
誤差測定部１３ａは、温度変化検出部３１から温度変化検出信号Ｓｔが出力されるごとに、低周波発振器１１の発振周波数の誤差量ＤＦの測定を行う。
【００５２】
誤差測定部１３ａにより測定された誤差量ＤＦは、そのときの周囲温度Ｔａのデータと対にされて、補正データ保存部１４に保存される。
【００５３】
補正部１５ａは、温度センサ２１から入力された周囲温度Ｔａの値にもとづき、その周囲温度Ｔａの値と対になった誤差量ＤＦのデータを補正データ保存部１４から読み出し、第２の実施形態と同様、計時部１２に設定する分周比ＤＶを算出する。
【００５４】
これにより、補正部１５ａは、周囲温度Ｔａの変動量が予め設定された値Ｒを超えるごとに、そのときの周囲温度Ｔａにおける低周波発振器１１の発振周波数に合わせて、計時部１２の時刻情報の補正を行うことができる。
【００５５】
このような本実施形態によれば、周囲温度Ｔａの変動量が予め設定された値Ｒを超えるごとに計時部１２の時刻情報の補正を行うので、周囲温度Ｔａの変化に対して、計時部１２の時刻情報の補正を確実に行うことができる。これにより、低周波発振器１１の発振周波数が温度変動によって大きく変動しても、計時部１２の時刻情報の精度を十分に保つことができる。
【００５６】
以上説明した少なくとも１つの実施形態のリアルタイムクロックによれば、補正に利用する高周波発振器が発振を停止することがあっても、時刻の補正を常に行うことができる。
【００５７】
また、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００５８】
１、２、３  リアルタイムクロック
１１  低周波発振器
１２  計時部
１３、１３ａ  誤差測定部
１４  補正データ保存部
１５、１５ａ  補正部
２１  温度センサ
３１  温度変化検出部
１２１  秒カウンタ
１３１  分周器
１３２  カウンタ
１３３  減算器
１５１  分周比設定部
１０００  高周波発振器
【図１】
2013167597.tif 000003
【図２】
2013167597.tif 000004
【図３】
2013167597.tif 000005
【図４】
2013167597.tif 000006
【図５】
2013167597.tif 000007
【図６】
2013167597.tif 000008
【図７】
2013167597.tif 000009
【図８】
2013167597.tif 000010
【図９】
2013167597.tif 000011