説明

時刻補正装置、及び制御方法

【課題】リアルタイムクロックの時刻を補正すること。
【解決手段】リアルタイムクロック121の水晶振動子の雰囲気温度を監視する雰囲気温度監視手段130と、雰囲気温度監視手段130が監視している雰囲気温度に基づいて、リアルタイムクロック121の時刻を補正する時刻補正手段110とを備え、時刻補正手段110は、雰囲気温度監視手段130が監視している雰囲気温度と、水晶振動子の温度特性とに基づいて、リアルタイムクロック121の誤差を算出する誤差算出部と、誤差算出部が算出した誤差に基づいて、リアルタイムクロック121を補正するための補正値を算出する補正値算出部と、補正値算出部が算出した補正値を、リアルタイムクロック121へ設定する補正値設定部とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、時刻補正装置、及び制御方法に関する。特に、本発明は、リアルタイムクロックの時刻を補正する時刻補正装置、並びに当該時刻補正装置を制御する制御方法に関する。
【背景技術】
【0002】
マザーボード上には、リアルタイムクロックと呼ばれる計時専用のチップが実装されている。このリアルタイムクロックは、時間の経過と共に、水晶振動子の周波数の個体差や、温度により水晶振動子の周波数が変化することによって誤差が生じる。例えば、温度により水晶振動子の周波数が変化する問題への対策としては、ネットワークへの接続や高価なIC(Integrated Circuit)チップを使用する方法等が採られている。
【0003】
また、リアルタイムクロックの時刻補正方法としては、第1の振動減の発振を所定数カウントした期間を単位時間としてリアルタイムクロックを生成するリアルタイムクロックに対し、補正値を設定して、この補正値に応じて所定数を増減させてリアルタイムクロックを補正する方法が知られている(例えば、特許文献1参照。)。この方法においては、使用温度範囲内で第1の振動源より平坦な温度特性を有する第2の振動源の発振周波数を、初期時のみ入力される基準クロックを計時の源として測定し、測定した発振周波数を記憶する。そして、この方法においては、第2の振動源の発振周波数を、リアルタイムクロックを計時の源として測定する。そして、この方法においては、測定した発振周波数と記憶した発振周波数との差分からリアルタイムクロックの誤差が最少となる補正値を算出し、この補正値をリアルタイムクロック回路に設定する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003−270369号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載のリアルタイムクロックの時刻補正方法においては、高精度の時刻補正を実現でき、高精度のリアルタイムクロックを生成することができる。しかしながら、特許文献1に記載の方法においては、リアルタイムクロックの時刻を補正するために、平坦な温度特性を有する水晶振動子を使用しなければならない。このように、リアルタイムクロックの時刻を補正する技術としては、高価なICチップ等を使用する方法だけしか提案されておらず、既存のハードウェア資源だけを利用する技術が確立されていない。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明の第1の形態によると、リアルタイムクロックの時刻を補正する時刻補正装置であって、リアルタイムクロックの水晶振動子の雰囲気温度を監視する雰囲気温度監視手段と、雰囲気温度監視手段が監視している雰囲気温度に基づいて、リアルタイムクロックの時刻を補正する時刻補正手段とを備え、時刻補正手段は、雰囲気温度監視手段が監視している雰囲気温度と、水晶振動子の温度特性とに基づいて、リアルタイムクロックの誤差を算出する誤差算出部と、誤差算出部が算出した誤差に基づいて、リアルタイムクロックを補正するための補正値を算出する補正値算出部と、補正値算出部が算出した補正値を、リアルタイムクロックへ設定する補正値設定部とを有する。
【0007】
また、本発明の第2の形態によると、リアルタイムクロックの時刻を補正する時刻補正装置を制御する制御方法であって、リアルタイムクロックの水晶振動子の雰囲気温度を監視する雰囲気温度監視手段が監視している雰囲気温度と、水晶振動子の温度特性とに基づいて、リアルタイムクロックの誤差を算出する誤差算出段階と、誤差算出段階において算出された誤差に基づいて、リアルタイムクロックを補正するための補正値を算出する補正値算出段階と、補正値算出段階において算出された補正値を、リアルタイムクロックへ設定する補正値設定段階とを備える。
【0008】
なおまた、上記のように発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた、発明となり得る。
【発明の効果】
【0009】
以上の説明から明らかなように、この発明においては、リアルタイムクロックの水晶振動子の雰囲気温度を監視し、その雰囲気温度と水晶振動子の温度特性とに基づいてリアルタイムクロックの時刻を補正することにより、リアルタイムクロックの誤差を小さくすることができる。
【図面の簡単な説明】
【0010】
【図1】一実施形態に係るマザーボード100の一例を示す図である。
【図2】BIOS110のブロック構成の一例を示す図である。
【図3】水晶振動子の温度特性を示す図である。
【図4】マザーボード100の動作フローの一例を示す図である。
【発明を実施するための形態】
【0011】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は、特許請求の範囲にかかる発明を限定するものではなく、また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0012】
図1は、一実施形態に係るマザーボード100の一例を示す。マザーボード100のI/Oハブ120には、リアルタイムクロック121が実装されている。マザーボード100は、リアルタイムクロック121の時刻を補正する機能を有する。なお、マザーボード100は、この発明における「時刻補正装置」の一例であってよい。
【0013】
マザーボード100上には、リアルタイムクロック121の水晶振動子の雰囲気温度を監視するための温度センサ130が更に実装されている。また、マザーボード100条に装着されたフラッシュメモリ等の不揮発性メモリには、BIOS(Basic Input/Output System)110が記録されている。なお、温度センサ130は、この発明における「雰囲気温度監視手段」の一例であってよい。また、BIOS110は、この発明における「時刻補正手段」の一例であってよい。
【0014】
図2は、BIOS110のブロック構成の一例を示す。BIOS110は、タイマー割り込み入力受付部111、雰囲気温度読出部112、誤差算出部113、補正値算出部114、補正値設定部115、温度特性テーブル116、及び雰囲気温度テーブル117を有する。以下に、各構成要素の機能及び動作を説明する。なお、温度特性テーブル116は、この発明における「温度特性データ格納部」の一例であってよい。また、雰囲気温度テーブル117は、この発明における「雰囲気温度データ格納部」の一例であってよい。
【0015】
タイマー割り込み入力受付部111は、I/Oハブ120からのタイマー割り込みの入力を受け付ける。具体的には、タイマー割り込み入力受付部111は、I/Oハブ120からのタイマー割り込みの入力を受け付けると、その旨を示すデータを、雰囲気温度読出部112へ送る。
【0016】
雰囲気温度読出部112は、温度センサ130が監視している雰囲気温度を読み出す。具体的には、雰囲気温度読出部112は、タイマー割り込みの入力を受け付けたことを示すデータを、タイマー割り込み入力受付部111から受け取ると、温度センサ130が監視している雰囲気温度を読み出す。そして、雰囲気温度読出部112は、読み出した雰囲気温度を示すデータを、雰囲気温度テーブル117に格納する。
【0017】
誤差算出部113は、温度センサ130が監視している雰囲気温度と、水晶振動子の温度特性とに基づいて、リアルタイムクロック121の誤差を算出する。具体的には、誤差算出部113は、雰囲気温度テーブル117に格納されている雰囲気温度を示すデータと、温度特性テーブル116に格納されている水晶振動子の温度特性を示すデータとに基づいて、リアルタイムクロック121の誤差を算出する。そして、誤差算出部113は、算出した誤差を示すデータを、補正値算出部114へ送る。
【0018】
補正値算出部114は、誤差算出部113が算出した誤差に基づいて、リアルタイムクロック121を補正するための補正値を算出する。具体的には、補正値算出部114は、リアルタイムクロック121の誤差を示すデータを、誤差算出部113から受け取ると、その誤差に基づいて、リアルタイムクロック121を補正するための補正値を算出する。そして、補正値算出部114は、算出した補正値を示すデータを、補正値設定部115へ送る。
【0019】
補正値設定部115は、補正値算出部114が算出した補正値を、リアルタイムクロック121へ設定する。具体的には、補正値設定部115は、リアルタイムクロック121を補正するための補正値を示すデータを、補正値算出部114から受け取ると、その補正値を、リアルタイムクロック121へ設定する。
【0020】
温度特性テーブル116には、リアルタイムクロック121の水晶振動子の温度特性を示すデータが格納されている。水晶振動子の温度特性を示すデータは、図3に示すような水晶振動子の温度特性に基づいて登録されたデータである。
【0021】
雰囲気温度テーブル117には、温度センサ130が監視している一定時間置きの各雰囲気温度を示すデータを格納されている。具体的には、雰囲気温度テーブル117は、一定時間置きに雰囲気温度読出部112が温度センサ130から読み出した雰囲気温度を示すデータが格納されている。
【0022】
図4は、マザーボード100の動作フローの一例を示す。I/Oハブ120は、例えば、1時間毎にタイマー割り込みをBIOS110へ送る(S101)。BIOS110は、タイマー割り込みの入力を受け付けると、温度センサ130から雰囲気温度を読み出して、その値を保存する(S102)。このステップS101、S102の処理は、例えば、1日経過するまで繰り返される(S101→S102→S103:Noの繰り返し)。そして、一日経過すると(S103:Yes)、BIOS110は、保存した雰囲気温度の値と水晶振動子の温度特性からリアルタイムクロック121の補正値を算出する(S104)。そして、BIOS110は、算出した補正値をリアルタイムクロック121へ設定する(S105)。
【0023】
なお、上記の実施形態においては、タイマー割り込みを1時間毎としているが、タイマー割り込みの間隔を短くして、雰囲気温度を読み出す回数を多くしてもよい。また、上記の実施形態においては、1日経った時点で補正値を計算しているが、補正値が一定の値を超えた時点でリアルタイムクロック121を再設定するようにしてもよい。
【0024】
また、上記の実施形態におけるBIOS110の処理は、温度センサへのアクセス、リアルタイムクロックへのアクセスが可能なアプリケーションや、BMC(Baseboard Management Controller)でも行うことができる。例えば、BMCによる実施形態においては、電源オフ中もリアルタイムクロック121の補正を行うことが可能となり、更に精度を上げることができる。
【0025】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は、上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。そのような変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【符号の説明】
【0026】
100 マザーボード
110 BIOS
111 タイマー割り込み入力受付部
112 雰囲気温度読出部
113 誤差算出部
114 補正値算出部
115 補正値設定部
116 温度特性テーブル
117 雰囲気温度テーブル
120 I/Oハブ
121 リアルタイムクロック
130 温度センサ

【特許請求の範囲】
【請求項1】
リアルタイムクロックの時刻を補正する時刻補正装置であって、
前記リアルタイムクロックの水晶振動子の雰囲気温度を監視する雰囲気温度監視手段と、
前記雰囲気温度監視手段が監視している雰囲気温度に基づいて、前記リアルタイムクロックの時刻を補正する時刻補正手段と
を備え、
前記時刻補正手段は、
前記雰囲気温度監視手段が監視している雰囲気温度と、前記水晶振動子の温度特性とに基づいて、前記リアルタイムクロックの誤差を算出する誤差算出部と、
前記誤差算出部が算出した誤差に基づいて、前記リアルタイムクロックを補正するための補正値を算出する補正値算出部と、
前記補正値算出部が算出した補正値を、前記リアルタイムクロックへ設定する補正値設定部と
を有する時刻補正装置。
【請求項2】
前記時刻補正手段は、
前記リアルタイムクロックの水晶振動子の温度特性を示すデータを格納する温度特性データ格納部
を更に有し、
前記誤差算出部は、前記雰囲気温度監視手段が監視している雰囲気温度と、前記温度特性データ格納部に格納されているデータとに基づいて、前記リアルタイムクロックの誤差を算出する
請求項1に記載の時刻補正装置。
【請求項3】
前記時刻補正手段は、
前記雰囲気温度監視手段が監視している一定時間置きの各雰囲気温度を示すデータを格納する雰囲気温度データ格納部
を更に備え、
前記誤差算出部は、前記雰囲気温度データ格納部に格納されている各雰囲気温度を示すデータと、前記リアルタイムクロックの水晶振動子の温度特性とに基づいて、前記各雰囲気温度に対応する前記リアルタイムクロックの誤差をそれぞれ算出し、
前記補正値算出部は、前記誤差算出部が算出した各誤差に基づいて、前記リアルタイムクロックを補正するための補正値を算出する
請求項1又は2に記載の時刻補正装置。
【請求項4】
前記補正値設定部は、前記補正値算出部が算出した補正値が予め定められたしきい値を超えた場合に、当該補正値を前記リアルタイムクロックへ設定する
請求項1から3のいずれか一項に記載の時刻補正装置。
【請求項5】
前記誤差算出部は、前記リアルタイムクロックからのタイマー割り込みを受けて前記リアルタイムクロックの誤差を算出する
請求項1から4のいずれか一項に記載の時刻補正装置。
【請求項6】
前記雰囲気温度監視手段は、温度センサである
請求項1から5のいずれか一項に記載の時刻補正装置。
【請求項7】
前記時刻補正手段は、BIOSである
請求項1から6のいずれか一項に記載の時刻補正装置。
【請求項8】
前記時刻補正手段は、アプリケーションソフトである
請求項1から6のいずれか一項に記載の時刻補正装置。
【請求項9】
前記時刻補正手段は、BMCである
請求項1から6のいずれか一項に記載の時刻補正装置。
【請求項10】
リアルタイムクロックの時刻を補正する時刻補正装置を制御する制御方法であって、
前記リアルタイムクロックの水晶振動子の雰囲気温度を監視する雰囲気温度監視手段が監視している雰囲気温度と、前記水晶振動子の温度特性とに基づいて、前記リアルタイムクロックの誤差を算出する誤差算出段階と、
前記誤差算出段階において算出された誤差に基づいて、前記リアルタイムクロックを補正するための補正値を算出する補正値算出段階と、
前記補正値算出段階において算出された補正値を、前記リアルタイムクロックへ設定する補正値設定段階と
を備える制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate