(57)【要約】【課題】フラッシュメモリを有するデータ処理装置及びテーブル変更制御方法に関し、安定で信頼性のあるデータ処理を行う。【解決手段】プロセッサ１０と、第１及び第２のフラッシュメモリ１１，１２と、ＲＡＭ（バッファメモリ）１４とを含むデータ処理装置の第１のフラッシュメモリ１１は、アプリケーションプログラム１１ａとマスタテーブル１１ｂとを含み、第２のフラッシュメモリ１２は、ブートプログラム１２ａと、マスタテーブルにより形成されたスレーブテーブル１２ｂとを含み、ＲＡＭ（バッファメモリ）１４は、第２のフラッシュメモリ１２のスレーブテーブル１２ｂ又は第１のフラッシュメモリ１１のマスタテーブル１１ｂにより形成された運用テーブル１４ａを含む構成を有し、ブートプログラム１２ａによりマスタテーブル１１ｂを形成し、アプリケーションプログラム１１ａによりスレーブテーブル１１ｂを形成する。【選択図】図１
2009070029.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサと、第１及び第２のフラッシュメモリと、バッファメモリとを含むデータ処理装置に於いて、
前記第１のフラッシュメモリは、アプリケーションプログラムとマスタテーブルとを含み、前記第２のフラッシュメモリは、ブートプログラムと前記マスタテーブルにより形成されたスレーブテーブルとを含み、前記バッファメモリは、前記第２のフラッシュメモリの前記スレーブテーブル又は前記第１のフラッシュメモリの前記マスタテーブルにより形成された運用テーブルを含む構成を備えた
ことを特徴とするデータ処理装置。
【請求項２】
前記プロセッサは、前記第２のフラッシュメモリのブートプログラムに従って外部の記憶媒体上の基本テーブルを前記第１のフラッシュメモリに転送して前記マスタテーブルを構成し、前記第１のフラッシュメモリのアプリケーションプログラムに従って、前記マスタテーブルにより前記第２のフラッシュメモリのスレーブテーブルを構成する機能を備えたことを特徴とする請求項１記載のデータ処理装置。
【請求項３】
プロセッサと、アプリケーションプログラムを格納した第１のフラッシュメモリと、ブートプログラムを格納した第２のフラッシュメモリと、バッファメモリとを含むデータ処理装置のテーブル変更制御方法に於いて、
前記プロセッサにより、前記２のフラッシュメモリの前記ブートプログラムに従って、前記第１のフラッシュメモリに外部の記憶媒体の基本テーブルを転送してマスタテーブルを形成し、前記アプリケーションプログラムに従って前記マスタテーブルを前記第２のフラッシュメモリに転送してスレーブテーブルを形成し、該スレーブテーブルを前記バッファメモリに転送して運用テーブルを形成する過程を含む
ことを特徴とするテーブル変更制御方法。
【請求項４】
前記プロセッサは、前記アプリケーションプログラムに従って前記第１のフラッシュメモリの前記マスタテーブルと、前記第２のフラッシュメモリの前記スレーブテーブルとを比較して該スレーブテーブルのエラーチェックを行い、エラー発生時は、前記マスタテーブルにより前記スレーブテーブルを修復する過程を含むことを特徴とする請求項３記載のテーブル変更制御方法。
【請求項５】
前記プロセッサは、前記アプリケーションプログラムに従って前記第１のフラッシュメモリの前記マスタテーブルと、前記第２のフラッシュメモリの前記スレーブテーブルとを比較して該スレーブテーブルのエラーチェックを行い、エラー発生時に、前記マスタテーブルにより前記スレーブテーブルの修復を行い、該修復が不可能の時は、前記マスタテーブルにより、前記バッファメモリの運用テーブルを形成する過程を含むことを特徴とする請求項３記載のテーブル変更制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ブートプログラム記憶用の領域とテーブルデータ記憶用の領域とを含む構成のフラッシュメモリと、アプリケーションプログラム記憶用の領域とテーブルデータ記憶用の領域とを含む構成のフラッシュメモリとを実装し、テーブル変更制御を行うデータ処理装置及びテーブル変更制御方法に関する。
【背景技術】
【０００２】
各種のデータ処理装置は、データを記憶するメモリと、データを処理するプロセッサとを含む基本構成を有し、データ記憶用のメモリとしては、磁気ディスク装置や半導体記憶装置が適用されている。又半導体記憶装置は、揮発性メモリと不揮発性メモリとがあり、揮発性メモリとしての例えばＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）は、高速でデータの書込み読出しが可能であり、殆どのデータ処理装置の記憶装置として適用されている。又不揮発性メモリとしてフラッシュメモリは、構成が比較的簡単で、大容量化が容易であるから、各種の用途に適用されている。このフラッシュメモリは、一般的には、ＮＯＲ型とＮＡＮＤ型とがあり、それぞれメモリセル構成及びデータの読出し、書込みの特性が相違する。ＮＡＮＤ型フラッシュメモリは、例えば６４ｋバイト等のセクタ単位又はページ単位で、シーケンシャルアクセスにより、データ書込み読出しを行う構成であり、ＮＯＲ型フラッシュメモリは、ランダムアクセスにより、ビット単位で書込み読出しを行う構成である。
【０００３】
又不揮発性メモリとしてのフラッシュメモリを利用したデータ処理装置は、既に各種の構成が提案されており、例えば、プロセッサと、主記憶装置と、補助記憶装置とを含む構成を有し、主記憶装置は、揮発性メモリとしてのＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）により構成し、補助記憶装置は、不揮発性メモリとしてのフラッシュメモリにより構成し、フラッシュメモリに格納したプログラムデータをＤＲＡＭに転送して保持し、プロセッサは、ＤＲＡＭに保持したプログラムデータに従ってデータ処理する手段が知られている（例えば、特許文献１参照）。又プロセッサを含むフラッシュメモリコントローラに於けるプロセッサの制御により、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）からブートプログラムを読出し、そのブートプログラムに従って、フラッシュメモリに格納されているプログラムを読出す制御手段が知られている（例えば、特許文献２参照）。
【０００４】
又データ処理装置と主記憶装置とにより構成した計算機システムに於いて、主記憶装置をフラッシュメモリ等の不揮発性メモリにより構成し、その主記憶装置に、主記憶部としての領域と不揮発性記憶部としての領域とを形成し、システム起動は、不揮発性記憶部に予め記憶させた起動用の主記憶イメージを読出すことにより実行するもので、その主記憶イメージは、例えば、初回の起動時の主記憶イメージを、不揮発性記憶部にダンプしておくことにより、迅速な立上げを可能とした構成が提案されている（例えば、特許文献３参照）。又ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）とフラッシュメモリとを含む構成を有する情報処理装置に於いて、アプリケーションプログラムの変数をフラッシュメモリにバックアップデータとしてセーブする場合に、ＲＡＭ上の変数の位置と、フラッシュメモリ上のセーブ位置との関係を変数ＩＤとし、その変数ＩＤをＲＡＭ上に変数ディレクトリとして記憶し、フラッシュメモリには、アプリケーションプログラムの変数データと変数ＩＤとをセーブし、フラッシュメモリの領域管理を行う為のディレクトリ部の領域を不要とした手段が知られている（例えば、特許文献４参照）。
【特許文献１】特開２０００−２０３１５号公報
【特許文献２】特開２００２−２３９６８号公報
【特許文献３】特開２００５−１０８９７号公報
【特許文献４】特開２００６−１１９８３１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
プロセッサと、フラッシュメモリと、ＤＲＡＭとを含む構成のデータ処理装置に於いて、ブートプログラムとアプリケーションプログラムとテーブルデータとの格納領域を形成する場合、フラッシュメモリにブートプログラムとアプリケーションプログラムとを格納し、高速でデータ書込み読出しが可能のＤＲＡＭにテーブルデータ用の運用テーブルを形成する構成が一般的である。又セクタ単位又はページ単位のデータ書込みが不可能の構成のフラッシュメモリにアプリケーションプログラムとテーブルデータとの格納領域を形成した場合、アプリケーションプログラムによりテーブルデータの書替えを行うと、アプリケーションプログラムのコードが一時的に不定となる場合があり、プログラム誤動作を引き起すことがある。その為に、同一のフラッシュメモリに、アプリケーションプログラムとテーブルデータとを格納することは困難であった。
【０００６】
又運用テーブルを、立上げ処理毎に、保守コンソール等による外部の基本テーブルからブートプログラムにより形成する構成に於いては、データ処理装置の電源投入毎に、保守コンソールを接続しなければならない問題がある。そこで、ブートプログラム用とアプリケーションプログラム用とテーブルデータ用とのそれぞれのフラッシュメモリを設けることが考えられるが、コストアップとなる問題がある。前述の特許文献１〜４にもこのような問題点については開示されておらず且つ解決手段も開示されていない。
【０００７】
本発明は、前述の問題点を解決するものであり、アプリケーションプログラムを格納すると共にマスタテーブルを形成する第１のフラッシュメモリと、ブートプログラムを格納すると共に、スレーブテーブルを形成する第２のフラッシュメモリとを設けて、安定なデータ処理を行うことを目的とする。
【課題を解決するための手段】
【０００８】
本発明のデータ処理装置は、プロセッサと、第１及び第２のフラッシュメモリと、バッファメモリとを含むデータ処理装置であって、第１のフラッシュメモリは、アプリケーションプログラムとマスタテーブルとを含み、第２のフラッシュメモリは、ブートプログラムと、マスタテーブルにより形成されたスレーブテーブルとを含み、バッファメモリは、第２のフラッシュメモリのスレーブテーブル又は第１のフラッシュメモリのマスタテーブルにより形成された運用テーブルを含む構成を備えている。
【０００９】
又前記プロセッサは、第２のフラッシュメモリのブートプログラムに従って外部の記憶媒体上の基本テーブルを、第１のフラッシュメモリに転送してマスタテーブルを構成し、第１のフラッシュメモリのアプリケーションプログラムに従って、マスタテーブルにより第２のフラッシュメモリのスレーブテーブルを構成する機能を備えている。
【００１０】
又本発明のテーブル変更制御方法は、プロセッサと、アプリケーションプログラムを格納した第１のフラッシュメモリと、ブートプログラムを格納した第２のフラッシュメモリと、バッファメモリとを含むデータ処理装置のテーブル変更制御方法であって、プロセッサにより、第２のフラッシュメモリのブートプログラムに従って、第１のフラッシュメモリに外部の記憶媒体の基本テーブルを転送してマスタテーブルを形成し、アプリケーションプログラムに従ってマスタテーブルを第２のフラッシュメモリに転送してスレーブテーブルを形成し、このスレーブテーブルをバッファメモリに転送して運用テーブルを形成する過程を含むものである。
【００１１】
又前記プロセッサは、アプリケーションプログラムに従って第１のフラッシュメモリのマスタテーブルと、第２のフラッシュメモリのスレーブテーブルとを比較して、このスレーブテーブルのエラーチェックを行い、エラー発生時は、マスタテーブルにより、スレーブテーブルを修復する過程を含むものである。
【００１２】
又前記プロセッサは、アプリケーションプログラムに従って第１のフラッシュメモリのマスタテーブルと、第２のフラッシュメモリのスレーブテーブルとを比較して、このスレーブテーブルのエラーチェックを行い、エラー発生時に、マスタテーブルによりスレーブテーブルの修復を行い、この修復が不可能の時は、マスタテーブルにより、バッファメモリの運用テーブルを形成する過程を含むものである。
【発明の効果】
【００１３】
第２のフラッシュメモリのブートプログラムにより、第１のフラッシュメモリにマスタテーブルを形成し、第１のフラッシュメモリのアプリケーションプログラムにより、マスタテーブルにより第２のフラッシュメモリにスレーブテーブルを形成し、このスレーブテーブルを、バッファメモリに運用テーブルとして展開する処理構成により、第１のフラッシュメモリにマスタテーブルを形成する場合に、アプリケーションプログラムではなく、第２のフラッシュメモリのブートプログラムによりテーブルデータ書込みを行うことになり、又第２のフラッシュメモリにスレーブテーブルを形成する場合に、ブートプログラムではなく、第１のフラッシュメモリのアプリケーションプログラムによりテーブルデータ書込みを行うものであるから、それぞれのプログラム実行異常を生じることがなく、更に、スレーブテーブルをバッファメモリに運用テーブルとして展開するもので、マスタテーブルに対するアクセス頻度は非常に低いものとなり、スレーブテーブルのエラー発生の場合、マスタテーブルにより簡単に修復できる利点がある。
【発明を実施するための最良の形態】
【００１４】
本発明のデータ処理装置は、図１を参照すると、プロセッサ１０と、第１及び第２のフラッシュメモリ１１，１２と、ＲＡＭ（バッファメモリ）１４とを含むデータ処理装置１であって、第１のフラッシュメモリ１１は、アプリケーションプログラム１１ａとマスタテーブル１１ｂとを含み、第２のフラッシュメモリ１２は、ブートプログラム１２ａと、マスタテーブルにより形成されたスレーブテーブル１２ｂとを含み、ＲＡＭ（バッファメモリ）１４は、第２のフラッシュメモリ１２のスレーブテーブル１２ｂ又は第１のフラッシュメモリ１１のマスタテーブル１１ｂにより形成された運用テーブル１４ａを含む構成を備えている。
【００１５】
又本発明のテーブル変更制御方法は、プロセッサ１０と、アプリケーションプログラム１１ａを格納した第１のフラッシュメモリ１１と、ブートプログラム１２ａを格納した第２のフラッシュメモリ１２と、ＲＡＭ（バッファメモリ）１４とを含むデータ処理装置１のテーブル変更制御方法であって、プロセッサ１０により、第２のフラッシュメモリ１２のブートプログラム１２ａに従って、第１のフラッシュメモリ１１に外部の記憶媒体の基本テーブルを転送してマスタテーブル１１ｂを形成し、アプリケーションプログラム１１ａに従ってマスタテーブル１１ｂを第２のフラッシュメモリ１２に転送してスレーブテーブル１２ｂを形成し、このスレーブテーブル１２ｂをＲＡＭ（バッファメモリ）１４に転送して運用テーブル１４ａを形成する過程を含むものである。
【実施例１】
【００１６】
図１は、本発明の実施例の説明図であり、１はデータ処理装置、２はローカルエリアネットワーク（ＬＡＮ）、３は保守コンソール、３ａは変更テーブル、４は外部記憶媒体，４ａは基本テーブル、１０はプロセッサ（ＣＰＵ）、１１，１２は第１、第２のフラッシュメモリ（ＦＬＡＳＨ  ＲＯＭ−１，ＦＬＡＳＨ  ＲＯＭ−２）、１１ａはアプリケーションプログラム、１１ｂはマスタテーブル、１２ａはブートプログラム、１２ｂはスレーブテーブル、１３はローカルバス、１４はＲＡＭ（バッファメモリ）、１４ａは運用テーブル、１５はＬＡＮコントローラ、１６はＬＡＮポートを示す。
【００１７】
データ処理装置１は、ローカルバス１３を介してそれぞれ接続したプロセッサ１０と、第１、第２のフラッシュメモリ１１，１２と、バッファメモリを構成するＲＡＭ１４と、ＬＡＮコントローラ１５とを含む構成を有する場合を示し、又ＬＡＮコントローラ１５に、ＬＡＮポート１６を介してＬＡＮ２を接続し、このＬＡＮ２を介して保守コンソール３を接続した場合を示す。又第１のフラッシュメモリ１１は、アプリケーションプログラム１１ａの領域とマスタテーブル１１ｂの領域とを含み、第２のフラッシュメモリ１２は、ブートプログラム１２ａの領域とスレーブテーブル１２ｂの領域とを含む構成を有し、又ＲＡＭ１４は、ランダムアクセスメモリであり、バッファメモリとして使用し、運用テーブル１４ａの領域を含む構成を有するものである。又保守コンソール３は、フレキシブルディスク等の外部記憶媒体４の記憶データを読込み、データ処理装置１に転送する機能と、スレーブテーブル１２ｂを変更する場合の変更テーブル３ａの作成機能とを含むものである。
【００１８】
初期起動立上げ時は、保守コンソール３に外部記憶媒体４をセットし、データ処理装置１０のプロセッサ１０の制御により、第２のフラッシュメモリ１２のブートプログラム１２ａに従って、保守コンソール３にセットした外部記憶媒体４の基本テーブル４ａを、ＬＡＮ２、ＬＡＮポート１６、ＬＡＮコントローラ１５を介して、第１のフラッシュメモリ１１に転送し、マスタテーブル１１ｂを形成する。次に、マスタテーブル１１ｂを、アプリケーションプログラム１１ａに従って、第２のフラッシュメモリ１２に転送して、スレーブテーブル１２ｂを形成する。次に、スレーブテーブル１２ｂをＲＡＭ１４に転送して、運用テーブル１４ａを形成する。それにより、プロセッサ１０は、ＲＡＭ１４上の運用テーブル１４ａを用いて制御処理を実行する。
【００１９】
図２は、前述の図１に於けるデータ処理装置１の起動立上げ時の運用テーブル１４ａ作成の概略手順を（１）〜（５）により示すものであり、プロセッサ１０は、第２のフラッシュメモリ１２のブートプログラム１２ａにより（１）、保守コンソール３に対して外部記憶媒体４の基本テーブル４ａを第１のフラッシュメモリ１１に転送させて（２）、マスタテーブル１１ｂを形成させ、次に、プロセッサ１０は、第１のフラッシュメモリ１１のアプリケーションプログラム１１ａに従って（３）、マスタテーブル１１ｂを、第２のフラッシュメモリ１２にコピーして（４）、スレーブテーブル１２ｂを形成させ、次に、プロセッサ１０は、アプリケーションプログラム１１ａに従って、スレーブテーブル１２ｂをＲＡＭ１４に転送させて（５）、運用テーブル１４ａを形成させる。
【００２０】
第１のフラッシュメモリ１１のマスタテーブル１１ｂと第２のフラッシュメモリ１２のスレーブテーブル１２ｂとの内容は同一であり、データ処理装置１の立上げを繰り返し、その都度、スレーブテーブル１１ｂにより、ＲＡＭ１４上の運用テーブル１４ａの形成を繰り返すことにより、スレーブテーブル１１ｂにエラーが発生した場合、そのエラー検出を既に知られている各種の手段により検出して、マスタテーブル１１ｂにより修復することができる。
【実施例２】
【００２１】
図３は、本発明の実施例２のスレーブテーブル変更処理手順を（１１）〜（１４）により示すもので、図１と同一符号は同一部分を示す。プロセッサ１０は、第１のフラッシュメモリ１１のアプリケーションプログラム１１ａに従って（１１）、保守コンソール３に指示し（１２）、その保守コンソール３上で変更処理した変更テーブル３ａを第２のフラッシュメモリ１２のスレーブテーブル１２ｂに転送して上書きし（１３）、それにより変更されたスレーブテーブル１２ｂをＲＡＭ１４に転送して運用テーブル１４ａを形成させる（１４）。この時、マスタテーブル１１ｂは、変更前の内容を維持している。従って、前述のように、スレーブテーブル１２ｂにエラーが発生した場合、マスタテーブル１１ｂにより修復することができる。
【実施例３】
【００２２】
図４は、本発明の実施例３のエラーチェック及び修復の処理手順を（２１）〜（２４）により示すもので、図１と同一符号は同一部分を示す。プロセッサ１０は、第１のフラッシュメモリ１１のアプリケーションプログラム１１ａに従って（２１）、マスタテーブル１１ｂの内容の読込み（２２）と、スレーブテーブル１２ｂの読込み（２３）とを行い、スレーブテーブル１２ｂのエラーの有無をチェックする。エラーが含まれている場合は、マスタテーブル１１ｂによりスレーブテーブル１２ｂを自動修復する（２４）。エラーチェックは、例えば、マスタテーブル１１ｂとスレーブテーブル１２ｂとの内容の照合チェックや、マスタテーブル１１ｂの版数とチェックサム値と、スレーブテーブル１２ｂの版数とチェックサム値との比較照合により行うことができる。
【００２３】
図５は、修復不可能の場合の処理手順の説明図であり、図４に示す場合と同様の処理手順（２１）〜（２４）を順次行って、スレーブテーブル１２ｂにエラーが含まれ、それをマスタテーブル１１ｂによりスレーブテーブル１２ｂを自動修復しようとしたが、その修復が不可能であった場合（×印で示す）、ＲＡＭ１４の運用テーブル１４ａを、スレーブテーブル１２ｂからではなく、マスタテーブル１１ｂによって形成する（２５）。それにより、スレーブテーブル１２ｂのエラー修復が不可能となった場合、正常なマスタテーブル１１ｂにより、ＲＡＭ１４上に運用テーブル１４ａを形成することができる。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施例１の説明図である。
【図２】本発明の実施例１の立上げ時の概略手順の説明図である。
【図３】本発明の実施例２のスレーブテーブル変更処理手順の説明図である。
【図４】本発明の実施例３のエラーチェック及び修復処理手順の説明図である。
【図５】本発明の実施例３の修復不可能の場合の処理手順の説明図である。
【符号の説明】
【００２５】
１  データ処理装置
２  プロセッサ（ＣＰＵ）
３  保守コンソール
３ａ  変更テーブル
４  外部記憶媒体
４ａ  基本テーブル
１０  プロセッサ（ＣＰＵ）
１１  第１のフラッシュメモリ（ＦＬＡＳＨ  ＲＯＭ−１）
１１ａ  アプリケーションプログラム
１１ｂ  マスタテーブル
１２  第２のフラッシュメモリ（ＦＬＡＳＨ  ＲＯＭ−２）
１２ａ  ブートプログラム
１２ｂ  スレーブテーブル
１３  ローカルバス
１４  ＲＡＭ（バッファメモリ）
１４ａ  運用テーブル
１５  ＬＡＮコントローラ
１６  ＬＡＮポート
【図１】
2009070029.tif 000003
【図２】
2009070029.tif 000004
【図３】
2009070029.tif 000005
【図４】
2009070029.tif 000006
【図５】
2009070029.tif 000007