マイコンには通常、RTCが内蔵されているが、その計時電流はマイクロアンペア単位だ。一方、スタンドアロンRTCの動作中の消費電流はナノアンペア単位にすぎない。例えば、ある市販のスタンドアロンRTCは計時モードで150nAしか消費せず、システムのウェイクアップに使用できる2種類のアラーム設定と2本の割り込みピンを備えている。
数マイクロアンペアと150nAの差は軽視できない。バッテリー寿命の長いIoTアプリケーションを設計する際には、1μAの違いがものをいう。IoTアプリケーション以外にも、多くの医療用デバイスがナノアンペア単位のRTCを必要としている。ウェアラブルECG(心電図)デバイス、補聴器、医療用新生児タグなどがその例だ。
大半のバッテリー駆動デバイスは、携帯性や設置の容易性を高めるためにそもそも非常に小さく作られている。スタンドアロンRTCはマイコンの外付けになるため、小型であればあるほど望ましいということになる。基板スペースに制約がある場合、共振器一体型のRTCを選択できればさらに良い。
低消費電力/省スペースに加え、使用温度範囲が広い場合でも高い計時精度が要求されるアプリケーションもある。例えば、一日を通して気温が大きく変動する屋外に設置されるセンサーでは、この点を考慮することが重要になってくる。こうしたアプリケーションの場合には、温度補償機能を備えたRTCがより望ましい選択肢といえる。これについては本連載の後編で取り上げる。
通常、コスト効果の高いRTCを実現するには外付け振動子が必要になる。最も広く使用されているRTC用振動子は、32.768kHz音叉型水晶振動子だ。
なぜ32.768kHzなのか? まず、32768は2の累乗数という点がある。この信号が15段フリップフロップに接続されると、ちょうど1Hzの信号が出力されるのだ。RTCはこの1Hz信号を使用して計時ロジックを駆動する。しかし、なぜ131.072kHzや1.024kHzではなく32.768kHzなのか? この問いに答えるためには、周波数と消費電力のトレードオフを理解する必要がある。
一般に、水晶振動子の周波数が上がるほど消費電流が増える。そのため、低消費電力のRTCに使用する水晶振動子の周波数は高すぎても、低すぎてもいけない。水晶振動子のサイズは周波数に反比例する。つまり、低周波数の水晶振動子になるほど物理的に大きくなり、基板占有面積が増える。そのため、電力とサイズを天びんにかけたときのベストな妥協点として32.768kHzが選ばれているのだ。
また、人間の可聴域は20Hz〜20kHzであり、周波数が20kHz未満の場合、実際に水晶の振動音が聞こえてしまう。32.768kHzは可聴域を超えた最初の2の累乗数なのだ。
水晶振動子は、端子の先端に少量の金を加えることで振動速度を微調整し、ターゲット周波数で振動するよう工場で較正される。結果として得られるクロック精度は、室温時の規定負荷容量で通常±20ppmだ。このppmは「parts per million(百万分の1)」の略で、一般にクロック精度の計測単位として使用される。
周囲温度が年間を通して常に25℃に保たれていると仮定すれば、精度±20ppmのRTCにおける年間の誤差時間は10.5分間となる。計算式は次のようになる。
温度が変動する場合は、累積誤差が増える可能性がある。買い手に余裕があるなら、サプライヤーは選別プロセスを経てより高精度の水晶振動子を提供できる。ただ、それらの水晶振動子の室温時の精度がどれほど高くても、周波数は依然として次の3つの要因に影響される可能性がある。
Copyright © ITmedia, Inc. All Rights Reserved.