(57)【要約】【課題】小さい容量の外部メモリに、複数の更新用ソフトウェアを格納させる。【解決手段】携帯電話端末１０のソフトウェアを構成する基本プログラム共通コードＰｃ１、固定共通コードＤｔ １、差分コードＤｄ１、差分コードＤｄ２を格納した外部メモリ１１と、基本プログラム共通コードＰｃ１を外部メモリ１１から携帯電話端末内１０に読み込むソフトロード処理を行うソフトロードプログラムＰｇ１を有する情報処理装置２０とした。また、携帯電話端末１０のソフトウェアを構成する基本プログラム共通コードＰｃ１、固定共通コードＤｔ １、差分コードＤｄ１、差分コードＤｄ２、ソフトロード実行プログラムＰｇ１を格納した外部メモリ１１と、基本プログラム共通コードＰｃ１を外部メモリ１１から携帯電話端末内１０に読み込むソフトロード処理を行うソフトロードプログラムＳｄ１を有する携帯電話端末１０とした。【選択図】図３
2010117944.tif 000002
【特許請求の範囲】
【請求項１】
携帯端末に着脱可能に構成され、その内部に、携帯端末のソフトウェアを構成するプログラムコードを格納し、そのソフトウェアとして、携帯端末の複数のバージョンに共通のプログラムコードと、各バージョンで異なる差分のプログラムコードとに分けて格納する外部メモリと、
接続された携帯端末のバージョンを判別し、そのバージョンに対応した前記共通のプログラムコード及び前記差分プログラムコードを前記外部メモリから前記携帯端末内に読み込み、前記携帯端末内の所定の領域に書き込むソフトロード処理を行うソフトロード実行機能部を有する情報処理装置と、
前記ソフトロード実行機能部を、自機器の内部に読み込む処理を行うソフトロード実行機能読み込み機能部と、
前記所定の領域としてのプログラムコード格納部とを有する携帯端末とを備えた
ソフトウェア更新システム。
【請求項２】
前記情報処理装置と前記携帯端末とを接続する接続部をさらに備え、
前記携帯端末は、その一端が前記情報処理装置と接続された前記接続部が、当該携帯端末に接続されたことを検知すると、前記ソフトロード実行機能読み込み機能部での処理を開始させる
請求項１記載のソフトウェア更新システム。
【請求項３】
前記携帯端末は、当該携帯端末の起動時に最初に読み込まれるプログラムを格納するブート領域を有し、
前記ソフトロード実行機能読み込み機能部は、前記ブート領域に格納される
請求項２記載のソフトウェア更新システム。
【請求項４】
前記携帯端末は、不揮発性メモリで構成した第１の記憶部と、
揮発性メモリで構成し、前記プログラムコード格納部を有する第２の記憶部とを備え、
前記ソフトロード実行機能読み込み機能部によって、当該携帯端末内に読み込まれた、前記ソフトロード実行機能部によるソフトロード処理は、前記第１の記憶部において実行される
請求項３記載のソフトウェア更新システム。
【請求項５】
前記ソフトロード実行機能部は、前記外部メモリ内に格納され、
前記携帯端末は、前記ソフトロード実行機能部を当該携帯端末内に読み込む処理を行う第２のソフトロード実行機能読み込み機能部を備える
請求項４記載のソフトウェア更新システム。
【請求項６】
当該携帯端末の起動時に最初に読み込まれるブート領域に格納され、外部メモリ内に記憶された携帯端末の複数のバージョンに共通のプログラムコードと、各バージョンで異なる差分のプログラムコードの内の、当該携帯端末のバージョンに該当する共通のプログラムコードと差分のプログラムコードを当該携帯端末内に読み込むソフトロード処理を行うソフトロード実行機能部を有する情報処理装置との、治具による接続を検知した場合に、前記ソフトロード実行機能部を前記情報処理装置から当該携帯端末内に読み込む処理を行うソフトロード実行機能部読み込み機能部と、
前記ソフトロード実行機能部によるソフトロード処理が実行される領域としての第１の記憶部と、
前記ソフトロード実行機能によるソフトロード処理によって、前記外部メモリ内から読み込まれた前記共通のプログラムコードと前記差分のプログラムコードが記憶される領域としての第２の領域とを備えた
携帯端末。
【請求項７】
前記第１の記憶部は揮発性メモリとして構成され、前記第２の記憶部は不揮発性メモリで構成される
請求項６記載の携帯端末。
【請求項８】
外部メモリ内に記憶された携帯端末の複数のバージョンに共通のプログラムコードと各バージョンで異なる差分のプログラムコードを当該携帯端末内に読み込むソフトロード処理を行うソフトロード実行機能部を有する情報処理装置との、治具による接続を検知するステップと、
前記治具による接続の検知時に、前記情報処理装置から前記ソフトロード実行機能部を読み出すステップと、
揮発性メモリとして構成した第１の記憶部において、前記ソフトロード実行機能部を実行するステップと、
前記ソフトロード実行機能部によるソフトロード処理によって、前記外部メモリから読み出された前記複数のバージョンに共通のプログラムコードと各バージョンで異なる差分のプログラムコードを、不揮発性メモリとして構成した第２の記憶部に書き込むステップとを有する
ソフトウェア更新方法。
【請求項９】
外部メモリ内に記憶された携帯端末の複数のバージョンに共通のプログラムコードと各バージョンで異なる差分のプログラムコードを当該携帯端末内に読み込むソフトロード処理を行うソフトロード実行機能部を有する情報処理装置との、治具による接続を検知するステップと、
前記治具による接続の検知時に、前記情報処理装置から前記ソフトロード実行機能部を読み出すステップと、
揮発性メモリとして構成した第１の記憶部において、前記ソフトロード実行機能部を実行するステップと、
前記ソフトロード実行機能部によるソフトロード処理によって、前記外部メモリから読み出された前記プログラムコードを、不揮発性メモリとして構成した第２の記憶部に書き込むステップとをコンピュータに実行させるための
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯電話端末のソフトウェアの更新システム及び方法と、そのシステムに用いられる携帯電話端末並びにそのソフトウェアの更新処理を実行するプログラムに関する。
【背景技術】
【０００２】
携帯電話端末等の電子機器のソフトウェアには、特に開発の段階においてはバグと呼ばれる不具合が含まれていることが多く、その修正も頻繁に行われる。また、機能の追加や改善を行ったりするためのソフトウェアのバージョンアップもよく行われる。
【０００３】
このようなバグの修正やソフトウェアのバージョンアップを行う手法としては、修正済みのプログラムをメモリカード等の外部メモリに記憶させておき、外部メモリに記憶されたプログラムを携帯電話端末内にロードするという手法が知られている。なお、以下の説明においては、外部メモリやＰＣ等に記憶されたプログラムを携帯端末内に取り込む処理を、ソフトロードと称する。
【０００４】
まず、外部メモリを用いたソフトロードについて説明するため、図７を参照して携帯電話端末としての携帯電話端末１００の内部構成例について説明する。図７に示した携帯電話端末１００には、ＮＡＮＤ型フラッシュメモリ（以下、ＮＡＮＤメモリとも称する）からブート（起動）を行うＮＡＮＤブート方式が採用されており、ソフトロードもＮＡＮＤブートの仕組みを利用して行われる。
【０００５】
図７に示した携帯電話端末１００は、外部メモリ１０１が取り付けられる外部メモリインターフェース（以下、Ｉ／Ｆと称する）部１０２を有しており、外部メモリＩ／Ｆ部１０２は、バス１１０に接続されている。バス１１０には、第１の記憶部としての不揮発性メモリ１０３、第２の記憶部としての揮発性メモリ１０４、制御部１０５も接続されている。不揮発性メモリ１０３は、ＮＡＮＤメモリで構成してあり、外部メモリ１０１を用いたソフトロードを実行するためのブートコード格納領域と、データを格納するためのユーザデータ格納領域が定義されている。不揮発性メモリ１０３の構成の詳細については、次の図８を参照して後述する。
【０００６】
揮発性メモリ１０４は、ＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）等で構成してある。制御部１０５は、ＭＰＵ（Micro Processing Unit）等より、携帯電話端末１００の各部の制御を行う。
【０００７】
また携帯電話端末１００は、操作入力部１０６と表示部１０７を有する。操作入力部１０６は、キーやジョグダイヤル、スイッチ等よりなり、ユーザからの操作内容に応じた操作信号を生成して、生成した操作信号を制御部１０５に供給する。表示部１０７は、液晶パネルや有機ＥＬ（Electro Luminescence）等のＬＣＤ（Liquid Crystal Display）等で構成される。表示部１０７には、ソフトロードの完了を通知する表示等が表示される。
【０００８】
次に、図８を参照して、外部メモリ１０１と不揮発性メモリ１０３の内部構成について説明する。外部メモリ１０１には、図８（ａ）に示すように、ソフトロード用プログラムＰ１０として、ソフトロード実行プログラムＰｇ１０（ソフトロード実行機能部）と、シーケンスファイルＳｆ１０とが格納されている。ソフトロード実行プログラムＰｇ１０とは、ソフトロードを実行するプログラムであり、具体的には、外部メモリ１０１からプログラムコードＰｃ１０を読み出して、不揮発性メモリ１０３上に書き込む処理を行う。シーケンスファイルＳｆ１０は、ソフトロードの手順がコマンド形式で記載されたファイルである。外部メモリ１０１内には、ソフトウェアとしてのプログラムコードＰｃ１０と、文字フォント等の情報が含まれた固定データＤｔ１０も格納されている。
【０００９】
不揮発性メモリ１０３においては、図８（ｂ）に示すように、ブートコードＢｃ１０を格納する領域であるブート部Ｒｇ１０と、プログラムコードＰｃ１０が格納されるプログラムコード格納領域Ｒｇ２０が定義されている。また、携帯電話端末１００の起動（ブート）時に、外部メモリ１０３からソフトロード実行プログラムＰｇ１０を読み出す、ブートローダＢｄ１０を格納したブートローダ格納領域Ｒｇ３０と、固定データＤｔ１０等が格納されるユーザデータ格納領域Ｒｇ４０が定義されている。
【００１０】
このように構成された携帯電話端末１００におけるソフトロードの実行手順を、図９に示してある。携帯電話端末１００では、まず電源が投入されると（ステップＳ５１）、ＮＡＮＤメモリとしての不揮発性メモリ１０３に格納されたブートコードＢｃ１０にて、ソフトロード実行のトリガが認識されたか否かが判断される（ステップＳ５２）。ソフトロード実行のトリガとしては、例えば操作入力部１０６におけるキー多重押しなどが割り当てられていることが通常である。携帯電話端末１００での通常の動作時に、誤ってソフトロードが実行されてしまうことを防止する目的によるものであり、キーの割り当てや組み合わせ、押下回数などは、複雑なものに設定されている。
【００１１】
操作入力部１０６を介して入力された内容が、ソフトロード実行のトリガとして予め設定されたものと一致している場合には、ブートコードＢｃ１０によって、操作内容がソフト実行のトリガとして認識される。この場合は、処理がブートコードＢｃ１０からブートローダＢｄ１０に受け渡される（ステップＳ５３）。ブートコードＢｃ１０によってソフトロード実行のトリガが認識されなかった場合には、ここで処理は終了となる。
【００１２】
次に、ブートローダＢｄ１０において、外部メモリＩ／Ｆ部１０２に外部メモリ１０１が接続されているか否かの判断がされる（ステップＳ５４）。外部メモリ１０１が装着されていない場合には、ここで処理は終了になる。外部メモリ１０１が装着されていると判断された場合には、次に、外部メモリ１０１内にソフトロード用プログラムＰ１０が格納されているか否かの判断が行われ（ステップＳ５５）、外部メモリ１０１内にソフトロード用プログラムＰ１０が記憶されていない場合には、ここで処理が終了となる。
【００１３】
外部メモリ１０１内にソフトロード用プログラムＰ１０が存在した場合には、ブートローダＢｄ１によって、ソフトロード用プログラムＰ１０のうちソフトロード実行プログラムＰｇ１０が、外部メモリ１０１から読み出される。そして、読み出されたソフトロード実行プログラムＰｇ１０は、揮発性メモリ１０４に転送される（ステップＳ５６）。
【００１４】
揮発性メモリ１０４上でソフトロード実行プログラムＰｇ１０が実行されると（ステップＳ５７）、外部メモリ１０１よりシーケンスファイルＳｆ１０が読み出される。続いて、シーケンスファイルＳｆ１０に記載されたコマンドが実行されることで（ステップＳ５８）、外部メモリ１０１内のプログラムコードＰｃ１０と固定データＤｔ１０とが携帯電話端末１００内に取り込まれ、不揮発性メモリ１０３に転送される（ステップＳ５９）。不揮発性メモリ１０３に転送されたプログラムコードＰｃ１０は、プログラムコード格納領域Ｒｇ２０に書き込まれ、固定データＤｔ１０はユーザデータ格納領域Ｒｇ４０に書き込まれる（ステップＳ６０）。
【００１５】
このように、ＮＡＮＤブート方式を用いて外部メモリ１０１からソフトロードを行う場合は、アクセス速度が非常に高速なＳＤＲＡＭ（揮発性メモリ１０４）上でソフトロード実行プログラムが実行される。そしてその結果、読み出し速度が高速なＮＡＮＤメモリ（不揮発性メモリ１０３）に、プログラムコードＰｃ１０が転送される。従って、ソフトロードの処理を高速化することができる。
【００１６】
次に、ＵＳＢケーブル等で構成したソフトロード専用ケーブル（治具）を用いてソフトロードを行う場合のシステム構成例を、図１０に示してある。図１０において、図８と対応する箇所には同一の符号を付してある。図１０には、ＰＣ２００と携帯電話端末１００Ａとが、ソフトロード専用ケーブルＣｂ１０とで接続された状態を示してある。ＰＣ２００内の、不揮発性メモリ等で構成される記憶部２１０には、携帯電話端末１００Ａへのソフトロードを実現するためのローダソフトＬｓ１と、ソフトロード用プログラムＰ１０Ａ、プログラムコードＰｃ１０、固定データＤｔ１０が記憶されている。またＰＣ２００は、ＵＳＢ用コネクタが接続されるコネクタ接続部２３０を有する。
【００１７】
携帯電話端末１００Ａは、ＳＤＲＡＭ等で構成された揮発性メモリ１０３と、ＮＡＮＤメモリで構成された不揮発性メモリ１０４と、１８ピンコネクタが接続されるコネクタ接続部２３０を有する。
【００１８】
ＰＣ２００と携帯電話端末１００Ａ間を接続しているソフトロード専用ケーブルＣｂ１０は、その一端をＵＳＢのコネクタで構成し、もう一端を１８ピンのコネクタで構成してある（いずれのコネクタも、図１０においては図示略）。また、ＰＣ２００から送信される制御信号の内容に応じて、携帯電話端末１００Ａのコネクタ接続部２３０に印加する電圧のレベルを可変させる機能を有している。例えば、通常はコネクタ接続部２３０に対して５Ｖの電圧を印加しているところ、ＰＣ２００よりソフトロードを行うモードへの切り替えを指示する制御信号が供給された場合には、印可電圧を５Ｖより少し低い値とするよう、電圧レベルを変換する処理を行う。
【００１９】
携帯電話端末１００Ａにおいては、コネクタ接続部２３０に印加される電圧の変化によって、ソフトロードを行うモード（以下、ソフトロードモードと称する）への遷移を検知することができるよう構成してある。
【００２０】
このように構成されたＰＣ２００と携帯電話１００Ａによるソフトロードの処理例を、図１１のフローチャートを参照して説明する。ソフトロードを開始する際には、まずＰＣ２００においてローダソフトＬｓ１０が起動される（ステップＳ６１）。そして、ローダソフトＬｓ１０上で、携帯電話端末１００Ａに転送するファイルの指定を受け付ける（ステップＳ６２）。ここで指定を受け付けるファイルは、ソフトロード実行プログラムＰｇ１０Ａとなる。
【００２１】
続いて、ユーザによって、ＰＣ２００と携帯電話端末１００Ａとがソフトロード専用ケーブルＣｂ１０で接続されると（ステップＳ６３）、続いて携帯電話端末１００Ａの電源が投入される（ステップＳ６４）。これにより、携帯電話端末１００Ａによって、ソフトロード専用ケーブルＣｂ１０の接続が検知される（ステップＳ６５）。このとき、ＰＣ２００から、ソフトロード専用ケーブルＣｂ１０をソフトロードモードへの切り替えを指示する制御信号が供給されているため、携帯電話端末１００Ａにおいて、ソフトロードモードへ遷移したことも検知される。携帯電話端末１００Ａは、ソフトロードモードになったことを検知すると、ＰＣ２００（ローダソフトＬｓ１０）からのコマンドを受け付け可能な状態に切り替わる。
【００２２】
そして、ＰＣ２００から携帯電話端末１００Ａに、ソフトロード実行プログラムＰｇ１０Ａとともに、プログラムの書き込み先アドレス（ここでは揮発性メモリ１０３内のアドレス）を指示したメモリ書き込みコマンドが送信される（ステップＳ６６）。携帯電話端末１００Ａでは、ソフトロード実行プログラムＰｇ１０Ａを受信すると、受信したソフトロード実行プログラムＰｇ１０Ａを、メモリ書き込みコマンド内で指定されたアドレスに書き込む（ステップＳ６７）。
【００２３】
携帯電話端末１００Ａは、ＰＣ２００から送信されたプログラム実行コマンドを受信すると、受信したコマンドに基づいて、揮発性メモリ１０３上でソフトロード実行プログラムＰｇ１０Ａを実行する（ステップＳ６８）。ソフトロード実行プログラムＰｇ１０Ａが実行されると、ＰＣ２００において、シーケンスファイルＳｆ１０Ａに記載のコマンドに基づいて、プログラムコードＰｃ１０と固定データＤｔ１０とが携帯電話端末１００Ａに転送される（ステップＳ６８）。
【００２４】
携帯電話端末１００Ａは、ソフトロード実行プログラムＰｇ１０Ａの動作に基づいて、ステップＳ６８で受信したプログラムコードＰｃ１０と固定データＤｔ１とを、不揮発性メモリ１０４内の所定の領域に格納する。
【００２５】
【特許文献１】特開２００６−３４０１９６号公報
【発明の開示】
【発明が解決しようとする課題】
【００２６】
ところで、通常の携帯電話端末は、当初発売したモデル(以下、ベースモデルとする)に対して端末の色（カラーバリエーション）などを変更したモデル(以下、バリエーションモデルとする)を発売することがある。このバリエーションモデルは、ベースモデルとハードウェア構成はほぼ同一であるが、筐体の色変更や、内部のソフトウェア変更の部分的な修正が加えられているものが一般的である。
【００２７】
このようにベースモデルに対してバリエーションモデルが存在して、同一バージョンで複数の種類のものが存在すると、その種類ごとに専用のバージョンアップ用の外部メモリが必要になる。
このため、サービス拠点などにおいては、ベースモデルとバリエーションモデルでそれぞれの専用のバージョンアップ用の外部メモリを用意する必要があり、その取り扱いが煩雑になっている。つまり、サービス拠点ではソフトウェアを最新版にバージョンアップするにあたって、ベースモデルとバリエーションモデルでそれぞれ誤った外部メモリを使用したとしてもハードウェアが同一であることから、ソフトロードが可能となってしまう。携帯電話端末は外観から判断が難しいために、バージョンが違う外部メモリを使用して、誤ったソフトウェアをソフトロードする危険性があり、バージョンアップ作業は厳重に管理して実行する必要が生じている。
【００２８】
その対策として、ベースモデルとバリエーションモデルのロードモジュールを同一の外部メモリに搭載し、バージョン情報などでモデルを判断して、どちらのロードモジュールを選択するかの方式は考案されている（例えば、特許文献１参照）。しかしながら、ロードモジュールサイズが巨大化し(３００ＭＢｙｔｅ程度)、２つのロードモジュールを同一外部メモリに格納するためには１ＧＢ程度の大容量外部メモリが必要になってきている。外部メモリのコストは容量に比例して上昇するため、外部メモリコスト増大も懸念されている。
【００２９】
本発明はかかる点に鑑みてなされたものであり、小さい容量の外部メモリで複数のモデルに対応したバージョンアップ作業ができることを目的とする。
【課題を解決するための手段】
【００３０】
本発明は、携帯端末と、その携帯端末に着脱可能に構成される外部メモリと、携帯端末に接続される情報処理装置とによるシステムに適用される。
外部メモリは、その内部に、携帯端末のソフトウェアを構成するプログラムコードを格納し、そのソフトウェアとして、携帯端末の複数のバージョンに共通のプログラムコードと、各バージョンで異なる差分のプログラムコードとに分けて格納する。
情報処理装置は、接続された携帯端末のバージョンを判別し、そのバージョンに対応した共通のプログラムコード及び差分プログラムコードを外部メモリから携帯端末内に読み込み、携帯端末内の所定の領域に書き込むソフトロード処理を行うソフトロード実行機能部を有する。
携帯端末は、ソフトロード実行機能部を、自機器の内部に読み込む処理を行うソフトロード実行機能読み込み機能部と、所定の領域としてのプログラムコード格納部とを有する。
【００３１】
このようにしたことで、１つの外部メモリに記憶されるプログラムコードが、携帯端末の複数のバージョンに共通のプログラムコードと、各バージョンで異なる差分のプログラムコードとに分けて格納される。従って、１つの外部メモリを使って、複数のバージョンのプログラムコードを効率よく記憶させることが可能になる。
【発明の効果】
【００３２】
本発明は、複数のバージョンに対応したプログラムコードを小さい外部メモリに格納することができるため、１つのバージョンごとに外部メモリを用意する必要がなく、ソフトウェアを更新するための外部メモリとして、必要な数を減らすことができる。また、１つの外部メモリに効率よく複数のバージョンのソフトウェアを格納でき、外部メモリが必要な記憶容量を削減することができる。
【発明を実施するための最良の形態】
【００３３】
＜第１の実施の形態＞
以下、本発明の第１の実施の形態を、図１〜４を参照して説明する。本実施の形態の例（以下本例と称する）は、本発明を、外部メモリとソフトロード専用ケーブルとを両方用いて、携帯電話端末のソフトロードを実現する構成に適用したものである。携帯電話端末は、ソフトロード専用ケーブルを使って情報処理装置であるＰＣ（パーソナルコンピュータ装置）と接続させてある。
また本例においては、ソフトロードの実現に必要なプログラムのうち、プログラムコードは外部メモリに記憶させ、プログラムコードを携帯電話端末に読み込むためのソフトロード実行プログラム（ソフトロード実行機能部）及びシーケンスファイルを、ＰＣに記憶させる。さらに、ＰＣに記憶されたソフトロード実行プログラムを読み出すためのソフトロード実行プログラムローダ（ソフトロード実行機能読み込み機能部）を、携帯電話端末内に記憶させておく。そして、このように構成した各装置（機器）間で、互いに制御信号やデータをやりとりすることにより、ソフトロードを実現するようにしている。図１に、本例によるシステムの構成例を示してある。
【００３４】
図１は、外部メモリ１１が装着された携帯電話端末１０と、ＰＣ２０とが、ソフトロード専用ケーブルＣｂ１とで接続された状態を示してある。ソフトロード専用ケーブルＣｂ１は、従来例として図１０に示したソフトロード専用ケーブルＣｂ１０と同一の構成としてあり、ＵＳＢのコネクタと１８ピンのコネクタとを有する。そして、１８ピンのコネクタが、携帯電話端末１０のコネクタ接続部１８に、ＵＳＢのコネクタが、ＰＣ２０のコネクタ接続部２４に接続されている。またソフトロード専用ケーブルＣｂ１は、ＰＣ２０から送信される制御信号の内容に応じて、携帯電話端末１０のコネクタ接続部１８に印加する電圧のレベルを可変させる機能も、従来のものと同様に有している。
【００３５】
次に、図２を参照して、携帯電話端末１０とＰＣ２０のそれぞれの内部構成例について説明する。まず携帯電話端末１０の構成から説明すると、携帯電話端末１０は、外部メモリ１１が取り付けられる外部メモリＩ／Ｆ部１２と、ＮＡＮＤメモリで構成される不揮発性メモリ１３、ＳＤＲＡＭ等で構成される揮発性メモリ１４、制御部１５とを有する。さらに、操作入力部１６と表示部１７と、ソフトロード専用ケーブルＣｂ１が接続されるコネクタ接続部１８とを有する。不揮発性メモリ１３とコネクタ接続部１８以外の各部については、従来例として図１０に示した携帯電話端末１００Ａと同一の構成としてあるため、詳細な説明は省略する。
【００３６】
次にＰＣ２０の内部構成例について説明すると、ＰＣ２０は、不揮発性メモリや揮発性メモリ等よりなるメモリ２１と、ＨＤＤ（Hard Disk Drive）やＤＶＤ（Digital Versatile Disc）ドライブ等よりなる記憶部２２、制御部２３を有する。さらに、ソフトロード専用ケーブルＣｂ１が接続されるコネクタ接続部２４と、操作入力部２５、表示部２６とを有する。
【００３７】
操作入力部２５は、キーボードやマウス等よりなり、ユーザからの操作内容に応じた操作信号を生成して、生成した操作信号を制御部１５に供給する。表示部１７は、ＬＣＤ（Liquid Crystal Display）等で構成され、後述するローダソフトが生成するＧＵＩ（Graphical User Interface）画面や、ソフトロード完了の通知等が表示される。
【００３８】
次に、図３を参照して、携帯電話端末１０と外部メモリ１１、ＰＣ２０のそれぞれにおける内部構成例について説明する。ＰＣ２０には、メモリ２１（もしくは記憶部２２）の内部に、ローダソフトLｓ１と、ソフトロード用プログラムとしてのソフトロード実行プログラムＰｇ１とを格納してある。
【００３９】
携帯電話端末１０の不揮発性メモリ１３には、ブート部Ｒｇ１とプログラムコード格納領域Ｒｇ２、ユーザデータ格納領域Ｒｇ３とを定義してある。ブート部Ｒｇ１とは、携帯電話端末１０の電源投入時に最初に読み込まれるブート領域である。本例においては、ブート部Ｒｇ１に「ソフトロード実行プログラムローダＳｄ１」を記憶させてある。ソフトロード実行プログラムローダＳｄ１とは、ＰＣ２０内に記憶されているソフトロード実行プログラムＰｇ１を、携帯電話端末１０内の所定のメモリ領域に書き込むためのプログラムである。不揮発性メモリ１３は、他にプログラムコード格納領域Ｒｇ２と、ユーザデータ格納領域Ｒｇ３とを有する。
【００４０】
携帯電話端末１０と外部メモリＩ／Ｆ部１２を介して接続された外部メモリ１１には、シーケンスファイルＳｆ１と、基本プログラム共通コードＰｃ１と、固定共通コードＤｔ１と、差分コード１Ｄｄ１と、差分コード２Ｄｄ２とを記憶させてある。固定共通コードＤｔ１は、携帯端末の複数のバージョンの機種に共通のプログラムコードである。差分コード１Ｄｄ１と差分コード２Ｄｄ２は、各バージョンで異なる差分のプログラムコードを、バージョンごと（機種ごと）に用意したものである。ここでの差分とは、共通のプログラムコードからの差分である。
【００４１】
このように構成されたＰＣ２０と携帯電話端末１０と外部メモリ１１とによるソフトロードの処理例を、図４のフローチャートを参照して説明する。まずＰＣ２０においてローダソフトＬｓ１が起動されると（ステップＳ１１）、操作入力部１６（図２参照）等を介して、ソフトロード実行プログラムＰｇ１が、携帯電話端末１０への転送ファイルとして指定される（ステップＳ１２）。
【００４２】
続いて、ユーザによって、ＰＣ２０と携帯電話端末１０とがソフトロード専用ケーブルＣｂ１で接続されると（ステップＳ１３）、続いて、携帯電話端末１０側の電源が投入され（ステップＳ１４）、ソフトロード専用ケーブルＣｂ１の接続が検知される（ステップＳ１５）。そして、外部メモリ１１が携帯電話端末１０に装着されていることを確認し（ステップ１６）、装着された外部メモリ内にソフトロード用のプログラムがあることを確認が行われる（ステップ１７）。このとき、ＰＣ２０から、ソフトロード専用ケーブルＣｂ１をソフトロードモードへの切り替えを指示する制御信号が供給されているため、携帯電話端末１０において、ソフトロードモードへ遷移したことも検知される。携帯電話端末１０は、ソフトロードモードになったことを検知すると、ソフトロード実行プログラムローダＳｄ１を起動する（ステップＳ１８）。これにより、携帯電話端末１０が、ＰＣ２０（ローダソフトＬｓ１）からのコマンドを受け付け可能な状態に切り替わる。
【００４３】
次に、ＰＣ２０から携帯電話端末１０に、ソフトロード実行プログラムＰｇ１とともに、プログラムの書き込み先アドレス（揮発性メモリ１４（図２参照）内のアドレス）を指示したメモリ書き込みコマンドが送信される（ステップＳ１９）。携帯電話端末１０でソフトロード実行プログラムＰｇ１が受信されると、ソフトロード実行プログラムローダＳｄ１によって、揮発メモリ１４上のメモリ書き込みコマンド内で指定されたアドレスに、ソフトロード実行プログラムＰｇ１が書き込まれる（ステップＳ２０）。そして、ソフトロード実行プログラムＰｇ１が揮発メモリ１４上で展開されると、処理がソフトロード実行プログラムローダＳｄ１からソフトロード実行プログラムＰｇ１に移される。
【００４４】
携帯電話端末１０は、ＰＣ２０から続いて送信されるプログラム実行コマンドを受信すると、受信したコマンドに基づいて、揮発性メモリ１４に書き込まれたソフトロード実行プログラムＰｇ１を実行する（ステップＳ２１）。ソフトロード実行プログラムＰｇ１が実行されると外部メモリ１１内のシーケンスファイルＳｆ１に記載のコマンドに基づいて、携帯電話端末のバージョン情報が読み出され（ステップＳ２２）、ベースモデルかバリエーションモデルかを判断する（ステップＳ２３）。
【００４５】
ベースモデルの場合は、シーケンスファイルＳｆ１からベースモデル用のコマンドを実行し（ステップＳ２４）、「基本プログラム共通コードＰｃ１+固定共通コードＤｔ１+差分コード１Ｄｄ１」を構成し、外部メモリ１１より読み出される（ステップＳ２５）。バリエーションモデルの場合は、シーケンスファイルＳｆ１からバリエーションモデル用のコマンドを実行し（ステップＳ２7）、「基本プログラム共通コードＰｃ１+固定共通コードＤｔ１+差分コード２Ｄｄ２」を構成し、外部メモリ１１より読み出される（ステップＳ２８）。
【００４６】
ベースモデルが読み出された場合は、基本プログラム共通コードＰｃ１は不揮発性メモリ１３内のプログラムコード格納領域Ｒｇ２に、固定共通コードＤｔ１は同じく不揮発メモリ１３内のユーザデータ格納領域Ｒｇ３に、差分コード１Ｄｄ１はプログラムコード格納領域Ｒｇ２とユーザデータ格納領域Ｒｇ３に両方に書き込む部分の差分であるのでそれぞれの格納領域に、書き込まれる（ステップＳ２６）。
バリエーションモデルが読み出された場合は、基本プログラム共通コードＰｃ１は不揮発性メモリ１３内のプログラムコード格納領域Ｒｇ２に、固定共通コードＤｔ１は同じく不揮発メモリ１３内のユーザデータ格納領域Ｒｇ３に、差分コード２Ｄｄ２はプログラムコード格納領域Ｒｇ２とユーザデータ格納領域Ｒｇ３に両方に書き込む部分の差分であるのでそれぞれの格納領域に、書き込まれる（ステップＳ２９）。
【００４７】
ベースモデルもしくはバリエーションモデルのすべてのプログラムコードの書き込みが完了した時点で、ソフトロードの処理も終了される。
【００４８】
以上の説明した実施の形態によれば、ベースモデルとバリエーションモデルと共有する部分は共有させて、外部メモリ１１に格納させることができる。即ち、ベースモデルは「基本プログラム共通コードＰｃ1+固定共通コードＤｔ１+差分コードＤｄ１」が使用される。バリエーションモデルは「基本プログラム共通コードＰｃ１+固定共通コードＤｔ１+差分コードＤｄ２」が使用される。この構成の場合、外部メモリ１１には「基本プログラム共通コードＰｃ１+固定共通コードＤｔ１+差分コード１Ｄｄ１+差分コード２Ｄｄ２」という構成で格納することができる。そして、ソフトロード時には、外部メモリ１１に格納されているシーケンスファイルＳｆ１に従って、携帯電話端末のモデルを判断する。そして、判断したモデルのプログラムコードを構成し、携帯電話端末内のプログラムコード格納領域Ｒｇ２とユーザデータ格納領域Ｒｇ３にそのプログラムコードを書き込まれる。
【００４９】
これにより、外部メモリにベースモデルのプログラムコードとバリエーションモデルのプラグラムコードの両方ともに格納する場合、従来は２つのコードを個別に格納しなければならないのが、小さい容量にすることができる。即ち、従来は、「ベースモデル用基本プログラムコード+ベースモデル用固定コード」と「バリエーションモデル用基本プログラムコード+バリエーションモデル用固定コード」を格納しなければならない。これに対して本例の場合には、「基本プログラム共通コードＰｃ１+固定共通コードＤｔ１+差分コード１Ｄｄ１+差分コード２Ｄｄ２」という構成にすることができ、外部メモリ１１により小さい容量で格納することができる。
【００５０】
さらに、複数のバージョンモデルに対応したい場合は、対応したいバージョンモデルの数だけの差分コードを、同様の構成で外部メモリに格納することで対応することができる。
【００５１】
また、外部メモリに格納されているシーケンスファイルは、携帯電話端末のモデルを判断し、判断したモデルに合わせて外部メモリ内にあるプラグラムコードで構成を組み、携帯電話端末の内部の不揮発性メモリに読み込ませることができ、ソフトロードの手順が一括管理することができる。
【００５２】
＜第２の実施の形態＞
次に、図５及び図６を参照して、本発明の第２の実施の形態の例について説明する。
本例は、バージョンアップ作業を、第１の実施の形態よりもさらに簡易な構成としたものである。具体的には、外部メモリと携帯電話端末のみの構成で、携帯電話端末の操作で複数のモデルに対応したバージョンアップ作業が行えるようにしたものである。本例におけるシステムの内部構成は、図２に示したものからＰＣ２０とソフトロード専用ケーブルの箇所を削除した構成と同一であるため、システム構成については説明を省略する。
【００５３】
図５に、本例における携帯電話端末１０′と外部メモリ１１′の内部構成例を示してある。図５において、図３と対応する箇所には同一の符号を付してある。
図５に示した外部メモリ１１′の場合には、外部メモリ１１に、ソフトロード実行プログラムＰｇ１と、シーケンスファイルＳｆ１と、基本プログラム共通コードＰｃ１と、固定共通コードＤｔ１と、差分コード１Ｄｄ１と、差分コード２Ｄｄ２とを記憶させてある。ソフトロード実行プログラムＰｇ１は、ソフトロード実行機能を行うプログラムである。この外部メモリ１１に記憶されたソフトロード実行プログラムを読み出すためのソフトロード実行プログラムローダＳｄ１（ソフトロード実行機能読み込み機能部）を、携帯電話端末１０′内に記憶させておく。
【００５４】
このように構成された携帯電話端末１０′におけるソフトロードの実行手順を、図６に示してある。
携帯電話端末１０′では、電源が投入したあと（ステップＳ３１）、携帯電話端末を操作して、不揮発性メモリ１３に格納されたソフトロード実行プログラムローダＳｄ１を起動させる（ステップＳ３２）。その後、外部メモリ１１′が携帯電話端末１０′に装着されていることを確認し（ステップ３３）、装着された外部メモリ内にソフトロード用のプログラムがあることを確認が行われる（ステップ３４）。
【００５５】
次に、外部メモリに格納されているソフトロード実行プログラムＰｇ１を読み出して、携帯電話端末１０′の揮発メモリ１０４上のメモリ書き込みコマンド内で指定されたアドレスに、ソフトロード実行プログラムＰｇ１が書き込まれ（ステップＳ３５）、書き込まれたソフトロード実行プログラムＰｇ１を実行する（ステップＳ３６）。
【００５６】
ソフトロード実行プログラムＰｇ１が実行されると外部メモリ１１′内のシーケンスファイルＳｆ１に記載のコマンドに基づいて、携帯電話端末のバージョン情報が読み出され（ステップＳ３７）、ベースモデルかバリエーションモデルかを判断する（ステップＳ３８）。
【００５７】
ベースモデルの場合は、シーケンスファイルＳｆ１からベースモデル用のコマンドを実行し（ステップＳ３９）、「基本プログラム共通コードＰｃ１+固定共通コードＤｔ１+差分コード１Ｄｄ１」を構成し、外部メモリ１１′より読み出される（ステップＳ４０）。バリエーションモデルの場合は、シーケンスファイルＳｆ１からバリエーションモデル用のコマンドを実行し（ステップＳ４２）、「基本プログラム共通コードＰｃ１+固定共通コードＤｔ１+差分コード２Ｄｄ２」を構成し、外部メモリ１１′より読み出される（ステップＳ４３）。
【００５８】
ベースモデルが読み出された場合は、基本プログラム共通コードＰｃ１は不揮発性メモリ１３内のプログラムコード格納領域Ｒｇ２に、固定共通コードＤｔ１は同じく不揮発メモリ１３内のユーザデータ格納領域Ｒｇ３に、差分コード１Ｄｄ１はプログラムコード格納領域Ｒｇ２とユーザデータ格納領域Ｒｇ３に両方に書き込む部分の差分であるのでそれぞれの格納領域に、書き込まれる（ステップＳ４１）。
【００５９】
バリエーションモデルが読み出された場合は、基本プログラム共通コードＰｃ１は不揮発性メモリ１３内のプログラムコード格納領域Ｒｇ２に、固定共通コードＤｔ１は同じく不揮発メモリ１３内のユーザデータ格納領域Ｒｇ３に、差分コード２Ｄｄ２はプログラムコード格納領域Ｒｇ２とユーザデータ格納領域Ｒｇ３に両方に書き込む部分の差分であるのでそれぞれの格納領域に、書き込まれる（ステップＳ４４）。
【００６０】
ベースモデルもしくはバリエーションモデルのすべてのプログラムコードの書き込みが完了した時点で、ソフトロードの処理も終了される。
【００６１】
第２の実施の形態によれば、外部メモリ１１のみがあれば、ＰＣがなくとも手軽に携帯電話端末のバージョンアップ作業が行うことができる。従って、第一実施の形態における効果に加えて、ＰＣをおけないサービス拠点などでバージョンアップ作業を行うことができるという効果を有する。
【００６２】
なお、上述した第１及び第２の実施の形態の例においては、携帯端末を携帯電話端末に適用した例を挙げたが、これに限定されるものではない。例えば、ＰＤＡ（Personal Digital Assistants）等の情報端末や、ゲーム端末等、ソフトウェアの書き換え処理を要する他の携帯端末に適用するようにしてもよい。
【図面の簡単な説明】
【００６３】
【図１】本発明の第１の実施の形態によるシステムの構成例を示す概略図である。
【図２】本発明の第１の実施の形態によるシステムの内部構成例を示すブロック図である。
【図３】本発明の第１の実施の形態によるＰＣと携帯電話端末と外部メモリの内部構成例を示すブロック図である。
【図４】本発明の第１の実施の形態によるソフトロード処理の例を示すフローチャートである。
【図５】本発明の第２の実施の形態による携帯電話端末と外部メモリの内部構成例を示すブロック図である。
【図６】本発明の第２の実施の形態によるソフトロード処理の例を示すフローチャートである。
【図７】従来の携帯電話端末の内部構成例を示すブロック図である。
【図８】従来の外部メモリと携帯電話端末内の不揮発メモリの内部構成例を示すブロック図である。
【図９】従来の外部メモリを用いたソフトロードの処理例を示すフローチャートである。
【図１０】従来のケーブルを用いたソフトロード処理を行う場合のシステム構成例を示す説明図である。
【図１１】従来のケーブルを用いたソフトロード処理の例を示すフローチャートである。
【符号の説明】
【００６４】
１０…携帯電話端末、１１…外部メモリ、１２…外部メモリＩ／Ｆ部、１３…不揮発性メモリ、１４…揮発性メモリ、１５…制御部、１６…操作入力部、１７…表示部１７、１８…コネクタ接続部、２０…ＰＣ、２１…メモリ、２２…記憶部、２３…制御部、２４…コネクタ接続部、２５…操作入力部、２６…表示部、Ｃｂ１…ソフトロード専用ケーブル、Ｄｄ１…差分データ１、Ｄｄ２…差分データ２、Ｄｔ１…固定共通データ、Ｌｓ１…ローダソフト、Ｐｃ１…基本プログラム共通コード、Ｐｇ１…ソフトロード実行プログラム、Ｒｇ１…ブート部、Ｒｇ２…プログラムコード格納領域、Ｒｇ３…ユーザデータ格納領域、Ｓｄ１…ソフトロード実行プログラムローダ、Ｓｆ１…シーケンスファイル
【図１】
2010117944.tif 000003
【図２】
2010117944.tif 000004
【図３】
2010117944.tif 000005
【図４】
2010117944.tif 000006
【図５】
2010117944.tif 000007
【図６】
2010117944.tif 000008
【図７】
2010117944.tif 000009
【図８】
2010117944.tif 000010
【図９】
2010117944.tif 000011
【図１０】
2010117944.tif 000012
【図１１】
2010117944.tif 000013