(57)【要約】【課題】無線基地局装置の起動を信頼性を確保しつつ高速化する。【解決手段】ＦＲＯＭ１５は、初期化プログラム及び運用面／予備面の運用プログラムを記憶する。不揮発メモリ１４は、運用中の自己診断により検出されたハード／ソフトの異常を示す障害情報と、どちらの面の運用プログラムで起動するか判断するための選択情報とを記憶する。初期化プログラムは、前記障害情報に基き異常が検出された項目以外の詳細診断を省略するとともに、解凍プログラムをキャッシュメモリ１６に全てキャッシュインさせ、選択された運用プログラムをＲＡＭ１３に解凍する。また着脱可能なＳＤＭ１２にＯＰＳ２から新しい運用プログラムがダウンロードされると、ＳＤＭとＦＲＯＭの運用プログラムのバージョンを比較し、ＳＤＭの方が新しいか或いはＦＲＯＭに障害があるとき等にＳＤＭの運用プログラムをＦＲＯＭに書き込む。【選択図】図１
2004280340.tif 000002
【特許請求の範囲】
【請求項１】
通常運用中にハードウェア若しくはソフトウェアの異常を検出する自己診断プログラムと、
前記自己診断プログラムにより検出された異常を障害情報として保持する第１の記憶手段と、
運用プログラムを記憶する第２の記憶手段と、
ＲＡＭと、
起動時に異常が検出されたことを示す障害情報を認識した場合は検出された異常に対し詳細診断を行い、障害情報を認識しない場合は詳細診断を行わずに、前記運用プログラムをＲＡＭに展開して運用プログラムを起動する初期化プログラムと、
前記自己診断プログラム及び前記初期化プログラムを実行するプロセッサと、を備える無線装置。
【請求項２】
ＲＡＭと、
キャッシュメモリと、
運用プログラムを圧縮して記憶する第２の記憶手段と、
圧縮された前記運用プログラムをＲＡＭに解凍して展開する解凍プログラムと、
前記解凍プログラムを処理するプロセッサと、を備え、
前記解凍プログラムはキャッシュメモリの容量より小さく設定されるとともに、前記解凍プログラムの少なくとも一部が前記キャッシュメモリに格納されることを特徴とする無線装置。
【請求項３】
前記第２の記憶手段は、夫々圧縮された運用プログラムを格納する通常面と予備面とを備え、
前記第１の記憶手段は、前記通常面又は予備面のどちらの運用プログラムを前記ＲＡＭに展開して起動するか選択するための通常面／予備面選択情報を記憶し、
前記プロセッサは、通常運用時に、通常運用プログラムの異常を検出する手順と、異常が検出されたときに前記異常に基いて通常面／予備面選択情報を更新する手順と、を実行し、
通常面／予備面選択情報に基いて、異常の無い運用プログラムを前記第２の記憶手段からＲＡＭに展開して起動することを特徴とする請求項１乃至２記載の無線装置。
【請求項４】
前記プロセッサは、着脱可能な第３の記憶手段に記憶された運用プログラムと、前記第２の記憶手段に記憶された運用プログラムのバージョンを比較し、前記第２の記憶手段に記憶された運用プログラムを前記第３の記憶手段に記憶された運用プログラムで更新するかどうか判断する手順と、
前記判断に基き前記更新を行う手順と、と実行し、
前記更新を行った場合は、更新後の通常面／予備面選択情報に基いて、運用プログラムを前記第２の記憶手段からＲＡＭに展開して起動することを特徴とする請求項３記載の無線装置。
【請求項５】
前記第２の記憶手段はアクセス速度が第３の記憶手段より速くＲＡＭより遅いフラッシュＲＯＭであり、
前記無線装置は、端末を収容する無線基地局であって、運用中に常時接続される特定の装置から前記第３の記憶手段に運用プログラムをダウンロードすること特徴とする請求項４記載の無線装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、無線装置に関し、特に携帯電話用無線基地局装置のようにオペレーティングシステムをはじめとするソフトウェアを搭載し、且つソフトウェアの更新が可能な無線装置に関する。
【０００２】
【従来の技術】
例えば無線通信端末やその中継局など、外部から入力された信号を処理する信号処理装置において、中央処理装置は、不揮発性メモリ（フラッシュメモリ：ＦＲＯＭ等）からブート情報を読み込み、このブート情報を用いて不揮発性メモリから読み込んだプログラムを展開する。近年は、不揮発性メモリを取り替えることなく、ブート情報及びプログラムを更新することで、信号処理装置のバージョンアップを図る技術が開発されている。
【０００３】
また、本発明に関連する技術として特許文献１及び２が知られる。
特許文献１は、無線装置にシステムデータ、運用データ、アプリケーションプログラム等を高速にローディングするものであって、それらを物理アドレスでアクセスできるようするためのオリジナルディレクトリブロックをそれらと共にＩＣメモリーカードに書き込んだ後、無線装置に装着し、無線装置はそれらをＤＭＡコントローラを用いてＲＡＭに展開するようにしたものである。
【０００４】
特許文献２は、無線基地局を遠隔保守するものであって、公衆回線網等を介して基地局と保守端末を接続することで、基地局の保守データの取得や、パラメータの更新などを係員が現地に赴くことなく行うものである。
【０００５】
【特許文献１】特開平８‐２５５２３０号公報
【特許文献２】特開２００２‐２７１２７９号公報
【０００６】
【発明が解決しようとする課題】
従来の無線装置ではＦＲＯＭの容量を小さくするために、プログラムを圧縮してＦＲＯＭに格納しておき、立ち上がり時にＦＲＯＭの先頭アドレスから格納されたローダがこれを解凍してＲＡＭに展開し、その後ＲＡＭのスタートアドレスにジャンプして起動していた。しかしこの方法はＦＲＯＭのサイズを小さくできる反面、解凍プログラムがＦＲＯＭ上で動作するため、装置起動に時間がかかるという問題があった。無線装置は、呼を受け付けることができない時間帯を減らすために、装置がリセットされてから、極力少ない時間で装置を起動することが望まれる。
【０００７】そこで本発明は、不揮発性メモリの容量を抑えつつ起動時間を短縮した無線装置を提供することを目的とする。
【０００８】
【課題を解決するための手段】
本発明の無線装置は、通常運用中にハードウェア若しくはソフトウェアの異常を検出する自己診断プログラムと、前記自己診断プログラムにより検出された異常を障害情報として保持する第１の記憶手段と、運用プログラムを記憶する第２の記憶手段と、ＲＡＭと、起動時に異常が検出されたことを示す障害情報を認識した場合は検出された異常に対し詳細診断を行い、障害情報を認識しない場合は詳細診断を行わずに、前記運用プログラムをＲＡＭに展開して運用プログラムを起動する初期化プログラムと、前記自己診断プログラム及び前記初期化プログラムを実行するプロセッサと、を備える。
【０００９】本発明の無線装置は、ＲＡＭと、キャッシュメモリと、運用プログラムを圧縮して記憶する第２の記憶手段と、圧縮された前記運用プログラムをＲＡＭに解凍して展開する解凍プログラムと、前記解凍プログラムを処理するプロセッサと、を備え、前記解凍プログラムはキャッシュメモリの容量より小さく設定されるとともに、前記解凍プログラムの少なくとも一部が前記キャッシュメモリに格納する。
【００１０】また、前記第２の記憶手段は、夫々圧縮された運用プログラムを格納する通常面と予備面とを備え、前記第１の記憶手段は、前記通常面又は予備面のどちらの運用プログラムを前記ＲＡＭに展開して起動するか選択するための通常面／予備面選択情報を記憶し、前記プロセッサは、通常運用時に、通常運用プログラムの異常を検出する手順と、異常が検出されたときに前記異常に基いて通常面／予備面選択情報を更新する手順と、を実行し、通常面／予備面選択情報に基いて、異常の無い運用プログラムを前記第２の記憶手段からＲＡＭに展開して起動する。
【００１１】また、前記プロセッサは、着脱可能な第３の記憶手段に記憶された運用プログラムと、前記第２の記憶手段に記憶された運用プログラムのバージョンを比較し、前記第２の記憶手段に記憶された運用プログラムを前記第３の記憶手段に記憶された運用プログラムで更新するかどうか判断する手順と、前記判断に基き前記更新を行う手順と、と実行し、前記更新を行った場合は、更新後の通常面／予備面選択情報に基いて、運用プログラムを前記第２の記憶手段からＲＡＭに展開して起動する。
【００１２】また、前記第２の記憶手段はアクセス速度が第３の記憶手段より速くＲＡＭより遅いフラッシュＲＯＭであり、前記無線装置は、端末を収容する無線基地局であって、運用中に常時接続される特定の装置から前記第３の記憶手段に運用プログラムをダウンロードする。
【００１３】
【発明の実施の形態】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態はクレームにかかる発明を限定するものではなく、又実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１４】図１は本実施の形態の構成を示すブロック図である。ＢＴＳ（Ｂａｓｅ  Ｔｒａｎｓｍｉｔｔｉｎｇ  Ｓｔａｔｉｏｎ：無線基地局装置）１は請求の範囲に記載の無線装置に対応し、携帯電話のような移動無線局を収容し上位装置と接続する。オペレーションシステム（ＯＰＳ）２は、例えばＡＴＭ回線のような有線伝送路を介してＢＴＳ１と接続されており、ＢＴＳ１の保守監視制御を行うと共に、プログラム更新時などにＢＴＳ１のプログラムをＢＴＳ１に送信する。プロセッサ１１はＦＲＯＭ１５、ＲＡＭ１３又はキャッシュメモリ１６から命令を取り出して実行しＢＴＳ１の呼処理制御等の機能を実現する。またＢＴＳ１は、移動無線局と通信するための無線送受信部（図示せず）、伝送路インターフェース部（図示せず）などを備える。
【００１５】図２はＦＲＯＭ１５、ＲＡＭ１３、不揮発メモリ１４の内部データ構成図（メモリマップ）である。ＦＲＯＭ（フラッシュＲＯＭ）１５は、書き換え可能な不揮発性のメモリであって、運用面と予備面よりなり、運用面は、プロセッサ１１のリセット後に最初に実行され、システムプログラムをロードするプログラムであるＩＰＬ（初期化プログラム）１５１と、オペレーティングシステム（ＯＳ）、アプリケーションプログラムや各種データ等、ＢＴＳ１の運用に必要なプログラム群を圧縮した圧縮プログラム１５３と、圧縮プログラム１５３に関する情報等であるセクション情報１５２とを格納する。予備面にも同様のセクション情報１５４、圧縮プログラム１５５を格納するが、圧縮プログラム１５５はＢＴＳ１の通常運用に必要なプログラム群を全て備えなくてもよく、運用に最低限の機能、或いは最小限のＯＳと圧縮プログラムのダウンロードやハードウェアの診断機能のみの縮小セットでもよい。
【００１６】運用面と予備面のどちらで起動するかは不揮発メモリ１４の通常面／予備面選択情報１４５に基いて決定する。通常面／予備面選択情報１４５は各面ごとに障害の有無を記憶するフラグであって、ＦＲＯＭ１５からＲＡＭ１３への解凍時或いはＯＳ起動時或いは起動後（通常運用中）にＳＵＭチェックなどで障害が検出されると、検出された面に対応するフラグを更新する。起動時は、通常面／予備面とも障害が無ければ通常面から、どちらかに障害があるときは障害が無い面から起動する。図２ではＩＰＬは運用面の内部に示されているが、ＩＰＬは通常面／予備面からの起動に共通に使用される。この方法の細部は、特願２００２‐２３３７４３「信号処理装置」に記載されている。
【００１７】ＳＤＭ１２は、例えばコンパクトフラッシュ（登録商標）のような一般的な不揮発性記憶媒体であって、ＦＲＯＭ１５に比べるとアクセス速度は非常に低速であるが１個の媒体で２つのプログラムセットを格納できる容量を有し、ＢＴＳ１に着脱可能なように設けられている。これによりプログラムのバージョンアップ／ダウンが容易にできる。バージョン情報１２１は、圧縮プログラムのバージョンに関する情報であり、ＳＤＭ１２が物理的に備える内蔵レジスタに直接記録しても良く、或いは内蔵レジスタ（カードＩＤレジスタ）等の内容の相違によりＳＤＭ１２の差し替えを検知し、バージョン情報１２１自体は圧縮プログラム１２２と同様にデータとして記憶しても良い。圧縮プログラム１２１は、ＯＰＳ２から転送されたＢＴＳ１のプログラムである。通常、転送はＢＴＳ１の運用中に行うので、有線伝送路のトラフィックを少なくするために、プログラムは圧縮された状態でＯＰＳ２から転送され、圧縮されたままＳＤＭ１２に格納される。ＳＤＭ１２にアクセスするには、通常ＯＳ上で動作するＳＤＭデバイスドライバやファイルシステムが必要であり、ＩＰＬ１５１はこれらの内、少なくともＳＤＭ１２の読み出しに必要な機能を備えている。
【００１８】不揮発メモリ１４は、例えばバイト単位で書き込み／消去が可能なＥＥＰＲＯＭのように小容量で読み書きが容易な不揮発性のメモリーであって、ＦＲＯＭ１５に記憶された圧縮プログラム（少なくとも運用面の圧縮プログラム１５３）のバージョンを示すバージョン情報１４１等を記憶する。
【００１９】キャッシュメモリ１６は、プロセッサ１１から高速にアクセスできるメモリであり、プロセッサ１１に内蔵されたＭＭＵ（メモリ管理ユニット）によりＲＡＭ、ＦＲＯＭの内容をキャッシュして頻繁に発生するメモリアクセスなどを高速化する。メモリは通常、キャッシュメモリ、ＲＡＭ、ＦＲＯＭ、ＳＤＭの順にアクセス時間が短く、高速に命令を実行できるが、キャッシュメモリは高価なため通常１６〜３２Ｋｂｙｔｅ程度の容量である。キャッシュメモリ１６は内部的に命令キャッシュとデータキャッシュに分かれており、夫々命令及びデータをキャッシュする。これらは通常、オペレーティングシステム（ＯＳ）のＭＭＵサポート機能と連動して初期化するためＯＳのロード後でないと有効にできないが、命令キャッシュに限りＭＭＵサポート機能無しにキャッシュレジスタの初期化のみで動作を開始できる。図２においてキャッシュメモリ１６は１つ設けられているが、ハードウェアとしては１次、２次等と複数の構成にしても良くその一部又は全部がプロセッサ１１に内蔵されても良い。
【００２０】図３は、起動時に詳細な診断を行う場合の診断シーケンス図である。プロセッサ１１は詳細診断プログラムに従い不揮発メモリ１４からＲＡＭ１３、ＦＲＯＭ１５、ＳＤＭ１２の障害情報を取得し、これが異常の場合、それぞれデバイスの詳細な診断を行う。詳細診断プログラムコードは、診断シーケンスに先立ち行われるキャシュレジスタの初期化により、キャッシュインされ高速に実行することができるが、起動時に毎回詳細な診断を行うと装置起動に時間がかかるため、障害情報が正常な場合はこれらのデバイスの診断処理を省略して起動するのが本実施の形態の特徴である。省略した場合、診断プログラムはキャッシュインもされない。
【００２１】図４は、自己診断処理シーケンス図である。自己診断処理は通常、運用中のアイドル時間に行われる。ＲＡＭ１３、ＦＲＯＭ１５、ＳＤＭ１２、の自己診断は、未使用領域を用いたデータバス、アドレスバステスト、デバイステストのようなハードウェア診断或いはＳＤＭ格納ファイルの正当性テスト（例えばＣＲＣチェック）のようなソフトウェア診断を行う。これらの診断結果を不揮発メモリ１４のＲＡＭ障害情報１４２、ＦＲＯＭ障害情報１４３、ＳＤＭ障害情報１４４に保存する。
【００２２】図５は、障害情報に異常が無く、ＳＤＭのプログラムバージョンとＦＲＯＭのプログラムバージョンに相違が無い場合の起動シーケンス図である。なお、このシーケンス図はＢＴＳの起動に必要な全ての処理を記載したものではなく、本発明の説明に必要でないものは一部省略してある。例えば、異常がないため省略してあるが図３のような診断シーケンスが適当な位置（例えば先頭）で実行されることがある。
図５の起動シーケンスはプロセッサ１１がＩＰＬ１５１を実行することでなされる。まずＳＤＭ１２からＳＤＭ上のバージョン情報１２１を取得し、不揮発メモリ１４からＦＲＯＭ１５のバージョン情報１４１を取得し、両者を比較する（ＳＤＭ１２が装着されていないときは、相違が無いと見なして省略しても良い）。相違が無いので、まずキャッシュレジスタを初期化し、命令キャッシュの動作を開始させる。
この後、ＩＰＬ１５１中に存在する解凍プログラムコードへのアクセスはキャッシュメモリ１６に格納される。解凍プログラムのサイズはキャッシュメモリ１６の容量より小さくなっており、解凍プログラムのすべてをキャッシュメモリに格納することで、高速に動作させることができる。その後、ＦＲＯＭから圧縮プログラムを読み出し、ＲＡＭに解凍する。そして、ＲＡＭの領域にジャンプしＲＡＭ上で運用プログラムの動作を開始する。
【００２３】図６は、ＯＰＳ２からＳＤＭ１２上の圧縮プログラムが更新された後にリセットされた場合に、ＳＤＭ１２から圧縮プログラムを読み出し、ＦＲＯＭ１５に書き込みを行う起動シーケンス図である。プログラムバージョンに相違を検出した後の、図５と異なる部分の動作を説明する（他の部分は同様である）。まず、プログラムバージョンに相違がある、或いはＦＲＯＭ１５よりも優先されるバージョンのプログラムがＳＤＲ１２に記憶されている場合、ＳＤＭから圧縮プログラムを読み出し、ＦＲＯＭ１５への書き込みを行う。
この際ＩＰＬ１５１中の、ＳＤＭドライバやファイルシステムのプログラムコードを実行するためそれらへのメモリアクセスが発生するが、それらと解凍プログラムとを同時に格納できるほどキャッシュメモリ１６の容量は大きくないため、ＲＡＭ１３への解凍は同時に行わず、ＦＲＯＭ１５へのコピーのみ行うものである。ＦＲＯＭ１５への書き込みが無事に完了すると、書き込んだプログラムのバージョンをバージョン情報１４１に書き込むと共に、書き込んだプログラムには障害が無いと見なして通常面／予備面選択情報１４５のうち書き込んだ面の障害情報を消去する。この後、解凍プログラムがキャッシュインされ、ＦＲＯＭ１５にコピーした運用プログラムをＲＡＭへ解凍する。
【００２４】図６の起動シーケンスにおいて、バージョン情報１２１には運用面用と予備面用とを識別できるような情報を含ませておくと、運用面／予備面ごとに圧縮プログラムの更新ができる。また、通常面／予備面選択情報１４５が運用面若しくは予備面予備面の異常を示しており、その異常な運用プログラムのバージョン（不揮発メモリのバージョン情報１４１が保持している）がＳＤＭのバージョン情報１２１と同程度の（異常ある面用の）運用プログラムを示しているときは、圧縮プログラム１２２をＦＲＯＭ１５の異常のある面にコピーし、コピーした面が運用面であれば運用面から起動するようにしてもよい。
【００２５】本実施の形態を要約すると、ＦＲＯＭ１５は、初期化プログラム及び運用面／予備面の運用プログラムを記憶する。不揮発メモリ１４は、通常運用中に自己診断プログラムにより検出されたハード／ソフトの異常を示す障害情報と、どちらの面の運用プログラムで起動するか判断するための選択情報とを記憶する。初期化プログラムは、前記障害情報に基き異常が検出された項目以外の詳細診断を省略するとともに、解凍プログラムをキャッシュメモリ１６に全てキャッシュインさせて選択された運用プログラムをＲＡＭ１３に解凍する。また着脱可能なＳＤＭ１２（メモリ媒体）にＯＰＳ２から新しい運用プログラムがダウンロードされると、ＳＤＭとＦＲＯＭの運用プログラムのバージョンを比較し、ＳＤＭの方が新しいか或いはＦＲＯＭに障害があるとき等にＳＤＭの運用プログラムをＦＲＯＭに書き込む。選択情報は障害のない面が選択されるように適宜更新される。
【００２６】本実施の形態では、圧縮プログラムは、ＦＲＯＭ１５の現用面、予備面及びＳＤＭ１２の３箇所に記憶するようにしたが、これはＩＰＬ１５１とＳＤＭ１２のみから起動させると上述した理由により極端に時間がかかるので、常時ＦＲＯＭの少なくとも一方の面に無事な圧縮プログラムを保持して高速な起動を保証するための物である。つまり、プログラム更新が不要なときはＳＤＭ１２を取り外しておいてもよい。
【００２７】また本実施の形態において、ＦＲＯＭ１５にフラッシュＥＥＰＲＯＭを用いる場合、少なくともＩＰＬ１５１を記憶する部分は、ＦＲＯＭ上で直接実行（Ｅｘｅｃｕｔｅ−Ｉｎ−Ｐｌａｃｅ）可能なようにエラーフリーなＮＯＲ型が望ましく、或いは誤り訂正や不良セクタ管理機能を内蔵したＮＡＮＤ（ＡＮＤ）型でもよい。圧縮プログラム１５３等にＮＡＮＤ型を用いる場合、ＩＰＬ１５１若しくは解凍プログラムは不良セクタ管理機能等を内蔵する。
【００２８】また本実施の形態において、不揮発メモリ１４が更に正常終了情報を記憶し、プロセッサ１１が、正常終了時に正常終了情報を設定し起動後に解除するようにし、異常終了後の再起動時にこの情報が設定されていないことを検出して場合、不揮発メモリ１４が記憶する各種障害情報が異常を示さなくても図４の自己診断処理を行うようにしてもよい。加えて、不揮発メモリ１４が起動開始時刻情報を記憶し、解凍された運用プログラムのＲＡＭ領域にジャンプする直前に現在時刻を上書きすると共に、上書きの直前に読み出した起動開始時刻情報（前回の起動時刻）と現在時刻を比較して時間差が一定以内のときは、別の面或いはＳＤＭ１２から改めてコピーした運用プログラムを用いて起動するようにしてもよい。
【００２９】本発明は、上記実施の形態のような無線基地局装置に限らず、無線端末にも適用でき、その場合プログラム更新は有線伝送路ではなく無線伝送路により上位装置からダウンロードしてもよい。
【００３０】
【発明の効果】
本発明によれば、プログラムを圧縮してＦＯＲＭのサイズを抑えると共に、起動時の解凍処理をキャッシュメモリで動作させ、また自己診断の結果を不揮発メモリに保存し、起動時に診断の省略若しくは必要に応じた診断を実行することにより、起動の高速性と必要十分な信頼性を有する無線装置を提供できる。
【図面の簡単な説明】
【図１】本実施の形態の構成を示すブロック図。
【図２】本実施の形態の無線装置におけるメモリマップ。
【図３】本実施の形態で詳細な診断を行う場合の診断シーケンス図。
【図４】本実施の形態の自己診断処理シーケンス図。
【図５】本実施の形態でＳＤＭからＦＲＯＭに書きこむ場合の起動シーケンス図。
【図６】本実施の形態でＳＤＭからＦＲＯＭに書きこまない場合の起動シーケンス図。
【符号の説明】
１      ＢＴＳ
１１    プロセッサ
１２    ＳＤＭ
１３    ＲＡＭ
１４    不揮発メモリ
１５    ＦＲＯＭ
１５１  ＩＰＬ
１６    キャッシュメモリ
２      ＯＰＳ
【図１】
2004280340.tif 000003
【図２】
2004280340.tif 000004
【図３】
2004280340.tif 000005
【図４】
2004280340.tif 000006
【図５】
2004280340.tif 000007
【図６】
2004280340.tif 000008