説明

携帯端末の制御方法

【課題】ROMを有さない第1半導体チップに、第2半導体チップのROMから第1半導体チップ用のプログラムを転送した後、長期間、プログラムのベリファイを行なう機会が無いので、プログラムの信頼性が低下する。
【解決手段】電池の装着時など、携帯端末の使用を開始するときに、第2半導体チップのROMから第1半導体チップのRAMにプログラムの転送を行ない、その後、待ち受け状態において、着信の頻度に応じて決定されたベリファイ周期に基づいて、周期的に第1半導体チップのRAMに記憶されたプログラムのベリファイを実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、携帯端末内のメモリに記憶されたプログラムのベリファイを制御する制御方法に関し、特に揮発性メモリに記憶されたプログラムのベリファイを制御する制御方法に関する。
【背景技術】
【0002】
近年の携帯端末として、携帯電話は、通話機能だけでなく、カメラ機能や音楽再生機能などの様々な機能(以下、アプリケーション機能)を有している。
【0003】
携帯電話に様々な機能を持たせるために、通話機能を担う半導体チップ(Communication CPU:以下、CCPU)と、アプリケーション機能を担う半導体チップ(Application CPU:以下、ACPU)とを別々に製造し、2つの半導体チップを携帯電話に搭載することが行なわれている。
【0004】
一般に、マスクROM、EEPROMなどの不揮発性メモリを有する半導体チップは製造コストが高いので、CCPUとACPUの両方のチップに不揮発性メモリを設けると、携帯電話のコストが増加してしまう。そのため、CCPUには不揮発性メモリを設けず、ACPUにのみ不揮発性メモリを設けることにより、コスト低減を図っている。CCPUの動作を記述したプログラムはACPUに設けられた不揮発性メモリに記憶しておき、携帯電話の使用を開始するとき(例えば、電池が装着されたとき)に、CCPUに設けられた揮発性メモリに転送される。その後、電池が取り外されるまでCCPUの揮発性メモリに記憶されたプログラムは消えることがなく、CCPUを動作させるために使用される。
【0005】
携帯電話においては、揮発メモリとして、速度の速いSRAMが用いられている。しかしながら、DRAMがリフレッシュ機能を備え、時間経過に伴う放電により情報が消滅してしまうのを防いでいるのに対し、SRAMはリフレッシュ機能を具備していないため、二次宇宙線の影響によりにソフトエラーが生じた場合に復旧させることができない。
【0006】
携帯電話では、このことにより、SRAMに格納されたプログラムが正常に動作することができず、着信が行われたにもかかわらず、それを認識できないという状態に陥る可能性がある。
【0007】
特許文献1に記載の技術では、親情報処理装置内のROMから携帯端末装置内の揮発メモリに転送されたプログラムデータに対し、転送終了後にベリファイチェックを行っている。
【0008】
特許文献2に記載の技術では、携帯電話端末の開閉動作など、ユーザによる所定の操作が行われたことをトリガーとして、ベリファイ動作を行っている。
【0009】
【特許文献1】特開2002−157212号公報
【特許文献2】特開2008−009853号公報
【発明の開示】
【発明が解決しようとする課題】
【0010】
しかしながら、特許文献1に記載の技術では、プログラムデータが転送されたときのみしかベリファイが行われず、また、特許文献2に記載の技術では、折り畳み式携帯電話機の開閉動作が行われたときしかベリファイが実行されないため、プログラムデータが転送された後いわゆる待ち受け状態で長時間保持した場合、その間に生じたメモリのソフトエラーを検出することができず、揮発性メモリに転送されたプログラムデータに基づいて実行される動作、例えば電話着信やメール着信等の動作が実行されないという課題がある。
【課題を解決するための手段】
【0011】
本願発明は、揮発性メモリを有する第1半導体チップと、不揮発性メモリを有する第2半導体チップとを内蔵する携帯端末の制御方法であって、前記第2半導体チップの前記不揮発性メモリに記憶されたプログラムを前記第1半導体チップの前記揮発性メモリに転送するステップと、前記第1および第2半導体チップを起動するステップと、第1のベリファイ周期があらかじめ設定されたベリファイ周期に基づいて前記第1半導体チップの前記揮発性メモリ内の前記プログラムをベリファイするステップと、を有することを特徴とする。
【0012】
この特徴により、一旦、携帯電話に電池が装着された後に、長期間電池が取り外されることが無く、かつ、CPUの動作の異常が発生しなかった場合でも、揮発性メモリに転送・記憶されたプログラムを定期的にベリファイする機会を確保することができる。
【発明の効果】
【0013】
本発明によれば、一旦、揮発性メモリに転送されたプログラムが、長期間ベリファイされない事態を回避することができる。
【発明を実施するための最良の形態】
【0014】
本発明の実施の形態に係る携帯電話の構成および制御フローを、図1〜図4を用いて示す。
【0015】
図1を参照して、携帯電話1は、通話機能を実現するために搭載された第1の半導体チップであるCCPU(Communication CPU)10と、ユーザ操作を受け付けたりカメラ機能などを実現したりするために搭載された第2の半導体チップであるACPU(Application CPU)20を有する。CCPU10とACPU20とは別個の半導体チップである。
【0016】
CCPU10は、揮発性メモリであるRAM11と、RAM11に記憶されたプログラムのベリファイを行なうベリファイ回路13と、通話機能を実現する処理回路15を有しているが、不揮発性メモリを有さない。処理回路15、ベリファイ回路13およびRAM11は、システムバス17を介して互いに接続している。
【0017】
ACPU20は、RAM21と、不揮発性メモリであるROM22と、ユーザの操作を受け付け、カメラ機能などを実現するための処理回路25に割り込み信号INTを送信する割り込み処理回路24と、タイマ26とを有する。ROM22には、マスクROMやEEPROMなど、各種の不揮発性メモリを用いることができる。ROM22には、ACPU20の動作を記述したプログラムの他に、CCPU10の動作を記述したプログラムが予め記憶されている。処理回路25、RAM21、ROM22、タイマ26および割り込み処理回路24は、システムバス27を介して互いに接続している。
【0018】
携帯電話1には、その他、ACPU20のROM22からCCPU10のRAM11に外部バス37を介してプログラムを転送するための転送回路30と、充電可能な電池40と、ボタン50と、画面60とを有する。電池40は携帯電話1から取り外すことが可能であり、図示しない配線を介して、CCPU10やACPU20、その他、携帯電話1内の回路や素子に電力を供給する。携帯電話1が折りたたみ式の場合には、折りたたまれた状態(閉状態)か開かれた状態(開状態)かを検出するスイッチ70が設けられている。ボタン50は、電話番号の入力に使用される数字ボタンや電源ボタン等を含む。ボタン50がユーザにより押下されたことや、スイッチ70が折りたたみ式携帯電話の開閉を検出したことを、配線W1,W2を介してACPU20内の割り込み処理回路24が検出し、割り込み処理回路24は処理回路25に割り込み信号INTを送信する。
【0019】
図2を用いて、携帯電話1の制御フローを説明する。
【0020】
ステップS1で、携帯電話1に電池40が装着されたことを検出する。このステップS1は、ACPU20の電源端子に電圧が印加されたことを検出することにより行なわれる。
【0021】
次いで、ステップS2で、転送回路30を介して、ACPU20のROM22に記憶されているCCPU10の動作を記述したプログラムを、CCPU10のRAM11に転送する。転送完了後、プログラムのベリファイを行っても良い。
【0022】
次いで、ステップS3において、ユーザが携帯電話1の電源ボタンを所定時間押し続けたこと(いわゆる電源ボタンの長押し)を検出する。
【0023】
電源ボタンの長押しを検出すると、ステップS4で、CCPU10とACPU20が起動する。
【0024】
次いで、ステップS5で、ACPU20は、自身の起動を割り込み要因として、CCPU10のベリファイ回路13に、ベリファイ指示信号SG1を送信する。
【0025】
次いで、ステップS6でベリファイ周期を初期値にて初期化する。
【0026】
次いで、ステップS7で、ベリファイ指示信号SG1を受信したベリファイ回路13は、CCPU10のRAM11に記憶されたプログラムのチェックサムを計算することによりベリファイを行なう。
【0027】
そして、ステップS8で、ステップS6のベリファイにおいてRAM11に記憶されたプログラムが正常であったか否かを判定する。
【0028】
判定S8の結果、プログラムに異常であった場合には、ベリファイ回路13が転送回路30に転送指示信号SG2を送信し(ステップS9)、転送指示信号SG2を受信した転送回路30は、ACPU20のROM22からCCPU10のRAM11へ、プログラムの再転送を行なう。
【0029】
判定S8の結果、プログラムが正常であった場合には、CCPU10およびACPU20は通常動作を開始する。すなわち、CCPU10は発信および着信を行い、ACPU20はボタン50操作に伴う割り込みやスイッチ70からの割り込みなど、ユーザ操作に起因した割り込みの受け付け、画面60の表示、カメラ機能や音楽機能などを実行する。
【0030】
CCPU10は、ROM22からRAM11に転送されたプログラムに基づいて通常動作を行ない、ACPU20はROM22に記憶されたプログラムに基づいて通常動作を行なう。
【0031】
ステップS10において、通常動作中に、ACPU20がベリファイ周期の経過を検出する。
【0032】
そして、ステップS11において、ACPU20はベリファイ指示信号SG1を送信し、ステップ12において、ACPU20はベリファイ周期を次周期の値に更新する。
【0033】
次いで、ステップ13において、ベリファイ回路13は、チェックサムを計算することにより、CCPU10のRAM11に記憶されたプログラムのベリファイを行なう。
【0034】
そして、ステップS14で、ステップS13のベリファイにおいてRAM11に記憶されたプログラムが正常であったか否かを判定する。
【0035】
判定S14の結果、プログラムが異常であった場合には、ベリファイ回路13が転送回路30に転送指示信号SG2を送信する(ステップS15)。転送指示信号SG2を受信した転送回路30は、ステップS16により、ACPU20のROM22からCCPU10のRAM11へプログラムの再転送を行なう。プログラムの再転送が完了した後、CCPU10とACPU20は通常動作に戻る。
【0036】
判定の結果、プログラムが正常であった場合には、CCPU10およびACPU20は通常動作を再開する。
【0037】
尚、ステップS9において、通常動作中にACPU20がユーザによる電源オフ操作(例えば携帯電話1の電源ボタンの長押し)を検出すると、ACPU20はCCPU10に電源遮断を通知する。その後、CCPU10とACPU20は共にリセットされ、再度ユーザによる電源ボタンの長押しを検出するまで電源がオフした状態となる。
【0038】
図3及び図4を用いて、単位時間における着信呼数から次回のベリファイ周期を求めるロジックを示す。
【0039】
ステップS101で着信呼数カウンタをクリアし、ステップS102で着信呼数を監視する時間を測定するためのタイマをリセットする。
【0040】
ステップS103でタイマ満了を検出するまでの間、着信を受ける度に着信呼数カウンタをカウントアップする。(ステップS104)
【0041】
ステップ103でタイマ満了を検出すると、図4に示すテーブルを参照(ステップS105)し、読み出したベリファイ周期を次回のベリファイ周期値として保持する。(ステップS106)例えば、単位時間あたりの着信呼数が0呼以上TH1呼未満の場合はVint1、単位時間あたりの着信呼数がTH1呼以上TH2回未満の場合はVint2、単位時間あたりの着信呼数がTH2呼以上の場合はVint3を次回のベリファイ周期値とする。ここで保持したベリファイ周期値は、図2のフローのステップ12において設定される値である。
【0042】
着信の頻度に関係なく、一律同じ周期でベリファイ処理を行う場合、図5に示すようにRAM破壊の発生するタイミングとベリファイ処理の実行タイミングとの関係により、着信不可能な状態が長い間継続してしまうことが懸念される。ワーストケースとして、ベリファイ処理実施直後にRAM破壊が生じた場合、次周期におけるベリファイ処理により復旧するまでの間、着信不可能な状態が継続することとなる。
【0043】
本願は、図6に示すように着信の頻度に応じてベリファイ動作の周期を変更することで、着信の多い時間帯にベリファイ処理の実行タイミングを増やし、RAM破壊に起因する不完了呼の数を減らすという効果がある。即ち、着信の多い時間帯において、RAM破壊から次周期のベリファイ処理までの間隔をより短くすることで、着信不可能な時間を短縮し、着信できない呼を可能な限り救済するものである。
【0044】
また、例えば、1日あたりのベリファイ処理の実行回数の総和を変えることなく、着信が集中する時間帯にベリファイ動作の実行タイミングを偏らせることができる。これにより、ベリファイ処理実行をこまめに行うことで無駄に電力を消費してしまうという事態を回避し、効率的にベリファイ処理を行うことができる。
【0045】
さらには、例えば、折り畳み式の携帯電話端末において、筐体を閉じる動作やユーザ操作に基づく消費電力モードへの移行をベリファイ処理のトリガーとすることも可能である。
【0046】
上述した実施の形態では、携帯電話を例にして説明したが、複数のCPUを有し、一方のCPUに用意された不揮発性メモリに、他のCPUのためのプログラムが保持され、他のCPUが動作する際には他のCPUに用意された揮発性メモリに当該プログラムが読み出されるものであれば適用可能であり、特にチップサイズを小さくすることを求められる携帯端末であれば好適である。
【0047】
また、頻度の検出方法として着信を例に説明したが、読み出されたプログラムを保持している揮発性メモリへのアクセス頻度を用いてベリファイの周期を決定してもよい。
【図面の簡単な説明】
【0048】
【図1】本発明の携帯電話の構成を示す図である。
【図2】本発明の携帯電話の制御フローを示す図である。
【図3】本発明における次周期のベリファイ周期値の決定フローを示す図である。
【図4】本発明における単位時間当たりの着信呼数から次周期のベリファイ周期値を 得るためのテーブルを示す図である。
【図5】本発明において定周期でベリファイ動作を行う場合のタイミングチャートで ある。
【図6】本発明において着信の頻度によりベリファイ動作の周期を変更する場合のタ イミングチャートである。
【符号の説明】
【0049】
1 携帯電話
10 CCPU
11 RAM
13 ベリファイ回路
15 処理回路
17 システムバス
20 ACPU
21 RAM
22 ROM
24 割り込み処理回路
26 タイマ
27 システムバス
30 転送回路
37 外部バス
40 電池
50 ボタン
60 画面
70 スイッチ

【特許請求の範囲】
【請求項1】
揮発性メモリを有する第1半導体チップと、不揮発性メモリを有する第2半導体チップとを内蔵する携帯端末の制御方法であって、
前記第2半導体チップの前記不揮発性メモリに記憶されたプログラムを前記第1半導体チップの前記揮発性メモリに転送するステップと、
前記第1および第2半導体チップを起動するステップと、
第1のベリファイ周期があらかじめ設定されたベリファイ周期に基づいて前記第1半導体チップの前記揮発性メモリ内の前記プログラムをベリファイするステップと、
を有することを特徴とする制御方法。
【請求項2】
前記揮発性メモリはリフレッシュ動作を行わない揮発性メモリであることを特徴とする請求項1に記載の制御方法。
【請求項3】
前記ベリファイ周期を変更するステップを更に備えることを特徴とする請求項1または2記載の制御方法。
【請求項4】
前記変更するステップは、前記ベリファイ周期を前記揮発性メモリへのアクセス頻度に応じて変更することを特徴とする請求項3記載の制御方法。
【請求項5】
前記転送するステップは、前記第1及び第2半導体チップへの電力供給を検出するステップを備えることを特徴とする請求項1から請求項4のいずれか一に記載の制御方法。
【請求項6】
前記ベリファイするステップは、前記プログラムが異常であることが検出された場合に、前記プログラムを、前記不揮発性メモリから前記揮発性メモリに再転送するステップをさらに有することを特徴とする請求項1から請求項5のいずれか一に記載の制御方法。
【請求項7】
前記ベリファイするステップの前記ベリファイは、前記揮発性メモリ内の前記プログラムのチェックサムを計算することにより行うことを特徴とする請求項1から請求項6のいずれか一に記載の制御方法。
【請求項8】
前記検出するステップは、前記携帯電話へ電池が装着されたことを検出するステップであることを特徴とする請求項5から請求項7のいずれか一に記載の制御方法。
【請求項9】
前記変更するステップは、着信の頻度が第1の閾値を超えた場合に前記第1のベリファイ周期より小さな第2のベリファイ周期を前記ベリファイ周期に設定することを特徴とする請求項3から請求項8のいずれか一に記載の制御方法。
【請求項10】
前記変更するステップは、前記着信の頻度が第2の閾値を下回った場合に前記第1のベリファイ周期より大きな第3のベリファイ周期を前記ベリファイ周期に設定することを特徴とする請求項3から請求項9のいずれか一に記載の制御方法。
【請求項11】
前記変更するステップは、単位時間当たりの着信回数に基づいて前記着信の頻度を決定するステップを備えることを特徴とする請求項3から請求項10のいずれか一に記載の制御方法。
【請求項12】
前記変更するステップは、前記携帯電話が省電力モードに移行しているか否かに基づいて前記ベリファイ周期を更新するステップを備えることを特徴とする請求項3から請求項11のいずれか一に記載の制御方法。
【請求項13】
前記起動するステップは、ユーザが前記携帯電話の電源ボタンを所定時間押下したことを検出したことに応じて行なわれることを特徴とする請求項1から請求項12のいずれか一に記載の制御方法。
【請求項14】
前記第1半導体チップは不揮発性メモリを有さないことを特徴とする請求項1から請求項13のいずれか一に記載の制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2009−181158(P2009−181158A)
【公開日】平成21年8月13日(2009.8.13)
【国際特許分類】
【出願番号】特願2008−17297(P2008−17297)
【出願日】平成20年1月29日(2008.1.29)
【出願人】(302062931)NECエレクトロニクス株式会社 (8,021)
【Fターム(参考)】