(57)【要約】【課題】メモリチェックの状況を管理できるようにして、メモリのチェック動作を中断しても問題が起きないようにする。【解決手段】内蔵メモリ１３を設けたＣＰＵ１１に対してＲＯＭ１６およびＲＡＭ１４を有するメモリチェック装置（携帯電話機）において、メモリチェックのチェックタイミングを設定し、かつそのメモリチェック状況を設定するチェックフラグを記憶するチェックフラグエリア１３１を前記内蔵メモリ内１３に設けている。【選択図】図１
2007148684.tif 000002
【特許請求の範囲】
【請求項１】
メモリチェック状況の管理を行うチェックフラグを有し、前記メモリチェックのチェックタイミングを設定できるようにしたことを特徴とするメモリチェック装置。
【請求項２】
内蔵メモリを設けたＣＰＵに対してＲＯＭおよびＲＡＭを有するメモリチェック装置において、前記チェックフラグを記憶するフラグエリアを前記内蔵メモリ内に設けた請求項１記載のメモリチェック装置。
【請求項３】
前記ＲＡＭのチェックフラグを、メモリチェックが行われているか否かを示す第１フラグ、メモリチェックの状態を示す第２フラグ、データエリアであるか否かを示す第３フラグの３種のフラグとする請求項２記載のメモリチェック装置。
【請求項４】
前記ＲＯＭのプログラムエリアのチェックフラグを、メモリチェックが行われているか否かを示す第４フラグと、プログラムエリアの使用が出来るか否かを示す第５フラグとする請求項２記載のメモリチェック装置。
【請求項５】
前記ＲＯＭのデータエリアのチェックフラグを、メモリチェックが行われているか否かを示す第１フラグ、メモリチェックの状態を示す第２フラグ、データエリアがあるか否かを示す第３フラグ、の３種のフラグとする請求項２記載のメモリチェック装置。
【請求項６】
前記第２フラグを、未使用、データ有り、データコピー中、データ消去中、データチェック中を示すものとする請求項３または５記載のメモリチェック装置。
【請求項７】
前記第３フラグを、データエリアである、データ転送用エリアである、またはデータ使用不可エリアであることを示すものとする請求項３または５記載のメモリチェック装置。
【請求項８】
メモリチェックのタイミングを、前記チェックフラグに従って、あらかじめ設定できるようにした請求項１または２記載のメモリチェック装置。
【請求項９】
メモリチェックのタイミングを、割り込み動作の少ない、セルフモード中、待ち受け中、充電中もしくは車載モード時に起動させる請求項８記載のメモリチェック装置。
【請求項１０】
前記ＲＯＭのプログラムエリアのメモリチェックを、チェックサムデータをエリアごとに管理することにより、メモリ破壊の場所により異なるエラー処理を行うようにした請求項１または２記載のメモリチェック装置。
【請求項１１】
ＲＡＭのメモリチェックを、メモリにエラーがあることが判明した場合に、データの初期化処理を行う請求項１、２または４記載のメモリチェック装置。
【請求項１２】
前記ＲＡＭのメモリチェックにおいて、メモリ破壊の場所を使用不可エリアとして、使用しないようにした請求項１、２または４記載のメモリチェック装置。
【請求項１３】
請求項１乃至１２のうちの１項に記載のメモリチェック装置の機能を有することを特徴とする携帯端末。
【請求項１４】
請求項１乃至１２のうちの１項に記載のメモリチェック装置の機能を有することを特徴とする携帯電話機。
【請求項１５】
メモリのチェック状況を管理するチェックフラグにより、そのメモリチェックのチェックタイミングを設定することを特徴とするメモリチェック方法。
【請求項１６】
内蔵メモリを設けたＣＰＵに対してＲＯＭおよびＲＡＭを有するメモリチェック装置のメモリチェック方法において、前記チェックフラグを前記内蔵メモリ内のフラグエリアに記憶する請求項１５記載のメモリチェック方法。
【請求項１７】
前記メモリチェック中に着信やキー操作などで割り込み処理が発生した場合、このメモリチェックを中断してチェックフラグにこのメモリチェックの状況を記録し、前記割り込み処理へ移行させる請求項１５または１６記載のメモリチェック方法。
【請求項１８】
前記メモリチェックが中断した場合、次のメモリチェック時に前記チェックフラグを確認することにより、前記中断したメモリチェックの途中から、継続してメモリチェックを行う請求項１７記載のメモリチェック方法。
【請求項１９】
メモリチェックのタイミングを、前記チェックフラグに従って、あらかじめ設定する請求項１５または１６記載のメモリチェック方法。
【請求項２０】
メモリチェックのタイミングを、割り込み動作の少ない、セルフモード中、待ち受け中、充電中もしくは車載モード時に起動させる請求項１９記載のメモリチェック方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリチェック装置、携帯端末、携帯電話機路およびそのメモリチェック方法に関し、特にメモリチェック機能を有するメモリチェック装置、携帯端末、携帯電話機およびそのメモリチェック方法に関する。
【背景技術】
【０００２】
現在の携帯電話機では、システムが複雑化しており、ＣＰＵを２つ以上持つものが増えている。例えば、図９はＣＰＵを２つ以上持つもの携帯電話機のブロック図である。この携帯電話機は、表示などのユーザＩ／Ｆ系の制御を行うＡｐｐｌｉｃａｔｉｏｎ  ＣＰＵ（以降ＡＣＰＵという）１０ａと、基地局との送受信など通信系の制御を行うＣｏｍｍｕｎｉｃａｔｉｏｎ  ＣＰＵ（以降ＣＣＰＵという）２０とが、バスまたは、シリアルＩ／Ｆ（インターフェイス）などで接続されている。ＡＣＰＵ１０ａおよびＣＣＰＵ２０は、お互いに処理の割り込みを行いながら携帯電話としての動作をしている。
【０００３】
ＡＣＰＵ１０ａ内部には、制御を行うＣＰＵ１１とメモリデータの読み出し書き込みの制御をするメモリコントローラ１２と、それに接続される内蔵ＲＡＭ１３ａからなる。ＡＣＰＵ１０ａは、ＲＡＭ１４とＲＯＭ１５ａが接続されている。ＲＡＭ１４は、データの一次保存やワークエリアに使用される。ＲＯＭ１５ａは、プログラムエリアとデータエリアに分かれている。プログラムエリア１６にはプログラムが格納され、データエリア１７ａは各種パラメータやユーザデータの保存に使用される。又、ＡＣＰＵ１０ａには表示部となるＬＣＤ（図示しない）と、携帯電話を操作するためのキー（図示しない）が接続されている。
【０００４】
ＣＣＰＵ２０内部も、ＡＣＰＵ１０ａと同様に、ＣＰＵ２１とメモリコントローラ２２と内蔵ＲＡＭ２３からなり、ＲＡＭ２４とＲＯＭ２５が接続されている。ＲＡＭ２４は、データの一次保存やワークエリアに使用される。ＲＯＭ２５は、プログラムエリアとデータエリアに分かれている。プログラムエリア２６にはプログラムが格納され、データエリア２７は通信に関するパラメータの保存に使用される。又、ＣＣＰＵ２０には基地局との間で電波の送受信を行う、無線部（図示しない）が接続さている。なお、ＣＰＵが１個の場合は、このＣＰＵに、表示部となるＬＣＤと、携帯電話を操作するためのキーと、無線部とが接続される。
【０００５】
このようなＣＰＵの増加に伴い、メモリの数と容量も増加している。この結果、メモリを使用する数に比例してメモリ障害に起因する携帯電話機の故障率も高くなっている。また、メモリの品質は製造および製品出荷段階でその検査が行われるので、出荷時の動作に異常はなくても、経年変化による劣化やその他の外部要因で不具合となることも考えられる。
【０００６】
そのため、ユーザが携帯電話機を使用している段階になって、携帯電話機に組み込まれたメモリの不具合が発生する場合も生じてきている。また、システムの複雑化に伴ってＣＰＵが増加し、メモリも増加してくると、メモリに不具合が発生した場合に、そのメモリの障害箇所に応じて携帯電話機のさまざまな誤動作が故障現象として現れてくる。
【０００７】
このような携帯電話のメモリの不具合をチェックする他の従来技術としては、例えば、バックアップ電源を必要とするＳＲＡＭの、バックアップ電源電圧の低下に起因するＳＲＡＭの破壊を検出する技術が、特許文献１（特開２００５−１４９４３５号公報）にて開示されている。本特許文献１に開示された技術によれば、携帯電話機の電源投入時にＳＲＡＭに格納したチェックワードを読み出して、バックアップ電池の消耗によるＳＲＡＭに格納したデータの破壊を検出するものである。チェックワードをＳＲＡＭ全体の破壊率が低い段階でも検出できるビット数にしたことによりＳＲＡＭに格納したデータの一部が破壊された場合でも確実にそれを検出することができる特徴を備えている。
【０００８】
さらに、携帯電話機のようにレスポンス性能が重視される機器において、プログラムミスに起因するデータ破壊があってもそのデータを復旧可能とする技術が、特許文献２（特開２００３−３１６６６１号公報）で述べられている。
【０００９】
図１０は、特許文献２に示された携帯電話機などのメモリシステム３０のブロック図である。このシステム３０は、「ＲＩＳＣ型ＣＰＵ＋リアルタイムＯＳ」を用いた携帯電話機（図示せず）に搭載され、ＣＰＵ３１、不揮発メモリ３２、ＲＯＭ３３、 バックアップメモリ３４を備えている。また、ＣＰＵ３１は、ＲＯＭ３３に記録されたデータ復旧用のプログラム４０によって、データ破壊チェック手段４１、データ復旧手段４２及びデータバックアップ手段４３として機能する。
【００１０】
この構成において、不揮発性メモリ３２は、複数のセクション（１〜ｎ）に分割され、各セクション内にチェックデータ（１〜ｎ）が記録されている。バックアップメモリ３４は、不揮発性メモリ３２と同じように複数のセクション（１〜ｎ）に分割され、不揮発性メモリ３２と同じデータが記録されている。そして、データ破壊チェック手段４１は、各セクションのチェックデータの初期値を予め記憶しており、不揮発性メモリ３２内のチェックデータが当該初期値と異なっていた場合に、データ破壊が発生したと判断する。データ復旧手段４２は、データ破壊が検出されたとき、バックアップメモリ３４に記録されたデータに基づき不揮発性メモリ３２のデータを復旧する。
【００１１】
このようにして、メモリシステム３０は、システム終了時とシステム起動時に上述のようにしてメモリチェックを行っているので、プログラムミスによるデータ破壊があってもそのデータを復旧可能とする。
【００１２】
また、特許文献３（特開平０９−２１２４３０号公報）には、携帯型の情報処理装置の電源投入等の起動時にメモリチェック等の処理を高速化する技術が開示されている。特許文献３によれば、ハードウエア・チェック処理の中でメモリチェックを行い、異常が発見されなければエラーフィールドに「異常なし」と格納し、その後に行われるソフトウエア処理でのバックアップデータチェックをスキップさせることで処理の高速化を図っている。そして、バックアップデータには、このバックアップデータにアクセスするか否かを示すアクセスフラグが付けられている。
【００１３】
【特許文献１】特開２００５−１４９４３５号公報
【特許文献２】特開２００３−３１６６６１号公報
【特許文献３】特開平０９−２１２４３０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
上述したように、携帯電話機のメモリに異常が発生すると、そのメモリの障害箇所に応じて携帯電話機のさまざまな誤動作が故障現象として現れてくる。例えば、メモリ異常の場所が通信系のプログラムやデータであった場合は、誤った電波の送信を行ってしまう可能性がある。又、メモリ異常の場所が、電源や充電に関するプログラムやデータであった場合は、発熱などを生ずる可能性もある。しかし、そのような故障に遭遇したときに、ユーザが自分で任意にメモリチェックを行って、メモリの正常性を確認する手段が携帯電話機には組み込まれていない。
【００１５】
特許文献１乃至３に開示された技術では、いずれの場合も電源投入時やシステム起動時に起動メモリチェックを実行することが述べられているのみで、ユーザが任意のタイミングでメモリチェックを実行する方法については何ら開示されていない。特に、ユーザが携帯電話を使用中の任意のタイミングにメモリチェックを実行可能ならしめるためには、着信動作やユーザによるキー操作などでメモリチェックが中断されることについても考慮する必要があるので、そのようなことが考慮されていない従来技術においては、チェック動作のタイミングによっては、割り込み動作に対する反応が遅くなりリアルタイム動作を重視する携帯電話機としての機能を損なう可能性や、書き込まれているデータそのものを破壊してしまう可能性もある。
【課題を解決するための手段】
【００１６】
本発明の目的は、ユーザが任意のタイミングでメモリのセルフチェックの実行を可能とするメモリチェック装置、携帯電話機およびそのメモリチェック方法を提供する。任意のタイミングによるメモリチェックの実行中に、たとえその実行動作中に着信動作やユーザによるキー操作などで割り込みが発生した場合でも、メモリのデータを破壊することなくすぐにチェック動作を中断し、次のメモリチェック時には中断箇所からチェック動作を再開することができるメモリチェック装置、携帯電話機およびそのメモリチェック方法を提供する。
【００１７】
本発明のメモリチェック装置の構成は、メモリチェック状況の管理を行うチェックフラグを有し、前記メモリチェックのチェックタイミングを設定できるようにしたことを特徴とする。
【００１８】
本発明において、内蔵メモリを設けたＣＰＵに対してＲＯＭおよびＲＡＭを有するメモリチェック装置において、メモリチェックの状況を管理するフラグを記憶するフラグエリアを前記内蔵メモリ内に設けることができる。また、前記チェックフラグを、メモリチェックをしたか否かを示す第１フラグ、データがあるか否かを示す第２フラグ、データエリアがあるか否かを示す第３フラグ、の３種のフラグとすることができ、また、プログラムエリアのフラグを、メモリチェックをしたか否かを示す第４フラグと、プログラムエリアの使用が出来るか否かを示す第５フラグとすることができ、また、データエリアのフラグを、メモリチェックをしたか否かを示す第１フラグ、データがあるか否かを示す第２フラグ、データエリアがあるか否かを示す第３フラグ、の３種のフラグとすることができ、また、前記第２フラグを、未使用、データ有り、データコピー中、データ消去中、データチェック中を示すものとすることができ、また、前記第３フラグを、データエリアである、データ転送用エリアである、データ使用不可エリアであることを示すものとすることができる。
【００１９】
さらに、本発明において、ユーザがメモリチェックのタイミングをあらかじめ設定できるようにすることができ、また、メモリチェックのタイミングを、セルフモード中、待ち受け中、充電中もしくは車載モード時に起動させることができ、また、ＲＯＭ（プログラムエリア）のメモリチェックを、チェックサムデータをエリアごとに管理することで、メモリ破壊の場所により異なるエラー処理を行うようにすることができ、また、ＲＡＭのメモリチェックを、メモリにエラーがあることが判明した場合に、データの初期化処理を行うことができる。
【００２０】
本発明の携帯端末または携帯電話機の構成は、上述したメモリチェック装置の機能を有することを特徴とする。
【００２１】
本発明のメモリチェック方法の構成は、メモリのチェック状況を管理するチェックフラグにより、そのメモリチェックのチェックタイミングを設定することを特徴とする。
【００２２】
本発明において、内蔵メモリを設けたＣＰＵに対してＲＯＭおよびＲＡＭを有するメモリチェック装置のメモリチェック方法において、前記チェックフラグを前記内蔵メモリ内のフラグエリアに記憶することができ、また、前記メモリチェック中に着信やキー操作などで割り込み処理が発生した場合、このメモリチェックを中断してチェックフラグにこのメモリチェックの状況を記録し、前記割り込み処理へ移行させることができ、また、前記メモリチェックが中断した場合、次のメモリチェック時に前記チェックフラグを確認することにより、前記中断したメモリチェックの途中から、継続してメモリチェックを行うことができる。また、メモリチェックのタイミングを、前記チェックフラグに従って、あらかじめ設定することができ、また、メモリチェックのタイミングを、割り込み動作の少ない、セルフモード中、待ち受け中、充電中もしくは車載モード時に起動させることができる。
【発明の効果】
【００２３】
本発明のメモリチェック装置によれば、メモリチェックの状況を管理するチェックフラグを設けているので、メモリのセルフチェック中に、着信動作やユーザによるキー操作などで割り込みが発生した場合でもチェック動作の中断や再開を柔軟に実行することができる。そのため、メモリのデータを破壊することなく、ユーザが任意のタイミングでメモリチェックを行うことができる。また、リアルタイム動作が要求される携帯電話機でも、任意のタイミングでメモリのチェックを行うことが可能となり、メモリの障害箇所に応じて現れるさまざまな誤動作に対して早期に対処が可能となる。
【発明を実施するための最良の形態】
【００２４】
次に図面により本発明の実施形態を説明する。図１は本発明の一実施形態を説明する携帯電話機（メモリチェック装置）のブロック図である。この図１において、携帯電話機は、表示などのユーザＩ／Ｆ系の制御および基地局との送受信など通信系の制御を１個のＣＰＵ部１０で行う場合を示している。なお、本実施形態は、１個のＣＰＵ部の場合を説明しているが、前述した図９のように、ＡＣＰＵとＣＣＰＵのように、ＣＰＵを２つ以上持つ携帯電話機にも適用可能である。
【００２５】
本実施形態は、ＣＰＵ部１０内の内蔵ＲＡＭ１３内に，メモリチェックの状況を管理するフラグを記憶したフラグエリア１３１を設けたことを特徴とする。また、フラグエリア１３１の内容は、ＲＯＭ１５内のデータエリア１７にもフラグエリア１７１として同様に記憶される。
【００２６】
ＣＰＵ部１０内部には、制御を行うＣＰＵ１１と、メモリデータの読み出し書き込みの制御をするメモリコントローラ１２と、それに接続される内蔵ＲＡＭ１３を設けている。また、ＣＰＵ部１０は、ＲＡＭ１４とＲＯＭ１５が接続されている。ＲＡＭ１４は、データの一次保存やワークエリアに使用される。ＲＯＭ１５は、プログラムエリア１６とデータエリア１７に分かれている。プログラムエリア１６にはプログラムが格納され、データエリア１７は各種パラメータやユーザデータの保存に使用される。また、ＣＰＵ部１０には表示部となるＬＣＤ（図示しない）と、携帯電話を操作するためのキー（図示しない）と、基地局との間で電波の送受信を行う無線部（図示しない）が接続されている。
【００２７】
なお、図１では、１つのＲＯＭ１５をプログラムエリア１６とデータエリア１７に分けているが、別々のＲＯＭで、それぞれをプログラムエリア、データエリアとしても構わない。
【００２８】
本実施形態の動作における特徴は３つある。１）メモリエリアをフラグにより管理し、メモリチェックの状況を分かるようにする。２）ユーザがメモリチェックのタイミングを設定できるようにする。３）メモリチェックの状況が把握できることにより、割り込み処理があってもすぐにメモリチェック機能の中断が可能となる。
【００２９】
以下、本実施形態における動作を説明する。まず、メモリチェックのタイミングをユーザが設定できるように、キーを割り当ておく。割り当てたキーにより、「電源ＯＦＦ中」「待ち受け中」「セルフモード中」のそれぞれでメモリチェックが起動できるようにユーザが設定をする。この設定により、各モード（「電源ＯＦＦ中」「待ち受け中」「セルフモード中」）になったところで、自動的にメモリのセルフチェックが動作するようになる。
【００３０】
メモリチェック中に着信やキー操作などで割り込み処理が発生した場合、このメモリチェックを中断してチェックフラグにこのメモリチェックの状況を記録し、割り込み処理へ移行させることができる。また、そのメモリチェックが中断した場合、次のメモリチェック時にチェックフラグを確認することにより、中断したメモリチェックの途中から、継続してメモリチェックを行うことができる。すなわち、そのメモリのセルフチェック中に、着信動作やユーザによるキー操作などで割り込みが発生した場合でも、メモリのデータを破壊することなく、すぐにチェック動作を中断することができる。
【００３１】
メモリ（ＲＡＭ１４の場合）は、図２のメモリ配置図のように、複数ｎのＲＡＭエリアに分割してセルフチェック行う。又、ＲＡＭ１４の状態を管理するため、図３のメモリ配置図のようにあらかじめフラグを別のメモリに用意しておく。この場合、通常は内蔵ＲＡＭ１３内に設けたチェックフラグエリア１３１などを使用し、また、バックアップをＲＯＭ（データエリア）１５のデータエリア１７内にチェックフラグエリア１７１として残しておくようにすれば良い。なお、フラグはＲＡＭ１４のそれぞれのエリアに対応してそれぞれ設けられる。
【００３２】
図３において、「ＲＡＭフラグＡ」はメモリチェックが行われているか否かを示すフラグであり、「０」は未チェック、「１」はチェック済みを示す。また、「ＲＡＭフラグＢ」はメモリチェックの状態を示すフラグである。「ＲＡＭフラグＢ」の「０」は未使用、「１」はデータ有り、「２」はコピー中、「３」は消去中、「４」は「チェック中をそれぞれ示す。
【００３３】
「ＲＡＭフラグＣ」はＲＡＭのデータエリアを説明するもので、「０」はデータエリアであること、「１」は転送用エリアであること、「２」は使用不可エリア（壊れているエリア）であるかことを示すフラグである。
【００３４】
本実施形態では、メモリチェックの状況をチェックフラグにより管理している。従って、メモリチェック中に割り込み動作が発生した場合でも、メモリのデータを破壊することなくすぐに割り込み処理へ移行することができる。また、メモリチェックが割り込み動作により中断しても、次のメモリチェック時には、メモリのフラグを確認することで継続してメモリのチェックを行うことができる。これにより、メモリのセルフチェックが先頭エリアばかり行われることを回避でき、最終エリアまでまんべんなくチェックできるようになる。
【００３５】
また、メモリ異常発見時には、警告音や、ＬＣＤにアラーム表示をしてユーザに知らせることで、メモリ異常に起因する携帯電話機の異常動作の拡大を未然に防止することができる。
【実施例１】
【００３６】
次に、本実施形態の詳細を、実施例１として図４のフロー図により説明する。図４はＲＡＭの場合のメモリセルフチェックの手順を説明している。まず、フラグＡを確認しセルフチェックが前に行われているかを確認する（ステップＳ１）。全てのエリアがチェック済み（フラグＡが全て１）であった場合、フラグＡを全て０にし、チェックは先頭エリアから行う（ステップＳ２）。全てのエリアがチェック済みで無い場合は、途中のエリアからチェックを開始する（ステップＳ３）。
【００３７】
セルフチェックするエリア（以降、チェックエリアという）を決定したら、チェックエリアのフラグＢを「２：コピー中」にし（ステップＳ４）、データを転送用エリアにコピーする（ステップＳ５）。なお、転送用エリアはあらかじめいくつか用意しておく。
【００３８】
コピーが完了したら、転送用エリアのフラグＢを「１：データ有」に、チェックエリアのフラグＢを「３：消去中」にし（ステップＳ６）、チェックエリアのデータ消去を行う（ステップＳ７：以下「ステップ」を省略する）。
【００３９】
消去完了後、チェックエリアのフラグＢを「４：チェック中」にし（Ｓ８）、メモリ書込み／読出し（Ｗｒｉｔｅ／Ｒｅａｄ）チェックを行う（Ｓ９）。このＷｒｉｔｅ／Ｒｅａｄチェックは、０ｘＡＡ、０ｘ５５などの任意のパタンを書き込んだ後、読み出して値を確認することで行う。
【００４０】
Ｗｒｉｔｅ／Ｒｅａｄチェック後、その結果が正常であるか否かを判定し（Ｓ１０）、正常であれば、転送用エリアからデータをチェックエリアにコピーし元に戻す（Ｓ１１）。
【００４１】
コピーが完了したら、チェックエリアのフラグＡを「１：チェック済み」、フラグＢを「１：データ有」に戻す（Ｓ１２）。次に、転送用エリアのフラグＢを「３：消去中」にし（Ｓ１３）、転送用エリアのデータを消去する（Ｓ１４）。
【００４２】
消去が完了したら、転送用エリアのフラグＢを「０：未使用」にし（Ｓ１５）、チェックエリアが最終エリアであるか否かを確認する（Ｓ１６）。チェックエリアが最終エリアでない場合にはチェックエリアを次のエリアとし（Ｓ１７）、ステップＳ４からチェックを繰り返す。最終エリアであった場合にはセルフチェックは終了となる。
【００４３】
ステップＳ１０のＷｒｉｔｅ／Ｒｅａｄチェックにて異常が発生している場合は、チェックエリアをメモリ異常領域としてチェックエリアのフラグＣを「２：使用不可エリア」にする（Ｓ１８）。
【００４４】
ユーザには「データエリアに異常があるため初期化処理を行います。」などとＬＣＤに表示することで知らせ（また、警告音などを併せても良い）、エラー処理を行う（Ｓ１９）。このエラー処理は、ＲＡＭの初期化処理を行い、初期データをＲＡＭに展開しなおす。なお、この初期化処理では、フラグＣを確認して使用不可エリアには初期データの展開をしないようにする。また、以降の処理でも使用不可エリアは使用しないようにする。
【００４５】
ここで、メモリのセルフチェック中に、着信やユーザのキー操作などの割り込み処理により、別の処理に移行しても問題が無いことを説明する。
【００４６】
メモリチェック中に中断される可能性が高い処理は、処理時間の長いステップＳ５のデータコピー、ステップＳ７のデータ消去、ステップＳ９のメモリチェック、ステップＳ１１のデータの書き戻し、ステップＳ１５の転送用エリアのデータ消去である。この他の、例えばフラグを立てるなどの処理は数μＳ程度の処理時間であるため、処理終了後に割り込み処理へ移行しても影響は無い。
【００４７】
ステップＳ５のデータコピーが中断されたとしても、チェックエリアのデータは残ったままなので問題は無い。ステップＳ７のデータ消去中では、すでに転送用エリアにデータが転送されており、又、転送用エリアにデータが移動してあることはフラグの確認で分かることから問題は無い。ステップＳ９のメモリチェック中とステップＳ１１のデータの書き戻し中も、ステップＳ７と同様に転送用エリアにデータがあるので問題は無い。ステップＳ１５の転送用エリアのデータ消去中では、チェックエリアにすでにデータが戻っており、又、フラグからデータがチェックエリアに戻っていることが分かるので、この場合も問題は無い。
【００４８】
本実施例では、ＣＰＵ部１０を，ＡＣＰＵ側、ＣＣＰＵ側のどちらのＲＡＭかを区別はしていないが、従来例で説明したＡＣＰＵ側のメモリチェックもＣＣＰＵ側のメモリチェックも同様の手順で行うことができる。
【００４９】
また、メモリチェックの起動タイミングは、「電源ＯＦＦ中」「待ち受け中」「セルフモード中」としているが、メモリチェックはＣＰＵとメモリとのアクセスを絶え間なく行うため、消費電流が問題になる可能性がある。これについては、電池消費を気にする必要がない、充電中、もしくは車載モード中などにメモリチェックを行うようにすれば良い。さらに、電源ＯＦＦ中かつ充電中などと条件をつければ、割り込み処理によるメモリチェックの中断を減らすことができる。
【００５０】
この他に、メモリチェックの起動タイミングとして、ユーザによるメモリチェックだけでなく、何らかの理由でサービスショップに持ち込まれた時に、保守の一環としてメモリチェックを行うことも可能である。また、携帯電話機のテスト用冶具などに接続されたことをトリガにしてメモリのチェック機能を起動することなども可能である。
【実施例２】
【００５１】
発明の他の実施例２として、図５のフロー図により、ＲＯＭのプログラムエリアでのメモリチェックを行う方法を説明する。なお、メモリチェックの起動タイミングは、実施例１と同様であるので省略する。
【００５２】
ＲＯＭ１５は、図６（ａ）の配置図ように、プログラムエリア１６とデータエリア１７に分けて管理されている。プログラムエリア１６は、プログラムエリア（１）〜プログラムエリア（ｍ）の複数ｍ個のエリアに分割され、データエリア１７もデータエリア（１）〜データエリア（ｋ）の複数ｋ個のエリアに分割されている。このようなプログラムエリア１６の各プログラムエリアを順次メモリチェックを行う。
【００５３】
また、ＲＯＭ１５の状態を管理するため、図７（ａ）の配置図のように、あらかじめフラグを別のメモリエリアに用意しておく。通常は内蔵ＲＡＭ１３などを使用し、バックアップをＲＯＭ（データエリア）１７に残しておくようにすれば良い。これらフラグはＲＯＭのそれぞれのエリアに対応している。「プログラムエリアフラグＡ」はメモリチェックが行われているか否かを示すフラグである。「プログラムエリアフラグＢ」は使用可能エリアか、使用不可エリア（壊れているエリア）であるかを示すフラグである。
【００５４】
次に、図５を用いてＲＯＭ（プログラムエリア）の場合のメモリセルフチェックの手順を説明する。メモリチェックプログラムが実行された場合、チェックプログラムを内蔵ＲＡＭ１３に展開し、内蔵ＲＡＭ１３上でチェックプログラムを動作させる。まず、フラグＡを確認し、セルフチェックが前に行われているか否かを確認する（ステップＳ２１：以下ステップを省略する）。全てのエリアがチェック済み（フラグＡが全て１）であった場合、フラグＡを全て０にし、チェックは先頭エリアから行う（Ｓ２２）。全てのエリアがチェック済みで無い場合は、途中からチェックを開始する（Ｓ２３）。
【００５５】
セルフチェックするエリア（以降、チェックエリアという）を決定したら、チェックエリアのチェックサムを計算する（Ｓ２４）。このチェックサムは、ＲＯＭに記憶されたプログラムデータを加算した値であり、あらかじめエリアごとに計算しておき別のメモリ、またはＲＯＭ１５のデータエリア１７に保存しておく。
【００５６】
なお、チェックサムのデ−タの保存は、図６（ａ）のデータエリア１７を用いることができる。この場合には、図６（ｂ）の配置図ように、データエリア１７の先頭のデータエリア（１）に、それぞれプログラムエリア（１）からプログラムエリア（ｍ）の各チェックサムデータを格納することが出来る。
【００５７】
また、このチェックサムのデ−タは、プログラムエリアとデータエリアの数が同じであれば、プログラムエリアの番号に対応するデータエリアの先頭などに、チェックサムデータを格納することも出来る。
【００５８】
また、このチェックサムのデ−タは、図７（ｂ）の配置図ように、プログラムエリアフラグＡをｍ個、プログラムエリアフラグＢをｍ個、チェックサムデ−タをｍ個のエリアをそれぞれ用意することもできる。ｍ個の各プログラムエリアフラグに対応して、チェックサムデ−タを用意したものであり、この場合には、データの対応づけが容易にできる。
【００５９】
そして、計算したチェックサム結果が、保存された値と同じであるか否かを確認する（Ｓ２５）。それが保存された値と同じである場合、チェックエリアのフラグＡを「１：チェック済み」にし（Ｓ２６）、どこまでセルフチェックを行ったかを記録しておく。
【００６０】
次に、チェックエリアが最終エリアであるか否かを確認する（Ｓ２７）。それが最終エリアでない場合にはチェックエリアを次のエリアとし（Ｓ２８）、ステップＳ２４からチェックを繰り返す。最終エリアであった場合にはセルフチェックは終了となる。
【００６１】
ステップＳ２５でチェックサムの値が異なる場合は、チェックエリアをメモリ異常領域とし、フラグＢを「１：使用不可」とする（Ｓ２９）。そして、そのエラーが含まれるエリアにどのプログラムが含まれているかを確認し、ユーザにメッセージを送る（Ｓ３０）。
【００６２】
例えば、２つのＣＰＵを用いた場合、ＡＣＰＵ側のメモリチェックでのエラーであった場合、そのエリアが電源や充電などのプログラムが格納されている部分であると、発熱などの異常動作を起こす可能性がある。そのため異常動作時には、警告音を発し、ＬＣＤ表示には「電源系の異常が見られます」などと表示し、数秒後に電源を強制的にＯＦＦにする。
【００６３】
また、ＣＣＰＵ側のメモリチェックでのエラーであった場合は、通信系のプログラムであるので、異常送信や、受信エラーなどが発生する可能性がある。そのため、警告音を発し、ＬＣＤ表示には、「通信系の異常が見られます」などと表示し、即座に無線機能を停止させる。
【００６４】
最後に、メモリのセルフチェック中に、着信やユーザのキー操作などの割り込み処理により、別の処理に移行しても問題が無いことを説明する。メモリチェック中に中断される可能性が高い処理は、処理時間の長いステップＳ２４のチェックサムによる計算のみである。ここでは読み出ししか行っていないため、中断されても特に問題は無い。この他の処理（フラグを立てるなどの処理）は数μＳ程度の処理時間であるため、処理終了後に割り込み処理へ移行しても影響は無い。
【実施例３】
【００６５】
次に、本発明の実施例３として、ＲＯＭ１５のデータエリア１７でのメモリチェック方法を説明する。なお、メモリチェックの起動タイミングは、実施例２と同様であるので省略する。
【００６６】
ＲＯＭ１５は、前述した図６のように、プログラムエリア１６とデータエリア１７に分けて管理されている。この場合、図６のように、データエリア１７を複数に分割してメモリチェックを行う。又、ＲＯＭ（データエリア）の状態を管理するため、図８の配置図のように、あらかじめフラグを別のメモリに用意しておく。通常は内蔵ＲＡＭ１３などを使用し、バックアップを別のＲＯＭに残しておく。フラグはＲＯＭ（データエリア）のそれぞれのエリアに対応している。「データエリアフラグＡ」はメモリチェックが行われているか否かを示すフラグである。「データエリアフラグＢ」はメモリチェックの状態を示すフラグである。「データエリアフラグＣ」はＲＯＭがデータエリアであるか、転送用エリアであるか、また、使用不可エリア（壊れているエリア）であるかを示すフラグである。
【００６７】
ＲＯＭ（データエリア）のメモリセルフチェックの手順は、図４と同様に処理されるが、ステップＳ１９のエラー処理以外は、ＲＡＭでのメモリチェックと同様であるので、その説明は省略する。このエラーが発生した場合の処理（Ｓ１９）は、ＲＡＭの場合と違い、初期データの展開などによるデータの復旧はできない。そのため、壊れているエリアによっては、電源を強制的にＯＦＦにすることになる。
【００６８】
例えば、２つのＣＰＵを用いた場合、ＡＣＰＵ側のＲＯＭ（データエリア）チェックでエラーであった場合、そのエリアが電源や充電などのデータが格納されている部分であると、発熱などの異常動作を起こす可能性がある。この対策として、警告音を発しＬＣＤ表示には「電源系の異常が見られます」などと表示し、数秒後に電源を強制的にＯＦＦにすればよい。また、電話帳などのデータが格納されている部分では、ＬＣＤ表示には「電話帳データが壊れている可能性があります」などと表示し、ユーザに注意を促すようにすればよい。
【００６９】
また、ＣＣＰＵ側のＲＯＭ（データエリア）チェックでのエラーであった場合は、通信系のデータであるので、異常送信や、受信エラーなどが発生する可能性がある可能性もある。そのため、警告音を発しＬＣＤ表示には「通信系の異常が見られます」などと表示し、即座に無線機能を停止させればよい。
【図面の簡単な説明】
【００７０】
【図１】本発明の一実施形態のメモリチェック装置（携帯電話機）を説明するブロック図である。
【図２】図１のＲＡＭのエリアを説明する構成図である。
【図３】図１のＲＡＭのフラグを説明する構成図である。
【図４】本発明の第１の実施例のメモリチェック装置の動作を説明するフロー図である。
【図５】本発明の第２の実施例のメモリチェック装置の動作を説明するフロー図である。
【図６】（ａ）（ｂ）は図５の場合のＲＯＭの構成およびそのデータエリアの構成を説明する構成図である。
【図７】（ａ）（ｂ）は図５の場合のＲＯＭのプログラムエリアおよびそのチェックサムデータの各フラグを説明する構成図である。
【図８】本発明の第３の実施例の携帯電話機のデータエリアを説明する構成図である。
【図９】従来例の２つのＣＰＵを持つ携帯電話機を説明するブロック図である。
【図１０】他の従来例の携帯電話機を説明するブロック図である。
【符号の説明】
【００７１】
１０    ＣＰＵ部
１０ａ    ＡＣＰＵ（Ａｐｐｌｉｃａｔｉｏｎ  ＣＰＵ）
１１，２１，３１    ＣＰＵ
１２，２２    メモリコントローラ
１３，１３ａ，２３    内蔵ＲＡＭ
１３１，１７１    チェックフラグエリア
１４，２４    ＲＡＭ
１５，１５ａ，２５，３３    ＲＯＭ
１６，２６    プログラムエリア
１７，１７ａ，２７    データエリア
２０    ＣＣＰＵ（Ｃｏｍｍｕｎｉｃａｔｉｏｎ  ＣＰＵ）
３０    メモリシステム
３２    不揮発メモリ
３４    バックアップメモリ
４０    プログラム
４１    データ破壊チェック手段
４２    データ復旧手段
４３    データバックアップ手段
【図１】
2007148684.tif 000003
【図２】
2007148684.tif 000004
【図３】
2007148684.tif 000005
【図４】
2007148684.tif 000006
【図５】
2007148684.tif 000007
【図６】
2007148684.tif 000008
【図７】
2007148684.tif 000009
【図８】
2007148684.tif 000010
【図９】
2007148684.tif 000011
【図１０】
2007148684.tif 000012