(57)【要約】【課題】ソフトエラーをメモリ装置内で自動修復すると共に、必要な場合には外部サーバーにアクセスして自動修復することを可能とする、ソフトエラー自動修復機能付メモリ装置及びシステム並びにソフトエラー自動修復方法、を提供する。【解決手段】ＣＰＵとデータの記憶部としてのメモリ装置とを有する装置において、前記メモリ装置が、データを記憶保持すると共にデータのリード／ライトが可能な３個一組のメモリと、前記ＣＰＵの制御により前記メモリへのデータのリード／ライトを実行すると共に前記メモリ内に発生したソフトエラーなどの不具合の検出／修復を行うエラー検出制御回路と、を備えた。【選択図】　　　図１
2004038468.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ：中央処理装置）とデータの記憶部としてのメモリ装置とを有する装置において、前記メモリ装置が、データを記憶保持すると共にデータのリード／ライトが可能な３個一組のメモリと、前記ＣＰＵの制御により前記メモリへのデータのリード／ライトを実行すると共に前記メモリ内に発生したソフトエラーなどの不具合の検出／修復を行うエラー検出制御回路と、を備えたことを特徴とするソフトエラー自動修復機能付メモリ装置。
【請求項２】
前記メモリの各々は、前記メモリ装置を使用するユーザのデータを記憶するユーザデータ領域と、前記ユーザデータ領域に記憶されるデータのソフトエラー検出用冗長データを記憶する冗長データ領域とを備え、前記エラー検出制御回路は、前記ＣＰＵからのデータのライト要求に応じて前記メモリにデータを書込むメモリライト部と、前記ＣＰＵからのデータのリード要求に応じて前記メモリからデータを読み出すメモリリード部と、前記メモリリード部が前記メモリからデータをリードした際に該データにソフトエラーが発生していることを検出した場合に、該エラーの発生したデータの修復を行うエラー修復部とを備える、ことを特徴とする請求項１に記載のソフトエラー自動修復機能付メモリ装置。
【請求項３】
前記メモリライト部は、前記ＣＰＵからアドレスを指定してライト要求されたデータを、３個のメモリの内の何れか１個のメモリの前記ユーザデータ領域内の該当アドレスにライトすると共に、該データの冗長データを生成し、該冗長データを前記メモリの前記冗長データ領域の該当アドレス対応部分にライトし、該データと該冗長データを、前記メモリの他の２個のメモリの該当アドレス対応部分にコピーして上書きする、ことを特徴とする請求項２に記載のソフトエラー自動修復機能付メモリ装置。
【請求項４】
前記メモリリード部は、前記ＣＰＵからアドレスを指定してリード要求されたデータを、３個のメモリの内の何れか１個のメモリ（第１メモリ）の前記ユーザデータ領域内の該当アドレスからリードすると共に、該データの冗長データを前記メモリ（第１メモリ）の前記冗長データ領域の該当アドレス対応部分からリードし、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの第１の検査を行い、前記第１の検査の結果、該データにソフトエラー等の不具合が検出されなければ、該データを前記ＣＰＵに送出し、前記第１の検査の結果、該データにソフトエラー等の不具合が検出された場合には、該データのアドレスを前記エラー修復部に通知する、ことを特徴とする請求項３に記載のソフトエラー自動修復機能付メモリ装置。
【請求項５】
前記エラー修復部は、前記メモリリード部から通知された前記アドレスのデータを、前記メモリリード部がリード済みのメモリ（第１メモリ）の他の２個の内の何れか１個のメモリ（第２メモリ）の前記ユーザデータ領域内の該当アドレスからリードすると共に、該データの冗長データを前記メモリ（第２メモリ）の前記冗長データ領域の該当アドレス対応部分からリードし、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの第２の検査を行い、前記第２の検査の結果、該データに不具合が検出されなければ、該データを前記メモリリード部に送出して前記メモリリード部が該データを前記ＣＰＵに送出し、さらに前記エラー修復部は、前記メモリ（第２メモリ）の該データと該冗長データを、前記メモリリード部がリード済みのメモリ（第１メモリ）の前記ユーザデータ領域と前記冗長データ領域とにライトし直すことにより、前記メモリリード部がリード済みのメモリ（第１メモリ）の修復を行う、ことを特徴とする請求項４に記載のソフトエラー自動修復機能付メモリ装置。
【請求項６】
前記エラー修復部の前記第２の検査の結果、前記データに不具合が検出された場合には、前記エラー修復部は、前記アドレスのデータを、既にリードを行ったメモリ（第１メモリと第２メモリ）の他の１個のメモリ（第３メモリ）の前記ユーザデータ領域内の該当アドレスからリードすると共に、該データの冗長データを前記メモリ（第３メモリ）の前記冗長データ領域の該当アドレス対応部分からリードし、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの第３の検査を行い、前記第３の検査の結果、該データに不具合が検出されなければ、該データを前記メモリリード部に送出して前記メモリリード部が該データを前記ＣＰＵに送出し、さらに前記エラー修復部は、前記メモリ（第３メモリ）の該データと該冗長データを、前記第１メモリ及び前記第２メモリの前記ユーザデータ領域と前記冗長データ領域とにそれぞれライトし直すことにより、前記第１メモリと前記第２メモリの修復を行い、前記第３の検査の結果、該データに不具合が検出された場合には、前記メモリリード部に対してエラー修復不可能の旨を通知し前記メモリリード部が前記エラー修復不可能の旨を前記ＣＰＵに通知する、ことを特徴とする請求項５に記載のソフトエラー自動修復機能付メモリ装置。
【請求項７】
ＣＰＵとデータの記憶部としてのメモリ装置とを有する装置において、前記メモリ装置が、データを記憶保持すると共にデータのリード／ライトが可能な３個一組のメモリと、前記ＣＰＵの制御により前記メモリへのデータのリード／ライトを実行すると共に前記メモリ内に発生したソフトエラーなどの不具合の検出／修復を行うエラー検出制御回路とを備え、前記装置が、前記ＣＰＵに接続された無線通信を行うことが可能な無線インタフェース部と、前記ＣＰＵに接続された有線通信を行うことが可能な有線インタフェース部とを備え、前記エラー検出制御回路が前記メモリ内に発生したソフトエラーなどの不具合を修復できない場合には、前記ＣＰＵが前記無線インタフェース部或いは前記有線インタフェース部を起動して前記装置の外部に設置されているサーバーに接続し、前記サーバーが記憶保持するエラー修復用のデータを前記装置にダウンロードし、前記エラー修復用のデータを前記メモリに再ライトすることにより、前記メモリ内に発生したソフトエラーなどの不具合を修復する、ことを特徴とするソフトエラー自動修復機能付メモリシステム。
【請求項８】
前記サーバーは、前記メモリ内に発生したソフトエラーなどの不具合の履歴を前記サーバー内部に記憶保持する、ことを特徴とする請求項７に記載のソフトエラー自動修復機能付メモリシステム。
【請求項９】
データを記憶保持すると共にデータのリード／ライトが可能な３個一組のメモリを備えたメモリ装置におけるソフトエラー自動修復方法であって、前記メモリの各々を、前記メモリ装置を使用するユーザのデータを記憶するユーザデータ領域と前記ユーザデータ領域に記憶されるデータのソフトエラー検出用冗長データを記憶する冗長データ領域とに区分しておき、前記メモリに対してアドレスを指定してデータを書込むライト要求が出された場合には、ライト要求されたデータを、３個のメモリの内の何れか１個のメモリの前記ユーザデータ領域内の該当アドレスにライトすると共に、該データの冗長データを生成し、該冗長データを前記メモリの前記冗長データ領域の該当アドレス対応部分にライトし、該データと該冗長データを、前記メモリの他の２個のメモリの該当アドレス対応部分にコピーして上書きする、ことを特徴とするソフトエラー自動修復方法。
【請求項１０】
アドレスを指定して前記メモリ内のデータを読み出すリード要求が出された場合には、リード要求されたデータを、３個のメモリの内の何れか１個のメモリ（第１メモリ）の前記ユーザデータ領域内の該当アドレスからリードすると共に、該データの冗長データを前記メモリ（第１メモリ）の前記冗長データ領域の該当アドレス対応部分からリードし、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの第１の検査を行い、前記第１の検査の結果、該データにソフトエラー等の不具合が検出されなければ、該データをエラーの無い正規のデータとして前記リード要求の要求元に送出し、前記第１の検査の結果、該データにソフトエラー等の不具合が検出された場合には、該データのアドレスをエラー修復手段に通知する、ことを特徴とする請求項９に記載のソフトエラー自動修復方法。
【請求項１１】
前記エラー修復手段は、前記アドレスのデータを、リード済みのメモリ（第１メモリ）の他の２個の内の何れか１個のメモリ（第２メモリ）の前記ユーザデータ領域内の該当アドレスからリードすると共に、該データの冗長データを前記メモリ（第２メモリ）の前記冗長データ領域の該当アドレス対応部分からリードし、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの第２の検査を行い、前記第２の検査の結果、該データに不具合が検出されなければ、該データをエラーの無い正規のデータとして前記リード要求の要求元に送出し、さらに、前記メモリ（第２メモリ）の該データと該冗長データを、前記リード済みのメモリ（第１メモリ）の前記ユーザデータ領域と前記冗長データ領域とにライトし直すことにより、前記リード済みのメモリ（第１メモリ）の修復を行う、ことを特徴とする請求項１０に記載のソフトエラー自動修復方法。
【請求項１２】
前記エラー修復手段の前記第２の検査の結果、前記データに不具合が検出された場合には、前記エラー修復手段は、前記アドレスのデータを、既にリードを行ったメモリ（第１メモリと第２メモリ）の他の１個のメモリ（第３メモリ）の前記ユーザデータ領域内の該当アドレスからリードすると共に、該データの冗長データを前記メモリ（第３メモリ）の前記冗長データ領域の該当アドレス対応部分からリードし、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの第３の検査を行い、前記第３の検査の結果、該データに不具合が検出されなければ、該データをエラーの無い正規のデータとして前記リード要求の要求元に送出し、さらに、前記メモリ（第３メモリ）の該データと該冗長データを、前記第１メモリ及び前記第２メモリの前記ユーザデータ領域と前記冗長データ領域とにそれぞれライトし直すことにより、前記第１メモリと前記第２メモリの修復を行い、前記第３の検査の結果、該データに不具合が検出された場合には、前記リード要求の要求元に対してエラー修復不可能の旨を通知する、ことを特徴とする請求項１１に記載のソフトエラー自動修復方法。
【請求項１３】
前記エラー修復不可能の旨を通知された前記リード要求の要求元は、外部のサーバーに無線通信或いは有線通信によって接続し、前記サーバーが記憶保持するエラー修復用のデータをダウンロードし、前記エラー修復用のデータを前記メモリに再ライトすることにより、前記メモリ内に発生したソフトエラーなどの不具合を修復する、ことを特徴とする請求項１２に記載のソフトエラー自動修復方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ソフトエラー自動修復機能付メモリ装置及びシステム並びにソフトエラー自動修復方法に関し、特にソフトエラーをメモリ装置内で自動修復すると共に、必要な場合には外部サーバーにアクセスして自動修復することを可能とする、ソフトエラー自動修復機能付メモリ装置及びシステム並びにソフトエラー自動修復方法に関する。
【０００２】
【従来の技術】
一般に、メモリが高集積化されメモリセルの面積が小さくなると、メモリセルの蓄積電荷量が低下していく。蓄積電荷量の低下に伴い、パッケージ材料や配線材料などに微量に含まれるウランやトリウムの放射線崩壊により放出されるα粒子、或いは宇宙空間からの中性子粒子などがメモリ中に侵入し、シリコンとの相互作用で発生した電子・正孔対がメモリセルで雑音となり一過性のエラーを起こし易くなってくる。このエラーは永久的なものでは無くメモリへの再書込みによって正常に戻るものであるため、「ソフトエラー」と呼ばれている。
【０００３】
ソフトエラーと言えども、装置やシステムの誤動作を招く要因となるものであるため、ソフトエラーが起こった際の対策を充分行っておくことが重要となってきており、このようなソフトエラー対策の一例として、特開平１０−０４９４４８号公報記載の「冗長化メモリのエラー訂正機構」が知られている。
【０００４】
この公報では、メモリのソフトエラーの蓄積によってリカバリー不可能なエラーに発展することを防止し、信頼性の高い冗長化メモリを実現する技術が記載されている。
【０００５】
【発明が解決しようとする課題】
上述した従来のソフトエラー対策の方式は、メモリ装置内で該ソフトエラーを自動修復できるようにはなっていない。
【０００６】
そこで本発明の目的は、ソフトエラーをメモリ装置内で自動修復すると共に、必要な場合には外部サーバーにアクセスして自動修復することを可能とする、ソフトエラー自動修復機能付メモリ装置及びシステム並びにソフトエラー自動修復方法、を提供することにある。
【０００７】
【課題を解決するための手段】
本発明のソフトエラー自動修復機能付メモリ装置は、ＣＰＵ（ＣｅｎｔｒａｌＰｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ：中央処理装置）とデータの記憶部としてのメモリ装置とを有する装置において、前記メモリ装置が、データを記憶保持すると共にデータのリード／ライトが可能な３個一組のメモリと、前記ＣＰＵの制御により前記メモリへのデータのリード／ライトを実行すると共に前記メモリ内に発生したソフトエラーなどの不具合の検出／修復を行うエラー検出制御回路と、を備えたことを特徴とする。
【０００８】
また、前記メモリの各々は、前記メモリ装置を使用するユーザのデータを記憶するユーザデータ領域と、前記ユーザデータ領域に記憶されるデータのソフトエラー検出用冗長データを記憶する冗長データ領域とを備え、前記エラー検出制御回路は、前記ＣＰＵからのデータのライト要求に応じて前記メモリにデータを書込むメモリライト部と、前記ＣＰＵからのデータのリード要求に応じて前記メモリからデータを読み出すメモリリード部と、前記メモリリード部が前記メモリからデータをリードした際に該データにソフトエラーが発生していることを検出した場合に、該エラーの発生したデータの修復を行うエラー修復部とを備える、ことを特徴とする。
【０００９】
さらに、前記メモリライト部は、前記ＣＰＵからアドレスを指定してライト要求されたデータを、３個のメモリの内の何れか１個のメモリの前記ユーザデータ領域内の該当アドレスにライトすると共に、該データの冗長データを生成し、該冗長データを前記メモリの前記冗長データ領域の該当アドレス対応部分にライトし、該データと該冗長データを、前記メモリの他の２個のメモリの該当アドレス対応部分にコピーして上書きする、ことを特徴とする。
【００１０】
また、前記メモリリード部は、前記ＣＰＵからアドレスを指定してリード要求されたデータを、３個のメモリの内の何れか１個のメモリ（第１メモリ）の前記ユーザデータ領域内の該当アドレスからリードすると共に、該データの冗長データを前記メモリ（第１メモリ）の前記冗長データ領域の該当アドレス対応部分からリードし、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの第１の検査を行い、前記第１の検査の結果、該データにソフトエラー等の不具合が検出されなければ、該データを前記ＣＰＵに送出し、前記第１の検査の結果、該データにソフトエラー等の不具合が検出された場合には、該データのアドレスを前記エラー修復部に通知する、ことを特徴とする。
【００１１】
さらに、前記エラー修復部は、前記メモリリード部から通知された前記アドレスのデータを、前記メモリリード部がリード済みのメモリ（第１メモリ）の他の２個の内の何れか１個のメモリ（第２メモリ）の前記ユーザデータ領域内の該当アドレスからリードすると共に、該データの冗長データを前記メモリ（第２メモリ）の前記冗長データ領域の該当アドレス対応部分からリードし、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの第２の検査を行い、前記第２の検査の結果、該データに不具合が検出されなければ、該データを前記メモリリード部に送出して前記メモリリード部が該データを前記ＣＰＵに送出し、さらに前記エラー修復部は、前記メモリ（第２メモリ）の該データと該冗長データを、前記メモリリード部がリード済みのメモリ（第１メモリ）の前記ユーザデータ領域と前記冗長データ領域とにライトし直すことにより、前記メモリリード部がリード済みのメモリ（第１メモリ）の修復を行う、ことを特徴とする。
【００１２】
また、前記エラー修復部の前記第２の検査の結果、前記データに不具合が検出された場合には、前記エラー修復部は、前記アドレスのデータを、既にリードを行ったメモリ（第１メモリと第２メモリ）の他の１個のメモリ（第３メモリ）の前記ユーザデータ領域内の該当アドレスからリードすると共に、該データの冗長データを前記メモリ（第３メモリ）の前記冗長データ領域の該当アドレス対応部分からリードし、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの第３の検査を行い、前記第３の検査の結果、該データに不具合が検出されなければ、該データを前記メモリリード部に送出して前記メモリリード部が該データを前記ＣＰＵに送出し、さらに前記エラー修復部は、前記メモリ（第３メモリ）の該データと該冗長データを、前記第１メモリ及び前記第２メモリの前記ユーザデータ領域と前記冗長データ領域とにそれぞれライトし直すことにより、前記第１メモリと前記第２メモリの修復を行い、前記第３の検査の結果、該データに不具合が検出された場合には、前記メモリリード部に対してエラー修復不可能の旨を通知し前記メモリリード部が前記エラー修復不可能の旨を前記ＣＰＵに通知する、ことを特徴とする。
【００１３】
本発明のソフトエラー自動修復機能付メモリシステムは、ＣＰＵとデータの記憶部としてのメモリ装置とを有する装置において、前記メモリ装置が、データを記憶保持すると共にデータのリード／ライトが可能な３個一組のメモリと、前記ＣＰＵの制御により前記メモリへのデータのリード／ライトを実行すると共に前記メモリ内に発生したソフトエラーなどの不具合の検出／修復を行うエラー検出制御回路とを備え、前記装置が、前記ＣＰＵに接続された無線通信を行うことが可能な無線インタフェース部と、前記ＣＰＵに接続された有線通信を行うことが可能な有線インタフェース部とを備え、前記エラー検出制御回路が前記メモリ内に発生したソフトエラーなどの不具合を修復できない場合には、前記ＣＰＵが前記無線インタフェース部或いは前記有線インタフェース部を起動して前記装置の外部に設置されているサーバーに接続し、前記サーバーが記憶保持するエラー修復用のデータを前記装置にダウンロードし、前記エラー修復用のデータを前記メモリに再ライトすることにより、前記メモリ内に発生したソフトエラーなどの不具合を修復する、ことを特徴とする。
【００１４】
また、前記サーバーは、前記メモリ内に発生したソフトエラーなどの不具合の履歴を前記サーバー内部に記憶保持する、ことを特徴とする。
【００１５】
本発明のソフトエラー自動修復方法は、データを記憶保持すると共にデータのリード／ライトが可能な３個一組のメモリを備えたメモリ装置におけるソフトエラー自動修復方法であって、前記メモリの各々を、前記メモリ装置を使用するユーザのデータを記憶するユーザデータ領域と前記ユーザデータ領域に記憶されるデータのソフトエラー検出用冗長データを記憶する冗長データ領域とに区分しておき、前記メモリに対してアドレスを指定してデータを書込むライト要求が出された場合には、ライト要求されたデータを、３個のメモリの内の何れか１個のメモリの前記ユーザデータ領域内の該当アドレスにライトすると共に、該データの冗長データを生成し、該冗長データを前記メモリの前記冗長データ領域の該当アドレス対応部分にライトし、該データと該冗長データを、前記メモリの他の２個のメモリの該当アドレス対応部分にコピーして上書きする、ことを特徴とする。
【００１６】
また、アドレスを指定して前記メモリ内のデータを読み出すリード要求が出された場合には、リード要求されたデータを、３個のメモリの内の何れか１個のメモリ（第１メモリ）の前記ユーザデータ領域内の該当アドレスからリードすると共に、該データの冗長データを前記メモリ（第１メモリ）の前記冗長データ領域の該当アドレス対応部分からリードし、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの第１の検査を行い、前記第１の検査の結果、該データにソフトエラー等の不具合が検出されなければ、該データをエラーの無い正規のデータとして前記リード要求の要求元に送出し、前記第１の検査の結果、該データにソフトエラー等の不具合が検出された場合には、該データのアドレスをエラー修復手段に通知する、ことを特徴とする。
【００１７】
さらに、前記エラー修復手段は、前記アドレスのデータを、リード済みのメモリ（第１メモリ）の他の２個の内の何れか１個のメモリ（第２メモリ）の前記ユーザデータ領域内の該当アドレスからリードすると共に、該データの冗長データを前記メモリ（第２メモリ）の前記冗長データ領域の該当アドレス対応部分からリードし、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの第２の検査を行い、前記第２の検査の結果、該データに不具合が検出されなければ、該データをエラーの無い正規のデータとして前記リード要求の要求元に送出し、さらに、前記メモリ（第２メモリ）の該データと該冗長データを、前記リード済みのメモリ（第１メモリ）の前記ユーザデータ領域と前記冗長データ領域とにライトし直すことにより、前記リード済みのメモリ（第１メモリ）の修復を行う、ことを特徴とする。
【００１８】
また、前記エラー修復手段の前記第２の検査の結果、前記データに不具合が検出された場合には、前記エラー修復手段は、前記アドレスのデータを、既にリードを行ったメモリ（第１メモリと第２メモリ）の他の１個のメモリ（第３メモリ）の前記ユーザデータ領域内の該当アドレスからリードすると共に、該データの冗長データを前記メモリ（第３メモリ）の前記冗長データ領域の該当アドレス対応部分からリードし、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの第３の検査を行い、前記第３の検査の結果、該データに不具合が検出されなければ、該データをエラーの無い正規のデータとして前記リード要求の要求元に送出し、さらに、前記メモリ（第３メモリ）の該データと該冗長データを、前記第１メモリ及び前記第２メモリの前記ユーザデータ領域と前記冗長データ領域とにそれぞれライトし直すことにより、前記第１メモリと前記第２メモリの修復を行い、前記第３の検査の結果、該データに不具合が検出された場合には、前記リード要求の要求元に対してエラー修復不可能の旨を通知する、ことを特徴とする。
【００１９】
さらに、前記エラー修復不可能の旨を通知された前記リード要求の要求元は、外部のサーバーに無線通信或いは有線通信によって接続し、前記サーバーが記憶保持するエラー修復用のデータをダウンロードし、前記エラー修復用のデータを前記メモリに再ライトすることにより、前記メモリ内に発生したソフトエラーなどの不具合を修復する、ことを特徴とする。
【００２０】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して説明する。
【００２１】
図１は、本発明のソフトエラー自動修復機能付メモリシステムの一実施形態を示すブロック図である。
【００２２】
図１に示す本実施の形態は、コンピュータプログラムやデータを記憶保持するメモリ装置８０と、メモリ装置８０にアクセスして計算・演算・制御などの処理を実行するＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ：中央処理装置）３５と、ＣＰＵ３５に接続された無線Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ：インタフェース）４０と、ＣＰＵ３５に接続された有線Ｉ／Ｆ５０と、を備える制御装置９０と、コンピュータプログラムやデータを記憶保持し、これを要求により配信可能な機能を有する情報処理装置であるところのサーバー６０と、から構成されている。
【００２３】
制御装置９０からサーバー６０にアクセスを行う場合には、制御装置９０の備える無線Ｉ／Ｆ４０から、無線回線７０と無線端末４５と無線ネットワーク６５を介してサーバー６０にアクセスする方法と、或いは、制御装置９０の備える有線Ｉ／Ｆ５０から、有線ネットワーク５５を介してサーバー６０にアクセスする方法と、の二通りのアクセスルートが用意されている。
【００２４】
すなわち、無線Ｉ／Ｆ４０は、無線接続によって外部と通信する機能を備える通信インタフェース装置であり、有線Ｉ／Ｆ５０は、有線接続によって外部と通信する機能を備える通信インタフェース装置である。
【００２５】
制御装置９０は、ＣＰＵ３５とメモリ装置８０とを備える装置であれば、如何なる機能を有する装置であっても良く、例えば、通信装置や監視制御装置、パーソナルコンピュータや各種のサーバー、携帯電話や携帯端末、或いは、宇宙機器への搭載装置などであり、従って本実施の形態においては、これらの装置が備える周辺機器や入出力装置など、本発明に関連しない装置・機器については、図示を省略している。
【００２６】
制御装置９０の備えるメモリ装置８０は、コンピュータプログラムやデータ（以下、これらを単にデータと称することとする）を記憶保持し、これらのデータをリード（読出し）／ライト（書込み）可能な、３個で一組のメモリ１０−１、メモリ１０−２、メモリ１０−３と、該メモリ１０へのデータのリード／ライトを行うと共に、該メモリ１０内に発生したソフトエラーなどの不具合の検出／修復を行うエラー検出制御回路２０と、から構成されている。
【００２７】
次に、図２を参照して、本実施形態のメモリ装置８０の詳細構成について説明する。
【００２８】
図２は、本実施形態のメモリ装置の一例を示す詳細ブロック図である。なお、図２において図１に示す構成要素に対応するものは同一の参照数字または符号を付し、その説明を省略する。
【００２９】
図２において、先ず、３個で一組のメモリ１０の各々は、ユーザデータ領域１１（１１−１、１１−２、１１−３）と冗長データ領域１２（１２−１、１２−２、１２−３）とに区分されている。ユーザデータ領域１１は、本メモリ装置８０を使用するユーザが自由にアクセス可能な領域であり、ＣＰＵ３５の制御により自由にデータをリード／ライト可能な領域である。データのリード／ライトの単位は、本メモリ装置８０の使用形態に応じて、如何様な単位のデータでも良く、例えばバイト単位、ワード単位、或いはレコード（複数バイト或いは複数ワードから構成される記憶の単位）単位とすることが可能である。
【００３０】
冗長データ領域１２は、メモリ１０内に生ずるソフトエラー検出用の冗長データを記録する領域であり、ユーザが使用することは出来ない領域である。冗長データ領域１２に記録される冗長データは、本メモリ装置８０の使用形態に応じて、如何様な冗長データとすることも可能である。例えば、ユーザデータ領域１１のバイト毎に対応する１ビットのパリティビットであっても良いし、ユーザデータ領域１１のバイト毎、ワード毎、或いはレコード（複数バイト或いは複数ワードから構成される記憶の単位）毎に対応する複数ビットの誤り検出符号であっても良く、複数ビットの誤り訂正符号であっても良い。
【００３１】
次に、エラー検出制御回路２０は、ＣＰＵ３５からのデータのライト要求に応じてメモリ１０にデータをライトするメモリライト部２１と、ＣＰＵ３５からのデータのリード要求に応じてメモリ１０からデータをリードするメモリリード部２２と、メモリリード部２２がデータをリードした際に、該データにソフトエラーが発生している場合には、該エラーの発生したデータの修復を行うエラー修復部２３と、から構成されている。
【００３２】
メモリライト部２１は、ライト要求されたデータを、例えばメモリ１０−１のユーザデータ領域１１−１内の該当アドレスにライトすると共に、該データの冗長データを自動的に生成し、該冗長データを冗長データ領域１２−１の該当アドレス対応部分にライトし蓄積する。そして、該データと該冗長データを、他の２つのメモリ１０−２とメモリ１０−３の該当アドレス対応部分にコピーして上書きする。すなわち、データのライト時点では、ライト要求されたデータと該データの冗長データとは、３つのメモリ１０（１０−１、１０−２、１０−３）内で同一となる。
【００３３】
また、３つのメモリ１０（１０−１、１０−２、１０−３）にデータのライトを終了した時点で、該３つのメモリ１０内に記憶保持されたデータの一致性を確認するようにすれば、より一層信頼性の高いデータの記憶保持を行うことが可能となる。
【００３４】
メモリリード部２２は、リード要求されたデータを、例えばメモリ１０−１のユーザデータ領域１１−１内の該当アドレスからリードすると共に、該データの冗長データを冗長データ領域１２−１の該当アドレス対応部分からリードする。そして、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの検査を行う。
【００３５】
検査の結果、該データにソフトエラー等の不具合が検出されなければ、該データにはエラーが無いので、これをＣＰＵ３５に送出する。
【００３６】
メモリリード部２２による検査の結果、該データにソフトエラー等の不具合が検出された場合には、メモリリード部２２は、該データのアドレスをエラー修復部２３に通知する。
【００３７】
エラー修復部２３は、該アドレスのデータを、既にリードを行ったメモリ１０−１からでなく、例えばメモリ１０−２のユーザデータ領域１１−２内の該当アドレスからリードすると共に、該データの冗長データを冗長データ領域１２−２の該当アドレス対応部分からリードする。そして、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの検査を行う。検査の結果、該データに不具合が検出されなければ、該データ、すなわち、メモリ１０−２からリードしたデータをメモリリード部２２に送出する。さらに、エラー修復部２３は、メモリ１０−２の該データと該冗長データを、メモリ１０−１のユーザデータ領域１１−１と冗長データ領域１２−１とにライトし直すことにより、メモリ１０−１の修復を行う。
【００３８】
エラー修復部２３がメモリ１０−２をリードした際、メモリ１０−２からもエラーが検出された場合には、エラー修復部２３は、該アドレスのデータを、既にリードを行ったメモリ１０−１、１０−２からでなく、メモリ１０−３のユーザデータ領域１１−３内の該当アドレスからリードすると共に、該データの冗長データを冗長データ領域１２−３の該当アドレス対応部分からリードする。そして、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの検査を行う。検査の結果、該データに不具合が検出されなければ、該データ、すなわち、メモリ１０−３からリードしたデータをメモリリード部２２に送出する。さらに、エラー修復部２３は、メモリ１０−３の該データと該冗長データを、メモリ１０−１及び１０−２のユーザデータ領域１１−１、１１−２と冗長データ領域１２−１、１２−２とにライトし直すことにより、メモリ１０−１、１０−２の修復を行う。
【００３９】
エラー修復部２３が、メモリ１０−２及びメモリ１０−３の両者からエラーを検出した場合には、エラー修復部２３によるエラー修復は不可能であるため、メモリリード部２２に対してエラー修復不可能の旨を通知する。
【００４０】
次に、図１、図２に示した本実施形態の動作について詳細に説明する。
【００４１】
制御装置９０のＣＰＵ３５は、メモリ１０にメモリ装置８０を使用するユーザのデータを書込む場合には、メモリ１０の指定するアドレスに該データをライトするよう、メモリ装置８０に対してライト要求を送出する。ライト要求は、本メモリ装置８０の使用形態に応じて、バイト単位、ワード単位、或いはレコード単位の何れでも可能であり、メモリ装置８０は、バイト単位のライト要求であればバイト単位の冗長データを生成し、ワード単位のライト要求であればワード単位の冗長データを生成し、レコード単位のライト要求であればレコード単位の冗長データを生成するようになっている。
【００４２】
データのライト要求を受けたメモリ装置８０は、該ライト要求をエラー検出制御回路２０のメモリライト部２１に送出し、メモリライト部２１は、ライト要求されたデータを、メモリ１０−１のユーザデータ領域１１−１内の該当アドレスにライトすると共に、該データの冗長データを自動的に生成し、該冗長データを冗長データ領域１２−１の該当アドレス対応部分にライトし蓄積する。そして、該データと該冗長データを、他の２つのメモリ１０−２とメモリ１０−３の該当アドレス対応部分にコピーして上書きする。そして、メモリライト部２１は、３つのメモリ１０（１０−１、１０−２、１０−３）にデータのライトを終了した時点で、該３つのメモリ１０内に記憶保持されたデータの一致性を確認して、データのライト終了通知をＣＰＵ３５に対して送出する。
【００４３】
データのライト終了通知を受けたＣＰＵ３５は、次にメモリ１０にライトすべきデータが存在する場合には、該次のデータのライト要求をメモリ装置８０に送出することにより、メモリ装置８０は上述と同様の動作を行って、３つのメモリ１０（１０−１、１０−２、１０−３）内に同一のデータを記憶保持する。
【００４４】
次に、ＣＰＵ３５がメモリ１０からデータを読み出す場合には、メモリ１０のアドレスを指定したデータのリード要求を、メモリ装置８０に送出する。
【００４５】
データのリード要求を受けたメモリ装置８０は、該リード要求をエラー検出制御回路のメモリリード部２２に送出し、メモリリード部２２は、リード要求されたデータを、メモリ１０−１のユーザデータ領域１１−１内の該当アドレスからリードすると共に、該データの冗長データを冗長データ領域１２−１の該当アドレス対応部分からリードする。そして、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの検査を行う。
【００４６】
検査の結果、該データにソフトエラー等の不具合が検出されなければ、該データにはエラーが無いので、これをリード終了通知と共にＣＰＵ３５に送出する。
【００４７】
メモリリード部２２による検査の結果、該データにソフトエラー等の不具合が検出された場合には、メモリリード部２２は、該データのアドレスをエラー修復部２３に通知する。
【００４８】
エラー修復部２３は、該アドレスのデータを、既にリードを行ったメモリ１０−１からでなく、メモリ１０−２のユーザデータ領域１１−２内の該当アドレスからリードすると共に、該データの冗長データを冗長データ領域１２−２の該当アドレス対応部分からリードする。そして、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの検査を行う。検査の結果、該データに不具合が検出されなければ、該データ、すなわち、メモリ１０−２からリードしたデータをメモリリード部２２に送出し、メモリリード部２２は該データをリード終了通知と共にＣＰＵ３５に送出する。さらに、エラー修復部２３は、メモリ１０−２の該データと該冗長データを、メモリ１０−１のユーザデータ領域１１−１と冗長データ領域１２−１とにライトし直すことにより、メモリ１０−１の修復を行う。
【００４９】
エラー修復部２３がメモリ１０−２をリードした際、メモリ１０−２からもエラーが検出された場合には、エラー修復部２３は、該アドレスのデータを、既にリードを行ったメモリ１０−１、１０−２からでなく、メモリ１０−３のユーザデータ領域１１−３内の該当アドレスからリードすると共に、該データの冗長データを冗長データ領域１２−３の該当アドレス対応部分からリードする。そして、該データと該冗長データとから、該データにソフトエラー等の不具合が発生しているか否かの検査を行う。検査の結果、該データに不具合が検出されなければ、該データ、すなわち、メモリ１０−３からリードしたデータをメモリリード部２２に送出し、メモリリード部２２は該データをリード終了通知と共にＣＰＵ３５に送出する。さらに、エラー修復部２３は、メモリ１０−３の該データと該冗長データを、メモリ１０−１及び１０−２のユーザデータ領域１１−１、１１−２と冗長データ領域１２−１、１２−２とにライトし直すことにより、メモリ１０−１、１０−２の修復を行う。
【００５０】
エラー修復部２３が、メモリ１０−２及びメモリ１０−３の両者からエラーを検出した場合には、エラー修復部２３によるエラー修復は不可能であるため、メモリリード部２２に対してエラー修復不可能の旨を通知し、メモリリード部２２は、エラー修復不可能通知をエラーの発生したアドレスと共にＣＰＵ３５に対して送出する。
【００５１】
ＣＰＵ３５が、メモリリード部２２からリード終了通知を受けた場合には、ＣＰＵ３５は、該リード終了通知と共に送出された該データすなわちエラーの無いデータを使用して、必要とする処理を実行する。
【００５２】
ＣＰＵ３５が、メモリリード部２２からエラー修復不可能通知を受けた場合には、ＣＰＵ３５は、有線Ｉ／Ｆ５０を起動してエラーの発生したデータのアドレス情報をサーバー６０に送信するよう指示を行う。有線Ｉ／Ｆ５０は、有線ネットワーク５５に接続し、エラーの発生したデータのアドレス情報を、有線ネットワーク５５を介してサーバー６０に送出する。サーバー６０は、該当アドレスにエラーが発生したことを履歴として記憶蓄積すると共に、該当アドレスのデータを自身が記憶保持している記憶装置から取り出し、これを有線ネットワーク５５を介して配信し、有線Ｉ／Ｆ５０に対して送出する。有線Ｉ／Ｆ５０は、サーバー６０から配信された該当データをＣＰＵ３５に送出する。
【００５３】
サーバー６０から配信された該当データを有線Ｉ／Ｆ５０から受けたＣＰＵ３５は、該当データをメモリ１０の該当アドレスに再度ライトするよう、メモリ装置８０に対してライト要求を送出する。メモリ装置８０は、上述した通常時のライト要求を受けたと同様の動作を行い、該当データをメモリ１０（１０−１、１０−２、１０−３の３つのメモリ）の該当アドレスにライトする。これにより、該当アドレスのデータは、元通りのエラーの無いデータとして修復されることとなる。なお、ＣＰＵ３５がメモリ１０に再ライトした該当データにつき、再度、有線Ｉ／Ｆ５０を介してサーバー６０への問合せを送出し、サーバー６０から再度、該当データを配信させ、該当データの正当性をチェックさせるようにすることにより、データの修復の信頼性を一層高めることが可能となる。
【００５４】
次に、ＣＰＵ３５が有線Ｉ／Ｆ５０を起動したが、有線Ｉ／Ｆ５０が接続しようとした有線ネットワーク５５が異常であった場合、或いはネットワークビジーであった場合の動作について説明する。
【００５５】
ＣＰＵ３５が、メモリリード部２２からエラー修復不可能通知を受けた場合であって、かつ、有線ネットワーク５５が異常であった場合、或いはネットワークビジーであった場合には、ＣＰＵ３５は、無線Ｉ／Ｆ４０を起動してエラーの発生したデータのアドレス情報をサーバー６０に送信するよう指示を行う。無線Ｉ／Ｆ４０は、無線回線７０に接続し、エラーの発生したデータのアドレス情報を、無線端末４５及び無線ネットワーク６５を介してサーバー６０に送出する。サーバー６０は、該当アドレスにエラーが発生したことを履歴として記憶蓄積すると共に、該当アドレスのデータを自身が記憶保持している記憶装置から取り出し、これを無線ネットワーク６５、無線端末４５及び無線回線７０を介して配信し、無線Ｉ／Ｆ４０に対して送出する。無線Ｉ／Ｆ４０は、サーバー６０から配信された該当データをＣＰＵ３５に送出する。この後のＣＰＵ３５の動作は、上述した有線Ｉ／Ｆ５０を起動した場合と全く同様であり、ＣＰＵ３５がメモリ１０に該当データを再ライトして該当データの修復を行う。
【００５６】
以上、本実施形態の動作について詳細に説明した。本実施形態によれば、同一記憶内容を有する３つのメモリ１０（１０−１、１０−２、１０−３）を備えているため、メモリ内の１ビット程度の少数ビットの「１」と「０」レベルが反転する所謂ソフトエラーが、３つのメモリ１０の同一アドレスに一斉に生起する確率は非常に小さなものとなり、従って、何れかのメモリ１０にソフトエラーが発生した場合であっても、メモリ装置内だけで容易にこれを修復することが可能となる。また、メモリ装置内でエラー修復が出来なかった場合であっても、有線Ｉ／Ｆ５０或いは無線Ｉ／Ｆ４０により外部サーバー６０からエラーの無いデータをダウンロード可能であるため、容易にエラーの修復が可能となる。さらに、外部サーバー６０内にメモリ１０のエラー発生の履歴情報が記憶蓄積されるため、サーバー６０の履歴情報からエラーに関する統計分析を行うことが可能となると共に、保守情報の提供を行うことも可能となる。
【００５７】
なお、本実施形態において、一定時間ごとに各メモリ１０のデータをリードし、エラーの有無をチェックした後、再ライトするようにすれば、各メモリ１０の蓄積電荷量が徐々に低下してしまうという現象を防ぐことが可能となり、ソフトエラー自体が発生しにくくなる、という更なる効果を有するものとなる。
【００５８】
また、本実施形態は外部のサーバー６０を備えているため、外部サーバー６０から、エラーの生じたデータをダウンロード可能であるばかりでなく、コンピュータプログラムやデータ全体の修正やバージョンアップをも容易に実施することが可能となる。
【００５９】
【発明の効果】
以上説明したように、本発明のソフトエラー自動修復機能付メモリ装置及びシステム並びにソフトエラー自動修復方法は、同一記憶内容の３つのメモリを有するメモリ装置を備えているため、ソフトエラーをメモリ装置内だけで自動修復することが可能となるという効果を有すると共に、外部サーバーへの通信インタフェースを備えているため、必要な場合には外部サーバーにアクセスしてデータをダウンロードすることによりエラーの自動修復を図ることが可能となる、という効果を有している。
【図面の簡単な説明】
【図１】本発明のソフトエラー自動修復機能付メモリシステムの一実施形態を示すブロック図である。
【図２】本実施形態のメモリ装置の一例を示す詳細ブロック図である。
【符号の説明】
１０　　メモリ
１１　　ユーザデータ領域
１２　　冗長データ領域
２０　　エラー検出制御回路
２１　　メモリライト部
２２　　メモリリード部
２３　　エラー修復部
３５　　ＣＰＵ
４０　　無線Ｉ／Ｆ
４５　　無線端末
５０　　有線Ｉ／Ｆ
５５　　有線ネットワーク
６０　　サーバー
６５　　無線ネットワーク
７０　　無線回線
８０　　メモリ装置
９０　　制御装置
【図１】
2004038468.tif 000003
【図２】
2004038468.tif 000004