(57)【特許請求の範囲】
【請求項１】
電池を電源とし電池残量を求めて前記電池を電源とする電池使用機器に送信する機能を備えた半導体集積回路装置であって、
第１のクロックと前記第１のクロックより周波数が大なる第２のクロックを発生するクロック発生手段と、
前記クロック発生手段の出力する第１のクロックと第２のクロックのいずれかを選択して出力する選択手段と、
前記選択手段の出力するクロックにより動作し前記電池残量を演算する演算手段と、
前記選択手段の出力するクロックにより動作し前記演算手段で演算した電池残量を前記電池使用機器に送信する通信手段と、
前記演算手段を動作させる第１モードと、前記演算手段を休止させる第２モードと、前記演算手段を休止させ前記選択手段の出力するクロックを用いて計時を行う計時手段のみを動作させる第３モードを設定する設定手段を
有し、
前記第１モードと前記第２モード、及び前記第１モードと前記第３モードの間は相互に遷移可能であり、
前記設定手段は、前記電池使用機器の接続状態と動作状態に応じて、前記電池使用機器が動作状態であれば前記第１モードを設定し、前記電池使用機器が動作状態でなければ前記第２モードを設定し、電池使用機器が接続されていなければ前記第３モードを設定し、
前記第１モードにおいて前記演算手段で前記第３モードでの前記電池残量の低下も含めて前記電池残量を演算することを特徴とする半導体集積回路装置。
【請求項２】
請求項１記載の半導体集積回路装置において、
前記クロック発生手段は、第１のクロックを発生する第１の発振器と、
前記第１のクロックに同期した第２のクロックを発生する第２の発振器を
有することを特徴とする半導体集積回路装置。
【請求項３】
請求項１記載の半導体集積回路装置において、
前記クロック発生手段は、前記第１のクロックを発生する第１の発振器と、
前記第１のクロックと非同期の第２のクロックを発生する第２の発振器を
有することを特徴とする半導体集積回路装置。
【請求項４】
請求項１乃至３のいずれか１項記載の半導体集積回路装置と前記電池を備えたことを特徴とする電池パック。
【請求項５】
請求項１記載の半導体集積回路装置において、
前記クロック発生手段は、第１のクロックを発生する第１の発振器と第２のクロックを発生する第２の発振器を有し、
前記第１の発振器は、前記第１モードで発生する第１のクロックの周波数に対し、前記第３モードで発生する第１のクロックの周波数を低くする
ことを特徴とする半導体集積回路装置。
【請求項６】
請求項５記載の半導体集積回路装置において、
前記計時手段は、前記第３モードで前記第１のクロックを用いて計時して所定時間が経過すると前記設定手段に前記第１モードへ遷移させる
ことを特徴とする半導体集積回路装置。
【請求項７】
請求項６記載の半導体集積回路装置において、
前記計時手段は、前記所定時間を変更自在とした
ことを特徴とする半導体集積回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体集積回路装置及び電池パックに係り、電池残量を求めて電池使用機器に送信する機能を備えた半導体集積回路装置及び電池パックに関する。
【背景技術】
【０００２】
近年、リチウムイオン電池は、携帯電話、デジタルカメラ等の携帯用の電池使用機器に搭載されている。リチウムイオン電池は、一般に、その電圧により電池残量を検出することが難しいとされている。このため、電池の充放電電流を積算することにより、電池残量を測定する方法がとられている。
【０００３】
従来から上記の方法を用いて電池残量を測定するためのフューエルゲージＩＣが開発されており、このフューエルゲージＩＣは、ＣＰＵ、メモリなどを内蔵し、検出した充放電電流をデジタルデータに変換して積算することで電池残量を算出し、算出した電池残量を通信回路により、携帯電話、デジタルカメラ等の電池使用機器に送信する。
【０００４】
フューエルゲージＩＣは電池残量を測定するためのものであるが、フューエルゲージＩＣ自身もリチウムイオン電池から動作電源を供給しているため、フューエルゲージＩＣの消費電流をできる限り低減する必要がある。
【０００５】
特許文献１には、データ処理手段の制御モード中に電池残量の測定モードを設け、測定モード中は電池からの供給電流を最小限に抑制する制御を行って省電力化を図ることが記載されている。
【特許文献１】特開２００５−１２９６０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来のフューエルゲージＩＣは、通常モードの他に、長期放置時にクロックの停止もしくは電源の遮断を行うシャットダウンモードしか有しておらず、電池使用機器の接続状態や電池使用機器の動作状態に応じて消費電流を低減することができず、また、電池使用機器が接続されていない長期放置状態における電池残量を求めることができない等の問題点があった。
【０００７】
本発明は上記の点に鑑みてなされたもので、消費電流の異なる各種の動作モードを設定することができ、電池使用機器の接続状態や動作状態に応じて消費電流を低減でき、かつ、電池残量を求めることができる半導体集積回路装置及び電池パックを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一実施態様による半導体集積回路装置は、電池を電源とし電池残量を求めて前記電池を電源とする電池使用機器に送信する機能を備えた半導体集積回路装置であって、
第１のクロックと前記第１のクロックより周波数が大なる第２のクロックを発生するクロック発生手段（２１，２３）と、
前記クロック発生手段の出力する第１のクロックと第２のクロックのいずれかを選択して出力する選択手段（２４）と、
前記選択手段の出力するクロックにより動作し前記電池残量を演算する演算手段（１２）と、
前記選択手段の出力するクロックにより動作し前記演算手段で演算した電池残量を前記電池使用機器に送信する通信手段（１６）と、
前記演算手段（１２）を動作させる第１モードと、前記演算手段（１２）を休止させる第２モードと、前記演算手段を休止させ前記選択手段の出力するクロックを用いて計時を行う計時手段のみを動作させる第３モードを設定する設定手段（１２，２２，２５，Ｓ１〜Ｓ６）を
有し、
前記第１モードと前記第２モード、及び前記第１モードと前記第３モードの間は相互に遷移可能であり、
前記設定手段は、前記電池使用機器の接続状態と動作状態に応じて、前記電池使用機器が動作状態であれば前記第１モードを設定し、前記電池使用機器が動作状態でなければ前記第２モードを設定し、電池使用機器が接続されていなければ前記第３モードを設定し、
前記第１モードにおいて前記演算手段で前記第３モードでの前記電池残量の低下も含めて前記電池残量を演算することにより、消費電流の異なる各種の動作モードを設定することができ、電池使用機器の接続状態や動作状態に応じて消費電流を低減でき、かつ、電池残量を求めることができる。
【００１０】
前記半導体集積回路装置において、
前記クロック発生手段（２１，２３）は、第１のクロックを発生する第１の発振器（２１）と、
前記第１のクロックに同期した第２のクロックを発生する第２の発振器（２３）を有する構成とすることができる。
【００１１】
前記半導体集積回路装置において、
前記クロック発生手段（２１，２３）は、前記第１のクロックを発生する第１の発振器（２１）と、
前記第１のクロックと非同期の第２のクロックを発生する第２の発振器（２３）を有する構成とすることができる。
【００１４】
本発明の一実施態様による電池パックは、請求項１乃至６のいずれか１項記載の半導体集積回路装置と前記電池を備えたことにより、消費電流の異なる各種の動作モードを設定することができ、電池使用機器の接続状態や動作状態に応じて消費電流を低減でき、かつ、電池残量を求めることができる。
【００１５】
前記半導体集積回路装置において、
前記クロック発生手段は、第１のクロックを発生する第１の発振器（４１）と第２のクロックを発生する第２の発振器（２３）を有し、
前記第１の発振器（４１）は、前記第１モードで発生する第１のクロックの周波数に対し、前記第３モードで発生する第１のクロックの周波数を低くする構成とすることができる。
【００１６】
前記半導体集積回路装置において、
前記計時手段（１５）は、前記第３モードで前記第１のクロックを用いて計時して所定時間が経過すると前記設定手段に前記第１モードへ遷移させる構成とすることができる。
【００１７】
前記半導体集積回路装置において、
前記計時手段（１５）は、前記所定時間を変更自在とした構成とすることができる。
【００１８】
なお、上記括弧内の参照符号は、理解を容易にするために付したものであり、一例にすぎず、図示の態様に限定されるものではない。
【発明の効果】
【００１９】
本発明によれば、選択された発振源に応じて信号処理手段の起動を最適化することができる。
【発明を実施するための最良の形態】
【００２０】
＜半導体集積回路装置の構成＞
図１は、本発明の半導体集積回路装置の一実施形態のブロック構成図を示す。同図中、フューエルゲージ機能モジュール１０内には、アナログ回路部１１、ＣＰＵ１２、ＲＯＭ１３、ＲＡＭ１４、タイマ部１５、通信部１６が設けられており、これらは図示しない内部バスにより相互に接続されている。
【００２１】
アナログ回路部１１には、電圧センサ、温度センサ、電流センサ、ＡＤ変換器等のアナログ回路が設けられ、各センサの検出値はＡＤ変換器でデジタル化され、内部バスを介してＣＰＵ１２に供給される。
【００２２】
ＣＰＵ１２は、ＲＯＭ１３に格納されている各種ソフトウェアを実行し、電流センサで検出したリチウムイオン電池の充放電電流を積算することによりリチウムイオン電池の電池残量を演算する。なお、電圧センサ及び温度センサの検出値は各種補正を行うために用いられ、ＲＡＭ１４はＣＰＵ１２が処理を実行する際の作業領域として使用され、ＲＯＭ１３には不揮発メモリとしてのＥＥＰＲＯＭも含まれている。
【００２３】
タイマ部１５は、割込み用タイマと計時用タイマを含む各種タイマを有しており、これらのタイマが発生した信号は例えば割込み信号、計測時間としてＣＰＵ１２に供給される。通信部１６は、携帯電話、デジタルカメラ等の電池使用機器から通信端子１７を介して供給される要求に応じて、ＣＰＵ１２が演算した電池残量を通信端子１７を介して電池使用機器に送信する。
【００２４】
発振回路２１は、動作モードレジスタ２２から動作モードに応じた発振又は停止を指示され、発振の指示により例えば周波数３８．４ｋＨｚの低速クロックを発生して発振回路２３及びクロックセレクタ２４に供給する。
【００２５】
発振回路２３は、例えばＰＬＬを内蔵しており、動作モードレジスタ２２から動作モードに応じた逓倍数を指示され、発振回路２１からのクロックに同期した例えば周波数５ＭＨｚ／２．５ＭＨｚ／１．２５ＭＨｚのいずれかの中高速クロックを発生してクロックセレクタ２４に供給する。
【００２６】
なお、発振回路２１の出力するクロックを発振回路２３に供給せず、発振回路２１，２３を非同期で動作させる構成としても良い。
【００２７】
クロックセレクタ２４は、動作モードレジスタ２２から動作モードに応じたクロック選択を指示され、低速クロックと複数の中高速クロックの内のいずれかを選択し、フューエルゲージ機能モジュール１０内のアナログ回路部１１、ＣＰＵ１２、ＲＯＭ１３、ＲＡＭ１４、タイマ部１５、通信部１６それぞれに供給する。
【００２８】
上記動作モードレジスタ２２はＣＰＵ１２から動作モードを設定されＣＰＵ１２が命令（スリープ命令）を実行することをトリガーとして動作モードを切り替える。また、ＣＰＵ１２は、モジュールストップレジスタ２５にアナログ回路部１１、タイマ部１５、通信部１６それぞれのクロック受付の許可又は禁止を設定し、モジュールストップレジスタ２５は設定されたクロック受付許可又は禁止を指示する信号をアナログ回路部１１、タイマ部１５、通信部１６それぞれに供給する。これにより、アナログ回路部１１、タイマ部１５、通信部１６はクロック受付許可を指示されたものだけがクロックセレクタ２４から供給されるクロックを受付ける。
【００２９】
＜状態遷移＞
図２は、図１に示す半導体集積回路装置の状態遷移図を示す。同図中、リセットにより装置はアクティブモード（高速）ＡＣＨとなる。この後、動作モードレジスタ２２の設定とスリープ命令の実行によりアクティブモード（高速）ＡＣＨからアクティブモード（中速）ＡＣＭに遷移し、動作モードレジスタ２２の設定とスリープ命令の実行により逆方向の遷移を行う。更に、動作モードレジスタ２２の設定とスリープ命令の実行によりアクティブモード（中速）ＡＣＭからサブアクティブモードＳＡＣに遷移し、また、動作モードレジスタ２２の設定とスリープ命令の実行により逆方向の遷移を行う。
【００３０】
アクティブモード（高速）ＡＣＨは、ＣＰＵ１２が周波数５ＭＨｚのクロックにより高速でプログラムを実行するモードであり、クロックセレクタ２４で選択された周波数５ＭＨｚのクロックがフューエルゲージ機能モジュール１０の各部に供給され、モジュールストップレジスタ２５の指示によりアナログ回路部１１、タイマ部１５、通信部１６がクロックを受付けて高速で動作する。
【００３１】
アクティブモード（中速）ＡＣＭは、ＣＰＵ１２が周波数２．５ＭＨｚ又は１．２５ＭＨｚのクロックにより中速でプログラムを実行するモードであり、クロックセレクタ２４で選択された周波数２．５ＭＨｚ又は１．２５ＭＨｚのクロックがフューエルゲージ機能モジュール１０の各部に供給され、モジュールストップレジスタ２５の指示によりアナログ回路部１１、タイマ部１５、通信部１６がクロックを受付けて中速で動作する。
【００３２】
サブアクティブモードＳＡＣは、ＣＰＵ１２が周波数３８．４ｋＨｚのクロックにより低速でプログラムを実行するモードであり、クロックセレクタ２４で選択された周波数３８．４ｋＨｚのクロックがフューエルゲージ機能モジュール１０の各部に供給され、モジュールストップレジスタ２５の指示によりアナログ回路部１１、タイマ部１５、通信部１６がクロックを受付けて低速で動作する。
【００３３】
また、アクティブモード（高速）ＡＣＨ，アクティブモード（中速）ＡＣＭ，サブアクティブモードＳＡＣそれぞれから動作モードレジスタ２２の設定とスリープ命令の実行により、スリープモード（高速）ＳＬＨ，スリープモード（中速）ＳＬＭ，サブスリープモードＳＳＬに遷移し、プログラム割込み又はタイマ割込みの発生により逆方向の遷移を行う。
【００３４】
スリープモード（高速）ＳＬＨは、ＣＰＵ１２が動作を停止し、モジュールストップレジスタ２５の指示によりアナログ回路部１１、タイマ部１５、通信部１６がクロックセレクタ２４で選択された周波数５ＭＨｚのクロックを受付けて動作するモードである。
【００３５】
スリープモード（中速）ＳＬＭは、ＣＰＵ１２が動作を停止し、モジュールストップレジスタ２５の指示によりアナログ回路部１１、タイマ部１５、通信部１６がクロックセレクタ２４で選択された周波数２．５ＭＨｚ又は１．２５ＭＨｚのクロックを受付けて動作するモードである。
【００３６】
サブスリープモードＳＳＬは、ＣＰＵ１２が動作を停止し、モジュールストップレジスタ２５の指示によりアナログ回路部１１、タイマ部１５、通信部１６がクロックセレクタ２４で選択された周波数３８．４ｋＨｚのクロックを受付けて動作するモードである。
【００３７】
また、アクティブモード（高速）ＡＣＨ，アクティブモード（中速）ＡＣＭ，サブアクティブモードＳＡＣから動作モードレジスタ２２の設定とスリープ命令の実行により、ウォッチモードＷＴＣ，ソフトウェアスタンバイモードＳＳＢそれぞれに遷移し、プログラム割込み又はタイマ割込みの発生により逆方向の遷移を行う。
【００３８】
ウォッチモードＷＴＣは、ＣＰＵ１２が動作を停止し、モジュールストップレジスタ２５の指示によりタイマ部１５のみがクロックセレクタ２４で選択された周波数３８．４ｋＨｚのクロックを受付けて動作するモードである。
【００３９】
ソフトウェアスタンバイモードＳＳＢは、ＣＰＵ１２が動作を停止し、モジュールストップレジスタ２５の指示によりアナログ回路部１１、タイマ部１５、通信部１６の全てが動作停止するモードである。
【００４０】
なお、ウォッチモードＷＴＣ，ソフトウェアスタンバイモードＳＳＢにおいて、アナログ回路部１１，ＲＡＭ１４，動作モードレジスタ２２，モジュールストップレジスタ２５等は動作停止した場合に、それぞれの内部状態を保持する。
【００４１】
このため、ウォッチモードＷＴＣではタイマ部１５においてウォッチモードＷＴＣを維持した時間を計時することができ、ウォッチモードＷＴＣからアクティブモード（高速）ＡＣＨ，アクティブモード（中速）ＡＣＭ，サブアクティブモードＳＡＣに復帰したあと、ＣＰＵ１２ではウォッチモード維持時間からリチウムイオン電池の充放電電流を推定することができる。
【００４２】
＜動作モード切り替え＞
図３は、ＣＰＵ１２が実行する動作モード切り替え処理の一実施形態のフローチャートを示す。なお、この処理が開始する際には予めアクティブモード（高速）ＡＣＨ又はアクティブモード（中速）ＡＣＭが設定されている。
【００４３】
同図中、ＣＰＵ１２は、ステップＳ１で、電池使用機器から通信部１６に供給される要求の種類やステイタス又は要求の頻度から、自装置（半導体集積回路装置）を備えた電池パックに電池使用機器が接続されているか、電池使用機器が動作状態であるか、電池使用機器が機能停止状態であるかを判定する。
【００４４】
例えば電池パックに電池使用機器が接続されていれば通信端子１７の電圧が所定レベルであるので電池使用機器の接続を判定でき、電池使用機器が動作状態であれば要求の頻度は所定値より高く、電池使用機器が機能停止状態であれば要求の頻度は所定値より低いので動作状態／機能停止状態を判定できる。
【００４５】
ステップＳ２で判定結果から電池使用機器が動作状態であるか否かを判別し、電池使用機器が動作状態である場合には、ステップＳ３でアクティブモード（高速）ＡＣＨ又はアクティブモード（中速）ＡＣＭに動作モードに設定する。
【００４６】
一方、ステップＳ２で判定結果から電池使用機器が動作状態ではない場合には、ステップＳ４で電池使用機器が機能停止状態であるか否かを判別し、電池使用機器が機能停止状態である場合には、ステップＳ５でスリープモード（高速）ＳＬＨ又はスリープモード（中速）ＳＬＭに動作モードを切り替える。この切り替えののち所定時間が経過すると例えばタイマ割込みにより元のアクティブモード（高速）ＡＣＨ又はアクティブモード（中速）ＡＣＭ又はサブアクティブモードＳＡＣに復帰する。
【００４７】
更に、ステップＳ４で電池使用機器が機能停止状態ではない場合、つまり電池パックに電池使用機器が接続されていない場合は、ステップＳ６でサブアクティブモードＳＡＣ又はサブスリープモードＳＳＬ又はウォッチモードＷＴＣに動作モードを切り替える。このサブスリープモードＳＳＬ又はウォッチモードＷＴＣへの切り替えののち所定時間が経過すると例えばタイマ割込みにより元のアクティブモード（高速）ＡＣＨ又はアクティブモード（中速）ＡＣＭ又はサブアクティブモードＳＡＣに復帰する。
【００４８】
上記ステップＳ３でアクティブモード（高速）ＡＣＨ又はアクティブモード（中速）ＡＣＭのいずれを設定するか、ステップＳ５でスリープモード（高速）ＳＬＨ又はスリープモード（中速）ＳＬＭのいずれに切り替えるか、ステップＳ６でサブアクティブモードＳＡＣ又はサブスリープモードＳＳＬ又はウォッチモードＷＴＣのいずれに切り替えるかは、ユーザが予め決定しＲＯＭ１３内のＥＥＰＲＯＭに設定しておく。
【００４９】
ところで、電池パックに電池使用機器が接続されており電池使用機器が動作状態ではない場合には、図４（Ａ）に示すように、所定時間Ｔ１だけアクティブモード（高速）ＡＣＨ［又はアクティブモード（中速）ＡＣＭ］とし、所定時間Ｔ２だけスリープモード（高速）ＳＬＨ［又はスリープモード（中速）ＳＬＭ］として、これを繰り返す構成としても良い。
【００５０】
また、電池パックに電池使用機器が接続されていない場合には、図４（Ｂ）に示すように、所定時間Ｔ１だけアクティブモード（高速）ＡＣＨ［又はアクティブモード（中速）ＡＣＭ又はサブアクティブモードＳＡＣ］とし、所定時間Ｔ３だけウォッチモードＷＴＣとして、これを繰り返す構成としても良い。上記のように電池使用機器の状態に応じてどのモードを使用するかはユーザが自由に設定することができる。
【００５１】
このように、電池使用機器の接続状態と動作状態に応じて、電池使用機器が動作状態であれば例えばアクティブモードを設定し、電池使用機器が動作状態でなければ例えばスリープモードとし、電池使用機器が接続されていなければ例えばウォッチモードとすることにより、消費電流を低減でき、電池使用機器が接続されていない長期放置状態における電池残量を求めることができる。
【００５２】
＜電池パック＞
図５は、本発明の半導体集積回路装置を適用した電池パックの一実施形態の斜視図を示す。同図中、電池パック３０は、電池３１及び半導体集積回路装置３２がケース３３に収納された構成とされている。電池３１は、リチウムイオン電池であり、接続端子３４ａ，３４ｂにより図１に示す構成の半導体集積回路装置３２と接続されている。
【００５３】
なお、ケース３３に設けられた外部端子３５ａ，３５ｂは電池３１の正極と負極に接続され、外部端子３５ｃは半導体集積回路装置３２の通信端子１７に接続されている。
【００５４】
なお、上記実施形態では、第１モードの一例としてアクティブモードを用い、第２モードの一例としてスリープモードを用い、第３モードの一例としてとしてウォッチモードを用いている。
【００５５】
＜他の実施形態＞
図６は、本発明の半導体集積回路装置の他の実施形態のブロック構成図を示す。同図中、図１と同一部分には同一符号を付す。フューエルゲージ機能モジュール１０内には、アナログ回路部１１、ＣＰＵ１２、ＲＯＭ１３、ＲＡＭ１４、タイマ部１５、通信部１６が設けられており、これらは図示しない内部バスにより相互に接続されている。
【００５６】
アナログ回路部１１には、電圧センサ、温度センサ、電流センサ、ＡＤ変換器等のアナログ回路が設けられ、各センサの検出値はＡＤ変換器でデジタル化され、内部バスを介してＣＰＵ１２に供給される。
【００５７】
ＣＰＵ１２は、ＲＯＭ１３に格納されている各種ソフトウェアを実行し、電流センサで検出したリチウムイオン電池の充放電電流を積算することによりリチウムイオン電池の電池残量を演算する。なお、電圧センサ及び温度センサの検出値は各種補正を行うために用いられ、ＲＡＭ１４はＣＰＵ１２が処理を実行する際の作業領域として使用され、ＲＯＭ１３には不揮発メモリとしてのＥＥＰＲＯＭも含まれている。
【００５８】
タイマ部１５は、割込み用タイマと計時用タイマを含む各種タイマを有しており、これらのタイマが発生した信号は例えば割込み信号、計測時間としてＣＰＵ１２に供給される。通信部１６は、携帯電話、デジタルカメラ等の電池使用機器から通信端子１７を介して供給される要求に応じて、ＣＰＵ１２が演算した電池残量を通信端子１７を介して電池使用機器に送信する。
【００５９】
可変発振回路４１は、動作モードレジスタ２２から動作モードに応じた周波数の発振又は停止を指示され、発振指示１（アクティブモード，サブアクティブモード，スリープモード，サブスリープモード）で例えば周波数３８．４ｋＨｚの低速クロックを発生し、発振指示２（ウォッチモード）で例えば周波数９．６ｋＨｚもしくはそれ以下の超低速クロックを発生して発振回路２３及びクロックセレクタ２４に供給する。
【００６０】
ここで、アナログ回路部１１内のＡＤ変換器としてシグマ・デルタ変調器を設け、シグマ・デルタ変調器でアナログ信号をＰＤＭ（パルス密度変調）つまり１ビットデジタル変調してＣＰＵ１２に供給し、ＣＰＵ１２でＰＤＭ信号を多ビットのデジタル値つまりＰＣＭ（パルスコード変調）データに変換する構成とする場合がある。この場合、ＣＰＵ１２は周波数３８．４ｋＨｚの低速クロックが供給されていればＰＤＭ信号をＰＣＭデータに変換できるものの、周波数９．６ｋＨｚの超低速クロックでは上記ＰＤＭ信号からＰＣＭデータへの変換を行うことができない。すなわち周波数９．６ｋＨｚの超低速クロックはＣＰＵ１２が正常動作できない程度の超低速である。
【００６１】
図７は、可変発振回路４１の一実施形態の回路構成図を示す。同図中、ｐチャネルＭＯＳ−ＦＥＴ（金属酸化膜半導体−電界効果トランジスタ：以下「ＭＯＳトランジスタ」という）Ｍ１〜Ｍ４は、ソースを電源Ｖｃｃに接続され、ゲートを端子４２ａ〜４２ｄに接続され、ドレインを共通接続されている。ＭＯＳトランジスタＭ１〜Ｍ４のドレインにはｐチャネルＭＯＳトランジスタＭ５，Ｍ６のソースが接続されている。ＭＯＳトランジスタＭ１〜Ｍ４のオン時のドレイン電流は同一とされている。
【００６２】
ＭＯＳトランジスタＭ５のドレインはコンパレータ４３の非反転入力端子とｎチャネルＭＯＳトランジスタＭ７のドレインとコンデンサＣ１の一端に接続され、ＭＯＳトランジスタＭ７のソースとコンデンサＣ１の他端は接地されている。ＭＯＳトランジスタＭ５，Ｍ７のゲートは論理回路４５の端子ｄに接続されている。コンパレータ４３の反転入力端子には定電圧源４６から基準電圧Ｖ１が印加され、コンパレータ４３の出力端子は論理回路４５の端子ａに接続されている。
【００６３】
ＭＯＳトランジスタＭ６のドレインはコンパレータ４４の非反転入力端子とｎチャネルＭＯＳトランジスタＭ８のドレインとコンデンサＣ２（例えばＣ１＝Ｃ２）の一端に接続され、ＭＯＳトランジスタＭ８のソースとコンデンサＣ２の他端は接地されている。ＭＯＳトランジスタＭ６，Ｍ８のゲートは論理回路４５の端子ｅに接続されている。コンパレータ４４の反転入力端子には定電圧源４６から基準電圧Ｖ１が印加され、コンパレータ４４の出力端子は論理回路４５の端子ｂに接続されている。
【００６４】
ここで、論理回路４５の端子ｅ出力がハイレベルで端子ｄ出力がローレベルとなると、ＭＯＳトランジスタＭ５がオン、ＭＯＳトランジスタＭ７がオフしてコンデンサＣ１が充電され、コンパレータ４３の非反転入力端子の電圧が徐々に上昇して基準電圧Ｖ１を超えたときにコンパレータ４３出力（つまり論理回路４５の端子ａ入力）はローレベルからハイレベルに切り替る。これにより、端子ｃ出力がハイレベルとなると共に、端子ｄ出力がハイレベルとなってＭＯＳトランジスタＭ５がオフ、ＭＯＳトランジスタＭ７がオンしてコンデンサＣ１が急速に放電される。
【００６５】
論理回路４５の端子ｄ出力がハイレベルで端子ｅ出力がローレベルとなると、ＭＯＳトランジスタＭ６がオン、ＭＯＳトランジスタＭ８がオフしてコンデンサＣ２が充電され、コンパレータ４４の非反転入力端子の電圧が徐々に上昇して基準電圧Ｖ１を超えたときにコンパレータ４４出力（つまり論理回路４５の端子ｂ入力）はローレベルからハイレベルに切り替る。これにより、端子ｃ出力がローレベルとなり、端子ｅ出力がハイレベルとなってＭＯＳトランジスタＭ６がオフ、ＭＯＳトランジスタＭ８がオンしてコンデンサＣ２が急速に放電される。このようにして、論理回路４５の端子ｃ出力が発振信号として端子４７から出力される。
【００６６】
周波数３８．４ｋＨｚの低速クロックの発生を指示する発振指示１の場合、端子４２ａ〜４２ｄの全てにローレベルの信号が供給され、ＭＯＳトランジスタＭ１〜Ｍ４がオンしＭＯＳトランジスタＭ１〜Ｍ４のドレイン電流の加算値がＭＯＳトランジスタＭ５又はＭ６のドレイン電流つまりコンデンサＣ１，Ｃ２の充電電流となる。
【００６７】
周波数９．６ｋＨｚの超低速クロックの発生を指示する発振指示２の場合、端子４２ａのみローレベルで端子４２ｂ〜４２ｄにハイレベルの信号が供給され、ＭＯＳトランジスタＭ１のみがオンしＭＯＳトランジスタＭ１のドレイン電流がＭＯＳトランジスタＭ５又はＭ６のドレイン電流つまりコンデンサＣ１，Ｃ２の充電電流となる。
【００６８】
このように、発振指示２ではコンデンサＣ１，Ｃ２の充電電流を発振指示１の１／４とすることにより発振周波数を略１／４としている。
【００６９】
なお、可変発振回路４１としては、低速クロックを発生する発振器と超低速クロックを発生する発振器を用意し、いずれか一方に切り替える構成としても良い。
【００７０】
発振回路２３は、例えばＰＬＬを内蔵しており、動作モードレジスタ２２から動作モードに応じた逓倍数を指示され、発振回路４１からのクロックに同期した例えば周波数５ＭＨｚ／２．５ＭＨｚ／１．２５ＭＨｚのいずれかの中高速クロックを発生してクロックセレクタ２４に供給する。
【００７１】
なお、発振回路４１の出力するクロックを発振回路２３に供給せず、発振回路４１，２３を非同期で動作させる構成としても良い。
【００７２】
クロックセレクタ２４は、動作モードレジスタ２２から動作モードに応じたクロック選択を指示され、低速クロックと複数の中高速クロックの内のいずれかを選択し、フューエルゲージ機能モジュール１０内のアナログ回路部１１、ＣＰＵ１２、ＲＯＭ１３、ＲＡＭ１４、タイマ部１５、通信部１６それぞれに供給する。
【００７３】
上記動作モードレジスタ２２はＣＰＵ１２から動作モードを設定されＣＰＵ１２が命令（スリープ命令）を実行することをトリガーとして動作モードを切り替える。また、ＣＰＵ１２は、モジュールストップレジスタ２５にアナログ回路部１１、タイマ部１５、通信部１６それぞれのクロック受付の許可又は禁止を設定し、モジュールストップレジスタ２５は設定されたクロック受付許可又は禁止を指示する信号をアナログ回路部１１、タイマ部１５、通信部１６それぞれに供給する。これにより、アナログ回路部１１、タイマ部１５、通信部１６はクロック受付許可を指示されたものだけがクロックセレクタ２４から供給されるクロックを受付ける。
【００７４】
＜状態遷移＞
図８は、図６に示す半導体集積回路装置の状態遷移図を示す。なお、図８は縦方向がクロック周波数を表している。同図中、リセットにより装置はアクティブモード（高速）ＡＣＨとなる。この後、動作モードレジスタ２２の設定とスリープ命令の実行によりアクティブモード（高速）ＡＣＨからサブアクティブモードＳＡＣに遷移し、また、動作モードレジスタ２２の設定とスリープ命令の実行により逆方向の遷移を行う。
【００７５】
アクティブモード（高速）ＡＣＨは、ＣＰＵ１２が周波数５ＭＨｚのクロックにより高速でプログラムを実行するモードであり、クロックセレクタ２４で選択された周波数５ＭＨｚのクロックがフューエルゲージ機能モジュール１０の各部に供給され、モジュールストップレジスタ２５の指示によりアナログ回路部１１、タイマ部１５、通信部１６がクロックを受付けて高速で動作する。
【００７６】
サブアクティブモードＳＡＣは、ＣＰＵ１２が周波数３８．４ｋＨｚのクロックにより低速でプログラムを実行するモードであり、クロックセレクタ２４で選択された周波数３８．４ｋＨｚのクロックがフューエルゲージ機能モジュール１０の各部に供給され、モジュールストップレジスタ２５の指示によりアナログ回路部１１、タイマ部１５、通信部１６がクロックを受付けて低速で動作する。
【００７７】
また、アクティブモード（高速）ＡＣＨから動作モードレジスタ２２の設定とスリープ命令の実行により、スリープモード（中速）ＳＬＭに遷移し、プログラム割込み又はタイマ割込みの発生により逆方向の遷移を行う。
【００７８】
スリープモード（中速）ＳＬＭは、ＣＰＵ１２が動作を停止し、モジュールストップレジスタ２５の指示によりアナログ回路部１１、タイマ部１５、通信部１６がクロックセレクタ２４で選択された周波数２．５ＭＨｚ又は１．２５ＭＨｚのクロックを受付けて動作するモードである。
【００７９】
また、サブアクティブモードＳＡＣから動作モードレジスタ２２の設定とスリープ命令の実行により、サブスリープモードＳＳＬに遷移し、プログラム割込み又はタイマ割込みの発生により逆方向の遷移を行う。
【００８０】
サブスリープモードＳＳＬは、ＣＰＵ１２が動作を停止し、モジュールストップレジスタ２５の指示によりアナログ回路部１１、タイマ部１５、通信部１６がクロックセレクタ２４で選択された周波数３８．４ｋＨｚのクロックを受付けて動作するモードである。
【００８１】
また、アクティブモード（高速）ＡＣＨから動作モードレジスタ２２の設定とスリープ命令の実行により、ウォッチモードＷＴＣ，ソフトウェアスタンバイモードＳＳＢそれぞれに遷移し、プログラム割込み又はタイマ割込みの発生により逆方向の遷移を行う。
【００８２】
ウォッチモードＷＴＣは、ＣＰＵ１２が動作を停止し、モジュールストップレジスタ２５の指示によりタイマ部１５のみがクロックセレクタ２４で選択された周波数９．６ｋＨｚのクロックを受付けて動作するモードである。
【００８３】
ソフトウェアスタンバイモードＳＳＢは、ＣＰＵ１２が動作を停止し、モジュールストップレジスタ２５の指示によりアナログ回路部１１、タイマ部１５、通信部１６の全てが動作停止するモードである。
【００８４】
なお、ウォッチモードＷＴＣ，ソフトウェアスタンバイモードＳＳＢにおいて、アナログ回路部１１，ＲＡＭ１４，動作モードレジスタ２２，モジュールストップレジスタ２５等は動作停止した場合に、それぞれの内部状態を保持する。
【００８５】
このため、ウォッチモードＷＴＣではタイマ部１５においてウォッチモードＷＴＣを維持した時間を計時することができ、ウォッチモードＷＴＣからサブアクティブモードＳＡＣに復帰したあと、ＣＰＵ１２ではウォッチモード維持時間からリチウムイオン電池の充放電電流を推定することができる。
【００８６】
＜動作モード切り替え＞
図９は、ＣＰＵ１２が実行する動作モード切り替え処理の他の実施形態のフローチャートを示す。なお、この処理が開始する際には予めアクティブモード（高速）ＡＣＨ又はアクティブモード（中速）ＡＣＭが設定されている。
【００８７】
同図中、ＣＰＵ１２は、ステップＳ１１で、電池使用機器から通信部１６に供給される要求の種類やステイタス又は要求の頻度から、自装置（半導体集積回路装置）を備えた電池パックに電池使用機器が接続されているか、電池使用機器が動作状態であるか、電池使用機器が機能停止状態であるかを判定する。
【００８８】
例えば電池パックに電池使用機器が接続されていれば通信端子１７の電圧が所定レベルであるので電池使用機器の接続を判定でき、電池使用機器が動作状態であれば要求の頻度は所定値より高く、電池使用機器が機能停止状態であれば要求の頻度は所定値より低いので動作状態／機能停止状態を判定できる。
【００８９】
ステップＳ１２で判定結果から電池使用機器が動作状態であるか否かを判別し、電池使用機器が動作状態である場合には、ステップＳ１３でアクティブモード（高速）ＡＣＨに動作モードに設定する。
【００９０】
一方、ステップＳ１２で判定結果から電池使用機器が動作状態ではない場合には、ステップＳ１４で電池使用機器が機能停止状態であるか否かを判別し、電池使用機器が機能停止状態である場合には、ステップＳ１５でスリープモード（中速）ＳＬＭに動作モードを切り替える。この切り替えののち所定時間が経過すると例えばタイマ割込みにより元のアクティブモード（高速）ＡＣＨに復帰する。
【００９１】
更に、ステップＳ１４で電池使用機器が機能停止状態ではない場合、つまり電池パックに電池使用機器が接続されていない場合は、ステップＳ１６でウォッチモードＷＴＣに動作モードを切り替える。このウォッチモードＷＴＣへの切り替えののちタイマ部１５で周波数９．６ｋＨｚの超低速クロックをカウントして所定時間が経過すると、タイマ部１５からのタイマ割込みにより元のアクティブモード（高速）ＡＣＨ又はサブアクティブモードＳＡＣに復帰する。
【００９２】
なお、ステップＳ１６ではウォッチモードＷＴＣ以外のサブアクティブモードＳＡＣ又はサブスリープモードＳＳＬに切り替える構成としても良い。
【００９３】
この実施形態では、電池パックに電池使用機器が接続されていない場合には、図１０に示すように、所定時間Ｔ１だけサブアクティブモードＳＡＣとし、所定時間Ｎ×Ｔ１（Ｎは実数）だけウォッチモードＷＴＣとして、これを繰り返す構成とする。
【００９４】
この場合、変数Ｎは製造時にデフォルト値をＲＯＭ１３内のＥＥＰＲＯＭに設定しておき、その後、電池パックに電池使用機器が接続されたときには電池使用機器から変数Ｎを設定変更が可能とする。これによって、ウォッチモードＷＴＣの持続時間を電池使用機器の状態に応じて自由に変更することが可能となる。
【００９５】
このように、他の実施形態では、ウォッチモードで例えば周波数９．６ｋＨｚもしくはそれ以下の超低速クロックを用いることにより消費電流を削減することができ、例えば電池パックに電池使用機器が接続されていない状態であっても定期的にサブアクティブモードとなって電池残量を演算でき、消費電流を削減することで電池パックの寿命を更に延ばすことができる。
【００９６】
なお、他の実施形態では、第１モードの一例としてアクティブモード又はサブアクティブモードを用い、第３モードの一例としてウォッチモードを用いている。
【図面の簡単な説明】
【００９７】
【図１】本発明の半導体集積回路装置の一実施形態のブロック構成図である。
【図２】半導体集積回路装置の状態遷移図である。
【図３】動作モード切り替え処理の一実施形態のフローチャートである。
【図４】モード切り替えの説明図である。
【図５】本発明の半導体集積回路装置を適用した電池パックの一実施形態の斜視図である。
【図６】本発明の半導体集積回路装置の他の実施形態のブロック構成図である。
【図７】可変発振回路の一実施形態の回路構成図である。
【図８】図６に示す半導体集積回路装置の状態遷移図である。
【図９】動作モード切り替え処理の他の実施形態のフローチャートである。
【図１０】モード切り替えの説明図である。
【符号の説明】
【００９８】
１０  フューエルゲージ機能モジュール
１１  アナログ回路部
１２  ＣＰＵ
１３  ＲＯＭ
１４  ＲＡＭ
１５  タイマ部
１６  通信部
２１，２３，４１  発振回路
２２  動作モードレジスタ
２４  クロックセレクタ
２５  モジュールストップレジスタ
３０  電池パック
３１  電池
３２  半導体集積回路装置
【図１】
0005515273.tif 000002
【図２】
0005515273.tif 000003
【図３】
0005515273.tif 000004
【図４】
0005515273.tif 000005
【図５】
0005515273.tif 000006
【図６】
0005515273.tif 000007
【図７】
0005515273.tif 000008
【図８】
0005515273.tif 000009
【図９】
0005515273.tif 000010
【図１０】
0005515273.tif 000011