JP4029789B2 - プログラムをダウンロードする方法及び装置 - Google Patents
プログラムをダウンロードする方法及び装置 Download PDFInfo
- Publication number
- JP4029789B2 JP4029789B2 JP2003193681A JP2003193681A JP4029789B2 JP 4029789 B2 JP4029789 B2 JP 4029789B2 JP 2003193681 A JP2003193681 A JP 2003193681A JP 2003193681 A JP2003193681 A JP 2003193681A JP 4029789 B2 JP4029789 B2 JP 4029789B2
- Authority
- JP
- Japan
- Prior art keywords
- flash memory
- program
- update information
- stored
- computing means
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Multi Processors (AREA)
- Stored Programmes (AREA)
- Mobile Radio Communication Systems (AREA)
Description
【発明の属する技術分野】
本発明は、プログラムをダウンロードする方法及び装置に関する。特に、遠隔地に設置された通信装置に対して、他の通信装置からファームウェアをダウンロードするものに関する。
【0002】
【従来の技術】
複数のCPU(演算装置)を搭載した通信装置におけるファームウェアのダウンロードは、1つの統合モジュールにより実現するのではなく、CPU毎に用意された統合モジュールにより個別に実施していた。
【0003】
図7は、従来のシステム構成図である。
【0004】
図7によれば、プログラムがダウンロードされる基地局装置10は、複数のCPU、即ち、CPU1(101)、CPU2(111)及びCPU3(121)を搭載している。そのCPUを搭載した基板にはコンソール端末等が接続されており、CPU毎にそれぞれのプログラムをダウンロードするため、CPU毎のプログラムファイルの相関関係について、作業者がそれぞれのバージョン情報を考慮する必要がある。
【0005】
図7における基地局装置10は、CPU毎に2つのフラッシュメモリ(稼動系フラッシュメモリ(106、114、124)及び待機系フラッシュメモリ(107、115、125))で構成されている。その装置に対してファームウェアをダウンロードするために、新しくダウンロードするモジュールは一旦それぞれの制御部(100、110、120)の一時メモリ(102、112、122)に格納された後、運用中のCPUが参照した稼動系フラッシュメモリとは異なる待機系フラッシュメモリにローディングし、再起動を契機とした系切り替えにより新しいファームウェアをRAM(105、113、123)に展開し、起動するものであった。また、ダウンロード完了後、各CPUで使用しているファームウェアのフラッシュメモリの系切り替えが発生し、それまで運用していたファームウェアのバージョンがCPU間で異なった場合、すべてのCPUで使用するファームウェアを待機系フラッシュメモリに切り替える、又は何もしないといった処置を実施していた。
【0006】
【発明が解決しようとする課題】
しかしながら、複数のCPUを搭載した通信装置において、ファームウェアのダウンロードを個別に実施することによってバージョンアップを実施するため、あるCPUの統合モジュールについて誤ったものを選択した場合、CPU間の相関関係に重大な影響を与える可能性があり、ダウンロード完了後、ユーザサービスが停止してしまう恐れがあった。
【0007】
また、1つのCPUについて2つのフラッシュメモリで構成されている場合、新しくダウンロードするモジュールは運用中のCPUが参照したフラッシュメモリとは異なるフラッシュメモリにローディングを行い、再起動を契機とした系切り替えにより新しいファームウェアで起動する方法を行っていた。そのため、2つのフラッシュメモリのどちらもダウンロードにより更新されるため、ある統合モジュールにおいてダウンロード機能に関する内在的なバグがある場合は、当該モジュールをダウンロードした以降において、ダウンロード自体が実施できなくなる状態に陥る恐れがあった。
【0008】
また、ダウンロード完了後、各CPUで使用しているファームウェアのフラッシュメモリの系切り替えが発生し、それまで運用していたファームウェアのバージョンがCPU間で異なった場合、すべてのCPUで使用するメモリの系を待機系に切り替える、又は何もしないといった処置を実施していた。そのため、全ての系を待機系に切り替える対処では通常運用時においては、保守者の知らない間に運用状態が待機系に切り替わるといった問題が発生し、また何もしない対処では、ファームウェアのバージョンによってCPU間で相関関係がある場合は、運用へ重大な影響を及ぽすことも考えられる。
【0009】
本発明は、複数CPUを搭載した通信装置において、ファームウェアのダウンロードを個別に実施するのではなく、1つのモジュールに統合して行うことで、CPU間での相関関係を作業者が意識することなく実施でき、また、ダウンロードを行った新たなファームウェアに、ダウンロード機能に関する重大なバグが内在していた場合でも、ダウンロードにより更新されない記憶媒体を保持することにより、ダウンロード機能を担保することができ、また、ダウンロード後の運用時におけるファームウェアのバージョン管理及びバージョン不一致における問題を解決するための機能を備えたダウンロード方法及び装置を提供する。
【0010】
【課題を解決するための手段】
本発明におけるプログラムをダウンロードする方法は、
第1の稼働系フラッシュメモリ、第1の待機系フラッシュメモリ、第1の一時メモリ、第1のRAM、及び更新情報管理手段を含むシステム制御用の第1の演算手段と、それぞれが、第2の稼働系フラッシュメモリ、第2の待機系フラッシュメモリ、第2の一時メモリ、及び第2のRAMを含む1つ以上の第2の演算手段とを有し、更新情報管理手段が、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムの更新情報を保持している通信装置が、他の通信装置からプログラムをダウンロードする方法において、第1の演算手段が、前記他の通信装置から受信した、第1及び総ての第2の演算手段用のプログラムを1つのモジュールとした統合モジュールを第1の一時メモリに記憶する第1のステップと、前記統合モジュールに含まれる第1の演算手段用プログラムの更新情報が、第1の稼働系フラッシュメモリに記憶されているプログラムの更新情報よりも新しい場合、第1の演算手段が、該第1の演算手段用プログラムを、第1の一時記憶メモリから第1の稼働系フラッシュメモリへ記憶する第2のステップと、前記統合モジュールに含まれる第2の演算手段用プログラムの更新情報が、該第2の演算手段の第2の稼働系フラッシュメモリに記憶されているプログラムの更新情報よりも新しい場合、第1の演算手段が、該第2の演算手段用プログラムを、該第2の演算手段の第2の一時メモリへ送信する第3のステップと、第2の演算手段が、該第2の演算手段の第2の一時メモリに記憶された第2の演算手段用プログラムを、該第2の演算手段の第2の稼働系フラッシュメモリに記憶する第4のステップとを備えており、第1及び総ての第2の待機系フラッシュメモリは、確実に動作可能な当初バージョンのプログラムを記憶しており、第1の演算手段は、各第2の稼働系フラッシュメモリに記憶されたプログラムの更新情報を周期的に収集し、更新情報管理手段が管理している更新情報と、収集した更新情報とが一致しない場合には、その履歴情報を記録するとともに、ダウンロード完了後の経過時間が一定時間以内であれば、第1及び総ての第2の稼働系フラッシュメモリの情報を破棄して第1及び総ての第2の演算手段のリセットを実行し、リセット後、第1及び各第2の演算手段は、含んでいる第1又は第2の待機系フラッシュメモリのプログラムを、含んでいる第1又は第2のRAMに記憶して実行し、ダウンロード完了後の経過時間が一定時間を越えていれば、第1及び総ての第2の演算手段のリセットを実行し、リセット後、第1及び各第2の演算手段は、含んでいる第1又は第2の稼働系フラッシュメモリのプログラムを、含んでいる第1又は第2のRAMに記憶して実行することを特徴とする。
【0011】
本発明の方法における他の実施形態によれば、
通信装置は無線基地局装置であり、他の通信装置は監視制御装置であり、第1の演算手段はシステム制御用演算手段であり、複数の第2の演算手段は上り信号制御用演算手段と下り信号制御用演算手段であることも好ましい。
【0013】
更に、本発明の方法における他の実施形態によれば、
第1のステップ中に、他の通信装置から中止指示を受信した場合、転送中のシーケンス異常によって統合モジュールの転送が失敗した場合、又は第1の演算手段のリセットによってダウンロードが失敗した場合、第1の演算手段は、受信した統合モジュールを破棄することをも好ましい。
【0014】
更に、本発明の方法における他の実施形態によれば、
第2のステップ中に、メモリ異常によって第1の稼働系フラッシュメモリへの書込みが失敗した場合、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムを破棄し、第1の演算手段のリセットによって第1の稼働系フラッシュメモリへの書込みが失敗した場合、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムを破棄し、第1の演算手段及び総ての第2の演算手段のリセットを実行することも好ましい。
【0015】
更に、本発明の方法における他の実施形態によれば、
第3のステップ中に、転送中のシーケンス異常によって第2の演算手段の第2の一時メモリへの書込みが失敗した場合、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムを破棄し、第1の演算手段又は第2の演算手段のリセットによって第2の演算手段の第2の一時メモリへの書込みが失敗した場合、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムを破棄し、第1の演算手段及び総ての第2の演算手段のリセットを実行することも好ましい。
【0016】
更に、本発明の方法における他の実施形態によれば、
第4のステップ中に、メモリ異常によって第2の演算手段の第2の稼働系フラッシュメモリへの書込みが失敗した場合、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムを破棄し、第1の演算手段又は第2の演算手段のリセットによって該第2の演算手段の第2の稼働系フラッシュメモリへの書込みが失敗した場合、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムを破棄し、第1の演算手段及び総ての第2の演算手段のリセットを実行することも好ましい。
【0017】
更に、本発明の方法における他の実施形態によれば、
第4のステップの後に、第1から第4のステップを実行している間に、前記他の通信装置から中止指示を受信したか否かを判定する第5のステップを更に有し、中止指示を受信していない場合、通信装置は自律的に再起動し、再起動後、第1及び各第2の演算手段は、含んでいる第1又は第2の稼働系フラッシュメモリに記憶されたプログラムを、含んでいる第1又は第2のRAMに記憶して実行し、中止指示を受信している場合、第1及び各第2の演算手段は、含んでいる第1又は第2のRAMに現在記憶されているプログラムを実行し、通信装置に対する再起動が実施された後に、第1及び各第2の演算手段は、含んでいる第1又は第2の稼働系フラッシュメモリに記憶されたプログラムを、含んでいる第1又は第2のRAMに記憶して実行することも好ましい。
【0018】
本発明の通信装置は、
システム制御用の第1の演算手段と、1つ以上の第2の演算手段とを有し、第1の演算手段は、第1の稼働系フラッシュメモリ、第1の待機系フラッシュメモリ、第1の一時メモリ、第1のRAM、更新情報管理手段、及びダウンロード管理手段を含み、第2の演算手段は、それぞれ、第2の稼働系フラッシュメモリ、第2の待機系フラッシュメモリ、第2の一時メモリ、及び第2のRAMを含み、第1の待機系フラッシュメモリ及び第2の待機系フラッシュメモリは、確実に動作可能な当初バージョンのプログラムを記憶し、第1の一時メモリは、他の通信装置から受信した、第1及び総ての第2の演算手段用のプログラムを1つのモジュールとした統合モジュールを記憶し、更新情報管理手段は、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムの更新情報を保持し、ダウンロード管理手段は、前記統合モジュールに含まれる第1の演算手段用プログラムの更新情報が、第1の稼働系フラッシュメモリに記憶されているプログラムの更新情報よりも新しいか否かを判断し、新しい場合には、該第1の演算手段用プログラムを、第1の一時メモリから第1の稼働系フラッシュメモリへ記憶させ、前記統合モジュールに含まれる第2の演算手段用プログラムの更新情報が、該第2の演算手段の第2の稼働系フラッシュメモリに記憶されているプログラムの更新情報よりも新しいか否かを判断し、新しい場合には、該第2の演算手段用プログラムを、該第2の演算手段の第2の一時メモリへ送信させ、第2の演算手段は、該第2の演算手段の第2の一時メモリに記憶された第2の演算手段用プログラムを、該第2の演算手段の第2の稼働系フラッシュメモリに記憶し、第1の演算手段は、各第2の稼働系フラッシュメモリに記憶されたプログラムの更新情報を周期的に収集し、更新情報管理手段が管理している更新情報と、収集した更新情報とが一致しない場合には、その履歴情報を記録するとともに、ダウンロード完了後の経過時間が一定時間以内であれば、第1及び総ての第2の稼働系フラッシュメモリの情報を破棄して第1及び総ての第2の演算手段のリセットを実行し、リセット後、第1及び各第2の演算手段は、含んでいる第1又は第2の待機系フラッシュメモリのプログラムを、含んでいる第1又は第2のRAMに記憶して実行し、ダウンロード完了後の経過時間が一定時間を越えていれば、第1及び総ての第2の演算手段のリセットを実行し、リセット後、第1及び各第2の演算手段は、含んでいる第1又は第2の稼働系フラッシュメモリのプログラムを、含んでいる第1又は第2のRAMに記憶して実行することを特徴とする。
【0019】
【発明の実施の形態】
図1は、本発明におけるシステム構成図である。
【0020】
図1によれば、監視制御装置30は、遠隔ダウンロード用プログラム保管部31から出力された統合モジュールを、FTPを用いて遠隔ダウンロード制御部32によって送信する。統合モジュールF100は、基地局装置10のCPU毎のプログラムファイルを1つのモジュールとして統合したものである。その統合モジュールF100は、監視制御情報転送網50を介して、基地局装置10で受信される。
【0021】
基地局装置10は、統合モジュールF100を、システム制御部100のシステム制御用CPU101の一時メモリ102に格納する。一時メモリ102に格納された統合モジュールF100は、システム制御用CPU101、上り信号制御用CPU111及び下り信号制御用CPU121に実行させて通信処理を制御するために用いるCPU毎のファームウェアが1つに統合されたものである。システム制御用CPU101は、ダウンロード全体を管理するメインCPUである。バージョン管理部103は、現在運用しているCPU101のファームウェアのバージョンを管理している。ダウンロード管理部104は、他のCPU111及び121へ統合モジュールのファームウェアをローディングするか否かを制御する。特に、CPU毎に実行されているファームウェアバージョンを管理しており、統合モジュールにおけるCPU毎のプログラムについて、同一バージョンであれば、システム制御部100から当該CPUヘローディングせず、異なるバージョンであれば、当該CPUに対するプログラムをローディングする。
【0022】
基地局装置10は、複数個のCPU(ここでは3個)から構成されているが、それぞれのCPUが実行時に使用するファームウェアを格納するために電気的に書込み可能なフラッシュメモリとRAMとを個別に保持する。フラッシュメモリは2つあり、1つはダウンロードによるバージョンアップ時に書込み可能な領域である稼動系フラッシュメモリ106、114及び124であり、もう1つは書込み不可な領域である待機系フラッシュメモリ107、115及び125である。2つのフラッシュメモリのうち、どちらもダウンロードにより更新されると、ある統合モジュールにおいてダウンロード機能に関する内在的なバグがある場合は、当該モジュールをダウンロードした以降において、ダウンロード自体が実施できなくなる恐れがあるため、待機系フラッシュメモリ107、115、125は工場出荷時のデフォルト固定のままのバージョンとする。
【0023】
図2は、本発明における統合モジュールのフレームフォーマットである。
【0024】
図2によれば、統合モジュールは、図1におけるCPU毎のプログラム、即ち、システム制御用プログラム、上り信号制御用プログラム及び下り信号制御用プログラムそれぞれがヘッダ及びフッタによって区分されている。
【0025】
図3は、本発明におけるダウンロード後の起動動作の説明図である。
【0026】
図3によれば、ダウンロード完了後、基地局装置の各CPUとは独立したBootプログラムP100が起動時に系を選択する。ダウンロードが成功した場合は、BootプログラムP100は稼動系を選択し、起動時に使用するプログラムファイルをRAMに展開し、以後統合モジュールRAM上で動作する。ダウンロードが失敗した場合については、以下の実施の形態で説明する。
【0027】
図4は、本発明におけるダウンロードのフローチャートである。
【0028】
(S10)基地局装置10は、統合モジュールを、監視制御装置30からFTPを用いて受信し、CPU101の一時メモリ102に、受信した統合モジュールが格納する。基地局装置10は、これにより、システム状態をダウンロード状態に移行する。
(S20)統合モジュールにおけるCPU101用プログラムの更新情報が、稼働系フラッシュメモリ106に記憶されているプログラムの更新情報よりも新しければ、そのCPU101用プログラムを稼働系フラッシュメモリ106へ記憶する。
(S30)統合モジュールにおけるCPU111用プログラムの更新情報が、稼働系フラッシュメモリ114に記憶されているプログラムの更新情報よりも新しければ、そのCPU111用プログラムを一時メモリ112へ転送し記憶させる。
(S40)一時メモリ112に記憶されたCPU111用プログラムを、稼働系フラッシュメモリ114へ記憶させる。
(S50)統合モジュールにおけるCPU121用プログラムの更新情報が、稼働系フラッシュメモリ124に記憶されているプログラムの更新情報よりも新しければ、そのCPU121用プログラムを一時メモリ122へ転送し記憶させる。
(S60)一時メモリ122に記憶されたCPU121用プログラムを、稼働系フラッシュメモリ124へ記憶させる。
【0029】
図5a及びbは、本発明におけるダウンロード失敗時のリカバリ動作のフローチャートである。
【0030】
(S10)監視制御装置30からの統合モジュールの受信中に失敗した場合
この場合、取得した統合モジュールの破棄(S11)を行い、元プログラムで動作(S12)を継続する。各CPUの稼動系フラッシュメモリヘの書込みが完了するとシステム状態は運用状態に戻るが、ダウンロード失敗時においてサービス断を伴う系切り替えを安易に実施することなく、元プログラムでの動作を継続することにより回復措置を行う。
【0031】
(S20)システム制御用CPU101の稼働系フラッシュメモリ106に書込み中に失敗した場合
この場合、監視制御装置30からの中止指示において、中止してもダウンロードを継続するため(S20)に戻って引き続きダウンロード処理を進める(S21)。
また、メモリ不良等の書込み失敗による統合モジュール転送失敗において、総ての稼動系フラッシュメモリの情報を破棄(S22)し、RAM上の元プログラムで動作を継続するが、リセットを実施した場合は工場出荷時のファームウェアを格納している待機系フラッシュメモリで動作を行う(S23)。
また、当該システム制御用CPU101のリセットによるダウンロード失敗において、システム制御用CPUは待機系フラッシュメモリ上のファームウェアで起動し、その後全CPUの稼動系フラッシュメモリの情報を破棄し、更にリセット実施(S24)により待機系フラッシュメモリで動作を継続(S25)する。
【0032】
(S30、S50)上り信号制御用CPU111への転送中、及び、下り信号制御用CPU121への転送中に失敗した場合
この場合、監視制御装置30からの中止指示において、中止してもダウンロードを継続するためS30及びS50に戻って引き続きダウンロード処理を進める(S31、S51)。
また、転送中のシーケンス異常による統合モジュール転送失敗において、総ての稼動系フラッシュメモリ情報を破棄(S32、S52)し、RAM上の元プログラムで動作を継続するが、リセットを実施した場合は待機系フラッシュメモリで動作を行う(S33、S53)。
また、当該上り信号制御用CPU111、下り信号制御用CPU121、又はシステム制御用CPU101のリセットによるダウンロード失敗において、プログラム転送中のCPUは待機系フラッシュメモリ上のファームウェアで起動し、その後全CPUの稼動系フラッシュメモリの情報を破棄し、更にリセット実施(S34、S54)により待機系フラッシュメモリで動作を継続(S35、S55)する。
【0033】
(S40、S60)上り信号制御用CPU111及び下り信号制御用CPU121のフラッシュメモリに書込み中に失敗した場合
この場合、監視制御装置30からの中止指示において、中止してもダウンロードを継続するため(S40、S60)に戻って引き続きダウンロード処理を進める(S41、S61)。
また、メモリ不良等の書込み失敗による統合モジュール転送失敗において、総ての稼動系フラッシュメモリ情報を破棄(S42、S62)し、RAM上の元プログラムで動作を継続するが、リセットを実施した場合は待機系フラッシュメモリで動作を行う(S43、S63)。
また、当該上り信号制御用CPU111、下り信号制御用CPU121、又はシステム制御用CPU101のリセットによるダウンロード失敗において、プログラム転送中のCPUは待機系フラッシュメモリ上のファームウェアで起動し、その後全CPUの稼動系フラッシュメモリの情報を破棄し、更にリセット実施(S44、S64)により待機系フラッシュメモリで動作を継続(S45、S65)する。
また、下り信号制御用CPU121の稼動系フラッシュメモリヘの書込みに成功した場合は、各ダウンロード状態(S20〜S60)において監視制御装置30からの中止指示による失敗の有無(S70)により、中止指示が無ければ自律による再起動後新バージョンで起動(S71)し、中止指示が有れば再起動の実施(S80)により新バージョンで起動(S81)し、実施されなければ(S80)元プログラムのままで動作を継続(S82)する。
【0034】
前述した回復措置のとおり、監視制御装置30からの統合モジュール転送中のダウンロード失敗においては、元プログラムのままで動作し、システム制御用CPU101、上り信号制御用CPU111及び下り信号制御用CPU121に統合モジュール転送中のシーケンス異常によるダウンロード失敗においては、元プログラムが展開されているRAMで動作を継続し、系切り替えによる待機系での起動動作のためのリセットによるユーザサービスの停止を最小限に抑える措置を行うことを特徴とする。
【0035】
図6は、本発明における各CPUのバージョン情報取得動作のフローチャートである。
【0036】
基地局装置10のシステム制御部100のバージョン管理部103において、複数CPUのファームウェアのバージョンを管理している。バージョン情報は、待機系フラッシュメモリ107、115、125については出荷時に書込み、稼動系フラッシュメモリ106、114、124についてはダウンロード時に書き込む。運用中、各CPUに対してファームウェアのバージョンを周期的に問い合わせS70、S80、バージョン管理部103のバージョン情報と比較し、バージョン不一致が発生S90した場合は、システム制御部100において基地局装置10の再起動を実施するが、その際ダウンロード完了からの経過時間S100より、起動する系を選択することとする。バージョン不一致となる要因としては、あるCPUが待機系の出荷時プログラムで起動した場合であり、具体的にはおかしなプログラムをダウンロードして暴走したため、連続的にWDTリセットが発生した場合や、稼動系フラッシュメモリが正常に書き込めずチェックサム異常のため、ダウンロードによる再起動時に稼動系フラッシュメモリが異常となる場合、稼動系フラッシュメモリが何らかの異常により壊れてしまった場合が想定される。バージョン不一致による再起動後の起動する系の選択において、ダウンロード完了からのある一定時間以内においては、稼動系フラッシュメモリを破棄S110し、装置リセットS120により待機系で動作することとし、一定時間を越えた場合においては、稼動系フラッシュメモリの破棄は行わず、装置リセットS120により稼動系で起動することとする。これは、通常運用時において、保守者の知らない間に基地局装置のバージョンが切り替わってしまうことへの対処である。但し、稼動系の起動においてWDTリセットを繰り返す、又はチェックサム異常となる場合は、待機系で起動することとする。
【0037】
【発明の効果】
以上詳細に説明したように、本発明の方法及び装置によれば、複数CPUを搭載した通信装置について、ファームウェアのダウンロードを個別に実施するのではなく、1つのモジュールに統合して行うことで、CPU間での相関関係を作業者が意識することなく実施できる。また、ダウンロードを行った新たなファームウェアに、ダウンロード機能に関する重大なバグが内在していた場合でも、ダウンロードにより更新されない記憶媒体を保持することにより、ダウンロード機能を担保することができる。更に、ダウンロード後の運用時におけるファームウェアのバージョン管理及びバージョン不一致における問題を解決するための機能を備えることができる。
【図面の簡単な説明】
【図1】本発明におけるシステム構成図である。
【図2】本発明における統合モジュールのフレームフォーマットである。
【図3】本発明におけるダウンロード後の起動動作の説明図である。
【図4】本発明におけるダウンロードのフローチャートである。
【図5a】本発明におけるダウンロード失敗時のリカバリ動作のフローチャートである。
【図5b】本発明におけるダウンロード失敗時のリカバリ動作のフローチャートである。
【図6】本発明における各CPUのバージョン情報取得動作のフローチャートである。
【図7】従来のシステム構成図である。
【符号の説明】
10 基地局装置
20 加入者局装置
30 監視制御装置
31 遠隔ダウンロード用プログラム保管部
32 遠隔ダウンロード制御部
50 監視制御情報転送網
100 システム制御部
101 システム制御用CPU(CPU1)
102 一時メモリ
103 バージョン管理部
104 ダウンロード管理部
105 RAM
106 稼動系フラッシュメモリ
107 待機系フラッシュメモリ
110 上り信号制御部
111 上り信号制御用CPU(CPU2)
112 一時メモリ
113 RAM
114 稼動系フラッシュメモリ
115 待機系フラッシュメモリ
120 下り信号制御部
121 下り信号制御用CPU(CPU3)
122 一時メモリ
123 RAM
124 稼動系フラッシュメモリ
125 待機系フラッシュメモリ
F100 統合モジュールのフレームフォーマット
P100 Bootプログラム
Claims (8)
- 第1の稼働系フラッシュメモリ、第1の待機系フラッシュメモリ、第1の一時メモリ、第1のRAM、及び更新情報管理手段を含むシステム制御用の第1の演算手段と、それぞれが、第2の稼働系フラッシュメモリ、第2の待機系フラッシュメモリ、第2の一時メモリ、及び第2のRAMを含む1つ以上の第2の演算手段とを有し、更新情報管理手段が、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムの更新情報を保持している通信装置が、他の通信装置からプログラムをダウンロードする方法において、
第1の演算手段が、前記他の通信装置から受信した、第1及び総ての第2の演算手段用のプログラムを1つのモジュールとした統合モジュールを第1の一時メモリに記憶する第1のステップと、
前記統合モジュールに含まれる第1の演算手段用プログラムの更新情報が、第1の稼働系フラッシュメモリに記憶されているプログラムの更新情報よりも新しい場合、第1の演算手段が、該第1の演算手段用プログラムを、第1の一時記憶メモリから第1の稼働系フラッシュメモリへ記憶する第2のステップと、
前記統合モジュールに含まれる第2の演算手段用プログラムの更新情報が、該第2の演算手段の第2の稼働系フラッシュメモリに記憶されているプログラムの更新情報よりも新しい場合、第1の演算手段が、該第2の演算手段用プログラムを、該第2の演算手段の第2の一時メモリへ送信する第3のステップと、
第2の演算手段が、該第2の演算手段の第2の一時メモリに記憶された第2の演算手段用プログラムを、該第2の演算手段の第2の稼働系フラッシュメモリに記憶する第4のステップと、
を備えており、
第1及び総ての第2の待機系フラッシュメモリは、確実に動作可能な当初バージョンのプログラムを記憶しており、
第1の演算手段は、各第2の稼働系フラッシュメモリに記憶されたプログラムの更新情報を周期的に収集し、更新情報管理手段が管理している更新情報と、収集した更新情報とが一致しない場合には、その履歴情報を記録するとともに、
ダウンロード完了後の経過時間が一定時間以内であれば、第1及び総ての第2の稼働系フラッシュメモリの情報を破棄して第1及び総ての第2の演算手段のリセットを実行し、リセット後、第1及び各第2の演算手段は、含んでいる第1又は第2の待機系フラッシュメモリのプログラムを、含んでいる第1又は第2のRAMに記憶して実行し、
ダウンロード完了後の経過時間が一定時間を越えていれば、第1及び総ての第2の演算手段のリセットを実行し、リセット後、第1及び各第2の演算手段は、含んでいる第1又は第2の稼働系フラッシュメモリのプログラムを、含んでいる第1又は第2のRAMに記憶して実行する、
ことを特徴とする方法。 - 前記通信装置は無線基地局装置であり、前記他の通信装置は監視制御装置であり、第1の演算手段はシステム制御用演算手段であり、第2の演算手段は上り信号制御用演算手段と下り信号制御用演算手段であることを特徴とする請求項1に記載の方法。
- 前記第1のステップ中に、
前記他の通信装置から中止指示を受信した場合、転送中のシーケンス異常によって前記統合モジュールの転送が失敗した場合、又は前記第1の演算手段のリセットによってダウンロードが失敗した場合、第1の演算手段は、受信した前記統合モジュールを破棄することを特徴とする請求項1又は2に記載の方法。 - 前記第2のステップ中に、
メモリ異常によって第1の稼働系フラッシュメモリへの書込みが失敗した場合、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムを破棄し、
第1の演算手段のリセットによって第1の稼働系フラッシュメモリへの書込みが失敗した場合、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムを破棄し、第1の演算手段及び総ての第2の演算手段のリセットを実行することを特徴とする請求項1から3のいずれか1項に記載の方法。 - 前記第3のステップ中に、
転送中のシーケンス異常によって第2の演算手段の第2の一時メモリへの書込みが失敗した場合、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムを破棄し、
第1の演算手段又は第2の演算手段のリセットによって第2の演算手段の第2の一時メモリへの書込みが失敗した場合、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムを破棄し、第1の演算手段及び総ての第2の演算手段のリセットを実行することを特徴とする請求項1から4のいずれか1項に記載の方法。 - 前記第4のステップ中に、
メモリ異常によって第2の演算手段の第2の稼働系フラッシュメモリへの書込みが失敗した場合、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムを破棄し、
第1の演算手段又は第2の演算手段のリセットによって該第2の演算手段の第2の稼働系フラッシュメモリへの書込みが失敗した場合、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムを破棄し、第1の演算手段及び総ての第2の演算手段のリセットを実行することを特徴とする請求項1から5のいずれか1項に記載の方法。 - 第4のステップの後に、第1から第4のステップを実行している間に、前記他の通信装置から中止指示を受信したか否かを判定する第5のステップを更に有し、
中止指示を受信していない場合、通信装置は自律的に再起動し、再起動後、第1及び各第2の演算手段は、含んでいる第1又は第2の稼働系フラッシュメモリに記憶されたプログラムを、含んでいる第1又は第2のRAMに記憶して実行し、
中止指示を受信している場合、第1及び各第2の演算手段は、含んでいる第1又は第2のRAMに現在記憶されているプログラムを実行し、通信装置に対する再起動が実施された後に、第1及び各第2の演算手段は、含んでいる第1又は第2の稼働系フラッシュメモリに記憶されたプログラムを、含んでいる第1又は第2のRAMに記憶して実行することを特徴とする請求項1から6のいずれか1項に記載の方法。 - システム制御用の第1の演算手段と、1つ以上の第2の演算手段とを有し、
第1の演算手段は、第1の稼働系フラッシュメモリ、第1の待機系フラッシュメモリ、第1の一時メモリ、第1のRAM、更新情報管理手段、及びダウンロード管理手段を含み、
第2の演算手段は、それぞれ、第2の稼働系フラッシュメモリ、第2の待機系フラッシュメモリ、第2の一時メモリ、及び第2のRAMを含み、
第1の待機系フラッシュメモリ及び第2の待機系フラッシュメモリは、確実に動作可能な当初バージョンのプログラムを記憶し、
第1の一時メモリは、他の通信装置から受信した、第1及び総ての第2の演算手段用のプログラムを1つのモジュールとした統合モジュールを記憶し、
更新情報管理手段は、第1及び総ての第2の稼働系フラッシュメモリに記憶されているプログラムの更新情報を保持し、
ダウンロード管理手段は、前記統合モジュールに含まれる第1の演算手段用プログラムの更新情報が、第1の稼働系フラッシュメモリに記憶されているプログラムの更新情報よりも新しいか否かを判断し、新しい場合には、該第1の演算手段用プログラムを、第1の一時メモリから第1の稼働系フラッシュメモリへ記憶させ、前記統合モジュールに含まれる第2の演算手段用プログラムの更新情報が、該第2の演算手段の第2の稼働系フラッシュメモリに記憶されているプログラムの更新情報よりも新しいか否かを判断し、新しい場合には、該第2の演算手段用プログラムを、該第2の演算手段の第2の一時メモリへ送信させ、
第2の演算手段は、該第2の演算手段の第2の一時メモリに記憶された第2の演算手段用プログラムを、該第2の演算手段の第2の稼働系フラッシュメモリに記憶し、
第1の演算手段は、各第2の稼働系フラッシュメモリに記憶されたプログラムの更新情報を周期的に収集し、更新情報管理手段が管理している更新情報と、収集した更新情報とが一致しない場合には、その履歴情報を記録するとともに、
ダウンロード完了後の経過時間が一定時間以内であれば、第1及び総ての第2の稼働系フラッシュメモリの情報を破棄して第1及び総ての第2の演算手段のリセットを実行し、リセット後、第1及び各第2の演算手段は、含んでいる第1又は第2の待機系フラッシュメモリのプログラムを、含んでいる第1又は第2のRAMに記憶して実行し、
ダウンロード完了後の経過時間が一定時間を越えていれば、第1及び総ての第2の演算手段のリセットを実行し、リセット後、第1及び各第2の演算手段は、含んでいる第1又は第2の稼働系フラッシュメモリのプログラムを、含んでいる第1又は第2のRAMに記憶して実行する、
ことを特徴とする通信装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003193681A JP4029789B2 (ja) | 2003-07-08 | 2003-07-08 | プログラムをダウンロードする方法及び装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003193681A JP4029789B2 (ja) | 2003-07-08 | 2003-07-08 | プログラムをダウンロードする方法及び装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005031796A JP2005031796A (ja) | 2005-02-03 |
JP4029789B2 true JP4029789B2 (ja) | 2008-01-09 |
Family
ID=34205079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003193681A Expired - Lifetime JP4029789B2 (ja) | 2003-07-08 | 2003-07-08 | プログラムをダウンロードする方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4029789B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007213292A (ja) | 2006-02-09 | 2007-08-23 | Nec Electronics Corp | マルチプロセッサシステム及びスレーブシステムの起動方法 |
JP5103823B2 (ja) * | 2006-08-18 | 2012-12-19 | 富士通株式会社 | 情報処理装置および入出力要求制御方法 |
-
2003
- 2003-07-08 JP JP2003193681A patent/JP4029789B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2005031796A (ja) | 2005-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100525206C (zh) | 自动恢复设备故障的实现方法及系统 | |
US8930931B2 (en) | Information processing apparatus using updated firmware and system setting method | |
EP1887759B1 (en) | Method and system for realizing automatic restoration after a device failure | |
CN111045866B (zh) | 一种bmc故障处理方法、装置、电子设备及存储介质 | |
CN107315656B (zh) | 多内核的嵌入式plc软件恢复方法和plc | |
WO2009109145A1 (zh) | 提高通信设备可靠性的方法及装置 | |
JP2002333990A (ja) | プログラム更新装置およびプログラム更新方法 | |
WO2019156062A1 (ja) | 情報処理システム、情報処理装置、情報処理装置のbios更新方法、及び情報処理装置のbios更新プログラム | |
RU2602378C9 (ru) | Стойка с множеством модулей управления стойкой и способ обновления встроенного программного обеспечения, используемого для стойки | |
JPH086796A (ja) | ダウンロード方法、そのネットワークシステム、及びデータファイル更新方法 | |
US20130117518A1 (en) | System controller, information processing system and method of saving and restoring data in the information processing system | |
JP2023035930A (ja) | コンピュータシステム及びコンピュータシステムのブート方法 | |
CN101515834B (zh) | 一种主控卡、基于多备份主控卡的切换系统及其切换方法 | |
JP4029789B2 (ja) | プログラムをダウンロードする方法及び装置 | |
JPH117382A (ja) | ファームウェアのバージョンアップ方法 | |
CN111427721B (zh) | 异常恢复方法及装置 | |
JP2007172200A (ja) | ソフトウェア更新システム | |
WO2011158367A1 (ja) | 実行中のプログラムの更新技術 | |
CN116185510A (zh) | 分区切换启动方法、阵列服务器和计算机可读存储介质 | |
JP4363739B2 (ja) | 伝送装置 | |
JPH11327914A (ja) | 自動インストールシステムおよび自動インストールプログラムを記録した記録媒体 | |
JPH08329006A (ja) | 障害通知方式 | |
JP6554801B2 (ja) | 冗長通信装置及びその制御方法 | |
JP2001134428A (ja) | 運用プログラム更新方法及び装置 | |
JP2002044693A (ja) | 電子交換機の制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050120 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070502 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070605 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070806 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070925 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071008 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4029789 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101026 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101026 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111026 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111026 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121026 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121026 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131026 Year of fee payment: 6 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |