説明

無線基地局装置

【課題】複数備えた予備ファイルの内容が全て破壊される事態を抑制でき、ファイル異常による装置運用停止状態の発生を抑制できる無線基地局装置を提供する。
【解決手段】読み書きが可能であって無線基地局装置の動作に必要な第1のデータを記憶する第1の記憶部と、第1の記憶部のデータを読み込みながら動作するCPUと、データの読み出しが可能かつ書き込みが不可能であって、第1のデータと同一内容の第2のデータを記憶する第2の記憶部とを備える無線基地局装置を、無線基地局装置の起動時において、第1の記憶部の整合性検査を行い、第1のデータが正常である場合は、該第1のデータを読み込みながら動作し、前記整合性検査を行った第1のデータが異常である場合は、第2の記憶部の整合性検査を行い、第2のデータが正常である場合は、該第2のデータを第1の記憶部に展開し読み込みながら動作するように構成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、無線基地局装置等の電子装置に関し、例えば、携帯電話用無線基地局装置のように、無線基地局装置の機能を実行する実行プログラム等のソフトウェアファイルを、装置に内蔵するフラッシュROM(FLASH‐ROM:Read Only Memory)等のメモリに搭載する無線基地局装置に関するものである。
【背景技術】
【0002】
無線基地局装置、例えば携帯電話用無線基地局装置においては、無線基地局装置の機能を実行する実行プログラム等の各種ソフトウェアファイルを、フラッシュROMに格納している。例えば、停電や電源切断等により、フラッシュROMの記憶内容が破壊されることが起こると、ソフトウェアファイルの内容が誤った内容である異常状態になり、無線基地局装置の機能が正常に働かなくなって、装置運用停止状態になる。
そのため、従来は、ファイルをその世代により制御するファイル管理を行うか、または、同一内容のファイルを2重に備える2重系制御によるファイル管理を行うようにしている。
【0003】
下記の特許文献1には、フラッシュROMに、運用面/予備面の運用プログラムを記憶する無線基地局装置が記載されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2004-280340公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上述したような従来のファイル管理においては、2重に備えたファイルの内容が両方とも破壊されたり、何らかの要因により消滅した場合は、復旧手段がないという課題があった。
本発明は、このような従来の課題を解決するために為されたもので、複数備えた予備ファイルの内容が全て破壊や消滅する事態を抑制でき、ファイル異常による装置運用停止状態の発生を抑制できる無線基地局装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するための、本願発明の代表的な構成は、次のとおりである。すなわち、
データの読み出し及び書き込みが可能であって、無線基地局装置の動作に必要な第1のデータを記憶する第1の記憶部と、
前記第1の記憶部と接続され、前記第1の記憶部のデータを読み込みながら動作するCPUと、
前記CPUと接続され、データの読み出し及び書き込みが可能であって、前記第1のデータと同一内容の第2のデータを記憶する第2の記憶部と、
前記CPUと接続され、データの読み出し及び書き込みが可能であって、前記第1のデータと同一内容の第3のデータを記憶する第3の記憶部と、
前記CPUと接続され、データの読み出しが可能かつ書き込みが不可能であって、前記第1のデータと同一内容の第4のデータを記憶する第4の記憶部とを備え、
前記CPUは、無線基地局装置の起動時において、前記第1の記憶部の第1のデータの整合性検査を行い、該第1のデータが正常である場合は、該第1のデータを読み込みながら動作し、前記整合性検査を行った第1のデータが異常である場合は、前記第2の記憶部の第2のデータの整合性検査を行い、該第2のデータが正常である場合は、該第2のデータを前記第1の記憶部に展開し、該第1の記憶部に展開した第2のデータを読み込みながら動作し、前記整合性検査を行った第2のデータが異常である場合は、前記第3の記憶部の第3のデータの整合性検査を行い、該第3のデータが正常である場合は、該第3のデータを前記第1の記憶部に展開し、該第1の記憶部に展開した第3のデータを読み込みながら動作し、前記整合性検査を行った第3のデータが異常である場合は、前記第4の記憶部の第4のデータの整合性検査を行い、該第4のデータが正常である場合は、該第4のデータを前記第1の記憶部に展開し、該第1の記憶部に展開した第4のデータを読み込みながら動作することを特徴とする無線基地局装置。
【発明の効果】
【0007】
本願発明によれば、複数備えた予備ファイルの内容が全て破壊や消滅する事態を抑制でき、ファイル異常による装置運用停止状態の発生を抑制できる。
【図面の簡単な説明】
【0008】
【図1】本発明の第1実施形態に係る無線基地局装置のハードウェア構成の概要を示す図である。
【図2】本発明の第1実施形態に係る装置起動時の動作を示す図である。
【図3】本発明の第1実施形態に係る定時照合時の動作を示す図である。
【図4】本発明の第2実施形態に係るファイル受信装置とファイル送信装置のハードウェア構成の概要を示す図である。
【図5】本発明の第2実施形態に係るファイルフォーマットの構成例を示す図である。
【図6】本発明の第2実施形態に係るファイル更新シーケンスを示す図である。
【図7】本発明の第2実施形態に係る更新ファイル受信前のバージョンチェックテーブルとファイルバージョンテーブルを示す図である。
【図8】本発明の第2実施形態に係る更新後のバージョンチェックテーブルとファイルバージョンテーブルを示す図である。
【発明を実施するための形態】
【0009】
(第1実施形態)
本発明の第1実施形態の無線基地局装置について、図1を参照しながら説明する。図1は、本発明の実施形態に係る無線基地局装置のハードウェア構成の概要を示した一例を表す図である。
本実施形態の無線基地局装置は、無線基地局周辺設備(以下RRH:Remote Radio Head)であり、この無線基地局装置のソフトウェアプログラムやFGPA(Field Programmable Gate Array)やDSP(Digital Signal Processor)のファームウェアプログラムや無線基地局装置で使用するパラメータ等が、フラッシュROMに格納されている。
【0010】
図1に示すように、無線基地局装置は、第1記憶部11と、第2記憶部12と、第3記憶部13と、第4記憶部14と、CPU(Central Processing Unit)21とを備える。CPU21と、第1記憶部11、第2記憶部12、第3記憶部13、第4記憶部14とは、バス22で接続されている。
【0011】
第1記憶部11は、SDRAM(Synchronous Dynamic Random Access Memory)で構成され、ファイルエリア名称が「SD」であり、記憶容量が7MB(メガバイト)で、データの読み出し及び書き込みが可能である。第1記憶部11には、CPU21が動作する動作プログラムを含むファイルで構成される第1データが格納されており、CPU21は、第1記憶部11に記憶されているデータを読み込みながら動作するようになっている。
【0012】
第2記憶部12は、フラッシュROMで構成され、ファイルエリア名称が「N」であり、記憶容量が7MB(メガバイト)で、データの読み出し及び書き込みが可能である。第2記憶部12には、第1記憶部11の第1データと同一内容の第2データが記憶されている。
【0013】
第3記憶部13は、フラッシュROMで構成され、ファイルエリア名称が「E」であり、記憶容量が7MB(メガバイト)で、データの読み出し及び書き込みが可能である。第3記憶部13には、第1記憶部11の第1データと同一内容の第3データが記憶されている。
【0014】
第4記憶部14は、フラッシュROMで構成され、ファイルエリア名称が「Safe」であり、記憶容量が7MB(メガバイト)で、データの読み出しは可能であるが、運用中における書き込みは不可能である。第4記憶部14には、第1記憶部11の第1データと同一内容の第4データが記憶されている。
第4記憶部14のデータは、無線基地局装置が運用に入る前の段階で、例えば工場からの出荷時等のタイミングで書き込まれ、無線基地局装置が運用に入った後は、書き換えができないようになっている。これは、装置運用中において、装置の動作プログラムが予期しない異常動作を行って、第4記憶部14に不正データの書き込みをすることがないようにするためである。
【0015】
次に、無線基地局装置の電源を投入し、装置を起動するときの動作を、図2を用いて説明する。図2は、本実施形態に係る装置起動時の動作を示す図である。
図2に示すように、まず、CPU21は、第1記憶部11の第1データを取得して、第1データが正しいか否かを検査する整合性検査を行う(S21)。この整合性検査は、例えばサムチェックにより行われる。整合性検査を行った第1データが正常であった場合は、CPU21は、該第1のデータを読み込みながら動作する(S26)。
【0016】
整合性検査を行った第1のデータが異常であった場合は、CPU21は、第2記憶部12の第2データを取得して、第2データの整合性検査をサムチェック等により行う(S22)。第2データが正常であった場合は、CPU21は、該第2のデータを第1記憶部11に複製して展開し(S25)、該展開した第1記憶部11のデータを読み込みながら動作する(S26)。
【0017】
S22で整合性検査を行った第2のデータが異常であった場合は、CPU21は、第3記憶部13の第3データを取得して、第3データの整合性検査をサムチェック等により行う(S23)。第3データが正常であった場合は、CPU21は、該第3のデータを第1記憶部11に複製して展開し(S25)、該展開した第1記憶部11のデータを読み込みながら動作する(S26)。
【0018】
S23で整合性検査を行った第3のデータが異常であった場合は、CPU21は、第4記憶部14の第4データを取得して、第4データの整合性検査をサムチェック等により行う(S24)。第4データが正常であった場合は、CPU21は、該第4のデータを第1記憶部11に複製して展開し(S25)、該展開した第1記憶部11のデータを読み込みながら動作する(S26)。
【0019】
次に、無線基地局装置の定時照合時の動作を、図3を用いて説明する。図3は、本実施形態に係る定時照合時の動作を示す図である。ここで定時照合とは、無線基地局装置内で自立的に定めた時刻や、上位の管理装置から指示された時刻に、フラッシュROM内のデータの整合性を検査することをいう。
【0020】
図3に示すように、まず、CPU21は、第1記憶部11の第1データを取得して、サムチェック等により第1データの整合性検査を行い(S31)、次に、第2記憶部12の第2データを取得して、サムチェック等により第2データの整合性検査を行い、次に、第3記憶部13の第3データを取得して、サムチェック等により第3データの整合性検査を行う。
【0021】
整合性検査を行った第1記憶部11の第1データが異常であった場合は、CPU21は、第2記憶部12の第2データと第3記憶部13の第3データのうち、いずれか正常な状態であるデータで、第1記憶部11の第1データを書き換えて更新する(S35)。
【0022】
また、整合性検査を行った第2記憶部12の第2データが異常であった場合は、CPU21は、第1記憶部11の第1データと第3記憶部13の第3データのうち、いずれか正常な状態であるデータで、第2記憶部12の第2データを書き換えて更新する(S32)。
【0023】
また、整合性検査を行った第3記憶部13の第3データが異常であった場合は、CPU21は、第1記憶部11の第1データと第2記憶部12の第2データのうち、いずれか正常な状態であるデータで、第3記憶部13の第3データを書き換えて更新する(S33)。
【0024】
また、定時照合時の場合は、CPU21は、第4記憶部14の第4データの整合性検査を行わない。この理由は、第4記憶部14は書き込み(S34)が不可能なように設定されているので、装置運用中において、装置の動作プログラムが予期しない異常動作を行って、第4記憶部14に不正データの書き込みをすることがなく、異常データとなる可能性が低いためである。
【0025】
前記実施形態によれば、CPU21が動作プログラム等を読み込みながら動作する第1記憶部と同一内容のデータを保存する第4記憶部14を、装置運用中の書き込みが不可能なように設定しているので、装置の動作プログラムが予期しない異常動作を行って第4記憶部14に不正データの書き込みをすることがなく、第4記憶部14が異常データとなる可能性を低くすることができる。これにより、第1記憶部のデータが壊れたときに復旧できる可能性を大きくすることができる。
【0026】
(第2実施形態)
次に、本発明の第2実施形態について説明する。
無線基地局装置やその周辺装置は、複数のプログラムファイルやパラメータファイルを利用して動作するため、通常、ファイルにバージョンを付与し、正常動作するファイルバージョンの組合せを管理している。しかし、バージョンが管理されていても、プログラムファイルの更新をオペレータが行う場合において、人為的なミスによって、誤ったバージョンのファイルを組み合わせてファイル更新してしまう可能性があり、システムの運用で誤動作する恐れがある。
【0027】
第2実施形態においては、例えば、無線基地局装置やその周辺装置において、ソフトウェアの各種ファイルのバージョンを自動チェックすることにより誤更新防止を行い、不適切なバージョンの組合せにより装置運用停止状態が発生することを防止するものである。
本発明の第2実施形態のファイル更新技術について、図4ないし図8を参照しながら説明する。図4は、本発明の第2実施形態に係るファイル受信装置(装置R)とファイル送信装置(装置S)のハードウェア構成の概要を示す図である。
【0028】
装置Rは、複数のファイルを有し、該ファイルが更新される装置であり、例えば第1実施形態の無線基地局装置である。装置Rは、図4に示すように、揮発性メモリである第1記憶部11(SDRAM)と、不揮発性メモリである第2記憶部12(フラッシュROM)と、CPU21とを備え、さらに、FPGA23と、送受信部24とを備える。CPU21と、第1記憶部11、第2記憶部12、FPGA23、送受信部24は、例えばバス22で接続されている。第1実施形態と同じものについては、同符号を付し説明を省略する。
送受信部24は、装置Sと各種データを送受信するためのもので、Etherケーブル等の通信路30を介して、装置Sからファイルデータを受信する。
【0029】
第2記憶部12には、例えばバージョン11のプログラムファイルA(プログラムファイルA11)を、保持し記憶している。このように、バージョンnのファイルMをファイルMnと称すことがある。また、バージョン11のプログラムファイルB(プログラムファイルB11)、バージョン11のプログラムファイルC(プログラムファイルC11)、バージョン11のパラメータファイルa(パラメータファイルa11)、バージョン11のパラメータファイルb(パラメータファイルb11)、バージョン11のパラメータファイルc(パラメータファイルc11)を、保持し記憶している。これらのバージョンが、ファイルごとに異なっていてもよいことは勿論である。
【0030】
装置RのCPU21は、第2記憶部12(フラッシュROM)に格納されているプログラムファイルおよびパラメータファイルを、装置起動時に第1記憶部11(SDRAM)へ展開し、CPU21、FPGA23がプログラムを実行し、必要に応じてパラメータファイルの値を参照/更新する。
【0031】
装置Sは、ファイル更新を実施(更新ファイルを送信)する装置であり、例えばPC(パーソナルコンピュータ)で構成される。
装置Sは、メモリ42(SDRAM)と、記憶部43(フラッシュROM)と、CPU41と、送受信部44とを備える。CPU41と、メモリ42、記憶部43、送受信部44は、例えばバス45で接続されている。
送受信部44は、装置Rと各種データを送受信するためのもので、通信路30を介して、装置Rへファイルデータを送信する。
【0032】
記憶部43には、更新用のファイル、例えば、プログラムファイルA12(バージョン12のプログラムファイルA)、プログラムファイルB12、プログラムファイルC12、パラメータファイルa12、パラメータファイルb12、パラメータファイルc12を、保持し記憶している。
【0033】
次に、第2実施形態に係るファイルフォーマットの構成例を説明する。図5は、本発明の第2実施形態に係るプログラムファイルおよびパラメータファイルのフォーマットの構成例を示す図である。これらのプログラムファイルおよびパラメータファイルは、装置Rの第2記憶部12(フラッシュROM)や、装置Sの記憶部43に記憶されているものである。
図5に示すように、各ファイルのヘッダ部には、当該ファイルの種別を表すファイル種別51と、当該ファイルのバージョンを表すファイルバージョン52が記憶されている。図5の例では、先頭のファイル種別51はA、そのファイル種別Aのファイルバージョン52は11である。
【0034】
その次に、当該バージョンのファイル(プログラムファイルA11)が他のファイルのどのバージョンと対応可能か、つまり、当該ファイルA11と組み合わせて動作させたときに正常動作する他のファイルのバージョンがどの範囲にあるかを示す、対応バージョン53が記憶されている。
図5の例では、ファイル種別A、つまり自ファイルの下限バージョン54と上限バージョン55(図5の対応Aバージョン)、ファイル種別Bの下限バージョンと上限バージョン(対応Bバージョン)、ファイル種別Cの下限バージョンと上限バージョン(対応Cバージョン)、ファイル種別aの下限バージョンと上限バージョン(対応aバージョン)、ファイル種別bの下限バージョンと上限バージョン(対応bバージョン)、ファイル種別cの下限バージョンと上限バージョン(対応cバージョン)が記憶されている。
ここで、下限バージョンは最も古いバージョンを、上限バージョンは最も新しいバージョンを表す。
【0035】
例えば、プログラムファイルA11の対応Bバージョン、すなわち、ファイル種別Bの下限バージョンが1で上限バージョンが15の場合は、当該プログラムファイルA11は、バージョンが1〜15のプログラムファイルBと組み合わせて動作させたときに正常動作することを意味する。
なお、自ファイルの対応バージョン(図5の例では対応Aバージョン)の下限バージョンには最小値(例えば0:ゼロ)を、上限バージョンには最大値(例えば255)を設定するが、この自ファイルの対応バージョン(図5の例では対応Aバージョン)は、必ずしも必要ではなく省略することもできる。
【0036】
同様にして、図5には記載を省略しているが、プログラムファイルB11が他のファイルのどのバージョンと対応可能か、つまり、当該ファイルと組み合わせて動作させたときに正常動作する他のファイルのバージョンがどの範囲にあるかを示す、対応バージョン(対応A〜C,a〜cバージョン)が記憶されている。
以下同様にして、図5には記載を省略しているが、プログラムファイルC11が他のファイルのどのバージョンと対応可能かを示す対応バージョン(対応A〜C,a〜cバージョン)、パラメータファイルa11が他のファイルのどのバージョンと対応可能かを示す対応バージョン(対応A〜C,a〜cバージョン)、パラメータファイルb11が他のファイルのどのバージョンと対応可能かを示す対応バージョン(対応A〜C,a〜cバージョン)、パラメータファイルc11が他のファイルのどのバージョンと対応可能かを示す対応バージョン(対応A〜C,a〜cバージョン)が記憶されている。
さらに続いて、各プログラムファイルや各パラメータファイルの内容が記憶されている。
【0037】
次に、第2実施形態に係るファイル更新シーケンスを、図6ないし図8を用いて説明する。図6は、第2実施形態に係るファイル更新シーケンスを示す図である。図7は、第2実施形態において、ファイル更新開始要求を受信した装置Rが第1記憶部11(SDRAM)上に展開したバージョンチェックテーブルとファイルバージョンテーブルを示す図である。図8は、第2実施形態において、受信した更新ファイルにより、図7のバージョンチェックテーブルとファイルバージョンテーブルが更新された状態を示す図である。
【0038】
まず、装置S(例えばパソコン)内に更新しようとする内容の更新ファイルを準備し、装置Sの送受信部44からから装置Rの送受信部24へ、通信路30を介してファイル更新開始要求を送信する(図6のステップS1)。
ファイル更新開始要求を受信した装置Rは、第1記憶部11(SDRAM)上に、図7に示すファイルバージョンテーブル72およびバージョンチェックテーブル71を展開する(ステップS2)。詳しくは、装置Rの第2記憶部12(フラッシュROM)から、各ファイル種別(A〜C、a〜c)のヘッダ部を読み出し、各ファイル種別のファイルバージョン値(例えば各ファイル種別A〜C、a〜cのVer.11)をファイルバージョンテーブル72に設定し(図7参照)、各ファイル種別の対応バージョンの下限バージョンと上限バージョンを、バージョンチェックテーブル71に設定する。
【0039】
例えば、図7のバージョンチェックテーブル71に示すように、ファイル種別Aについては、対応Aバージョンの下限バージョン0と上限バージョン255、対応Bバージョンの下限バージョン1と上限バージョン11、対応Cバージョンの下限バージョン3と上限バージョン11、対応aバージョンの下限バージョン10と上限バージョン11、対応bバージョンの下限バージョン11と上限バージョン11、対応cバージョンの下限バージョン9と上限バージョン11を設定する。
同様に、ファイル種別B〜C、a〜cについても、それぞれ、対応Aバージョン〜対応cバージョンの下限バージョンと上限バージョンを設定する。
【0040】
このようにして、ファイルバージョンテーブル72とバージョンチェックテーブル71の全項目に対して設定完了後、装置Rは、装置Sへファイル更新開始応答を送信する(ステップS3)。
ファイル更新開始応答を受信した装置Sは、記憶部43から更新ファイルを読み出し、装置Sの送受信部44から装置Rの送受信部24へ、通信路30を介して、更新ファイルを順次送信する、具体的にはまず、プログラムファイルA12(ファイル種別AのVer.12)を送信する(ステップS4)。
このとき送信するプログラムファイルA12には、ファイル種別(A)、ファイルバージョン(Ver.12)、プログラムファイルA12に対応可能な他のファイルのバージョンを示す対応バージョン(対応Aバージョン〜対応cバージョン)、ファイル内容(プログラム内容)が含まれている。
【0041】
更新ファイルA12を受信した装置Rは、該更新ファイルA12を第1記憶部11(SDRAM)上に保持する(ステップS5)。該保持した更新ファイルA12のヘッダ部を読み出し、ファイル種別を調べ、ファイル種別(この場合はA)に対応するファイルバージョンテーブル72に該受信ファイルのバージョン(Ver.12)を設定し更新する(図8参照)。また、バージョンチェックテーブル71のファイル種別Aに関する対応Aバージョン〜対応cバージョンの下限バージョンおよび上限バージョンに、受信したプログラムファイルA12に含まれる対応Aバージョン〜対応cバージョンの上下限バージョンを設定し更新する(ステップS6)。
【0042】
図8の例では、ファイル種別Aについては、対応Aバージョンの下限バージョン0と上限バージョン255、対応Bバージョンの下限バージョン10と上限バージョン12、対応Cバージョンの下限バージョン10と上限バージョン12、対応aバージョンの下限バージョン11と上限バージョン12、対応bバージョンの下限バージョン11と上限バージョン12、対応cバージョンの下限バージョン11と上限バージョン12が設定される。
装置Rは、以上説明したファイルバージョンテーブル72とバージョンチェックテーブル71の設定完了後、装置Sに対して受信完了通知を送信する(ステップS7)。
【0043】
受信完了通知を受信した装置Sは、記憶部43から次の更新ファイルB12(ファイル種別BのVer.12)を読み出し、装置Sの送受信部44から装置Rの送受信部24へ、通信路30を介して、更新ファイルB12を送信する。
更新ファイルB12を受信した装置Rは、前述した更新ファイルA12と同様に、更新ファイルB12を第1記憶部11(SDRAM)上に保持し、ファイルバージョンテーブル72とバージョンチェックテーブル71の値を更新する。更新後、装置Sに対して受信完了通知を送信する。
【0044】
受信完了通知を受信した装置Sは、同様の更新ファイル送信動作を繰り返した後、最後の更新ファイルc12(ファイル種別cのVer.12)を、記憶部43から読み出し、装置Sの送受信部44から装置Rの送受信部24へ、通信路30を介して送信する(ステップS8)。
更新ファイルc12を受信した装置Rは、更新ファイルc12を第1記憶部11(SDRAM)上に保持し(ステップS9)、ファイルバージョンテーブル72とバージョンチェックテーブル71の値を更新する(ステップS10)。更新後、装置Sに対して受信完了通知を送信する(ステップS11)。
【0045】
最後の更新ファイルc12に対する受信完了通知を受信した装置Sは、ファイル更新終了要求を装置Rへ送信する(ステップS12)、つまり、更新ファイルを全て(任意の数)送信した後、ファイル更新終了要求を送信する。
【0046】
装置Rは、ファイル更新終了要求を受信することにより、装置Sからの更新ファイルが全て送信されたことを認識し、バージョンチェックテーブル71のファイル種別A〜C、a〜cの順にバージョンチェック処理を行う(ステップS13)。バージョンチェック処理の詳細は後述する。
装置Rは、バージョンチェックがOKであった場合は(ステップS14でOK)、揮発性メモリである第1記憶部11(SDRAM)上に保持していた更新ファイルを、不揮発性メモリである第2記憶部12(フラッシュROM)へ格納して保存し(ステップS15)、ファイル更新終了応答(OK)を装置Sへ送信して(ステップS16)、ファイル更新処理を終了する。
【0047】
装置Rは、バージョンチェックがNG(No Good)であった場合は(ステップS14でNG)、揮発性メモリである第1記憶部11(SDRAM)上に保持していた更新ファイルを破棄し(ステップS17)、ファイル更新終了応答(NG)を装置Sへ送信して(ステップS18)、ファイル更新処理を終了する。
【0048】
次に、第2実施形態に係るバージョンチェック方法を、図8を用いて説明する。図8は、装置Rの第1記憶部11(SDRAM)上において、ファイルバージョンテーブル72が、装置Sから送信された更新ファイル(A〜C、a〜c)に含まれるファイルバージョン情報により更新され、バージョンチェックテーブル71が、装置Sから送信された更新ファイルに含まれる対応バージョン情報により更新された状態を示す図である。
この例では、装置Rの有する全てのファイル種別(A〜C、a〜c)に対し、それぞれ更新ファイルが送信されるので、該送信された全てのファイル種別について、対応バージョンのチェックを行う。
【0049】
まず、装置RのCPU21は、ファイルバージョンテーブル72の種別Aのファイルバージョンが、バージョンチェックテーブル71のファイル種別Aに関する対応Aバージョンの下限バージョンと上限バージョンの範囲内(上下限バージョンどちらかに一致する場合も含む)にあるか否かチェック(図8のステップS71)し、条件を満たす場合はOK、満たさない場合はNGとする。
図8の例では、ファイルバージョンテーブル72の種別Aのファイルバージョンが12であり、バージョンチェックテーブル71のファイル種別Aに関する対応Aバージョンの下限バージョンが0で上限バージョンが255なので、OKとする。
【0050】
ステップS71でOKの場合は、次に、ファイルバージョンテーブル72の種別Bのファイルバージョンが、バージョンチェックテーブル71のファイル種別Aに関する対応Bバージョンの下限バージョンと上限バージョンの範囲内にあるか否かチェック(ステップS72)し、条件を満たす場合はOK、満たさない場合はNGとする。
【0051】
以降、同様にして、ファイルバージョンテーブル72に示されるファイル種別A〜C、a〜cの更新後のバージョンが、それぞれ、バージョンチェックテーブル71のファイル種別Aに関する対応バージョンを満足するか否かについて、対応cバージョンまでチェックを行う。
このようにして、バージョンチェックテーブル71のファイル種別Aに関する対応バージョンのチェックが完了した後、次に、バージョンチェックテーブル71のファイル種別Bに関する対応バージョンのチェックを行い(ステップS81)、順次、バージョンチェックテーブル71のファイル種別cに関する対応バージョンのチェックまで行う(ステップS89)。
【0052】
これらのチェック途中でNGがあった場合は、装置Sから受信して装置Rの第1記憶部11(SDRAM)上に保持していた更新ファイル(プログラムファイルA12〜C12およびパラメータファイルa12〜c12)、ファイルバージョンテーブル72およびバージョンチェックテーブル71を全て破棄して、装置Sに対して前述のファイル更新終了応答(処理結果:NG)を送信し、ファイル更新処理を終了する。
【0053】
これらのチェックが全てOKの場合は、第1記憶部11(SDRAM)上に保持していた更新ファイル(プログラムファイルA12〜C12およびパラメータファイルa12〜c12)を、全て不揮発性の第2記憶部12(フラッシュROM)に書き込む。
第2記憶部12への書込み完了後、第1記憶部11(SDRAM)上の更新ファイル全てと、ファイルバージョンテーブル72およびバージョンチェックテーブル71を全て破棄して、装置Sに対してファイル更新終了応答(処理結果:OK)を送信し、ファイル更新処理を終了する。
【0054】
以上の図8の説明では、装置Sから全てのファイル種別(A〜C、a〜c)に対し、それぞれ更新ファイルが送信される場合について述べたが、例えば、装置Sからファイル種別Bに対してのみ、更新ファイルが送信されることも可能である。この場合は、送信されたファイル種別Bについてのみ、対応バージョンのチェックを行う。
具体的には、装置RのCPU21は、ファイルバージョンテーブル72の種別Aのファイルバージョン(12)が、バージョンチェックテーブル71のファイル種別Bに関する対応Aバージョンの下限バージョン(10)と上限バージョン(12)の範囲内にあるか否かチェックする(ステップS81)。
【0055】
次に、ファイルバージョンテーブル72の種別Bのファイルバージョン(12)が、バージョンチェックテーブル71のファイル種別Bに関する対応Bバージョンの下限バージョン(0)と上限バージョン(255)の範囲内にあるか否かチェックする。
次に、ファイルバージョンテーブル72の種別Cのファイルバージョン(12)が、バージョンチェックテーブル71のファイル種別Bに関する対応Cバージョンの下限バージョン(10)と上限バージョン(12)の範囲内にあるか否かチェックする。
【0056】
次に、ファイルバージョンテーブル72の種別aのファイルバージョン(12)が、バージョンチェックテーブル71のファイル種別Bに関する対応aバージョンの下限バージョン(11)と上限バージョン(12)の範囲内にあるか否かチェックする。
次に、ファイルバージョンテーブル72の種別bのファイルバージョン(12)が、バージョンチェックテーブル71のファイル種別Bに関する対応bバージョンの下限バージョン(11)と上限バージョン(12)の範囲内にあるか否かチェックする。
次に、ファイルバージョンテーブル72の種別cのファイルバージョン(12)が、バージョンチェックテーブル71のファイル種別Bに関する対応cバージョンの下限バージョン(11)と上限バージョン(12)の範囲内にあるか否かチェックする。
【0057】
これらのチェックが全てOKの場合は、前述したように、第1記憶部11(SDRAM)上に保持していた更新ファイル(プログラムファイルB12)を、不揮発性の第2記憶部12(フラッシュROM)に書き込み、装置Sに対してファイル更新終了応答(処理結果:OK)を送信し、ファイル更新処理を終了する。いずれかNGの場合は、前述したように、装置Sに対してファイル更新終了応答(処理結果:NG)を送信し、ファイル更新処理を終了する。
【0058】
以上説明した第2実施形態によれば、誤った組み合わせのプログラムやパラメータを装置に格納することを防止し、装置の誤動作を防ぐことが可能となる。
【0059】
なお、本発明は、前記各実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々に変更が可能であることはいうまでもない。
例えば、上述の第1実施形態では、CPU21がプログラム等を読み込みながら動作する記憶部である第1記憶部11をSDRAMで構成し、第1記憶部11の第1データと同一内容のデータを保存する第2記憶部12、第3記憶部13、第4記憶部14をフラッシュROMで構成したが、これに限られるものではない。
また、上述の第1実施形態において、第1記憶部11の第1データと同一内容のデータを保存する記憶部を、読み書き可能な第2記憶部12と、書き込み不可能、又は条件付での書き込み可能な第4記憶部14のみから構成することもでき、あるいは、書き込み不可能、又は条件付での書き込み可能な第4記憶部14のみから構成することもできる。つまり、第4記憶部14のデータは、無線基地局装置が運用に入る前の段階で、例えば工場からの出荷時等のタイミングで書き込まれる。無線基地局装置が運用に入った後は、第4記憶部14のデータを第1記憶部11(SDRAM)の任意のエリアへコピーし、運用状態中に第4記憶部14との照合を行い、データの整合性を保つメカニズムを備える。そして、定時照合時の場合に、CPU21は、第4記憶部14の第4データの整合性検査を行うように構成してもよい。第4記憶部14のデータは、工場出荷時のみ書き込まれるユニークなデータであり、上記の通り、第4記憶部14のデータを第1記憶部11の任意のエリアへコピーし照合を行い、第4記憶部14のデータを独自で整合性を保つようにする。第1記憶部11と第4記憶部14を各々独立した照合を行うようにすることによって、第1記憶部11及び第2記憶部12、第3記憶部13が異常状態となった場合でも、第4記憶部14のデータで復旧できる可能性を大きくすることができる。
また、本発明に係る技術は、無線基地局装置に限られず、ソフトウェアファイルを有する電子装置に適用可能である。
また、本発明は、本発明に係る処理を実行する装置としてだけでなく、方法やシステムとして、或いは、このような方法やシステムを実現するためのプログラムや当該プログラムを記録する記録媒体などとして把握することができる。
【0060】
本明細書の記載事項には、少なくとも次の発明が含まれる。
第1の発明は、
データの読み出し及び書き込みが可能であって、無線基地局装置の動作に必要な第1のデータを記憶する第1の記憶部と、
前記第1の記憶部と接続され、前記第1の記憶部のデータを読み込みながら動作するCPUと、
前記CPUと接続され、データの読み出し及び書き込みが可能であって、前記第1のデータと同一内容の第2のデータを記憶する第2の記憶部と、
前記CPUと接続され、データの読み出し及び書き込みが可能であって、前記第1のデータと同一内容の第3のデータを記憶する第3の記憶部と、
前記CPUと接続され、データの読み出しが可能かつ書き込みが不可能であって、前記第1のデータと同一内容の第4のデータを記憶する第4の記憶部とを備え、
前記CPUは、無線基地局装置の起動時において、前記第1の記憶部の第1のデータの整合性検査を行い、該第1のデータが正常である場合は、該第1のデータを読み込みながら動作し、前記整合性検査を行った第1のデータが異常である場合は、前記第2の記憶部の第2のデータの整合性検査を行い、該第2のデータが正常である場合は、該第2のデータを前記第1の記憶部に展開し、該第1の記憶部に展開した第2のデータを読み込みながら動作し、前記整合性検査を行った第2のデータが異常である場合は、前記第3の記憶部の第3のデータの整合性検査を行い、該第3のデータが正常である場合は、該第3のデータを前記第1の記憶部に展開し、該第1の記憶部に展開した第3のデータを読み込みながら動作し、前記整合性検査を行った第3のデータが異常である場合は、前記第4の記憶部の第4のデータの整合性検査を行い、該第4のデータが正常である場合は、該第4のデータを前記第1の記憶部に展開し、該第1の記憶部に展開した第4のデータを読み込みながら動作することを特徴とする無線基地局装置。
【0061】
第2の発明は、
データの読み出し及び書き込みが可能であって、無線基地局装置の動作に必要な第1のデータを記憶する第1の記憶部と、
前記第1の記憶部と接続され、前記第1の記憶部のデータを読み込みながら動作するCPUと、
前記CPUと接続され、データの読み出し及び書き込みが可能であって、前記第1のデータと同一内容の第2のデータを記憶する第2の記憶部と、
前記CPUと接続され、データの読み出しが可能かつ書き込みが不可能であって、前記第1のデータと同一内容の第3のデータを記憶する第3の記憶部とを備え、
前記CPUは、無線基地局装置の起動時において、前記第1の記憶部の第1のデータの整合性検査を行い、該第1のデータが正常である場合は、該第1のデータを読み込みながら動作し、前記整合性検査を行った第1のデータが異常である場合は、前記第2の記憶部の第2のデータの整合性検査を行い、該第2のデータが正常である場合は、該第2のデータを前記第1の記憶部に展開し、該第1の記憶部に展開した第2のデータを読み込みながら動作し、前記整合性検査を行った第2のデータが異常である場合は、前記第3の記憶部の第3のデータの整合性検査を行い、該第3のデータが正常である場合は、該第3のデータを前記第1の記憶部に展開し、該第1の記憶部に展開した第3のデータを読み込みながら動作することを特徴とする無線基地局装置。
【0062】
第3の発明は、
データの読み出し及び書き込みが可能であって、無線基地局装置の動作に必要な第1のデータを記憶する第1の記憶部と、
前記第1の記憶部と接続され、前記第1の記憶部のデータを読み込みながら動作するCPUと、
前記CPUと接続され、データの読み出しが可能かつ書き込みが不可能であって、前記第1のデータと同一内容の第2のデータを記憶する第2の記憶部とを備え、
前記CPUは、無線基地局装置の起動時において、前記第1の記憶部の第1のデータの整合性検査を行い、該第1のデータが正常である場合は、該第1のデータを読み込みながら動作し、前記整合性検査を行った第1のデータが異常である場合は、前記第2の記憶部の第2のデータの整合性検査を行い、該第2のデータが正常である場合は、該第2のデータを前記第1の記憶部に展開し、該第1の記憶部に展開した第2のデータを読み込みながら動作することを特徴とする無線基地局装置。
【0063】
第4の発明は、
バージョンを有する更新ファイルを受信し、該更新ファイルを複数組み合わせて動作する電子装置であって、
前記電子装置の有する複数のファイルについて、それぞれ、ファイル種別と対応させてバージョン情報を記憶するファイルバージョンテーブルと、
該ファイルバージョンテーブルに記憶したバージョン情報を有するファイルに対して、該バージョン情報のファイルと組み合わせて動作可能な他のファイルのバージョン情報である対応バージョン情報を記憶するバージョンチェックテーブルとを備え、
更新ファイルのバージョン情報と、該更新ファイルの対応バージョン情報とを受信すると、前記受信した更新ファイルのバージョン情報で前記ファイルバージョンテーブルを更新するとともに前記受信した更新ファイルの対応可能バージョン情報で前記バージョンチェックテーブルを更新し、前記更新後におけるファイルバージョンテーブルの全てのファイルのバージョン情報が、前記更新後のバージョンチェックテーブルにおける前記受信した更新ファイルの対応バージョン情報の範囲内にあるか否かをチェックすることを特徴とする電子装置。
【符号の説明】
【0064】
11…第1記憶部、12…第2記憶部、13…第3記憶部、14…第4記憶部、21…CPU、22…バス、23…FPGA、24…送受信部、30…通信路、41…CPU、42…メモリ、43…記憶部、44…送受信部、45…バス、71…バージョンチェックテーブル、72…ファイルバージョンテーブル。

【特許請求の範囲】
【請求項1】
データの読み出し及び書き込みが可能であって、無線基地局装置の動作に必要な第1のデータを記憶する第1の記憶部と、
前記第1の記憶部と接続され、前記第1の記憶部のデータを読み込みながら動作するCPUと、
前記CPUと接続され、データの読み出し及び書き込みが可能であって、前記第1のデータと同一内容の第2のデータを記憶する第2の記憶部と、
前記CPUと接続され、データの読み出し及び書き込みが可能であって、前記第1のデータと同一内容の第3のデータを記憶する第3の記憶部と、
前記CPUと接続され、データの読み出しが可能かつ書き込みが不可能であって、前記第1のデータと同一内容の第4のデータを記憶する第4の記憶部とを備え、
前記CPUは、無線基地局装置の起動時において、前記第1の記憶部の第1のデータの整合性検査を行い、該第1のデータが正常である場合は、該第1のデータを読み込みながら動作し、前記整合性検査を行った第1のデータが異常である場合は、前記第2の記憶部の第2のデータの整合性検査を行い、該第2のデータが正常である場合は、該第2のデータを前記第1の記憶部に展開し、該第1の記憶部に展開した第2のデータを読み込みながら動作し、前記整合性検査を行った第2のデータが異常である場合は、前記第3の記憶部の第3のデータの整合性検査を行い、該第3のデータが正常である場合は、該第3のデータを前記第1の記憶部に展開し、該第1の記憶部に展開した第3のデータを読み込みながら動作し、前記整合性検査を行った第3のデータが異常である場合は、前記第4の記憶部の第4のデータの整合性検査を行い、該第4のデータが正常である場合は、該第4のデータを前記第1の記憶部に展開し、該第1の記憶部に展開した第4のデータを読み込みながら動作することを特徴とする無線基地局装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2012−212415(P2012−212415A)
【公開日】平成24年11月1日(2012.11.1)
【国際特許分類】
【出願番号】特願2011−202206(P2011−202206)
【出願日】平成23年9月15日(2011.9.15)
【出願人】(000001122)株式会社日立国際電気 (5,007)
【Fターム(参考)】