(57)【要約】【課題】本発明は、コストアップを抑制でき、かつ、異常履歴を得ることができる半導体集積回路装置を提供することを目的とする。【解決手段】発振を行って発振信号を出力すると共に発振停止を検出したとき発振停止検出信号を出力し発振を再開する発振回路と、発振回路が出力する発振停止検出信号をエラーフラグとして保持するレジスタと、発振回路が出力する発振停止検出信号からリセット信号を生成して機能モジュールをリセットするリセット制御部と、機能モジュールのリセット後、レジスタからエラーフラグを読み出して不揮発性メモリに記憶する記憶制御手段を有する。【選択図】    図２
2010068037.tif 000002
【特許請求の範囲】
【請求項１】
発振信号を用いて動作する機能モジュールを備えた半導体集積回路装置であって、
発振を行って発振信号を出力すると共に発振停止を検出したとき発振停止検出信号を出力し発振を再開する発振回路と、
前記発振回路が出力する発振停止検出信号をエラーフラグとして保持するレジスタと、
前記発振回路が出力する発振停止検出信号からリセット信号を生成して前記機能モジュールをリセットするリセット制御部と、
前記機能モジュールのリセット後、前記レジスタから前記エラーフラグを読み出して不揮発性メモリに記憶する記憶制御手段を
有することを特徴とする半導体集積回路装置。
【請求項２】
請求項１記載の半導体集積回路装置において、
前記発振回路は、
発振を行って互いに反転した一対の発振信号を出力する発振部と、
前記一対の発振信号のレベルが同一であるとき発振停止を検出して発振停止検出信号を出力する発振停止検出部と、
前記発振停止検出信号により前記発振部をリセットし発振を再開させる発振リセット部を
有することを特徴とする半導体集積回路装置。
【請求項３】
請求項２記載の半導体集積回路装置において、
前記発振部は、一対のコンデンサを交互に充放電して発振を行い、
前記発振リセット部は、前記発振停止検出信号により前記一対のコンデンサの一方を充電させ他方を放電させて前記発振部をリセットする
ことを特徴とする半導体集積回路装置。
【請求項４】
請求項１乃至３のいずれか１項記載の半導体集積回路装置において、
上位装置からの要求を受信し前記不揮発性メモリからエラーフラグを読み出して前記上位装置に送信する通信手段を
有することを特徴とする半導体集積回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、発振信号を用いて動作する機能モジュールを備えた半導体集積回路装置に関する。
【背景技術】
【０００２】
近年、リチウムイオン電池は、携帯電話、デジタルカメラ等の携帯用の電池使用機器に搭載されている。リチウムイオン電池は、一般に、その電圧により電池残量を検出することが難しいとされている。このため、電池の充放電電流を積算することにより、電池残量を測定する方法がとられている。
【０００３】
従来から上記の方法を用いて電池残量を測定するためのフューエルゲージＩＣが開発されており、このフューエルゲージＩＣは、ＣＰＵ、メモリ、通信回路などを内蔵し、検出した充放電電流をデジタルデータに変換して積算することで電池残量を算出し、算出した電池残量を通信回路により、携帯電話、デジタルカメラ等の電池使用機器に送信する。
【０００４】
フューエルゲージＩＣは発振回路を内蔵しており、この発振回路で発生したクロックをＣＰＵ、メモリ、通信回路などの各回路部に供給し、各回路部はこのクロックを用いて動作を行う。
【０００５】
特許文献１，２には、発振回路が発振停止した場合に正常な発振状態に自動復帰するＰＬＬ回路が記載されている。また、特許文献３には、発振が停止したことを検出する機能を持ったＰＬＬ回路が記載されている。
【特許文献１】特開平７−７４６２５号公報
【特許文献２】特開平１１−３１７６６３号公報
【特許文献３】特開２００４−２２１６９７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
例えばＥＳＤ（静電気放電）などの外乱ノイズが発振回路に入ると、発振回路が発振を停止する場合がある。また、長時間使用によるＩＣ自体の劣化等により、発振回路が発振を停止することも考えられる。
【０００７】
従来のフューエルゲージＩＣでは、発振回路が発振を停止した場合、ＣＰＵ、メモリ、通信回路などの各回路部が全て動作を停止するために復帰しようがなかった。これを回避するために、フューエルゲージＩＣとは別に、発振回路を内蔵するウォッチドッグタイマを追加し、ウォッチドッグタイマでフューエルゲージＩＣを監視する方法がある。しかし、ウォッチドッグタイマを用いる方法では部品点数が増加するために、コストアップにつながるという問題があった。また、発振回路が発振を停止した場合、従来のフューエルゲージＩＣでは、その異常履歴を保存することはできないという問題があった。
【０００８】
本発明は上記の点に鑑みてなされたもので、コストアップを抑制でき、かつ、異常履歴を得ることができる半導体集積回路装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一実施態様による半導体集積回路装置は、発振信号を用いて動作する機能モジュールを備えた半導体集積回路装置であって、
発振を行って発振信号を出力すると共に発振停止を検出したとき発振停止検出信号を出力し発振を再開する発振回路（２１，２２）と、
前記発振回路が出力する発振停止検出信号をエラーフラグとして保持するレジスタ（２５，２６）と、
前記発振回路が出力する発振停止検出信号からリセット信号を生成して前記機能モジュール（１０）をリセットするリセット制御部（２７）と、
前記機能モジュール（１０）のリセット後、前記レジスタ（２５，２６）から前記エラーフラグを読み出して不揮発性メモリ（１５）に記憶する記憶制御手段（１２）を有する。
【００１０】
好ましくは、前記発振回路（２１，２２）は、
発振を行って互いに反転した一対の発振信号を出力する発振部（３０）と、
前記一対の発振信号のレベルが同一であるとき発振停止を検出して発振停止検出信号を出力する発振停止検出部（４０）と、
前記発振停止検出信号により前記発振部をリセットし発振を再開させる発振リセット部（３６）を有する。
【００１１】
好ましくは、前記発振部（３０）は、一対のコンデンサ（Ｃ１，Ｃ２）を交互に充放電して発振を行い、
前記発振リセット部（３６）は、前記発振停止検出信号により前記一対のコンデンサ（Ｃ１，Ｃ２）の一方を充電させ他方を放電させて前記発振部（３０）をリセットする。
【００１２】
好ましくは、上位装置からの要求を受信し前記不揮発性メモリ（１５）からエラーフラグを読み出して前記上位装置に送信する通信手段（１７）を有する。
【００１３】
なお、上記括弧内の参照符号は、理解を容易にするために付したものであり、一例にすぎず、図示の態様に限定されるものではない。
【発明の効果】
【００１４】
本発明によれば、コストアップを抑制でき、かつ、異常履歴を得ることができる。
【発明を実施するための最良の形態】
【００１５】
＜半導体集積回路装置の構成＞
図１は、本発明の半導体集積回路装置の一実施形態のブロック構成図を示す。同図中、フューエルゲージ機能モジュール１０内には、アナログ回路部１１、ＣＰＵ１２、ＲＯＭ１３、ＲＡＭ１４、ＥＥＰＲＯＭ１５、タイマ部１６、通信部１７が設けられており、これらは図示しない内部バスにより相互に接続されている。
【００１６】
アナログ回路部１１には、電圧センサ、温度センサ、電流センサ、ＡＤ変換器等のアナログ回路が設けられ、各センサの検出値はＡＤ変換器でデジタル化され、内部バスを介してＣＰＵ１２に供給される。
【００１７】
ＣＰＵ１２は、ＲＯＭ１３に格納されている各種ソフトウェアを実行し、電流センサで検出したリチウムイオン電池の充放電電流を積算することによりリチウムイオン電池の電池残量を演算する。なお、電圧センサ及び温度センサの検出値は各種補正を行うために用いられ、ＲＡＭ１４はＣＰＵ１２が処理を実行する際の作業領域として使用される。不揮発メモリであるＥＥＰＲＯＭ１５にはエラーフラグやトリミングデータ等の各種データが記憶される。
【００１８】
タイマ部１６は、割込み用タイマと計時用タイマを含む各種タイマを有しており、これらのタイマが発生した信号は例えば割込み信号又は計測時間としてＣＰＵ１２に供給される。
【００１９】
通信部１７は、携帯電話、デジタルカメラ等の電池使用機器から通信端子１８ａ，１８ｂを介して供給される要求に応じて、ＣＰＵ１２が演算した電池残量を、通信端子１８ａ，１８ｂを介して電池使用機器に送信する。
【００２０】
発振回路２１は、例えば周波数３８．４ｋＨｚの低速クロックを発生して発振回路２２及びクロックセレクタ２３に供給する。
【００２１】
発振回路２２は、例えばＰＬＬを内蔵しており、発振回路２１から供給されるクロックに同期した例えば周波数５ＭＨｚの高速クロックを発生してクロックセレクタ２３に供給する。なお、発振回路２１の出力するクロックを発振回路２２に供給せず、発振回路２１，２２を非同期で動作させる構成としても良い。
【００２２】
クロックセレクタ２３は、ＣＰＵ１２からクロック選択を指示されて、発振回路２１の出力クロックと発振回路２２の出力クロックのうちいずれか一方を選択し、クロックラインを通じて選択したクロックをフューエルゲージ機能モジュール１０内のアナログ回路部１１、ＣＰＵ１２、ＲＯＭ１３、ＲＡＭ１４、ＥＥＰＲＯＭ１５、タイマ部１６、通信部１７それぞれに供給する。
【００２３】
発振回路２１，２２それぞれには後述する発振停止検出部４０が設けられており、発振停止を検出したときに例えばハイレベルの発振停止検出信号を出力して発振を再開する。発振回路２１の出力する発振停止検出信号はオア回路２４の一方の入力端子と、レジスタとしてのＳＲフリップフロップ２５のセット端子に供給される。また、発振回路２２の出力する発振停止検出信号はオア回路２４の他方の入力端子と、レジスタとしてのＳＲフリップフロップ２６のセット端子に供給される。
【００２４】
オア回路２４は、発振回路２１，２２のいずれか一方が発振停止したときにパルス波形のハイレベルの発振停止検出信号を出力する。この発振停止検出信号はリセット制御回路２７を構成するオア回路２８の一方の入力端子に供給される。オア回路２８の他方の入力端子にはパワーオンリセット回路２９よりパワーオンリセット信号が供給されている。オア回路２８は発振停止検出信号又はパワーオンリセット信号からチップリセット信号を生成してフューエルゲージ機能モジュール１０に供給する。
【００２５】
パワーオンリセット回路２９は、半導体集積回路装置の電源投入から所定時間後に一定時間だけハイレベルとなり、フューエルゲージ機能モジュール１０内の各回路部をリセットする信号である。
【００２６】
つまり、リセット制御回路２７はパワーオンリセット時又は発振回路２１，２２の発振停止時にハイレベルとなるチップリセット信号を生成してフューエルゲージ機能モジュール１０に供給して、フューエルゲージ機能モジュール１０内の各回路部のリセット（チップリセット）を行う。
【００２７】
このチップリセットによって、発振回路２１，２２の発振停止によってフューエルゲージ機能モジュール１０全体の動作が不安定になることを回避することができる。
【００２８】
ＳＲフリップフロップ２５，２６のリセット端子にはパワーオンリセット回路２９からパワーオンリセット信号が供給されている。ＳＲフリップフロップ２５，２６はハイレベルのパワーオンリセット信号でリセットされたのち、ハイレベルの発振停止検出信号が供給されると、この信号をエラーフラグとして保持する。
【００２９】
ＣＰＵ１２はリセット後、ＳＲフリップフロップ２５，２６からエラーフラグを読み出して、ＳＲフリップフロップ２５，２６に値１（ハイレベル）のエラーフラグが保持されていれば、このエラーフラグを異常履歴としてＥＥＰＲＯＭ１５に書き込み、ＳＲフリップフロップ２５，２６をゼロクリアする。
【００３０】
なお、ＥＥＰＲＯＭ１５に書き込まれたエラーフラグは、携帯電話やデジタルカメラ等の電池使用機器（ホスト）からの要求により、通信部１７から電池使用機器に転送され、必要に応じて解析される。
【００３１】
＜発振回路＞
図２は、発振回路２１の一実施形態の回路構成図を示す。同図中、発振部３０を構成するｐチャネルＭＯＳ−ＦＥＴ（金属酸化膜半導体−電界効果トランジスタ：以下「ＭＯＳトランジスタ」という）ＭＰ１，ＭＰ２それぞれのソースは定電流源３１に接続されており、定電流源３１は電源ＶＤＤを供給されている。
【００３２】
ＭＯＳトランジスタＭＰ１のドレインは、コンパレータ３２の非反転入力端子と、ｎチャネルＭＯＳトランジスタＭＮ１のドレインと、コンデンサＣ１の一端と、ｎチャネルＭＯＳトランジスタＭＮ６のドレインに接続されている。ＭＯＳトランジスタＭＮ１のソースはｎチャネルＭＯＳトランジスタＭＮ２のドレインに接続され、ＭＯＳトランジスタＭＮ２のソースとコンデンサＣ１の他端は電源ＶＤＤに接続されている。ＭＯＳトランジスタＭＰ１，ＭＮ２のゲートは論理回路３４の端子ｄに接続されている。
【００３３】
ＭＯＳトランジスタＭＰ２のドレインは、コンパレータ３３の非反転入力端子と、ｎチャネルＭＯＳトランジスタＭＮ３のドレインと、コンデンサＣ２（例えばＣ１＝Ｃ２）の一端と、ｐチャネルＭＯＳトランジスタＭＰ３のドレインに接続されている。ＭＯＳトランジスタＭＮ３のソースはｎチャネルＭＯＳトランジスタＭＮ４のドレインに接続され、ＭＯＳトランジスタＭＮ４のソースとコンデンサＣ２の他端は電源ＶＤＤに接続されている。ＭＯＳトランジスタＭＰ２，ＭＮ４のゲートは論理回路３４の端子ｃに接続されている。
【００３４】
なお、ＭＯＳトランジスタＭＮ１，ＭＮ３，ＭＮ６，ＭＰ３は発振リセット部３６を構成している。ＭＯＳトランジスタＭＮ６のソースは電源ＶＳＳに接続されている。ＭＯＳトランジスタＭＰ３はソースを電源ＶＤＤに接続されている。
【００３５】
ＭＯＳトランジスタＭＮ１，ＭＮ３，ＭＰ３のゲートにはインバータ４３から通常時にハイレベルの信号が供給され、ＭＯＳトランジスタＭＮ６のゲートにはインバータ４４から通常時にインバータ４４からローレベルの信号が供給されている。このため、通常時にＭＯＳトランジスタＭＮ１，ＭＮ３はオン、ＭＯＳトランジスタＭＮ６，ＭＰ３はオフである。
【００３６】
コンパレータ３２の反転入力端子には基準電圧Ｖｒｅｆが印加され、コンパレータ３２の出力端子は論理回路３４の端子ａに接続されている。コンパレータ３３の反転入力端子には基準電圧Ｖｒｅｆが印加され、コンパレータ３３の出力端子は論理回路３４の端子ｂに接続されている。
【００３７】
論理回路３４は、端子ｂにハイレベルが供給されると端子ｃをハイレベル出力、端子ｄをローレベル出力とし、端子ａにハイレベルが供給されると端子ｃをローレベル出力、端子ｄをハイレベル出力とする。
【００３８】
ここで、論理回路３４の端子ｃ出力がハイレベルで端子ｄ出力がローレベルとなると、ＭＯＳトランジスタＭＰ１がオン、ＭＯＳトランジスタＭＮ２がオフしてコンデンサＣ１が定電流源３１により徐々に充電され、コンパレータ３２の非反転入力端子の電圧が徐々に上昇して基準電圧Ｖｒｅｆを超えたときにコンパレータ３２出力（つまり論理回路３４の端子ａ入力）はローレベルからハイレベルに切り替る。これにより、端子ｃ出力がローレベルで端子ｄ出力がハイレベルとなって、ＭＯＳトランジスタＭＰ１がオフ、ＭＯＳトランジスタＭＮ２がオンしてコンデンサＣ１が急速に放電される。つまり、コンデンサＣ１のコンパレータ３２側の電圧波形は三角波となる。
【００３９】
また、論理回路３４の端子ｃ出力がローレベルで端子ｄ出力がハイレベルとなると、ＭＯＳトランジスタＭＰ２がオン、ＭＯＳトランジスタＭＮ４がオフしてコンデンサＣ２が定電流源３１により徐々に充電され、コンパレータ３３の非反転入力端子の電圧が徐々に上昇して基準電圧Ｖｒｅｆを超えたときにコンパレータ３３出力（つまり論理回路３４の端子ｂ入力）はローレベルからハイレベルに切り替る。これにより、端子ｃ出力がハイレベルで端子ｄ出力がローレベルとなってＭＯＳトランジスタＭＰ２がオフ、ＭＯＳトランジスタＭＮ４がオンしてコンデンサＣ２が急速に放電される。つまり、コンデンサＣ１のコンパレータ３２側の電圧波形は三角波となる。
【００４０】
論理回路３４の端子ｄ出力は端子３９からクロックとして出力され、例えばクロックセレクタ２３に供給される。また、論理回路３４の端子ｃ，ｄ出力は、発振停止検出部４０内のイクスクルーシブオア回路４１に供給される。
【００４１】
ところで、論理回路３４の端子ｃ，ｄ出力は通常時には互いに反転しているが、端子ｃ，ｄ出力は発振停止時にはハイレベル又はローレベルで同一レベルとなる。外乱ノイズにより例えば定電流源３１の出力電流が低下すると端子ｃ，ｄ出力は共にローレベルとなる。また、外乱ノイズにより例えばＭＯＳトランジスタＭＰ１，ＭＰ２，ＭＮ２，ＭＮ４のいずれがオンからオフ（又はオフからオン）になる誤動作が発生すると、端子ｃ，ｄ出力は共にローレベル又はハイレベルとなる。
【００４２】
このため、イクスクルーシブオア回路４１の出力は、通常時にハイレベルで発振停止時にローレベルとなってｎチャネルＭＯＳトランジスタＭＮ５のゲートに供給される。
【００４３】
ＭＯＳトランジスタＭＮ５のドレインは定電流源４２に接続されており、定電流源４２は電源ＶＤＤを供給されている。また、ＭＯＳトランジスタＭＮ５のドレインはコンデンサＣ３の一端及びインバータ４３の入力端子に接続されている。ＭＯＳトランジスタＭＮ５のソース及びコンデンサＣ３の他端は電源ＶＤＤに接続されている。
【００４４】
イクスクルーシブオア回路４１出力がハイレベルの通常時には、ＭＯＳトランジスタＭＮ５がオンしてコンデンサＣ３は放電されており、インバータ４３出力はハイレベルである。ここで、発振停止によりイクスクルーシブオア回路４１出力がローレベルになると、ＭＯＳトランジスタＭＮ５がオフすることによりコンデンサＣ３は定電流源４２により充電される。
【００４５】
定電流源４２の流す電流はコンデンサＣ３の容量に対して小さく設定されており、コンデンサＣ３の充電に時間Ｔ１（１ｓｅｃ程度）を要する。時間Ｔ１だけ経過してコンデンサＣ３が充電されると、インバータ４３出力はローレベルに変化する。インバータ４３出力を反転したインバータ４４出力は発振停止検出信号として端子４５から出力される。
【００４６】
この発振停止から時間Ｔ１経過後にローレベルとなるインバータ４３出力は発振リセット部３６のＭＯＳトランジスタＭＮ１，ＭＮ３，ＭＰ３のゲートに供給される。このため、ＭＯＳトランジスタＭＮ１，ＭＮ３がオフしてＭＯＳトランジスタＭＮ２，ＭＮ４をコンデンサＣ１，Ｃ２から遮断し、ＭＯＳトランジスタＭＰ３がオンしてコンデンサＣ２（一対のコンデンサの一方）を充電し、また、インバータ４４がハイレベルとなるためにＭＯＳトランジスタＭＮ６がオンしてコンデンサＣ１（一対のコンデンサの他方）を放電させる。
【００４７】
これによって、論理回路３４の端子ａ入力はローレベル、端子ｂ入力はハイレベルとなるため、論理回路３４の端子ｃ出力がローレベルで端子ｄ出力がハイレベルとなって発振部３０は自己リセットを行って発振動作を再開する。これと共に、イクスクルーシブオア回路４１出力がハイレベルとなってＭＯＳトランジスタＭＮ５がオンしてコンデンサＣ３は放電され、インバータ４３出力はハイレベル、インバータ４４出力はローレベルとなる。
【００４８】
発振回路２１，２２を非同期で動作させる構成の場合、発振回路２２についても、発振回路２１と同様に図２に示す回路を用いて発振停止検出を行っており、その説明を省略する。
【００４９】
＜発振停止検出時の動作＞
図３は、発振停止検出時の一実施形態の動作シーケンスを示す。同図中、ステップＳ１で発振回路２１，２２の発振停止検出部４０は発振回路２１，２２の発振停止を検出して発振停止検出信号を生成し、停止した発振回路を強制的に再起動（発振再開）させる。
【００５０】
ステップＳ２で発振停止検出信号（エラーフラグ）をＳＲフリップフロップ２５，２６（レジスタ）に保持すると共に、リセット制御回路２７によりフューエルゲージ機能モジュール１０の各回路部をリセット（チップリセット）する。
【００５１】
そして、ステップＳ３で再起動した発振回路の発振が安定するまでの時間を待つ。これはＣＰＵ１２がリセット後、正常に動作を開始するまでの時間であり、タイマ部１６によって作り出している。その後、ステップＳ４でチップリセットを解除する。
【００５２】
ステップＳ５でＣＰＵ１２はＳＲフリップフロップ２５，２６からエラーフラグを読み出し、値１（ハイレベル）のエラーフラグが保持されていれば、ステップＳ６で読み出したエラーフラグを異常履歴としてＥＥＰＲＯＭ１５に書き込む。そして、ステップＳ７でＳＲフリップフロップ２５，２６をゼロクリアする。
【００５３】
次に、ステップＳ８で電池使用機器（ホスト：上位装置）からの要求により、ＥＥＰＲＯＭ１５に書き込まれているエラーフラグを読み出し、通信部１７から電池使用機器に送信する。
【００５４】
これにより、電池使用機器（ホスト）では発振停止の異常履歴を持つことができ、電池使用機器の表示手段によってユーザに半導体集積回路装置の異常等の情報を知らせることができる。
【００５５】
＜電池パック＞
図４は、本発明の半導体集積回路装置を適用した電池パックの一実施形態の斜視図を示す。同図中、電池パック５０は、電池５１及び半導体集積回路装置５２がケース５３に収納された構成とされている。電池５１は、リチウムイオン電池であり、接続端子５４ａ，５４ｂにより半導体集積回路装置５２と接続されている。半導体集積回路装置５２は図１に示す構成である。
【００５６】
なお、ケース５３に設けられた外部端子５５ａ，５５ｂは電池５１の正極と負極に接続され、外部端子５５ｃは半導体集積回路装置５２の通信端子１８ａ又は１８ｂに接続されている。
【図面の簡単な説明】
【００５７】
【図１】本発明の半導体集積回路装置の一実施形態のブロック構成図である。
【図２】発振回路の一実施形態の回路構成図である。
【図３】発振停止検出時の一実施形態の動作シーケンスである。
【図４】本発明の半導体集積回路装置を適用した電池パックの一実施形態の斜視図である。
【符号の説明】
【００５８】
１０  フューエルゲージ機能モジュール
１１  アナログ回路部
１２  ＣＰＵ
１３  ＲＯＭ
１４  ＲＡＭ
１５  ＥＥＰＲＯＭ
１６  タイマ部
１７  通信部
１８ａ，１８ｂ  通信端子
２１，２２  発振回路
２２  発振回路
２３  クロックセレクタ
２４，２８  オア回路
２５，２６  ＳＲフリップフロップ
２７  リセット制御回路
２９  パワーオンリセット回路
３０  発振部
３１，４２  定電流源
３２，３３  コンパレータ
３４  論理回路
３６  発振リセット部
４０  発振停止検出部
４１  イクスクルーシブオア回路
４３，４４  インバータ
【図１】
2010068037.tif 000003
【図２】
2010068037.tif 000004
【図３】
2010068037.tif 000005
【図４】
2010068037.tif 000006