以下、本発明の実施形態について、図面を参照して説明する。なお、図中同一または相当部分には同一符号を付す。
(第1実施形態)
本発明の第1実施形態に係る電子時計100は、図1に示すように、ハードウェア構成として、マイクロコントローラ110と、振動子141と、表示駆動回路142と、クロック生成回路143と、表示部151と、操作受付部152と、電源部160と、通信部170と、電圧変換回路180と、を備える。電源部160は、電子時計100の主電源となる電源である。図1では、太い黒い矢印により、電源部160からの主電源の供給が示されている。また、表示部151は主電源の電圧(例えば2V)よりも高い電圧(例えば3V)で駆動されるため、電圧変換回路180によりこの高い電圧が生成される。図1では、太い白い矢印により、電圧変換回路180からのこの高い電圧の供給が示されている。なお、図1で、振動子141、操作受付部152及び通信部170へは、マイクロコントローラ110を介して電源部160からの主電源が供給されている。
マイクロコントローラ110は、発振回路111と、分周回路112と、計時回路113と、制御部としてのCPU(Central Processing Unit)120と、ROM(Read Only Memory)131と、RAM(Random Access Memory)132と、を備える。なお、発振回路111、分周回路112、計時回路113、ROM131及びRAM132は、マイクロコントローラ110の内部に限られず、マイクロコントローラ110の外部に設けられてもよい。また、振動子141、表示駆動回路142、クロック生成回路143、通信部170及び電圧変換回路180は、マイクロコントローラ110の外部に限られず、マイクロコントローラ110の内部に設けられてもよい。
発振回路111は、振動子141を発振させて、所定の周波数信号(クロック信号)を生成して出力する。
分周回路112は、発振回路111から入力された周波数信号を計時回路113やCPU120が利用する周波数の信号に分周して出力する。この出力信号の周波数は、CPU120による設定に基づいて変更されても良い。
計時回路113は、分周回路112から入力された信号の入力回数を計数することによって現在時刻を計時する。なお、計時回路113は、所定の時間(例えば1秒)毎にRAM132に記憶させる値を変化させるソフトウェアにより構成されても良いし、或いは、専用のハードウェアにより構成されても良い。計時回路113が計時する時刻は、所定のタイミングからの累積時間、UTC(Coordinated Universal Time、協定世界時)、JST(Japan Standard Time、日本標準時)等の各地の標準時、又は予め設定された都市の時刻(地方時)等のうち何れであっても良い。また、この計時回路113が計時する時刻は、必ずしも年月日時分秒の形式でなくてもよい。なお、本実施形態においては、発振回路111、分周回路112及び計時回路113により計時部が構成される。
CPU120は、各種演算処理を行い、電子時計100の全体動作を統括制御するプロセッサである。CPU120は、ROM131に記憶されている制御プログラムを読み出し、RAM132をワークメモリとして用いながら、電子時計100の各種機能に係る演算制御、表示制御等を行う。また、CPU120は、マルチスレッド機能に対応していてもよい。CPU120がマルチスレッド機能に対応している場合は、複数のスレッド(異なる処理の流れ)を並行して実行することができる。なお、本実施形態において、CPU120、クロック生成回路143及び電圧変換回路180により本発明に係る電源制御装置の一例が構成される。
ROM131は、マスクROM、フラッシュメモリ等の不揮発性メモリであり、制御プログラムや初期設定データを記憶する。ROM131に記憶されている制御プログラムには、クロック生成回路143及び電圧変換回路180を制御するための後述する電源制御プログラムが含まれている。
RAM132は、SRAM(Static Random Access Memory)やDRAM(Dynamic Random Access Memory)等の揮発性のメモリである。RAM132は、ワークメモリとして一時的なデータ、各種設定データ、表示部151に表示する画像データ等を記憶する。本実施形態において、画像データは、例えば現在時刻、年月日、曜日、バッテリ残量等を表す画像データである。
振動子141は、例えば、水晶振動子であって、発振回路111と組み合わされて固有の周波数信号を生成する。
表示駆動回路142は、CPU120からの制御信号に基づいて、表示部151を駆動するための駆動信号を表示部151に出力し、表示部151に時刻や各種機能の表示を行わせる。なお、表示駆動回路142は、CPU120から表示データを受信して、該表示データに基づいて表示部151に表示されている内容を更新するが、この表示内容の更新には一定の時間がかかる。表示駆動回路142は現在表示内容を更新(表示更新)中か否かを示す信号をCPU120に出力可能となっており、CPU120は、この信号を参照することによって、表示更新が終了したか否かを判定することができる。なお、本実施形態において、表示駆動回路142は、表示部151を駆動するにあたり、電源部160から供給される主電源だけでなく、電圧変換回路180から供給される主電源とは異なる電圧の電源も必要とする。従って、表示駆動回路142は、電源部160の電圧とは異なる電圧を必要とする回路なので、異電圧回路とも呼ぶこととする。
クロック生成回路143は、CPU120から指示された周波数のクロックを生成して、チャージポンプ181に供給する。該周波数は、表示部151に供給する電力を電圧変換回路180から出力するのに必要な周波数である。
表示部151は、時刻や各種機能に係るデータを表示する。本実施形態において、表示部151は、格子状に配置された複数の画素のそれぞれが、その画素の表示データを記憶するメモリ素子を含むメモリインピクセル(MIP:Memory In Pixel)液晶である。表示部151に画像を表示する際、表示駆動回路142は表示対象の画素にデータ信号を出力する。そして、そのデータ信号は、表示対象の画素に含まれるメモリ素子に記録される。そして、メモリ素子に記録されたデータに応じた電圧が画素電極と共通電極との間に印加されることにより、画像の表示が行われる。
より詳細には、図2に示すように、表示部151に含まれる複数の画素1510は、メモリ素子1511と、表示電圧供給回路1512と、表示素子1513とから構成される。そして、表示素子1513は、画素電極1514と、共通電極1515と、液晶1516とから構成される。また、表示駆動回路142は、データドライバ1421、ゲートドライバ1422、VCOM(共通電極電圧)ドライバ1423を含む。データドライバ1421は、CPU120からの制御信号及びクロック信号に基づいて、データバスライン1424にデータ信号を出力する。ゲートドライバ1422は、CPU120からの制御信号及びクロック信号に基づいて、ゲートバスライン1425に走査信号を出力する。VCOMドライバ1423は、CPU120からの制御信号に基づいて、表示素子1513の共通電極1515に印加させる電圧(共通電極電圧:VCOM)を出力する。
画素1510に表示データを表示する際、ゲートドライバ1422が表示対象の画素1510を含むゲートバスライン1425に走査信号を出力し、データドライバ1421がデータ信号を出力すると、そのデータ信号は、画素1510に含まれるメモリ素子1511に記録される。そして、メモリ素子1511に記録されたデータに応じた電圧が、表示電圧供給回路1512により画素電極1514に供給される。そして、VCOMドライバ1423により供給される共通電極1515と、画素電極1514との間の電圧により、画像の表示が行われる。
表示されている画像の更新(書き換え)が必要な場合には、データドライバ1421及びゲートドライバ1422がアクティブとなってメモリ素子1511に記録されたデータを更新することにより、表示内容が書き換えられる。しかし、表示内容の更新(書き換え)が不要の場合(現在の表示内容を維持する場合)、画素電極1514の電位は表示電圧供給回路1512により保たれ、表示部151はメモリ素子1511に記録されたデータの表示をそのまま維持できるため、データドライバ1421及びゲートドライバ1422は停止する。メモリインピクセル液晶は、このような動作により、一般的なTFT(Thin Film Transistor)液晶と比較して、低消費電力化を図ることができる。なお、本実施形態において、表示部151は、電源部160の電圧とは異なる、チャージポンプ181の出力電圧を必要とする回路なので、表示駆動回路142と同様に、異電圧回路とも呼ぶこととする。
操作受付部152は、ユーザからの入力操作を受け付けて、当該入力操作に応じた電気信号を入力信号としてCPU120に出力する。操作受付部152は、例えば、押しボタンスイッチやりゅうずを含む。或いは、操作受付部152として、タッチセンサが、表示部151の表示画面に重ねて設けられ、表示画面とともにタッチパネルを構成してもよい。この場合、タッチセンサは、当該タッチセンサへのユーザの接触動作に係る接触位置や接触態様を検出し、検出された接触位置や接触態様に応じた操作信号をCPU120に出力する。
電源部160は、例えば、バッテリを備える。電源部160のバッテリとしては、本実施形態では、ボタン型電池等の一次電池が用いられている。或いは、電源部160のバッテリとして、ソーラパネルと二次電池が用いられてもよい。
通信部170は、高周波(RF:Radio Frequency)回路やベースバンド(BB:Baseband)回路等を備える。通信部170は、例えばBluetooth(登録商標) Low Energy(BLE)に基づく無線信号の送信及び受信を行う。通信部170は、受信した無線信号を、復調、復号等してCPU120へ送る。また、通信部170は、CPU120から送られた信号を、符号化、変調等して、外部へ送信する。
電圧変換回路180は、電源部160から供給される電源電圧を昇圧または降圧することにより、表示部151及び表示駆動回路142の動作に必要な所定の動作電圧を生成し、表示部151及び表示駆動回路142に供給する。なお、本実施形態では、電圧変換回路180は、チャージポンプ181と定電圧回路182とで構成される。
チャージポンプ181は、スイッチと容量(コンデンサ)で構成され、スイッチングによって入力電圧とは異なる出力電圧を生成する。チャージポンプ181は、インダクタを必要としないので、小型で低ノイズの電源を構成できる。チャージポンプ181は、スイッチを切り換える周波数(スイッチング周波数)を高くすると、出力可能な電力を大きくすることができるが、消費電力も大きくなる。また、チャージポンプ181は想定以上の負荷がかかると(出力不可能な電力の出力が要求されると)出力電圧が低下してしまう。本実施形態では、このスイッチング周波数を、表示部151に表示されている画像の更新が不要な場合の電力(比較的小さい電力)を出力するためのスイッチング周波数(基準周波数)と、画像の更新が必要な場合の電力(比較的大きい電力)を出力するためのスイッチング周波数(第1の周波数)と、で切り換えることによって、全体の消費電力を削減しつつ、必要な出力電圧を維持することができるようにしている。
定電圧回路182は、チャージポンプ181に入力される電圧又はチャージポンプ181から出力する電圧を一定の電圧に保つための回路である。ただし、主電源である電源部160の電圧の変動を考慮しなくても良い場合(電圧の変動がほとんどない場合等)は、電圧変換回路180は、定電圧回路182を備えなくても良い。この場合、電源部160の出力電圧がチャージポンプ181の入力電圧となり、チャージポンプ181の出力電圧が電圧変換回路180の出力電圧となる。
実際には、電源部160の出力電圧はバッテリの消耗等によりかなり変動するので、電圧変換回路180は定電圧回路182を備える方が望ましい。例えば、電源部160が出力する電圧がバッテリの消耗等によって変動してもチャージポンプ181に入力する電圧を一定にしたい場合には、電源部160が出力する電圧を定電圧回路182により所定の定電圧にしてからチャージポンプ181に入力する。また、チャージポンプ181の出力電圧が変動しても電圧変換回路180からの出力電圧を一定にしたい場合には、チャージポンプ181が出力する電圧を定電圧回路182により表示部151用の所定の定電圧にしてから表示部151及び表示駆動回路142に供給する。
次に、第1実施形態に係る電子時計1のCPU120の機能構成について説明する。図1に示すように、CPU120は、表示制御部121及び周波数制御部122として機能する。これら表示制御部121及び周波数制御部122の機能は、単一のCPU120により実現されても良いし、各々別個のCPUにより実現されてもよい。また、それらの機能は、マイクロコントローラ110以外の構成部が備えるCPU等、CPU120以外のプロセッサにより実現されても良い。
表示制御部121としてのCPU120は、所定の更新タイミングで表示部151の表示更新を表示駆動回路142に指示する。ここで、表示部151の表示更新とは、表示部151の画素1510に含まれるメモリ素子1511に格納されているデータの更新を意味する。所定の更新タイミングは例えば1秒である。更新タイミングが1秒のとき、CPU120は1秒ごとに表示部151の表示更新を表示駆動回路142に指示する。
周波数制御部122としてのCPU120は、クロック生成回路143が表示部151の動作に応じた適切な周波数のクロックをチャージポンプ181に供給するように、クロック生成回路143に指示を出す。例えば、CPU120は、表示部151の表示更新を指示するタイミングで、生成するクロックの周波数を高くすることをクロック生成回路143に指示することにより、クロック生成回路143がチャージポンプ181に供給しているクロックの周波数が高くなる。そして、CPU120は、表示部151の表示更新後に、生成するクロックの周波数を低くすることをクロック生成回路143に指示することにより、クロック生成回路143がチャージポンプ181に供給しているクロックの周波数が低くなる。なお、クロック生成回路143を設けずに、マイクロコントローラ110が直接チャージポンプ181に適切な周波数のクロックを供給するようにしても良い。
次に、本実施形態における表示部151の表示更新のタイミングとクロック生成回路143によって生成されるクロックの周波数との関係を図3を参照して説明する。なお、以下では、表示更新が1秒ごとに実行される例について説明する。図3において、最上段は表示部151の表示状態を2本の線で示している。表示状態のうち、2本の線が交差している部分は、表示更新中であることを表し、その他の部分(2本の線が平行に延びている部分)は表示内容を維持していることを表す。図3の2段目は、表示更新のタイミングを示す。このタイミングに合わせて、CPU120は、生成するクロックの周波数を高くするか低くするかをクロック生成回路143に指示する。
図3の3段目は、クロック生成回路143によって生成されるクロックの周波数を示す。表示更新中はCPU120からの指示により、クロック生成回路143で生成されるクロックの周波数は、基準周波数よりも高い第1の周波数に設定される。また、表示更新が終わるとCPU120からの指示により、クロック生成回路143で生成されるクロックの周波数は、基準周波数に戻される。ここで、基準周波数とは、チャージポンプ181の消費電力をできるだけ抑えるための周波数であり、例えば、表示部151が表示を維持するのに必要な電力をチャージポンプ181が出力するために必要な最低の周波数である。また、第1の周波数とは、表示部151が表示を更新するのに必要な電力をチャージポンプ181が出力するために必要な周波数である。
図3の4段目は、電源部160の消費電力を表す。電源部160の消費電力は、表示更新中、すなわち、クロック生成回路143がチャージポンプ181に供給するクロックの周波数が高いときに大きくなり、表示維持中、すなわち、クロック生成回路143がチャージポンプ181に供給するクロックの周波数が低いときに小さくなる。
次に、CPU120が、表示部151の表示内容を更新する(書き換える)処理である表示制御処理について、図4を参照して説明する。表示制御処理は、電子時計100が起動すると、1つのスレッドとして起動し、他のスレッドと並行して処理が開始される。CPU120は、まず初期化処理として、表示更新変数に0を代入する(ステップS101)。
次に、CPU120は、表示を更新(書き換え)するタイミング(更新タイミング)が発生したか否かを判定する(ステップS102)。更新タイミングは、決まった時間に発生するものとユーザの動作によって発生するものとがある。決まった時間に発生する更新タイミングは、時刻や日付の表示を更新するタイミングである。例えば、電子時計100が1秒単位で時刻を表示する時計であるなら1秒に1回の更新タイミングが発生し、1分単位で時刻を表示する時計であるなら1分に1回の更新タイミングが発生する。また、例えば電子時計100に時刻表示機能がなく、日付のみを表示するもの(電子カレンダー)であるなら、1日に1回の更新タイミングが発生する。ユーザの動作によって発生する更新タイミングは、ユーザが操作受付部152を操作(ボタンを押す、りゅうずを回す等)したタイミングである。これらのユーザの操作によって、電子時計100は表示部151を更新する必要が生じるので、この場合にも、更新タイミングが発生する。
更新タイミングが発生していなければ(ステップS102;No)、CPU120は、ステップS102に戻り、更新タイミングが発生するまで待機する。更新タイミングが発生したなら(ステップS102;Yes)、CPU120は、表示更新変数に1をセットする(ステップS103)。そして、CPU120は、表示駆動回路142に表示データを送信することにより、表示部151に表示されている内容を更新する(ステップS104)。ステップS104は、表示制御ステップとも呼ばれる。
そして、CPU120は、表示駆動回路142からの信号により、表示更新中か否かを判定する(ステップS105)。表示更新中であれば(ステップS105;Yes)、CPU120は、ステップS105に戻り、表示更新が終了するまで待機する。表示更新中でなければ(ステップS105;No)、表示更新が終了したということなので、CPU120は、表示更新変数に0を設定し(ステップS106)、ステップS102に戻る。
以上の表示制御処理により、更新タイミングが発生すると表示部151の表示内容が更新される。また表示更新中は表示更新変数に1が設定されているので、他のスレッドでも、表示更新変数を参照することによって、現在表示更新中か否かを判定することができる。
次に、電子時計100のチャージポンプ181に供給するクロックの周波数を切り換える周波数制御処理について、図5を参照して説明する。図5は、電子時計100のCPU120が実行する周波数制御処理の制御手順を示すフローチャートである。周波数制御処理は、電子時計100が起動すると、1つのスレッドとして起動し、他のスレッドと並行して処理が開始される。
周波数制御処理が開始されると、CPU120は、クロック生成回路143が生成するクロックの周波数を基準周波数に設定する(ステップS201)。
次に、CPU120は、表示更新変数が1であるか否かを判定する(ステップS202)。表示更新変数は、上述した表示制御処理により更新される変数で、表示部151の表示内容が更新されている間は1が設定され、表示更新が終了すると0が設定される。表示更新変数が1でなければ(ステップS202;No)、ステップS202に戻って、表示更新変数が1になるまで待機する。表示更新変数が1なら(ステップS202;Yes)、CPU120は、クロック生成回路143が生成するクロックの周波数を基準周波数よりも高い第1の周波数に設定する(ステップS203)。ステップS203は、周波数制御ステップとも呼ばれる。
次に、CPU120は、表示更新変数が0であるか否かを判定する(ステップS204)。表示更新変数が0でないなら(ステップS204;No)、ステップS204に戻って、表示更新変数が0になるまで待機する。表示更新変数が0なら(ステップS204;Yes)、ステップS201に戻り、CPU120は、クロック生成回路143が生成するクロックの周波数を基準周波数に戻す。
以上の周波数制御処理により、表示部151の表示内容が更新される間だけ、クロック生成回路143が生成するクロックの周波数が基準周波数よりも高い第1の周波数に設定され、表示部151の表示内容が更新されずに維持されている間はクロック生成回路143が生成するクロックの周波数は基準周波数に設定される。基準周波数は、チャージポンプ181が必要な出力電圧を維持しつつ消費電力をできるだけ抑えるための周波数なので、周波数制御処理によって、消費電力を削減しつつ必要な出力電圧を維持することができる。
また、上述の周波数制御処理は、表示更新変数によって、上述の表示制御処理と同期して行われるため、表示部151の消費電力が大きくなるタイミング(例えば、秒の表示が切り替わる1秒毎に1回のタイミング、ユーザの操作に基づき表示の更新が必要になったタイミング等)で確実に周波数を高く設定することができる。このため、常に必要な出力電力を確保することができ、消費電力を削減しつつ必要な出力電圧を維持することができる。なお、従来技術には、出力電圧を監視し、出力電圧が低下したのを検出したらチャージポンプに供給するクロックの周波数を高くする処理を行う装置が存在するが、この場合、出力電圧の監視のために余計な電力を消費してしまう。また、出力電圧低下を検出後に周波数を高くするため、応答遅延が生じてしまい、これにより、例えば急激に出力電圧が低下した場合には、必要な出力電力を維持できない(出力電圧が不安定になる)という問題も生じる。さらに、この従来技術では、出力電圧が低下している間はチャージポンプに供給するクロックの周波数を高くし続けるが、最高周波数を制限しないと、消費電力だけが無駄に高くなる(出力電力は高くならないのに、消費電力が急増する)、昇圧動作に飽和が発生する(必要な出力電圧を維持できないのに、消費電力は高くなる)等の問題が生じる。
(第2実施形態)
上述の第1実施形態では説明を省略したが、表示部151を駆動する表示駆動回路142は、VCOMドライバ1423により、共通電極電圧(VCOM)の極性を定期的に(例えば1秒に1回)反転させることにより、表示部151を交流で駆動している。表示部151が表示内容を書き換えずに維持している場合でも、共通電極電圧の極性が反転する際には表示部151の電力消費が大きくなるので、このタイミングにおいても、チャージポンプ181に供給するクロックの周波数を高くした方が望ましい。そこで、共通電極電圧の極性反転時にもクロック生成回路143が生成するクロックの周波数を高くする第2実施形態について説明する。
第2実施形態に係る電子時計101の構成は第1実施形態と同じであり、図1及び図2に示すとおりである。電子時計101の表示駆動回路142は、VCOMドライバ1423により、共通電極電圧の極性を定期的に(例えば1秒に1回)反転させているが、この極性反転には一定の時間がかかる。表示駆動回路142は現在極性反転中か否かを示す信号をCPU120に出力可能となっており、CPU120は、この信号を参照することによって、極性反転が終了したか否かを判定することができる。
電子時計101における表示部151の表示更新のタイミングと、共通電極電圧の極性反転のタイミングと、クロック生成回路143によって生成されるクロックの周波数との関係を図6を参照して説明する。なお、以下では、表示更新が1分ごとに実行され、共通電極電圧の極性反転が1秒ごとに行われる例について説明する。図6において、最上段は表示部151の表示状態を2本の線で示している。表示状態のうち、網掛け無しで2本の線が交差している部分は表示更新中であることを表し、網掛け有り2本の線が交差している部分は共通電極電圧の極性を反転中であることを表し、網掛けが有る部分は表示内容を維持していることを表す。
図6の2段目は、表示更新のタイミングを示す。このタイミングに合わせて、CPU120は、生成するクロックの周波数を高くするか低くするかをクロック生成回路143に指示する。図6の3段目は、共通電極電圧の極性を反転するタイミングを示す。CPU120は、このタイミングにおいても、生成するクロックの周波数を高くするか否かをクロック生成回路143に指示する。
図6の4段目は、クロック生成回路143によって生成されるクロックの周波数を示す。表示更新中はCPU120からの指示により、クロック生成回路143で生成されるクロックの周波数は基準周波数よりも高い第1の周波数に設定される。また、表示更新が終わるとCPU120からの指示により、クロック生成回路143で生成されるクロックの周波数は基準周波数に戻される。また、共通電極電圧の極性反転中はCPU120からの指示により、クロック生成回路143で生成されるクロックの周波数は第2の周波数に設定される。この第2の周波数は、共通電極電圧の極性が反転する際の表示部151の電力消費の増加を考慮した周波数であり、基準周波数よりも高く、かつ、第1の周波数以下の値である。例えば、表示部151が表示を維持しているときに表示駆動回路142が共通電極電圧の極性を反転させるのに必要な電力を、チャージポンプ181が出力するために必要な最低の周波数である。
図6の5段目は、電源部160の消費電力を表す。電源部160の消費電力は、表示更新中、すなわち、クロック生成回路143がチャージポンプ181に供給するクロックの周波数が高いときに大きくなり、表示維持中、すなわち、クロック生成回路143がチャージポンプ181に供給するクロックの周波数が低いときに小さくなる。そして、共通電極電圧の極性反転中、すなわち、クロック生成回路143がチャージポンプ181に供給するクロックの周波数が基準周波数よりも高く、かつ、第1の周波数以下のときには、表示維持時の消費電力よりも高く、かつ、表示更新時の消費電力以下の消費電力になる。
次に、電子時計101のCPU120が、表示部151の表示内容を更新する(書き換える)処理である表示制御処理について、図7を参照して説明する。第2実施形態に係る表示制御処理は、電子時計101が起動すると、1つのスレッドとして起動し、他のスレッドと並行して処理が開始される。図7の一部は第1実施形態に係る表示制御処理(図4)と同じなので、同じ部分は同じ符号で示し、以下では第1実施形態に係る表示制御処理(図4)と異なる部分について説明する。
ステップS111では、CPU120は、更新タイミングが発生したか否かを判定する。更新タイミングが発生したなら(ステップS111;Yes)、ステップS103に進み、それ以降の処理は、第1実施形態に係る表示制御処理(図4)と同じなので、説明を省略する。更新タイミングが発生していなければ(ステップS111;No)、CPU120は、共通電極電圧の極性を反転するタイミング(極性反転タイミング)か否かを判定する(ステップS112)。
極性反転タイミングは、表示部151の仕様等により予め設定されるものであり、例えば1秒に1回である。ただし、極性反転と表示更新が時間的に重なると、表示の更新を正しく行えない場合があるため、図6で示されるように、極性反転と表示更新とは時間的に重ならないタイミングに設定される。
極性反転タイミングでなければ(ステップS112;No)、CPU120は、ステップS111に戻り、更新タイミングが発生するか又は極性反転タイミングになるまで待機する。極性反転タイミングなら(ステップS112;Yes)、CPU120は、表示更新変数に2をセットする(ステップS113)。そして、CPU120が、表示駆動回路142に共通電極電圧の極性の反転を指示することにより、共通電極電圧(VCOM)の極性を反転させる(ステップS114)。
そして、CPU120は、表示駆動回路142からの信号により、極性反転中か否かを判定する(ステップS115)。極性反転中であれば(ステップS115;Yes)、CPU120は、ステップS115に戻り、極性反転が終了するまで待機する。極性反転中でなければ(ステップS115;No)、極性反転が終了したということなので、CPU120は、表示更新変数に0を設定し(ステップS106)、ステップS111に戻る。なお、ステップS105での表示更新中か否かの判定においても、表示更新中でなければ(ステップS105;No)、表示更新が終了したということなので、CPU120は、表示更新変数に0を設定し(ステップS106)、ステップS111に戻る。
以上の表示制御処理により、更新タイミングが発生すると表示部151の表示内容が更新され、極性反転タイミングで共通電極電圧の極性が反転される。また表示更新中は表示更新変数に1が設定され、極性反転中は表示更新変数に2が設定されているので、他のスレッドでも、表示更新変数を参照することによって、現在表示更新中か否か及び極性反転中か否かを判定することができる。
次に、電子時計101のチャージポンプ181に供給するクロックの周波数を切り換える周波数制御処理について、図8を参照して説明する。図8は、電子時計101のCPU120が実行する周波数制御処理の制御手順を示すフローチャートである。第2実施形態に係る周波数制御処理は、電子時計101が起動すると、1つのスレッドとして起動し、他のスレッドと並行して処理が開始される。図8の一部は第1実施形態に係る周波数制御処理(図5)と同じなので、同じ部分は同じ符号で示し、以下では第1実施形態に係る周波数制御処理(図5)と異なる部分について説明する。
ステップS211では、CPU120は、表示更新変数が1であるか否かを判定する。表示更新変数は、上述した第2実施形態の表示制御処理により更新される変数で、表示部151の表示内容の更新中は1が設定され、共通電極電圧の極性の反転中は2が設定され、表示更新も極性反転も行われていなければ0が設定されている。
表示更新変数が1なら(ステップS211;Yes)、ステップS203に進み、それ以降の処理は、第1実施形態に係る周波数制御処理(図5)と同じなので、説明を省略する。表示更新変数が1でなければ(ステップS211;No)、CPU120は、表示更新変数が2であるか否かを判定する(ステップS212)。
表示更新変数が2でなければ(ステップS212;No)、CPU120は、ステップS211に戻り、表示更新変数が1になるか又は2になるまで待機する。表示更新変数が2なら(ステップS212;Yes)、CPU120は、クロック生成回路143が生成するクロックの周波数を基準周波数よりも高く、かつ、第1の周波数以下の、第2の周波数に設定する(ステップS213)。第2の周波数とは、共通電極電圧の電極を反転するのに必要な電力をチャージポンプ181が出力するために必要な周波数である。
そして、CPU120は、ステップS204に進む。ステップS204以降の処理は、第1実施形態に係る周波数制御処理(図5)と同じなので、説明を省略する。
以上の周波数制御処理により、表示部151の表示内容の更新中はクロック生成回路143が生成するクロックの周波数が基準周波数よりも高い第1の周波数に設定される。そして、共通電極電圧の反転中はクロック生成回路143が生成するクロックの周波数が基準周波数よりも高く、かつ、第1の周波数以下の、第2の周波数に設定される。さらに、表示部151の表示内容が更新されずに維持されている間のうち、共通電極電圧の反転中でない間は、クロック生成回路143が生成するクロックの周波数は基準周波数に設定される。基準周波数は、チャージポンプ181の消費電力をできるだけ抑えるための周波数であり、例えば、表示部151の表示内容の維持に必要な最小の電圧を設定することができる。また、共通電極電圧の反転中に表示部151の消費電力が増加する場合にも、基準周波数よりも高い第2の周波数をチャージポンプ181に供給することにより、チャージポンプ181は共通電極電圧の極性反転に必要な電力を表示部151に供給できる。
第1実施形態では、共通電極電圧の反転を考慮していないので、極性反転中に必要な消費電力をチャージポンプ181が供給可能な周波数を基準周波数に設定する必要がある。これに対し、第2の実施形態では、表示更新中でも極性反転中でもない間の消費電力をチャージポンプ181が供給可能な周波数を基準周波数に設定することができるので、第1の実施形態よりもさらに消費電力を削減することができる。
(変形例)
第2実施形態において、共通電極電圧の極性反転直後に表示更新が行われることが分かっている場合、図9に示すように、表示更新直前の極性反転時に、クロック生成回路143に生成されるクロックの周波数を第2の周波数ではなく、第1の周波数に設定しても良い。
このような処理を行わせるためには、第2実施形態に係る表示制御処理(図7)のステップS111での更新タイミング発生の判定において、極性反転直後に更新タイミングが発生することがわかっている場合にも更新タイミングが発生したとみなすようにすればよい。そして、極性反転直後に更新タイミングが発生することがわかっている場合には、同じく図7のステップS105において、極性反転中も表示更新中とみなすようにすればよい。
このようにすると、極性反転と表示更新が連続して行われる際に、クロック生成回路143に生成されるクロックの周波数を第2の周波数と第1の周波数とに頻繁に変更する必要がなくなり、CPU120がクロック生成回路143に周波数設定の指示を出す負荷を減らすことができる。
(第3実施形態)
上述の各実施形態では、電源部160が供給する電圧とは異なる電圧を必要とする回路は、表示部151と表示駆動回路142のみであった。しかし、これに限定する必要はなく、例えば、通信部170の備える無線通信回路が、電源部160が供給する電圧とは異なる電圧を必要とする異電圧回路であっても良い。また、図示しないが、電子時計が、針を高速で動かすための高速運針回路を備え、この高速運針用回路が、電源部160が供給する電圧とは異なる電圧を必要とする異電圧回路であっても良い。また、電子時計がGPS(Global Positioning System)等の位置取得回路を備え、この位置取得回路が、電源部160が供給する電圧とは異なる電圧を必要とする異電圧回路であっても良い。このように、異電圧回路を複数備える第3実施形態について説明する。
第3実施形態に係る電子時計102は、図10に示すように、第1実施形態に係る電子時計100の構成に加えて、異電圧回路である位置取得回路191と高速運針回路192を備える。そして、CPU120は、表示制御部121の代わりに異電圧回路制御部123として機能する。異電圧回路制御部123としてのCPU120は、所定のタイミングで異電圧回路に対して後述する高負荷処理を実行するように指示する。
位置取得回路191及び高速運針回路192は電源部160が供給する電圧よりも高い電圧で駆動されるため、電圧変換回路180からこの高い電圧が供給される。電圧変換回路180からの電圧の供給は図示しないが、通信部170にも高い電圧が供給されても良い。また、図10では、これらの異電圧回路(表示駆動回路142、表示部151、通信部170、位置取得回路191及び高速運針回路192)がすべて同じ電圧(例えば3V)で動作することを想定しているが、これに限定されない。各異電圧回路で必要な電圧が2種類以上あるなら(例えば3Vと6V)、当該電子時計は、その種類数だけ、必要な電圧に対応する電圧変換回路180及びクロック生成回路143のペア(例えば3Vを生成する電圧変換回路180及びクロック生成回路143と、6Vを生成する電圧変換回路180及びクロック生成回路143)を備えるようにすれば良い。
図10で、位置取得回路191は、GPS衛星からの電波を受信する回路を備え、電子時計102の現在位置を取得することができる。位置取得回路191は、現在位置を取得しないときにはスタンバイ状態になっており、電力をほとんど消費しないが、現在位置を取得する際には比較的大きな電力を消費する。現在位置を取得する処理が、位置取得回路191にとっての高負荷処理である。
また、高速運針回路192は、電子時計102が備える秒針を高速に動かすモーターを備え、電子時計102の状態等を秒針で表す時に、秒針を高速に動かすことができる。高速運針回路192は、秒針を高速で動かす時には比較的大きな電力を消費するが、それ以外の時には電力をほとんど消費しない。秒針を高速で動かす処理(高速運針処理)が、高速運針回路192にとっての高負荷処理である。
次に、第3実施形態において、CPU120が異電圧回路を制御する異電圧回路制御処理及び周波数制御処理について、図11及び図12を参照して説明する。異電圧回路制御処理及び周波数制御処理は、電子時計102が起動すると、1つの異電圧に対応する電圧変換回路180及びクロック生成回路143のペア毎にそれぞれ1つのスレッドとして起動し、他のスレッドと並行して処理が開始される。例えば、異電圧として、3Vと6Vが存在する場合には、3Vの電圧変換回路180及びクロック生成回路143に対応する異電圧回路制御処理及び周波数制御処理と、6Vの電圧変換回路180及びクロック生成回路143に対応する異電圧回路制御処理及び周波数制御処理と、がそれぞれ別々のスレッドとして起動する。また、各スレッドで参照及び更新する負荷状態変数も、異電圧回路の電圧毎に異なる変数として扱われる。
では、異電圧回路制御処理について図11を参照して説明する。CPU120は、まず初期化処理として、負荷状態変数に0を代入する(ステップS301)。次に、CPU120は、異電圧回路を高負荷にするタイミングが発生したか否かを判定する(ステップS302)。異電圧回路を高負荷にするタイミングは、異電圧回路を高負荷状態にする(高負荷処理を行わせる)タイミングであり、異電圧回路毎に異なる。例えば、表示部151及び表示駆動回路142であれば、表示を更新(書き換え)するタイミングであり、通信部170であれば、他の装置と通信するタイミングであり、位置取得回路191であれば、現在位置を取得するタイミングであり、高速運針回路192であれば、秒針を高速で動かすタイミングである。
高負荷タイミングが発生していなければ(ステップS302;No)、CPU120は、ステップS302に戻り、高負荷タイミングが発生するまで待機する。高負荷タイミングが発生したなら(ステップS302;Yes)、CPU120は、負荷状態変数に1をセットする(ステップS303)。そして、CPU120は、この異電圧回路制御処理と対応している異電圧回路を制御して高負荷処理を実行させる(ステップS304)。ここで、高負荷処理とは、異電圧回路が比較的高い電力を消費する処理であり、異電圧回路によって異なる。例えば、表示部151及び表示駆動回路142であれば、表示を更新(書き換え)する処理であり、通信部170であれば、他の装置と通信する処理であり、位置取得回路191であれば、現在位置を取得する処理であり、高速運針回路192であれば、秒針を高速で動かす処理である。ステップS304は、異電圧回路制御ステップとも呼ばれる。
そして、CPU120は、異電圧回路からの信号により、高負荷処理を実行中か否かを判定する(ステップS305)。高負荷処理を実行中であれば(ステップS305;Yes)、CPU120は、ステップS305に戻り、高負荷処理が終了するまで待機する。高負荷処理を実行中でなければ(ステップS305;No)、高負荷処理が終了したということなので、CPU120は、負荷状態変数に0を設定し(ステップS306)、ステップS302に戻る。
以上の異電圧回路制御処理により、高負荷タイミングが発生すると高負荷処理が実行される。また高負荷処理の実行中は負荷状態変数に1が設定されているので、後述する周波数制御スレッドでも、負荷状態変数を参照することによって、現在高負荷処理を実行中か否かを判定することができる。
次に、電子時計102のチャージポンプ181に供給するクロックの周波数を切り換える周波数制御処理について、図12を参照して説明する。
周波数制御処理が開始されると、CPU120は、クロック生成回路143が生成するクロックの周波数を基準周波数に設定する(ステップS401)。この基準周波数は、異電圧回路毎に異なり、例えば、異電圧回路が高負荷処理を実行していない時の電力をチャージポンプ181が出力するために必要な最低の周波数である。
次に、CPU120は、負荷状態変数が1であるか否かを判定する(ステップS402)。負荷状態変数は、上述した異電圧回路制御処理により更新される変数で、異電圧回路が高負荷処理が実行されている間は1が設定され、高負荷処理が終了すると0が設定される。負荷状態変数が1でなければ(ステップS402;No)、ステップS402に戻って、負荷状態変数が1になるまで待機する。負荷状態変数が1なら(ステップS402;Yes)、CPU120は、クロック生成回路143が生成するクロックの周波数を基準周波数よりも高い第1の周波数に設定する(ステップS403)。この第1の周波数は、異電圧回路毎に異なり、異電圧回路が高負荷処理を実行するのに必要な電力をチャージポンプ181が出力するために必要な周波数である。ステップS403は、周波数制御ステップとも呼ばれる。
次に、CPU120は、負荷状態変数が0であるか否かを判定する(ステップS404)。負荷状態変数が0でないなら(ステップS404;No)、ステップS404に戻って、負荷状態変数が0になるまで待機する。負荷状態変数が0なら(ステップS404;Yes)、ステップS401に戻る。
以上の周波数制御処理により、異電圧回路が高負荷処理を実行している間だけ、クロック生成回路143が生成するクロックの周波数が基準周波数よりも高い第1の周波数に設定され、異電圧回路が高負荷処理を実行していない間はクロック生成回路143が生成するクロックの周波数は基準周波数に設定される。基準周波数は、チャージポンプ181が必要な出力電圧を維持しつつ消費電力をできるだけ抑えるための周波数なので、周波数制御処理によって、消費電力を削減しつつ必要な出力電圧を維持することができる。
また、上述の各実施形態に係る表示部151は、メモリインピクセル液晶であり、表示部151による電力消費は主に表示の更新時である。そのため、上述の各実施形態に係る電子時計は、表示部151の表示の維持の間の消費電力が非常に小さいというメモリインピクセル液晶の特徴に適した電源制御を行うことが可能であり、それにより消費電力の削減を図ることができる。
なお、本発明は、上述の実施形態に限られるものではなく、様々な変更が可能である。
例えば、上述の第1実施形態では、表示部151の表示更新が行われる周期として1秒を例に挙げて説明した。しかし、この周期は、表示部151に表示する内容に応じて、適宜変更可能である。例えば、表示部151に計時回路113により計時された現在時刻の秒を表示する場合、表示更新の周期を1秒とすることが好ましい。一方、表示部151に現在時刻の時分や年月日、曜日を表示する場合や、カレンダーを表示する場合には、表示更新の周期を1秒より長くしてもよい。このように表示更新の周期を長くする場合、クロック生成回路143が生成するクロックの周波数を基準周波数にしている時間を長くすることができるので、さらに消費電力を低減することができる。
また、例えば、上述の第3実施形態に第2実施形態とを組み合わせることにより、複数の異電圧回路にそれぞれ複数の動作電力が存在する場合の処理を構成することもできる。第2実施形態では、表示部151に、表示更新、極性反転、表示維持という3段階の動作電力が存在したので、表示更新変数の値を1,2,0の3種類に設定した。同様の考え方により、例えば、異電圧回路としての通信部170に、データ送信、データ受信、スタンバイという3段階の動作電力が存在する場合、負荷状態変数の値を1,2,0の3種類に設定することができる。
そして、CPU120は、負荷状態変数が1のときはデータ送信に必要な電力を供給するための第1の周波数、負荷状態変数が2のときはデータ受信に必要な電力を供給するための第2の周波数、のクロックをクロック生成回路143に生成させれば良い。このようにすることによって、複数の異電圧回路にそれぞれ複数の動作電力が存在する場合にも、できるだけ消費電力を削減しつつ、各異電力回路に必要な出力電圧を維持することができる。
また、上述の各実施形態では、CPU120がマルチスレッド機能に対応し、表示制御処理と周波数制御処理を並行して実行するものとして説明したが、これに限られない。CPU120がマルチスレッド機能に対応していない場合は、表示制御処理において、変数(表示更新変数、負荷状態変数等)に値を代入する代わりに、その値に対応する周波数制御処理を実行することによって、同様の制御を行うことができる。例えば、第1実施形態をシングルスレッドのCPUで実行する場合には、表示制御処理(図4)のステップS101及びステップS106で周波数制御処理(図5)のステップS201の処理を行い、表示制御処理(図4)のステップS103で周波数制御処理(図5)のステップS203の処理を行えば良い。他の実施形態についても同様である。
また、以上の説明では、本発明の電源制御処理に係る制御プログラムを記憶するコンピュータ読み取り可能な媒体として、フラッシュメモリなどの不揮発性メモリからなるROM131を例に挙げて説明した。しかし、コンピュータ読み取り可能な媒体は、これらに限定されず、HDD(Hard Disk Drive)、CD−ROM(Compact Disc Read Only Memory)やDVD(Digital Versatile Disc)などの可搬型記録媒体を適用してもよい。また、本発明に係るプログラムのデータを、通信回線を介して提供する媒体として、キャリアウェーブ(搬送波)も本発明に適用される。
その他、上記実施の形態で示した構成、制御手順や表示例などの具体的な細部は、本発明の趣旨を逸脱しない範囲において適宜変更可能である。
本発明のいくつかの実施形態を説明したが、本発明の範囲は、上述の実施の形態に限定するものではなく、特許請求の範囲に記載された発明の範囲とその均等の範囲を含む。以下に、この出願の願書に最初に添付した特許請求の範囲に記載した発明を付記する。付記の番号は、この出願の願書に最初に添付した特許請求の範囲の通りである。
(付記1)
電源部が出力する電圧とは異なる電圧を必要とする異電圧回路へ電力を供給する電圧変換回路と、
前記電圧変換回路に供給するクロックを生成するクロック生成回路と、
制御部と、を備え、
前記制御部は、
前記異電圧回路の動作を制御し、
前記異電圧回路を高負荷状態にする制御を開始する際に前記クロック生成回路が生成するクロックの周波数を基準周波数よりも高い第1の周波数に設定し、前記異電圧回路を高負荷状態にする制御を終了する際に前記クロックの周波数を前記基準周波数に戻す、
電源制御装置。
(付記2)
前記異電圧回路には、位置取得回路、無線通信回路又は高速運針回路が含まれ、
前記異電圧回路を高負荷状態にする制御には、前記異電圧回路に含まれる回路に応じて、前記位置取得回路で位置を取得させる制御、前記無線通信回路で無線通信する制御又は前記高速運針回路で高速運針処理を行わせる制御が含まれる、
付記1に記載の電源制御装置。
(付記3)
前記異電圧回路には、表示部及び前記表示部を駆動する表示駆動回路が含まれ、
前記制御部は、
前記表示部の表示更新を所定の更新タイミングで前記表示駆動回路に指示し、
前記表示部の表示更新の際に前記クロックの周波数を前記基準周波数よりも高い第1の周波数に設定し、前記表示部の表示更新後に前記クロックの周波数を前記基準周波数に戻す、
付記1又は2に記載の電源制御装置。
(付記4)
前記更新タイミングには、1秒毎に1回のタイミングが含まれる、
付記3に記載の電源制御装置。
(付記5)
前記更新タイミングには、ユーザの操作に基づき表示の更新が必要になったタイミングが含まれる、
付記3又は4に記載の電源制御装置。
(付記6)
前記表示部は、所定の反転タイミングで極性が反転される交流で駆動され、
前記制御部は、
前記反転タイミングの際に前記クロックの周波数を前記第1の周波数以下でかつ前記基準周波数よりも高い第2の周波数に設定し、前記交流の反転後に前記クロックの周波数を前記基準周波数に戻す、
付記3から5のいずれか1つに記載の電源制御装置。
(付記7)
前記制御部は、
前記反転タイミングが前記更新タイミングの直前のタイミングの場合に、
前記反転タイミングの際に前記クロックの周波数を前記第1の周波数に設定し、前記交流の反転直後の前記表示部の表示更新後に前記クロックの周波数を前記基準周波数に戻す、
付記6に記載の電源制御装置。
(付記8)
前記表示部は、複数の画素及び前記画素のそれぞれに対応する複数のメモリ素子を備え、
前記メモリ素子は、対応する前記画素が表示する表示データを記憶する、
付記3から7のいずれか1つに記載の電源制御装置。
(付記9)
付記3から8のいずれか1つに記載の電源制御装置と、
現在時刻を計時する計時部と、
前記計時部により計時された現在時刻を表す画像を表示する前記表示部と、
を備える電子時計。
(付記10)
電源部が出力する電圧とは異なる電圧を必要とする異電圧回路へ電力を供給する電圧変換回路と、前記電圧変換回路に供給するクロックを生成するクロック生成回路と、を備える電源制御装置が実行する電源制御方法であって、
前記異電圧回路の動作を制御する異電圧回路制御ステップと、
前記異電圧回路を高負荷状態にする制御を開始する際に前記クロック生成回路が生成するクロックの周波数を基準周波数よりも高い第1の周波数に設定し、前記異電圧回路を高負荷状態にする制御を終了する際に前記クロックの周波数を前記基準周波数に戻す周波数制御ステップと、
を含む電源制御方法。
(付記11)
電源部が出力する電圧とは異なる電圧を必要とする異電圧回路へ電力を供給する電圧変換回路と、前記電圧変換回路に供給するクロックを生成するクロック生成回路と、を備える電源制御装置のコンピュータを
前記異電圧回路の動作を制御する異電圧回路制御部、及び、
前記異電圧回路を高負荷状態にする制御を開始する際に前記クロック生成回路が生成するクロックの周波数を基準周波数よりも高い第1の周波数に設定し、前記異電圧回路を高負荷状態にする制御を終了する際に前記クロックの周波数を前記基準周波数に戻す周波数制御部、
として機能させるためのプログラム。