JP5269932B2 - コントローラ、データ記憶装置およびプログラム - Google Patents
コントローラ、データ記憶装置およびプログラム Download PDFInfo
- Publication number
- JP5269932B2 JP5269932B2 JP2011044425A JP2011044425A JP5269932B2 JP 5269932 B2 JP5269932 B2 JP 5269932B2 JP 2011044425 A JP2011044425 A JP 2011044425A JP 2011044425 A JP2011044425 A JP 2011044425A JP 5269932 B2 JP5269932 B2 JP 5269932B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- unit
- bit string
- read
- error
- 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 - Fee Related
Links
- 238000013500 data storage Methods 0.000 title claims abstract description 139
- 239000000284 extract Substances 0.000 claims abstract description 29
- 238000001514 detection method Methods 0.000 claims description 356
- 238000012937 correction Methods 0.000 claims description 263
- 238000000034 method Methods 0.000 claims description 181
- 230000004044 response Effects 0.000 claims description 159
- 238000012545 processing Methods 0.000 claims description 88
- 230000006870 function Effects 0.000 description 8
- 238000013459 approach Methods 0.000 description 7
- 238000007726 management method Methods 0.000 description 7
- 238000012790 confirmation Methods 0.000 description 4
- 239000000470 constituent Substances 0.000 description 3
- 230000002950 deficient Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
また、実施の形態による他のコントローラは、ユーザデータ記憶領域と冗長領域とが含まれる記憶領域を複数有し、それぞれの記憶領域に論理アドレスそれぞれに対応するデータを記憶する記憶部への読み書き処理を補助するアクセス部と、論理アドレス情報と所定の応答の種別を識別する特殊データ識別情報とが含まれる特殊データ設定要求をホスト装置から受け付け、前記受け付けた特殊データ設定要求を特殊データ設定部に送信するホストインタフェース部と、第1誤り訂正符号の生成の元とするデータを要求元から受け付け、受け付けた前記データから、所定の方法に基づき、前記第1誤り訂正符号を生成し、生成した第1誤り訂正符号を前記要求元に送信する第1生成部と、に接続されたコントローラであって、要求元から操作対象データを受け付け、受け付けた前記操作対象データのビット列を所定の規則に基づき操作し、ビット列操作後の前記操作対象データを前記要求元に送信するビット列操作部と、前記ホストインタフェース部から前記特殊データ設定要求を受け付け、受け付けた前記特殊データ設定要求から前記特殊データ識別情報を抽出し、抽出した前記特殊データ識別情報に応じた識別ビット列を生成し、生成した前記識別ビット列を前記第1生成部に送信して前記識別ビット列に対応する第1誤り訂正符号を取得し、前記識別ビット列と前記第1誤り訂正符号とを前記操作対象データとして前記ビット列操作部に送信してビット列操作後の前記操作対象データを取得し、前記特殊データ設定要求から論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記ビット列操作後の操作対象データにおける前記識別ビット列を書き込むとともに前記冗長領域に前記ビット列操作後の操作対象データにおける前記第1誤り訂正符号を書き込むように前記アクセス部に指示する前記特殊データ設定部と、を備え、前記所定の規則は、ビット列操作後のビット列に対する誤り訂正が不可能になること、および、ビット列操作後のビット列を元のビット列に復元可能であることを含む。
(構成)
実施の形態1では、以下のようなコントローラ、データ記憶装置およびプログラムを例示する。図1は、実施の形態1にかかるデータ記憶装置100の概略構成を示す。図1に示すように、データ記憶装置100は、コントローラ110と、第1生成部121および第1判定部122と、ホストインタフェース部130と、アクセス部150と、記憶部160と、を備える。コントローラ110は、ビット列操作部111と、ビット列復元部112と、特殊データ設定部113と、書込み部114と、読込み部115とを含む。このコントローラ110は、たとえばデータバス140を介してアクセス部150およびホストインタフェース部130と相互に接続されている。以下の説明において、特殊データとは、ホスト装置へ所定の応答を送信するためのデータを意味する。
次に、実施の形態1における処理手順の一例について、図面を参照して詳細に説明する。図6は、実施の形態1における書込み処理の一例を示す。図7は、実施の形態1における特殊データ設定処理の一例を示す。図8は、実施の形態1における読込み処理の一例を示す。
まず、実施の形態1における書込み処理の一例を、図6を参照して詳細に説明する。図6に示すように、書込み処理では、まず、ホスト装置からの書込み要求に対して、誤り検出符号を生成する(ステップS101)。より詳細には、ホストインタフェース部130は、ホスト装置から書込み要求を受け付ける。書込み要求には、論理アドレス情報と、書込み対象データとが含まれる。ホストインタフェース部130は、ホスト装置から書込み要求を受け付けると、受け付けた書込み要求を書込み部114に送信する。書込み部114は、ホストインタフェース部130から書込み要求を受け付けると、この書込み要求から書込み対象データを抽出する。つづいて、書込み部114は、抽出した書込み対象データを、第1生成部121に送信する。なお、第1生成部121に送信するデータには、書込み対象データ以外のデータがさらに含まれていてもよい。例えば、書込み要求から抽出した論理アドレス情報を示すビット列や、所定のビット列がさらに含まれていてもよい。第1生成部121は、要求元である書込み部114から、誤り検出符号の生成のもとになる書込み対象データを受け付けると、受け付けた書込み対象データから、所定の方法に基づき、誤り検出符号を生成する。生成された誤り検出符号は、第1生成部121から要求元である書込み部114に送信される。その後、書込み部214は、書込み対象データに対応する誤り検出符号を第1生成部121から取得する。なお、以降の説明を含め、誤り検出符号を誤り訂正符号と読み替えてもよい。
次に、実施の形態1における特殊データ設定処理の一例を、図7を参照して詳細に説明する。図7に示すように、特殊データ設定処理では、まず、ホスト装置からの特殊データ設定要求に対して、マジックナンバーを含む特殊データ32を生成する(ステップS201)。より詳細には、ホストインタフェース部130は、ホスト装置から特殊データ設定要求を受け付ける。特殊データ設定要求には、書込み先の論理アドレス情報と、所定の応答の種別を識別する特殊データ識別情報とが含まれる。ホストインタフェース部130は、ホスト装置から特殊データ設定要求を受け付けると、受け付けた特殊データ設定要求を特殊データ設定部113に送信する。特殊データ設定部113は、ホストインタフェース部130から特殊データ設定要求を受け付けると、この特殊データ設定要求から特殊データ識別情報を抽出する。つづいて、特殊データ設定部113は、上述において図5を用いて説明したように、抽出した特殊データ識別情報に応じたビット列のマジックナンバーを含む特殊データ32を生成する。
次に、実施の形態1における読込み処理の一例を、図8を参照して詳細に説明する。図8に示すように、読込み処理では、まず、ホスト装置からの読込み要求に応じて、記憶部160からデータを読み込む(ステップS301)。より詳細には、ホストインタフェース部130は、ホスト装置から読込み要求を受け付ける。読込み要求には、読込み対象データの格納先を示す論理アドレス情報が含まれる。ホストインタフェース部130は、ホスト装置から読込み要求を受け付けると、受け付けた読込み要求を読込み部115に送信する。読込み部115は、ホストインタフェース部130から読込み要求を受け付けると、この読込み要求から論理アドレス情報を抽出する。その後、読込み部115は、抽出した論理アドレス情報が示す論理アドレスに対応する記憶部160の記憶領域161に記憶されているデータを読み込むように、アクセス部150に指示する。アクセス部150は、読込み部115から入力された論理アドレス情報が示す論理アドレスに対応する記憶部160の記憶領域161に記憶されているデータを読み込み、これを読込み部115に返答する。これにより、読込み部115が、読込み対象データを取得する。
(1)所定の値を通常のユーザデータの応答と同じ形式で応答
(2)所定の状態を通常のユーザデータの応答とは異なる形式で応答
(1)特殊データを設定可能な論理アドレスの数に上限を設定する
(2)管理情報をテーブルのようなフラットなデータ構造で管理し、必要な個所を随時記憶媒体から読み込む
つぎに、実施の形態2にかかるコントローラ、データ記憶装置およびプログラムを例示する。なお、以下の説明において、実施の形態1と同様の構成には、同一の符号を付し、その重複する説明を省略する。
図9は、実施の形態2にかかるデータ記憶装置200の概略構成を示す。図9と図1とを比較すると明らかなように、データ記憶装置200(図9)は、データ記憶装置100(図1)と同様の構成を備える。ただし、データ記憶装置200では、データ記憶装置100におけるコントローラ110とホストインタフェース部130とが、それぞれコントローラ210とホストインタフェース部230に置き換えられている。また、データ記憶装置200は、第2生成部221と、第2判定部222とをさらに備える。
次に、実施の形態2における処理手順の一例について、図面を参照して詳細に説明する。図11は、実施の形態2における書込み処理の一例を示す。図12は、実施の形態2における特殊データ設定処理の一例を示す。図13は、実施の形態2における読込み処理の一例を示す。
まず、実施の形態2における書込み処理の一例を、図11を参照して詳細に説明する。図11に示すように、書込み処理では、まず、ホスト装置からの書込み要求に対して、第1誤り検出符号を生成する(ステップS401)。より詳細には、ホストインタフェース部230は、ホスト装置から書込み要求を受け付ける。書込み要求には、論理アドレス情報と、書込み対象データとが含まれる。ホストインタフェース部230は、ホスト装置から書込み要求を受け付けると、受け付けた書込み要求を書込み部214に送信する。書込み部214は、ホストインタフェース部230から書込み要求を受け付けると、この受け付けた書込み要求から書込み対象データを抽出する。つづいて、書込み部214は、抽出した書込み対象データを、第1生成部121に送信する。なお、第1生成部121に送信するデータには、書込み対象データ以外のデータがさらに含まれていてもよい。たとえば、書込み要求から抽出した論理アドレス情報を示すビット列や、所定のビット列がさらに含まれていてもよい。第1生成部121は、要求元である書込み部214から、第1誤り検出符号の生成のもとになる書込み対象データを受け付けると、受け付けた書込み対象データから、所定の方法に基づき、誤り検出符号を生成する。生成された第1誤り検出符号は、第1生成部121から要求元である書込み部214に送信される。その後、書込み部214は、書込み対象データに対応する第1誤り検出符号を第1生成部121から取得する。なお、以降の説明を含め、誤り検出符号を誤り訂正符号と読み替えてもよい。
次に、実施の形態2における特殊データ設定処理の一例を、図12を参照して詳細に説明する。図12に示すように、特殊データ設定処理では、まず、ホスト装置からの特殊データ設定要求に対して、マジックナンバーを含む特殊データ32を生成する(ステップS501)。より詳細には、ホストインタフェース部230は、特殊データ設定要求を受け付ける。特殊データ設定要求には、書込み先の論理アドレス情報と、所定の応答の種別を識別する特殊データ識別情報とが含まれる。ホストインタフェース部230は、ホスト装置から特殊データ設定要求を受け付けると、受け付けた特殊データ設定要求を特殊データ設定部213に送信する。特殊データ設定部213は、ホストインタフェース部230から特殊データ設定要求を受け付けると、特殊データ設定要求から特殊データ識別情報を抽出する。つづいて、特殊データ設定部213は、抽出した特殊データ識別情報に応じたビット列のマジックナンバーを含む特殊データ32を生成する。特殊データ32の生成方法は、特殊データ設定部113と同様である。
次に、実施の形態2における読込み処理の一例を、図13を参照して詳細に説明する。図13に示すように、読込み処理では、まず、ホスト装置からの読込み要求に応じて、記憶部160からデータを読み込む(ステップS601)。より詳細には、ホストインタフェース部230は、ホスト装置から読込み要求を受け付ける。読込み要求には、読込み対象データの格納先を示す論理アドレス情報が含まれる。ホストインタフェース部230は、ホスト装置から読込み要求を受け付けると、受け付けた読込み要求を読込み部215に送信する。読込み部215は、ホストインタフェース部230から読込み要求を受け付けると、受け付けた読込み要求から論理アドレス情報を抽出する。その後、読込み部215は、抽出した論理アドレス情報が示す論理アドレスに対応する記憶部160の記憶領域161に記憶されているデータを読み込むように、アクセス部150に指示する。アクセス部150は、読込み部215から入力された論理アドレス情報が示す論理アドレスに対応する記憶部160の記憶領域161に記憶されているデータを読込み、これを読込み部215に返答する。これにより、読込み部215が読込み対象データを取得する。
Claims (24)
- ユーザデータ記憶領域と冗長領域とが含まれる記憶領域を複数有し、それぞれの記憶領域に論理アドレスそれぞれに対応するデータを記憶する記憶部への読み書き処理を補助するアクセス部と、
論理アドレス情報と所定の応答の種別を識別する特殊データ識別情報とが含まれる特殊データ設定要求をホスト装置から受け付け、前記受け付けた特殊データ設定要求を特殊データ設定部に送信するホストインタフェース部と、
第1誤り検出符号の生成の元とするデータを要求元から受け付け、受け付けた前記データから、所定の方法に基づき、前記第1誤り検出符号を生成し、生成した前記第1誤り検出符号を前記要求元に送信する第1生成部と、
に接続されたコントローラであって、
要求元から操作対象データを受け付け、受け付けた前記操作対象データのビット列を所定の規則に基づき操作し、ビット列操作後の前記操作対象データを前記要求元に送信するビット列操作部と、
前記ホストインタフェース部から前記特殊データ設定要求を受け付け、受け付けた前記特殊データ設定要求から前記特殊データ識別情報を抽出し、抽出した前記特殊データ識別情報に応じた識別ビット列を生成し、生成した前記識別ビット列を前記第1生成部に送信して前記識別ビット列に対応する第1誤り検出符号を取得し、前記識別ビット列と前記第1誤り検出符号とを前記操作対象データとして前記ビット列操作部に送信してビット列操作後の前記操作対象データを取得し、前記特殊データ設定要求から論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記ビット列操作後の操作対象データにおける前記識別ビット列を書き込むとともに前記冗長領域に前記ビット列操作後の操作対象データにおける前記第1誤り検出符号を書き込むように前記アクセス部に指示する前記特殊データ設定部と、
を備え、
前記所定の規則は、ビット列操作の結果として誤りが検出されるビット列の操作の規則となっていること、および、ビット列操作後のビット列を元のビット列に復元可能であるビット列の操作の規則となっていることを含むことを特徴とするコントローラ。 - ユーザデータ記憶領域と冗長領域とが含まれる記憶領域を複数有し、それぞれの記憶領域に論理アドレスそれぞれに対応するデータを記憶する記憶部への読み書き処理を補助するアクセス部と、
論理アドレス情報と所定の応答の種別を識別する特殊データ識別情報とが含まれる特殊データ設定要求をホスト装置から受け付け、前記受け付けた特殊データ設定要求を特殊データ設定部に送信するホストインタフェース部と、
第1誤り訂正符号の生成の元とするデータを要求元から受け付け、受け付けた前記データから、所定の方法に基づき、前記第1誤り訂正符号を生成し、生成した第1誤り訂正符号を前記要求元に送信する第1生成部と、
に接続されたコントローラであって、
要求元から操作対象データを受け付け、受け付けた前記操作対象データのビット列を所定の規則に基づき操作し、ビット列操作後の前記操作対象データを前記要求元に送信するビット列操作部と、
前記ホストインタフェース部から前記特殊データ設定要求を受け付け、受け付けた前記特殊データ設定要求から前記特殊データ識別情報を抽出し、抽出した前記特殊データ識別情報に応じた識別ビット列を生成し、生成した前記識別ビット列を前記第1生成部に送信して前記識別ビット列に対応する第1誤り訂正符号を取得し、前記識別ビット列と前記第1誤り訂正符号とを前記操作対象データとして前記ビット列操作部に送信してビット列操作後の前記操作対象データを取得し、前記特殊データ設定要求から論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記ビット列操作後の操作対象データにおける前記識別ビット列を書き込むとともに前記冗長領域に前記ビット列操作後の操作対象データにおける前記第1誤り訂正符号を書き込むように前記アクセス部に指示する前記特殊データ設定部と、
を備え、
前記所定の規則は、ビット列操作後のビット列に対する誤り訂正が不可能になること、および、ビット列操作後のビット列を元のビット列に復元可能であることを含むことを特徴とするコントローラ。 - ユーザデータ記憶領域と冗長領域とが含まれる記憶領域を複数有し、それぞれの記憶領域に論理アドレスそれぞれに対応するデータを記憶する記憶部への読み書き処理を補助するアクセス部と、
論理アドレス情報が含まれる読込み要求をホスト装置から受け付け、前記受け付けた読込み要求を読込み部に送信するホストインタフェース部と、
第1誤り検出対象データまたは第1誤り訂正対象データ、および前記第1誤り検出対象データに対応する第1誤り検出符号または前記第1誤り訂正対象データに対応する第1誤り訂正符号を要求元から受け付け、所定の方法に基づき、受け付けた前記第1誤り検出対象データおよび前記第1誤り検出符号に誤りが存在するか否か、または、前記第1誤り訂正対象データおよび前記第1誤り訂正符号の誤り訂正処理が可能であるか否かを判定して、前記判定結果を前記要求元に送信する第1判定部と、
に接続されたコントローラであって、
要求元から復元操作対象データを受け付け、受け付けた前記復元操作対象データのビット列の復元操作を実行し、ビット列復元操作後の前記復元操作対象データを前記要求元に送信するビット列復元部と、
前記ホストインタフェース部から前記読込み要求を受け付け、受け付けた前記読込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報が示す論理アドレスに対応する前記記憶領域に記憶されているデータを読み出すように前記アクセス部に指示して読み出された前記データを取得し、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを前記第1誤り検出対象データまたは前記第1誤り訂正対象データとするとともに前記冗長領域に格納されていたデータを前記第1誤り検出符号または前記第1誤り訂正符号として前記第1判定部に送信して前記第1判定部から送信された第1判定結果を取得し、取得した前記第1判定結果が誤りが検出されなかった旨の結果であった場合、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを読込み応答として前記ホストインタフェース部に送信し、前記第1判定結果が誤り訂正処理が可能である旨の結果であった場合、前記読み出されたデータの誤りを訂正し、誤り訂正された前記データのうち前記ユーザデータ記憶領域に格納されていたデータを読込み応答として前記ホストインタフェース部に送信し、前記第1判定結果が誤りが検出された旨または誤り訂正処理が不能である旨の結果であった場合、前記読み出されたデータを前記ビット列復元部に送信して前記ビット列復元操作後のデータを取得し、取得した前記ビット列復元操作後のデータのうち前記ユーザデータ記憶領域に格納されていたデータの少なくとも一部を所定の応答の種別を識別する特殊データ識別情報に対応づけられたマジックナンバーとみなして前記特殊データ識別情報を判別し、判別した前記特殊データ識別情報に従って所定の応答を読込み応答として前記ホストインタフェース部に送信する前記読込み部と、
を備え、
前記ホストインタフェース部はさらに、前記読込み部から前記読み出されたデータまたは読み込みの状態を示す情報である読込み状態情報を受け付け、受け付けた前記読み出されたデータまたは前記読込み状態情報を読込み応答として前記ホスト装置へ送信する、
ことを特徴とするコントローラ。 - 前記コントローラは、第1誤り検出対象データ、および前記第1誤り検出対象データに対応する前記第1誤り検出符号を要求元から受け付け、所定の方法に基づき、受け付けた前記第1誤り検出対象データおよび前記第1誤り検出符号に誤りが存在するか否かを判定して、前記判定結果を前記要求元に送信する第1判定部に、さらに接続され、
前記ホストインタフェース部はさらに、論理アドレス情報が含まれる読込み要求をホスト装置から受け付け、前記受け付けた読込み要求を読込み部に送信し、
前記コントローラは、
要求元から復元操作対象データを受け付け、受け付けた前記復元操作対象データのビット列の復元操作を実行し、ビット列復元操作後の前記復元操作対象データを前記要求元に送信するビット列復元部と、
前記ホストインタフェース部から前記読込み要求を受け付け、受け付けた前記読込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報が示す論理アドレスに対応する前記記憶領域に記憶されているデータを読み出すように前記アクセス部に指示して読み出された前記データを取得し、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを前記第1誤り検出対象データとするとともに前記冗長領域に格納されていたデータを前記第1誤り検出符号として前記第1判定部に送信し、前記第1判定部から送信された第1判定結果を取得し、取得した前記第1判定結果が誤りが検出されなかった旨の結果であった場合、前記第1誤り検出対象データのうち前記ユーザデータ記憶領域に格納されていたデータを読込み応答として前記ホストインタフェース部に送信し、前記第1判定結果が誤りが検出された旨の結果であった場合、前記読み出されたデータを前記ビット列復元部に送信して前記ビット列復元操作後のデータを取得し、取得した前記ビット列復元操作後のデータのうち前記ユーザデータ記憶領域に格納されていたデータの少なくとも一部を前記マジックナンバーとみなして前記特殊データ識別情報を判別し、判別した前記特殊データ識別情報に従って所定の応答を読込み応答として前記ホストインタフェース部に送信する前記読込み部と、
をさらに備え、
前記ホストインタフェース部はさらに、前記読込み部から前記読み出されたデータまたは読み込みの状態を示す情報である読込み状態情報を受け付け、受け付けた前記読み出されたデータまたは前記読込み状態情報を読込み応答として前記ホスト装置へ送信する、
ことを特徴とする請求項1に記載のコントローラ。 - 前記ホストインタフェース部はさらに、論理アドレス情報と書き込むべきデータとが含まれる書込み要求を前記ホスト装置から受け付け、前記受け付けた書込み要求を書込み部に送信し、
前記コントローラは、前記ホストインタフェース部から前記書込み要求を受け付け、受け付けた前記書込み要求から前記書き込むべきデータを抽出し、抽出した前記書き込むべきデータを前記第1生成部に送信して前記書き込むべきデータに対応する第1誤り検出符号を取得し、前記受け付けた書込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記書き込むべきデータを書き込むとともに前記冗長領域に前記第1誤り検出符号を書き込むように前記アクセス部に指示する前記書込み部を、さらに備える、
ことを特徴とする請求項4に記載のコントローラ。 - 前記コントローラは、第1誤り訂正対象データ、および前記第1誤り訂正対象データに対応する前記第1誤り訂正符号を要求元から受け付け、所定の方法に基づき、受け付けた前記第1誤り訂正対象データおよび前記第1誤り訂正符号の誤り訂正処理が可能であるか否かを判定して、前記判定結果を前記要求元に送信する第1判定部に、さらに接続され、
前記ホストインタフェース部はさらに、論理アドレス情報が含まれる読込み要求をホスト装置から受け付け、前記受け付けた読込み要求を読込み部に送信し、
前記コントローラは、
要求元から復元操作対象データを受け付け、受け付けた前記復元操作対象データのビット列の復元操作を実行し、ビット列復元操作後の前記復元操作対象データを前記要求元に送信するビット列復元部と、
前記ホストインタフェース部から前記読込み要求を受け付け、受け付けた前記読込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報が示す論理アドレスに対応する前記記憶領域に記憶されているデータを読み出すように前記アクセス部に指示して読み出された前記データを取得し、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを前記第1誤り訂正対象データとするとともに前記冗長領域に格納されていたデータを前記第1誤り訂正符号として前記第1判定部に送信し、前記第1判定部から送信された第1判定結果を取得し、取得した前記第1判定結果が誤り訂正処理が可能である旨の結果であった場合、前記誤り訂正対象データの誤りを訂正して誤り訂正済みデータを生成し、前記誤り訂正済みデータのうち前記ユーザデータ記憶領域に格納されていたデータを読込み応答としてホストインタフェース部に送信し、前記第1判定結果が誤り訂正処理が不能である旨の結果であった場合、前記読み出されたデータを前記ビット列復元部に送信して前記ビット列復元操作後のデータを取得し、取得した前記ビット列復元操作後のデータのうち前記ユーザデータ記憶領域に格納されていたデータの少なくとも一部を前記マジックナンバーとみなして前記特殊データ識別情報を判別し、判別した前記特殊データ識別情報に従って所定の応答を読込み応答として前記ホストインタフェース部に送信する前記読込み部と、
をさらに備え、
前記ホストインタフェース部はさらに、前記読込み部から前記読み出されたデータまたは読み込みの状態を示す情報である読込み状態情報を受け付け、受け付けた前記読み出されたデータまたは前記読込み状態情報を読込み応答として前記ホスト装置へ送信する、
ことを特徴とする請求項2に記載のコントローラ。 - 前記ホストインタフェース部はさらに、論理アドレス情報と書き込むべきデータとが含まれる書込み要求を前記ホスト装置から受け付け、前記受け付けた書込み要求を書込み部に送信し、
前記コントローラは、前記ホストインタフェース部から前記書込み要求を受け付け、受け付けた前記書込み要求から前記書き込むべきデータを抽出し、抽出した前記書き込むべきデータを前記第1生成部に送信して前記書き込むべきデータに対応する第1誤り訂正符号を取得し、前記受け付けた書込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記書き込むべきデータを書き込むとともに前記冗長領域に前記第1誤り訂正符号を書き込むように前記アクセス部に指示する前記書込み部を、さらに備える、
ことを特徴とする請求項6に記載のコントローラ。 - 前記冗長領域は、第1冗長領域と第2冗長領域とを含み、
前記コントローラは、第2誤り検出符号の生成の元とするデータを要求元から受け付け、受け付けた前記データから、所定の方法に基づき、前記第2誤り検出符号を生成し、生成した前記第2誤り検出符号を前記要求元に送信する第2生成部に、さらに接続され、
前記特殊データ設定部が、前記アクセス部に前記ビット列操作後の第1誤り検出符号を書き込むように指示した前記冗長領域は前記第1冗長領域であり、
前記特殊データ設定部はさらに、前記ビット列操作後のマジックナンバーおよび第1誤り検出符号を前記第2生成部に送信して前記ビット列操作後のマジックナンバーおよび第1誤り検出符号に対応する第2誤り検出符号を取得し、前記抽出した論理アドレス情報に対応する前記記憶領域のうち前記第2冗長領域にさらに前記第2誤り検出符号を書き込むように前記アクセス部に指示する、
ことを特徴とする請求項1に記載のコントローラ。 - 前記冗長領域は、第1冗長領域と第2冗長領域とを含み、
前記コントローラは、第2誤り訂正符号の生成の元とするデータを要求元から受け付け、受け付けた前記データから、所定の方法に基づき、前記第2誤り訂正符号を生成し、生成した前記第2誤り訂正符号を前記要求元に送信する第2生成部に、さらに接続され、
前記特殊データ設定部が、前記アクセス部に前記ビット列操作後の第1誤り検出符号を書き込むように指示した前記冗長領域は前記第1冗長領域であり、
前記特殊データ設定部はさらに、前記ビット列操作後のマジックナンバーおよび第1誤り検出符号を前記第2生成部に送信して前記ビット列操作後のマジックナンバーおよび第1誤り検出符号に対応する第2誤り訂正符号を取得し、前記抽出した論理アドレス情報に対応する前記記憶領域のうち前記第2冗長領域にさらに前記第2誤り訂正符号を書き込むように前記アクセス部に指示する、
ことを特徴とする請求項1に記載のコントローラ。 - 前記冗長領域は、第1冗長領域と第2冗長領域とを含み、
前記コントローラは、第2誤り検出符号の生成の元とするデータを要求元から受け付け、受け付けた前記データから、所定の方法に基づき、前記第2誤り検出符号を生成し、生成した前記第2誤り検出符号を前記要求元に送信する第2生成部に、さらに接続され、
前記特殊データ設定部が、前記アクセス部に前記ビット列操作後の第1誤り訂正符号を書き込むように指示した前記冗長領域は前記第1冗長領域であり、
前記特殊データ設定部はさらに、前記ビット列操作後のマジックナンバーおよび第1誤り訂正符号を前記第2生成部に送信して前記ビット列操作後のマジックナンバーおよび第1誤り訂正符号に対応する第2誤り検出符号を取得し、前記抽出した論理アドレス情報に対応する前記記憶領域のうち前記第2冗長領域にさらに前記第2誤り検出符号を書き込むように前記アクセス部に指示する、
ことを特徴とする請求項2に記載のコントローラ。 - 前記冗長領域は、第1冗長領域と第2冗長領域とを含み、
前記コントローラは、第2誤り訂正符号の生成の元とするデータを要求元から受け付け、受け付けた前記データから、所定の方法に基づき、前記第2誤り訂正符号を生成し、生成した前記第2誤り訂正符号を前記要求元に送信する第2生成部に、さらに接続され、
前記特殊データ設定部が、前記アクセス部に前記ビット列操作後の第1誤り訂正符号を書き込むように指示した前記冗長領域は前記第1冗長領域であり、
前記特殊データ設定部はさらに、前記ビット列操作後のマジックナンバーおよび第1誤り訂正符号を前記第2生成部に送信して前記ビット列操作後のマジックナンバーおよび第1誤り訂正符号に対応する第2誤り訂正符号を取得し、前記抽出した論理アドレス情報に対応する前記記憶領域のうち前記第2冗長領域にさらに前記第2誤り訂正符号を書き込むように前記アクセス部に指示する、
ことを特徴とする請求項2に記載のコントローラ。 - ユーザデータ記憶領域と第1および第2冗長領域とが含まれる記憶領域を複数有し、それぞれの記憶領域に論理アドレスそれぞれに対応するデータを記憶する記憶部への読み書き処理を補助するアクセス部と、
論理アドレス情報が含まれる読込み要求をホスト装置から受け付け、受け付けた前記読込み要求を読込み部に送信するホストインタフェース部と、
第1誤り検出対象データまたは第1誤り訂正対象データ、および前記第1誤り検出対象データに対応する前記第1誤り検出符号または前記第1誤り訂正対象データに対応する前記第1誤り訂正符号を要求元から受け付け、所定の方法に基づき、受け付けた前記第1誤り検出対象データおよび前記第1誤り検出符号に誤りが存在するか否か、または、前記第1誤り訂正対象データおよび前記第1誤り訂正符号の誤り訂正処理が可能であるか否かを判定して、前記判定結果を前記要求元に送信する第1判定部と、
第2誤り検出対象データまたは第2誤り訂正対象データ、および前記第2誤り検出対象データに対応する前記第2誤り検出符号または前記第2誤り訂正対象データに対応する前記第2誤り訂正符号を受け付け、所定の方法に基づき、受け付けた前記第2誤り検出対象データおよび前記第2誤り検出符号に誤りが存在するか否か、または、前記第2誤り訂正対象データおよび前記第2誤り訂正符号の誤りを訂正可能であるか否かを判定して、前記判定結果を前記要求元に送信する第2判定部と、
に接続されたコントローラであって、
要求元から復元操作対象データを受け付け、受け付けた前記復元操作対象データのビット列の復元操作を実行し、ビット列復元操作後の前記復元操作対象データを前記要求元に送信するビット列復元部と、
前記ホストインタフェース部から前記読込み要求を受け付け、受け付けた前記読込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報が示す論理アドレスに対応する前記記憶領域に記憶されているデータを読み出すように前記アクセス部に指示して読み出された前記データを取得し、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータと前記第1冗長領域に格納されていたデータとを前記第2誤り検出対象データまたは前記第2誤り訂正対象データとするとともに前記第2冗長領域に格納されていたデータを前記第2誤り検出符号または前記第2誤り訂正符号として前記第2判定部に送信して前記第2判定部から送信された第2判定結果を取得し、取得した前記第2判定結果が誤りが検出されなかった旨の結果であった場合、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを前記第1誤り検出対象データとするとともに前記第1冗長領域に格納されていたデータを前記第1誤り検出符号として前記第1判定部に送信して前記第1判定部から送信された第1判定結果を取得し、前記第2判定結果が誤り訂正処理が可能である旨の結果であった場合、前記第2誤り訂正対象データの誤りを訂正して誤り訂正済みデータを生成し、前記誤り訂正済みデータのうち前記ユーザデータ記憶領域に格納されていたデータを前記第1誤り訂正対象データとするとともに前記第1冗長領域に格納されていたデータを前記第1誤り訂正符号として前記第1判定部に送信して前記第1判定部から送信された第1判定結果を取得し、取得した前記第1判定結果が誤りが検出されなかった旨または誤り訂正処理が可能である旨の結果であった場合、前記第1誤り検出対象データのうち前記ユーザデータ記憶領域に記憶されていたデータを読込み応答として前記ホストインタフェース部に送信し、前記第1判定結果が誤りが検出された旨または前記第1判定結果が誤り訂正処理が不能である旨の結果であった場合、前記第1誤り検出対象データのうち前記ユーザデータ記憶領域に格納されていたデータと前記第1冗長領域に格納されていたデータとを前記復元操作対象データとして前記ビット列復元部に送信して前記ビット列復元操作後のデータを取得し、取得した前記ビット列復元操作後のデータのうち前記ユーザデータ記憶領域に格納されていたデータの少なくとも一部を所定の応答の種別を識別する特殊データ識別情報に対応づけられたマジックナンバーとみなして前記特殊データ識別情報を判別し、判別した前記特殊データ識別情報に従って所定の応答を読込み応答として前記ホストインタフェース部に送信する前記読込み部と、
を備え、
前記ホストインタフェース部はさらに、前記読込み部から前記読み出されたデータまたは読み込みの状態を示す情報である読込み状態情報を受け付け、受け付けた前記読み出されたデータまたは前記読込み状態情報を読込み応答として前記ホスト装置へ送信する、
ことを特徴とするコントローラ。 - 前記コントローラは、
第1誤り検出対象データ、および前記第1誤り検出対象データに対応する前記第1誤り検出符号を要求元から受け付け、所定の方法に基づき、受け付けた前記第1誤り検出対象データおよび前記第1誤り検出符号に誤りが存在するか否かを判定して、前記判定結果を前記要求元に送信する第1判定部と、
第2誤り検出対象データ、および前記第2誤り検出対象データに対応する前記第2誤り検出符号を要求元から受け付け、所定の方法に基づき、受け付けた前記第2誤り検出対象データおよび前記第2誤り検出符号に誤りが存在するか否かを判定して、前記判定結果を前記要求元に送信する第2判定部と、
にさらに接続され、
前記ホストインタフェース部はさらに、論理アドレス情報が含まれる読込み要求をホスト装置から受け付け、受け付けた前記読込み要求を読込み部に送信し、
前記コントローラは、
要求元から復元操作対象データを受け付け、受け付けた前記復元操作対象データのビット列の復元操作を実行し、ビット列復元操作後の前記復元操作対象データを前記要求元に送信するビット列復元部と、
前記ホストインタフェース部から前記読込み要求を受け付け、受け付けた前記読込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報が示す論理アドレスに対応する前記記憶領域に記憶されているデータを読み出すように前記アクセス部に指示して読み出された前記データを取得し、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータと前記第1冗長領域に格納されていたデータとを前記第2誤り検出対象データとするとともに前記第2冗長領域に格納されていたデータを前記第2誤り検出符号として前記第2判定部に送信して前記第2判定部から送信された第2判定結果を取得し、取得した前記第2判定結果が誤りが検出されなかった旨の結果であった場合、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを前記第1誤り検出対象データとするとともに前記第1冗長領域に格納されていたデータを前記第1誤り検出符号として前記第1判定部に送信して前記第1判定部から送信された第1判定結果を取得し、取得した前記第1判定結果が誤りが検出されなかった旨の結果であった場合、前記第1誤り検出対象データのうち前記ユーザデータ記憶領域に記憶されていたデータを読込み応答として前記ホストインタフェース部に送信し、前記第1判定結果が誤りが検出された旨の結果であった場合、前記第1誤り検出対象データのうち前記ユーザデータ記憶領域に格納されていたデータと前記第1冗長領域に格納されていたデータとを前記復元操作対象データとして前記ビット列復元部に送信して前記ビット列復元操作後のデータを取得し、取得した前記ビット列復元操作後のデータのうち前記ユーザデータ記憶領域に格納されていたデータの少なくとも一部を前記マジックナンバーとみなして前記特殊データ識別情報を判別し、判別した前記特殊データ識別情報に従って所定の応答を読込み応答として前記ホストインタフェース部に送信する前記読込み部と、
をさらに備え、
前記ホストインタフェース部はさらに、前記読込み部から前記読み出されたデータまたは読み込みの状態を示す情報である読込み状態情報を受け付け、受け付けた前記読み出されたデータまたは前記読込み状態情報を読込み応答として前記ホスト装置へ送信する、
ことを特徴とする請求項8に記載のコントローラ。 - 前記ホストインタフェース部はさらに、論理アドレス情報と書き込むべきデータとが含まれる書込み要求を前記ホスト装置から受け付け、前記受け付けた書込み要求を書込み部に送信し、
前記コントローラは、前記ホストインタフェース部から前記書込み要求を受け付け、受け付けた前記書込み要求から前記書き込むべきデータを抽出し、抽出した前記書き込むべきデータを前記第1生成部に送信して前記書き込むべきデータに対応する第1誤り検出符号を取得し、前記書き込むべきデータと前記第1誤り検出符号とを前記第2生成部に送信して前記書き込むべきデータおよび前記第1誤り検出符号に対応する第2誤り検出符号を取得し、前記受け付けた書込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記書き込むべきデータを書き込むとともに前記第1冗長領域に前記第1誤り検出符号を書き込み且つ前記第2冗長領域に前記第2誤り検出符号を書き込むように前記アクセス部に指示する前記書込み部を、さらに備える、
ことを特徴とする請求項13に記載のコントローラ。 - 前記コントローラは、
第1誤り検出対象データ、および前記第1誤り検出対象データに対応する前記第1誤り検出符号を要求元から受け付け、所定の方法に基づき、受け付けた前記第1誤り検出対象データおよび前記第1誤り検出符号に誤りが存在するか否かを判定して、前記判定結果を前記要求元に送信する第1判定部と、
第2誤り訂正対象データ、および前記第2誤り訂正対象データに対応する前記第2誤り訂正符号を要求元から受け付け、所定の方法に基づき、受け付けた前記第2誤り訂正対象データおよび前記第2誤り訂正符号の誤り訂正処理が可能であるか否かを判定して、前記判定結果を前記要求元に送信する第2判定部と、
にさらに接続され、
前記ホストインタフェース部はさらに、論理アドレス情報が含まれる読込み要求をホスト装置から受け付け、受け付けた前記読込み要求を読込み部に送信し、
前記コントローラは、
要求元から復元操作対象データを受け付け、受け付けた前記復元操作対象データのビット列の復元操作を実行し、ビット列復元操作後の前記復元操作対象データを前記要求元に送信するビット列復元部と、
前記ホストインタフェース部から前記読込み要求を受け付け、受け付けた前記読込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報が示す論理アドレスに対応する前記記憶領域に記憶されているデータを読み出すように前記アクセス部に指示して読み出された前記データを取得し、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータと前記第1冗長領域に格納されていたデータとを前記第2誤り訂正対象データとするとともに前記第2冗長領域に格納されていたデータを前記第2誤り訂正符号として前記第2判定部に送信して前記第2判定部から送信された第2判定結果を取得し、取得した前記第2判定結果が誤り訂正処理が可能である旨の結果であった場合、前記第2誤り訂正対象データの誤りを訂正して誤り訂正済みデータを生成し、前記誤り訂正済みデータのうち前記ユーザデータ記憶領域に格納されていたデータを前記第1誤り検出対象データとするとともに前記第1冗長領域に格納されていたデータを前記第1誤り検出符号として前記第1判定部に送信して前記第1判定部から送信された第1判定結果を取得し、取得した前記第1判定結果が誤りが検出されなかった旨の結果であった場合、前記第1誤り検出対象データのうち前記ユーザデータ記憶領域に記憶されていたデータを読込み応答として前記ホストインタフェース部に送信し、前記第1判定結果が誤りが検出された旨の結果であった場合、前記第1誤り検出対象データのうち前記ユーザデータ記憶領域に格納されていたデータと前記第1冗長領域に格納されていたデータとを前記復元操作対象データとして前記ビット列復元部に送信して前記ビット列復元操作後のデータを取得し、取得した前記ビット列復元操作後のデータのうち前記ユーザデータ記憶領域に格納されていたデータの少なくとも一部を前記マジックナンバーとみなして前記特殊データ識別情報を判別し、判別した前記特殊データ識別情報に従って所定の応答を読込み応答として前記ホストインタフェース部に送信する前記読込み部と、
をさらに備え、
前記ホストインタフェース部はさらに、前記読込み部から前記読み出されたデータまたは読み込みの状態を示す情報である読込み状態情報を受け付け、受け付けた前記読み出されたデータまたは前記読込み状態情報を読込み応答として前記ホスト装置へ送信する、
ことを特徴とする請求項9に記載のコントローラ。 - 前記ホストインタフェース部はさらに、論理アドレス情報と書き込むべきデータとが含まれる書込み要求を前記ホスト装置から受け付け、前記受け付けた書込み要求を書込み部に送信し、
前記コントローラは、前記ホストインタフェース部から前記書込み要求を受け付け、受け付けた前記書込み要求から前記書き込むべきデータを抽出し、抽出した前記書き込むべきデータを前記第1生成部に送信して前記書き込むべきデータに対応する第1誤り検出符号を取得し、前記書き込むべきデータと前記第1誤り検出符号とを前記第2生成部に送信して前記書き込むべきデータおよび前記第1誤り検出符号に対応する第2誤り訂正符号を取得し、前記受け付けた書込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記書き込むべきデータを書き込むとともに前記第1冗長領域に前記第1誤り検出符号を書き込み且つ前記第2冗長領域に前記第2誤り訂正符号を書き込むように前記アクセス部に指示する前記書込み部を、さらに備える、
ことを特徴とする請求項15に記載のコントローラ。 - 前記コントローラは、
第1誤り訂正対象データ、および前記第1誤り訂正対象データに対応する前記第1誤り訂正符号を要求元から受け付け、所定の方法に基づき、受け付けた前記第1誤り訂正対象データおよび前記第1誤り訂正符号の誤り訂正処理が可能であるか否かを判定して、前記判定結果を前記要求元に送信する第1判定部と、
第2誤り検出対象データ、および前記第2誤り検出対象データに対応する前記第2誤り検出符号を要求元から受け付け、所定の方法に基づき、受け付けた前記第2誤り検出対象データおよび前記第2誤り検出符号に誤りが存在するか否かを判定して、前記判定結果を前記要求元に送信する第2判定部と、
にさらに接続され、
前記ホストインタフェース部はさらに、論理アドレス情報が含まれる読込み要求をホスト装置から受け付け、受け付けた前記読込み要求を読込み部に送信し、
前記コントローラは、
要求元から復元操作対象データを受け付け、受け付けた前記復元操作対象データのビット列の復元操作を実行し、ビット列復元操作後の前記復元操作対象データを前記要求元に送信するビット列復元部と、
前記ホストインタフェース部から前記読込み要求を受け付け、受け付けた前記読込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報が示す論理アドレスに対応する前記記憶領域に記憶されているデータを読み出すように前記アクセス部に指示して読み出された前記データを取得し、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータと前記第1冗長領域に格納されていたデータとを前記第2誤り検出対象データとするとともに前記第2冗長領域に格納されていたデータを前記第2誤り検出符号として前記第2判定部に送信して前記第2判定部から送信された第2判定結果を取得し、取得した前記第2判定結果が誤りが検出されなかった旨の結果であった場合、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを前記第1誤り訂正対象データとするとともに前記第1冗長領域に格納されていたデータを前記第1誤り訂正符号として前記第1判定部に送信して前記第1判定部から送信された第1判定結果を取得し、取得した前記第1判定結果が誤り訂正処理が可能である旨の結果であった場合、前記第1誤り訂正対象データのうち前記ユーザデータ記憶領域に記憶されていたデータを読込み応答として前記ホストインタフェース部に送信し、前記第1判定結果が誤り訂正処理が不能である旨の結果であった場合、前記第1誤り訂正対象データのうち前記ユーザデータ記憶領域に格納されていたデータと前記第1冗長領域に格納されていたデータとを前記復元操作対象データとして前記ビット列復元部に送信して前記ビット列復元操作後のデータを取得し、取得した前記ビット列復元操作後のデータのうち前記ユーザデータ記憶領域に格納されていたデータの少なくとも一部を前記マジックナンバーとみなして前記特殊データ識別情報を判別し、判別した前記特殊データ識別情報に従って所定の応答を読込み応答として前記ホストインタフェース部に送信する前記読込み部と、
をさらに備え、
前記ホストインタフェース部はさらに、前記読込み部から前記読み出されたデータまたは読み込みの状態を示す情報である読込み状態情報を受け付け、受け付けた前記読み出されたデータまたは前記読込み状態情報を読込み応答として前記ホスト装置へ送信する、
ことを特徴とする請求項10に記載のコントローラ。 - 前記ホストインタフェース部はさらに、論理アドレス情報と書き込むべきデータとが含まれる書込み要求を前記ホスト装置から受け付け、前記受け付けた書込み要求を書込み部に送信し、
前記コントローラは、前記ホストインタフェース部から前記書込み要求を受け付け、受け付けた前記書込み要求から前記書き込むべきデータを抽出し、抽出した前記書き込むべきデータを前記第1生成部に送信して前記書き込むべきデータに対応する第1誤り訂正符号を取得し、前記書き込むべきデータと前記第1誤り訂正符号とを前記第2生成部に送信して前記書き込むべきデータおよび前記第1誤り訂正符号に対応する第2誤り訂正符号を取得し、前記受け付けた書込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記書き込むべきデータを書き込むとともに前記第1冗長領域に前記第1誤り訂正符号を書き込み且つ前記第2冗長領域に前記第2誤り検出符号を書き込むように前記アクセス部に指示する前記書込み部を、さらに備える、
ことを特徴とする請求項17に記載のコントローラ。 - 前記コントローラは、
第1誤り訂正対象データ、および前記第1誤り訂正対象データに対応する前記第1誤り訂正符号を要求元から受け付け、所定の方法に基づき、受け付けた前記第1誤り訂正対象データおよび前記第1誤り訂正符号の誤り訂正処理が可能であるか否かを判定して、前記判定結果を前記要求元に送信する第1判定部と、
第2誤り訂正対象データ、および前記第2誤り訂正対象データに対応する前記第2誤り訂正符号を要求元から受け付け、所定の方法に基づき、受け付けた前記第2誤り訂正対象データおよび前記第2誤り訂正符号の誤り訂正処理が可能であるか否かを判定して、前記判定結果を前記要求元に送信する第2判定部と、
にさらに接続され、
前記ホストインタフェース部はさらに、論理アドレス情報が含まれる読込み要求をホスト装置から受け付け、受け付けた前記読込み要求を読込み部に送信し、
前記コントローラは、
要求元から復元操作対象データを受け付け、受け付けた前記復元操作対象データのビット列の復元操作を実行し、ビット列復元操作後の前記復元操作対象データを前記要求元に送信するビット列復元部と、
前記ホストインタフェース部から前記読込み要求を受け付け、受け付けた前記読込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報が示す論理アドレスに対応する前記記憶領域に記憶されているデータを読み出すように前記アクセス部に指示して読み出された前記データを取得し、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータと前記第1冗長領域に格納されていたデータとを前記第2誤り訂正対象データとするとともに前記第2冗長領域に格納されていたデータを前記第2誤り訂正符号として前記第2判定部に送信して前記第2判定部から送信された第2判定結果を取得し、取得した前記第2判定結果が誤り訂正処理が可能である旨の結果であった場合、前記第2誤り訂正対象データの誤りを訂正して誤り訂正済みデータを生成し、前記誤り訂正済みデータのうち前記ユーザデータ記憶領域に格納されていたデータを前記第1誤り訂正対象データとするとともに前記第1冗長領域に格納されていたデータを前記第1誤り訂正符号として前記第1判定部に送信して前記第1判定部から送信された第1判定結果を取得し、取得した前記第1判定結果が誤り訂正処理が可能である旨の結果であった場合、前記第1誤り訂正対象データのうち前記ユーザデータ記憶領域に記憶されていたデータを読込み応答として前記ホストインタフェース部に送信し、前記第1判定結果が誤り訂正処理が不能である旨の結果であった場合、前記第1誤り訂正対象データのうち前記ユーザデータ記憶領域に格納されていたデータと前記第1冗長領域に格納されていたデータとを前記復元操作対象データとして前記ビット列復元部に送信して前記ビット列復元操作後のデータを取得し、取得した前記ビット列復元操作後のデータのうち前記ユーザデータ記憶領域に格納されていたデータの少なくとも一部を前記マジックナンバーとみなして前記特殊データ識別情報を判別し、判別した前記特殊データ識別情報に従って所定の応答を読込み応答として前記ホストインタフェース部に送信する前記読込み部と、
をさらに備え、
前記ホストインタフェース部はさらに、前記読込み部から前記読み出されたデータまたは読み込みの状態を示す情報である読込み状態情報を受け付け、受け付けた前記読み出されたデータまたは前記読込み状態情報を読込み応答として前記ホスト装置へ送信する、
ことを特徴とする請求項11に記載のコントローラ。 - 前記ホストインタフェース部はさらに、論理アドレス情報と書き込むべきデータとが含まれる書込み要求を前記ホスト装置から受け付け、前記受け付けた書込み要求を書込み部に送信し、
前記コントローラは、前記ホストインタフェース部から前記書込み要求を受け付け、受け付けた前記書込み要求から前記書き込むべきデータを抽出し、抽出した前記書き込むべきデータを前記第1生成部に送信して前記書き込むべきデータに対応する第1誤り訂正符号を取得し、前記書き込むべきデータと前記第1誤り訂正符号とを前記第2生成部に送信して前記書き込むべきデータおよび前記第1誤り訂正符号に対応する第2誤り訂正符号を取得し、前記受け付けた書込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記書き込むべきデータを書き込むとともに前記第1冗長領域に前記第1誤り訂正符号を書き込み且つ前記第2冗長領域に前記第2誤り訂正符号を書き込むように前記アクセス部に指示する前記書込み部を、さらに備える、
ことを特徴とする請求項19に記載のコントローラ。 - ユーザデータ記憶領域と冗長領域が含まれる記憶領域を複数有し、それぞれの記憶領域に論理アドレスそれぞれに対応するデータを記憶する記憶部と、
前記記憶部への読み書き処理を補助するアクセス部と、
論理アドレス情報と所定の応答の種別を識別する特殊データ識別情報とが含まれる特殊データ設定要求と、論理アドレス情報が含まれる読込み要求と、論理アドレス情報と書き込むべきデータとが含まれる書込み要求と、をホスト装置から受け付け、前記受け付けた特殊データ設定要求を特殊データ設定部に、前記受け付けた読込み要求を読込み部に、前記受け付けた書込み要求を書込み部に送信するホストインタフェース部と、
誤り検出符号の生成の元とするデータを要求元から受け付け、受け付けた前記データから、所定の方法に基づき、前記誤り検出符号を生成し、生成した前記誤り検出符号を前記要求元に送信する第1生成部と、
誤り検出対象データ、および前記誤り検出対象データに対応する前記誤り検出符号を要求元から受け付け、所定の方法に基づき、受け付けた前記誤り検出対象データおよび前記誤り検出符号に誤りが存在するか否かを判定して、前記判定結果を前記要求元に送信する第1判定部と、
要求元から操作対象データを受け付け、受け付けた前記操作対象データのビット列を所定の規則に基づき操作し、ビット列操作後の前記操作対象データを前記要求元に送信するビット列操作部と、
要求元から復元操作対象データを受け付け、受け付けた前記復元操作対象データのビット列の復元操作を実行し、ビット列復元操作後の前記復元操作対象データを前記要求元に送信するビット列復元部と、
前記ホストインタフェース部から前記特殊データ設定要求を受け付け、受け付けた前記特殊データ設定要求から前記特殊データ識別情報を抽出し、抽出した前記特殊データ識別情報に応じたマジックナンバーを生成し、生成した前記マジックナンバーを前記第1生成部に送信して前記マジックナンバーに対応する誤り検出符号を取得し、前記マジックナンバーと前記誤り検出符号とを前記操作対象データとして前記ビット列操作部に送信してビット列操作後の前記操作対象データを取得し、前記特殊データ設定要求から論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記ビット列操作後の操作対象データにおけるマジックナンバーを書き込むとともに前記冗長領域に前記ビット列操作後の操作対象データにおける前記誤り検出符号を書き込むように前記アクセス部に指示する前記特殊データ設定部と、
前記ホストインタフェース部から前記読込み要求を受け付け、受け付けた前記読込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報が示す論理アドレスに対応する前記記憶領域に記憶されているデータを読み出すように前記アクセス部に指示して読み出された前記データを取得し、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを前記誤り検出対象データとするとともに前記冗長領域に格納されていたデータを前記誤り検出符号として前記第1判定部に送信して第1判定部から送信された第1判定結果を取得し、取得した前記第1判定結果が誤りが検出されなかった旨の結果であった場合、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを読込み応答として前記ホストインタフェース部に送信し、前記第1判定結果が誤りが検出された旨の結果であった場合、前記読み出されたデータを前記ビット列復元部に送信して前記ビット列復元操作後のデータを取得し、取得した前記ビット列復元操作後のデータのうち前記ユーザデータ記憶領域に格納されていたデータの少なくとも一部を前記マジックナンバーとみなして前記特殊データ識別情報を判別し、判別した前記特殊データ識別情報に従って所定の応答を読込み応答として前記ホストインタフェース部に送信する前記読込み部と、
前記ホストインタフェース部から前記書込み要求を受け付け、受け付けた前記書込み要求から前記書き込むべきデータを抽出し、抽出した前記書き込むべきデータを前記第1生成部に送信して前記書き込むべきデータに対応する誤り検出符号を取得し、前記受け付けた書込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記書き込むべきデータを書き込むとともに前記冗長領域に前記誤り検出符号を書き込むように前記アクセス部に指示する前記書込み部と、
をさらに備え、
前記ホストインタフェース部はさらに、前記読込み部から前記読み出されたデータまたは読み込みの状態を示す情報である読込み状態情報を受け付け、受け付けた前記読み出されたデータまたは前記読込み状態情報を読込み応答として前記ホスト装置へ送信し、
前記所定の規則は、ビット列操作の結果として誤りが検出されるビット列の操作の規則となっていること、および、ビット列操作後のビット列を元のビット列に復元可能であるビット列の操作の規則となっていることを含む、
ことを特徴とするデータ記憶装置。 - ユーザデータ記憶領域と冗長領域が含まれる記憶領域を複数有し、それぞれの記憶領域に論理アドレスそれぞれに対応するデータを記憶する記憶部と、
前記記憶部への読み書き処理を補助するアクセス部と、
論理アドレス情報と所定の応答の種別を識別する特殊データ識別情報とが含まれる特殊データ設定要求と、論理アドレス情報が含まれる読込み要求と、論理アドレス情報と書き込むべきデータとが含まれる書込み要求と、をホスト装置から受け付け、前記受け付けた特殊データ設定要求を特殊データ設定部に、前記受け付けた読込み要求を読込み部に、前記受け付けた書込み要求を書込み部に送信するホストインタフェース部と、
誤り訂正符号の生成の元とするデータを要求元から受け付け、受け付けた前記データから、所定の方法に基づき、前記誤り訂正符号を生成し、生成した前記誤り訂正符号を前記要求元に送信する第1生成部と、
誤り訂正対象データ、および前記誤り訂正対象データに対応する前記誤り訂正符号を要求元から受け付け、所定の方法に基づき、受け付けた前記誤り訂正対象データおよび前記誤り訂正符号の誤り訂正処理が可能であるか否かを判定して、前記判定結果を前記要求元に送信する第1判定部と、
要求元から操作対象データを受け付け、受け付けた前記操作対象データのビット列を所定の規則に基づき操作し、ビット列操作後の前記操作対象データを前記要求元に送信するビット列操作部と、
要求元から復元操作対象データを受け付け、受け付けた前記復元操作対象データのビット列の復元操作を実行し、ビット列復元操作後の前記復元操作対象データを前記要求元に送信するビット列復元部と、
前記ホストインタフェース部から前記特殊データ設定要求を受け付け、受け付けた前記特殊データ設定要求から前記特殊データ識別情報を抽出し、抽出した前記特殊データ識別情報に応じたマジックナンバーを生成し、生成した前記マジックナンバーを前記第1生成部に送信して前記マジックナンバーに対応する誤り訂正符号を取得し、前記マジックナンバーと前記誤り訂正符号とを前記操作対象データとして前記ビット列操作部に送信してビット列操作後の前記操作対象データを取得し、前記特殊データ設定要求から論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記ビット列操作後の操作対象データにおけるマジックナンバーを書き込むとともに前記冗長領域に前記ビット列操作後の操作対象データにおける前記誤り訂正符号を書き込むように前記アクセス部に指示する前記特殊データ設定部と、
前記ホストインタフェース部から前記読込み要求を受け付け、受け付けた前記読込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報が示す論理アドレスに対応する前記記憶領域に記憶されているデータを読み出すように前記アクセス部に指示して読み出された前記データを取得し、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを前記誤り訂正対象データとするとともに前記冗長領域に格納されていたデータを前記誤り訂正符号として前記第1判定部に送信して第1判定部から送信された第1判定結果を取得し、取得した前記第1判定結果が誤り訂正処理が可能である旨の結果であった場合、前記読み出されたデータの誤りを訂正し、前記誤り訂正されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを読込み応答として前記ホストインタフェース部に送信し、前記第1判定結果が誤り訂正処理が不能である旨の結果であった場合、前記読み出されたデータを前記ビット列復元部に送信して前記ビット列復元操作後のデータを取得し、取得した前記ビット列復元操作後のデータのうち前記ユーザデータ記憶領域に格納されていたデータの少なくとも一部を前記マジックナンバーとみなして前記特殊データ識別情報を判別し、判別した前記特殊データ識別情報に従って所定の応答を読込み応答として前記ホストインタフェース部に送信する前記読込み部と、
前記ホストインタフェース部から前記書込み要求を受け付け、受け付けた前記書込み要求から前記書き込むべきデータを抽出し、抽出した前記書き込むべきデータを前記第1生成部に送信して前記書き込むべきデータに対応する誤り訂正符号を取得し、前記受け付けた書込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記書き込むべきデータを書き込むとともに前記冗長領域に前記誤り訂正符号を書き込むように前記アクセス部に指示する前記書込み部と、
をさらに備え、
前記ホストインタフェース部はさらに、前記読込み部から前記読み出されたデータまたは読み込みの状態を示す情報である読込み状態情報を受け付け、受け付けた前記読み出されたデータまたは前記読込み状態情報を読込み応答として前記ホスト装置へ送信し、
前記所定の規則は、ビット列操作後のビット列に対する誤り訂正が不可能になること、および、ビット列操作後のビット列を元のビット列に復元可能であることを含む、
ことを特徴とするデータ記憶装置。 - ユーザデータ記憶領域と冗長領域とが含まれる記憶領域を複数有し、それぞれの記憶領域に論理アドレスそれぞれに対応するデータを記憶する記憶部への読み書き処理を補助するアクセス部と、
論理アドレス情報と所定の応答の種別を識別する特殊データ識別情報とが含まれる特殊データ設定要求と、論理アドレス情報が含まれる読込み要求と、論理アドレス情報と書き込むべきデータとが含まれる書込み要求と、をホスト装置から受け付け、前記受け付けた特殊データ設定要求を特殊データ設定処理を実行するコンピュータに、前記受け付けた読込み要求を読込み処理を実行するコンピュータに、前記受け付けた書込み要求を書込み処理を実行するコンピュータに送信するホストインタフェース部と、
誤り検出符号の生成の元とするデータを要求元から受け付け、受け付けた前記データから、所定の方法に基づき、前記誤り検出符号を生成し、生成した前記誤り検出符号を前記要求元に送信する第1生成部と、
誤り検出対象データ、および前記誤り検出対象データに対応する前記誤り検出符号を要求元から受け付け、所定の方法に基づき、受け付けた前記誤り検出対象データおよび前記誤り検出符号に誤りが存在するか否かを判定して、前記判定結果を前記要求元に送信する第1判定部と、
を制御するコンピュータを機能させるためのプログラムであって、
要求元から操作対象データを受け付け、受け付けた前記操作対象データのビット列を所定の規則に基づき操作し、ビット列操作後の前記操作対象データを前記要求元に送信するビット列操作処理と、
要求元から復元操作対象データを受け付け、受け付けた前記復元操作対象データのビット列の復元操作を実行し、ビット列復元操作後の前記復元操作対象データを前記要求元に送信するビット列復元処理と、
前記ホストインタフェース部から前記特殊データ設定要求を受け付け、受け付けた前記特殊データ設定要求から前記特殊データ識別情報を抽出し、抽出した前記特殊データ識別情報に応じたマジックナンバーを生成し、生成した前記マジックナンバーを前記第1生成部に送信して前記マジックナンバーに対応する誤り検出符号を取得し、前記マジックナンバーと前記誤り検出符号とを前記操作対象データとして前記ビット列操作処理に入力してビット列操作後の前記操作対象データを取得し、前記特殊データ設定要求から論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記ビット列操作後の操作対象データにおけるマジックナンバーを書き込むとともに前記冗長領域に前記ビット列操作後の操作対象データにおける前記誤り検出符号を書き込むように前記アクセス部に指示する前記特殊データ設定処理と、
前記ホストインタフェース部から前記読込み要求を受け付け、受け付けた前記読込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報が示す論理アドレスに対応する前記記憶領域に記憶されているデータを読み出すように前記アクセス部に指示して読み出された前記データを取得し、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを前記誤り検出対象データとするとともに前記冗長領域に格納されていたデータを前記誤り検出符号として前記第1判定部に送信して前記第1判定部から送信された第1判定結果を取得し、取得した前記第1判定結果が誤りが検出されなかった旨の結果であった場合、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを読込み応答として前記ホストインタフェース部に送信し、前記第1判定結果が誤りが検出された旨の結果であった場合、前記読み出されたデータを前記ビット列復元処理に入力して前記ビット列復元操作後のデータを取得し、取得した前記ビット列復元操作後のデータのうち前記ユーザデータ記憶領域に格納されていたデータの少なくとも一部を前記マジックナンバーとみなして前記特殊データ識別情報を判別し、判別した前記特殊データ識別情報に従って所定の応答を読込み応答として前記ホストインタフェース部に送信する前記読込み処理と、
前記ホストインタフェース部から前記書込み要求を受け付け、受け付けた前記書込み要求から前記書き込むべきデータを抽出し、抽出した前記書き込むべきデータを前記第1生成部に送信して前記書き込むべきデータに対応する誤り検出符号を取得し、前記受け付けた書込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記書き込むべきデータを書き込むとともに前記冗長領域に前記誤り検出符号を書き込むように前記アクセス部に指示する前記書込み処理と、
を前記コンピュータに実行させ、
前記ホストインタフェース部はさらに、前記読込み処理で送信された前記読み出されたデータまたは読み込みの状態を示す情報である読込み状態情報を受け付け、受け付けた前記読み出されたデータまたは前記読込み状態情報を読込み応答として前記ホスト装置へ送信し、
前記所定の規則は、ビット列操作の結果として誤りが検出されるビット列の操作の規則となっていること、および、ビット列操作後のビット列を元のビット列に復元可能であるビット列の操作の規則となっていることを含む、
ことを特徴とするプログラム。 - ユーザデータ記憶領域と冗長領域とが含まれる記憶領域を複数有し、それぞれの記憶領域に論理アドレスそれぞれに対応するデータを記憶する記憶部への読み書き処理を補助するアクセス部と、
論理アドレス情報と所定の応答の種別を識別する特殊データ識別情報とが含まれる特殊データ設定要求と、論理アドレス情報が含まれる読込み要求と、論理アドレス情報と書き込むべきデータとが含まれる書込み要求と、をホスト装置から受け付け、前記受け付けた特殊データ設定要求を特殊データ設定処理を実行するコンピュータに、前記受け付けた読込み要求を読込み処理を実行するコンピュータに、前記受け付けた書込み要求を書込み処理を実行するコンピュータに送信するホストインタフェース部と、
誤り訂正符号の生成の元とするデータを要求元から受け付け、受け付けた前記データから、所定の方法に基づき、前記誤り訂正符号を生成し、生成した前記誤り訂正符号を前記要求元に送信する第1生成部と、
誤り訂正対象データ、および前記誤り訂正対象データに対応する前記誤り訂正符号を要求元から受け付け、所定の方法に基づき、受け付けた前記誤り訂正対象データおよび前記誤り訂正符号の誤り訂正処理が可能であるか否かを判定して、前記判定結果を前記要求元に送信する第1判定部と、
を制御するコンピュータを機能させるためのプログラムであって、
要求元から操作対象データを受け付け、受け付けた前記操作対象データのビット列を所定の規則に基づき操作し、ビット列操作後の前記操作対象データを前記要求元に送信するビット列操作処理と、
要求元から復元操作対象データを受け付け、受け付けた前記復元操作対象データのビット列の復元操作を実行し、ビット列復元操作後の前記復元操作対象データを前記要求元に送信するビット列復元処理と、
前記ホストインタフェース部から前記特殊データ設定要求を受け付け、受け付けた前記特殊データ設定要求から前記特殊データ識別情報を抽出し、抽出した前記特殊データ識別情報に応じたマジックナンバーを生成し、生成した前記マジックナンバーを前記第1生成部に送信して前記マジックナンバーに対応する誤り訂正符号を取得し、前記マジックナンバーと前記誤り訂正符号とを前記操作対象データとして前記ビット列操作処理に入力してビット列操作後の前記操作対象データを取得し、前記特殊データ設定要求から論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記ビット列操作後の操作対象データにおけるマジックナンバーを書き込むとともに前記冗長領域に前記ビット列操作後の操作対象データにおける前記誤り訂正符号を書き込むように前記アクセス部に指示する前記特殊データ設定処理と、
前記ホストインタフェース部から前記読込み要求を受け付け、受け付けた前記読込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報が示す論理アドレスに対応する前記記憶領域に記憶されているデータを読み出すように前記アクセス部に指示して読み出された前記データを取得し、前記読み出されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを前記誤り訂正対象データとするとともに前記冗長領域に格納されていたデータを前記誤り訂正符号として前記第1判定部に送信して前記第1判定部から送信された第1判定結果を取得し、取得した前記第1判定結果が誤り訂正処理が可能である旨の結果であった場合、前記読み出されたデータの誤りを訂正し、前記誤り訂正されたデータのうち前記ユーザデータ記憶領域に格納されていたデータを読込み応答として前記ホストインタフェース部に送信し、前記第1判定結果が誤り訂正処理が不能である旨の結果であった場合、前記読み出されたデータを前記ビット列復元処理に入力して前記ビット列復元操作後のデータを取得し、取得した前記ビット列復元操作後のデータのうち前記ユーザデータ記憶領域に格納されていたデータの少なくとも一部を前記マジックナンバーとみなして前記特殊データ識別情報を判別し、判別した前記特殊データ識別情報に従って所定の応答を読込み応答として前記ホストインタフェース部に送信する前記読込み処理と、
前記ホストインタフェース部から前記書込み要求を受け付け、受け付けた前記書込み要求から前記書き込むべきデータを抽出し、抽出した前記書き込むべきデータを前記第1生成部に送信して前記書き込むべきデータに対応する誤り訂正符号を取得し、前記受け付けた書込み要求から前記論理アドレス情報を抽出し、抽出した前記論理アドレス情報に対応する前記記憶領域のうち前記ユーザデータ記憶領域に前記書き込むべきデータを書き込むとともに前記冗長領域に前記誤り訂正符号を書き込むように前記アクセス部に指示する前記書込み処理と、
を前記コンピュータに実行させ、
前記ホストインタフェース部はさらに、前記読込み処理で送信された前記読み出されたデータまたは読み込みの状態を示す情報である読込み状態情報を受け付け、受け付けた前記読み出されたデータまたは前記読込み状態情報を読込み応答として前記ホスト装置へ送信し、
前記所定の規則は、ビット列操作後のビット列に対する誤り訂正が不可能になること、および、ビット列操作後のビット列を元のビット列に復元可能であることを含む、
ことを特徴とするプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011044425A JP5269932B2 (ja) | 2011-03-01 | 2011-03-01 | コントローラ、データ記憶装置およびプログラム |
US13/218,812 US8533560B2 (en) | 2011-03-01 | 2011-08-26 | Controller, data storage device and program product |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011044425A JP5269932B2 (ja) | 2011-03-01 | 2011-03-01 | コントローラ、データ記憶装置およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012181700A JP2012181700A (ja) | 2012-09-20 |
JP5269932B2 true JP5269932B2 (ja) | 2013-08-21 |
Family
ID=46754077
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011044425A Expired - Fee Related JP5269932B2 (ja) | 2011-03-01 | 2011-03-01 | コントローラ、データ記憶装置およびプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8533560B2 (ja) |
JP (1) | JP5269932B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5017407B2 (ja) | 2010-03-24 | 2012-09-05 | 株式会社東芝 | 半導体記憶装置 |
US8707107B1 (en) * | 2011-12-09 | 2014-04-22 | Symantec Corporation | Systems and methods for proactively facilitating restoration of potential data failures |
US9158678B2 (en) * | 2013-03-13 | 2015-10-13 | Kabushiki Kaisha Toshiba | Memory address management system and method |
KR102350644B1 (ko) * | 2018-01-26 | 2022-01-14 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 이를 포함하는 메모리 시스템 |
JP6807113B2 (ja) * | 2019-06-07 | 2021-01-06 | ソナス株式会社 | 通信システム、通信方法及び通信装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60116030A (ja) * | 1983-11-28 | 1985-06-22 | Shimadzu Corp | フロッピディスクコピ−防止回路 |
JPH0752398B2 (ja) * | 1987-12-14 | 1995-06-05 | 株式会社日立製作所 | チェック回路の診断装置 |
JPH052830A (ja) | 1991-06-27 | 1993-01-08 | Hitachi Ltd | 記録再生装置および記録再生装置における記録再生方法 |
JP2003006981A (ja) * | 2001-06-15 | 2003-01-10 | Ricoh Co Ltd | 情報記録再生装置 |
JP4564520B2 (ja) | 2007-08-31 | 2010-10-20 | 株式会社東芝 | 半導体記憶装置およびその制御方法 |
JP4538034B2 (ja) | 2007-09-26 | 2010-09-08 | 株式会社東芝 | 半導体記憶装置、及びその制御方法 |
JP5268710B2 (ja) | 2009-02-27 | 2013-08-21 | 株式会社東芝 | 半導体記憶装置 |
JP5377182B2 (ja) | 2009-09-10 | 2013-12-25 | 株式会社東芝 | 制御装置 |
JP5066199B2 (ja) | 2010-02-12 | 2012-11-07 | 株式会社東芝 | 半導体記憶装置 |
US8397101B2 (en) * | 2010-06-03 | 2013-03-12 | Seagate Technology Llc | Ensuring a most recent version of data is recovered from a memory |
-
2011
- 2011-03-01 JP JP2011044425A patent/JP5269932B2/ja not_active Expired - Fee Related
- 2011-08-26 US US13/218,812 patent/US8533560B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2012181700A (ja) | 2012-09-20 |
US8533560B2 (en) | 2013-09-10 |
US20120226957A1 (en) | 2012-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4958739B2 (ja) | 障害の発生した記憶装置に記憶されているデータを修復するストレージシステム | |
JP5269932B2 (ja) | コントローラ、データ記憶装置およびプログラム | |
JP5076488B2 (ja) | 情報処理装置、履歴管理方法、履歴管理プログラム | |
US20050229033A1 (en) | Disk array controller and information processing apparatus | |
TWI582581B (zh) | 用來於一冗餘儲存系統中進行資料修復之方法與裝置 | |
JP2011165063A (ja) | 半導体記憶装置 | |
JP2011180831A (ja) | 半導体記憶装置 | |
JP4324088B2 (ja) | データ複製制御装置 | |
JP5950286B2 (ja) | アドレス変換テーブルを書き込む装置及び方法 | |
JP2006139478A (ja) | ディスクアレイシステム | |
JP2008077783A (ja) | 記憶データ処理装置、記憶装置、記憶データ処理プログラム | |
US20100293418A1 (en) | Memory device, data transfer control device, data transfer method, and computer program product | |
US10176035B2 (en) | System, information processing device, and non-transitory medium for storing program for migration of virtual machine | |
JP2011008663A (ja) | ストレージ制御装置及びストレージ装置のデータ回復方法 | |
JP6600815B2 (ja) | 記録装置、および情報処理装置 | |
JP5760585B2 (ja) | ストレージシステムおよび異常発生箇所判定方法 | |
JP2008158724A (ja) | ディスクアレイ装置のステージング方法 | |
JP6556980B2 (ja) | ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラム | |
US10592349B2 (en) | Storage control device and storage apparatus | |
JP6206138B2 (ja) | ストレージ制御装置およびストレージ制御装置の制御プログラム | |
JP7135403B2 (ja) | ダンプ処理装置及び画像形成装置 | |
JP4860403B2 (ja) | マルチプロセッサシステム及びメモリコントロール/コヒーレンシ制御装置並びにコヒーレンシ保証方法 | |
JP4848533B2 (ja) | ディスクアレイ装置、ディスクアレイ制御方法およびプログラム | |
JP6318769B2 (ja) | ストレージ制御装置、制御プログラム、および制御方法 | |
JP5673178B2 (ja) | ストレージ装置及びストレージ装置制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130122 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130325 |
|
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: 20130416 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130508 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5269932 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |