上書き可能な複数のメモリセルを含む不揮発性メモリ装置と、当該不揮発性メモリ装置へのアクセスを制御する制御回路装置とを有する半導体装置において、前記制御回路装置は、外部から与えられる第1の書込みデータの書き込みに使用するメモリセルの物理的な配置が、少なくとも一つの方向に対してNNは自然数個置きになるように、外部から与えられる第1のアドレスとは独立に、前記不揮発性メモリ装置に対する第2のアドレスの割り当てを設定することを特徴とする半導体装置。請求項1に記載の半導体装置において、前記制御回路装置は、前記Nの値をプログラム可能であることを特徴とする半導体装置。請求項1に記載の半導体装置において、前記制御回路装置は、前記第1の書込みデータから生成したECCコードと前記第1の書込みデータを、前記第2のアドレスにより指定されるN個置きのメモリセルに書き込むことを特徴とする半導体装置。請求項1に記載の半導体装置において、前記制御回路装置は、前記第1の書込みデータから生成されるデータ圧縮情報又は書込み方法選択情報を含む冗長データと前記第1の書込みデータを、前記第2のアドレスにより指定されるN個置きのメモリセルに書き込むことを特徴とする半導体装置。請求項1に記載の半導体装置において、前記制御回路装置は、前記不揮発性メモリ装置に書き込むビット数を低減するように前記第1の書込みデータを圧縮した第2の書込みデータを、前記第2のアドレスにより指定されるN個置きのメモリセルに書き込むことを特徴とする半導体装置。請求項5に記載の半導体装置において、前記第1の書込みデータの圧縮方法はビット反転であることを特徴とする半導体装置。請求項1に記載の半導体装置において、前記不揮発性メモリ装置には、物理的に連続した複数のメモリセルで構成される第1の物理アドレス領域と第2の物理アドレス領域が設定されており、前記制御回路装置は、前記第1の物理アドレス領域について、少なくとも一つの方向に対してNNは自然数個置きに前記第1の書込みデータを書き込むように前記第2のアドレスを割り当て、前記第2の物理アドレス領域について、少なくとも一つの方向に対してMMは0又は自然数であり、M<N個置きに前記第1の書込みデータを書き込むように前記第2のアドレスを割り当てることを特徴とする半導体装置。請求項1に記載の半導体装置において、前記不揮発性メモリ装置は、複数のメモリバンクの積層構造を有し、前記制御回路装置は、少なくとも一組の隣接するメモリバンク間において、前記第2のアドレスの割り当てがオフセットするように設定することを特徴とする半導体装置。請求項1に記載の半導体装置において、前記制御回路装置は、前記第1の書込みデータを、前記第2のアドレス上で連続するように書き込むことを特徴とする半導体装置。上書き可能な複数のメモリセルを含む不揮発性メモリ装置と、当該不揮発性メモリ装置へのアクセスを制御する制御回路装置とを有する半導体装置において、前記制御回路装置は、外部から与えられる、第1のアドレスが示す第1領域情報と、前記第1領域情報に対するメモリ容量情報、信頼性レベル情報、書込みメモリセルの間隔情報、境界領域情報、テスト領域情報、モニタリング用セル数情報、エラー検出訂正データサイズ情報、書込み方法選択情報を含む第1のコンフィグレーション情報とを記憶する記憶領域を有することを特徴とする半導体装置。請求項10に記載の半導体装置において、前記第1のコンフィグレーション情報はプログラム可能であることを特徴とする半導体装置。請求項10に記載の半導体装置において、前記制御回路装置は、前記第1のコンフィグレーション情報の一部を利用し、前記不揮発性メモリ装置の前記複数のメモリセルに対する書込み許可領域を決定することを特徴とする半導体装置。請求項12に記載の半導体装置において、前記制御回路装置は、電源が投入された直後に、前記書込み許可領域を決定することを特徴とする半導体装置。請求項10に記載の半導体装置において、前記制御回路装置は、前記第1のアドレスに対して独立に割り当てられる前記不揮発性メモリ装置に対する第2のアドレスが示す第2領域情報と、前記第2領域情報に対するメモリ容量情報、信頼性レベル情報、書込みメモリセルの間隔情報、境界領域情報、テスト領域情報、モニタリング用セル数情報、エラー検出訂正データサイズ情報、書込み方法選択情報を含む第2のコンフィグレーション情報とを記憶する記憶領域を有することを特徴とする半導体装置。請求項14に記載の半導体装置において、前記制御回路装置は、前記第1及び第2のコンフィグレーション情報の一部を利用し、前記第1領域情報と前記第2領域情報のそれぞれに対応する前記不揮発性メモリ装置の前記複数のメモリセルへの書込み許可領域を決定することを特徴とする半導体装置。本発明者らは、本願に先立ち、SSDSolidStateDriveやメモリカードなどのストレージへ利用されているNAND型フラッシュメモリの制御方法について検討した。さらに、発明者らは、カルコゲナイド材料からなる記録層とダイオードを用いた相変化メモリの抵抗値の特性について検討した。以下、検討内容を説明する。[NAND型フラッシュメモリの制御方法に対する検討]4GbitのNAND型フラッシュメモリTC58NVG2S3ETA00は、204864バイトからなるページと、64個のページからなるブロック135168=1310724096バイトと、4096ブロックからなるチップとで構成されている。SSDは、複数のNAND型フラッシュメモリと、これらフラッシュメモリを制御するコントローラとで構成されている。ホストコントローラとSSDは、SATAインターフェースによって接続されている。以下、ホストコントローラからSSDへ1ページ分のデータ書込み命令が生じた場合の書込み動作を説明する。NAND型フラッシュメモリへのデータの書き込みはページ単位で行われ、データの書き込みは以下の手順により実行される。まず、コントローラは、NAND型フラッシュメモリから1ブロック分のデータ135168バイトを読み出す。次に、この1ブロック分のデータ135168バイトが格納されていたメモリ領域のデータを消去する。その後、新たに1ページ分のデータ2112バイトをメモリ領域に書き込む。なお、NAND型フラッシュメモリには、最大消去可能回数ERASEmaxがある。この最大消去可能回数ERASEmaxを超えると、NAND型フラッシュメモリに保存されているデータは保証されなくなり、SSDは寿命を迎える。従って、SSDの寿命を延ばすには、効率の良いデータ消去方法が必要である。しかし、NAND型フラッシュメモリは、データの書込み単位と、データの消去単位が大きく異なっている。NAND型フラッシュメモリは、1ページ分のデータ2112バイトを書き込む際、64倍のデータサイズ135168バイトを消去する必要があり、データ消去方法が非常に非効率的である。このように、NAND型フラッシュメモリを利用したSSDの寿命の改善は困難であることが判明した。さらに、1ページ分のデータ2112バイトを書き込む際、1ブロック分のデータ135168バイトを消去する前に、この1ブロック分のデータを読み出す必要があり、書込み性能が劣化することが判明した。[抵抗変化型不揮発性メモリの制御方法に対する検討]抵抗変化型メモリとして、相変化メモリPhaseChangeMemory、ReRAMResistiveRAMなどが開発されている。これらのメモリには書込み回数の上限値があり、この上限値が抵抗変化型メモリの寿命をきめる。このため、特定のメモリセルへの書き込みが集中すると、その寿命が短くなってしまうことが判明した。また、抵抗変化型メモリはデータを上書きでき、その最小単位は1バイトと小さい。つまり必要なデータサイズ分のみを書き換え可能であることが判明した。そこで、本発明者は、上書き可能な複数のメモリセルを含む不揮発性メモリ装置と、当該不揮発性メモリ装置へのアクセスを制御する制御回路装置とを有する半導体装置において、制御回路装置が以下の機能を有するものを提供する。すなわち、制御回路装置として、外部から与えられる第1の書込みデータの書き込みに使用するメモリセルの物理的な配置が、少なくとも一つの方向に対してNNは自然数個置きになるように、外部から与えられる第1のアドレスとは独立に、不揮発性メモリ装置に対する第2のアドレスの割り当てを設定する機能を有するものを提供する。本発明によれば、第1の書込みデータの書き込み使用されるメモリセルが、少なくとも一つの方向に対して物理的に隣り合わないようにできる。すなわち、データ書込時に発生するジュール熱がメモリセルに与える熱履歴の影響を小さくすることが可能な第2のアドレスを、第1のアドレスとは独立に与えることができる。これにより、高信頼で長寿命の半導体装置を提供することができる。上述した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。以下の実施の形態においては、便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明する。特に明示した場合を除き、それらは互いに無関係ではなく、一方は他方の一部または全部の変形例、応用例、詳細説明、補足説明等の関係にある。また、以下の実施の形態において、要素の数等個数、数値、量、範囲等を含むに言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でもよい。さらに、以下の実施の形態において、その構成要素要素ステップ等も含むは、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数等個数、数値、量、範囲等を含むについても同様である。以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の機能を有する部材には同一または関連する符号を付し、その繰り返しの説明は省略する。また、以下の実施の形態では、特に必要なとき以外は同一または同様な部分の説明を原則として繰り返さない。実施の形態において各ブロックを構成する回路素子は特に制限されないが、公知のCMOS相補型MOSトランジスタ等の集積回路技術によって、単結晶シリコンのような1個の半導体基板上に形成される。さらに、これらのメモリセルには、相変化メモリ、ReRAMResistiveRamdamAccessMemoryのような抵抗性記憶素子を用いるものとする。[各形態例の概要]まず、後述する形態例で採用する技術の概要を説明する。各形態例は、メモリセルが相変化メモリであるものとして説明する。すなわち、複数個の抵抗変化型メモリと、これらのメモリを制御するコントローラから構成されるSSDにおいて、長寿命のSSDを実現するために、書き込み時にコントローラが実行する物理アドレスの割り当て制御技術について説明する。なお、形態例に係るコントローラの制御は、相変化メモリに対する発明者らの以下の考察に基づいている。相変化メモリへの書き込みは、電流により発生するジュール熱の影響を制御することにより、メモリセルの抵抗値を制御する。この相変化メモリへの書き込み時は、書き込むメモリセルに隣接したメモリセルほど、このジュール熱による熱履歴の影響を受けやすく、書き換え動作によって、書き込みを行わない隣接したメモリセルの電気特性に大きな影響をもたらし、抵抗値に大きなバラツキが発生するという問題があることが判明した。また、相変化メモリセルへデータを上書きする場合においては、書き換え後の状態の差異により抵抗値が変動するため、メモリセル間の抵抗バラツキが大きくなり、特性に大きな影響を及ぼすことが判明した。以下の形態例においては、複数の相変化メモリと、これらのメモリを制御するコントローラから構成されるSSDに関し、コントローラから以下の~に示す書き込み方法を実現する高信頼かつ長寿命のSSDを提供することを目的とする。コントローラは、信頼性のレベルに応じ、データの書き込みを許可するメモリセルの物理的な配置を決定し、書き込みを行う。コントローラは、信頼性のレベルに応じ、データの書き込みを禁止するメモリセルの連続した物理的な配置を決定し、書き込みを行う。コントローラは、信頼性のレベルに応じ、モニター用のメモリセルを設ける。コントローラは、信頼性のレベルに応じ、データを圧縮し、メモリセルに書き込みを行う。コントローラから相変化メモリへの書き込み方法は、データの上書きを行うのではなく、相変化メモリセルの状態をアモルファス又は結晶状態のいずれかの状態に一旦設定し消去動作、その後、所望のデータを書き込む書き込み動作。SDDコンフィグレーション情報SDCFGをプログラム可能にし、柔軟に、情報処理システム装置にあわせたメモリモジュールNVMSTR0を構成する。これらの目的を実現するため、実施形態に係るコントローラにおいては、内部レジスタに記憶されている情報に基づいて、データ書込時のジュール熱による熱履歴の影響を受け難くするように、データの書き込みを許可する物理アドレスWPPADを決め、ホストからコントローラに入力される論理アドレスと、この物理アドレスの対応付けを行うアドレスマップADMAPを生成する。さらに、内部レジスタはホストが書き換えることが可能である。コントローラは、相変化メモリへデータを書き込む際、データの書き込みが許可されたアドレスの中で連続したアドレスに書き込む。コントローラは、ホストから受け取った書き込みデータを圧縮した後、相変化メモリへ書き込む。コントローラは、ホストコントローラからのライトリクエストをバッファへ格納し、書込み事前準備が終了した後、相変化メモリへ書き込む。コントローラには、書込み物理アドレステーブルNXPADTBLへ、将来のライトリクエストに備え、事前に書込み物理アドレスを格納する。コントローラは、電源投入直後、アドレスマップADMAP、アドレス変換テーブルLPTBL、物理セグメントテーブルPSEGTBL、物理テーブルPADTBを初期化し、さらに不揮発性メモリ装置および書込み物理アドレステーブルNXPADTBLを初期化する。コントローラは、ライトリクエストのバッファへの格納と、書き込み事前準備と、相変化メモリへの書き込み動作をパイプライン的に処理する。コントローラは、書込み物理アドレステーブルNXPADTBLへ物理アドレスを登録する際は、セグメント毎の無効状態の物理アドレスの書換え回数を比較し、最も少ない書き換え回数を持つセグメントを選択し、そのセグメント内の物理アドレスを順に登録する。コントローラは、書込み物理アドレステーブルNXPADTBLへ物理アドレスを登録する際、物理アドレスの消去回数と、消去回数閾値より小さな消去回数を持つ物理アドレスを選択する。コントローラは、無効物理アドレスの最大消去回数と、有効物理アドレスの最小消去回数の差DIFECを求め、この差DIFECが閾値DERCthより大きい場合は、この差DIFECを小さくするため、無効物理アドレスに関する最大消去回数MXERCの中の最小値MXNERCを持つ物理アドレスDPADのデータを、無効物理アドレスに関する最大消去回数MXERCの中の最小値MXNERCを持つ物理アドレスDPAD1へ移動させる。このコントローラの採用により、データ書込時に発生するジュール熱がメモリセルに与える熱履歴の影響が小さくするように物理アドレスを決めることができる。これにより、高信頼で長寿命のSSDを提供することができる。さらに、ホストからの論理アドレスに対応する物理アドレスをシーケンシャルに割り当てることにより、相変化メモリの物理アドレス毎のデータ消去回数のバラツキを抑えることができ、高信頼で長寿命のSSDを提供できる。さらに、コントローラはライトリクエストのバッファへの格納と、書込み事前準備と、相変化メモリへの書き込み動作をパイプライン的に処理するため、高性能なSSDを提供できる。実施の形態本発明を適用した実施の形態である情報処理システムについて、図2~図35を用いて説明する。図2は、本発明を適用した実施の形態である情報処理装置CPUCHIPとメモリモジュールNVMSTR0とから構成される情報処理システム装置において、その構成の一例を示すブロック図である。図2に示されるように、情報処理装置CPUCHIPは、特に限定しないがメモリモジュールNVMSTR0へ保存されているデータを最小512バイト単位の論理アドレスLADにて管理するホストコントローラである。インターフェース信号HDHIFを通じ、このメモリモジュールNVMSTR0に対してデータの読み出しや書込みを行う。情報処理装置CPUCHIPとメモリモジュールNVMSTR0を接続する信号方式には、シリアルインターフェース信号方式、パラレルインターフェース信号方式、光インターフェース信号方式などがある。いうまでもなく、全ての方式を利用することができる。情報処理装置CPUCHIPとメモリモジュールNVMSTR0を動作させるクロック方式には、コモンクロック方式、ソースシンクロナスクロック方式、エンベデッドクロック方式などがある。いうまでもなく、全てのクロック方式を利用することができる。本実施の形態はエンベデッドクロック方式であり、シリアルインターフェース信号方式による動作の一例を説明する。情報処理装置CPUCHIPからクロック情報が埋め込まれ、シリアルデータへ変換されたリードリクエストRDREQやライトリクエストWTREQなどがインターフェース信号HDHIFを通じてメモリモジュールNVMSTR0へ入力される。リードリクエストRDREQには論理アドレス値LAD、データ読み出し命令RD、セクタカウントSECなどが含まれ、また、ライトリクエストWTREQには論理アドレス値LAD、データ書込み命令WRT、セクタカウントSECおよび書込みデータWDATAなどが含まれる。メモリモジュールNVMSTR0は、不揮発性メモリ装置NVM10からNVM17と、ランダムアクセスメモリRAMと、これら不揮発性メモリ装置およびランダムアクセスメモリを制御する制御回路STRCT0から構成されている。不揮発性メモリ装置NVM10からNVM17は同じ構成および性能を持つ不揮発性メモリ装置である。また、図3に示されるように制御回路STRCT0は、インターフェース回路HOSTIFと、バッファBUF0~BUF3と、不揮発性メモリ装置NVM0と、書込み物理アドレステーブルNXPTBL12と、調停回路ARBと、情報処理回路MANAGERと、不揮発性メモリ装置NVM10からNVM17をそれぞれ直接制御するメモリ制御装置NVCT0からNVCT7と、ランダムアクセスメモリRAMを直接制御するメモリ制御装置RAMCと、MAPREGとで構成される。また、図4に示す制御回路STRCT01は複数の書込み物理アドレステーブルNXPTBL03を装備している点が、図3とは異なるが、それ以外の構成や機能は図3と同等である。図5は、不揮発性メモリ装置NVM10からNVM17として利用されている不揮発性メモリNVMEMの一例を示すブロック図であり、相変化型の不揮発メモリを例に示してある。不揮発性メモリNVMEMはクロック生成回路SYMD、ステータスレジスタSTREG、アドレスおよびコマンドインターフェース回路ADCOMIF、IOバッファIOBUF、制御回路CONTLOGIC、温度センサTHMO、データ制御回路DATACTL、メモリバンクBK0~BK3から構成される。各メモリバンクには、メモリアレイARYxx=0~m、ロウアドレスラッチRADLT、カラムアドレスラッチCADLT、ロウデコーダROWDEC、カラムデコーダCOLDEC、データ選択回路DSW1、データバッファDBUF0およびデータバッファDBUF1が含まれる。各メモリアレイARYxx=0~mには、複数のメモリセルcelと、ビット線選択回路BSWxx=0~m、センスアンプSAxx=0~mおよびライトドライバWDRxx=0~mが含まれる。制御信号CTLは、コマンドラッチイネーブルCLE、チップイネーブル信号CEB、アドレスラッチ信号ALE、ライトイネーブル信号WEB、リードイネーブル信号REB、レディビジー信号RBBから構成される。IO信号は入出力信号であり、コマンド、アドレスおよび書き込みデータが入力され、読み出しデータが出力される。[不揮発性メモリ装置への書き込み動作]図6は、不揮発性メモリ装置NVM1xx=0~7がMバイトのデータを、データバッファDBUF0を介してメモリセルcelへ書き込む際の書き込み動作の例を示している。なお、図6および図7におけるmn等のは×乗算を意味するものである。ロウレベルとなっているコマンドラッチイネーブル信号CLEをハイレベルに駆動し、ハイレベルとなっているチップイネーブル信号CEB及びアドレスラッチイネーブル信号ALEをロウレベルに駆動する。この後、書き込みコマンドW10を入出力線IOxx=0~7を介して入力すると、ライトイネーブル信号WEBの立ち上がりエッジによって書き込みコマンドW10がアドレスコマンドインターフェース回路ADCMDIFへ取り込まれ、解読される。また、コマンドW10には、データバッファDBUF0あるいはDBUF1を指定する情報も含まれており、図6の例ではデータバッファDBUF0を指定している。次に、ハイレベルとなっているコマンドラッチイネーブル信号CLEをロウレベルへ、ロウレベルとなっているアドレスラッチイネーブル信号ALEをハイレベルに夫々駆動して、カラムアドレスを2回CA1、CA2、ロウアドレスを3回RA1、RA2、RA3に分けて順に入力する。これらのアドレスは、ライトイネーブル信号WEBの立ち上がりエッジによって、アドレスコマンドインターフェース回路ADCMDIFへ取り込まれ、解読される。アドレスコマンドインターフェース回路ADCMDIFにてアドレス、コマンドW10を解読した結果、メモリバンクBK0への読み出し命令であることを制御回路CONTLOGICへ伝えると、制御回路CONTLOGICは、メモリバンクBK0からデータを読み出すため、メモリバンクBK0を活性化する。アドレスコマンドインターフェース回路ADCMDIFへ入力されたロウアドレスRA1、RA2、RA3およびカラムアドレスをCA1、CA2は制御回路CONTLOGICを通じて、それぞれ、活性化されたメモリバンクBK0のロウアドレスラッチ回路RADLTへ転送され、カラムアドレスラッチ回路CADLTへ転送される。この書き込み動作は最初に入力されたカラムアドレスから開始される。ロウアドレスラッチ回路RADLTからロウアドレスRA1、RA2、RA3がロウデコーダROWDECへ転送され、ロウデコーダROWDECによってロウアドレスRA1、RA2、RA3に対応したワード線WLnが選択される。次に、カラムアドレスラッチ回路CADLTからカラムアドレスCA1、CA2がカラムデコーダCOLDECへ転送され、解読される。カラムデコーダCOLDECからの解読結果は、各メモリアレイARY0mのビット線選択回路BSW0mへ入力され、メモリアレイ毎に一つのビット線BLが選択され、データ線DT0mを介して書き込みライトドライバWDR0mへ接続される。書き込みドライバWDR0mは、データ線DT0mを介して、図1のような電流パルスによって、選択されたメモリセルcelを低抵抗状態や高抵抗状態にするための電流供給回路である。メモリセルcelを高抵抗状態にする、すなわち記憶情報0を書き込む場合に、データ線DT0nを介して印加するメモリセル電流Icellをリセット動作に必要な値Iresetに制御する。メモリセルcelを低抵抗状態にする、すなわち記憶情報1を書き込む場合に、データ線DT0nを介して印加するメモリセル電流Icellをセット動作に必要な値Isetに制御する。一つのメモリバンクの中に、書き込みドライバWDRは合計m×8個存在するため、一つのメモリバンクの中で、同時にmバイトのメモリセルcelを書き込むことができる。次に、ハイレベルとなっているアドレスラッチイネーブル信号ALEをロウレベルに駆動して、ライトイネーブル信号WEBの立ち上がりエッジに同期して、記憶情報DI~DIが入出力線IOxx=0~7を介して、1バイト分のデータが順次データバッファDBUF0へ入力される。データバッファDBUF0へnバイト分のデータが入力するたびに、n×8個分の書き込みドライバWDRを通じて、nバイト分のデータが書き込まれる。以下に、その動作を示す。先ず、最初のnバイト分のデータの書き込み動作を説明する。データバッファDBUF0へ最初のnバイト分のデータの中で、最初の1バイト分のデータが入力した時点で、書き込みドライバWDRを通じて、カラムアドレス{CA1、CA2}によって選択された最初のnバイト分のメモリセルを低抵抗状態消去:ERS0する。次に、データバッファDBUF0へ最初のnバイト分のデータがすべて入力した時点で、データバッファDBUF0に保持されているデータの中で0のデータのみを書き込みドライバWDRによってメモリセルを高抵抗状態プログラム:PROG1にする。これによって、最初のnバイト分のデータ書き込みが行われる。次に、2番目のnバイト分のデータの書き込み動作を説明する。データバッファDBUF0へ2番目のnバイト分のデータの中で、最初の1バイト分のデータが入力した時点で、書き込みドライバWDRを通じて、カラムアドレス{{CA1、CA2}}によって選択された2番目のnバイト分のメモリセルを低抵抗状態消去:ERS0にする。次に、データバッファDBUF0へ2番目のnバイト分のデータがすべて入力した時点で、データバッファDBUF0に保持されているデータの中で1のデータのみを書き込みドライバWDRによってメモリセルを高抵抗状態プログラム:PROG1にする。これによって、2番目のnバイト分のデータ書き込みが行われる。3番目のnバイト分のデータの書き込み動作も、上記の動作と同様に行われ、その際のカラムアドレスは{{CA1、CA2}}となる。このように、開始カラムアドレス{CA1、CA2}へ順にnの倍数を加算したカラムアドレスによって選択されたnバイト分のメモリセルcelへ消去ERS0とプログラムPROG1が実行される。Mバイトのデータを書き込む際は、消去ERS0とプログラムPROG1がM/n回生じる。また、書き込みコマンドW10にてデータバッファDBUF1を指定した場合は、入出力線IOxx=0~7を介してデータバッファDBUF1へ入力され、データバッファDBUF1に保持されたデータがメモリセルcelへ書き込まれる。以上説明したように不揮発性メモリ装置NVM1xx=0~7はMバイトのデータを書き込む際には、要求されたMバイトデータサイズだけの消去ERS0とプログラムPROG1動作を行う。つまり、消去ERS0のデータサイズとプログラムPROG1のデータサイズは等しいため、余分なアドレスのデータを消去ERS0する必要が無いため、高速な書き込みを実現できる。さらに、この書き込み動作において、上書きはせず、一旦、対象となるメモリセルcelを消去状態とすることで、メモリセルの抵抗値の均一化を図ることができ、安定した書き込みや読み出し動作を実現できる。[不揮発性メモリ装置からの読み出し動作]図7は、不揮発性メモリ装置NVM1xx=0~7から、指定されたデータサイズ分のデータを、データバッファDBUF0を介して読み出す際の読み出し動作の例を示している。ロウレベルとなっているコマンドラッチイネーブル信号CLEをハイレベルに駆動し、ハイレベルとなっているチップイネーブル信号CEB及びアドレスラッチイネーブル信号ALEをロウレベルに駆動する。次に、読み出しコマンドRD4を入出力線IOxx=0~7を介して入力すると、ライトイネーブル信号WEBの立ち上がりエッジによって、第一のセクター読み出しコマンドRD4がアドレスコマンドインターフェース回路ADCOMIFへ取り込まれ、解読される。次に、ハイレベルとなっているコマンドラッチイネーブル信号CLEをロウレベルへ、ロウレベルとなっているアドレスラッチイネーブル信号ALEをハイレベルに夫々駆動して、カラムアドレスを2回CA1、CA2、ロウアドレスを3回RA1、RA2、RA3に分けて順に入力する。これらのアドレスは、ライトイネーブル信号WEBの立ち上がりエッジによって、アドレスコマンドインターフェース回路ADCOMIFへ取り込まれ、解読される。次にロウレベルとなっているコマンドラッチイネーブル信号CLEをハイレベルに駆動し、ハイレベルとなっているチップイネーブル信号CEB及びアドレスラッチイネーブル信号ALEをロウレベルに駆動する。次に、第2のセクターデータ読み出しコマンドRD41を入出力線IOxx=0~7を介して入力すると、ライトイネーブル信号WEBの立ち上がりエッジによって、第2の読み出しコマンドRD41がアドレスコマンドインターフェース回路ADCOMIFへ取り込まれ、解読される。コマンドRD4およびRD41には、データバッファDBUF0あるいはDBUF1を指定する情報も含まれており、図7の例ではデータバッファDBUF0を指定している。アドレスコマンドインターフェース回路ADCOMIFにてアドレス、コマンドRD4およびコマンドRD41を解読した結果、メモリバンクBK0への読み出し命令であることを制御回路CONTLOGICへ伝えると、制御回路CONTLOGICは、メモリバンクBK0からデータを読み出すため、メモリバンクBK0を活性化する。アドレスコマンドインターフェース回路ADCOMIFへ入力されたロウアドレスRA1、RA2、RA3およびカラムアドレスをCA1、CA2は制御回路CONTLOGICを通じて、それぞれ、活性化されたメモリバンクBK0のロウアドレスラッチ回路RADLTへ転送され、カラムアドレスラッチ回路CADLTへ転送される。ロウアドレスラッチ回路RADLTからロウアドレスRA1、RA2、RA3がデコーダROWDECへ転送され、デコーダROWDECによってロウアドレスRA1、RA2、RA3に対応したワード線WLiが選択される。次に、カラムアドレスラッチ回路CADLTからカラムアドレスがCA1、CA2がカラムデコーダCOLDECへ転送され解読される。カラムデコーダCOLDECからの解読結果は、各メモリアレイARY0mのビット線選択回路BSW0mへ入力され、メモリアレイ毎に一つのビット線BLiが選択され、データ線DT0mを介しセンスアンプSA0mへ接続される。これにより、メモリアレイ毎に1ビットのメモリcelが選択されるため、一つのメモリバンクの中で同時に合計ビットのメモリセルcelが選択される。メモリアレイ毎に選択されたメモリセルcelから、データ線をそれぞれのメモリアレイに設けられたセンスアンプSA0mへ電流が流れ、その際の電圧を計測し、参照電圧と比較することにより、メモリセルcelへ記録されたデータm1ビット分のデータDnbyteを検出する。つまり、カラムアドレス{CA1、CA2}によって選択された最初のnバイト=m18分のデータDnbyteがメモリセルcelから同時に検出される。例えばメモリアレイARY0のワード線WLnとのビット線BL0上のメモリセルcelが情報1を記憶しており、低抵抗状態にある場合は、ビット線BL0及びデータ線DT0が充電され、センスアンプSAへその電圧が伝えられ、データ1が検出される。一方、メモリアレイARY1のワード線WLnとのビット線BL0上のメモリセルcelが情報0を記憶しており、高抵抗状態にある場合は、ビット線BL0及びデータ線DT1は、ほぼ接地電圧VSSに保持され、センスアンプSAへその電圧が伝えられ、データ0が検出される。検出された1番目のnバイト=m18分のデータDnbyteはデータ選択回路DSW1を介して、コマンドRD4およびRD41によって指定されたデータバッファDBUF0へ転送される。次のnバイト分のデータは、カラムアドレス{CA1、CA2}によって選択され、データバッファDBUF0へ転送される。このように、メモリセルcelから開始カラムアドレス{CA1、CA2}へ順にnの倍数を加算したカラムアドレスによって選択されたnバイト分のデータが順にデータバッファDBUF0へ転送される。指定したデータサイズがknバイトの時、モリセルアレイARYからデータバッファDBUF0へのデータ転送がk回生じる。メモリセルcelからデータバッファDBUF0へデータ転送が行われている期間は、ハイレベルとなっているレディー/ビジー信号RBBはロウレベルとなる。このデータ転送が終了した時点で、ロウレベルとなっているレディー/ビジー信号RBBがハイレベルとなる。入出力信号IOの信号数が8ビット1バイトの場合、データバッファDBUF0へ格納されたknバイト分のデータは読み出しイネーブル信号REBの立ち下がりエッジに同期して、入出力信号IOからDO~DOの順に出力される。例えば指定されたデータサイズが512バイトで、同時に選択されるメモリセルcelのデータサイズが16バイトで、入出力信号IOの信号数が8ビット1バイトの場合は、メモリセルcelからデータバッファDBUF0へは合計32回=51216のデータ転送が行われ、データバッファDBUF0から入出力信号IOを介してデータを出力する回数は512回となる。また、コマンドRD4およびRD41にてデータバッファDBUF1を指定した場合は、同様に、不揮発性メモリ装置NVM1xx=0~7のメモリアレイから、指定したデータサイズknバイト分のデータが、データバッファDBUF1を介して読み出される。このように、任意のデータサイズを指定した読み出し動作では、必要なサイズ分のデータのみを効率的に読み出しことができるため、高速読み出しが実現できる。[電源投入時の初期シーケンス]図8は、実施例に係る情報処理システム装置の電源投入時の初期シーケンス例を示す。図8のaは、制御回路STRCT0内の不揮発性メモリNVM0へ格納されているSDDコンフィグレーション情報SDCFGを利用した場合における電源投入時の初期シーケンスを示す一例である。図8のbは、情報処理装置CPUCHIPから送信されたSDDコンフィグレーション情報SDCFGを利用した場合における電源投入時の初期シーケンスを示す一例である。先ず、図8のaに示す初期シーケンスを以下に説明する。T1の期間PwOnで情報処理装置CPUCHIPと、メモリモジュールNVMSTR0内の不揮発性メモリ装置NVM10からNVM17と、ランダムアクセスメモリRAMと、制御回路STRCT0へ電源投入を行い、T2の期間RSTでリセットを行う。リセットの方法は特に限定しないが、それぞれの内蔵回路で自動的にリセットを行う方法でも、外部にリセット端子を有し、このリセット信号によってリセット動作を行う方法でも、情報処理装置CPUCHIPからインターフェース信号HDHIFを通じて、リセット命令を制御回路STRCT0へ入力し、リセットを行う方法としても良い。T2のリセット期間Resetでは、情報処理装置CPUCHIP、制御回路STRCT0、不揮発性メモリ装置NVM10からNVM17、ランダムアクセスメモリRAMと内部状態を初期設定する。制御回路STRCT0は、ランダムアクセスメモリRAMへ格納されているアドレス範囲マップADMAP、アドレス変換テーブルLPTBL、物理セグメントテーブルPSEGTBL1、物理セグメントテーブルPSEGTBL2、物理アドレステーブルPADTBを初期化し、さらに不揮発性メモリ装置および書込み物理アドレステーブルNXPADTBLを初期化する。T2の期間が終了した後のT3の期間MAPでは、制御回路STRCT0はの不揮発性メモリNVM0へ格納されているSDDコンフィグレーション情報SDCFGを読み出し、レジスタMAPREGへ転送する。次に、レジスタMAPREG内のSSDコンフィグレーション情報SDCFGを読み出し、このSSDコンフィグレーション情報SDCFGを利用し、アドレスマップ範囲ADMAPを生成し、ランダムアクセスメモリRAMへ格納する。さらに、制御回路STRCT0は、レジスタMAPREG内のSSDコンフィグレーション情報SDCFGの中の論理アドレス領域LRNG情報が、論理アドレス領域LRNG1とLRNG2に分かれていれば、これを認識し、書込み物理アドレステーブルNXPADTBL内を、論理アドレス領域LRNG1用の書込み物理アドレステーブルNXPADTBL1と、論理アドレス領域LRNG2用の書込み物理アドレステーブルNXPADTBL2とに切り分ける。特に限定しないが、書込み物理アドレステーブルNXPADTBLが0エントリー目からN1エントリー目までのN個分のエントリーで構成されている場合、0エントリー目からN21エントリー目のN2個分を書込み物理アドレステーブルNXPADTBL1とし、N2エントリー目からNエントリー目の、残りのN2個分を書込み物理アドレステーブルNXPADTBL2とすることもできる。T3の期間が終了した後のT4の期間SetUpでは、情報処理装置CPUCHIPは制御回路STRCT0内の不揮発性メモリNVM0へ格納されているブートプログラムを読み出し、情報処理装置CPUCHIPを立ち上げる。T4の期間が終了した後のT5の期間Idle以降は、メモリモジュールNVMSTR0はアイドル状態となり、情報処理装置CPUCHIPからのリクエストを待つ状態となる。次に、図8のに示す初期シーケンスを説明する。T11の期間PwOnと、T21の期間では、それぞれ、図8ののT1の期間及びT2の期間と同様の動作を行う。T21の期間が終了した後のT31の期間H2Dでは、情報処理装置CPUCHIPはメモリモジュールNVMSTR0へSSDコンフィグレーション情報SDCFGを送信すると、制御回路STRCT0は、このSSDコンフィグレーション情報SDCFGを不揮発性メモリNVM0格納する。T31の期間が終了した後のT41の期間MAP、T51の期間SetUp、T61の期間Idleでは、それぞれ、図8ののT1の期間及びT2の期間と同様の動作を行う。このように、図8のに示したように、SDDコンフィグレーション情報SDCFGがメモリモジュールNVMSTR0へ予めプログラムされていれば、高速に電源投入時の初期シーケンスを実行することができる。また、図8のに示したように、SDDコンフィグレーション情報SDCFGを情報処理装置CPUCHIPからメモリモジュールNVMSTR0へプログラムすることにより、実施形態に係る情報処理システム装置に、適切なメモリモジュールNVMSTR0を構成することができる。[物理アドレステーブル]図9は、ランダムアクセスメモリRAMへ格納されている物理アドレステーブルPADTBLを示している。物理アドレステーブルPADTBLは、物理アドレスPADと、この物理アドレスに対応した物理アドレスの有効フラグPVLDと消去回数PERCから構成されランダムアクセスメモリRAMへ格納されている。有効フラグPVLD値が1の場合は、対応する物理アドレスPADが有効であることを示し、0の場合は無効であることを示す。また、情報処理回路MANAGERは、物理アドレスPADが00000000~027FFFFFまでを物理アドレス領域PRNG1として、物理アドレスPADが02800000~07FFFFFFまでを物理アドレス領域PRNG2として認識し、物理アドレステーブルPADTBLを管理する。また、特に限定しないが物理アドレスPADは、物理セグメントアドレスSGADと、物理アドレスPPADPAD150とから構成される。[物理セグメントテーブル]図10は、ランダムアクセスメモリRAMへ格納されている物理セグメントテーブルPSEGTBL1およびPSEGTBL2を示している。図10のは無効物理アドレスに関する物理セグメントテーブルPSEGTBL1を示し、図10のは有効物理アドレスに関する物理セグメントテーブルPSEGTBL2を示している。特に限定しないが、物理アドレスPADの上位PAD31:16は、物理セグメントアドレスSGADを示す。特に限定しないが1つの物理アドレスのメインデータサイズは512バイトで、1セグメントのメインデータサイズは65536個の物理アドレスが集まって32Mバイトとなる。まず、図10のを説明する。物理セグメントテーブルPSEGTBL1は、物理セグメントアドレスSGADと、この物理セグメントアドレスSGAD内の無効物理アドレス総数TNIPAと、セグメントアドレスSGAD内の無効物理アドレスの中で最大消去回数MXERCを持つ無効物理アドレスMXIPADと、最大消去回数MXERCと、セグメントアドレスSGAD内の無効物理アドレスの中で最小消去回数MNERCを持つ無効物理アドレスMNIPADと、最小消去回数MNERCから構成され、ランダムアクセスメモリRAMへ格納されている。次に、図10のを説明する。物理セグメントテーブルPSEGTBL2は、物理セグメントアドレスSGADと、この物理セグメントアドレスSGAD内の有効物理アドレス総数TNVPAGEと、セグメントアドレスSGAD内の有効物理アドレスの中で最大消去回数MXERCを持つ有効物理アドレスMXVPADと、最大消去回数MXERCと、セグメントアドレスSGAD内の有効物理アドレスの中で最小消去回数MNERCを持つ有効物理アドレスMNVPADと、最小消去回数MNERCから構成され、ランダムアクセスメモリRAMへ格納されている。[書込み物理アドレステーブル]図11は、制御回路STRCT0に格納されている書込み物理アドレステーブルNXPADTBLを示す。図11のには、装置使用開始時の初期状態の書込み物理アドレステーブルNXPADTBLの一例を示す。また、図11のには、内容の更新状態の書込み物理アドレステーブルNXPADTBLの一例を示す。書込み物理アドレステーブルNXPADTBLは、不揮発性メモリ装置NVM10からNVM17へデータを書き込む際の不揮発性メモリ装置の物理アドレスPADを決めるテーブルであり、複数N個の物理アドレスに対応している。物理アドレステーブルNXPADTBLは、エントリー番号ENUMと、物理アドレスNXPADと、この物理アドレスNXPADに対応した物理アドレスの有効フラグNXPVLDと、消去回数NXPERCから構成される。制御回路STRCT0は、SSDコンフィグレーション情報SDCFGの中の論理アドレス領域LRNG情報が、論理アドレス領域LRNG1とLRNG2に分割されていることを認識し、書込み物理アドレステーブルNXPADTBLの中で、エントリー番号0からN21のN2個分を書込み物理アドレステーブルNXPADTBL1とし、エントリー番号N2からNまでの残りのN2個分を書込み物理アドレステーブルNXPADTBL2として管理する。また、論理アドレス領域LRNG1への書き込み要求に対しては、書込み物理アドレステーブルNXPADTBL1を利用し、また、論理アドレス領域LRNG2への書き込み要求に対しては、書込み物理アドレステーブルNXPADTBL2を利用し、不揮発性メモリ装置NVM10からNVM17へデータを書き込む。エントリー番号ENUMは、複数N組のNXPADにおけるN値0番~N1番を示し、このN値は書込み優先度登録数を示す。論理アドレス領域LRNG1への書き込み要求に対しては、書込み物理アドレステーブルNXPADTBL1の中のN値が小さい順から優先で使用され、論理アドレス領域LRNG2への書き込み要求に対しては書込み物理アドレステーブルNXPADTBL2の中のN値が小さい順から優先で使用される。また、有効フラグNXPVLDの値が0の場合は、対象となる物理アドレスは無効であることを意味し、1の場合は対象となる物理アドレスは有効であることを意味する。図11ので、N=32の場合について、書込み物理アドレステーブルNXPADTBLの初期設定例えば図8のT1からT3について説明する。エントリー番号ENUM=0番から1番までは、順に、論理アドレス領域LRNG1へ対応している物理アドレス領域PRNG1の中の物理アドレスNXPADの00000000番地から0000001E番地まで1つ置きの物理アドレスNXPADが設定される。エントリー番号ENUM=番から番までは、順に、論理アドレス領域LRNG2へ対応している物理アドレス領域PRNG2の中の物理アドレスNXPADの02800000番地から0280000Fまで、順に、物理アドレスNXPADが設定される。そして、これらの物理アドレスNXPAに対応する有効フラグNXPVLD及び消去回数NXPERCはすべて0に設定される。書込み物理アドレステーブルNXPADTBLが図11ので示す状態である際に、情報処理装置CPUCHIPからインターフェース信号HDHIFを通じ、このメモリモジュールNVMSTR0の論理アドレス領域LRNG1へ、セクタカウントSEC値1512バイトのライトリクエストWTREQがN2回入力した場合、それぞれのライトリクエストWTREQに含まれるデータは物理アドレスPADの00000000番地から0000001E番地まで1つ置きに不揮発性メモリ装置へ書き込まれる。さらに、情報処理装置CPUCHIPからインターフェース信号HDHIFを通じ、このメモリモジュールNVMSTR0の論理アドレス領域LRNG2へセクタカウントSEC値1512バイトのライトリクエストWTREQがN2回入力した場合、それぞれのライトリクエストWTREQに含まれるデータは物理アドレスPADの02800000番地から0280000F番地まで、順に、不揮発性メモリ装置へ書き込まれる。また、別の動作例を挙げれば以下になる。情報処理装置CPUCHIPからインターフェース信号HDHIFを通じ、このメモリモジュールNVMSTR0の論理アドレス領域LRNG1へ、セクタカウントSEC値168KバイトのライトリクエストWTREQが1回入力した場合、このライトリクエストWTREQに含まれるデータは512バイト毎の物理アドレスPADへ分解され、物理アドレスPADの00000000番地から0000001E番地まで1つ置きに不揮発性メモリ装置へ書き込まれる。報処理装置CPUCHIPからインターフェース信号HDHIFを通じて、このメモリモジュールNVMSTR0の論理アドレス領域LRNG2へ、セクタカウントSEC値168KバイトのライトリクエストWTREQが1回入力した場合、このライトリクエストWTREQに含まれるデータは512バイト毎の物理アドレスPADへ分解され、物理アドレスPADの02800000番地から0280000F番地まで、順に、不揮発性メモリ装置へ書き込まれる。[アドレス変換テーブルの初期設定値例と不揮発性メモリ装置の初期設定値例]図12のに、電源投入直後時間T0に制御回路STRCT0が設定するアドレス変換テーブルLPTBLの初期設定状態例を示し、図12のに、電源投入直後に制御回路STRCT0が設定する不揮発性メモリ装置の初期設定状態例を示す。アドレス変換テーブルLPTBLの全論理アドレスLADに対する全物理アドレスCPADと物理アドレス有効フラグCVFは0に初期設定される。また、不揮発性メモリ装置の全データDATAと、全論理アドレスLADと、全データ有効フラグDVFは0に初期設定される。[SSDコンフィグレーション情報]図13には、STRCT0内の不揮発性メモリNVM0へ格納されているSSDコンフィグレーション情報SDCFGの一例を示す。図中、LRNGは論理アドレス領域であり、セクタ単位512Bの論理アドレスLADでの範囲を示す。CAPは論理アドレス領域LRNGにて定められた範囲の論理データの容量を、RELLVLは信頼性のレベルを示す。論理アドレス領域LRNG1は、16進数で00000000~007FFFFFの論理アドレスLAD空間を占め、4Gバイトの容量を持つ。また、論理アドレス領域LRNG2は、16進数で00800000~037FFFFFの論理アドレス空間を占め、32Gバイトの大きさをもつ。INTVLDCELLは、メインデータ領域内のメモリセルの中で、幾つ置きにメモリセルの書込みを許可するかを示している。INTVLDCELLが1であれば、物理的なメモリセルの位置に対して、1個置きに書込みができることを意味し、INTVLDCELLが0であれば、0個置きに、つまり、物理的な位置が隣接するメモリセルへ書込みできることを意味する。INTVLRCELLは、冗長データ領域内のメモリセルの中で、幾つ置きにメモリセルの書込みを許可するかを示している。INTVLRCELLが1であれば、1個置きにメモリセルへの書込みを許可し、INTVLRCELLが0であれば、0個置きに、つまり、全メモリセルの書込みを許可することを意味する。BODRCELLは、連続して書込みを禁止するメモリセルの領域BDRを定めるために必要な情報である。BODRCELLが3の場合は、3つのワード線数分のメモリセル領域に対して書込みを禁止する。TESTCELL情報は、テスティングを行うための連続したメモリセル領域TAREAを定めるために必要な情報である。TESTCELLが5の場合は、メモリセル領域TAREAの大きさは、5つのビット線数メモリセル容量となる。MONICELLは、メモリセルの抵抗値や、メモリセルへ書き込まれたデータ値1あるいは0などをモニタリングするためのメモリセルの数を示す。MONICELLが1の場合、テスティングを行うためのメモリセル領域TAREA内に1ビット分のメモリセルをモニタリングするためのメモリセルとする。メモリセルがリセット状態の場合のメモリセルの値を0とし、セット状態の場合のメモリセルの値を1とした場合、制御回路STRCT0は、先ず、電源投入時の初期シーケンスの終了直後に、メモリセル領域TAREA内のメモリセルをセット状態とする。つまりメモリセルは1を保持する。次に、MONICELLにて指定されたモニタリングするためのメモリセル図16で示すMONI1およびMONI2などへ、0のデータを書込む、つまりリセット状態とする。次に、制御回路STRCT0は、定期的に、このモニタリングするためのメモリセルからデータを読み出す。制御回路STRCT0は読み出したデータが0であるかをチェックする。もし、読み出したデータが0でなければ、SSDコンフィグレーション情報SDCFG内のMONICELLに対応している論理アドレス領域LRNG内のメモリセルの信頼性が低下している可能性があると判定する。次に、制御回路STRCT0は、再度メモリセル領域TAREA内のメモリセルをセット状態とし、MONICELLにて指定されたモニタリングするためのメモリセルをリセット状態とする。さらに、再度、制御回路STRCT0は、定期的に、このモニタリングするためのメモリセルからデータを読み出し、読み出したデータが0であるかをチェックする。制御回路STRCT0は、モニタリングするためのメモリセルから読み出したデータが0ではなかった場合の回数もカウントしており、この回数を利用することで、メモリセルの信頼性を把握でき、メモリモジュールNVMSTR0の信頼度をある一定レベルに保たせることができる。また、制御回路STRCT0は、モニタリングするためのメモリセルから読み出したデータが0ではなかった場合、信頼性低下の可能性を示すワーニング情報と、SSDコンフィグレーション情報SDCFG内のMONICELLに対応している論理アドレス領域LRNGの値を情報処理装置CPUCHIPへ送信することもできる。情報処理装置CPUCHIPは、制御回路STRCT0から受け取った論理アドレス領域LRNGの値とワーニング情報および、その受け取った回数を利用し、メモリモジュールNVMSTR0の信頼度を把握し、メモリモジュールNVMSTR0の信頼度をある一定レベルに保たせることができる。このように、MONICELLにて指定されたモニタリングするためのメモリセルを設け、このメモリセルのデータを定期的に読み出すことにより、メモリモジュールNVMSTR0の信頼度を把握できるため、高信頼でメモリモジュールNVMSTR0を動作できる。ECCFLGはECCを行う際のデータの単位を示している。特に限定しないが、ECCFLGが0の場合は、512Bデータを単位としてECCを行い、ECCFLGが1の場合は、2048Bデータを単位としてECCを行い、ECCFLGが2の場合は、4096Bデータを単位としてECCを行い、ECCFLGが3の場合は、8192Bデータを単位としてECCを行うことを示し、ECCFLGが4の場合は、16384Bデータを単位としてECCを行うことを示し、ECCFLGが5の場合は、32Bデータを単位としてECCを行うことを示し、ECCFLGが6の場合は、64Bデータを単位としてECCを行うことを示し、ECCFLGが7の場合は、128Bデータを単位としてECCを行うことを示し、ECCFLGが8の場合は、256Bデータを単位としてECCを行うことを示している。記憶装置には、ハードディスク、SSDSolidStateDrive、キャッシュメモリ及びメインメモリなど様々な記憶装置があり、データの読み出しや書込みの単位が異なる。例えばハードディスクやSSDなどのストレージでは、512B以上のデータ単位で読み出しや書き込みが行われる。また、キャッシュメモリでは、そのラインサイズ単位32Bや64Bなどでメインメモリとの間でデータ読み出しやデータ書込みが行われる。このように、データ単位が異なる場合においても、ECCFLGによって、異なるデータ単位へECCを行うことができ、メモリモジュールNVMSTR0への要求に対して柔軟に対応できる。ライト方法選択情報WRTFLGは、書込み時の書込み方法を示している。特に限定しないが、ライト方法選択情報WRTFLGが0の場合は通常方法にて書き込みを行い、WRTFLGが1の場合は反転データを書込み、ライト方法選択情報WRTFLGが2の場合は、データの書き込み前に一旦データを読み出し、その後、データを書込むことを示す。TDCL情報は、メインデータ領域内のメモリセルの中で、余分に設けるメモリセルの領域DTMPATREAを定めるために必要な情報である。TDCLが4の場合は、DTMPATREAは4つのビット線数分のメモリセル領域と、4つのワード線数分のメモリセル領域のいずれかの領域に属するメモリセルの領域を示す。TRCL情報は、冗長データ領域内のメモリセルの中で、余分に設けるメモリセルの領域RTMPATREAを定めるために必要な情報である。TRCLが4の場合は、RTMPATREAは4つのビット線数分のメモリセル領域と、4つのワード線数分のメモリセル領域のいずれかの領域に属するメモリセルの領域を示す。DTMPATREAとRTMPATREAが存在することにより、メモリモジュールNVMSTR0の書換え寿命を延ばすことができる。[書き込みデータの構成例]以下、DTMPATREAを利用した書き換え方法を説明するが、RTMPATREAを利用した書換え方法にも適用できることは言うまでも無い。SSDコンフィグレーション情報SDCFGはプログラム可能であり、メモリモジュールNVMSTR0が要求される機能、性能及び信頼性のレベルに合わせて柔軟に対応することができる。図14は、制御回路STRCT0が不揮発性メモリ装置NVM10からNVM17の中へ書き込むデータPAGEDATAの構成を示している。特に限定しないが、データPAGEDATAはメインデータDArea512バイトと、冗長データRArea16バイトから構成される。冗長データRAreaには、データ反転フラグINVFLG、ライトフラグWRITFLG、ECCフラグECCFLG、ECCコードECC、ステート情報STATE、信頼性レベル情報RELIABLE、バッドブロック情報BADBLK、モニターセル情報MONITOR、予備領域RSVが含まれる。データ反転フラグINVFLGは、制御回路STRCT0が不揮発性メモリ装置NVM10からNVM17の中へ書き込んだメインデータDAreaが元の書き込みデータの各ビットを反転させたデータかどうかを示す。データ反転フラグINVFLGに0が書き込まれた場合、元のメインデータの各ビットを反転させずにデータが書き込まれたことを示し、1が書き込まれた場合、元のメインデータの各ビットを反転させたデータが書き込まれたことを示す。WRITFLGは、制御回路STRCT0が不揮発性メモリ装置NVM10からNVM17の中へメインデータDAreaを書込む際に実行した書込み方法を示している。特に限定しないが、WRITFLGへ0が書き込まれた場合、通常方法にてメインデータDAeaが書き込まれたことを示し、WRTFLGへ1が書き込まれた場合、元のメインデータの各ビットを反転させたデータが書き込まれたことを示す。WRTFLGへ2が書き込まれた場合、データを書き込む前にデータを一旦読み出し、その後、書き換える必要のあるデータのみが書き込まれたことを示す。ECCFLGは、制御回路STRCT0が不揮発性メモリ装置NVM10からNVM17の中へメインデータDAreaを書込む際に、どの程度のメインデータDAreaのサイズに対して、ECCコードを生成したかを示している。特に限定しないが、ECCFLGへ0が書き込まれた場合、512バイトのデータサイズに対してコードを生成したことを示し、ECCFLGへ1が書き込まれた場合、1024バイトのデータサイズに対してコードを生成したことを示す。ECCFLGへ2が書き込まれた場合、2048バイトのデータサイズに対してコードを生成したことを示し、ECCFLGへ3が書き込まれた場合、32バイトのデータサイズに対してコードを生成したことを示す。ECCコードECCは、メインデータDAreaのエラーを検出し修正するために必要なデータである。ECCは、制御回路STRCT0が不揮発性メモリ装置NVM10からNVM17の中へメインデータDAreaを書込む際に、制御回路STRCT0によってメインデータDAreaに対応して生成され、冗長データRAreaへ書き込まれる。ステート情報STATEは、不揮発性メモリ装置NVM10からNVM17の中へ書き込まれたメインデータDAreaが、有効状態か、無効状態か、消去状態かを示す。特に限定しないが、ステート情報STATEへ0が書き込まれた場合、メインデータDAreaは無効状態であることを示し、ステート情報STATEへ1が書き込まれた場合、メインデータDAreaは有効状態であることを示し、ステート情報STATEへ3が書き込まれた場合、メインデータDAreaは消去状態であることを示す。信頼性レベル情報RELIABLEは、不揮発性メモリ装置NVM10からNVM17の中へ書き込まれたメインデータDAreaの信頼性レベルを示す。特に限定しないが、信頼性レベル情報RELIABLEの数値が高いほど、メインデータDAreaの信頼性レベルが高いことを示す。信頼性レベル情報RELIABLEへ0が書き込まれた場合、メインデータDAreaの信頼性レベルは標準であることを示し、信頼性レベル情報RELIABLEへ1が書き込まれた場合、メインデータDAreaの信頼性レベルは高信頼であることを示す。信頼性レベル情報RELIABLEへ2が書き込まれた場合、メインデータDAreaの信頼性レベルはより高信頼であることを示す。モニターセル情報MONITORは、不揮発性メモリ装置NVM10からNVM17の中へ書き込まれたメインデータDAreaの中にモニターセルが含まれているかどうかを示す。モニターセル情報MONITORへ0が書き込まれた場合、メインデータDAreaの中にモニターセルが含まれていないことを示し、1が書き込まれた場合、メインデータDAreaの中にモニターセルが含まれていることを示す。バッドブロック情報BADBLKは、不揮発性メモリ装置NVM10からNVM17の中へ書き込まれたメインデータDAreaが利用可能かどうかを示す。特に限定しないが、バッドブロック情報BADBLKへ0が書き込まれた場合、メインデータDAreaは利用可能であり、1が書き込まれた場合、メインデータDAreaは利用不可能であることを示す。ECCによるエラー訂正が可能である場合、バッドブロック情報BADBLKは0となり、エラー訂正が不可能である場合、バッドブロック情報BADBLKは1となる。予備領域RSVは、制御回路STRCT0が自由に定義できる領域として存在する。[書き込み可能なメモリセルの配置例]図15は、制御回路STRCT0が図13のに示すSSDコンフィグレーション情報を利用して生成し、ランダムアクセスメモリRAMへ格納したアドレスマップ範囲ADMAPの一例を示す。また、図16は、図13のaに示すSSDコンフィグレーション情報と図15に示すアドレスマップ範囲ADMAPとを利用して制御回路STRCT0が定めたデータの書込み対象としての不揮発性メモリ装置内の一つのメモリセルアレイARYにおける書き込み可能なメモリセルの配置例を示す。図16では、ワード線WL0~WLiとビット線BL0~BLjとの交点がメモリセルを表している。また、図16では、物理アドレス領域PRNG1内のワード線WL0~WLm内の偶数番目のワード線WLnと、ビット線BL0~BLj内の偶数番目のビット線BLmとの交点を示す◎は、データの書込みが行われる第1書込み許可メモリセルを示す。ワード線WL0~WLm内の偶数番目のワード線WLnと、ビット線BL0~BLj内の奇数番目のビット線BLmとの交点を示す○は、データの書込みが行われる第2書込み許可メモリセルを示す。ワード線WL0~WLm内の奇数番目のワード線WLnと、ビット線BL0~BLj内の偶数番目のビット線BLmとの交点を示す○は、データの書込みが行われる第3書込み許可メモリセルを示す。ワード線WL0~WLm内の奇数番目のワード線WLnと、ビット線BL0~BLj内の奇数番目のビット線BLmとの交点を示す○は、データの書込みが行われる第4書込み許可メモリセルを示す。また、太線で示す□はモニタリング用のメモリセルを示す。また、物理アドレス領域PRNG2内のワード線WLm4~WLiとビット線BL0~BLjとの交点を示す◎は、データの書込みが行われる第1書込み許可メモリセルを示す。図16における書込み禁止領域BDRは、ワード線WLm1からWLm3に接続されるメモリセル領域で3×ビット線数BLj1分のメモリセル含む。SSDコンフィグレーション情報のBODRCELL情報値3を利用し、制御回路STRCT0が生成したアドレスマップ範囲ADMAP情報により、この書込み禁止領域BDRが定められている。書込み禁止領域BDRは、物理アドレス領域PRNG1とPRNG2の分離を行い、データ書込時にメモリセルが受けるジュール熱の熱履歴の影響をより小さくするための領域であり、図13のSSDコンフィグレーション情報SDCFG中のBODRCELLの値により決まる。また、図16におけるテスティング領域TAREAは、ビット線BLn1からBLn5に接続されるメモリセル領域を示し、5×ワード線数WLi1分のメモリセルを含む。SSDコンフィグレーション情報のTESTCEL情報値5を利用し、制御回路STRCT0が生成したアドレスマップ範囲ADMAP情報により、テスティング領域TAREAが定められている。テスティング領域TAREAには、2つのモニタリング用のメモリセルMONI1およびMONI2が存在する。図15のLADは、情報処理装置CPUCHIPからメモリモジュールNVMSTR0へ入力される512バイトデータを単位とした論理アドレスである。また、PADは物理アドレスであり、制御回路STRCT0から不揮発性メモリ装置NVM10からNVM17へ入力されるアドレスである。この形態例の場合、PADは、512バイトのメインデータDAreaと16バイト冗長データRAreaの和を単位とした物理アドレスで与えられる。制御回路STRCT0回路は、論理アドレスLADを物理アドレスPADへ変換し、不揮発性メモリ装置NVM10からNVM17へデータを書き込む。論理アドレス領域LRNG1は、16進数で00000000~007FFFFFの論理アドレスLAD空間を占め、4Gバイトの容量を持つ。また論理アドレス領域LRNG2は、16進数で00800000~037FFFFFの論理アドレス空間を占め、32Gバイトの大きさをもつ。論理アドレス領域LRNG1へ対応する物理アドレス領域PRNG1は、16進数で00000000~027FFFFFの物理アドレスPAD空間を持っている。この物理アドレス領域PRNG1に対応する物理アドレスPAD空間内へ存在する全メモリセルの容量は、メインデータDAreaが20Gバイトで、冗長データRAreaが640Mバイトである。物理アドレスPADは、特に限定しないが、上位ビットからバンクアドレスBKAD、ロウアドレスROWADワード線WLアドレス、カラムアドレスCOLAD、チップアドレスCHIPADにて構成される。物理アドレス領域PRNG1の物理アドレスPADに対応する不揮発性メモリ装置のアドレスは、上位ビットからバンクアドレスBKAD3~BKAD0、ロウアドレスROWADm~ROWAD0ワード線WLm~WL0、カラムアドレスCOLADi~COLADn6ビット線BLi~BLn6及びカラムアドレスCOLADi~COLADnビット線BLn~BL0、チップアドレスCHIPAD7からCHIPAD0にて構成される。論理アドレス領域LRNG2へ対応する物理アドレス領域PRNG2は、16進数で02800000~0F7FFFFFの物理アドレスPAD空間を持っている。この物理アドレス領域PRNG2に対応する物理アドレスPAD空間内へ存在する全メモリセルの容量はメインデータDAreaが44Gバイトで、冗長データRAreaが1384Mバイトである。物理アドレスPADは、特に限定しないが、上位ビットからバンクアドレスBKAD、ロウアドレスROWADワード線WLアドレス、カラムアドレスCOLAD、チップアドレスCHIPADにて構成される。物理アドレス領域PRNG2の物理アドレスPADに対応する不揮発性メモリ装置のアドレスは、上位ビットからバンクアドレスBKAD3~BKAD0、ロウアドレスROWADi~ROWADm4ワード線WLi~WLm4、カラムアドレスCOLADi~COLADn6ビット線BLi~BLn6及びカラムアドレスCOLADi~COLADnビット線BLn~BL0、チップアドレスCHIPAD7からCHIPAD0にて構成されている。図16にて、図13ののSSDコンフィグレーション情報SDCFG及び図15のアドレスマップ範囲ADMAPによる物理アドレス領域PRNG1及び物理アドレス領域PRNG2に対応するメモリセルの配置を示せば以下となる。図16で、物理アドレス領域PRNG1へは、ワード線WL0からWLmに接続されているメモリセルのうち、テスティング領域TAREAに定められたメモリセルビット線BLn1からBLn5を除いたメモリセル領域が対応している。また、SSDコンフィグレーション情報の中で論理アドレス領域LRNG1のINTVLDCELL情報が1図13であることから、論理アドレス領域LRNG1に対応する物理アドレス領域PRNG1内のメモリセルに対して1個置きに書込む許可を与えている。より具体的には、ワード線WL0からWLmの中で、1個置きに選択されるワード線と、ビット線BL0~BLnおよびBLn6~BLjの中で1個置きに選択されるビット線の交点に位置するメモリセル◎へ書き込みが行われる。また、物理アドレス領域PRNG1への書込み方法の一例を示せば以下となる。まず、物理アドレス領域PRNG1の◎で示されている第1書込み許可メモリセルに対して書き込みが行われる。次に、第1書込み許可メモリセルへの書込み回数がその上限値へ近づいた場合、第1書込み許可メモリセルから、第2書込み許可メモリセルへ書き込みを行う。次に、第2書込み許可メモリセルへの書込み回数がその上限値へ近づいた場合、第2書込み許可メモリセルから第3書込み許可メモリセルへ書き込みを行う。次に、第3書込み許可メモリセルへの書込み回数がその上限値へ近づいた場合、第3書込み許可メモリセルから第4書込み許可メモリセルへ書き込みを行う。このように書込みを制御する行うことにより、物理アドレス領域PRNG1内の全メモリセルに対して1個置きにデータを書き込むことができる。このため、データ書込時にメモリセルが受けるジュール熱の熱履歴の影響をより小さくし、高信頼化を実現できる。また、物理アドレス領域PRNG1内の全メモリセルの総書込み回数まで書き込みが可能となり、長寿命化を実現できる。図17には、図16で説明した物理アドレス領域PRNG1への書込み方法において、物理アドレス領域PRNG1内の第1書込み許可メモリセルに、データを書きこんだ時点での不揮発性メモリ装置内のメモリセルアレイARYの一例を示す。●がデータを書き込んだメモリセルを示す。この図が示すように、物理アドレス領域PRNG1内のワード線WL0からWLmの中で1個置きに選択されるワード線と、ビット線BL0~BLn及びBLn6~BLjの中で1個置きに選択されるビット線の交点に位置するメモリセルへ書き込みが行われたことが分かる。図16の場合、物理アドレス領域PRNG2にはワード線WLm4からWLiに接続されているメモリセルのうちテスティング領域TAREAに定められたメモリセルビット線BLn1からBLn5を除いたメモリセル領域が対応している。また、SSDコンフィグレーション情報の中で、論理アドレス領域LRNG2のINTVLDCELL情報が0であることから、論理アドレス領域LRNG2に対応する物理アドレス領域PRNG2内の全メモリセルへ書込む許可を与えている。そのため、物理アドレス領域PRNG2の◎で示されている第1書込み許可メモリセルに対して書き込みが行われる。より具体的には、選択されたワード線WLm4からWLiと、ビット線BL0~BLn及びBLn6~BLjが選択された交点に位置するメモリセルへ書き込みが行われる。物理アドレス領域PRNG2に対応する物理アドレスPAD空間内へ存在する全メモリセルの容量は44Gバイト1384Mバイトある。図18には、図16で説明した物理アドレス領域PRNG2への書込み方法において、物理アドレス領域PRNG2内の第1書込み許可メモリセルに1のビットデータを書き込んだ際の不揮発性メモリ装置内のメモリセルアレイARYの一例を示す。●がデータを書き込んだメモリセルを示す。この図が示すように、物理アドレス領域PRNG2内の全メモリセルへ書き込みが行われたことが分かる。以上説明したように、物理アドレス領域PRNG1のメモリセルに対して1個置きに書き込む許可を与え、データを書き込むことにより、物理アドレス領域PRNG1に対するデータ書込時にメモリセルが受けるジュール熱の熱履歴の影響を小さくでき、高信頼で長寿命のメモリモジュールNVMSTR0を提供できる。また、図13に示すSSDコンフィグレーション情報SDCFG内のINTVLDCELLの値を2に設定すると、メモリセルに対して2個置きに書込む許可を与えデータを書き込むことができる。この場合、データ書込時にメモリセルが受けるジュール熱の熱履歴の影響を、1個置きの場合に比してより小さくでき、高信頼で長寿命のメモリモジュールNVMSTR0を提供することができる。以上説明したように、SSDコンフィグレーション情報SDCFGはプログラム可能であり、メモリモジュールNVMSTR0が要求される信頼性のレベルに合わせて柔軟に対応することができる。[書き込み動作]図19は、情報処理装置CPUCHIPからメモリモジュールNVMSTR0へ書き込みリクエストWREQ01が入力された際に、メモリモジュールNVMSTR0が行うデータの書込み動作の一例を示す。情報処理回路MANAGERは、特に限定しないが512バイトのメインデータDAreaと16バイトの冗長データRAreaのサイズ毎に、1個の物理アドレスを対応させ、不揮発性メモリ装置NVM10からNVM17の中へ書き込みを行っている。情報処理装置CPUCHIPから論理アドレス値LAD0、データ書込み命令WRT、セクタカウント値SEC1、512バイトの書込みデータWDATA0が含まれるライトリクエストWTREQ01が制御回路STRCT0へ入力すると、インターフェース回路HOSTIFは、ライトリクエストWTREQ01に埋め込まれているクロック情報を取り出し、シリアルデータ化されたライトリクエストWTREQ01パラレルデータに変換し、バッファ装置BUF0および情報処理回路MANAGERへ転送するStep1。次に、情報処理回路MANAGERは、論理アドレス値LAD0、データ書込み命令WRT及びセクタカウントSEC1を解読し、ランダムアクセスメモリRAM内のアドレス変換テーブルLPTBLを検索して、アドレスLAD0番地に格納されている現在の物理アドレス値CPAD0と、この物理アドレス値CPAD0に対応した有効フラグCVF値を読み出す。さらに、情報処理回路MANAGERは、ランダムアクセスメモリRAM内の物理テーブルPADTBLからアドレス変換テーブルLPTBLを検索し、読み出した物理アドレス値CPAD0に対応する消去回数値PERC500および有効フラグPVLD値を読み出すStep2。次に、情報処理回路MANAGERは、ランダムアクセスメモリRAMへ格納したアドレスマップ範囲ADMAPを利用し、情報処理装置CPUCHIPから制御回路STRCT0へ入力した論理アドレス値LAD0が、論理アドレス領域LRNG1内の論理アドレス値であるか、又は、論理アドレス領域LRNG2内の論理アドレス値であるかを判断する。論理アドレス値LAD0が論理アドレス領域LRNG1内の論理アドレス値の場合は、図11に示す書込み物理アドレステーブルNXPADTBL1から、また、論理アドレス値LAD0が論理アドレス領域LRNG2内の論理アドレス値の場合は、書込み物理アドレステーブルNXPADTBL2から、書込み優先度の高い順に、セクタカウント値SEC1で指定された個数分だけ、この場合は1個分だけの書込み物理アドレスNXPAD100と、この次の書込み物理アドレスNXPAD100に対応した有効フラグNXPVLD値と、消去回数値NXPERCとを読み出すStep3。次に、現在の物理アドレス値CPAD0と次の書込み物理アドレスNXPAD100とが等しい場合、情報処理回路MANAGERはStep5を実行し、異なる場合はStep8を実行する。Step5では、情報処理回路MANAGERは、不揮発性メモリ装置NVM10からNVM17の中のアドレスNXPAD100番地へデータWDATA0と、物理アドレスNXPAD100に対応している論理アドレス値LAD0と、有効フラグDVF値1を書き込む。Step6では、情報処理回路MANAGERは、アドレス変換テーブルLPTBLの中のアドレスLAD0番地へ論理アドレス値LAD0に対応している物理アドレス値NXPAD100及び有効フラグCVF値1を書き込む。Step8では、情報処理回路MANAGERは、物理テーブルPADTBLから読み出した物理アドレス値CPAD0に対応した有効フラグCPVLD値が0であるかを判定する。有効フラグCPVLD値が0の場合、論理アドレスLAD0に対応する不揮発性メモリ装置NVM10からNVM17の中の物理アドレスCPAD0は無効であることを示し、これは論理アドレスLAD0に対応する物理アドレスは新しいNXPAD100しか存在しないことを示す。このStep8の後、情報処理回路MANAGERは、Step5を実行する。これに対し、有効フラグCPVLD値が1の場合、論理アドレスLAD0に対応する物理アドレスCPAD0が未だに有効であることを示す。この場合、情報処理回路MANAGERは、Step9を実行する。Step9では、情報処理回路MANAGERは、論理アドレスLAD0に対応する新しい物理アドレスNXPAD100にデータWDATA0を書き込むため、アドレス変換テーブルLPTBL内の物理アドレスCPAD0に対応する有効フラグCVF値を0に変更し、さらに、物理アドレステーブルPADTBL内の物理アドレスCPAD0に対応する物理アドレスの有効フラグPVLDを0にする。Step9で論理アドレスLAD0に対応する物理アドレスCPAD0を無効にした後、情報処理回路MANAGERは、Step5を実行する。次のStep7では、情報処理回路MANAGERは、物理アドレスNXPAD100に対応する消去回数値NXPERCを1つ増加させた新たな消去回数値NXPERCを生成させ、ランダムアクセスメモリRAMへ格納されている物理アドレステーブルPADTBL内の物理アドレスNXPAD100に対応する消去回数PERCを、この新たな消去回数値NXPERCへ書き換え、物理アドレスの有効フラCPVLDを1とする。Step10では、情報処理回路MANAGERは、書込み物理アドレステーブルNXPADTBLへ格納されている全物理アドレスNXPADへの書き込みが完了したかどうかを判定する。特に、書込み物理アドレステーブルNXPADTBLへ格納されている全物理アドレスNXPADへの書き込みが完了した場合はStep11を行い、未完了の場合は情報処理装置CPUCHIPからメモリモジュールNVMSTR0へ書き込みリクエストを待つ。Step11では、書込み物理アドレステーブルNXPADTBLへ格納されている全物理アドレスNXPADに対する書き込みが完了した時点で、情報処理回路MANAGERは、物理アドレステーブルPADTBLの物理アドレスの有効フラグCPVLDと消去回数PERCを利用し、物理セグメントアドレスSGAD内の無効物理アドレス総数TNIPAと、セグメントアドレスSGAD内の無効物理アドレスの中で最大消去回数MXERCを持つ無効物理アドレスMXIPADと、最大消去回数MXERCと、セグメントアドレスSGAD内の無効物理アドレスの中で最小消去回数MNERCを持つ無効物理アドレスMNIPADと、最小消去回数MNERCを求め、物理セグメントテーブルPSEGTBL1を更新する。さらに、情報処理回路MANAGERは、物理セグメントアドレスSGAD内の有効物理アドレス総数TNVPAGEと、セグメントアドレスSGAD内の有効物理アドレスの中で最大消去回数MXERCを持つ有効物理アドレスMXVPADと、最大消去回数MXERCと、セグメントアドレスSGAD内の有効物理アドレスの中で最小消去回数MNERCを持つ有効物理アドレスMNVPADと、最小消去回数MNERCを求め、物理セグメントテーブルPSEGTBL2を更新する。さらに、情報処理回路MANAGERは、物理アドレステーブルNXPADTBLを更新する。物理アドレステーブルNXPADTBLの更新が終了した場合、情報処理装置CPUCHIPからメモリモジュールNVMSTR0への書き込みリクエストを待つ。制御回路STRCT0が装備する書込み物理アドレステーブルNXPADTBLが1つの場合について示したが、図4に示すように、制御回路STRCT0が、書込み物理アドレステーブルNXPADTBL03を複数個装備する場合、情報処理回路MANAGERはそれぞれの書込み物理アドレステーブルを独立に管理更新できるので、不揮発性メモリ装置NVM10からNVM17への書き込みデータ転送速度が向上する。図20では、情報処理回路MANAGERがデータを不揮発性メモリへ書き込むために必要な書込み物理アドレステーブルNXPADTBLの更新方法を示す。図11に示すように、情報処理回路MANAGERは、書込み物理アドレステーブルNXPADTBLの中において、エントリー番号0からN21のN2個分を、書込み物理アドレステーブルNXPADTBL1とし、エントリー番号N2からNまでの残りのN2個分を書込み物理アドレステーブルNXPADTBL2として管理する。また、図15のアドレス範囲マップADMAPでは、物理アドレスPADが00000000から027FFFFFまでは、物理アドレス領域PRNG1を示し、物理アドレスPADが02800000から07FFFFFFまでは、物理アドレス領域PRNG2を示す。従って、物理アドレス領域PRNG1の物理セグメントアドレスSGAの範囲は0000から027Fとなり、物理アドレス領域PRNG2の物理セグメントアドレスSGAの範囲は0280から07FFとなる。情報処理回路MANAGERは、物理アドレス領域PRNG1の範囲内の物理アドレスPADに対して書込み物理アドレステーブルNXPADTBL1を利用し、これを更新し、物理アドレス領域PRNG2の範囲内の物理アドレスPADに対して書込み物理アドレステーブルNXPADTBL2を利用し、これを更新する。書込み物理アドレステーブルNXPADTBLを更新するために、まず物理セグメントアドレスを決定し、次に決定された物理セグメントアドレス内の物理アドレスを決定する。図10に示すように、ランダムアクセスメモリRAM内の物理セグメントテーブルPSEGTBL1へは、物理セグメントアドレスSGA毎に、無効状態の物理アドレスの総数TNIPAと、有効状態の物理アドレスの総数TNVPAGEと、無効状態の物理アドレスCPADの中で消去回数の最小値MCPADERCを持つ物理アドレスMCPADと、その物理アドレスMCPADに対応する最小消去回数値MCPADERCとが格納されている。まず、情報処理回路MANAGERは、ランダムアクセスメモリRAMから、物理セグメントアドレスSGA毎に、無効状態の物理アドレスの総数TNIPAと、これら物理アドレスMCPADと最小消去回数値MCPADERCを読み出すStep21。次に、ランダムアクセスメモリRAMから読み出された物理セグメントアドレスSGA毎の無効状態の物理アドレスの総数TNIPAGEが書込み物理アドレステーブルNXPADTBLの登録数Nより大きな物理セグメントアドレスSGAを選択するStep22。さらに、この選択された物理セグメントアドレスSGA毎の最小消去回数値MCPADERCを比較し、その最小消去回数値MCPADERCの中の最小値MMCPADERCを求めるStep23。次に、最小値MMCPADERCを持つ物理セグメントアドレスSGAと物理アドレスMCPADを、物理アドレステーブルNXPADTBLを更新するための物理セグメントアドレスTSGADと物理アドレスTMCPADとに決定するStep24。Step22で選択される物理セグメントアドレスSGAを存在させるには、物理アドレス空間の大きさを論理アドレス空間の大きさより、少なくとも書込み物理アドレステーブルNXPADTBLが登録できるアドレス分の大きさ以上にすると良い。次に、情報処理回路MANAGERは、物理セグメントアドレスTSGA内の物理アドレスTMCPADに対応する消去回数PERC値をランダムアクセスメモリRAMから読み出し、消去回数閾値ERCthと比較するStep25。消去回数PERC値が消去回数閾値ERCth以下の場合、情報処理回路MANAGERは、現在の物理アドレス物理アドレスTMCPADへの書込みを許可し、Step26を行う。消去回数PERC値が消去回数閾値ERCthより大きい場合、情報処理回路MANAGERは、現在の物理アドレスTMCPADへの書込みを禁止し、Step29を行う。Step29で、情報処理回路MANAGERは、現在の物理セグメントアドレス内で、消去回数閾値ERCth以下の消去回数を持つ無効状態の物理アドレスの数Ninvが、書込み物理アドレステーブルNXPADTBLが登録できるアドレス数Nより小さいかどうかNinv<Nを判定し、小さい場合はStep30を行い、大きい場合はStep31を行う。Step31において、情報処理回路MANAGERは、現在の物理アドレスTMCPADへ演算を行い、新物理アドレスTMCPADを生成し、Step25を再度実行する。Step31の演算方法の一例を、図21に示す。図21については、後段にて説明する。Step30では、情報処理回路MANAGERは、消去回数閾値ERCthへ、ある値アルファα分だけ加算した新消去回数閾値ERCthを生成し、Step25を再度実行する。Step26では、情報処理回路MANAGERが、書込み物理アドレステーブルNXPADTBLへ、現在の物理アドレスTMCPPADと、この物理アドレスPPADに対応した有効フラグPVLD値と消去回数PERC値を登録する。書込み物理アドレステーブルNXPADTBLには、N組の登録が可能であり、特に限定しないが、エントリ番号ENUMの小さな番号から順に登録される。書込み物理アドレステーブルNXPADTBLの登録組数は、情報処理回路MANAGERによって任意に設定可能であり、不揮発性メモリ装置NVM10からNVM17への書込み速度が最大となるように設定すると良い。次のStep27では、情報処理回路MANAGERは、書込み物理アドレステーブルNXPADTBLへの全N組の登録が完了したか否かをチェックする。全N組の登録が完了していなければ、Step29を実行する。全N組の登録が完了していれば、書込み物理アドレステーブルNXPADTBLの更新を完了するStep28。図22は、制御回路STRCT0が不揮発性メモリ装置NVM10からNVM17へデータを書き込む際のアドレス変換テーブルLPTBLの更新方法及び不揮発性メモリ装置へデータ更新方法の一例を示している。アドレス変換テーブルLPTBLは、情報処理装置CPUCHIPから制御回路STRCT0へ入力された論理アドレスLADを不揮発性メモリ装置の物理アドレスPADへ転換するためのテーブルである。また、アドレス変換テーブルLPTBLは、論理アドレスLADに対応した物理アドレスCPADと物理アドレス有効フラグCVFから構成される。また、このアドレス変換テーブルLPTBLはランダムアクセスメモリRAMへ格納される。不揮発性メモリ装置には、物理アドレスPADに対応したデータDATAと、論理アドレスLADと、データ有効フラグDVFが格納される。図22のは、時間T0より後に、情報処理装置CPUCHIPから制御回路STRCT0へ論理アドレス領域LRNG1へのライトリクエストWTREQ0、WTREQ1、WTREQ2及びWTREQ3が入力され、これらのライトリクエストのデータが不揮発性メモリ装置の物理アドレス領域PRNG1へ書き込まれた後の時間T1におけるアドレス変換テーブルLPTBL及び不揮発性メモリ装置が格納するアドレス、データおよび有効フラグを示している。ライトリクエストWTREQ0には論理アドレスLAD値0、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA0が含まれる。ライトリクエストWTREQ1には論理アドレスLAD値1、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA1が含まれる。ライトリクエストWTREQ2には論理アドレスLAD値2、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA2が含まれる。ライトリクエストWTREQ3には論理アドレスLAD値3、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA3が含まれる。ライトリクエストWTREQ0、WTREQ1、WTREQ2及びWTREQ3が制御回路STRCT0へ入力した際は、インターフェース回路HOSTIFは、これらのライトリクエストをバッファ装置BUF0へ転送する。次に、情報処理回路MANAGERは、バッファ装置BUF0へ格納されているライトリクエストWTREQ0、WTREQ1、WTREQ2及びWTREQ3を順に読み出す。次に、情報処理回路MANAGERは、ライトリクエストWTREQ0、WTREQ1、WTREQ2及びWTREQ3の論理アドレスLAD値は、それぞれ0、1、2および3であるため、メモリ制御装置RAMCを通じてランダムアクセスメモリRAMへ保存されているアドレス変換テーブルLPTBLの論理アドレスLADの0番地、1番地、2番地および3番地から物理アドレス値CPADおよび有効フラグCVF値を読みだす。最初は、図12に示したように、読み出された全ての有効フラグCVF値は0であるため、論理アドレスLADの0番地、1番地、2番地および3番地には物理アドレスCPADが割り当てられていないことがわかる。次に、情報処理回路MANAGERは、ライトリクエストWTREQ0、1、2および3のそれぞれの書込みデータDATA0、1、2および3に対するECCコードECC0、1、2および3を生成し、図14に示すデータフォーマットに従い、書込みデータDATA0、1、2および3をメインデータDArea0、1、2および3とし、これらメインデータDArea0、1、2および3へ対応した冗長データRArea0、1、2および3を生成する。不揮発性メモリ装置への書込みデータWDATA0は、メインデータDArea0と冗長データRArea0から構成され、書込みデータWDATA1はメインデータDArea1と冗長データRArea1から構成され、書込みデータWDATA2はメインデータDArea2と冗長データRArea2から構成され、書込みデータWDATA3はメインデータDArea3と冗長データRArea3から構成される。情報処理回路MANAGERにより、書込みデータWDATA0、1、2および3は、それぞれ、不揮発性メモリ装置の一つの物理アドレスへ書き込まれる。冗長データRArea0、1、2および3には、それぞれECCコードECC0、1、2および3が含まれ、さらに、共通に、データ反転フラグINVFLG値0、ライトフラグWRITFLG値0、、ECCフラグECCFLG値0、ステート情報STATE値1、信頼性レベル情報RELIABLE値1、バッドブロック情報BADBLK値0、モニターセル情報MONITOR値0、予備領域RSV値0が含まれる。次に、情報処理回路MANAGERは、書込み物理アドレステーブルNXPADTBL1のエントリー番号ENUMの0番から3番までに格納されている物理アドレスNXPAD値0、2、4、6を読み出し、論理アドレスLADの0番地、1番地、2番地および3番地に割り当てる。さらに、情報処理回路MANAGERは、物理アドレスNXPAD1値0、2、4および6に従い、調停回路ARBとメモリ制御装置NVCT10からNVCT17を通じ、不揮発性メモリ装置の物理アドレスPADの0番地へはライトリクエストWTREQ0のデータDATA0が含まれる書込みデータWDATA0、論理アドレスLAD値0及びデータ有効フラグDVF値1を書き込み、物理アドレスPADの2番地へはライトリクエストWTREQ1のデータDATA1が含まれる書込みデータWDATA1、論理アドレスLAD値1およびデータ有効フラグDVF値1を書き込み、物理アドレスPADの4番地へはライトリクエストWTREQ2のデータDATA2が含まれる書込みデータWDATA2、論理アドレスLAD値2およびデータ有効フラグDVF値1を書き込み、物理アドレスPADの6番地へはライトリクエストWTREQ3のデータDATA3が含まれる書込みデータWDATA3、論理アドレスLAD値3およびデータ有効フラグDVF値1を書き込む。最後に、情報処理回路MANAGERは、メモリ制御装置RAMCを通じてランダムアクセスメモリRAMへ保存されているアドレス変換テーブルLPTBLの論理アドレスLADの0番地へは物理アドレスNXPAD値0および有効フラグCVF値1を書き込み、論理アドレスLADの1番地へは物理アドレスNXPAD値2および有効フラグCVF値1を書き込み、論理アドレスLADの2番地へは物理アドレスNXPAD値4および有効フラグCVF値1を書き込み、論理アドレスLADの3番地へは物理アドレスNXPAD値6および有効フラグCVF値1を書き込む。図22のは、時間T1より後に、情報処理装置CPUCHIPから制御回路STRCT0へライトリクエストWTREQ4、WTREQ5、WTREQ6、WTREQ7、WTREQ8およびWTREQ9が入力し、これらのライトリクエストのデータが不揮発性メモリ装置の物理アドレス領域PRNG1へ書き込まれた後の時間T2におけるアドレス変換テーブルLPTBLおよび不揮発性メモリ装置が格納するアドレス、データおよび有効フラグを示している。ライトリクエストWTREQ4には、論理アドレスLAD値0、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA4が含まれる。ライトリクエストWTREQ5には、論理アドレスLAD値1、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA5が含まれる。ライトリクエストWTREQ6には、論理アドレスLAD値4、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA6が含まれる。ライトリクエストWTREQ7には、論理アドレスLAD値5、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA7が含まれる。ライトリクエストWTREQ8には、論理アドレスLAD値2、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA8が含まれる。ライトリクエストWTREQ8には、論理アドレスLAD値3、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA9が含まれる。ライトリクエストWTREQ4、WTREQ5、WTREQ6、WTREQ7、WTREQ8およびWTREQ9が制御回路STRCT0へ入力した際は、インターフェース回路HOSTIFは、これらのライトリクエストをバッファ装置BUF0へ転送する。次に、情報処理回路MANAGERは、バッファ装置BUF0へ格納されているライトリクエストWTREQ4、WTREQ5、WTREQ6、WTREQ7、WTREQ8およびWTREQ9を順に読み出す。次に、情報処理回路MANAGERは、ライトリクエストWTREQ4、5、6および7のそれぞれの書込みデータDATA4、5、6および7に対するECCコードECC4、5、6および7を生成し、図14に示すデータフォーマットに従い、書込みデータDATA4、5、6および7をメインデータDArea4、5、6および7とし、これらメインデータDArea4、5、6および7へ対応した冗長データRArea4、5、6および7を生成する。不揮発性メモリ装置への書込みデータWDATA4はメインデータDArea4と冗長データRArea4から構成され、書込みデータWDATA5はメインデータDArea5と冗長データRArea5から構成され、書込みデータWDATA6はメインデータDArea6と冗長データRArea6から構成され、書込みデータWDATA7はメインデータDArea7と冗長データRArea7から構成される。情報処理回路MANAGERにより、書込みデータWDATA4、5、6および7は、それぞれ、不揮発性メモリ装置の一つの物理アドレスへ書き込まれる。冗長データRArea4、5、6および7には、それぞれECCコードECC4、5、6および7が含まれ、さらに、共通に、データ反転フラグINVFLG値0、書き込み方法選択情報WRITFLG値0、ECCフラグECCFLG値0、ステート情報STATE値1、信頼性レベル情報RELIABLE値1、バッドブロック情報BADBLK値0、モニターセル情報MONITOR値0、予備領域RSV値0が含まれる。次に、情報処理回路MANAGERは、ライトリクエストWTREQ4のWTREQ5、WTREQ6、WTREQ7、WTREQ8およびWTREQ9の論理アドレスLAD値は、それぞれ0、1、4、5、2および3であるため、メモリ制御装置RAMCを通じてランダムアクセスメモリRAMへ保存されているアドレス変換テーブルLPTBLの論理アドレスLADの0番地、1番地、4番地、5番地、2番地および3番地から、それぞれ物理アドレスCPAD値および有効フラグCVF値を読みだす。アドレス変換テーブルLPTBLの論理アドレスLADの0番地の物理アドレスCPAD値は0、有効フラグCVF値は1であり、既に書き込まれている物理アドレスPAD0番地のデータを無効にするため、物理アドレスPAD0番地の有効フラグDVF値を0に設定する101→111。アドレス変換テーブルLPTBLの論理アドレスLADの1番地の物理アドレスCPAD値は2、有効フラグCVF値は1であり、既に書き込まれている物理アドレスPAD1番地のデータを無効にするため、物理アドレスPAD1番地の有効フラグDVF値を0に設定する102→112。アドレス変換テーブルLPTBLの論理アドレスLADの4番地の物理アドレスCPAD値は0、有効フラグCVF値は0であり、論理アドレスLAD4番地には、物理アドレスCPADが割り当てられていないことがわかる。アドレス変換テーブルLPTBLの論理アドレスLADの5番地の物理アドレスCPAD値は0、有効フラグCVF値は0であり、論理アドレスLAD5番地には、物理アドレスCPADが割り当てられていないことがわかる。アドレス変換テーブルLPTBLの論理アドレスLADの2番地の物理アドレスCPAD値は4、有効フラグCVF値は1であり、既に書き込まれている物理アドレスPAD4番地のデータを無効にするため、物理アドレスPAD4番地の有効フラグDVF値を0に設定する103→113。アドレス変換テーブルLPTBLの論理アドレスLADの3番地の物理アドレスCPAD値は6、有効フラグCVF値は1であり、既に書き込まれている物理アドレスPAD6番地のデータを無効にするため、物理アドレスPAD6番地の有効フラグDVF値を0に設定する104→114。次に、情報処理回路MANAGERは、ライトリクエストWTREQ4、WTREQ5、WTREQ6、WTREQ7、WTREQ8およびWTREQ9の論理アドレスLAD値は、それぞれ0、1、4、5、2および3であるため、書込み物理アドレステーブルNXPADTBL1のエントリー番号ENUMの4番から9番までに格納されている物理アドレスNXPAD値8、10、12、14、16および18を読み出し、論理アドレスLADの0番地、1番地、4番地、5番地、2番地および3番地に割り当てる。さらに、情報処理回路MANAGERは、物理アドレスNXPAD値8、10、12、14、16および18に従い、調停回路ARBとメモリ制御装置NVCT10からNVCT17を通じて、不揮発性メモリ装置NVM10-17の物理アドレスPADの8番地へはライトリクエストWTREQ4のデータDATA4が含まれる書込みデータWDATA4、論理アドレスLAD値0およびデータ有効フラグDVF値1を書き込み、物理アドレスPADの10番地へはライトリクエストWTREQ5のデータDATA5が含まれる書込みデータWDATA5、論理アドレスLAD値1およびデータ有効フラグDVF値1を書き込み、物理アドレスPADの12番地へはライトリクエストWTREQ2のデータDATA6が含まれる書込みデータWDATA6、論理アドレスLAD値4およびデータ有効フラグDVF値1を書き込み、物理アドレスPADの14番地へはライトリクエストWTREQ2のデータDATA7が含まれる書込みデータWDATA7、論理アドレスLAD値5およびデータ有効フラグDVF値1を書き込み、物理アドレスPADの16番地へはライトリクエストWTREQ2のデータDATA8が含まれる書込みデータWDATA8、論理アドレスLAD値2およびデータ有効フラグDVFLD値1を書き込み、物理アドレスPADの18番地へはライトリクエストWTREQ3のデータDATA9が含まれる書込みデータWDATA9、論理アドレスLAD値3およびデータ有効フラグDVF値1を書き込む。図23は、制御回路STRCT0が不揮発性メモリ装置NVM10からNVM17の物理アドレス領域LRNG2にデータを書き込む際のアドレス変換テーブルLPTBLの更新方法および不揮発性メモリ装置へのデータ更新方法の一例を示している。アドレス変換テーブルLPTBLは、情報処理装置CPUCHIPから制御回路STRCT0へ入力された論理アドレスLADを不揮発性メモリ装置の物理アドレスPADへ転換するためのテーブルである。アドレス変換テーブルLPTBLは、論理アドレスLADに対応した物理アドレスPADと物理アドレス有効フラグCVFから構成される。また、このアドレス変換テーブルLPTBLは、ランダムアクセスメモリRAMに格納される。不揮発性メモリ装置には、物理アドレスPADに対応したデータDATAと、論理アドレスLADと、データ有効フラグDVFが格納される。図23のは、時間T0より後に、情報処理装置CPUCHIPから制御回路STRCT0へ、論理アドレス領域LRNG2へのライトリクエストWTREQ0、WTREQ1、WTREQ2およびWTREQ3が入力し、これらのライトリクエストのデータが不揮発性メモリ装置の物理アドレス領域PRNG2へ書き込まれた後の時間T1におけるアドレス変換テーブルLPTBLおよび不揮発性メモリ装置が格納するアドレス、データおよび有効フラグを示している。ライトリクエストWTREQ0には16進数で論理アドレスLAD値800000、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA0が含まれる。ライトリクエストWTREQ1には16進数で論理アドレスLAD値800001、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA1が含まれる。ライトリクエストWTREQ2には、16進数で論理アドレスLAD値800002、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA2が含まれる。ライトリクエストWTREQ3には、16進数で論理アドレスLAD値800003、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA3が含まれる。ライトリクエストWTREQ0、WTREQ1、WTREQ2およびWTREQ3が制御回路STRCT0へ入力した際、インターフェース回路HOSTIFは、これらのライトリクエストをバッファ装置BUF0へ転送する。次に、情報処理回路MANAGERは、バッファ装置BUF0へ格納されているライトリクエストWTREQ0、WTREQ1、WTREQ2およびWTREQ3を順に読み出す。次に、情報処理回路MANAGERは、ライトリクエストWTREQ0、WTREQ1、WTREQ2およびWTREQ3の論理アドレスLAD値がそれぞれ0、1、2および3であるため、メモリ制御装置RAMCを通じてランダムアクセスメモリRAMへ保存されているアドレス変換テーブルLPTBLの論理アドレスLADの800000番地、800001番地、800002番地および800003番地から物理アドレス値CPADおよび有効フラグCVF値を読み出す。最初は、図12のように読み出された全ての有効フラグCVF値は0であるため、論理アドレスLAD800000番地、800001番地、800002番地および800003番地には物理アドレスCPADが割り当てられていないことが分かる。次に、情報処理回路MANAGERは、ライトリクエストWTREQ0、1、2および3のそれぞれの書込みデータDATA0、1、2および3に対するECCコードECC0、1、2および3を生成し、図14に示すデータフォーマットに従い、書込みデータDATA0、1、2および3をメインデータDArea0、1、2および3とし、これらメインデータDArea0、1、2および3へ対応した冗長データRArea0、1、2および3を生成する。不揮発性メモリ装置への書込みデータWDATA0は、メインデータDArea0と冗長データRArea0から構成され、書込みデータWDATA1はメインデータDArea1と冗長データRArea1から構成され、書込みデータWDATA2はメインデータDArea2と冗長データRArea2から構成され、書込みデータWDATA3はメインデータDArea3と冗長データRArea3から構成される。情報処理回路MANAGERにより、書込みデータWDATA0、1、2および3は、それぞれ、不揮発性メモリ装置の一つの物理アドレスへ書き込まれる。冗長データRArea0、1、2および3には、それぞれECCコードECC0、1、2および3が含まれ、さらに共通に、データ反転フラグINVFLG値0、ライトフラグWRITFLG値0、ECCフラグECCFLG値0、ステート情報STATE値1、信頼性レベル情報RELIABLE値0、バッドブロック情報BADBLK値0、モニターセル情報MONITOR値0、予備領域RSV値0が含まれる。次に、情報処理回路MANAGERは、書込み物理アドレステーブルNXPADTBL2のエントリー番号ENUMの16番から19番までに格納されている物理アドレスNXPAD値2800000、2800001、2800002、2800003を読み出し、論理アドレスLADの800000番地、800001番地、800002番地および800003番地に割り当てる。さらに、情報処理回路MANAGERは、物理アドレスNXPAD値2800000、2800001、2800002および2800003に従い、調停回路ARBとメモリ制御装置NVCT10からNVCT17を通じ、不揮発性メモリ装置の物理アドレスPADの2800000番地へはライトリクエストWTREQ0のデータDATA0が含まれる書込みデータWDATA0、論理アドレスLAD値800000およびデータ有効フラグDVF値1を書き込み、物理アドレスPADの2800001番地へはライトリクエストWTREQ1のデータDATA1が含まれる書込みデータWDATA1、論理アドレスLAD値800001およびデータ有効フラグDVF値1を書き込み、物理アドレスPADの2800002番地へはライトリクエストWTREQ2のデータDATA2が含まれる書込みデータWDATA2、論理アドレスLAD値800002およびデータ有効フラグDVF値1を書き込み、物理アドレスPADの2800003番地へはライトリクエストWTREQ3のデータDATA3が含まれる書込みデータWDATA3、論理アドレスLAD値800003およびデータ有効フラグDVF値1を書き込む。最後に、情報処理回路MANAGERは、メモリ制御装置RAMCを通じ、ランダムアクセスメモリRAMへ保存されているアドレス変換テーブルLPTBLの論理アドレスLADの800000番地へは物理アドレスNXPAD値2800000および有効フラグCVF値1を書き込み、論理アドレスLADの800001番地へは物理アドレスNXPAD値2800001および有効フラグCVF値1を書き込み、論理アドレスLADの800002番地へは物理アドレスNXPAD値2800002および有効フラグCVF値1を書き込み、論理アドレスLADの800003番地へは物理アドレスNXPAD値2800003および有効フラグCVF値1を書き込む。図23のは、時間T1より後に、情報処理装置CPUCHIPから制御回路STRCT0へ、ライトリクエストWTREQ4、WTREQ5、WTREQ6、WTREQ7、WTREQ8およびWTREQ9が入力され、これらのライトリクエストのデータが不揮発性メモリ装置の物理アドレス領域PRNG2へ書き込まれた後の時間T2におけるアドレス変換テーブルLPTBLおよび不揮発性メモリ装置が格納するアドレス、データおよび有効フラグを示している。ライトリクエストWTREQ4には、論理アドレスLAD値800000、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA4が含まれる。ライトリクエストWTREQ5には、論理アドレスLAD値800001、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA5が含まれる。ライトリクエストWTREQ6には、論理アドレスLAD値800004、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA6が含まれる。ライトリクエストWTREQ7には論理アドレスLAD値800005、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA7が含まれる。ライトリクエストWTREQ8には、論理アドレスLAD値800002、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA8が含まれる。ライトリクエストWTREQ8には、論理アドレスLAD値800003、データ書込み命令WRT、セクタカウントSEC値1、書込みデータDATA9が含まれる。ライトリクエストWTREQ4、WTREQ5、WTREQ6、WTREQ7、WTREQ8およびWTREQ9が制御回路STRCT0へ入力された際、インターフェース回路HOSTIFは、これらのライトリクエストをバッファ装置BUF0へ転送する。次に、情報処理回路MANAGERは、バッファ装置BUF0へ格納されているライトリクエストWTREQ4、WTREQ5、WTREQ6、WTREQ7、WTREQ8およびWTREQ9を順に読み出す。次に、情報処理回路MANAGERは、ライトリクエストWTREQ4、5、6および7のそれぞれの書込みデータDATA4、5、6および7に対するECCコードECC4、5、6および7を生成し、図14に示すデータフォーマットに従い、書込みデータDATA4、5、6および7をメインデータDArea4、5、6および7とし、これらメインデータDArea4、5、6および7へ対応した冗長データRArea4、5、6および7を生成する。不揮発性メモリ装置への書込みデータWDATA4はメインデータDArea4と冗長データRArea4から構成され、書込みデータWDATA5はメインデータDArea5と冗長データRArea5から構成され、書込みデータWDATA6はメインデータDArea6と冗長データRArea6から構成され、書込みデータWDATA7はメインデータDArea7と冗長データRArea7から構成される。情報処理回路MANAGERにより、書込みデータWDATA4、5、6および7は、それぞれ、不揮発性メモリ装置の一つの物理アドレスへ書き込まれる。冗長データRArea4、5、6および7には、それぞれECCコードECC4、5、6および7が含まれ、さらに共通に、データ反転フラグINVFLG値0、ライトフラグWRITFLG値0、ECCフラグECCFLG値0、ステート情報STATE値1、信頼性レベル情報RELIABLE値0、バッドブロック情報BADBLK値0、モニターセル情報MONITOR値0、予備領域RSV値0が含まれる。次に、情報処理回路MANAGERは、ライトリクエストWTREQ4のWTREQ5、WTREQ6、WTREQ7、WTREQ8およびWTREQ9の論理アドレスLAD値は、それぞれ800000、800001、800004、800005、800002および800003であるため、メモリ制御装置RAMCを通じてランダムアクセスメモリRAMへ保存されているアドレス変換テーブルLPTBLの論理アドレスLADの800000番地、800001番地、800004番地、800005番地、800002番地および800003番地から、それぞれ物理アドレスCPAD値および有効フラグCVF値を読み出す。アドレス変換テーブルLPTBLの論理アドレスLADの800000番地の物理アドレスCPAD値は2800000、有効フラグCVF値は1であり、既に書き込まれている物理アドレスPAD0番地のデータを無効にするため、物理アドレスPAD800000番地の有効フラグDVF値を0に設定する201→211。アドレス変換テーブルLPTBLの論理アドレスLADの800001番地の物理アドレスCPAD値は2800001、有効フラグCVF値は1であり、既に書き込まれている物理アドレスPAD800001番地のデータを無効にするため、物理アドレスPAD2800001番地の有効フラグDVF値を0に設定する202→212。アドレス変換テーブルLPTBLの論理アドレスLADの800004番地の物理アドレスCPAD値は0、有効フラグCVF値は0であり、論理アドレスLAD800004番地には、物理アドレスCPADが割り当てられていないことが分かる。アドレス変換テーブルLPTBLの論理アドレスLADの800005番地の物理アドレスCPAD値は0、有効フラグCVF値は0であり、論理アドレスLAD800005番地には、物理アドレスCPADが割り当てられていないことが分かる。アドレス変換テーブルLPTBLの論理アドレスLADの800002番地の物理アドレスCPAD値は2800002、有効フラグCVF値は1であり、既に書き込まれている物理アドレスPAD2800002番地のデータを無効にするため、物理アドレスPAD4番地の有効フラグDVF値を0に設定する203→213。アドレス変換テーブルLPTBLの論理アドレスLADの800003番地の物理アドレスCPAD値は2800003、有効フラグCVF値は1であり、既に書き込まれている物理アドレスPAD2800003番地のデータを無効にするため、物理アドレスPAD2800003番地の有効フラグDVF値を0に設定する204→214。次に、情報処理回路MANAGERは、ライトリクエストWTREQ4、WTREQ5、WTREQ6、WTREQ7、WTREQ8およびWTREQ9の論理アドレスLAD値は、それぞれ800000、800001、800004、800005、800002および800003であるため、書込み物理アドレステーブルNXPADTBL2のエントリー番号ENUMの20番から25番までに格納されている物理アドレスNXPAD値2800004、2800005、2800006、2800007、2800008および2800009を読み出し、論理アドレスLADの800000番地、800001番地、800004番地、800005番地、800002番地および800003番地に割り当てる。さらに、情報処理回路MANAGERは、物理アドレスNXPAD値2800004、2800005、2800006、2800007、2800008および2800009に従い、調停回路ARBとおよびメモリ制御装置NVCT10からNVCT17を通じ、不揮発性メモリ装置NVM1017の物理アドレスPADの2800004番地へはライトリクエストWTREQ4のデータDATA4が含まれる書込みデータWDATA4、論理アドレスLAD値800000およびデータ有効フラグDVF値1を書き込み、物理アドレスPADの2800005番地へはライトリクエストWTREQ5のデータDATA5が含まれる書込みデータWDATA5、論理アドレスLAD値800001およびデータ有効フラグDVF値1を書き込み、物理アドレスPADの2800006番地へはライトリクエストWTREQ2のデータDATA6が含まれる書込みデータWDATA6、論理アドレスLAD値800004およびデータ有効フラグDVF値1を書き込み、物理アドレスPADの2800007番地へはライトリクエストWTREQ2のデータDATA7が含まれる書込みデータWDATA7、論理アドレスLAD値800005およびデータ有効フラグDVF値1を書き込み、物理アドレスPADの2800008番地へはライトリクエストWTREQ2のデータDATA8が含まれる書込みデータWDATA8、論理アドレスLAD値800002およびデータ有効フラグDVFLD値1を書き込み、物理アドレスPADの2800009番地へはライトリクエストWTREQ3のデータDATA9が含まれる書込みデータWDATA9、論理アドレスLAD値800003およびデータ有効フラグDVF値1を書き込む。図24では、情報処理回路MANAGERが実行する相変化メモリの物理アドレス毎のデータ消去回数のバラツキを抑え平準化する別の方法を示す。図11に示すように、情報処理回路MANAGERは、書込み物理アドレステーブルNXPADTBLの中で、エントリー番号0からN21のN2個分を書込み物理アドレステーブルNXPADTBL1とし、エントリー番号N2からNまでの残りのN2個分を書込み物理アドレステーブルNXPADTBL2として管理する。図19および図20で説明した物理アドレス毎の消去回数の平準化方法は、無効状態の物理アドレスに対する動的な消去回数の平準化方法である。この動的な消去回数の平準化方法では、無効状態の物理アドレスの消去回数と有効状態の物理アドレスの消去回数の差が大きくなる場合があるため、図24では、無効状態の物理アドレスの消去回数と有効状態の物理アドレスの消去回数のバラツキを抑える静的な消去回数平準化法を示す。また、図15のアドレス範囲マップADMAPでは、物理アドレスPADが00000000から027FFFFFまでは、物理アドレス領域PRNG1を示し、物理アドレスPADが02800000から07FFFFFFまでは、物理アドレス領域PRNG2を示す。従って、物理アドレス領域PRNG1の物理セグメントアドレスSGAの範囲は0000から027Fとなり、物理アドレス領域PRNG2の物理セグメントアドレスSGAの範囲は0280から07FFとなる。情報処理回路MANAGERは、物理アドレス領域PRNG1および物理アドレス領域PRNG2の範囲内のそれぞれで、図24に示す静的な消去回数の平準化方法を行う。情報処理回路MANAGERは、Step51で以下を行う。Step51において、情報処理回路MANAGERは、図10に示す物理セグメントテーブルPSEGTBL1内の無効物理アドレスに関する最大消去回数MXERCの中の最大値MXIVERCと、物理セグメントテーブルPSEGTBL2内の有効物理アドレスに関する最小消去回数MNERCの中の最小値MNVLERCとの差DIFEC=MXIVERC-MNVLERCを求める。次のStep52で、情報処理回路MANAGERは、無効状態の物理アドレスの消去回数と、有効状態の物理アドレスの消去回数の差の閾値DERCthを設定し、この閾値DERCthと消去回数差DIFECを比較する。消去回数差DIFECが閾値DERCthより大きい場合、情報処理回路MANAGERは、消去回数の平準化行うためStep53を行い、小さい場合はStep58を行う。Step58において、情報処理回路MANAGERは、物理セグメントテーブルPSEGTBL1又はPSEGTBL2が更新されたか否かを判定し、更新された場合はStep51にて再度、消去回数差DIFECを求め、いずれの物理セグメントテーブルも更新されていない場合は、再度Step58を行う。Step53で、情報処理回路MANAGERは、物理セグメントテーブルPSEGTBL2内の有効物理アドレスに関する最小消去回数MNERCの中で最も小さな消去回数から順にM個分の物理アドレスSPAD1~Mを選択する。Step54では、情報処理回路MANAGERは、物理セグメントテーブルPSEGTBL1内の無効物理アドレスに関する最大消去回数MXERCの中で最も小さな消去回数から順にM個分の物理アドレスDPAD1~Mを選択する。Step55では、情報処理回路MANAGERは、選択された物理アドレスDPAD1~Mが、書込み物理アドレステーブルNXPADTBLへ登録されているかを調べる。もし、選択された物理アドレスDPAD1~Mが、書込み物理アドレステーブルNXPADTBLへ登録されていれば、Step59において現在の選択された物理アドレスDPAD1~Mを、最小値MXNERCを持つ物理アドレスの候補から外し、再度Step54を行う。もし、選択された物理アドレスDPAD1~Mが、書込み物理アドレステーブルNXPADTBLへ登録されていなければStep56を行う。Step56では、情報処理回路MANAGERは、物理アドレスSPAD1~Mのデータを物理アドレスDPAD1~Mへ移動させる。Step57では、情報処理回路MANAGERは、物理アドレスSPAD1~Mのデータを物理アドレスDPAD1~Mへ移動させたことにより、更新する必要のある全テーブルを更新する。この例では、M個分の物理アドレスのデータを移動した例を示したが、Mの値は、目標性能に応じて情報処理回路MANAGERによってプログラム可能であり、書込み物理アドレステーブルNXPADTBLの登録数Nとすると1≦M≦Nに設定すると良い。[パイプライン書込み動作]図25は、情報処理装置CPUCHIPからメモリモジュールNVMSTR0へ連続してライトリクエストが発生した場合のメモリモジュールNVMSTR0内部でパイプライン的に実行されるデータの書込み動作の一例を示す。特に限定しないが、制御回路STRCT0のバッファ装置BUF0から3には、それぞれN×512バイトの書込みデータが格納できる。バッファ転送動作WTBUF0、1、2および3は、ライトリクエストWTREQを、バッファ装置BUF0、1、2、および3へそれぞれ転送し、事前準備動作PREOP0、1、2および3は、バッファ装置BUF0、1、2、および3に転送された書込みデータを、それぞれ不揮発性メモリ装置NVMへ書込むための事前準備動作を示し、データ書込み動作WTNVM0、1、2および3は、バッファ装置BUF0、1、2、および3に格納された書込みデータを、それぞれ不揮発性メモリ装置NVMへ書き込む動作を示す。バッファ転送動作WTBUF0、1、2および3と、事前準備動作PREOP0、1、2および3と、データ書込み動作WTNVM0、1、2および3とは、制御回路STRCT0によってパイプライン動作が実現されるため書込み速度を向上することができる。時間T0からT2の期間に発生したN回のライトリクエストWTREQ-WTREQはインターフェース回路HOSTIFにおいて、先ず、バッファ装置BUF0へ転送されるWTBUF0。バッファ装置BUF0へ書き込みデータが格納できなくなると、時間T2からT4の期間に発生したN回のライトリクエストWTREQ-WTREQはバッファ装置BUF1へ転送されるWTBUF1。バッファ装置BUF1へ書き込みデータが格納できなくなると、時間T4からT6の期間に発生したN回のライトリクエストWTREQ-WTREQはバッファ装置BUF2へ転送されるWTBUF2。バッファ装置BUF2へ書き込みデータが格納できなくなると、時間T6からT8の期間に発生したN回のライトリクエストWTREQ-WTREQはバッファ装置BUF3へ転送されるWTBUF3。情報処理回路MANAGERは、時間T1からT3の期間において、バッファ装置BUF0に格納されている書込みデータを不揮発性メモリ装置NVMへ書込むための事前準備PREOP0を行う。情報処理回路MANAGERが行う事前準備PREOP0の動作内容を以下に示す。ライトリクエストWTREQ-WTREQへ含まれる論理アドレスLAD値を利用し、アドレス変換テーブルLPTBLから物理アドレスPADを読み出し、必要に応じてこの物理アドレスPADの有効フラグDVLD値を0にし、データを無効にする。アドレス変換テーブルLPTBLを更新する。ライトリクエストWTREQ-WTREQへ含まれる論理アドレスLAD値を利用し、アドレス変換テーブルLPTBLから物理アドレスPADを読み出し、必要に応じてこの物理アドレスPADの有効フラグDVLD値を0にし、データを無効にする。アドレス変換テーブルLPTBLを更新する。書込み物理アドレステーブルNXPADTBLに格納されている物理アドレスNXPADを読み出し、この物理アドレスNXPADへライトリクエストWTREQ-WTREQへ含まれる論理アドレスLADを割り当てる。物理セグメントテーブルPSEGTBLを更新する。物理テーブルPADTBを更新する。次の書込みに備えて、書込み物理アドレステーブルNXPADTBLを更新する。他の事前準備動作PREOP1、2、3も事前準備動作PREOP0と同様の動作を行う。次に、情報処理回路MANAGERは、時間T3からT5の期間において、バッファ装置BUF0に格納されている書込みデータを不揮発性メモリ装置NVMのへ書込むWTNVM0。この際に、データが書き込まれた不揮発性メモリ装置NVMの物理アドレスは上記での物理アドレスNXPAD値と等しい。他のデータ書込み動作WTNVM1、2、3もデータ書込み動作WTNVM0と同様の動作を行う。[読み出し動作]図26は、情報処理装置CPUCHIPからメモリモジュールNVMSTR0へリードリクエストRDREQ01が入力された際にメモリモジュールNVMSTR0が行うデータの読み出し動作の一例を示している。情報処理装置CPUCHIPから論理アドレス値LAD0、データ読み出し命令RD、セクタカウント値SEC1が含まれるリードリクエストRDREQ01が制御回路STRCT0へ入力されると、インターフェース回路HOSTIFは、ライトリクエストWTREQ01に埋め込まれているクロック情報を取り出し、シリアルデータ化されたリードリクエストRDREQ01をパラレルデータへ変換し、バッファ装置BUF0および情報処理回路MANAGERへ転送するStep61。次に、情報処理回路MANAGERは、論理アドレス値LAD0、データ読み出し命令RDおよびセクタカウントSEC1を解読し、ランダムアクセスメモリRAMへ保存されているアドレス変換テーブルLPTBL内のアドレスLAD0番地に格納されている物理アドレス値CPAD0と、この物理アドレス値CPAD0に対応した有効フラグCVF値を読み出すStep62。次に、読み出した有効フラグCVF値が1であるかどうかをチェックするStep63。もし、有効フラグCVF値が0の場合、情報処理回路MANAGERは、論理アドレスLAD0番地には物理アドレスCPADが割り当てられていないことを示し、不揮発性メモリ装置NVMからデータを読み出すことができないため、エラーが発生したことをインターフェース回路HOSTIFを通じて情報処理装置CPUCHIPへ伝えるStep65。もし、有効フラグCVF値が1の場合、情報処理回路MANAGERは、論理アドレスLAD0番地には物理アドレスCPAD0番地が対応していることを示すため、調停回路ARBとおよびメモリ制御装置NVCT10~NVCT17を通じて不揮発性メモリ装置NVM10~17のアドレスCPAD0番地からデータRDATA0を読み出す。データRDATA0には、メインデータDArea0と冗長データRArea0が含まれ、さらに冗長データRArea0には、ライト方法選択情報WRTFLGおよびECCコードECC0が含まれるStep64。次に、情報処理回路MANAGERは、不揮発性メモリNVM0へ格納されているSSDコンフィグレーション情報SDCFG内の論理アドレス領域LRNGと、この論理アドレス領域LRNGに対応したライト方法選択情報WRTFLGを読み出し、論理アドレス値LAD0がどの論理アドレス領域LRNGの論理アドレスかを調べ、これに対応したライト方法選択情報WRTFLGを求める。さらに、ライト方法選択情報WRTFLG値が1かどうかをチェックするStep66。ライト方法選択情報WRTFLG値が1であれば、メインデータDArea0およびECCコードECC0の各ビットを反転させ、メインデータIDArea0およびECCコードIECC0を生成するStep67。次に、情報処理回路MANAGERは、ECCコードIECC0を利用して、メインデータIDArea0にエラーがあるかをチェックし、エラーがあれば訂正を行いStep68、インターフェース回路HOSTIFを通じて情報処理装置CPUCHIPへ転送するStep69。ライト方法選択情報WRTFLG値が1でなければ、情報処理回路MANAGERは、ECCコードECC0を利用して、メインデータDArea0にエラーがあるかをチェックし、エラーがあれば訂正を行いStep68、インターフェース回路HOSTIFを通じて情報処理装置CPUCHIPへ転送するStep69。[書込み方法]図27は、図13のbに示しているSSDコンフィグレーション情報の中のライト方法選択情報WRTFLGにより選択された書込み方法を説明する。図13のbでは、論理アドレス領域LRNG1のライト方法選択情報WRTFLGは0へ設定され、論理アドレス領域LRNG2のライト方法選択情報WRTFLGは1に設定されている。また、特に限定しないが、セット状態のメモリセルは0のビットデータを表し、リセット状態のメモリセルは1のビットデータを表す。情報処理装置CPUCHIPから論理アドレス値LAD、データ書込み命令WRT、セクタカウント値SEC1、512バイトの書込みデータDATA0が含まれるライトリクエストWTREQ01がインターフェース回路HOSTIFを通じて情報処理回路MANAGERへ入力されるとStep71、情報処理回路MANAGERは、ランダムアクセスメモリRAMへ格納したアドレスマップ範囲ADMAPを利用し、論理アドレス値LADが、論理アドレス領域LRNG1内の論理アドレス値であるか、あるいは、論理アドレス領域LRNG2内の論理アドレス値であるかを判断し、それぞれの論理アドレス領域LRNG1およびLRNG2のライト方法選択情報WRTFLGをチェックするStep72。ライトリクエストWTREQ01に含まれる論理アドレスLADが論理アドレス領域LRNG1内の論理アドレスLADであれば、論理アドレス領域LRNG1のライト方法選択情報WRTFLGが0へ設定されているので、書込みデータDATA0および書込みデータDATA0に対応する冗長データRArea0は、図16の物理アドレス領域PRNG1内の◎で示される書込み許可メモリセルに書き込まれるStep76。ライトリクエストWTREQ01に含まれる論理アドレスLADが論理アドレス領域LRNG2内の論理アドレスLADであれば、論理アドレス領域LRNG2のライト方法選択情報WRTFLGが1へ設定されているので、Step73からStep76を実行する。情報処理回路MANAGERは、Step73で、512バイト512x8ビットの書込みデータDATA0の中で、0のビットデータおよび1のビットデータを数えStep73、0のビットデータの数と1のビットデータの数を比較するStep74。次に、情報処理回路MANAGERは、1のビットデータの数が0のビットデータの数より大きい場合は、書込みデータDATA0の各ビットを反転させStep75、図16の物理アドレス領域PRNG2内の◎で示される書込み許可メモリセルへ書き込むStep76。書込みデータDATA0の各ビットを反転させることで、1のビットデータの数は、512バイト512x8ビットの内、常に2048ビット=40962以下となる。メモリセルへ512バイト512x8ビットデータを書き込むには、一旦、512バイト512x8ビットのメモリセルをセット状態にし0ビットデータによる消去、その後、必要なメモリセルをリセット状態へ書き換える1ビットデータによる書込み。書込みデータの各ビットを反転させることで、書込みデータの中の1のビットデータの数が常に12以下となり、書き込むデータ量を半減できる。これにより、図16の物理アドレス領域PRNG2内の◎で示される書込み許可メモリセルに対して、1のビットデータを1個置きに書き込むことができ、データ書込時にメモリセルが受けるジュール熱の熱履歴の影響を小さくでき、高信頼で長寿命のSSDを提供できる。図28には、図27で説明したライト方法選択情報WRTFLGが1の場合の書込み方法により、物理アドレス領域PRNG2内のメモリセルにデータを書きこんだ際の不揮発性メモリ装置内のメモリセルアレイARYの使用例を示す。ワード線WL0~WLiと、ビット線BL0~BLjとの交点がメモリセルを表しており、◎は書き込みが許可されたデータ書込みが行われる第1の書込み許可メモリセルを示す。TAREAはテスティングを行うための連続したメモリセル領域を示す。また、□はモニタリング用のメモリセルMONI1およびMONI2を示す。図27で説明したライト方法選択情報WRTFLGが1の場合の書込み方法にて書き込んだ1のビットデータが●を示す。この図に示すように、物理アドレス領域PRNG2内の◎で示される書込み許可メモリセルに対して、1のビットデータを千鳥格子状に書き込むことで、実効的なメモリ容量を変えることなく、メモリセルが受けるジュール熱の熱履歴の影響を小さくでき、高信頼で長寿命の情報処理装置を提供できる。なお、図27で説明したライト方法選択情報WRTFLGが2の場合、指定された領域からデータが読み出されstep77、その後、書き込みデータとビット単位で比較されstep78、違いが見つかった書き換えの必要があるデータだけ書き換えが実行されるstep79。図29は、図5に示す不揮発性メモリNVMEMのメモリバンクBK0~BK3のそれぞれが、3次元で、立体的に4層に重なり合っている際の不揮発性メモリ装置内のメモリセルアレイARYの一例を示す。特に限定しないが、メモリバンクBK0は第0層目へ形成され、メモリバンクBK1は第0層目の下層の第1層目へ形成され、メモリバンクBK2は第1層目の下層の第2層目へ形成され、メモリバンクBK3は第2層目の下層の第3層目へ形成される。ワード線WL0~WLiとビット線BL0~BLjとの交点がメモリセルを表し、●はデータを書き込まれたメモリセルを示す。第0層目のメモリバンクBK0と第1層目のメモリバンクBK1は物理アドレス領域PRNG1を形成し、第2層目のメモリバンクBK2と第3層目のメモリバンクBK3は物理アドレス領域PRNG2を形成する。TAREA0、TAREA1、TAREA2およびTAREA3はテスティングを行うための連続したメモリセル領域示す。また、□はモニタリング用のメモリセルMONI10、MONI11、MONI20およびMONI21を示す。第0層目のメモリバンクBK0には、ワード線WL0~WLiの中の偶数番目のワード線WLnと、ビット線BL0~BLjの中の偶数番目のビット線BLmとの交点である第1書込み許可メモリセルへデータが書き込まれており、第1層目のメモリバンクBK1には、ワード線WL0~WLiの中の奇数番目のワード線WLnと、ビット線BL0~BLjの中の奇数番目のビット線BLmとの交点である第4書込み許可メモリセルへデータが書き込まれており、第2層目のメモリバンクBK2には、ワード線WL0~WLiと、ビット線BL0~BLjのの交点である第1書込み許可メモリセルへデータが書き込まれており、第3層目のメモリバンクBK3には、ワード線WL0~WLiと、ビット線BL0~BLjの交点である第1書込み許可メモリセルへデータが書き込まれている。このように、不揮発性メモリNVMEMのメモリバンクBK0~BK3のそれぞれを、3次元に、すなわち立体的に重ね合わせることで、不揮発性メモリNVMEMのチップ面積を小さくでき、低コストかつ大容量の不揮発性メモリを実現できる。また、第0層目のメモリバンクBK0では第1書込み許可メモリセルへデータを書き込み、また、第1層目のメモリバンクBK0では第4書込み許可メモリセルへデータを書き込むことで、層間において書き込むメモリセルが重ならないようにデータを書き込むことができ、メモリセルが受けるジュール熱の熱履歴の影響を小さくでき、高信頼で長寿命の情報処理装置を提供できる。図21のは、物理アドレスCPADと、不揮発性メモリNVM10~17のチップアドレスCHIPA20と、それぞれの不揮発性メモリチップ内のメモリアドレスBK10、ロウアドレスROWと、カラムアドレスCOLとの対応関係を示している。このアドレス対応付けは情報処理回路MANAGERが行う。ロウアドレスROWの値が活性化されるワード線WL番号を示し、カラムアドレスCOLの値が活性化されるビット線BL番号を示す。つまり、ロウアドレスROWの値がiのとき、i番目のワード線WLiが活性化され、カラムアドレスCOLの値がjのとき、j番目のビット線BLjが活性化される。図21のは、図20にて説明した情報処理回路MANAGERがデータを不揮発性メモリへ書き込むために必要な書込み物理アドレステーブルNXPADTBLを更新する際に、新たな物理アドレスを生成する方法図20のStep31の一例について説明する。図13へ示されているSSDコンフィグレーション情報SDCFG内のINTVLDCELLの値をmiとする。ビット線BLimaxはimax番目のビット線BLimaxであり、imaxはビット線番号の中で最大値を示す。情報処理回路MANAGERが、現在の物理アドレスCPADを、チップアドレスCHIPAと、バンクアドレスBK、ロウアドレスROWと、カラムアドレスCOLへ変換するStep42。次に、変換されたロウアドレスROWの値ciにて指定されたワード線番号がWLciで、カラムアドレスCOLの値cjにて指定されたビット線番号がBLcjの場合、ビット線番号BLcjが最大ビット線番号BLimaxとINTVLDCELL値miの差以上かどうかを判定するStep43。ビット線番号BLcjが、この差以上であればStep44を実行し、ビット線番号BLcjが、この差より小さければStep46を実行する。Step44では、新たな物理アドレスに対応するワード線番号WLnxとビット線番号BLnxを計算する。計算方法を以下に示す。ワード線番号WLnx=ワード線番号WLciINTVLDCELL値mi1最初にデータを書き込んだビット線番号が0の場合:ビット線番号BLnx=0最初にデータを書き込んだビット線番号が1の場合:ビット線番号BLnx=1Step46では、新たな物理アドレスに対応するワード線番号WLnxとビット線番号BLnxを計算する。計算方法を以下に示す。ワード線番号WLnx=ワード線番号WLciビット線番号BLnx=ビット線番号BLcjINTVLDCELL値mi1Step45では、ワード線番号WLnxとビット線番号BLnxから新たな物理アドレスCPADnxを決定する。先ず、ワード線番号WLnxは新たなロウアドレスROWnx値となり、ビット線番号BLnxは新たなカラムアドレスCOLnx値となる。次に、情報処理回路MANAGERは、図21のに示すアドレス対応付けに従い、チップアドレスCHIPAと、バンクアドレスBK、ロウアドレスROWnxと、カラムアドレスCOLnxから、新たな物理アドレスCPADnxを求める。図30は、図13のcに示すSSDコンフィグレーション情報の中のTDCL情報によって設けられたDTMPAREAと、図15に示すアドレスマップ範囲ADMAPを利用し、物理アドレス領域PRNG1内への書込み方法について説明する。先ず、図30のについて説明する。図13のcに示すSSDコンフィグレーション情報の中で、TDCL値が4であることから、ワード線WLi3からWLiの4つ分のワード線に接続されているメモリセル領域と、ビット線BLj3からBLjの4つ分のビット線に接続されているメモリセル領域のいずれかに含まれるメモリセル領域がDTMPAREAであり、点線にて囲まれたメモリセル領域が、このDTMPAREAを示す。また、図13のcに示すSSDコンフィグレーション情報の中で、論理アドレス領域LRNG1のINTVLDCELL情報が1であることから、論理アドレス領域LRNG1に対応する物理アドレス領域PRNG1内のメモリセルに対して1個置きに書き込むことができる。ワード線WL0~WLiとビット線BL0~BLjとの交点がメモリセルを表す。具体的には、物理アドレス領域PRNG1内のワード線WL0~WLiの中の偶数番目のワード線WLnと、ビット線BL0~BLjの中の偶数番目のビット線BLmの交点は、データ書込みが行われる第1書込み許可メモリセルを示し、ワード線WL0~WLiの中の偶数番目のワード線WLnと、ビット線BL0~BLjの中の奇数番目のビット線BLmとの交点は、データ書込みが行われる第2書込み許可メモリセルを示し、ワード線WL0~WLiの中の奇数番目のワード線WLnと、ビット線BL0~BLjの中の偶数番目のビット線BLmとの交点は、データ書込みが行われる第3書込み許可メモリセルを示し、ワード線WL0~WLiの中の奇数番目のワード線WLnと、ビット線BL0~BLjの中の奇数番目のビット線BLmとの交点は、データ書込みが行われる第4書込み許可メモリセルを示す。このように、論理アドレス領域LRNG1に対して物理アドレス領域PRNG1が4倍以上の大きさがある場合、第1書き込み許可メモリセルから第4書き込み許可メモリセルを設定することで、1つの論理アドレスに対して4つの物理アドレスを割り当てることが可能となる。図30のは、物理アドレス領域PRNG1内でDTMPAREA領域以外の全ての第1書込み許可メモリセルにデータが書き込まれた様子を示す。●はデータが書き込まれ、有効となっているメモリセルを示す。次に、図30のbおよびは、1つの論理アドレスに対して割り当てるメモリセルを第1書き込み許可メモリセルから第2書き込み許可メモリセルへ移行しながら、データを書き込む方法を示す。先ず、図30のbを説明する。図30のaで示した状態から、メモリセルが、ワード線WL0とビット線BL0とで選択される第1書込み許可メモリセルW0BL0CELと、ワード線WL0とビット線BL2とで選択される第1書込み許可メモリセルW0BL2CELのそれぞれに対応した論理アドレスLADへの書き込みが発生した場合、第1書込み許可メモリセルW0BL0CELへはデータ書き込まず、DTMPAREA領域内のワード線WL0と、ビット線BLj2とで選択される第2書込み許可メモリセルW0BLj2CELへ書き込む。同様に、第1書込み許可メモリセルW0BL2CELへはデータ書き込まず、DTMPAREA領域内の、ワード線WL0と、ビット線BLjとで選択される第2書込み許可メモリセルW0BLjCELへ書き込む。図30のcは、図30のbでの書き込み方法を繰り返し行った結果、データを書き込まれたメモリセルが、第1書込み許可メモリセルから第2書込み許可メモリセルへ移行した様子を示す。次に、図31のaおよびにおいて、1つの論理アドレスに対して割り当てるメモリセルを第2書き込み許可メモリセルから第3書き込み許可メモリセルへ移行しながら、データを書き込む方法を示す。先ず、図31のaを説明する。図30のcで示した状態から、ワード線WL0とビット線BL1とで選択される第2書込み許可メモリセルW0BL1CELとワード線WL0と、ビット線BL3とで選択される第2書込み許可メモリセルW0BL3CELのそれぞれに対応した論理アドレスLADへの書き込みが発生した場合、第2書込み許可メモリセルW0BL1CELへはデータを書き込まず、DTMPAREA領域内のワード線WLi1と、ビット線BL0とで選択される第3書込み許可メモリセルWi1BL0CELへ書き込む。同様に、第2書込み許可メモリセルW0BL3CELへはデータを書き込まず、DTMPAREA領域内のワード線WLi1と、ビット線BL2とで選択される第3書込み許可メモリセルWi1BL2CELへ書き込む。図31のbは、図31のaでの書き込み方法を繰り返し行った結果、データを書き込まれたメモリセルが、第2書込み許可メモリセルから第3書込み許可メモリセルへ移行した様子を示す。次に、図32のaおよびに、1つの論理アドレスに対して割り当てるメモリセルを第3書き込み許可メモリセルから第4書き込み許可メモリセルへ移行しながら、データを書き込む方法を示す。先ず、図32のaを説明する。図31のbで示した状態から、ワード線WL1とビット線BL0とで選択される第3書込み許可メモリセルW1BL0CELと、ワード線WL1とビット線BL2とで選択される第3書込み許可メモリセルW1BL2CELのそれぞれに対応した論理アドレスLADへの書き込みが発生した場合、第3書込み許可メモリセルW1BL0CELへはデータを書き込まず、DTMPAREA領域内の、ワード線WL1と、ビット線BLj2とで選択される第4書込み許可メモリセルWL1BLj2CELへデータを書き込む。同様に、前記第3書込み許可メモリセルWL1BL2CELへはデータを書き込まず、DTMPAREA領域内のワード線WL1とビット線BLjとで選択される第4書込み許可メモリセルWL1BLjCELへデータを書き込む。図32のbは、図32のaによる書き込み方法を繰り返し行った結果、データが書き込まれたメモリセルが第3書込み許可メモリセルから第4書込み許可メモリセルへ移行した様子を示す。勿論、1つの論理アドレスに対して割り当てるメモリセルを第4書き込み許可メモリセルから第1書き込み許可メモリセルへ移行しながら、データを書き込むこともできることは言うまでも無い。以上説明したように、論理アドレス領域LRNG1に対応するメモリセルの数は、論理アドレス領域LRNG1の4倍以上となっているため、1つの論理アドレスに対して複数の物理アドレスへ割り当てることが可能となり、物理的に1つ以上離れたメモリセルへ書き込みながら、データを書き込む対象のメモリセルを第1書込み許可メモリセルから第2書込み許可メモリセルへ、第2書込み許可メモリセルから第3書込み許可メモリセルへ、第3書込み許可メモリセルから第4書込み許可メモリセルへ、第4書込み許可メモリセルから第1書込み許可メモリセルへ、順番に移行することで、データ書込時にメモリセルが受けるジュール熱の熱履歴の影響を小さくでき高信頼の情報処理装置を提供でき、さらに、1つの論理アドレスLADに対して複数の物理アドレスCPADを順番に割り当て、1つの論理アドレスLADに対する書換え回数の制限値を増大させ、長寿命の情報処理装置を提供できる。図33は、図5に示す不揮発性メモリNVMEMのメモリバンクBK0~BK3のそれぞれが、3次元で、すなわち立体的に4層に重なり合っている際の不揮発性メモリ装置内のデータが書き込まれたメモリセルの別の一例を示す。特に限定しないが、メモリバンクBK0は第0層目へ形成され、メモリバンクBK1は第0層目の下層の第1層目へ形成され、メモリバンクBK2は第1層目の下層の第2層目へ形成され、メモリバンクBK3は第2層目の下層の第3層目へ形成される。ワード線WL0~WLiとビット線BL0~BLjとの交点がメモリセルを表し、●はデータを書き込まれたメモリセルを示している。図33は、SSDコンフィグレーション情報の中のライト方法選択情報WRTFLGが1の場合の書込み方法により、物理的に、千鳥格子状にメモリセルへ書き込まれている。また、第0層目のメモリバンクBK0から、第3層目のメモリバンクBK3は物理アドレス領域PRNG2を形成する。第0層のメモリバンクBK0と、第2層目のメモリバンクBK2には、ワード線WL0~WLiの中の偶数番目のワード線WLnと、ビット線BL0~BLjの中の偶数番目のビット線BLmとの交点であるメモリセルWLevenBLevenへデータが書き込まれており、第1層目のメモリバンクBK1と、第3層目のメモリバンクBK3には、ワード線WL0~WLiの中の奇数番目のワード線WLnと、ビット線BL0~BLjの中の奇数番目のビット線BLmとの交点であるメモリセルWLoddBLoddへデータが書き込まれている。このように、不揮発性メモリNVMEMのメモリバンクBK0~BK3のそれぞれを、3次元に立体的に重ね合わせることで不揮発性メモリNVMEMのチップ面積を小さくでき、低コストかつ大容量の不揮発性メモリを実現できる。また、第0層目から第3層目の層間にて書き込むメモリセルが重ならないように、データを書き込むことができ、メモリセルが受けるジュール熱の熱履歴の影響を小さくでき高信頼で長寿命の情報処理装置を提供できる。図34は、図20にて説明した情報処理回路MANAGERがデータを不揮発性メモリへ書き込むために必要な書込み物理アドレステーブルNXPADTBLを更新する際に、新たな物理アドレスを生成する方法図20のStep31の一例について説明する。また、情報処理回路MANAGERは、図21のaに示される物理アドレスCPADと、不揮発性メモリの各種アドレスチップアドレスCHIPA、メモリバンクアドレスBK、ロウアドレスROW、カラムアドレスCOLとの対応付けを行う。さらに、図13のに示すSSDコンフィグレーション情報の中のライト方法選択情報WRTFLGが1の場合の書込み方法にて、データを物理的に千鳥格子状にメモリセルへ書き込む。なお、ビット線BLimaxは、imax番目のビット線BLimaxであり、imaxはビット線番号の中で最大値を示す。情報処理回路MANAGERが、現在の物理アドレスCPADStep81を、チップアドレスCHIPAと、バンクアドレスBKcと、ロウアドレスROWと、カラムアドレスCOLへ変換するStep82。次に、変換されたロウアドレスROWの値ciにて指定されたワード線番号WLciが偶数かどうかを判定するStep83。ワード線番号WLciが偶数であれば、Step84を実行し、奇数であればStep88を実行する。Step84では、カラムアドレスCOLの値cjで指定されたビット線番号がBLcjの場合、ビット線番号BLcjが最大ビット線番号BLimaxと1との差以上かどうかを判定する。ビット線番号BLcjが、この差以上であればStep85を実行し、ビット線番号BLcjが、この差より小さければStep87を実行する。Step85および87では、新たな物理アドレスに対応するワード線番号WLnxとビット線番号BLnxを計算する。計算方法を以下に示す。Step85では、ワード線番号WLnx=ワード線番号WLci1、ビット線番号BLnx=1となる。Step87では、ワード線番号WLnx=ワード線番号WLci、ビット線番号BLnx=BLcj2となる。Step88では、カラムアドレスCOLの値cjにて指定されたビット線番号がBLcjの場合、ビット線番号BLcjが最大ビット線番号BLimax以上かどうかを判定する。ビット線番号BLcjが、この差以上であればStep89を実行し、ビット線番号BLcjが、この差より小さければStep90を実行する。Step89および90では、新たな物理アドレスに対応するワード線番号WLnxとビット線番号BLnxを計算する。計算方法を以下に示す。Step89では、ワード線番号WLnx=ワード線番号WLci1、ビット線番号BLnx=0となる。Step90では、ワード線番号WLnx=ワード線番号WLci、ビット線番号BLnx=BLcj2となる。Step86では、情報処理回路MANAGERがワード線番号WLnxとビット線番号BLnxから新たな物理アドレスCPADnxを決定する。先ず、ワード線番号WLnxは新たなロウアドレスROWnx値となり、ビット線番号BLnxは新たなカラムアドレスCOLnx値となり、次に、情報処理回路MANAGERは図21のに示すアドレス対応付けに従い、チップアドレスCHIPAと、バンクアドレスBK、ロウアドレスROWnxと、カラムアドレスCOLnxから、新たな物理アドレスCPADnxを求める。図35は、図13のcに示すSSDコンフィグレーション情報の中のライト方法選択情報WRTFLGと、TDCL情報によって設けられたDTMPAREAと、図15に示すアドレスマップ範囲ADMAPを利用し、物理アドレス領域PRNG2内への書込み方法について説明する。先ず、図35のについて説明する。図13のcに示すSSDコンフィグレーション情報の中でTDCL値が4であることから、ワード線WLi3からWLiの4つ分のワード線に接続されているメモリセル領域と、ビット線BLj3からBLjの4つ分のビット線に接続されているメモリセル領域のいずれかに含まれるメモリセル領域がDTMPAREAであり、点線にて囲まれたメモリセル領域が、このDTMPAREAを示す。図13のcに示すSSDコンフィグレーション情報の中のライト方法選択情報WRTFLGが1であることから、図27に示す書込み方法にて、データが千鳥格子状にメモリセルへ書き込まれている。具体的には、物理アドレス領域PRNG2内のワード線WL0~WLiの中の偶数番目のワード線WLnと、ビット線BL0~BLjの中の偶数番目のビット線BLmの交点のメモリセルWLevenBLevenCELへデータが書込まれ、ワード線WL0~WLiの中の奇数番目のワード線WLnと、ビット線BL0~BLjの中の偶数番目のビット線BLmとの交点のメモリセルWLoddBLoddCELへデータが書込まれている。●はデータが書き込まれ、有効となっているメモリセルを示す。また、物理アドレス領域Prng2内のワード線WL0~WLiの中の偶数番目のワード線WLnと、ビット線BL0~BLjの中の奇数番目のビット線BLmの交点のメモリセルWLevenBLoddCELと、ワード線WL0~WLiの中の奇数番目のワード線WLnと、ビット線BL0~BLjの中の偶数番目のビット線BLmとの交点のメモリセルWloddBLevenCELへはデータが書込まれていない。このように、1回の書込みで、実効的にデータが書き込まれるメモリセル数は、全体の半分となり、1つの論理アドレスに対して2つの物理アドレスを割り当てることが可能となる。そこで、図35のbおよびでは、1つの論理アドレスに対して割り当てるメモリセルをメモリセルWLevenBLevenCELからメモリセルWLoddBLevenCELへ、メモリセルWLoddBLoddCELからメモリセルWLevenBLoddCELへ移行しながらデータを書き込む方法を示す。以下に図35のbを説明する。図35のaで示した状態から、ワード線WL0とビット線BL0とで選択されるメモリセルWL0BL0CELおよびワード線WL1とビット線BL1とで選択されるメモリセルWL1BL1CELのそれぞれに対応した論理アドレスLADへの書き込みが発生した場合、メモリセルWL0BL0CELへはデータを書き込まず、DTMPAREA領域内にある奇数番目のワード線WLi2と、ビット線BL0とで選択されるメモリセルWLi2BL0CELへデータを書き込む。また、メモリセルWL1BL1CELへはデータを書き込まず、DTMPAREA領域内にある偶数番目のワード線WLi1と、ビット線BL1とで選択されるメモリセルWLi1BL1CELへデータを書き込む。これによってデータを書込むメモリセルをメモリセルWLevenBLevenCELからメモリセルWLoddBLevenCELへ、メモリセルWLoddBLoddCELからメモリセルWLevenBLoddCELへ移行することができる。図35のbは、図35のaでの書き込み方法を繰り返し行った結果、データを書き込まれたメモリセルがメモリセルWLevenBLevenCELからメモリセルWLoddBLevenCELへ、メモリセルWLoddBLoddCELからメモリセルWLevenBLoddCELへ移行したことを示す。以上説明したように、図13のcに示すSSDコンフィグレーション情報の中のライト方法選択情報WRTFLG値1で選択された書き込み方法を適用すると、1回の書込みで、実効的にデータが書き込まれるメモリセル数は、全体の半分となる。そのため、1つの論理アドレスLADに対して2つの物理アドレスPADを割り当てることが可能となり、千鳥格子状に離れたメモリセルへ書き込みながら、データを書き込む対象のメモリセルをメモリセルWLevenBLevenCELからメモリセルWLoddBLevenCELへ、メモリセルWLoddBLoddCELからメモリセルWLevenBLoddCELへ移行することで、データ書込時にメモリセルが受けるジュール熱の熱履歴の影響を小さくでき高信頼の情報処理装置を提供でき、さらに、1つの論理アドレスLADに対して複数の物理アドレスCPADを順番に割り当て、1つの論理アドレスLADに対する書換え回数の制限値を増大させ、長寿命の情報処理装置を提供できる。[まとめ]以上説明した実施の形態により得られる主な効果は以下の通りである。第1に、コントローラによって、相変化メモリのメモリセルに対してN個置きに書き込むことができ、データ書込時にメモリセルが受けるジュール熱の熱履歴の影響を小さくできる、高信頼で長寿命の情報処理装置を提供できる。第2に、コントローラによって、相変化メモリのメモリセルに対して複数の書込み許可をN個置きに書き込むことができ、データ書込時にメモリセルが受けるジュール熱の熱履歴の影響を小さくできる、高信頼で長寿命の情報処理装置を提供できる。第3に、コントローラによって、相変化メモリのメモリセルに対して、書込みを禁止したメモリセルを物理的に連続した領域に配置することができ、データ書込時にメモリセルが受けるジュール熱の熱履歴の影響を小さくできる、高信頼で長寿命の情報処理装置を提供できる。第4に、SDDコンフィグレーション情報SDCFGはプログラム可能なため、柔軟に、情報処理システム装置にあわせた高信頼で長寿命の情報処理装置を提供できる。第5に、コントローラによって、データを圧縮し、メモリセルへ書込みすることで、実効的なメモリ容量を変えることなくデータ書込時にメモリセルが受けるジュール熱の熱履歴の影響を小さくできる相変化メモリを含む、高信頼で長寿命の情報処理装置を提供できる。第6に、コントローラによって、ホストからの論理アドレスに対応する物理アドレスをシーケンシャルに割り当てることにより、相変化メモリのアドレス毎のデータ消去回数のバラツキを抑えることができ、高信頼で長寿命の情報処理装置を提供できる。第7に、コントローラはライトリクエストのバッファへの格納と、書込み事前準備と、相変化メモリへの書き込み動作をパイプライン的に処理するため、高性能な情報処理装置を提供できる。