(57)【要約】      （修正有）【課題】ＰＤＡ統合型移動通信端末機において、プログラムのアップデートに失敗した後に、プログラムの強制ダウンロードを実行できるようにする。【解決手段】移動通信端末機のメモリをブートバイナリ領域とメインバイナリ領域とに分割し（Ｓ２１）、プログラムをブートプログラムとメインプログラムとに分割して各々の領域に保存する（Ｓ２２）。そして、ダウンロードの成功または失敗によってその状態値を特定番地に書込み（Ｓ２３）、端末機のブート時にその特定番地の値を読み出して、プログラムアップデートが不完全なために端末機の駆動が難しいと判断される場合、プログラム強制ダウンロードモードに自動的に切り替える。【選択図】図２
2006065857.tif 000002
【特許請求の範囲】
【請求項１】
（ａ）移動通信端末機のメモリをブートバイナリ領域とメインバイナリ領域とに分割する過程と、
（ｂ）プログラムをブートプログラムとメインプログラムとに分割して、前記分割された該当領域にダウンロードする過程と、
（ｃ）前記プログラムのダウンロード時、そのダウンロードが成功したか否かを特定番地に書き込む過程と、
（ｄ）前記特定番地の値を読み出してプログラム強制ダウンロードモードに進むかどうかを判断する過程と、
を含むことを特徴とする移動通信端末機のプログラム強制ダウンロード方法。
【請求項２】
前記移動通信端末機が、携帯電話機能を備えたＰＤＡであることを特徴とする請求項１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項３】
前記ブートバイナリ領域が、ブートシーケンスに関する関数を含むことを特徴とする請求項１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項４】
前記ブートバイナリ領域が、通信モジュールの初期化駆動アルゴリズムと、ＲＡＭ及びＲＯＭの初期化関連プログラムと、通信ポートの初期化関連プログラムと、特定データの転送率が連続的に維持されるように設定するための関数とを含むことを特徴とする請求項１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項５】
前記ブートバイナリ領域が、通信モジュールとＰＤＡモジュール間の送受信を行う通信ポートを介したプログラムダウンロードを可能にする該当ドライバを含むことを特徴とする請求項１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項６】
前記通信ポートが、ＵＡＲＴ２であることを特徴とする請求項５に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項７】
前記メインバイナリ領域が、ブートシーケンスに関する関数を除いた関数を含むことを特徴とする請求項１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項８】
前記の過程（ａ）において、
前記ブートバイナリ領域とメインバイナリ領域とが、前記移動通信端末機のメモリに物理的に分割されることを特徴とする請求項１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項９】
前記の過程（ｃ）において、
前記特定番地が、前記ブートバイナリ領域に位置することを特徴とする請求項１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項１０】
前記の過程（ｃ）において、
前記移動通信端末機に前記プログラムが正常にダウンロードされた場合と正常にダウンロードされていない場合とでは、前記特定番地に書き込まれる値が異なることを特徴とする請求項１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項１１】
前記の過程（ｄ）において、
前記特定番地の値を読み出して、その値が前記プログラムが完全にダウンロードされていない場合に該当すると、プログラム強制ダウンロードモードに進むことを特徴とする請求項１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項１２】
前記の過程（ｄ）において、
前記特定番地の値を読み出して、その値が前記プログラムが正常にダウンロードされた場合に該当すると、正常なブートを行うことを特徴とする請求項１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項１３】
（ｅ）プログラム強制ダウンロードモードに進んだ場合、前記プログラムをダウンロードする通信ポートを選択する過程と、
（ｆ）前記選択された通信ポートを介して前記プログラムをダウンロードする過程と、
をさらに含むことを特徴とする請求項１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項１４】
前記の過程（ｅ）において、
前記移動通信端末機内の通信モジュールの特定ポートの値を検出して通信ポートを選択することを特徴とする請求項１３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項１５】
前記特定ポートの値が、使用者のスイッチの操作により決定されることを特徴とする請求項１４に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項１６】
前記の過程（ｅ）において、
前記通信ポートが、ＰＤＡモジュールと通信モジュール間でデータを送受信する通信ポートを含むことを特徴とする請求項１３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項１７】
前記の過程（ｅ）において、
前記通信ポートが、外部インターフェースコネクタを介してＰＣに接続されてプログラムをダウンロードする通信ポートを含むことを特徴とする請求項１３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項１８】
前記の過程（ｆ）において、
別途の外部インターフェースコネクタによらず、前記移動通信端末機をＰＣに接続してＰＤＡモジュールに前記プログラムをダウンロードした後、再びＰＤＡモジュールと通信モジュール間の通信を行う通信ポートを介して前記プログラムをダウンロードすることを特徴とする請求項１３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項１９】
移動通信端末機にプログラムをダウンロードする場合において、
メモリをブートバイナリ領域とメインバイナリ領域とに区分し、これらのバイナリ領域を併合するマージプログラムを実行する過程と、
前記移動通信端末機に所定のバイナリプログラムをダウンロードするとき、そのダウンロードが成功したか否かの状態を所定の値で特定番地に書き込む過程と、
を含むことを特徴とする移動通信端末機のプログラム強制ダウンロード方法。
【請求項２０】
前記移動通信端末機を再ブートする場合、前記特定番地の値を読み出して、その値が前記バイナリプログラムが完全にダウンロードされていない場合に該当すると、プログラム強制ダウンロードモードに進む過程をさらに含むことを特徴とする請求項１９に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項２１】
前記特定番地が、前記ブートバイナリ領域に位置することを特徴とする請求項１９に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項２２】
前記特定番地に書き込まれた値が、前記移動通信端末機に電源を供給してブートするごとに読み出されることを特徴とする請求項１９に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項２３】
移動通信端末機にアップデートプログラムをダウンロードする場合、前記プログラムからブートプログラムを分離してメモリのブートバイナリ領域にダウンロードし、そのダウンロードが成功したか否かを前記ブートバイナリ領域の特定番地に書き込むことを特徴とする移動通信端末機のプログラム強制ダウンロード方法。
【請求項２４】
前記移動通信端末機に電源を供給すると、前記ブートバイナリ領域に保存されたブートプログラムにより、前記移動通信端末機がブートされることを特徴とする請求項２３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項２５】
前記移動通信端末機のブート時、前記特定番地の値を読み出して、その値によって前記プログラムを再びダウンロードするためのプログラム強制ダウンロードモードに進むことを特徴とする請求項２３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項２６】
前記ブートプログラムが、前記移動通信端末機をブートするごとに、プログラムアップデートが正常に行われたか否かをチェックすることを特徴とする請求項２３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項２７】
前記ブートプログラムが、プログラムアップデートが不完全なために前記移動通信端末機の駆動が難しいと判断される場合、プログラム強制ダウンロードモードに切り替える関数を含むことを特徴とする請求項２３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項２８】
移動通信端末機がプログラム強制ダウンロードモードに進んだ場合、ＰＣからＰＤＡモジュールにプログラムをダウンロードした後、前記プログラムを使用者が選択した通信ポートを介して通信モジュールに再びダウンロードすることを特徴とする移動通信端末機のプログラム強制ダウンロード方法。
【請求項２９】
使用者が前記移動通信端末機に備えられたスイッチにより前記プログラムをダウンロードする通信ポートを設定すると、前記通信モジュールの特定ポートのレベル値によって、前記プログラムが強制ダウンロードされるポートが決定されることを特徴とする請求項２８に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項３０】
ブートバイナリ領域とメインバイナリ領域とが物理的に分割され、前記ブートバイナリ領域にはブートシーケンスを行うブートプログラムが保存され、ブートするごとに以前のプログラムアップデートが成功したか否かが書き込まれる特定番地を含むメモリと、
移動通信端末機がプログラム強制ダウンロードモードに進んだ場合、プログラムダウンロードを行う通信ポートを選択するためのスイッチと、
を含むことを特徴とする移動通信端末機のプログラム強制ダウンロード方法。
【請求項３１】
前記スイッチが、プルアップ−プルダウンスイッチであることを特徴とする請求項３０に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項３２】
前記スイッチが、前記通信モジュールの特定ポートのレベル値を決定することを特徴とする請求項３０に記載の移動通信端末機のプログラム強制ダウンロード方法。
【請求項３３】
前記特定ポートが、ＧＰＩＯピン（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ  ａｎｄ  Ｏｕｔｐｕｔ  ｐｉｎ）であることを特徴とする請求項３０に記載の移動通信端末機のプログラム強制ダウンロード方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動通信端末機のプログラム強制ダウンロード方法に関し、特に、ＰＤＡ統合型移動通信端末機においてブートバイナリ（ｂｏｏｔ  ｂｉｎａｒｙ）の生成によるプログラム強制ダウンロード方法及び装置に関する。
【背景技術】
【０００２】
移動通信端末機（以下、「端末機」という）には、製造過程でファームウェアプログラムが搭載されるのが一般的である。しかしながら、市販の端末機にエラーが発生するか、又は端末機に搭載されたプログラムをアップデートする場合、アフターサービスセンターからプログラムを再びダウンロードしなければならない。
【０００３】
ところが、前記プログラムのダウンロード（アップデート）中に、端末機の電源がオフになるか、又はＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）がシャットダウンする事故が発生すると、前記プログラムのダウンロード（アップデート）に失敗することがある。このような場合、前記ダウンロード過程が正常に完了していないため、端末機の正常なブートが事実上不可能になる状況が発生する。
【０００４】
従って、端末機には、このような状況の発生時、指定された特定キー（ボタン）を押してプログラム強制ダウンロードモードに進む手段が備えられる。
【０００５】
しかしながら、ＰＤＡ統合型端末機（「ＰＤＡフォン」ともいう）の場合、キースキャンを通信モジュール（例えば、ＣＤＭＡモジュール又はＭＳＭ）自体で行うのではなく、ＰＤＡモジュールでキースキャンした結果値を所定の通信ポート（「ＵＡＲＴ２」ともいう）を介して通信モジュールに伝達して処理する構造からなっており、前述のプログラム強制ダウンロードモード切替方法を適用することができなかった。
【０００６】
図６に示すように、ＰＤＡ統合型端末機は、ＰＤＡ機能を行うＰＤＡモジュールと携帯電話機能を行う通信モジュールとが分離されており、その機能及び役割が異なる。ＰＤＡモジュールと通信モジュール間では、通信ポート（ＵＡＲＴ２）を介してコントロールパケットが送受信され、特に、通信モジュールには、他の通信ポート（ＵＡＲＴ１）が接続されて、外部インターフェースコネクタを介してバイナリプログラムをダウンロードする構造からなっている。端末機が正常なブートが不可能な状態となってプログラム強制ダウンロードモードに切り替えなければならない場合、一般的な端末機のキーパッドのキーを押すキースキャンを通信モジュール（例えば、ＣＤＭＡモジュール又はＭＳＭ）自体が認識して該当機能を行うのではなく、ＰＤＡモジュールがキースキャンを認識してその結果値を通信ポート（ＵＡＲＴ２）を介して通信モジュールに伝達して処理する。
【０００７】
従って、ＰＤＡ統合型端末機は、通信モジュールが正常にブートした後、ＰＤＡモジュールとの直列通信を担当する特定タスクが円滑に動作しなければ、ＰＤＡモジュールが伝達されるキーを認識することができない。即ち、通信モジュールへのバイナリプログラムのダウンロード時、ある原因によりその作業が正常に完了しない場合、通信モジュールが正常にブートしないため、ＰＤＡモジュールと通信モジュール間に通信が行われない。従って、従来のように、特定キー（ボタン）を押してプログラム強制ダウンロードモードに進もうとしてもキーを認識できないため、従来の方法を適用できないという問題があった。
【０００８】
また、ＰＤＡ統合型端末機は、全ての通信ポート（例えば、ＵＡＲＴ１及びＵＡＲＴ２）でバイナリプログラムのダウンロードができるように設計されているが、特に、ＵＡＲＴ１は、製品の製造時に使用され、ＵＡＲＴ２は、使用者が端末機メーカーのインターネットサイトに接続してバイナリファイルをダウンロードして直接アップデートする場合に使用される。
【０００９】
より詳しくは、ＵＡＲＴ１は、端末機の量産時、バイナリプログラムのダウンロード、ＲＦ調整（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ  ｃａｌｉｂｒａｔｉｏｎ）、Ｃａｉｔ及びＤＭ（Ｄｉａｇｎｏｓｔｉｃ  Ｍｏｎｉｔｏｒｉｎｇ）、スクリプト、ＰＲＬリード／ライトに使用され、ＵＡＲＴ２は、ＰＤＡモジュールと通信モジュール間でコントロールパケットを送受信するか、又は使用者が端末機メーカーのインターネットサイトに接続してバイナリファイルをＰＣにダウンロードした後、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）に接続されたＰＤＡにコピーして、オンラインアップデート機能を自ら行う場合に使用される。ところが、従来の技術は、特定ポート（ＵＡＲＴ１）のみで強制ダウンロードを行うようになっている。しかしながら、ＵＡＲＴ１を介して強制ダウンロード機能を行うためには、量産時に端末機メーカーが特別に製作したインターフェースコネクタ（２４ピンコネクタであり、「ＬＴ」ともいう）を必要とする。従って、使用者が自らバイナリプログラムをアップデートする途中に障害が発生してそのアップデートに失敗した場合、前記インターフェースコネクタを備えなくては強制ダウンロード機能を行うことができないという問題があった。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
本発明は、このような従来技術の問題を解決するためになされたもので、端末機の特定キースキャンを認識せずとも、端末機のプログラム強制ダウンロードモードに進む方法を提供することを目的とする。
【００１１】
また、本発明の他の目的は、プログラム強制ダウンロードモードに進んだ後、使用者が通信ポートを選択してプログラム強制ダウンロードを実行する方法及び装置を提供することにある。
【課題を解決するための手段】
【００１２】
このような目的を達成するために、本発明による移動通信端末機のプログラム強制ダウンロード方法は、（ａ）移動通信端末機のメモリをブートバイナリ領域とメインバイナリ領域とに分割する過程と、（ｂ）プログラムをブートプログラムとメインプログラムとに分割して、前記分割された該当領域にダウンロードする過程と、（ｃ）前記プログラムのダウンロード時、そのダウンロードが成功したか否かを特定番地に書き込む過程と、（ｄ）前記特定番地の値を読み出してプログラム強制ダウンロードモードに進むかどうかを判断する過程とを含むことを特徴とする。
【００１３】
好ましくは、（ｅ）プログラム強制ダウンロードモードに進んだ場合、プログラムをダウンロードする通信ポートを選択する過程と、（ｆ）前記選択された通信ポートを介してプログラムをダウンロードする過程とをさらに含む。
【００１４】
好ましくは、前記の過程（ｄ）において、前記特定番地の値を読み出して、その値が前記プログラムが完全にダウンロードされていない場合に該当すると、プログラム強制ダウンロードモードに進む。
【００１５】
・（項目１）  （ａ）移動通信端末機のメモリをブートバイナリ領域とメインバイナリ領域とに分割する過程と、
（ｂ）プログラムをブートプログラムとメインプログラムとに分割して、上記分割された該当領域にダウンロードする過程と、
（ｃ）上記プログラムのダウンロード時、そのダウンロードが成功したか否かを特定番地に書き込む過程と、
（ｄ）上記特定番地の値を読み出してプログラム強制ダウンロードモードに進むかどうかを判断する過程と、
を含むことを特徴とする移動通信端末機のプログラム強制ダウンロード方法。
【００１６】
・（項目２）  上記移動通信端末機が、携帯電話機能を備えたＰＤＡであることを特徴とする項目１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００１７】
・（項目３）  上記ブートバイナリ領域が、ブートシーケンスに関する関数を含むことを特徴とする項目１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００１８】
・（項目４）  上記ブートバイナリ領域が、通信モジュールの初期化駆動アルゴリズムと、ＲＡＭ及びＲＯＭの初期化関連プログラムと、通信ポートの初期化関連プログラムと、特定データの転送率が連続的に維持されるように設定するための関数とを含むことを特徴とする項目１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００１９】
・（項目５）  上記ブートバイナリ領域が、通信モジュールとＰＤＡモジュール間の送受信を行う通信ポートを介したプログラムダウンロードを可能にする該当ドライバを含むことを特徴とする項目１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００２０】
・（項目６）  上記通信ポートが、ＵＡＲＴ２であることを特徴とする項目５に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００２１】
・（項目７）  上記メインバイナリ領域が、ブートシーケンスに関する関数を除いた関数を含むことを特徴とする項目１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００２２】
・（項目８）  上記の過程（ａ）において、
上記ブートバイナリ領域とメインバイナリ領域とが、上記移動通信端末機のメモリに物理的に分割されることを特徴とする項目１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００２３】
・（項目９）  上記の過程（ｃ）において、
上記特定番地が、上記ブートバイナリ領域に位置することを特徴とする項目１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００２４】
・（項目１０）  上記の過程（ｃ）において、
上記移動通信端末機に上記プログラムが正常にダウンロードされた場合と正常にダウンロードされていない場合とでは、上記特定番地に書き込まれる値が異なることを特徴とする項目１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００２５】
・（項目１１）  上記の過程（ｄ）において、
上記特定番地の値を読み出して、その値が上記プログラムが完全にダウンロードされていない場合に該当すると、プログラム強制ダウンロードモードに進むことを特徴とする項目１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００２６】
・（項目１２）  上記の過程（ｄ）において、
上記特定番地の値を読み出して、その値が上記プログラムが正常にダウンロードされた場合に該当すると、正常なブートを行うことを特徴とする項目１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００２７】
・（項目１３）  （ｅ）プログラム強制ダウンロードモードに進んだ場合、上記プログラムをダウンロードする通信ポートを選択する過程と、
（ｆ）上記選択された通信ポートを介して上記プログラムをダウンロードする過程と、
をさらに含むことを特徴とする項目１に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００２８】
・（項目１４）  上記の過程（ｅ）において、
上記移動通信端末機内の通信モジュールの特定ポートの値を検出して通信ポートを選択することを特徴とする項目１３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００２９】
・（項目１５）  上記特定ポートの値が、使用者のスイッチの操作により決定されることを特徴とする項目１４に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００３０】
・（項目１６）  上記の過程（ｅ）において、
上記通信ポートが、ＰＤＡモジュールと通信モジュール間でデータを送受信する通信ポートを含むことを特徴とする項目１３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００３１】
・（項目１７）  上記の過程（ｅ）において、
上記通信ポートが、外部インターフェースコネクタを介してＰＣに接続されてプログラムをダウンロードする通信ポートを含むことを特徴とする項目１３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００３２】
・（項目１８）  上記の過程（ｆ）において、
別途の外部インターフェースコネクタによらず、上記移動通信端末機をＰＣに接続してＰＤＡモジュールに上記プログラムをダウンロードした後、再びＰＤＡモジュールと通信モジュール間の通信を行う通信ポートを介して上記プログラムをダウンロードすることを特徴とする項目１３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００３３】
・（項目１９）  移動通信端末機にプログラムをダウンロードする場合において、
メモリをブートバイナリ領域とメインバイナリ領域とに区分し、これらのバイナリ領域を併合するマージプログラムを実行する過程と、
上記移動通信端末機に所定のバイナリプログラムをダウンロードするとき、そのダウンロードが成功したか否かの状態を所定の値で特定番地に書き込む過程と、
を含むことを特徴とする移動通信端末機のプログラム強制ダウンロード方法。
【００３４】
・（項目２０）  上記移動通信端末機を再ブートする場合、上記特定番地の値を読み出して、その値が上記バイナリプログラムが完全にダウンロードされていない場合に該当すると、プログラム強制ダウンロードモードに進む過程をさらに含むことを特徴とする項目１９に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００３５】
・（項目２１）  上記特定番地が、上記ブートバイナリ領域に位置することを特徴とする項目１９に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００３６】
・（項目２２）  上記特定番地に書き込まれた値が、上記移動通信端末機に電源を供給してブートするごとに読み出されることを特徴とする項目１９に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００３７】
・（項目２３）  移動通信端末機にアップデートプログラムをダウンロードする場合、上記プログラムからブートプログラムを分離してメモリのブートバイナリ領域にダウンロードし、そのダウンロードが成功したか否かを上記ブートバイナリ領域の特定番地に書き込むことを特徴とする移動通信端末機のプログラム強制ダウンロード方法。
【００３８】
・（項目２４）  上記移動通信端末機に電源を供給すると、上記ブートバイナリ領域に保存されたブートプログラムにより、上記移動通信端末機がブートされることを特徴とする項目２３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００３９】
・（項目２５）  上記移動通信端末機のブート時、上記特定番地の値を読み出して、その値によって上記プログラムを再びダウンロードするためのプログラム強制ダウンロードモードに進むことを特徴とする項目２３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００４０】
・（項目２６）  上記ブートプログラムが、上記移動通信端末機をブートするごとに、プログラムアップデートが正常に行われたか否かをチェックすることを特徴とする項目２３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００４１】
・（項目２７）  上記ブートプログラムが、プログラムアップデートが不完全なために上記移動通信端末機の駆動が難しいと判断される場合、プログラム強制ダウンロードモードに切り替える関数を含むことを特徴とする項目２３に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００４２】
・（項目２８）  移動通信端末機がプログラム強制ダウンロードモードに進んだ場合、ＰＣからＰＤＡモジュールにプログラムをダウンロードした後、上記プログラムを使用者が選択した通信ポートを介して通信モジュールに再びダウンロードすることを特徴とする移動通信端末機のプログラム強制ダウンロード方法。
【００４３】
・（項目２９）  使用者が上記移動通信端末機に備えられたスイッチにより上記プログラムをダウンロードする通信ポートを設定すると、上記通信モジュールの特定ポートのレベル値によって、上記プログラムが強制ダウンロードされるポートが決定されることを特徴とする項目２８に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００４４】
・（項目３０）  ブートバイナリ領域とメインバイナリ領域とが物理的に分割され、上記ブートバイナリ領域にはブートシーケンスを行うブートプログラムが保存され、ブートするごとに以前のプログラムアップデートが成功したか否かが書き込まれる特定番地を含むメモリと、
移動通信端末機がプログラム強制ダウンロードモードに進んだ場合、プログラムダウンロードを行う通信ポートを選択するためのスイッチと、
を含むことを特徴とする移動通信端末機のプログラム強制ダウンロード方法。
【００４５】
・（項目３１）  上記スイッチが、プルアップ−プルダウンスイッチであることを特徴とする項目３０に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００４６】
・（項目３２）  上記スイッチが、上記通信モジュールの特定ポートのレベル値を決定することを特徴とする項目３０に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００４７】
・（項目３３）  上記特定ポートが、ＧＰＩＯピン（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ  ａｎｄ  Ｏｕｔｐｕｔ  ｐｉｎ）であることを特徴とする項目３０に記載の移動通信端末機のプログラム強制ダウンロード方法。
【００４８】
（摘要）
本発明は、ＰＤＡ統合型移動通信端末機においてブートバイナリ（ｂｏｏｔ  ｂｉｎａｒｙ）の生成によるプログラム強制ダウンロード方法及び装置を提供する。
【００４９】
移動通信端末機のプログラム強制ダウンロード方法は、移動通信端末機のメモリをブートバイナリ領域とメインバイナリ領域とに分割する過程と、プログラムをブートプログラムとメインプログラムとに分割して、前記分割された該当領域にダウンロードする過程と、前記プログラムのダウンロード時、そのダウンロードが成功したか否かを特定番地に書き込む過程と、前記特定番地の値を読み出してプログラム強制ダウンロードモードに進むかどうかを判断する過程とを含む。
【発明の効果】
【００５０】
本発明による移動通信端末機のプログラム強制ダウンロード方法においては、キースキャンをせずとも、ブート時、自動的にプログラムアップデート状態によって、プログラム強制ダウンロードモードへの進入を判断することにより、ＰＤＡモジュールと通信モジュール（ＣＤＭＡモジュール）とが個別に駆動して相互間の通信により運用されるＰＤＡ統合型端末機に適用できるという効果がある。
【００５１】
また、本発明によるＰＤＡ統合型移動通信端末機のプログラム強制ダウンロード方法においては、２つ以上の通信ポート（ＵＡＲＴ１、ＵＡＲＴ２）でアップデートのためのプログラムダウンロード中に、エラーが発生して正常なブートが行われないことによってプログラム強制ダウンロードモードに進んだ場合、その状況によって使用者がプログラムをダウンロードする通信ポートを直接選択してダウンロードを行うことができるという効果がある。
【００５２】
従って、端末機の使用者が直接プログラムをアップデートし、アップデート中に障害が発生しても、使用者が端末機をブートしてアップデートプログラムを再びダウンロードすることができるため、使用者はアフターサービスセンターを訪問する必要がないので便利であり、端末機メーカーはアフターサービスコストの削減及び製品信頼性の向上を図ることができるという効果がある。
【発明を実施するための最良の形態】
【００５３】
本発明は、ＰＤＡ統合型端末機で実現されるが、他の標準に準拠して動作する端末機にも適用することができる。
【００５４】
本発明の基本概念は、端末機のメモリ領域を物理的にブートバイナリ領域とメインバイナリ領域とに分離し、前記ブートバイナリ領域及びメインバイナリ領域にそれぞれブートプログラム及びメインプログラムを保存して、端末機をブートするごとに前記ブートプログラムが特定番地の値を読み出して最近のプログラムアップデートが正常に行われたか否かを確認した後、プログラムアップデートが不完全なために端末機の駆動が難しいと判断される場合、プログラム強制ダウンロードモードに自動的に切り替える方法を提供するものであり、プログラム強制ダウンロードモードに進むと、使用者の選択により、ＵＡＲＴ１だけでなくＵＡＲＴ２を介してもプログラムダウンロードが行われるようにするものである。
【００５５】
以下、本発明の好ましい実施形態について添付の図面を参照して説明する。但し、同一符号のものはその動作及び機能が同様である。
【００５６】
図１は、本発明による移動通信端末機のプログラムメモリのマップ構成を示す図である。従来はメモリに１つのバイナリ領域のみを構成して、０番地（０ｘ００００）からブートプログラムを含むメインプログラムを保存し、最後の番地から所定の領域にデータを保存するようにしていた。しかしながら、本発明においては、図１に示すように、メモリを物理的にブートバイナリ領域１０１とメインバイナリ領域１０２とに分離し、０番地（０ｘ００００）から所定の領域（ブートバイナリ領域１０１）にブートプログラムを保存し、その後、所定の番地（０ｘ１００００）から所定の領域（メインバイナリ領域）にメインプログラムを保存する。
【００５７】
ここで、ブートバイナリ領域１０１に保存されるブートプログラムは、ブートシーケンスに関するものであり、通信モジュール（例えば、ＭＳＭチップ）の初期駆動アルゴリズム、ＲＡＭ及びＲＯＭの初期化関連プログラム、通信ポート（例えば、ＵＡＲＴ）の初期化関連プログラムをはじめとするプログラムを、所定のデータ転送速度（例えば、ボーレート）で連続的にダウンロードできるようにする関数を含む。また、ブートバイナリ領域１０１には、ＵＡＲＴ１だけでなくＵＡＲＴ２を介してもダウンロード可能に、関連プログラム（例えば、ＵＡＲＴ２のドライバ）ないし関数がさらに含まれる。
【００５８】
また、前記メインバイナリ領域に保存されるメインプログラムは、前記ブートシーケンスに関する関数を除いた、端末機の運用に関する関数を含む。
【００５９】
このように、ブートバイナリ領域とメインバイナリ領域とを分離して、各該当領域にブートプログラム及びメインプログラムを保存するためには、マージプログラムが要求される。これは、端末機にダウンロード対象のプログラムをコンパイルする時、１つのバイナリプログラムが生成されるためである。従って、前記マージプログラムにより前記ブートプログラムと前記メインプログラムとを併合して、最終的に１つの実行プログラムとして運用するようにし、物理的に分離されたメモリ領域（例えば、ブートバイナリ領域及びメインバイナリ領域）を指定して、その領域にそれぞれ該当プログラム（ブートプログラム及びメインプログラム）を保存する。
【００６０】
また、前記ブートプログラムは、端末機のブートシーケンスに関する関数の他にも、端末機をブートするごとに正常にプログラムアップデートが行われたか否かをチェックして、プログラムアップデートが不完全なために端末機の駆動が難しいと判断される場合、プログラム強制ダウンロードモードに自動的に切り替える関数をさらに含む。
【００６１】
ここで、プログラム強制ダウンロードモードに自動的に切り替える過程を簡略に説明すると、プログラムアップデート時、正常にアップデートが行われたか否かによって、特定メモリ番地（０ｘＦＦＦＥ）に所定の状態値（正常状態値：０ｘＡＢ、エラー状態値：０ｘＦＦ又は０ｘ００）を書き込み、端末機のブート時、前記該当番地の値をチェックして、正常状態値（０ｘＡＢ）が書き込まれているとブートを続け、エラー状態値（０ｘＦＦ又は０ｘ００）が書き込まれているとプログラム強制ダウンロードモードに切り替える。
【００６２】
もちろん、前記アップデートされたプログラムに異常がない場合、正常にブートを完了し、マージ関数によりブートプログラムとメインプログラムとを１つに併合するため、以降、端末機の駆動やプログラムアップデートには全く問題が発生しない。
【００６３】
また、図１の構成で説明が省略されたデータ領域１０３は、リード／ライトが可能な領域であり、電話帳データなどの保存に使用される領域である。
【００６４】
図２は、本発明による移動通信端末機にプログラムをアップデートするためのダウンロード過程を示すフローチャートである。
【００６５】
図２に示すように、端末機の通信ポート（ＵＡＲＴ）に通信ポートケーブルを差し込んでＰＣに接続した後、ＰＣに備えられているダウンロード（アップデート）ツールを利用してプログラムアップデートを行う。このとき、そのアップデートプログラムがブートプログラムとメインプログラムとに分離されてダウンロードされるように、ダウンロード（アップデート）ツールを利用して、メモリにブートバイナリ領域とメインバイナリ領域とを設定する（Ｓ２１）。ここで、ブートバイナリ領域は、メモリの０ｘ００００番地から０ｘＦＦＦＦ番地までを使用し、メインバイナリ領域は、メモリの０ｘ１００００番地から０ｘ３７ＦＦＦＦ番地までを使用する。
【００６６】
次に、前記ブートプログラム及びメインプログラムをダウンロードして前記各該当領域に保存する（Ｓ２２）。ここで、前記ブートプログラムには、端末機の通信モジュール、ＲＡＭ、ＲＯＭ、通信ポート（ＵＡＲＴ）などの初期化に必要な関数及び変数が含まれ、前記メインプログラムには、ブートシーケンスを除いたプログラムが含まれる。また、前記メモリに分離されて保存されたブートプログラム及びメインプログラムは、マージプログラムにより併合されて、１つの統合されたバイナリプログラムとして運用される。
【００６７】
次に、前記の過程Ｓ２２で、前記ダウンロード（アップデート）ツールは、前記ダウンロードが正常に完了したか失敗したかを点検して、その状態をブートバイナリ領域の特定番地に書き込む（Ｓ２３）。即ち、ダウンロードが正常に完了すると、メモリの特定番地（例えば、０ｘＦＦＦＥ番地）に正常状態値（例えば、０ｘＡＢ）が書き込まれる。しかしながら、前記プログラムのダウンロード中にある障害が発生して、ダウンロード作業が中断されるか、正常に行われなかった場合（即ち、ダウンロードに失敗した場合）、メモリの特定番地（例えば、０ｘＦＦＦＥ番地）にエラー状態値（例えば、０ｘＦＦ又は０ｘ００）が書き込まれる。従って、前記特定番地の値をチェックすると、アップデートプログラムのダウンロードが成功したか失敗したかを確認することができる。図２に示すような過程によりプログラムをアップデートした後、端末機に電源を供給すると、ブートシーケンスによって端末機がブートされ、アップデートされたプログラムが実行される。
【００６８】
図３は、本発明による移動通信端末機のブート過程を示すフローチャートである。
【００６９】
図３に示すように、端末機に電源が供給されると、ブートシーケンスによってブートプログラムがハードウェアを初期化する（Ｓ３０）。まず、メモリ（ＲＡＭ及びＲＯＭ）を初期化し（Ｓ３１）、通信モジュールを初期化し、Ｍｕｘ設定を変更して通信ポートを設定し（例えば、通信モジュールのＧＰＩＯポートの設定、システムクロックの設定など）（Ｓ３２）、メモリ（ＲＡＭ）テスト過程を行う（Ｓ３３）。
【００７０】
前記のハードウェア初期化過程（Ｓ３１〜Ｓ３３）は、端末機を駆動したり、プログラム強制ダウンロードモードに進むために必ず必要な過程であり、前記の過程（Ｓ３１〜Ｓ３３）が全て行われた後、最近のプログラムアップデートが正常に完了したか否かをチェックする（Ｓ３４）。即ち、ブートプログラムは、メモリの特定番地（例えば、０ｘＦＦＦＥ番地）の値を読み出し、その状態値によって、正常なブートシーケンス過程どおりブートするか、それとも、プログラム強制ダウンロードモードに進んでプログラムダウンロード（アップデート）を再び実行するかを決定する。
【００７１】
このように、特定メモリ番地（０ｘＦＦＦＥ）に書き込まれた所定の状態値をチェックして、正常状態値（０ｘＡＢ）が書き込まれていると、メインプログラムが保存された番地（０ｘ１００００）に分岐してブートを続け（Ｓ４０、Ｓ５０）、エラー状態値（０ｘＦＦ又は０ｘ００）が書き込まれていると、プログラム強制ダウンロードモードに切り替わる（Ｓ６０）。
【００７２】
また、前記の過程Ｓ６０に進む場合は、正常にダウンロードされていないプログラムを再びダウンロードするために、図２に示すプログラムアップデート過程（Ｓ２０）に移って、強制的にプログラムダウンロードを再実行する（Ｓ７０）。
【００７３】
このように、プログラム強制ダウンロードモードに進んだ後、使用者は通信ポートを選択してプログラムダウンロードを行うことができる。
【００７４】
以下、通信ポートを選択してプログラムダウンロード（又は、アップデート）を行う過程について説明する。
【００７５】
図４は、本発明の実施形態として、通信ポートを選択してプログラム強制ダウンロードを実現する移動通信端末機の概略構成図である。図示のように、本発明による端末機は、図１に示す機能を行うメモリ１００と、使用者がプログラムをダウンロードするための通信ポート（例えば、ＵＡＲＴ１又はＵＡＲＴ２）を選択するためのスイッチ３０１とを含む。
【００７６】
図５は、本発明の実施形態として、通信ポートを選択してプログラム強制ダウンロードを行う過程を示すフローチャートである。
【００７７】
図４及び図５を参照すると、使用者が端末機メーカーのインターネットサイトに接続して自分が持っている特定端末機モデルのキャビネットファイルを自分のＰＣにダウンロードした後、アプリケーションツール（例えば、アクティブＳｙｎｃ）又はメモリカードを利用してＰＤＡモジュールにコピーし、そのキャビネットファイルを実行して通信モジュール（ＣＤＭＡモジュール）のバイナリプログラムのアップデートを行う。ここで、キャビネットファイルとは、アップデートするプログラムファイル（バイナリファイル）とそのプログラムアップデート時に使用するツール（アプリケーション）とを１つにしたファイルをいう。
【００７８】
もし、アップデート中にＰＤＡの電源がオフになるか、又は使用者のミスでＰＤＡのバッテリーが本体から分離されるなど、不可避な通信上の障害が発生した場合、ＰＤＡをリセットしなければならず、これにより、通信モジュールに供給されていた電源がオフになった後、再び供給されて再ブートが行われる。
【００７９】
このように、通信モジュール（例えば、ＣＤＭＡモジュール又はＭＳＭチップ）が再ブートされると、正常動作を行うために、メモリ（ＲＡＭ、ＲＯＭ）を初期化し（Ｓ３１）、通信モジュールを初期化し（例えば、ＭＳＭチップのハードウェアレジスタ値の初期化）、ＭＵＸ設定を変更して通信ポートを設定し（例えば、通信モジュールのＧＰＩＯポートの設定、システムクロックの設定など）（Ｓ３２）、メモリ（ＲＡＭ）テスト過程を行う（Ｓ３３）。
【００８０】
前記全てのハードウェアの初期化作業を行った後（Ｓ３１〜Ｓ３３）、フラッシュメモリ（ｆｌａｓｈ  ＲＯＭ）領域の特定番地（０ｘＦＦＦＥ）の値を読み出して、既存のプログラムアップデート過程が正しく行われたか否かを検査する（Ｓ３４）。
【００８１】
即ち、プログラムアップデート時、正常にアップデートが完了したか否かによって、特定メモリ番地（０ｘＦＦＦＥ）に所定の状態値（正常状態値：０ｘＡＢ、エラー状態値：０ｘＦＦ又は０ｘ００）を書き込み、ブート時に該当番地の値をチェックして正常状態値が書き込まれているとブートを続け（Ｓ１７０）、エラー状態値が書き込まれているとプログラム強制ダウンロードモードに切り替える（Ｓ１６０）。
【００８２】
このように、プログラム強制ダウンロードモードに進んだ後（Ｓ１６１）、通信モジュール（例えば、ＭＳＭチップ）の特定ポート（ＧＰＩＯピン：Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ  ａｎｄ  Ｏｕｔｐｕｔ  ｐｉｎ）のレベルを検出し（Ｓ１６２）、その検出されたレベルによって、該当強制ダウンロード機能をＵＡＲＴ１（例えば、ハイレベルに設定した場合）を介して行うか、ＵＡＲＴ２（例えば、ローレベルに設定した場合）を介して行うかを決定する（Ｓ１６３）。ここで、前記特定ポートのレベルは、端末機の外部にプルアップ／プルダウンスイッチ（図４において３０１）を設置して使用者が選択することができる。
【００８３】
もし、ＵＡＲＴ２が選択されると、使用者は、ＰＤＡ用プログラムアップデートツールを利用して、ＵＡＲＴ２を介してキャビネットファイルをＰＤＡにコピーして、通信モジュールのバイナリファイルをアップデートする（Ｓ１６４）。しかしながら、ＵＡＲＴ１が選択されると、外部インターフェースコネクタを介してＵＡＲＴ１とＰＣとを接続し、ＰＣ用プログラムアップデートツールを利用してバイナリファイルをアップデートする（Ｓ１６５）。
【００８４】
一方、プログラム強制ダウンロードモードに進まず、メインバイナリ領域の開始番地（０ｘ１００００）に分岐して（Ｓ１７１）、正常なブートシーケンスが行われる場合（Ｓ１７２）、使用者が通信モジュールのプログラムをアップデートするために、端末機を操作してプログラムダウンロードモードに進む命令を入力すると（Ｓ１７３）、前記の過程Ｓ１６３のように、使用者がスイッチ（図４において３０１）で設定した通信モジュール（例えば、ＭＳＭチップ）の特定ポート（例えば、ＧＰＩＯポート）の値を検出して（Ｓ１７４）、前記特定ポートの値がハイレベルであると、ＵＡＲＴ２を介してＰＤＡモジュールを利用してプログラムダウンロードを行う（Ｓ１７５）。逆に、前記特定ポートの値がローレベルであると、ＵＡＲＴ１とＰＣとを外部インターフェースコネクタで接続し、ＰＣ用ダウンロードツールを利用してプログラムダウンロードを行う（Ｓ１７６）。
【００８５】
以上のように、本発明の好ましい実施形態を用いて本発明を例示してきたが、本発明は、この実施形態に限定して解釈されるべきものではない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。当業者は、本発明の具体的な好ましい実施形態の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。
【図面の簡単な説明】
【００８６】
【図１】本発明による移動通信端末機のプログラムメモリのマップ構成を示す図である。
【図２】本発明による移動通信端末機にプログラムをアップデートするためのダウンロード過程を示すフローチャートである。
【図３】本発明による移動通信端末機のブート過程を示すフローチャートである。
【図４】本発明の実施形態として、通信ポートを選択してプログラム強制ダウンロードを実現する移動通信端末機の概略構成図である。
【図５】本発明の実施形態として、通信ポートを選択してプログラム強制ダウンロードを行う過程を示すフローチャートである。
【図６】一般的なＰＤＡ統合型移動通信端末機の概略構成図である。
【符号の説明】
【００８７】
１００  メモリ（ｆｌａｓｈ  ＲＯＭ  ）
１０１  ブートバイナリ領域
１０２  メインバイナリ領域
１０３  データ領域
３０１  スイッチ
【図１】
2006065857.tif 000003
【図２】
2006065857.tif 000004
【図３】
2006065857.tif 000005
【図５】
2006065857.tif 000006
【図４】
2006065857.tif 000007
【図６】
2006065857.tif 000008