データおよびそのデータの第1のエラー訂正コードを単位データとして複数の単位データを記憶部に記憶し、前記複数の単位データにおける所定の複数の単位データに対応してその第2のエラー訂正コードを前記記憶部に記憶する場合において、前記所定の複数の単位データと当該所定の複数の単位データに対応する前記第2のエラー訂正コードとの対応関係をエントリ毎に管理するエラー訂正コード管理部と、論理アドレスと前記エラー訂正コード管理部におけるエントリとの対応関係を管理するアドレス管理部と、リード対象の論理アドレスに対応する前記エラー訂正コード管理部におけるエントリを前記アドレス管理部から取得して当該エントリにおいて管理される前記所定の複数の単位データおよび前記第2のエラー訂正コードに基づいてエラー訂正を行うエラー訂正部とを具備する記憶制御装置。前記所定の複数の単位データは前記記憶部において非連続な物理アドレスに記憶される請求項1記載の記憶制御装置。前記アドレス管理部は、それぞれの論理アドレスに対応する前記第2のエラー訂正コードが記憶されているか否かを示すエラー訂正コードフラグを管理し、前記エラー訂正部は、前記エラー訂正コードフラグが前記第2のエラー訂正コードが記憶されている旨を示す場合のみ前記エラー訂正を行う請求項1記載の記憶制御装置。前記エラー訂正コード管理部は、前記所定の複数の単位データの結合順序を規定し、前記エラー訂正部は、前記結合順序に従って前記所定の複数の単位データを結合して前記エラー訂正を行う請求項1記載の記憶制御装置。前記エラー訂正コード管理部は、前記所定の複数の単位データに対応する前記第2のエラー訂正コードの前記記憶部における物理アドレスを保持し、前記エラー訂正部は、前記第2のエラー訂正コードの前記物理アドレスに従って前記記憶部から前記第2のエラー訂正コードを取得する請求項1記載の記憶制御装置。前記エラー訂正コード管理部は、前記所定の複数の単位データに対応する前記第2のエラー訂正コードの前記記憶部における物理アドレス内オフセットをさらに保持し、前記エラー訂正部は、前記第2のエラー訂正コードの前記物理アドレスおよび前記物理アドレス内オフセットに従って前記記憶部から前記第2のエラー訂正コードを取得する請求項5記載の記憶制御装置。データ保持特性強化コマンドを受け取ると当該データ保持特性強化コマンドにおいて指定された論理アドレスの範囲に記憶されているデータについて前記第2のエラー訂正コードを生成するエラー訂正コード生成部と、前記データ保持特性強化コマンドを受け取ると前記指定された論理アドレスの範囲に記憶されているデータについて対応する前記第2のエラー訂正コードとの対応関係を保持するエントリを前記エラー訂正コード管理部に新たに確保し、その新たに確保されたエントリと前記指定された論理アドレスとの対応関係を前記アドレス管理部に登録するエントリ管理部とをさらに具備する請求項1記載の記憶制御装置。前記エントリ管理部は、データ保持特性強化解除コマンドを受け取ると当該データ保持特性強化解除コマンドにおいて指定された論理アドレスの範囲に記憶されているデータについて対応する前記第2のエラー訂正コードとの対応関係を保持するエントリを前記エラー訂正コード管理部において解放し、その解放されたエントリと前記指定された論理アドレスとの対応関係を前記アドレス管理部において削除する請求項7記載の記憶制御装置。前記エラー訂正コード管理部は、エントリ毎に前記第2のエラー訂正コードに対応する単位データの数を保持し、前記エントリ管理部は、エントリを新たに確保する際には前記単位データの数がゼロを示すエントリを対象とする請求項7記載の記憶制御装置。前記エラー訂正コード管理部は、エントリ毎に前記第2のエラー訂正コードに対応する単位データの数を保持し、前記エントリ管理部は、エントリを新たに確保する際には前記単位データの数が所定数に満たないエントリを対象とする請求項7記載の記憶制御装置。前記アドレス管理部は、それぞれの論理アドレスについて最後にアクセスされた時刻を最終アクセス時刻として保持し、前記最終アクセス時刻から所定期間経過するとその論理アドレスに記憶されているデータについて前記第2のエラー訂正コードを生成するエラー訂正コード生成部と、前記最終アクセス時刻から所定期間経過するとその論理アドレスに記憶されているデータについて対応する前記第2のエラー訂正コードとの対応関係を保持するエントリを前記エラー訂正コード管理部に新たに確保し、その新たに確保されたエントリと前記指定された論理アドレスとの対応関係を前記アドレス管理部に登録するエントリ管理部とをさらに具備する請求項1記載の記憶制御装置。前記エントリ管理部は、前記最終アクセス時刻から所定期間経過するまでの間に前記第2のエラー訂正コードが記憶されている場合には、その論理アドレスに記憶されているデータについて対応する前記第2のエラー訂正コードとの対応関係を保持するエントリを前記エラー訂正コード管理部において解放し、その解放されたエントリと前記指定された論理アドレスとの対応関係を前記アドレス管理部において削除する請求項11記載の記憶制御装置。データおよびそのデータの第1のエラー訂正コードを単位データとして複数の単位データを記憶する単位データ記憶部と、前記複数の単位データにおける所定の複数の単位データに対応してその第2のエラー訂正コードを記憶するエラー訂正コード記憶部と、前記所定の複数の単位データと当該所定の複数の単位データに対応する前記第2のエラー訂正コードとの対応関係をエントリ毎に管理するエラー訂正コード管理部と、論理アドレスと前記エラー訂正コード管理部におけるエントリとの対応関係を管理するアドレス管理部と、リード対象の論理アドレスに対応する前記エラー訂正コード管理部におけるエントリを前記アドレス管理部から取得して当該エントリにおいて管理される前記所定の複数の単位データおよび前記第2のエラー訂正コードに基づいてエラー訂正を行うエラー訂正部とを具備する記憶装置。前記単位データ記憶部および前記エラー訂正コード記憶部は不揮発性メモリである請求項13記載の記憶装置。データおよびそのデータの第1のエラー訂正コードを単位データとして複数の単位データを記憶する単位データ記憶部と、前記複数の単位データにおける所定の複数の単位データに対応してその第2のエラー訂正コードを記憶するエラー訂正コード記憶部と、前記所定の複数の単位データと当該所定の複数の単位データに対応する前記第2のエラー訂正コードとの対応関係をエントリ毎に管理するエラー訂正コード管理部と、論理アドレスと前記エラー訂正コード管理部におけるエントリとの対応関係を管理するアドレス管理部と、リード対象の論理アドレスに対応する前記エラー訂正コード管理部におけるエントリを前記アドレス管理部から取得して当該エントリにおいて管理される前記所定の複数の単位データおよび前記第2のエラー訂正コードに基づいてエラー訂正を行うエラー訂正部と、前記単位データ記憶部に対するアクセスを要求するリクエストを発行するホストコンピュータとを具備する情報処理システム。データおよびそのデータの第1のエラー訂正コードを単位データとして複数の単位データを記憶する単位データ記憶部と、前記複数の単位データにおける所定の複数の単位データに対応してその第2のエラー訂正コードを記憶するエラー訂正コード記憶部と、前記所定の複数の単位データと当該所定の複数の単位データに対応する前記第2のエラー訂正コードとの対応関係をエントリ毎に管理するエラー訂正コード管理部と、論理アドレスと前記エラー訂正コード管理部におけるエントリとの対応関係を管理するアドレス管理部とを備える記憶装置における記憶制御方法であって、リード対象の論理アドレスに対応する前記エラー訂正コード管理部におけるエントリを前記アドレス管理部から取得するエントリ取得手順と、前記取得されたエントリにおいて管理される前記所定の複数の単位データおよび前記第2のエラー訂正コードに基づいてエラー訂正を行うエラー訂正手順とを具備する記憶制御方法。上述の従来技術では、ECCは物理アドレスが連続したデータに対して生成される。しかし、ホストコンピュータが論理アドレスによって保持特性を強化しようとするデータを指定する場合、それに対応する物理アドレス空間上で連続した不揮発性メモリの領域に記録されているとは限らない。そのため、保持特性を強化しようとするデータを物理アドレス空間の連続した領域に対してコピーした上で、保持特性の強化コマンドを実行する必要が生じる。すなわち、コピーによるオーバーヘッドによりメモリシステムとしてのパフォーマンスは低下するおそれがある。本技術はこのような状況に鑑みて生み出されたものであり、物理アドレス空間上での配置を意識することなくデータの保持特性を強化することを目的とする。本技術は、上述の問題点を解消するためになされたものであり、その第1の側面は、データおよびそのデータの第1のエラー訂正コードを単位データとして複数の単位データを記憶部に記憶し、上記複数の単位データにおける所定の複数の単位データに対応してその第2のエラー訂正コードを上記記憶部に記憶する場合において、上記所定の複数の単位データと当該所定の複数の単位データに対応する上記第2のエラー訂正コードとの対応関係をエントリ毎に管理するエラー訂正コード管理部と、論理アドレスと上記エラー訂正コード管理部におけるエントリとの対応関係を管理するアドレス管理部と、リード対象の論理アドレスに対応する上記エラー訂正コード管理部におけるエントリを上記アドレス管理部から取得して当該エントリにおいて管理される上記所定の複数の単位データおよび上記第2のエラー訂正コードに基づいてエラー訂正を行うエラー訂正部とを具備する記憶制御装置またはその記憶制御方法である。これにより、物理アドレス空間上の任意の複数の単位データに対応する第2のエラー訂正コードによってエラー訂正を行うという作用をもたらす。また、この第1の側面において、上記所定の複数の単位データは上記記憶部において非連続な物理アドレスに記憶されるように構成してもよい。これにより、非連続な物理アドレスに記憶される複数の単位データに対応する第2のエラー訂正コードによってエラー訂正を行うという作用をもたらす。また、この第1の側面において、上記アドレス管理部は、それぞれの論理アドレスに対応する上記第2のエラー訂正コードが記憶されているか否かを示すエラー訂正コードフラグを管理し、上記エラー訂正部は、上記エラー訂正コードフラグが上記第2のエラー訂正コードが記憶されている旨を示す場合のみ上記エラー訂正を行うようにしてもよい。これにより、エラー訂正コードフラグを参照することによって無駄なエラー訂正処理をスキップさせるという作用をもたらす。また、この第1の側面において、上記エラー訂正コード管理部は、上記所定の複数の単位データの結合順序を規定し、上記エラー訂正部は、上記結合順序に従って上記所定の複数の単位データを結合して上記エラー訂正を行うようにしてもよい。これにより、物理アドレス空間上の任意の複数の単位データを任意の順序で結合したデータに対応する第2のエラー訂正コードによってエラー訂正を行うという作用をもたらす。また、この第1の側面において、上記エラー訂正コード管理部は、上記所定の複数の単位データに対応する上記第2のエラー訂正コードの上記記憶部における物理アドレスを保持し、上記エラー訂正部は、上記第2のエラー訂正コードの上記物理アドレスに従って上記記憶部から上記第2のエラー訂正コードを取得するようにしてもよい。これにより、物理アドレス空間上の任意の複数の単位データの物理アドレスに従って、対応する第2のエラー訂正コードによってエラー訂正を行うという作用をもたらす。また、この第1の側面において、上記エラー訂正コード管理部は、上記所定の複数の単位データに対応する上記第2のエラー訂正コードの上記記憶部における物理アドレス内オフセットをさらに保持し、上記エラー訂正部は、上記第2のエラー訂正コードの上記物理アドレスおよび上記物理アドレス内オフセットに従って上記記憶部から上記第2のエラー訂正コードを取得するようにしてもよい。これにより、同一物理アドレスに記憶された複数の第2ECCから選択してエラー訂正を行うという作用をもたらす。また、この第1の側面において、データ保持特性強化コマンドを受け取ると当該データ保持特性強化コマンドにおいて指定された論理アドレスの範囲に記憶されているデータについて上記第2のエラー訂正コードを生成するエラー訂正コード生成部と、上記データ保持特性強化コマンドを受け取ると上記指定された論理アドレスの範囲に記憶されているデータについて対応する上記第2のエラー訂正コードとの対応関係を保持するエントリを上記エラー訂正コード管理部に新たに確保し、その新たに確保されたエントリと上記指定された論理アドレスとの対応関係を上記アドレス管理部に登録するエントリ管理部とをさらに具備してもよい。これにより、データ保持特性強化コマンドを契機としてデータ保持特性強化処理を実行するという作用をもたらす。また、この第1の側面において、上記エントリ管理部は、データ保持特性強化解除コマンドを受け取ると当該データ保持特性強化解除コマンドにおいて指定された論理アドレスの範囲に記憶されているデータについて対応する上記第2のエラー訂正コードとの対応関係を保持するエントリを上記エラー訂正コード管理部において解放し、その解放されたエントリと上記指定された論理アドレスとの対応関係を上記アドレス管理部において削除するようにしてもよい。データ保持特性強化解除コマンドを契機としてデータ保持特性強化解除処理を実行するという作用をもたらす。また、この第1の側面において、上記エラー訂正コード管理部は、エントリ毎に上記第2のエラー訂正コードに対応する単位データの数を保持し、上記エントリ管理部は、エントリを新たに確保する際には上記単位データの数がゼロを示すエントリを対象とするようにしてもよい。これにより、新たにデータ保持特性を強化する際にエラー訂正コード管理部における空きエントリを利用するという作用をもたらす。また、この第1の側面において、上記エラー訂正コード管理部は、エントリ毎に上記第2のエラー訂正コードに対応する単位データの数を保持し、上記エントリ管理部は、エントリを新たに確保する際には上記単位データの数が所定数に満たないエントリを対象とするようにしてもよい。これにより、新たにデータ保持特性を強化する際にエラー訂正コード管理部において対象データの物理アドレスに1つ以上の空きがあるエントリを利用するという作用をもたらす。また、この第1の側面において、上記アドレス管理部は、それぞれの論理アドレスについて最後にアクセスされた時刻を最終アクセス時刻として保持し、上記最終アクセス時刻から所定期間経過するとその論理アドレスに記憶されているデータについて上記第2のエラー訂正コードを生成するエラー訂正コード生成部と、上記最終アクセス時刻から所定期間経過するとその論理アドレスに記憶されているデータについて対応する上記第2のエラー訂正コードとの対応関係を保持するエントリを上記エラー訂正コード管理部に新たに確保し、その新たに確保されたエントリと上記指定された論理アドレスとの対応関係を上記アドレス管理部に登録するエントリ管理部とをさらに具備してもよい。これにより、長い間書き換えられていないデータについては消失するおそれがあるため、データ保持特性強化を施すという作用をもたらす。この場合において、上記エントリ管理部は、上記最終アクセス時刻から所定期間経過するまでの間に上記第2のエラー訂正コードが記憶されている場合には、その論理アドレスに記憶されているデータについて対応する上記第2のエラー訂正コードとの対応関係を保持するエントリを上記エラー訂正コード管理部において解放し、その解放されたエントリと上記指定された論理アドレスとの対応関係を上記アドレス管理部において削除するようにしてもよい。これにより、アクセス頻度が高いデータについては消失するおそれが低いため、データ保持特性強化を解除するという作用をもたらす。また、本技術の第2の側面は、データおよびそのデータの第1のエラー訂正コードを単位データとして複数の単位データを記憶する単位データ記憶部と、上記複数の単位データにおける所定の複数の単位データに対応してその第2のエラー訂正コードを記憶するエラー訂正コード記憶部と、上記所定の複数の単位データと当該所定の複数の単位データに対応する上記第2のエラー訂正コードとの対応関係をエントリ毎に管理するエラー訂正コード管理部と、論理アドレスと上記エラー訂正コード管理部におけるエントリとの対応関係を管理するアドレス管理部と、リード対象の論理アドレスに対応する上記エラー訂正コード管理部におけるエントリを上記アドレス管理部から取得して当該エントリにおいて管理される上記所定の複数の単位データおよび上記第2のエラー訂正コードに基づいてエラー訂正を行うエラー訂正部とを具備する記憶装置である。これにより、物理アドレス空間上の任意の複数の単位データに対応する第2のエラー訂正コードによってエラー訂正を記憶装置において行うという作用をもたらす。また、この第2の側面において、上記単位データ記憶部および上記エラー訂正コード記憶部は不揮発性メモリであってもよい。また、本技術の第3の側面は、データおよびそのデータの第1のエラー訂正コードを単位データとして複数の単位データを記憶する単位データ記憶部と、上記複数の単位データにおける所定の複数の単位データに対応してその第2のエラー訂正コードを記憶するエラー訂正コード記憶部と、上記所定の複数の単位データと当該所定の複数の単位データに対応する上記第2のエラー訂正コードとの対応関係をエントリ毎に管理するエラー訂正コード管理部と、論理アドレスと上記エラー訂正コード管理部におけるエントリとの対応関係を管理するアドレス管理部と、リード対象の論理アドレスに対応する上記エラー訂正コード管理部におけるエントリを上記アドレス管理部から取得して当該エントリにおいて管理される上記所定の複数の単位データおよび上記第2のエラー訂正コードに基づいてエラー訂正を行うエラー訂正部と、上記単位データ記憶部に対するアクセスを要求するリクエストを発行するホストコンピュータとを具備する情報処理システムである。これにより、物理アドレス空間上の任意の複数の単位データに対応する第2のエラー訂正コードによってエラー訂正を情報処理システムにおいて行うという作用をもたらす。本技術によれば、物理アドレス空間上での配置を意識することなくデータの保持特性を強化することができるという優れた効果を奏し得る。以下、本技術を実施するための形態以下、実施の形態と称するについて説明する。説明は以下の順序により行う。1.第1の実施の形態2.変形例<1.第1の実施の形態>[情報処理システムの構成]図1は、本技術の実施の形態における情報処理システムの一構成例を示す図である。この情報処理システムは、ホストコンピュータ100とメモリシステム400とを備える。ホストコンピュータ100は、メモリシステム400に対して、リードまたはライトなどのリクエストコマンドを発行して、それに対する応答レスポンスを受け取る。メモリシステム400は、ホストコンピュータ100からリードコマンドを受信することによりデータの読出しを行う。また、メモリシステム400は、ホストコンピュータ100からライトコマンドを受信することによりデータの書込みを行う。また、メモリシステム400は、データ保持特性強化コマンドを受信することによりデータの保持特性を強化するためのエラー訂正コードECC:ErrorCorrectingCodeを付与する。リードコマンドでは、リード対象データの先頭論理アドレスとデータサイズとがパラメータとしてホストコンピュータ100により指定される。ライトコマンドでは、ライト対象の先頭論理アドレスとデータサイズとがパラメータとしてホストコンピュータ100により指定されるとともに、ライト対象データが送信される。データ保持特性強化コマンドでは、データ保持特性強化対象の論理アドレスの先頭アドレスとデータサイズとがパラメータとしてホストコンピュータ100により指定される。メモリシステム400は、不揮発性メモリ300と、メモリコントローラ200とを備える。不揮発性メモリ300は、メモリコントローラ200と接続するための外部インターフェース302と、不揮発性記憶領域303とを備えている。不揮発性記憶領域303は、データ記憶領域310と、第1ECC記憶領域320と、第2ECC記憶領域330と、テーブル記憶領域340とを備えている。それぞれの領域に記憶される内容については後述する。メモリコントローラ200は、不揮発性メモリ300を制御するためのコントローラである。このメモリコントローラ200は、第1ECC生成部210と、第2ECC生成部220と、テーブル管理部230と、データライト処理部240とを備えている。また、このメモリコントローラ200は、データリード処理部250と、第1ECC訂正部260と、第2ECC訂正部270と、ECC切替処理部280とを備えている。また、このメモリコントローラ200は、ホストコンピュータ100と接続するためのホストインターフェース201と、不揮発性メモリ300と接続するためのメモリインターフェース203とを備えている。第1ECC生成部210は、ホストコンピュータ100からライトコマンドにより受信したデータに対して付加するエラー訂正コード第1ECCを生成するものである。第2ECC生成部220は、データの保持特性を強化するためのエラー訂正コード第2ECCを生成するものである。テーブル管理部230は、後述するアドレス変換テーブルや第2ECC管理テーブルなどを管理するためのものである。データライト処理部240は、不揮発性メモリ300に対してデータのライト処理を行うものである。データリード処理部250は、不揮発性メモリ300からデータのリード処理を行うものである。第1ECC訂正部260は、第1ECCを用いてデータの誤り検出および訂正を行うものである。第2ECC訂正部270は、第2ECCを用いてデータの誤り検出および訂正を行うものである。ECC切替処理部280は、第1ECCでは誤り訂正ができなかった場合に、第2ECCを用いたデータの誤り検出および訂正を行うための切替処理を行うものである。なお、第2ECC訂正部270は、特許請求の範囲に記載のエラー訂正部の一例である。また、第2ECC生成部220は、特許請求の範囲に記載のエラー訂正コード生成部の一例である。また、テーブル管理部230は、特許請求の範囲に記載のエントリ管理部の一例である。また、データ記憶領域310および第1ECC記憶領域320は、特許請求の範囲に記載の単位データ記憶部の一例である。また、第2ECC記憶領域330は、特許請求の範囲に記載のエラー訂正コード記憶部の一例である。[不揮発性記憶領域303の記憶形式]図2は、本技術の実施の形態における不揮発性記憶領域303の記憶内容の一例を示す図である。不揮発性記憶領域303は、例えば34バイトを単位データとしてデータのリードおよびライトが可能であり、34バイト毎に物理アドレスが割り当てられているものとする。34バイトの単位データは、例えば32バイトのデータと、そのデータの2バイトのエラー訂正コード第1ECCとからなる。すなわち、データ記憶領域310における32バイトのデータに対して、2バイトの第1ECCが付与されて第1ECC記憶領域320に記憶される。なお、一般的には、不揮発性記憶領域303の単位データ幅をNバイト、データサイズをAバイト、付与される第1ECCのサイズをBバイトとすると、次式が成り立つ。AB≦Nさらに、例えば4つの単位データに対して34バイトの別のエラー訂正コード第2ECCを付与することを想定する。この第2ECCは第2ECC記憶領域330に記憶される。この第2ECCの付与対象となる単位データは、物理アドレス空間上で非連続な物理アドレスに記憶されていてもよい。なお、一般的には、付与される第2ECCのサイズをCバイトとすると、次式が成り立つ。C≦Nこれら単位データおよび第2ECCの不揮発性記憶領域303上の記憶アドレスは、以下に説明する各テーブルにより管理される。なお、この例では、不揮発性メモリとして、特に、小さな単位での高速なランダムアクセスが可能な不揮発性ランダムアクセスメモリNVRAM:NonVolatileRAMに適用するのが好適である。不揮発性ランダムアクセスメモリの例としては、PCRAMPhaseChangeRAM、MRAMMagnetoresistiveRAM、ReRAMResistanceRAMなどが挙げられる。また、フラッシュメモリに適用することも可能である。図3は、本技術の実施の形態における不揮発性記憶領域303の管理態様の一例を示す図である。単位データおよび第2ECCの不揮発性記憶領域303上の記憶アドレスは、アドレス変換テーブル341および第2ECC管理テーブル342によって管理される。アドレス変換テーブル341は、論理アドレスと物理アドレスの対応関係を管理するためのテーブルである。この例では、論理アドレスに対応する第2ECC管理テーブル342のインデックスを保持している。なお、アドレス変換テーブル341は、特許請求の範囲に記載のアドレス管理部の一例である。第2ECC管理テーブル342は、第2ECCを管理するテーブルである。この例では、第2ECCの物理アドレスと、その第2ECCに対応する単位データの物理アドレスとをエントリ毎に保持しており、各エントリにはインデックス第2ECCインデックスが付与されている。なお、第2ECC管理テーブル342は、特許請求の範囲に記載のエラー訂正コード管理部の一例である。これらアドレス変換テーブル341および第2ECC管理テーブル342は、テーブル記憶領域340に記憶される。[アドレス変換テーブルの構成]図4は、本技術の実施の形態におけるアドレス変換テーブル341の一構成例を示す図である。このアドレス変換テーブル341は、論理アドレスと、物理アドレスと、データフラグと、第2ECCフラグと、第2ECCインデックスとを関連付けて保持している。論理アドレスは、ホストコンピュータ100において指定される不揮発性記憶領域303のアドレスである。物理アドレスは、不揮発性記憶領域303における物理アドレスである。なお、ここでは、論理アドレスおよび物理アドレスを0xで始まる16進数の記述方法によって示している。データフラグは、対応する物理アドレスにデータおよび第1ECCが記憶されているか否を示すフラグである。データフラグがTrueであればデータおよび第1ECCが書き込まれていることを示し、Falseであればデータおよび第1ECCが書き込まれていないことを示す。データフラグがFalseを示す物理アドレスから読み出されるデータは、メモリの初期値となる。なお、NANDフラッシュの場合、初期値は全てのビットが1となる第2ECCフラグは、対応する物理アドレスに記憶されているデータに対して第2ECCが付与されているか否かを示すフラグである。第2ECCフラグがTrueであれば第2ECCが付与されてデータ保持特性が強化されていることを示し、Falseであれば第2ECCが付与されていないことを示す。第2ECCインデックスは、第2ECCフラグがTrueを示すときに有効な値であり、第2ECC管理テーブル342の各エントリに付与されている第2ECCインデックスを保持するものである。この図4の例では、アドレス変換テーブル341のエントリ710、711、712および713において、第2ECCインデックスとしてZiが保持されている。[第2ECC管理テーブルの構成]図5は、本技術の実施の形態における第2ECC管理テーブル342の一構成例を示す図である。この第2ECC管理テーブル342は、各エントリにおいて、第2ECCインデックスと、データ数と、第2ECC物理アドレスと、第0乃至第3番目データの物理アドレスが保持されている。第2ECCインデックスは、第2ECC管理テーブル342のエントリを識別するためのインデックスを保持するものである。この第2ECCインデックスの値はアドレス変換テーブル341の対応するエントリに保持され、これによりアドレス変換テーブル341と第2ECC管理テーブル342とが関連付けられる。データ数は、このエントリに含まれるデータの数を示すものである。第2ECC物理アドレスは、このエントリに含まれるデータの第2ECCが記憶されている物理アドレスを保持するものである。第0乃至第3番目データの物理アドレスは、このエントリに含まれるデータの物理アドレスを順番に保持するものである。第0乃至第3番目データの物理アドレスのうち、上述のデータ数によって示される数のデータに対応するもののみが有効である。この例では、第2ECCインデックスが001のエントリにおいては、データ数が2を示しているため、第0および第1番目データの物理アドレスの2つのみが有効である。また、第2ECCインデックスが000のエントリにおいては、データ数が0を示しているため、第0乃至第3番目データの物理アドレスの全てが無効である。[ライト処理の処理手順]図6は、本技術の実施の形態におけるライト処理の処理手順の一例を示す図である。メモリシステム400は、ホストコンピュータ100から、ホストインターフェース201を介してライトコマンドおよびライトデータを受信する。ライトコマンドは、ライト対象の先頭論理アドレスおよびデータサイズをパラメータとして有する。ここにいうデータサイズは、論理アドレスで指定される領域を単位とした数値として表される。例えば、論理アドレスで指定される領域のサイズが32バイトのメモリシステムにおいて、データサイズとして2が指定された場合、ホストコンピュータ100から受信してライトするデータのサイズは32×2=64バイトとなる。メモリコントローラ200は、ライトコマンドのパラメータとして受信したライト対象の先頭論理アドレスとデータサイズに基づいて、論理アドレス単位に処理を分割するステップS911。1回の処理で実行されるのは1論理アドレスであり、ライトされるデータのサイズは単位論理アドレスにより指定される領域のサイズとなる。例えば、ライト対象の先頭論理アドレスとしてxi1、データサイズとして1が指定された場合には、1回の処理が行われる。また、ライト対象の先頭論理アドレスとしてxi1、データサイズとして2が指定された場合には、2回の処理に分割される。そして、ライト処理の対象となる論理アドレスが決定されるステップS912。対象となる論理アドレスは、ライト対象の先頭論理アドレスから順番に決定されていく。ライト対象の先頭論理アドレスとしてxi1、データサイズとして2が指定された場合、最初に処理を実行する論理アドレスはxi1に決定される。そして、次に対象となる論理アドレスはxi11に決定される。そして、対象となる論理アドレスに対応するアドレス変換情報がアドレス変換テーブル341から取得されるステップS913。このアドレス変換情報は、図4において説明した、物理アドレス、データフラグ、第2ECCフラグ、および、第2ECCインデックスである。例えば、図4の例では、対象となる論理アドレスがxi1の場合、物理アドレスとしてyi1、データフラグとしてTrue、第2ECCフラグとしてTrue、第2ECCインデックスとしてziがそれぞれ取得される。そして、ホストコンピュータ100から受信したデータから第1ECCが計算されるステップS914。第1ECCの算出に使用されるデータのサイズは、1論理アドレスで指定される領域のサイズ例えば32バイトである。ステップS913において取得されたデータフラグがFalseを示している場合にはステップS915:No、今回のライト処理によりデータが書き込まれるため、そのエントリのデータフラグはTrueに更新されるステップS916。その後、ステップS918の処理に進む。一方、データフラグがTrueとなっている場合にはステップS915:Yes、さらに第2ECCフラグがTrueとなっている場合ステップS917:Yes、ステップS921以降の処理を行う。それ以外の場合には、ステップS918の処理に進む。第2ECCフラグがTrueとなっている場合の処理として、データに対応する第2ECCによりエラー訂正を行うための物理アドレス情報を取得するステップS921。この物理アドレス情報は、上述の第2ECC管理テーブル342によって管理されているデータ数、第2ECC物理アドレス、および、第0乃至第3番目データの物理アドレスである。ここで取得される物理アドレス情報は、ステップS913において取得された第2ECCインデックスと一致する値を有する第2ECC管理テーブル342のエントリから取得される。例えば、アドレス変換テーブル341が図4に示す値を保持し、第2ECC管理テーブル342が図5に示す値を保持しているときを想定する。論理アドレスxi1にライトが発生した際に取得される物理アドレス情報は、第2ECCインデックスがziとなる第2ECC管理テーブル342のエントリから取得される。すなわち、データ数は4、第2ECC物理アドレスはei、第0番目データの物理アドレスはyi0、第1番目データの物理アドレスはyi1、第2番目データの物理アドレスはyi2、第3番目データの物理アドレスはyi3となる。そして、ステップS921において取得された物理アドレス情報に基づいて、第2ECC、データ、および、第1ECCが不揮発性記憶領域303から読み出されるステップS922。例えば、第2ECC管理テーブル342から取得された第2ECC物理アドレスがei、データ数が4、第0乃至第3番目データの物理アドレスがyi0、yi1、yi2、および、yi3である場合を想定する。この場合、物理アドレスeiからは第2ECC、物理アドレスyi0、yi1、yi2、および、yi3からは、データおよび第1ECCが読み出される。ステップS922において読み出された第2ECCを用いて、データおよび第1ECCのエラー訂正が実行され、その成否により処理手順が分岐するステップS923。このとき、ステップS921において取得されたデータ数が4より小さい場合、足りないデータについては不揮発性メモリ300の初期値によってパディングした上で、エラー訂正を実行する。第2ECCを用いたエラー訂正が成功した場合にはステップS923:Yes、ステップS924以降の処理が行われる。一方、エラー訂正に失敗した場合にはステップS923:No、ライトコマンドのエラー終了がホストコンピュータ100に通知されるステップS927。このホストコンピュータ100への通知後、そのライトコマンドはエラー終了となる。ステップS923においてエラー訂正が成功した場合、その物理アドレスに記憶されていたデータおよび第1ECCを、ホストコンピュータ100から受信したデータおよびステップS914において算出された第1ECCに置き換えるステップS924。例えば、アドレス変換テーブル341が図4で示される値を保持し、第2ECC管理テーブル342が図5に示される値を保持しているとき、論理アドレスxi1に書き込みが発生した場合を想定する。この場合、第1番目データの物理アドレスyi1に記憶されているデータおよび第1ECCを、ホストコンピュータ100から受信したデータおよびそのデータから算出された第1ECCに置き換える。次に、ステップS924において置換されたデータおよび第1ECCについて、その第2ECCが算出されるステップS925。例えば、アドレス変換テーブル341が図4で示される値を保持し、第2ECC管理テーブル342が図5に示される値を保持しているとき、論理アドレスxi1にライトが発生した場合を想定する。この場合、物理アドレスyi0から読み出されたデータと第1ECCが第0番目データ、物理アドレスyi2から読み出されたデータと第1ECCが第2番目データ、物理アドレスyi3から読み出されたデータと第1ECCが第3番目データとなる。また、ホストコンピュータ100から受信したデータおよびそのデータから算出された第1ECCが第1番目データとなる。これら第0乃至3番目データを順番に連結させて、第2ECCが算出される。このようにして算出された第2ECCは、ステップS921において取得された第2ECCの物理アドレスに書き込まれるステップS926。この第2ECCの書込みが完了すると、ステップS918以降の処理が実行される。ステップS916、S917またはS926の処理の後、データと、ステップS914において算出された第1ECCとが、不揮発性記憶領域303に書き込まれるステップS918。そのライト対象の物理アドレスは、ステップS913において取得された物理アドレスである。そして、ステップS911において分割した処理が全て終了したかが判定されステップS919、処理が残っている場合にはステップS912以降の処理が繰り返される。一方、全ての処理が終了したと判定された場合にはステップS919:No、ライトコマンドが正常に実行された旨がホストコンピュータ100に通知されるステップS929。ホストコンピュータ100への通知が終了した後は、そのライトコマンドの処理は正常終了となる。[リード処理の処理手順]図7は、本技術の実施の形態におけるリード処理の処理手順の一例を示す図である。メモリシステム400は、ホストコンピュータ100から、ホストインターフェース201を介してリードコマンドを受信する。リードコマンドは、リード対象の先頭論理アドレスおよびデータサイズをパラメータとして有する。データサイズは、ライトコマンドと同様に、論理アドレスで指定される領域を単位とした数値として表される。メモリコントローラ200は、リードコマンドのパラメータとして受信したリード対象の先頭論理アドレスおよびデータサイズに基づいて、論理アドレス単位に処理を分割するステップS931。1回の処理で実行されるのは1論理アドレスであり、読み出されるデータのサイズは単位論理アドレスで指定される領域のサイズとなる。例えば、リード対象の先頭論理アドレスとしてxi1、データサイズとして1が指定された場合には1回の処理に分割され、リード対象の先頭論理アドレスとしてxi1、データサイズとして2が指定された場合には2回の処理に分割される。そして、リード処理の対象となる論理アドレスが決定されるステップS932。対象となる論理アドレスは、リード対象の先頭論理アドレスから順番に決定されていく。リード対象の先頭論理アドレスとしてxi1、データサイズとして2が指定された場合、最初に処理を実行する論理アドレスはxi1に決定される。そして、次に対象となる論理アドレスはxi11に決定される。そして、対象となる論理アドレスに対応するアドレス変換情報がアドレス変換テーブル341から取得されるステップS933。このアドレス変換情報は、図4において説明した、物理アドレス、データフラグ、第2ECCフラグ、および、第2ECCインデックスである。例えば、図4の例では、対象となる論理アドレスがxi1の場合、物理アドレスとしてyi1、データフラグとしてTrue、第2ECCフラグとしてTrue、第2ECCインデックスとしてziがそれぞれ取得される。ステップS933において取得されたデータフラグがFalseを示している場合にはステップS934:No、ステップS933において取得された物理アドレスからデータのみが読み出されるステップS935。このとき、読み出される値は不揮発性メモリの初期値である。このデータの読出しの後はステップS938の処理が行われる。一方、データフラグがTrueを示している場合にはステップS934:Yes、ステップS933において取得された物理アドレスからデータおよび第1ECCが読み出されるステップS936。そして、読み出された第1ECCを用いてデータのエラー訂正が実行され、エラー訂正の成否に応じて処理が分岐するステップS937。すなわち、エラー訂正に成功した場合にはステップS938の処理が行われ、エラー訂正に失敗した場合にはステップS941以降の処理が行われる。第1ECCを用いたエラー訂正に失敗した場合にはステップS937:No、ステップS933において取得された第2ECCフラグの値に応じて処理が分岐するステップS941。すなわち、第2ECCフラグがFalseを示している場合にはステップS941:No、それ以上のエラー訂正はできないため、リードコマンドのエラー終了がホストコンピュータ100に通知されるステップS947。このホストコンピュータ100への通知後、そのリードコマンドはエラー終了となる。一方、第2ECCフラグがTrueを示している場合にはステップS941:Yes、データに対応する第2ECCによりエラー訂正を行うための物理アドレス情報を取得するステップS942。この物理アドレス情報は、上述の第2ECC管理テーブル342によって管理されているデータ数、第2ECC物理アドレス、および、第0乃至第3番目データの物理アドレスである。ここで取得される物理アドレス情報は、ステップS913において取得された第2ECCインデックスと一致する値を有する第2ECC管理テーブル342のエントリから取得される。例えば、アドレス変換テーブル341が図4に示す値を保持し、第2ECC管理テーブル342が図5に示す値を保持しているときを想定する。論理アドレスxi1にライトが発生した際に取得される物理アドレス情報は、第2ECCインデックスがziとなる第2ECC管理テーブル342のエントリから取得される。すなわち、データ数は4、第2ECC物理アドレスはei、第0番目データの物理アドレスはyi0、第1番目データの物理アドレスはyi1、第2番目データの物理アドレスはyi2、第3番目データの物理アドレスはyi3となる。そして、ステップS942において取得された物理アドレス情報に基づいて、第2ECC、データ、および、第1ECCが不揮発性記憶領域303から読み出されるステップS943。例えば、第2ECC管理テーブル342から取得された第2ECC物理アドレスがei、データ数が4、第0乃至第3番目データの物理アドレスがyi0、yi1、yi2、および、yi3である場合を想定する。この場合、物理アドレスeiからは第2ECC、物理アドレスyi0、yi2、および、yi3からは、データおよび第1ECCが読み出される。ただし、物理アドレスyi1に記憶されている第1番目データについては、既にステップS936において読み出されているため、ここでのデータの読出しは省略することができる。そして、ステップS943において読み出された第2ECCを用いて、ステップS943において読み出されたデータおよび第1ECCのエラー訂正が行われ、そのエラー訂正の成否によって処理が分岐するステップS944。このとき、ステップS942において取得されたデータ数が4より小さい場合、足りないデータについては不揮発性メモリ300の初期値によってパディングした上で、エラー訂正を実行する。第2ECCを用いたエラー訂正が成功した場合にはステップS944:Yes、ステップS938以降の処理が行われる。一方、エラー訂正に失敗した場合にはステップS944:No、リードコマンドのエラー終了がホストコンピュータ100に通知されるステップS947。このホストコンピュータ100への通知後、そのリードコマンドはエラー終了となる。ステップS935、S937またはS944の処理の後、第1ECCまたは第2ECCを用いたエラー訂正処理によって成功したデータがホストコンピュータ100に転送されるステップS938。そして、ステップS931において分割した処理が全て終了したかが判定されステップS939、処理が残っている場合にはステップS932以降の処理が繰り返される。一方、全ての処理が終了したと判定された場合にはステップS939:No、リードコマンドが正常に実行された旨がホストコンピュータ100に通知されるステップS949。ホストコンピュータ100への通知が終了した後は、そのリードコマンドの処理は正常終了となる。[データ保持特性強化処理の処理手順]図8は、本技術の実施の形態におけるデータ保持特性強化処理の処理手順の一例を示す図である。メモリシステム400は、ホストコンピュータ100から、ホストインターフェース201を介してデータ保持特性強化コマンドを受信する。データ保持特性強化コマンドは、データ保持特性強化対象の先頭論理アドレスおよびデータサイズをパラメータとして有する。データサイズは、ライトコマンドと同様に、論理アドレスで指定される領域を単位とした数値として表される。メモリコントローラ200は、データ保持特性強化コマンドのパラメータとして受信したデータ保持特性強化対象の先頭論理アドレスおよびデータサイズに基づいて、論理アドレス単位に処理を分割するステップS951。1回の処理で実行されるのは第2ECCを付与するデータサイズであり、この例では4論理アドレスを1単位とする。ただし、データサイズで指定された値が4で割り切れない場合には、先頭論理アドレスから4論理アドレスずつ処理を実行し、最後に4論理アドレスに満たない数の論理アドレスを1単位として処理をする。例えば、データサイズとして4が指定された場合は4論理アドレスの処理を1回実行し、データサイズに10が指定された場合には4論理アドレスの処理を2回実行し、最後の処理で2論理アドレスの処理を1回実行する。そして、データ保持特性強化の対象となる論理アドレスが決定されるステップS952。対象となる論理アドレスは、データ保持特性強化対象の先頭論理アドレスからステップS951において分割された単位で決定されていく。そして、対象となる1単位分の論理アドレスに対応するアドレス変換情報がアドレス変換テーブル341から取得されるステップS953。このアドレス変換情報は、図4において説明した、物理アドレス、データフラグ、第2ECCフラグ、および、第2ECCインデックスである。この処理では、最大4論理アドレス分の物理アドレス、データフラグ、第2ECCフラグ、第2ECCインデックスが取得される。例えば、アドレス変換テーブル341の値として図9に示す例を想定する。処理対象の論理アドレスがxjから4論理アドレスの場合は、論理アドレスxjの物理アドレスとしてyj0、データフラグの値としてTrue、第2ECCフラグの値としてFalseが取得される。また、論理アドレスxj1の物理アドレスとしてyj1、データフラグの値としてFalse、第2ECCフラグの値としてFalseが取得される。また、論理アドレスxj2の物理アドレスとしてyj2、データフラグの値としてTrue、第2ECCフラグの値としてFalseが取得される。また、論理アドレスxj3の物理アドレスとしてyj3、データフラグの値としてTrue、第2ECCフラグの値としてFalseが取得される。一方、処理対象の論理アドレスがxj4から1論理アドレスの場合は、論理アドレスxj4の物理アドレスとしてyj4、データフラグの値としてFalse、第2ECCフラグの値としてFalseが取得される。なお、この例において取得される第2ECCインデックスの値は、第2ECCフラグがFalseであるため無効な値となる。ステップS953において取得された物理アドレスからデータおよび第1ECCを不揮発性記憶領域303から読み出すステップS954。ステップS953において取得されたデータフラグがFalseである物理アドレスから読み出されるデータおよび第1ECCは、メモリの初期値となる。例えば、アドレス変換テーブル341の値として図10に示す例を想定する。処理対象の論理アドレスがxjから4論理アドレスの場合は、物理アドレスyj0、スyj1、yj2およびyj3からデータおよび第1ECCが読み出される。一方、処理対象の論理アドレスがxj4から1論理アドレスの場合は、物理アドレスyj4からデータおよび第1ECCが読み出される。このとき、物理アドレスyj4に対応するデータフラグがFalseを示しているため、物理アドレスyj4から読み出されるデータは不揮発性メモリの初期値となる。ステップS954において読み出された第1ECCを用いて、データのエラー訂正が実行され、その成否により処理手順が分岐するステップS955。このエラー訂正は、ステップS953において取得されたデータフラグがTrueとなっている物理アドレスから読み出されたデータについてのみ実行される。ステップS953において取得されたデータフラグがFalseとなっている物理アドレスから読み出されたデータのエラー訂正は成功として扱う。全てのユーザーデータのエラー訂正が成功した場合はステップS956の処理に進み、それ以外の場合にはステップS969の処理に進む。第1ECCを用いたエラー訂正に失敗した場合にはステップS955:No、データ保持特性強化コマンドのエラー終了がホストコンピュータ100に通知されるステップS969。このホストコンピュータ100への通知後、そのデータ保持特性強化コマンドはエラー終了となる。第1ECCを用いたエラー訂正が成功した場合にはステップS955:Yes、第2ECC管理テーブル342の空きエントリの検索が行われるステップS956。空きエントリの検索の際には、第2ECC管理テーブル342の中でデータ数が0を示すエントリが検索され、そのエントリの第2ECCインデックスの値が取得される。そして、ステップS956において検索されたエントリにおいて第2ECC物理アドレスが取得されるステップS957。そして、ステップS954において読み出されたデータと第1ECCの値を、論理アドレスの小さい順に連結させて、第2ECCを算出するステップS958。4論理アドレスに満たない数の論理アドレスの処理では、足りないサイズのデータと第1ECCについては不揮発性メモリ300の初期値によってパディングする。例えば、アドレス変換テーブル341の値として図9に示す例を想定する。処理対象の論理アドレスがxjから4論理アドレスの場合は、物理アドレスyj0、yj1、yj2およびyj3からデータおよび第1ECCが読み出される。このとき、物理アドレスyj1に対応するデータフラグがFalseを示しているため、物理アドレスyj1から読み出されるデータおよび第1ECCは不揮発性メモリの初期値となる。読み出されたデータは、物理アドレスyj0のデータ、第1ECC、物理アドレスyj1のデータ、第1ECC、物理アドレスyj2のデータ、第1ECC、物理アドレスyj3のデータ、第1ECCの順に連結され、第2ECCが算出される。一方、処理を行う論理アドレスがxj4から1論理アドレスの場合は、物理アドレスyj4からデータと第1ECC、以降の3物理アドレスから読み出されたデータは不揮発性メモリ300の初期値でパディングし、第2ECCを算出する。この例の場合、データは全て不揮発性メモリ300の初期値となる。ステップS958において算出された第2ECCは、ステップS957において取得された物理アドレスに書き込まれるステップS959。そして、ステップS956において検索されたエントリにおいてデータ数、第0乃至第3番目データの物理アドレスの値が更新されるステップS961。データ数には、第2ECCを算出した際に使用されたデータが記憶されている物理アドレスの数を設定される。第0番目データの物理アドレスには、連結されたデータおよび第1ECCの先頭のデータの物理アドレスが設定される。第1乃至第3番目データの物理アドレスには、連結された順に、データおよび第1ECCの物理アドレスが設定される。例えば、アドレス変換テーブル341の値として図9、第2ECC管理テーブル342の値として図11に示す値を有する例を想定する。処理対象の論理アドレスがxjから4論理アドレスで、ステップS956において取得された第2ECCインデックスがzj0である場合の更新後のエントリの値を図12の上部に示す。一方、処理対象の論理アドレスがxj4から1論理アドレスで、ステップS956において取得された第2ECCインデックスがzj4である場合の更新後のエントリの値を図12の下部に示す。そして、アドレス変換テーブル341の値のうち、第2ECCフラグと第2ECCインデックスの値を更新して、不揮発性メモリ300を更新するステップS962。このとき、第2ECCにはTrueが設定され、第2ECCインデックスにはステップS956において取得された第2ECCインデックスが設定される。例えば、アドレス変換テーブル341の値として図9、第2ECC管理テーブル342の値として図11に示す値を有する場合を想定する。処理対象の論理アドレスがxjから4論理アドレスで、ステップS956において取得された第2ECCインデックスzj0である場合の更新後のアドレス変換テーブル341の値を図10のエントリ730乃至733に示す。一方、処理対象の論理アドレスがxj4から1論理アドレスで、ステップS956において取得された第2ECCインデックスがzj4である場合の更新後のアドレス変換テーブル341の値を図10のエントリ734に示す。そして、ステップS961において分割した処理が全て終了したかが判定されステップS963、処理が残っている場合にはステップS952以降の処理が繰り返される。一方、全ての処理が終了したと判定された場合にはステップS963:No、データ保持特性強化コマンドが正常に実行された旨がホストコンピュータ100に通知されるステップS964。ホストコンピュータ100への通知が終了した後は、そのデータ保持特性強化コマンドの処理は正常終了となる。[データ保持特性強化解除処理の処理手順]図13は、本技術の実施の形態におけるデータ保持特性強化解除処理の処理手順の一例を示す図である。メモリシステム400は、ホストコンピュータ100から、ホストインターフェース201を介してデータ保持特性強化解除コマンドを受信する。データ保持特性強化解除コマンドは、データ保持特性強化解除対象の先頭論理アドレスおよびデータサイズをパラメータとして有する。データサイズは、ライトコマンドと同様に、論理アドレスで指定される領域を単位とした数値として表される。メモリコントローラ200は、データ保持特性強化解除コマンドのパラメータとして受信したデータ保持特性強化解除対象の先頭論理アドレスおよびデータサイズに基づいて、論理アドレス単位に処理を分割するステップS971。1回の処理で実行されるのは1論理アドレスであるものとして開始するが、処理の効率化のために複数の論理アドレスの解除が同時に可能と判別される場合は、1回の処理で複数の論理アドレスの処理を実行する。詳細は以下の説明における該当個所において説明する。そして、データ保持特性強化解除の対象となる論理アドレスが決定されるステップS972。処理を開始する論理アドレスは、先頭からステップS971において分割された1論理アドレスで、かつ、解除処理が実行されていない論理アドレスである。そして、対象となる論理アドレスに対応するアドレス変換情報がアドレス変換テーブル341から取得されるステップS973。このアドレス変換情報は、図4において説明した、物理アドレス、データフラグ、第2ECCフラグ、および、第2ECCインデックスである。例えば、アドレス変換テーブル341の値として図10に示す値を有する場合を想定する。処理対象の論理アドレスがxjの場合は、論理アドレスxjの物理アドレスとしてyj0、データフラグの値としてTrue、第2ECCフラグの値としてTrue、第2ECCインデックスの値としてzj0がそれぞれ取得される。一方、処理対象の論理アドレスがxj4から1論理アドレスの場合は、論理アドレスxj4の物理アドレスとしてyj4、データフラグの値としてFalse、第2ECCフラグの値としてTrueがそれぞれ取得される。また、第2ECCインデックスの値としてzj4が取得される。そして、ステップS973において取得された物理アドレスに記憶されたデータに付与された第2ECCを計算するための物理アドレス情報が取得されるステップS974。第2ECCを計算するための物理アドレス情報は、第2ECC管理テーブル342で管理されている、データ数、第2ECC物理アドレス、第0乃至第3番目データの物理アドレスである。物理アドレス情報は、ステップS973において取得された第2ECCインデックスと一致する値を有する第2ECC管理テーブル342のエントリから取得される。例えば、アドレス変換テーブル341が図10に示す値を保持し、第2ECC管理テーブル342が図12に示す値を保持しているときを想定する。論理アドレスxjが処理対象である場合に取得される物理アドレス情報は、第2ECCインデックスがzj0となる第2ECC管理テーブル342のエントリから取得される。すなわち、データ数は4、第2ECC物理アドレスはej0、第0番目データの物理アドレスはyj0、第1番目データの物理アドレスはyj1、第2番目データの物理アドレスはyj2、第3番目データの物理アドレスはyj3となる。そして、ステップS974において取得された第0乃至第3番目データの物理アドレスの中でデータ保持特性強化解除となる論理アドレスが決定されるステップS975。すなわち、取得された第0乃至第3番目データの物理アドレスの中で、データ保持特性強化解除コマンドで指定された論理アドレスに対応する物理アドレスに該当するものがあれば、今回同時にデータ保持特性強化解除を行うものとして決定される。例えば、アドレス変換テーブル341が図10に示す値を保持し、第2ECC管理テーブル342が図12に示す値を保持しているとき、データ保持特性強化解除コマンドで、論理アドレスxjから3論理アドレスが範囲として指定された場合を想定する。このとき、ステップS972において処理対象の論理アドレスがxjに決定されると、ステップS975では、論理アドレスxj1とxj2が、論理アドレスxjの処理と同時にデータ保持特性の解除を実行する論理アドレスとして決定される。そして、ステップS974において取得された物理アドレス情報に基づいて、第2ECC、データおよび第1ECCが不揮発性記憶領域303から読み出されるステップS976。例えば、アドレス変換テーブル341が図10に示す値を保持し、第2ECC管理テーブル342が図12に示す値を保持しているときを想定する。ステップS975においてデータ保持特性強化解除対象の論理アドレスxj、xj1、xj2が決定された場合、物理アドレスei0から第2ECCが読み出される。また、物理アドレスyj0乃至yj3から第0乃至第3番目データが読み出される。このとき、第0乃至第3番目データのそれぞれは、データおよび第1ECCからなる。そして、ステップS976において読み出された第2ECCを用いて、データおよび第1ECCのエラー検出処理が行われ、その成否によって処理が分岐するステップS977。すなわち、エラーが検出された場合にはステップS978以降の処理が行われ、エラーが検出されなかった場合にはステップS981以降の処理が行われる。なお、ステップS974において取得されたデータ数が4より小さい場合、足りないデータについては不揮発性メモリ300の初期値によってパディングしてエラー検出が行われる。エラーが検出された場合ステップS977:Yes、ステップS976において読み出された第2ECCを用いてエラー訂正処理が行われ、その成否によって処理が分岐するステップS978。すなわち、全てのデータおよび第1ECCについてエラー訂正に成功した場合にはステップS979以降の処理が行われ、エラー訂正の失敗が生じた場合にはステップS989の処理が行われる。なお、ステップS974において取得されたデータ数が4より小さい場合、足りないデータについては不揮発性メモリ300の初期値によってパディングしてエラー検出が行われる。第2ECCを用いたエラー訂正に成功した場合ステップS978:Yes、エラーが発生したデータおよび第1ECCを、エラー訂正されたデータおよび第1ECCに書き直すステップS979。この処理で書き直されるデータおよび第1ECCはデータ保持特性の強化を解除する論理アドレスであるか否かにかかわらず、ステップS978において訂正されたデータおよび第1ECCが書直し対象となる。第2ECCを用いてもエラー訂正に成功しなかった場合ステップS978:No、データ保持特性強化解除コマンドのエラー終了がホストコンピュータ100に通知されるステップS989。このホストコンピュータ100への通知後、そのデータ保持特性強化解除コマンドはエラー終了となる。ステップS977NoまたはS979の処理の後、第2ECCを再計算する必要があるか否かが判断されるステップS981。すなわち、S974において取得された第2ECC物理アドレス情報に、ステップS975において決定されたデータ保持特性強化解除対象の論理アドレス以外の論理アドレスに対応する物理アドレスが存在するかが判断される。データ保持特性強化解除対象以外の物理アドレスが存在する場合にはステップS981:Yes、第2ECCが再計算されステップS982、不揮発性記憶領域303の第2ECC記憶領域330に記憶されるステップS983。この場合、ステップS977においてエラーが検出されていた場合には、エラー訂正後のデータおよび第1ECCから第2ECCが計算される。エラーが検出されていなければ読み出されたままのデータおよび第1ECCから第2ECCが計算される。例えば、アドレス変換テーブル341が図10に示す値を保持し、第2ECC管理テーブル342が図12に示す値を保持しているときを想定する。このとき、ステップS975においてデータ保持特性強化解除対象の論理アドレスxj、xj1、xj2が決定された場合、データ保持特性強化解除対象となっていない論理アドレスはxj3である。ステップS982において第2ECCを算出するために用いられるデータは、物理アドレスyj3から読み出され、エラー訂正済みのデータおよび第1ECCとなる。第2ECCの算出に必要なデータサイズに満たない部分は、メモリの初期値でパディングする。なお、ステップS983において第2ECCが記憶される物理アドレスは、ステップS974において取得された第2ECC物理アドレスである。ステップS981NoまたはS983の処理の後、ステップS974において取得された第2ECC物理アドレス情報を更新し、第2ECC管理テーブル342を不揮発性記憶領域303のテーブル記憶領域340に記憶するステップS984。例えば、アドレス変換テーブル341が図10に示す値を保持し、第2ECC管理テーブル342が図12に示す値を保持しているときを想定する。このとき、ステップS975においてデータ保持特性強化解除対象の論理アドレスxj、xj1、xj2が決定された場合、第2ECC物理アドレス情報のデータ数は1、第0番目データの物理アドレスはyj3に更新される。第1乃至第3番目データの物理アドレスは、データ数は1であるため、無効な値として扱われる。この例による更新後の第2ECC管理テーブル342の内容を図14の上部に示す。そして、アドレス変換テーブル341において、データ保持特性強化を解除する論理アドレスの第2ECCフラグがFalseに設定されるステップS985。例えば、アドレス変換テーブル341が図10に示す値を保持し、第2ECC管理テーブル342が図12に示す値を保持しているときを想定する。このとき、ステップS975においてデータ保持特性強化解除対象の論理アドレスxj、xj1、xj2が決定された場合、論理アドレスxj、xj1、xj2に対応する第2ECCフラグがFalseに設定される。第2ECCフラグがFalseに設定された論理アドレスの第2ECCインデックスは無効な値として扱われる。この例による更新後のアドレス変換テーブル341を図15のエントリ740、741および742に示す。そして、ステップS971において分割した処理が全て終了したかが判定されステップS986、処理が残っている場合にはステップS972以降の処理が繰り返される。一方、全ての処理が終了したと判定された場合にはステップS986:No、データ保持特性強化解除コマンドが正常に実行された旨がホストコンピュータ100に通知されるステップS987。ホストコンピュータ100への通知が終了した後は、そのデータ保持特性強化解除コマンドの処理は正常終了となる。[実施の形態の効果]このように、本技術の実施の形態によれば、第2ECC管理テーブル342において第2ECCおよびその対象データの物理アドレスを管理することにより、物理アドレス空間上での配置を意識することなくデータの保持特性を強化することができる。<2.変形例>[上書きを伴わない不揮発性メモリへの適用]上述の実施の形態では、不揮発性メモリ300においてデータの上書きが可能であることを想定して説明したが、例えばNANDフラッシュメモリのように上書きができないメモリも存在する。上書きができないメモリの場合、不揮発性メモリにデータを書き込む前にデータの消去処理を実行する必要がある。これ以外の点については上述の実施の形態と同様の手法を採ることができ、不連続なアドレスに書き込まれたデータと、それに付加された第2ECCの物理アドレスの管理をすることができる。[複数の第2ECCを同一物理アドレスに記憶する場合]上述の実施の形態では、1つの物理アドレスの領域には1つの第2ECCを記憶していたが、これに限定されず複数の第2ECCを同一物理アドレスに記憶することも可能である。この場合、図16に示すように、第2ECC管理テーブル342において、新たに第2ECC物理アドレス内オフセットを保持する。そして、この第2ECC物理アドレス内オフセットによって、そのエントリの第2ECCが第2ECC物理アドレスにおけるどの位置に記憶されているかを示す。これにより、複数の第2ECCを同一物理アドレスに記憶するように構成することができる。なお、各データを論理アドレスにより管理を行えば第2ECC物理アドレス内オフセットを導入する必要はないが、この例によれば、物理アドレスによって管理することにより個々のアドレス変換を不要にして、高速にアクセスを行うことができるという利点がある。なお、一般的には、不揮発性記憶領域303の単位データ幅をNバイト、付与される第2ECCのサイズをCバイトとすると、n×C≦Nを満たす範囲でのnが同一物理アドレスにおける第2ECCの数である。このとき、第2ECC物理アドレス内オフセットiは、次式を満たす整数である。0≦i≦n-1[論理アドレス上で関連性のないデータと組み合わせて第2ECCを生成する場合]上述の実施の形態では、論理アドレス空間において連続する複数のデータを連結して第2ECCを生成していたが、これに限定されず論理アドレス上で関連性のないデータと組み合わせて第2ECCを生成してもよい。この場合、データ保持特性強化処理の際の空きエントリの検索方法が影響を受ける。すなわち、上述の実施の形態では第2ECCを記憶する物理アドレスを決定する際にステップS956において空きエントリを検索していたが、この場合には対象データの物理アドレスに1つ以上の空きがあるエントリを検索すればよい。例えば、アドレス変換テーブル341が図17に示す値を保持し、第2ECC管理テーブル342が図18に示す値を保持しているときに、データ保持特性強化コマンドで先頭論理アドレスとしてxj、データサイズとして5が指定されたことを想定する。このとき、論理アドレスxj、xj1、xj2、xj3については、上述の実施の形態と同様の手法によりデータ保持特性の強化処理が行われる。そして、論理アドレスxj4については、ステップS956において対象データの物理アドレスに1つ以上の空きがあるエントリが検索される。つまり、データ数が3以下のエントリを検索すればよい。この場合、図18の第2ECC管理テーブル342であれば、第2ECCインデックスzh0のエントリも検索条件に適合する。また、ステップS958の処理では、論理アドレスxj4の第2ECCを算出するときに、図18に示す物理アドレスyh0に記憶されているデータと第1ECCを読み出す。そして、論理アドレスxj4に対応する物理アドレスyj44から読み出してエラー訂正をしたデータおよび第1ECCを連結させて、第2ECCの計算を実行する。このようにして更新された後のアドレス変換テーブル341の例を図19に、第2ECC管理テーブル342の例を図20にそれぞれ示す。[アクセス時刻の経過を契機としてデータ保持特性強化を行う場合]上述の実施の形態では、データ保持特性の強化およびその解除をホストコンピュータ100からのコマンドにより実行していたが、データ保持特性強化等の契機はこれに限定されない。例えば、メモリコントローラ200内にタイマーを設け、メモリコントローラ200が自発的にデータ保持特性強化やその解除を行ってもよい。この場合、ホストコンピュータ100からのリードコマンドやライトコマンドによってアクセスされた論理アドレスごとに、最後にアクセスされた時刻最終アクセス時刻を管理する。最終アクセス時刻は、リードコマンドまたはライトコマンドの実行により更新される。図21に、最終アクセス時刻をパラメータとして有するアドレス変換テーブル341の例を示す。最終アクセス時刻から経過した時間が予め定められた時間を超えていて、かつ、第2ECCフラグがFalseである場合には、メモリコントローラ200は自発的にデータ保持特性強化処理を実行する。また、最終アクセス時刻から経過した時間が予め定められた時間を超えておらず、かつ、第2ECCフラグがTrueである場合には、コントローラは自発的にデータ保持特性強化解除処理を実行するようにしてもよい。[1つの物理アドレスが示す領域に複数の論理アドレスが対応する場合]上述の実施の形態では、1物理アドレスで指定される領域に対して1論理アドレスで指定されるサイズのデータを記憶していたが、これに限定されない。例えば、1物理アドレスで指定される領域に対して複数の論理アドレスで指定されるサイズのデータを記憶するようにしてもよい。1物理アドレスで指定される領域に対して複数の論理アドレスで指定されるサイズのデータを記憶可能なメモリに、m組のデータおよび第1ECCを記憶した例を図22に示す。この場合、データおよび第1ECCの記憶位置を特定するために、物理アドレスだけではなく、物理アドレス内オフセットが必要になる。この物理アドレス内オフセットを導入した場合のアドレス変換テーブル341の例を図23に、第2ECC管理テーブル342の例を図24にそれぞれ示す。なお、この例は、不揮発性メモリとして、特に、大きなサイズを単位としたデータアクセスに対応したフラッシュメモリに適用するのが好適である。フラッシュメモリの代表例としては、NAND型フラッシュメモリが挙げられる。また、不揮発性ランダムアクセスメモリNVRAMに適用することも可能である。[NVMExpressへの適用]上述の実施の形態の応用例として、NVMExpressへの適用例について説明する。NVMExpressとは、NVMHCIワーキンググループにより策定された、フラッシュメモリを利用したSSDSolidStateDriveのためのインターフェースである。まず、DatasetManagementCommandにおいて、AccessFrequencyの値がInfrequentwritesandinfrequentreadstotheLBArangeである場合、データ保持特性強化処理を行う。そして、AccessFrequencyの値がFrequentwritesandfrequentreadstotheLBArangeである場合、データ保持特性強化の解除を行う。なお、このDatasetManagementCommandは、記録したデータをデバイスが最適化するためのコマンドである。また、ReadCommandにおいて、AccessFrequencyの値がInfrequentwritesandinfrequentreadstotheLBArangeの場合、リード処理実行後にデータ保持特性強化処理を行う。そして、AccessFrequencyの値がFrequentwritesandfrequentreadstotheLBArangeの場合、リード処理実行後にデータ保持特性強化の解除処理を行う。また、WriteCommandにおいて、AccessFrequencyの値がInfrequentwritesandinfrequentreadstotheLBArangeの場合、ライト処理実行後にデータ保持特性強化処理を行う。そして、AccessFrequencyの値がFrequentwritesandfrequentreadstotheLBArangeの場合、ライト処理実行後にデータ保持特性強化の解除処理を行う。これにより、本技術の実施の形態をNVMExpressに適用することができる。なお、上述の実施の形態は本技術を具現化するための一例を示したものであり、実施の形態における事項と、特許請求の範囲における発明特定事項とはそれぞれ対応関係を有する。同様に、特許請求の範囲における発明特定事項と、これと同一名称を付した本技術の実施の形態における事項とはそれぞれ対応関係を有する。ただし、本技術は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において実施の形態に種々の変形を施すことにより具現化することができる。また、上述の実施の形態において説明した処理手順は、これら一連の手順を有する方法として捉えてもよく、また、これら一連の手順をコンピュータに実行させるためのプログラム乃至そのプログラムを記憶する記録媒体として捉えてもよい。この記録媒体として、例えば、CDCompactDisc、MDMiniDisc、DVDDigitalVersatileDisk、メモリカード、ブルーレイディスクBlurayDisc登録商標等を用いることができる。なお、本技術は以下のような構成もとることができる。1データおよびそのデータの第1のエラー訂正コードを単位データとして複数の単位データを記憶部に記憶し、前記複数の単位データにおける所定の複数の単位データに対応してその第2のエラー訂正コードを前記記憶部に記憶する場合において、前記所定の複数の単位データと当該所定の複数の単位データに対応する前記第2のエラー訂正コードとの対応関係をエントリ毎に管理するエラー訂正コード管理部と、論理アドレスと前記エラー訂正コード管理部におけるエントリとの対応関係を管理するアドレス管理部と、リード対象の論理アドレスに対応する前記エラー訂正コード管理部におけるエントリを前記アドレス管理部から取得して当該エントリにおいて管理される前記所定の複数の単位データおよび前記第2のエラー訂正コードに基づいてエラー訂正を行うエラー訂正部とを具備する記憶制御装置。2前記所定の複数の単位データは前記記憶部において非連続な物理アドレスに記憶される前記1に記載の記憶制御装置。3前記アドレス管理部は、それぞれの論理アドレスに対応する前記第2のエラー訂正コードが記憶されているか否かを示すエラー訂正コードフラグを管理し、前記エラー訂正部は、前記エラー訂正コードフラグが前記第2のエラー訂正コードが記憶されている旨を示す場合のみ前記エラー訂正を行う前記1または2に記載の記憶制御装置。4前記エラー訂正コード管理部は、前記所定の複数の単位データの結合順序を規定し、前記エラー訂正部は、前記結合順序に従って前記所定の複数の単位データを結合して前記エラー訂正を行う前記1から3のいずれかに記載の記憶制御装置。5前記エラー訂正コード管理部は、前記所定の複数の単位データに対応する前記第2のエラー訂正コードの前記記憶部における物理アドレスを保持し、前記エラー訂正部は、前記第2のエラー訂正コードの前記物理アドレスに従って前記記憶部から前記第2のエラー訂正コードを取得する前記1から4のいずれかに記載の記憶制御装置。6前記エラー訂正コード管理部は、前記所定の複数の単位データに対応する前記第2のエラー訂正コードの前記記憶部における物理アドレス内オフセットをさらに保持し、前記エラー訂正部は、前記第2のエラー訂正コードの前記物理アドレスおよび前記物理アドレス内オフセットに従って前記記憶部から前記第2のエラー訂正コードを取得する前記5に記載の記憶制御装置。7データ保持特性強化コマンドを受け取ると当該データ保持特性強化コマンドにおいて指定された論理アドレスの範囲に記憶されているデータについて前記第2のエラー訂正コードを生成するエラー訂正コード生成部と、前記データ保持特性強化コマンドを受け取ると前記指定された論理アドレスの範囲に記憶されているデータについて対応する前記第2のエラー訂正コードとの対応関係を保持するエントリを前記エラー訂正コード管理部に新たに確保し、その新たに確保されたエントリと前記指定された論理アドレスとの対応関係を前記アドレス管理部に登録するエントリ管理部とをさらに具備する前記1から6のいずれかに記載の記憶制御装置。8前記エントリ管理部は、データ保持特性強化解除コマンドを受け取ると当該データ保持特性強化解除コマンドにおいて指定された論理アドレスの範囲に記憶されているデータについて対応する前記第2のエラー訂正コードとの対応関係を保持するエントリを前記エラー訂正コード管理部において解放し、その解放されたエントリと前記指定された論理アドレスとの対応関係を前記アドレス管理部において削除する前記7に記載の記憶制御装置。9前記エラー訂正コード管理部は、エントリ毎に前記第2のエラー訂正コードに対応する単位データの数を保持し、前記エントリ管理部は、エントリを新たに確保する際には前記単位データの数がゼロを示すエントリを対象とする前記7に記載の記憶制御装置。10前記エラー訂正コード管理部は、エントリ毎に前記第2のエラー訂正コードに対応する単位データの数を保持し、前記エントリ管理部は、エントリを新たに確保する際には前記単位データの数が所定数に満たないエントリを対象とする前記7に記載の記憶制御装置。11前記アドレス管理部は、それぞれの論理アドレスについて最後にアクセスされた時刻を最終アクセス時刻として保持し、前記最終アクセス時刻から所定期間経過するとその論理アドレスに記憶されているデータについて前記第2のエラー訂正コードを生成するエラー訂正コード生成部と、前記最終アクセス時刻から所定期間経過するとその論理アドレスに記憶されているデータについて対応する前記第2のエラー訂正コードとの対応関係を保持するエントリを前記エラー訂正コード管理部に新たに確保し、その新たに確保されたエントリと前記指定された論理アドレスとの対応関係を前記アドレス管理部に登録するエントリ管理部とをさらに具備する前記1から10のいずれかに記載の記憶制御装置。12前記エントリ管理部は、前記最終アクセス時刻から所定期間経過するまでの間に前記第2のエラー訂正コードが記憶されている場合には、その論理アドレスに記憶されているデータについて対応する前記第2のエラー訂正コードとの対応関係を保持するエントリを前記エラー訂正コード管理部において解放し、その解放されたエントリと前記指定された論理アドレスとの対応関係を前記アドレス管理部において削除する前記11に記載の記憶制御装置。13データおよびそのデータの第1のエラー訂正コードを単位データとして複数の単位データを記憶する単位データ記憶部と、前記複数の単位データにおける所定の複数の単位データに対応してその第2のエラー訂正コードを記憶するエラー訂正コード記憶部と、前記所定の複数の単位データと当該所定の複数の単位データに対応する前記第2のエラー訂正コードとの対応関係をエントリ毎に管理するエラー訂正コード管理部と、論理アドレスと前記エラー訂正コード管理部におけるエントリとの対応関係を管理するアドレス管理部と、リード対象の論理アドレスに対応する前記エラー訂正コード管理部におけるエントリを前記アドレス管理部から取得して当該エントリにおいて管理される前記所定の複数の単位データおよび前記第2のエラー訂正コードに基づいてエラー訂正を行うエラー訂正部とを具備する記憶装置。14前記単位データ記憶部および前記エラー訂正コード記憶部は不揮発性メモリである前記13に記載の記憶装置。15データおよびそのデータの第1のエラー訂正コードを単位データとして複数の単位データを記憶する単位データ記憶部と、前記複数の単位データにおける所定の複数の単位データに対応してその第2のエラー訂正コードを記憶するエラー訂正コード記憶部と、前記所定の複数の単位データと当該所定の複数の単位データに対応する前記第2のエラー訂正コードとの対応関係をエントリ毎に管理するエラー訂正コード管理部と、論理アドレスと前記エラー訂正コード管理部におけるエントリとの対応関係を管理するアドレス管理部と、リード対象の論理アドレスに対応する前記エラー訂正コード管理部におけるエントリを前記アドレス管理部から取得して当該エントリにおいて管理される前記所定の複数の単位データおよび前記第2のエラー訂正コードに基づいてエラー訂正を行うエラー訂正部と、前記単位データ記憶部に対するアクセスを要求するリクエストを発行するホストコンピュータとを具備する情報処理システム。16データおよびそのデータの第1のエラー訂正コードを単位データとして複数の単位データを記憶する単位データ記憶部と、前記複数の単位データにおける所定の複数の単位データに対応してその第2のエラー訂正コードを記憶するエラー訂正コード記憶部と、前記所定の複数の単位データと当該所定の複数の単位データに対応する前記第2のエラー訂正コードとの対応関係をエントリ毎に管理するエラー訂正コード管理部と、論理アドレスと前記エラー訂正コード管理部におけるエントリとの対応関係を管理するアドレス管理部とを備える記憶装置における記憶制御方法であって、リード対象の論理アドレスに対応する前記エラー訂正コード管理部におけるエントリを前記アドレス管理部から取得するエントリ取得手順と、前記取得されたエントリにおいて管理される前記所定の複数の単位データおよび前記第2のエラー訂正コードに基づいてエラー訂正を行うエラー訂正手順とを具備する記憶制御方法。