(57)【特許請求の範囲】
【請求項１】
データの書き換え時に消去が必要な複数の不揮発性メモリと、
前記不揮発性メモリを制御するメモリコントローラと、を有し、
前記メモリコントローラは、
データの書き込みで指定される論理アドレスを不揮発性メモリの物理アドレスに変換するアドレス変換テーブルと、
消去済みの物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去済みの物理ブロック数を管理する消去済み物理ブロック管理部と、
消去可能物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去可能の物理ブロック数を管理する消去可能物理ブロック管理部と、
前記複数の不揮発性メモリに対する書き込みおよび消去を制御し、前記消去済み物理ブロック管理部で管理される一の不揮発性メモリの第１の物理ブロックに受信したデータの書き込みを行い、当該書き込みと並行して前記消去可能物理ブロック管理部で管理される他の不揮発性メモリの第２の物理ブロックの消去を行うメモリ制御部と、を含み、
前記不揮発性メモリと接続されるインターフェイスであるチャネルを複数有し、
前記各チャネルにおいて、不揮発性メモリの消去単位である物理ブロックを不揮発性メモリ毎に１つ以上、論理アドレス空間に割当てられない物理ブロックとして持ち、
前記消去済み物理ブロック管理部は、
消去済みの物理ブロックアドレスとそのチャネル、チャネル毎の消去済みの物理ブロック数を管理し、
前記消去可能物理ブロック管理部は、
消去可能物理ブロックアドレスとそのチャネル、チャネル毎の消去可能の物理ブロック数を管理し、
データを受信すると、
前記消去済み物理ブロック管理部は、
消去対象とならないチャネルに属する物理ブロックをその論理アドレスに対応する第１の物理ブロックとして割り当て、
前記消去可能物理ブロック管理部は、
消去可能の物理ブロックが多いほうのチャネルに属する物理ブロックを消去する第２の物理ブロックとして選択し、
前記メモリ制御部は、
前記第１の物理ブロックに受信データを書き込むのと並行して、前記第２の物理ブロックの消去を実行する
メモリ装置。
【請求項２】
データの書き換え時に消去が必要な複数の不揮発性メモリと、
前記不揮発性メモリを制御するメモリコントローラと、を有し、
前記メモリコントローラは、
データの書き込みで指定される論理アドレスを不揮発性メモリの物理アドレスに変換するアドレス変換テーブルと、
消去済みの物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去済みの物理ブロック数を管理する消去済み物理ブロック管理部と、
消去可能物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去可能の物理ブロック数を管理する消去可能物理ブロック管理部と、
前記複数の不揮発性メモリに対する書き込みおよび消去を制御し、前記消去済み物理ブロック管理部で管理される一の不揮発性メモリの第１の物理ブロックに受信したデータの書き込みを行い、当該書き込みと並行して前記消去可能物理ブロック管理部で管理される他の不揮発性メモリの第２の物理ブロックの消去を行うメモリ制御部と、を含み、
前記不揮発性メモリと接続されるインターフェイスであるチャネルを複数有し、
前記各チャネルにおいて、不揮発性メモリの消去単位である物理ブロックを不揮発性メモリ毎に１つ以上、論理アドレス空間に割当てられない物理ブロックとして持ち、
最後に書き込みを実行したチャネルの情報を記録する最終書き込みチャネル記録部をさらに含み、
前記消去済み物理ブロック管理部は、
消去済みの物理ブロックアドレスとそのチャネルを管理し、
消去可能物理ブロック管理部は、
消去可能物理ブロックアドレスとそのチャネルを管理し、
データを受信すると、
前記最終書き込みチャネル記録部は、前回書き込みを行ったチャネルを調べ、
前記消去済み物理ブロック管理部は、
前回書き込みを行っていないチャネルに属する物理ブロックをその論理アドレスに対応する第１の物理ブロックとして割り当て、
前記消去可能物理ブロック管理部は、
前回書き込みを行ったチャネルに属する物理ブロックを消去する第２の物理ブロックとして選択し、
前記メモリ制御部は、
前記第１の物理ブロックに受信データを書き込むのと並行して、前記第２の物理ブロックの消去を実行し、データ書き込み後に、データの書き込みを実行したチャネルの情報を前記最終書き込みチャネル記録部に通知する
メモリ装置。
【請求項３】
前記メモリコントローラは、
物理ブロックのサイズの境界を超える書き込みが要求された場合には、境界を超える前後で、書き込み先の物理ブロックと消去する物理ブロックを再度選択し直す
請求項１または２記載のメモリ装置。
【請求項４】
前記メモリコントローラは、
物理ブロックへの書き込みデータのサイズが第１の閾値より大きい場合に、一のチャネルによる書き込みと並行して、他のチャネルで消去を実行し、第１の閾値は設定変更可能である
請求項３記載のメモリ装置。
【請求項５】
前記メモリコントローラは、
前記不揮発性メモリと接続されるインターフェイスであるチャネルを複数有し、
物理ブロックへの書き込みデータのサイズにより、一のチャネルによる書き込みと並行して、他のチャネルで複数のブロックの消去を実行する
請求項４記載のメモリ装置。
【請求項６】
前記消去済み物理ブロック管理部は、
消去済みブロックとして最初に登録されたブロックを書き込みブロックとして選択する
請求項１から５のいずれか一に記載のメモリ装置。
【請求項７】
前記消去済み物理ブロック管理部は、
消去回数の最も少ないブロックを書き込みブロックとして選択する
請求項１から５のいずれか一に記載のメモリ装置。
【請求項８】
前記メモリコントローラは、
前記不揮発性メモリと接続されるインターフェイスであるチャネルを複数有し、
各チャネルにおいて、不揮発性メモリの消去単位である物理ブロックを２つ以上、論理アドレス空間に割当てられない物理ブロックとして持ち、
直前に消去した物理ブロックを書き込みブロックとして選択しない
請求項６または７記載のメモリ装置。
【請求項９】
前記メモリコントローラは、
データ読み出し時に、ブロック当りの読み出しデータサイズが第２の閾値よりも大きい場合に、データの読み出しと並行して、消去可能物理ブロックリストを検索し、読み出しに使用されていないチャネルに属する消去可能ブロックを消去する
請求項８記載のメモリ装置。
【請求項１０】
前記読み出しデータサイズの第２の閾値は設定変更可能である
請求項９記載のメモリ装置。
【請求項１１】
データの書き換え時に消去が必要な複数の不揮発性メモリと、
前記不揮発性メモリを制御するメモリコントローラと、を有し、
前記メモリコントローラは、
データの書き込みで指定される論理アドレスを不揮発性メモリの物理アドレスに変換するアドレス変換テーブルと、
消去済みの物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去済みの物理ブロック数を管理する消去済み物理ブロック管理部と、
消去可能物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去可能の物理ブロック数を管理する消去可能物理ブロック管理部と、
前記複数の不揮発性メモリに対する書き込みおよび消去を制御し、前記消去済み物理ブロック管理部で管理される一の不揮発性メモリの第１の物理ブロックに受信したデータの書き込みを行い、当該書き込みと並行して前記消去可能物理ブロック管理部で管理される他の不揮発性メモリの第２の物理ブロックの消去を行うメモリ制御部と、を含み、
前記不揮発性メモリと接続されるインターフェイスであるチャネルを少なくとも一つ有し、
１つのチャネルに複数の不揮発性メモリが接続され、前記不揮発性メモリは複数のグループに分類され、
前記各グループにおいて１つ以上、論理アドレス空間に割当てられない物理ブロックとして持ち、
前記消去済み物理ブロック管理部は、
消去済みの物理ブロックアドレスとそのグループ、グループ毎の消去済みの物理ブロック数を管理し、
前記消去可能物理ブロック管理部は、
消去可能物理ブロックアドレスとそのグループ、グループ毎の消去可能の物理ブロック数を管理し、
データを受信すると、
前記消去済み物理ブロック管理部は、
消去済みの物理ブロック数が多いほうのグループに属する物理ブロックをその論理アドレスに対応する第１の物理ブロックとして割り当て、
前記消去可能物理ブロック管理部は、
書き込み対象とならないグループに属する物理ブロックを消去する第２の物理ブロックとして選択し、
前記メモリ制御部は、
前記第１の物理ブロックに受信データを書き込むのと並行して、前記第２の物理ブロックの消去を実行する
メモリ装置。
【請求項１２】
データの書き換え時に消去が必要な複数の不揮発性メモリと、
前記不揮発性メモリを制御するメモリコントローラと、を有し、
前記メモリコントローラは、
データの書き込みで指定される論理アドレスを不揮発性メモリの物理アドレスに変換するアドレス変換テーブルと、
消去済みの物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去済みの物理ブロック数を管理する消去済み物理ブロック管理部と、
消去可能物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去可能の物理ブロック数を管理する消去可能物理ブロック管理部と、
前記複数の不揮発性メモリに対する書き込みおよび消去を制御し、前記消去済み物理ブロック管理部で管理される一の不揮発性メモリの第１の物理ブロックに受信したデータの書き込みを行い、当該書き込みと並行して前記消去可能物理ブロック管理部で管理される他の不揮発性メモリの第２の物理ブロックの消去を行うメモリ制御部と、を含み、
前記不揮発性メモリと接続されるインターフェイスであるチャネルを少なくとも一つ有し、
１つのチャネルに複数の不揮発性メモリが接続され、前記不揮発性メモリは複数のグループに分類され、
前記各グループにおいて１つ以上、論理アドレス空間に割当てられない物理ブロックとして持ち、
前記消去済み物理ブロック管理部は、
各チャネル毎に消去済みの物理ブロックアドレスとそのグループ、グループ毎の消去済みの物理ブロック数を管理し、
前記消去可能物理ブロック管理部は、
各チャネル毎に消去可能物理ブロックアドレスとそのグループ、グループ毎の消去可能の物理ブロック数を管理し、
データを受信すると、
前記消去済み物理ブロック管理部は、
消去対象とならないグループに属する物理ブロックをその論理アドレスに対応する第１の物理ブロックとして割り当て、
前記消去可能物理ブロック管理部は、
消去可能の物理ブロックが多いほうのグループに属する物理ブロックを消去する第２の物理ブロックとして選択し、
前記メモリ制御部は、
前記第１の物理ブロックに受信データを書き込むのと並行して、前記第２の物理ブロックの消去を実行する
メモリ装置。
【請求項１３】
データの書き換え時に消去が必要な複数の不揮発性メモリと、
前記不揮発性メモリを制御するメモリコントローラと、を有し、
前記メモリコントローラは、
データの書き込みで指定される論理アドレスを不揮発性メモリの物理アドレスに変換するアドレス変換テーブルと、
消去済みの物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去済みの物理ブロック数を管理する消去済み物理ブロック管理部と、
消去可能物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去可能の物理ブロック数を管理する消去可能物理ブロック管理部と、
前記複数の不揮発性メモリに対する書き込みおよび消去を制御し、前記消去済み物理ブロック管理部で管理される一の不揮発性メモリの第１の物理ブロックに受信したデータの書き込みを行い、当該書き込みと並行して前記消去可能物理ブロック管理部で管理される他の不揮発性メモリの第２の物理ブロックの消去を行うメモリ制御部と、を含み、
前記メモリコントローラは、
前記不揮発性メモリと接続されるインターフェイスであるチャネルを少なくとも一つ有し、
１つのチャネルに複数の不揮発性メモリが接続され、前記不揮発性メモリは複数のグループに分類され、
前記各グループにおいて１つ以上、論理アドレス空間に割当てられない物理ブロックとして持ち、
最後に書き込みを実行したグループの情報を記録する最終書き込みグループ記録部をさらに含み、
前記消去済み物理ブロック管理部は、
各チャネル毎に消去済みの物理ブロックアドレスとそのグループを管理し、
消去可能物理ブロック管理部は、
各チャネル毎に消去可能物理ブロックアドレスとそのグループを管理し、
データを受信すると、
前記最終書き込みグループ記録部は、前回書き込みを行ったグループを調べ、
前記消去済み物理ブロック管理部は、
前回書き込みを行っていないグループに属する物理ブロックをその論理アドレスに対応する第１の物理ブロックとして割り当て、
前記消去可能物理ブロック管理部は、
前回書き込みを行ったグループに属する物理ブロックを消去する第２の物理ブロックとして選択し、
前記メモリ制御部は、
前記第１の物理ブロックに受信データを書き込むのと並行して、前記第２の物理ブロックの消去を実行し、データ書き込み後に、データの書き込みを実行したチャネルの情報を前記最終書き込みチャネル記録部に通知する
メモリ装置。
【請求項１４】
前記メモリコントローラは、
物理ブロックのサイズの境界を超える書き込みがホストから要求された場合には、境界を超える前後で、書き込み先の物理ブロックと消去する物理ブロックを再度選択し直す
請求項１１から１３のいずれか一に記載のメモリ装置。
【請求項１５】
前記メモリコントローラは、
物理ブロックへの書き込みデータのサイズが第３の閾値より大きい場合に、一のグループでの書き込みと並行して、他のグループで消去を実行し、第３の閾値は設定変更可能である
請求項１４記載のメモリ装置。
【請求項１６】
前記メモリコントローラは、
物理ブロックへの書き込みデータのサイズにより、一のグループでの書き込みと並行して、他のグループの消去実行状態を監視し、消去が完了した場合には、他のブロックのアドレスに消去コマンドを発行する
請求項１１から１５のいずれか一に記載のメモリ装置。
【請求項１７】
前記消去済み物理ブロック管理部は、
消去済みブロックとして最初に登録されたブロックを書き込みブロックとして選択する
請求項１１から１６のいずれか一に記載のメモリ装置。
【請求項１８】
前記消去済み物理ブロック管理部は、
消去回数の最も少ないブロックを書き込みブロックとして選択する
請求項１１から１６のいずれか一に記載のメモリ装置。
【請求項１９】
前記メモリコントローラは、
前記各グループにおいて、不揮発性メモリの消去単位である物理ブロックを２つ以上、論理アドレス空間に割当てられない物理ブロックとして持ち、
直前に消去した物理ブロックを書き込みブロックとして選択しない
請求項１７または１８記載のメモリ装置。
【請求項２０】
前記メモリコントローラは、
データ読み出し時に、ブロック当りの読み出しデータサイズが第４の閾値よりも大きい場合に、データの読み出しと並行して、消去可能物理ブロックリストを検索し、読み出しに使用されていないグループに属する消去可能ブロックを消去する
請求項１９記載のメモリ装置。
【請求項２１】
前記読み出しデータサイズの第４の閾値は設定変更可能である
請求項２０記載のメモリ装置。
【請求項２２】
前記メモリコントローラは、
複数のチャネルを有し、当該複数のチャネルをそれぞれが独立に制御可能であり、
各チャネル当り２以上の不揮発性メモリが接続されている
請求項１から２１のいずれか一に記載のメモリ装置。
【請求項２３】
データの書き換え時に消去が必要な複数の不揮発性メモリと、
前記不揮発性メモリを制御するメモリコントローラと、を有し、
前記メモリコントローラは、
複数のチャネルを有し、当該複数のチャネルをそれぞれが独立に制御可能であり、
各チャネル当り２以上の不揮発性メモリが接続され、
データの書き込みで指定される論理アドレスを不揮発性メモリの物理アドレスに変換するアドレス変換テーブルと、
消去済みの物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去済みの物理ブロック数を管理する消去済み物理ブロック管理部と、
消去可能物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去可能の物理ブロック数を管理する消去可能物理ブロック管理部と、
前記複数の不揮発性メモリに対する書き込みおよび消去を制御するメモリ制御部と、を含み、
前記不揮発性メモリの消去単位である物理ブロックを不揮発性メモリ毎に１つ以上、論理アドレス空間に割当てられない物理ブロックとして持ち、
前記メモリ制御部は、
前記消去済み物理ブロック管理部で管理される一の不揮発性メモリの第１の物理ブロックに受信したデータの書き込みを行い、当該書き込みと並行して前記消去可能物理ブロック管理部で管理される他の不揮発性メモリの第２の物理ブロックの消去を行う
メモリ装置。
【請求項２４】
データの書き換え時に消去が必要な複数の不揮発性メモリと、
前記不揮発性メモリを制御するメモリコントローラと、
前記メモリコントローラに対して少なくともデータの書き込みを指示するホスト装置と、を有し、
前記メモリコントローラは、
データの書き込みで指定される論理アドレスを不揮発性メモリの物理アドレスに変換するアドレス変換テーブルと、
消去済みの物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去済みの物理ブロック数を管理する消去済み物理ブロック管理部と、
消去可能物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去可能の物理ブロック数を管理する消去可能物理ブロック管理部と、
前記複数の不揮発性メモリに対する書き込みおよび消去を制御し、前記消去済み物理ブロック管理部で管理される一の不揮発性メモリの第１の物理ブロックに受信したデータの書き込みを行い、当該書き込みと並行して前記消去可能物理ブロック管理部で管理される他の不揮発性メモリの第２の物理ブロックの消去を行うメモリ制御部と、を含み、
前記不揮発性メモリと接続されるインターフェイスであるチャネルを複数有し、
前記各チャネルにおいて、不揮発性メモリの消去単位である物理ブロックを不揮発性メモリ毎に１つ以上、論理アドレス空間に割当てられない物理ブロックとして持ち、
前記消去済み物理ブロック管理部は、
消去済みの物理ブロックアドレスとそのチャネル、チャネル毎の消去済みの物理ブロック数を管理し、
前記消去可能物理ブロック管理部は、
消去可能物理ブロックアドレスとそのチャネル、チャネル毎の消去可能の物理ブロック数を管理し、
データを受信すると、
前記消去済み物理ブロック管理部は、
消去対象とならないチャネルに属する物理ブロックをその論理アドレスに対応する第１の物理ブロックとして割り当て、
前記消去可能物理ブロック管理部は、
消去可能の物理ブロックが多いほうのチャネルに属する物理ブロックを消去する第２の物理ブロックとして選択し、
前記メモリ制御部は、
前記第１の物理ブロックに受信データを書き込むのと並行して、前記第２の物理ブロックの消去を実行する
メモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを書き換えるために一度データを消去する必要があるフラッシュメモリ等のメモリ装置およびメモリシステムに関するものである。
【背景技術】
【０００２】
現在、不揮発性メモリの一つであるフラッシュメモリはメモリカードやＵＳＢドライブとして、広く使われている。
フラッシュメモリはデータを書き換えるためには、一度消去する必要があるメモリで、図１に示すように、データの書き込みはページ単位ＰＧで行われ、消去はページの集合であるブロックＢＬＫ単位で行われる。図１の例では、１ブロックＢＬＫは１２８ページの集合で形成されている。
【０００３】
また、メモリコントローラがホスト装置からの論理アドレスをフラッシュメモリの物理アドレスに変換するシステム（論物変換）を採用するメモリシステムが知られている。
そして、メモリシステムにおいて、ホスト装置からの書き込みが発生すると、その論理アドレスに消去済みの物理ブロックを割り当て、消去を発生させずに、データの書き込みを優先させる技術が提案されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】ＷＯ２００５／０２９３１１
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところが、一般的に、フラッシュメモリ、フラッシュメモリの制御コントローラと、書き込みデータを供給するホスト装置からなるメモリシステムにおいては、状況によって、書き込み速度が低下する場合がある。
たとえば、書き込もうとするフラッシュメモリのブロックにすでにデータが書き込まれている場合には、消去してからデータを書きこむため、消去済みのブロックにデータを書く場合に比べて速度が低下する。
【０００６】
また、特許文献１には、データ書き込み時に別チップの消去可能な物理ブロックの消去を行う技術が開示されている。
この技術では、論理アドレスの下位のアドレス空間をメモリチップＡに割当て、論理アドレスの上位のアドレス空間をメモリチップＢに割当てている。
この場合、一方のアドレス空間のデータに書き込みが集中し、一つのメモリチップ内で消去可能なブロックがなくなってしまうと、データを消去してから書き込む処理が必要となり、書き込み速度を低下させることになる(図２参照)。
【０００７】
一方、消去動作機器をホスト装置からのアクセスがないとき（以下、スタンバイ時）にメモリコンローラが任意のタイミングで不要ブロックを消去すると、スタンバイ時の消費電力を低くすることができなくなる。
また、ホスト機器がアクセスをしないときに、電源を遮断するようなシステムにおいては、実質的に消去ブロックが確保できなくなるおそれがある。
【０００８】
本発明は、書き込み時の論理アドレスによらず書き込み速度を低下させることなくデータを書き込むことが可能で、スタンバイ時の低消費電力化を図ることも可能なメモリ装置およびメモリシステムを提供することにある。
【課題を解決するための手段】
【０００９】
本発明の第１の観点の不揮発性メモリ装置は、データの書き換え時に消去が必要な複数の不揮発性メモリと、前記不揮発性メモリを制御するメモリコントローラと、を有し、前記メモリコントローラは、データの書き込みで指定される論理アドレスを不揮発性メモリの物理アドレスに変換するアドレス変換テーブルと、消去済みの物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去済みの物理ブロック数を管理する消去済み物理ブロック管理部と、消去可能物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去可能の物理ブロック数を管理する消去可能物理ブロック管理部と、前記複数の不揮発性メモリに対する書き込みおよび消去を制御し、前記消去済み物理ブロック管理部で管理される一の不揮発性メモリの第１の物理ブロックに受信したデータの書き込みを行い、当該書き込みと並行して前記消去可能物理ブロック管理部で管理される他の不揮発性メモリの第２の物理ブロックの消去を行うメモリ制御部と、を含み、前記不揮発性メモリと接続されるインターフェイスであるチャネルを複数有し、前記各チャネルにおいて、不揮発性メモリの消去単位である物理ブロックを不揮発性メモリ毎に１つ以上、論理アドレス空間に割当てられない物理ブロックとして持ち、前記消去済み物理ブロック管理部は、消去済みの物理ブロックアドレスとそのチャネル、チャネル毎の消去済みの物理ブロック数を管理し、前記消去可能物理ブロック管理部は、消去可能物理ブロックアドレスとそのチャネル、チャネル毎の消去可能の物理ブロック数を管理し、データを受信すると、前記消去済み物理ブロック管理部は、消去対象とならないチャネルに属する物理ブロックをその論理アドレスに対応する第１の物理ブロックとして割り当て、前記消去可能物理ブロック管理部は、消去可能の物理ブロックが多いほうのチャネルに属する物理ブロックを消去する第２の物理ブロックとして選択し、前記メモリ制御部は、前記第１の物理ブロックに受信データを書き込むのと並行して、前記第２の物理ブロックの消去を実行する。
【００１０】
本発明の第２の観点のメモリシステムは、データの書き換え時に消去が必要な複数の不揮発性メモリと、前記不揮発性メモリを制御するメモリコントローラと、前記メモリコントローラに対して少なくともデータの書き込みを指示するホスト装置と、を有し、前記メモリコントローラは、データの書き込みで指定される論理アドレスを不揮発性メモリの物理アドレスに変換するアドレス変換テーブルと、消去済みの物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去済みの物理ブロック数を管理する消去済み物理ブロック管理部と、消去可能物理ブロックアドレスとその不揮発性メモリ、不揮発性メモリ毎の消去可能の物理ブロック数を管理する消去可能物理ブロック管理部と、前記複数の不揮発性メモリに対する書き込みおよび消去を制御し、前記消去済み物理ブロック管理部で管理される一の不揮発性メモリの第１の物理ブロックに受信したデータの書き込みを行い、当該書き込みと並行して前記消去可能物理ブロック管理部で管理される他の不揮発性メモリの第２の物理ブロックの消去を行うメモリ制御部と、を含み、前記不揮発性メモリと接続されるインターフェイスであるチャネルを複数有し、前記各チャネルにおいて、不揮発性メモリの消去単位である物理ブロックを不揮発性メモリ毎に１つ以上、論理アドレス空間に割当てられない物理ブロックとして持ち、前記消去済み物理ブロック管理部は、消去済みの物理ブロックアドレスとそのチャネル、チャネル毎の消去済みの物理ブロック数を管理し、前記消去可能物理ブロック管理部は、消去可能物理ブロックアドレスとそのチャネル、チャネル毎の消去可能の物理ブロック数を管理し、データを受信すると、前記消去済み物理ブロック管理部は、消去対象とならないチャネルに属する物理ブロックをその論理アドレスに対応する第１の物理ブロックとして割り当て、前記消去可能物理ブロック管理部は、消去可能の物理ブロックが多いほうのチャネルに属する物理ブロックを消去する第２の物理ブロックとして選択し、前記メモリ制御部は、前記第１の物理ブロックに受信データを書き込むのと並行して、前記第２の物理ブロックの消去を実行する。
【発明の効果】
【００１１】
本発明によれば、書き込み時の論理アドレスによらず書き込み速度を低下させることなくデータを書き込むことができ、また、スタンバイ時の低消費電力化を図ることもできる。
【図面の簡単な説明】
【００１２】
【図１】フラッシュメモリの書き込みおよび消去単位を説明するための図である。
【図２】先行技術で書き込み速度が低下する場合があることを説明するための図である。
【図３】本第１の実施形態に係るメモリシステムの構成を示す図である。
【図４】第１の実施形態に係る論物変換テーブルの一例を示す図である。
【図５】論理アドレス境界について説明するための図である。
【図６】本実施形態に係る論物変換制御部における、論理アドレスから物理アドレスを生成する処理を説明するためのフローチャートである。
【図７】本実施形態に係る消去済み物理ブロック管理部が管理する消去済みブロックリストと消去可能物理ブロック管理部が管理する消去可能物理ブロックリストの一例を示す図である。
【図８】本第１の実施形態に係る消去可能物理ブロック管理部における、消去可能物理ブロックアドレスの生成処理を説明するためのフローチャートである。
【図９】本第１の実施形態に係る消去済み物理ブロック管理部における、消去済み物理ブロックアドレスの生成処理を説明するためのフローチャートである。
【図１０】消去回数をカウントして消去回数の少ないブロックを選択する方法を採用した場合の消去済みブロックリストの第１例を示す図である。
【図１１】消去回数をカウントして消去回数の少ないブロックを選択する方法を採用した場合の消去済みブロックリストの第２例を示す図である。
【図１２】本第１の実施形態に係るメモリ制御部の具体的な制御動作を説明するためのフローチャートである。
【図１３】メモリ制御部の制御動作において、論理アドレスに対して物理ブロックが割当てられていない場合を示す図である。
【図１４】メモリ制御部の制御動作において、書き込み論理アドレスが論理アドレス境界であり、かつ書き込みサイズが物理ブロックサイズと等しい場合を示す図である。
【図１５】メモリ制御部の制御動作において、論理アドレスに対する物理アドレスが設定済みであって、受信した論理アドレスに対応する物理アドレスＡとデータ書き込み先の物理アドレスＢを受信した場合の例を示す図である。
【図１６】メモリ制御部の制御動作において、書き込み論理アドレスと書き込み要求サイズの和が物理ブロックの境界を超える場合を示す図である。
【図１７】本第１の実施形態に係るメモリ制御部の具体的な読み出し制御動作を説明するためのフローチャートである。
【図１８】本第２の実施形態に係る消去可能物理ブロック管理部における、消去可能物理ブロックアドレスの生成処理を説明するためのフローチャートである。
【図１９】本第２の実施形態に係る消去済み物理ブロック管理部における、消去済み物理ブロックアドレスの生成処理を説明するためのフローチャートである。
【図２０】本第３の実施形態に係るメモリシステムの構成を示す図である。
【図２１】本第３の実施形態に係る消去可能物理ブロック管理部における、消去可能物理ブロックアドレスの生成処理を説明するためのフローチャートである。
【図２２】本第３の実施形態に係る消去済み物理ブロック管理部における、消去済み物理ブロックアドレスの生成処理を説明するためのフローチャートである。
【図２３】本第４の実施形態に係るメモリシステムの構成を示す図である。
【図２４】本第５の実施形態に係るメモリシステムの構成を示す図である。
【図２５】本第６の実施形態に係るメモリシステムの構成を示す図である。
【図２６】本第６の実施形態における複数の物理ブロックを消去する処理を説明するためのフローチャートである。
【図２７】本第６の実施形態に係る論物変換テーブルの一例を示す図である。
【図２８】本第７の実施形態に係るメモリシステムの構成を示す図である。
【図２９】本第８の実施形態に係るメモリシステムの構成を示す図である。
【図３０】本第９の実施形態に係るメモリシステムを説明するための第１図である。
【図３１】本第９の実施形態に係るメモリシステムを説明するための第２図である。
【図３２】本実施形態に係るメモリシステムの効果を説明するための図である。
【発明を実施するための形態】
【００１３】
以下、本実施形態を図面に関連付けて説明する。
なお、説明は以下の順序で行う。
１．第１の実施形態（メモリシステムの第１の構成例）
２．第２の実施形態（メモリシステムの第２の構成例）
３．第３の実施形態（メモリシステムの第３の構成例）
４．第４の実施形態（メモリシステムの第４の構成例）
５．第５の実施形態（メモリシステムの第５の構成例）
６．第６の実施形態（メモリシステムの第６の構成例）
７．第７の実施形態（メモリシステムの第７の構成例）
８．第８の実施形態（メモリシステムの第８の構成例）
９．第９の実施形態（メモリシステムの第９の構成例）
【００１４】
＜１．第１の実施形態＞
図３は、本第１の実施形態に係るメモリシステムの構成を示す図である。
【００１５】
本メモリシステム１０は、ホスト装置１００、メモリコントローラ２００、および不揮発性メモリ３００，３０１を含んで構成される。
【００１６】
ホスト装置１００は、不揮発性メモリ３００，３０１に書き込むデータとそのアドレス（以下、論理アドレス：ＬＡ）をメモリコントローラ２００に送信する。
メモリコントローラ２００は、ホスト装置１００から受信した論理アドレスを不揮発性メモリ３００，３０１のアドレスに変換し、ホスト装置１００から受信したデータを不揮発性メモリ３００，３０１に書き込む。
不揮発性メモリ３００，３０１は、メモリコントローラ２００から指定されたアドレスにデータを書き込む。
【００１７】
次に、メモリコントローラ２００について詳細に説明する。
メモリコントローラ２００は、ホストインタフェース（Ｉ／Ｆ）制御部２０１、ホストデータバッファ２０２、論物変換（論理アドレス・物理アドレス変換）制御部２０３、および論物変換テーブル２０４を有する。
メモリコントローラ２００は、消去可能物理ブロック管理部２０５、消去済み物理ブロック管理部２０６、メモリ制御部２０７、第１閾値設定部２０８、第２閾値設定部２０９、メモリＩ／Ｆ制御部２１０、メモリＩ／Ｆ制御部２１１を有する。
【００１８】
ホストＩ／Ｆ制御部２０１は、ホスト装置１００とのインターフェイスを制御する。
ホストＩ／Ｆ制御部２０１は、ホスト装置１００から書き込みアドレス、書き込み要求サイズもしくは読み出し要求サイズからなる書き込みおよび読み出しコマンドを受信すると、その論理アドレスＬＡとそのサイズをメモリ制御部２０７に通知する。
ホストＩ／Ｆ制御部２０１は、書き込み要求の場合は受信した書き込みデータをホストデータバッファ２０２に転送し、読み出し要求の場合には、ホストデータバッファ２０２のデータをホストＩ／ＦＨＩＦに出力する。
【００１９】
ホストデータバッファ２０２は、ホスト装置１００から受信した書き込みデータ、メモリ制御部２０７から受信した読み出しデータを一時的に保持する。
【００２０】
論物変換制御部２０３は、論物変換テーブル（アドレス変換テーブル）２０４を有する。
図４は、論物変換テーブルの一例を示す図である。
論物変換テーブル２０４は、図４に示すように、論理アドレスＬＡを実際の不揮発性メモリ３００，３０１の物理アドレスＰＡに変換した結果を保持するテーブルである。
論物変換制御部２０３は、この論物変換テーブル２０４を使って、メモリ制御部２０７から入力される論理アドレスＬＡを不揮発性メモリ３００，３０１の物理アドレスＰＡに変換する。そして、論物変換制御部２０３は、論理アドレスＬＡが物理アドレスＰＡに未割当てであるか、割当てられていた場合にはその物理アドレスＰＡと、データ書き込み先の物理アドレスＰＡをメモリ制御部２０７に通知する。
【００２１】
図５は、論理アドレス境界について説明するための図である。
論理アドレスＬＡは消去単位である物理ブロックサイズ毎に割り当てられるため、以下では、図５に示すように、この物理ブロック（ＰＢＬＫ）サイズ毎の論理アドレスＬＡの区切りを論理アドレス境界と呼ぶ（図５）。
【００２２】
図６は、本実施形態に係る論物変換制御部における、論理アドレスから物理アドレスを生成する処理を説明するためのフローチャートである。
【００２３】
論物変換制御部２０３は、メモリ制御部２０７から論理アドレスＬＡを受信し（ＳＴ１）、論物変換テーブル２０４から論理アドレスＬＡに対応する物理アドレスＰＡが存在しているかを調べる（ＳＴ２）。
論物変換制御部２０３は、論理アドレスＬＡに対応する物理アドレスＰＡが存在する場合には、ステップＳＴ３の処理を行う。
ステップＳＴ３において、論物変換制御部２０３は、論理アドレスＬＡに対する物理アドレスＰＡが設定されていること、受信した論理アドレスＬＡに対応する物理アドレスＰＡと、データ書き込み先の物理アドレスＰＡをメモリ制御部２０７に通知する。
論物変換制御部２０３は、メモリ制御部２０７でのデータ書き込み処理が終了するのを待って、論理アドレスＬＡと新たな物理アドレスＰＡの関係を論物変換テーブル２０４に更新する（ＳＴ４、ＳＴ５）。
ステップＳＴ２において、論理アドレスに対応する物理アドレスが存在しない場合には、論物変換制御部２０３は、消去済み物理ブロック管理部２０６に空きブロックアドレスの生成を要求する（ＳＴ６）。
論物変換制御部２０３は、消去済み物理ブロック管理部２０６から空きブロックアドレスとそのチャネルの情報を受信し、メモリ制御部２０７に通知し（ＳＴ７）、ステップＳＴ４の処理に移行する。
そして、上記したように、ステップＳＴ４において、論物変換制御部２０３は、メモリ制御部２０７でのデータ書き込み処理が終了するのを待って、ステップＳＴ５において、新たな論理アドレスと物理アドレスの関係を論物変換テーブル２０４に追加する。
【００２４】
消去可能物理ブロック管理部２０５は、消去可能物理ブロックアドレスとそのチャネル、チャネル毎の消去可能の物理ブロック数を管理する。
消去済み物理ブロック管理部２０６は、消去済みの物理ブロックアドレスとそのチャネル、チャネル毎の消去済みの物理ブロック数を管理する。
【００２５】
図７（Ａ）および（Ｂ）は、本実施形態に係る消去済み物理ブロック管理部が管理する消去済みブロックリストと消去可能物理ブロック管理部が管理する消去可能物理ブロックリストの一例を示す図である。
図７（Ａ）は消去済みブロックＥＤＢＬＫのリストＥＤＢＬを、図７（Ｂ）消去可能ブロックＥＢＢＬＫのリストＥＢＢＬを示している。
消去済みブロックリストＥＤＢＬおよび消去可能ブロックリストＥＢＢＬは、チャネルブロック番号ＣＨｘ（本例ではＸ＝０，１）およびブロック番号ＢＬＫ［ｙ］が対応付けてリストとして形成されている。
【００２６】
ここで、本第１の実施形態に係る消去可能物理ブロック管理部２０５における、消去可能物理ブロックアドレスの生成処理について説明する。
図８は、本第１の実施形態に係る消去可能物理ブロック管理部における、消去可能物理ブロックアドレスの生成処理を説明するためのフローチャートである。
【００２７】
消去可能物理ブロック管理部２０５は、図７（Ｂ）に示すように、消去可能ブロックＥＢＢＬＫとそのブロックの属するチャネルの情報、それぞれのチャネルの消去可能ブロック数を管理する。
そして、消去可能物理ブロック管理部２０５は、メモリ制御部２０７から消去ブロックのアドレス生成要求を受信する（ＳＴ１１）。
そして、消去可能物理ブロック管理部２０５は、書き込みコマンドを受信して書き込み動作を行う場合は（ＳＴ１２）、次の処理を行う。
消去可能物理ブロック管理部２０５は、消去済み物理ブロック管理部２０６から次に書き込みを行うチャネルの情報を受信する。
消去可能物理ブロック管理部２０５は、受信したチャネルとは異なるチャネルに属するブロックから消去可能ブロックを選択し、メモリ制御部２０７にその物理ブロックとチャネルの情報を出力する（ＳＴ１３，ＳＴ１４，ＳＴ１５）。そして、消去可能物理ブロック管理部２０５は、そのチャネルの消去可能ブロック数から１減算する（ＳＴ１６，ＳＴ１７）。
図８では、一例として、ステップＳＴ１３で、受信チャネルがチャネルＣＨ０であるかどうかを判別し、チャネルＣＨ０でない場合は、ステップＳＴ１４においてチャネルＣＨ０に属する消去可能ブロックを選択する。ステップＳＴ１３で、チャネルＣＨ０である場合は、ステップＳＴ１５においてチャネルＣＨ１に属する消去可能ブロックを選択する。
また、消去可能物理ブロック管理部２０５は、ステップＳＴ１２において、読み出しコマンドを受信して読み出し動作を行う場合は（ＳＴ１２）、次の処理を行う。
消去可能物理ブロック管理部２０５は、読み出しチャネルとして使用していないチャネルに属する物理ブロックを消去可能ブロックとして選択し、メモリ制御部２０７にその物理ブロックとチャネルの情報を出力する（ＳＴ１８）。
【００２８】
次に、本第１の実施形態に係る消去済み物理ブロック管理部２０６における、消去済み物理ブロックアドレスの生成処理について説明する。
図９は、本第１の実施形態に係る消去済み物理ブロック管理部における、消去済み物理ブロックアドレスの生成処理を説明するためのフローチャートである。
【００２９】
消去済み物理ブロック管理部２０６は、図７（Ａ）に示すように、消去済みブロックＥＤＢＬＫとそのブロックの属するチャネルの情報、それぞれのチャネルの消去済みブロック数を管理する。
そして、消去済み物理ブロック管理部２０６は、論物変換制御部２０３から消去ブロックアドレスの生成要求を受信する（ＳＴ２１）。
消去済み物理ブロック管理部２０６は、複数のチャネル（ここでは一例として２つのチャネルＣＨ０、ＣＨ１）において消去済みブロック数の多いチャネルがＣＨ１であるかＣＨ０であるかを判別する（ＳＴ２２）。
消去済み物理ブロック管理部２０６は、消去済みブロック数の多いチャネルがチャネルＣＨ１の場合に次の処理を行う。消去済み物理ブロック管理部２０６は、チャネルＣＨ１に属する消去済みブロックを次の書き込みブロックとして選択し、そのアドレスとチャネル番号ＣＨ１を論物変換制御部２０３に出力する（ＳＴ２３）。そして、消去済み物理ブロック管理部２０６は、そのチャネルＣＨ１の消去済みブロック数を１減算する（ＳＴ２４）。
消去済み物理ブロック管理部２０６は、消去済みブロック数の多いチャネルがチャネルＣＨ０の場合に次の処理を行う。消去済み物理ブロック管理部２０６は、チャネルＣＨ０に属する消去済みブロックを次の書き込みブロックとして選択し、そのアドレスとチャネル番号ＣＨ０を論物変換制御部２０３に出力する（ＳＴ２５）。そして、消去済み物理ブロック管理部２０６は、そのチャネルＣＨ０の消去済みブロック数を１減算する（ＳＴ２６）。
【００３０】
所定のチャネルに属する消去済みブロックの中から、次の書き込みに使用するブロックを選択する方法には２通りある。
消去済みブロックとして登録された順に使用ブロックとして選択する方法と、消去回数をカウントして消去回数の少ないブロックを選択する方法である。
【００３１】
図１０は、消去回数をカウントして消去回数の少ないブロックを選択する方法を採用した場合の消去済みブロックリストの第１例を示す図である。
図１１は、消去回数をカウントして消去回数の少ないブロックを選択する方法を採用した場合の消去済みブロックリストの第２例を示す図である。
【００３２】
図１０の例では、消去済み物理ブロック管理部２０６は、消去回数をカウントして消去回数の少ないブロックを選択する。
図１１の例では、図１０の方法に、さらに最後に消去を行ったブロックを判別するためのフラグＦＬＧを持ち、フラグＦＬＧが設定されているブロック以外で、消去回数が最も少ないブロックを選択する。
【００３３】
メモリ制御部２０７は、基本的に次のような制御を行う。
メモリ制御部２０７は、ホスト装置１００から受信した論理アドレスＬＡと書き込みおよび読み出しサイズに対して、書き込みおよび読み出しが論理アドレス境界を超える場合には、論理アドレス境界毎に論理アドレスＬＡを論物変換制御部２０３に出力する。そして、メモリ制御部２０７は、これに対応する物理アドレスＰＡを受信し、書き込みおよび読み出しサイズ分のデータの書き込みおよび読み出しを行う。
【００３４】
次に、メモリ制御部２０７の具体的な書き込み制御動作について説明する。
図１２は、本第１の実施形態に係るメモリ制御部の具体的な制御動作を説明するためのフローチャートである。
図１３は、メモリ制御部の制御動作において、論理アドレスに対して物理ブロックが割当てられていない場合を示す図である。
図１４は、メモリ制御部の制御動作において、書き込み論理アドレスが論理アドレス境界であり、かつ書き込みサイズが物理ブロックサイズと等しい場合を示す図である。
図１５は、メモリ制御部の制御動作において、論理アドレスに対する物理アドレスが設定済みであって、受信した論理アドレスに対応する物理アドレスＡとデータ書き込み先の物理アドレスＢを受信した場合の例を示す図である。
図１６は、メモリ制御部の制御動作において、書き込み論理アドレスと書き込み要求サイズの和が物理ブロックの境界を超える場合を示す図である。
図１３〜図１６においては、論理アドレス空間ＬＡＳと物理アドレス空間ＰＡＳを対応付けて示されている。
【００３５】
メモリ制御部２０７は、ホスト装置１００からデータの書き込み要求があると（ＳＴ０００）、書き込み論理アドレスと書き込み要求サイズの和が論理アドレス境界を超えているか否かを判別する（ＳＴ１００）。
ステップＳＴ１００において、書き込み論理アドレスと書き込み要求サイズの和が論理アドレス境界を超えない場合、メモリ制御部２０７は書き込みサイズを書き込み要求サイズに設定し（ＳＴ２００）、論理アドレスＬＡを論物変換制御部２０３に出力する。
ステップＳＴ１００において、書き込み論理アドレスと書き込み要求サイズの和が論理アドレス境界を超える場合、後述するステップＳＴ３００の処理を実行する。そして、メモリ制御部２０７は、その論理アドレスＬＡを論物変換制御部２０３に出力する。
次に、メモリ制御部２０７は、論物変換制御部２０３から書き込み論理アドレスが物理アドレスに未割り当て（未設定）であるか否かの結果を受信する。
【００３６】
ステップＳＴ４００で、図１３に示すように、論理アドレスに対して物理ブロックが割当てられていない場合には、メモリ制御部２０７は、論物変換制御部２０３から書き込み物理ブロックアドレスＣを受信する（ＳＴ５００）。
次に、メモリ制御部２０７は、書き込みデータサイズＷＳＺがあらかじめ第１閾値設定部２０８に設定された第１閾値ＴＨ１より大きいか否かの判別を行う（ＳＴ６００）。
メモリ制御部２０７は、書き込みデータサイズが第１閾値設定部２０８の第１閾値ＴＨ１より大きい場合には、消去可能物理ブロック管理部２０５から通知されるチャネルの物理ブロックに消去コマンドを発行し、物理ブロックを１つ以上消去する（ＳＴ７００）。メモリ制御部２０７は、消去コマンドの発行と並行して、もう一方のチャンネルに対して、ホスト装置１００からの書き込みデータを物理ブロックアドレスに書き込む（ＳＴ８００）。
書き込みデータサイズが第１閾値設定部２０８の第１閾値ＴＨ１より大きくない場合（小さい場合）、メモリ制御部２０７は、消去を行わず、ホスト装置１００からの書き込みデータを物理ブロックアドレスに書込む（ＳＴ８００）。
メモリ制御部２０７は、データの書き込みが終了したことを論物変換制御部２０３に通知する（ＳＴ９００）。
ここで、メモリ制御部は、書き込み要求サイズが実際に書込んだデータサイズと等しいか否かを判別する（ＳＴ１０００）。
このケースでは、書き込み要求サイズ＝実際に書込んだデータサイズであるため、処理が終了する。
【００３７】
ステップＳＴ４００で、書き込み論理アドレスが論理アドレス境界でありかつ図１４に示すように書き込みサイズが物理ブロックサイズと等しい場合には、メモリ制御部２０７は書き込み論理アドレスを出力し、論物変換制御部２０３で変換された書き込み物理ブロックアドレスＣを受信する（ＳＴ５００）。
次に、メモリ制御部２０７は、書き込みデータサイズがあらかじめ第１閾値設定部２０８に設定された第１閾値ＴＨ１より大きいか否かの判別を行う（ＳＴ６００）。
メモリ制御部２０７は、書き込みデータサイズが第１閾値設定部２０８の第１閾値ＴＨ１より大きい場合には、消去可能物理ブロック管理部２０５から通知されるチャネルの物理ブロックに消去コマンドを発行し、物理ブロックを１つ以上消去する（ＳＴ７００）。メモリ制御部２０７は、消去コマンドの発行と並行して、もう一方のチャンネルに対して、ホスト装置１００からの書き込みデータを物理ブロックアドレスに書き込む（ＳＴ８００）。
書き込みデータサイズが第１閾値設定部２０８の第１閾値ＴＨ１より大きくない場合、メモリ制御部２０７は、消去を行わず、ホスト装置１００からの書き込みデータを物理ブロックアドレスに書込む（ＳＴ８００）。
メモリ制御部２０７は、データの書き込みが終了したことを論物変換制御部２０３に通知する（ＳＴ９００）。
ここで、メモリ制御部は、書き込み要求サイズが実際に書込んだデータサイズと等しいか否かを判別する（ＳＴ１０００）。
このケースでは、書き込み要求サイズ＝実際に書込んだデータサイズであるため、処理が終了する。
【００３８】
メモリ制御部２０７は、ステップＳＴ４００で論理アドレスに対する物理アドレスが設定済みであり、かつ書き込みサイズが物理ブロックサイズと等しくない場合、論物変換制御部２０３から、図１５のように受信した論理アドレスに対応する物理アドレスＡとデータ書き込み先の物理アドレスＢを受信する（ＳＴ１２００）。
メモリ制御部２０７は、物理アドレスＡの物理ブロックのデータの中で書換えないデータを物理アドレスＢの物理ブロックにコピー（ＳＴ１３００）する。以下、上記コピー処理をガベージ処理と呼ぶ。
次に、メモリ制御部２０７は、書き込みデータサイズＷＳＺがあらかじめ第１閾値設定部２０８に設定された第１閾値ＴＨ１より大きいか否かの判別を行う（ＳＴ１４００）。
メモリ制御部２０７は、書き込みデータサイズが第１閾値設定部２０８の第１閾値ＴＨ１より大きい場合には、消去可能物理ブロック管理部２０５から通知されるチャネルの物理ブロックに消去コマンドを発行し、物理ブロックを１つ以上消去する（ＳＴ１５００）。そして、メモリ制御部２０７は、この消去コマンドの発行と並行して、もう一方のチャンネルに対して、ホスト装置１００からの書き込みデータを物理ブロックＢに書き込む（ＳＴ１６００）。
書き込みデータサイズが第１閾値設定部２０８の第１閾値ＴＨ１より大きくない場合、メモリ制御部２０７は、消去を行わず、ホスト装置１００からの書き込みデータを物理ブロックＢに書込む（ＳＴ１６００）。
メモリ制御部２０７は、データの書き込みが終了したことを論物変換制御部２０３に通知する（ＳＴ９００）、このケースでは、書き込み要求サイズ＝実際に書込んだデータサイズであるため、処理が終了する（ＳＴ１０００）。
【００３９】
ステップＳＴ１００において、図１６に示すように、書き込み論理アドレスと書き込み要求サイズの和が論理アドレス境界を超える場合、メモリ制御部２０７は書き込みサイズを書き込み論理アドレスから次の論理境界までのサイズに設定する（ＳＴ３００）。
そして、メモリ制御部２０７は、ステップＳＴ４００からの処理を実行する。
ステップＳＴ１０００において、書き込み要求サイズが実際に書込んだデータサイズに等しくない場合には、メモリ制御部２０７は次に処理を行う。
メモリ制御部２０７は、書き込み要求サイズを実際に書込んだデータサイズ分減算して新たな書き込み要求サイズとする。そして、メモリ制御部２０７は、書き込み論理アドレスに実際に書込んだデータサイズ分を加算して新たな書き込み論理アドレスとし、書き込み要求サイズがゼロになるまで、上述したステップＳＴ１００からの処理を実行する。
【００４０】
次に、メモリ制御部２０７の具体的な読み出し制御動作について説明する。
図１７は、本第１の実施形態に係るメモリ制御部の具体的な読み出し制御動作を説明するためのフローチャートである。
【００４１】
メモリ制御部２０７は、ホスト装置１００からデータの読み出し要求の場合は、以下の処理を実行する。
メモリ制御部２０７は、ホスト装置１００から読み出し論理アドレス、読み出し要求サイズとデータを受信する（ＳＴ２０００）。
メモリ制御部２０７は、読み出し論理アドレスと読み出し要求サイズの和が物理ブロックの境界を超えるか否かを判別する（ＳＴ２１００）。
ステップＳＴ２１００において、読み出し論理アドレスと読み出し要求サイズの和が物理ブロックの境界を超ない場合には、メモリ制御部２０７は、読み出しサイズとして読み出し要求サイズを設定する（ＳＴ２２００）。
ステップＳＴ２１００において、読み出し論理アドレスと読み出し要求サイズの和が物理ブロックの境界を超える場合には、メモリ制御部２０７は、読み出しの先頭論理アドレスから次の論理アドレス境界までを読み出しサイズに設定する（Ｓ２３００）。
メモリ制御部２０７は、論理アドレスを論物変換制御部２０３に出力し、論物変換制御部２０３から読み出し先の物理アドレスを受信する（ＳＴ２４００）。
そして、メモリ制御部２０７は、読み出しデータサイズＲＳＺがあらかじめ第２閾値設定部２０９に設定された第２閾値ＴＨ２より大きいか否かの判別を行う（ＳＴ２５００）。
メモリ制御部２０７は、読み出しデータサイズが第２閾値設定部２０９の第２閾値ＴＨ２より大きい場合には、消去可能物理ブロック管理部２０５から通知されるチャネルの物理ブロックに消去コマンドを発行し、物理ブロックを１つ以上消去する（ＳＴ２６００）。
メモリ制御部２０７は、消去後、論物変換制御部２０３から受信した読み出し論理アドレスに対応するチャネルと物理アドレスに対しメモリＩ／Ｆ制御部２１０を通じてデータを読み出し、読み出しデータをホストデータバッファ２０２に出力する（ＳＴ２７００）。
読み出しデータサイズが第２閾値設定部２０９の第２閾値ＴＨ２より大きくない場合（小さい場合）、メモリ制御部２０７は、消去を行わず、不揮発性メモリからデータを読み出し、読み出しデータをホストデータバッファ２０２に出力する（ＳＴ２７００）。
次に、メモリ制御部２０７は、読み出し要求サイズが実際に読み出したデータサイズに等しいか否かを判別する（ＳＴ２８００）。
ステップＳＴ２８００において、読み出し要求サイズが実際に読み出したデータサイズに等しくない場合には、メモリ制御部２０７は、読み出し要求サイズを実際に読み出しデータサイズ分減算して新たな読み出し要求サイズとする。
そして、メモリ制御部２０７は、読み出し論理アドレスに実際に読み出したデータサイズ分を加算して新たな読み出し論理アドレスとし、読み出し要求サイズが実際に読み出したデータサイズに等しくなるまで、上記処理を実行する（ＳＴ２８００、ＳＴ２９００）。
【００４２】
本第１の実施形態によれば、論理アドレス境界にアラインされた論理アドレスで、物理ブロックサイズの整数倍のサイズの書き込み要求に対しては、その書き込み時の論理アドレスによらずに、書き込み速度を落とさずに、データを書き込むことができる。
【００４３】
＜２．第２の実施形態＞
本第２の実施形態に係るメモリシステムは、基本的にシステム構成は第１の実施形態と同様である。
本第２の実施形態は、消去可能物理ブロックアドレスの生成処理と消去済み物理ブロックアドレスの生成処理が上述した第１の実施形態と異なる。
【００４４】
図１８は、本第２の実施形態に係る消去可能物理ブロック管理部における、消去可能物理ブロックアドレスの生成処理を説明するためのフローチャートである。
図１９は、本第２の実施形態に係る消去済み物理ブロック管理部における、消去済み物理ブロックアドレスの生成処理を説明するためのフローチャートである。
なお、図１８および図１９において、理解を容易にするため、図８および図９と同様の処理については同じステップ番号を付与してある。
【００４５】
まず、本第２の実施形態に係る消去可能物理ブロック管理部における、消去可能物理ブロックアドレスの生成処理について、図１８に関連付けて説明する。
【００４６】
消去可能物理ブロック管理部２０５は、図７（Ｂ）に示すように、消去可能ブロックＥＢＢＬＫとそのブロックの属するチャネルの情報、それぞれのチャネルの消去可能ブロック数を管理する。
そして、消去可能物理ブロック管理部２０５は、メモリ制御部２０７から消去ブロックのアドレス生成要求を受信する（ＳＴ１１）。
そして、消去可能物理ブロック管理部２０５は、書き込みコマンドを受信して書き込み動作を行う場合は（ＳＴ１２）、次の処理を行う。
消去可能物理ブロック管理部２０５は、消去可能ブロック数が多いチャネルに属するブロックから消去可能ブロックを選択し、メモリ制御部２０７にその物理ブロックとチャネルの情報を出力する（ＳＴ１３ａ，ＳＴ１４ａ，ＳＴ１５ａ）。そして、消去可能物理ブロック管理部２０５は、そのチャネルの消去可能ブロック数から１減算する（ＳＴ１６，ＳＴ１７）。
図１８では、一例として、ステップＳＴ１３ａで、チャネルＣＨ１の消去可能ブロック数がチャネルＣＨ０の消去可能ブロック数が多いかどうかを判別する。チャネルＣＨ０の消去ブロック数が多い場合は、ステップＳＴ１４ａにおいてチャネルＣＨ０に属する消去可能ブロックを選択する。ステップＳＴ１３ａで、チャネルＣＨ１の消去ブロック数が多い場合は、ステップＳＴ１５ａにおいてチャネルＣＨ１に属する消去可能ブロックを選択する。
また、消去可能物理ブロック管理部２０５は、ステップＳＴ１２において、読み出しコマンドを受信して読み出し動作を行う場合は（ＳＴ１２）、次の処理を行う。
消去可能物理ブロック管理部２０５は、読み出しチャネルとして使用していないチャネルに属する物理ブロックを消去可能ブロックとして選択し、メモリ制御部２０７にその物理ブロックとチャネルの情報を出力する（ＳＴ１８）。
【００４７】
次に、本第２の実施形態に係る消去済み物理ブロック管理部における、消去済み物理ブロックアドレスの生成処理について、図１９に関連付けて説明する。
【００４８】
消去済み物理ブロック管理部２０６は、図７（Ａ）に示すように、消去済みブロックＥＤＢＬＫとそのブロックの属するチャネルの情報、それぞれのチャネルの消去済みブロック数を管理する。
そして、消去済み物理ブロック管理部２０６は、論物変換制御部２０３から消去ブロックアドレスの生成要求を受信する（ＳＴ２１）。
消去済み物理ブロック管理部２０６は、次の消去ブロックの属するチャネルが所定のチャネル（ここでは一例としてチャネルＣＨ０）であるかを判別する（ＳＴ２２ａ）。
消去済み物理ブロック管理部２０６は、次の消去ブロックに属するチャネルがチャネルＣＨ０の場合に次の処理を行う。
消去済み物理ブロック管理部２０６は、チャネルＣＨ０とは異なるチャネルＣＨ１に属する空ブロック（消去済みブロック）を次の書き込みブロックとして選択し、そのアドレスとチャネル番号ＣＨ１を論物変換制御部２０３に出力する（ＳＴ２３ａ）。そして、消去済み物理ブロック管理部２０６は、そのチャネルＣＨ１の消去済みブロック数を１減算する（ＳＴ２４）。
消去済み物理ブロック管理部２０６は、次の消去ブロックに属するチャネルがチャネルＣＨ０でない場合に次の処理を行う。
消去済み物理ブロック管理部２０６は、チャネルＣＨ０に属する空ブロック（消去済みブロック）を次の書き込みブロックとして選択し、そのアドレスとチャネル番号ＣＨ１を論物変換制御部２０３に出力する（ＳＴ２５ａ）。そして、消去済み物理ブロック管理部２０６は、そのチャネルＣＨ０の消去済みブロック数を１減算する（ＳＴ２６）。
【００４９】
前述したように、所定のチャネルに属する消去済みブロックの中から、次の書き込みに使用するブロックを選択する方法には２通りある。
消去済みブロックとして登録された順に使用ブロックとして選択する方法と、消去回数をカウントして消去回数の少ないブロックを選択する方法である。
【００５０】
前述したように、図１０に、消去回数をカウントして消去回数の少ないブロックを選択する方法を採用した場合の消去済みブロックリストの第１例を示している。
また、図１１に、消去回数をカウントして消去回数の少ないブロックを選択する方法を採用した場合の消去済みブロックリストの第２例を示している。
【００５１】
図１０の例では、消去済み物理ブロック管理部２０６は、消去回数をカウントして消去回数の少ないブロックを選択する。
図１１の例では、図１０の方法に、さらに最後に消去を行ったブロックを判別するためのフラグＦＬＧを持ち、フラグＦＬＧが設定されているブロック以外で、消去回数が最も少ないブロックを選択する。
【００５２】
＜３．第３の実施形態＞
図２０は、本第３の実施形態に係るメモリシステムの構成を示す図である。
【００５３】
本第３の実施形態に係るメモリシステム１０Ａが第１の実施形態に係るメモリシステム１０と異なる点は、次の通りである。
本第３の実施形態に係るメモリシステム１０Ａは、メモリコントローラ２００Ａに最終書き込みチャネル記録部２２０が新たに配置されている。
そして、第３の実施形態では、消去済み物理ブロックアドレスの生成処理と消去可能物理ブロックアドレスの生成処理が第１の実施形態と異なる。
【００５４】
メモリシステム１０Ａにおいては、メモリ制御部２０７は、書き込みを実行したチャネルがチャネルＣＨ０かチャネルＣＨ１のいずれかを示す信号を最終書き込みチャネル記録部２２０に出力する。
最終書き込みチャネル記録部２２０は、最後にデータの書き込みを行ったチャネルがどちらかを記録し、その情報を消去可能物理ブロック管理部２０５および消去済み物理ブロック管理部２０６に供給する。
【００５５】
図２１は、本第３の実施形態に係る消去可能物理ブロック管理部における、消去可能物理ブロックアドレスの生成処理を説明するためのフローチャートである。
図２２は、本第３の実施形態に係る消去済み物理ブロック管理部における、消去済み物理ブロックアドレスの生成処理を説明するためのフローチャートである。
なお、図２１および図２２において、理解を容易にするため、図８および図９と同様の処理については同じステップ番号を付与してある。
【００５６】
まず、本第３の実施形態に係る消去可能物理ブロック管理部における、消去可能物理ブロックアドレスの生成処理について、図２１に関連付けて説明する。
【００５７】
消去可能物理ブロック管理部２０５は、図７（Ｂ）に示すように、消去可能ブロックＥＢＢＬＫとそのブロックの属するチャネルの情報、それぞれのチャネルの消去可能ブロック数を管理する。
そして、消去可能物理ブロック管理部２０５は、メモリ制御部２０７から消去ブロックのアドレス生成要求を受信する（ＳＴ１１）。
そして、消去可能物理ブロック管理部２０５は、書き込みコマンドを受信して書き込み動作を行う場合は（ＳＴ１２）、次の処理を行う。
消去可能物理ブロック管理部２０５は、最終書き込みチャネル記録部２２０から出力される最後にデータの書き込みを行ったチャネルの情報を受信する。
そして、消去可能物理ブロック管理部２０５は、最後に書き込みチャネルとして使用したチャネルに属するブロックから消去可能ブロックを選択し、メモリ制御部２０７にその物理ブロックとチャネルの情報を出力する（ＳＴ１３ｂ，ＳＴ１４ｂ，ＳＴ１５ｂ）。
図２１では、一例として、ステップＳＴ１３ｂで、最終書き込みチャネルがチャネルＣＨ０であるかどうかを判別し、チャネルＣＨ０である場合は、ステップＳＴ１４ｂにおいてチャネルＣＨ０に属する消去可能ブロックを選択する。ステップＳＴ１３ｂで、チャネルＣＨ０でない場合は、ステップＳＴ１５ｂにおいてチャネルＣＨ１に属する消去可能ブロックを選択する。
また、消去可能物理ブロック管理部２０５は、ステップＳＴ１２において、読み出しコマンドを受信して読み出し動作を行う場合は（ＳＴ１２）、次の処理を行う。
消去可能物理ブロック管理部２０５は、読み出しチャネルとして使用していないチャネルに属する物理ブロックを消去可能ブロックとして選択し、メモリ制御部２０７にその物理ブロックとチャネルの情報を出力する（ＳＴ１８）。
【００５８】
次に、本第３の実施形態に係る消去済み物理ブロック管理部における、消去済み物理ブロックアドレスの生成処理について、図２２に関連付けて説明する。
【００５９】
消去済み物理ブロック管理部２０６は、図７（Ａ）に示すように、消去済みブロックＥＤＢＬＫとそのブロックの属するチャネルの情報、それぞれのチャネルの消去済みブロック数を管理する。
そして、消去済み物理ブロック管理部２０６は、論物変換制御部２０３から消去ブロックアドレスの生成要求を受信する（ＳＴ２１）。
消去済み物理ブロック管理部２０６は、最終チャネルが所定のチャネル（ここでは一例としてチャネルＣＨ０）であるかを判別する（ＳＴ２２ｂ）。
消去済み物理ブロック管理部２０６は、最終チャネルがチャネルＣＨ０の場合に次の処理を行う。
消去済み物理ブロック管理部２０６は、チャネルＣＨ０とは異なるチャネルＣＨ１に属する空ブロック（消去済みブロック）を選択し、そのアドレスとチャネル番号ＣＨ１を論物変換制御部２０３に出力する（ＳＴ２５ａ）。
消去済み物理ブロック管理部２０６は、最終チャネルがチャネルＣＨ０でない場合に次の処理を行う。
消去済み物理ブロック管理部２０６は、チャネルＣＨ０に属する空ブロック（消去済みブロック）を選択し、そのアドレスとチャネル番号ＣＨ１を論物変換制御部２０３に出力する（ＳＴ２５ａ）。
【００６０】
前述したように、所定のチャネルに属する消去済みブロックの中から、次の書き込みに使用するブロックを選択する方法には２通りある。
消去済みブロックとして登録された順に使用ブロックとして選択する方法と、消去回数をカウントして消去回数の少ないブロックを選択する方法である。
【００６１】
前述したように、図１０に、消去回数をカウントして消去回数の少ないブロックを選択する方法を採用した場合の消去済みブロックリストの第１例を示している。
また、図１１に、消去回数をカウントして消去回数の少ないブロックを選択する方法を採用した場合の消去済みブロックリストの第２例を示している。
【００６２】
図１０の例では、消去済み物理ブロック管理部２０６は、消去回数をカウントして消去回数の少ないブロックを選択する。
図１１の例では、図１０の方法に、さらに最後に消去を行ったブロックを判別するためのフラグＦＬＧを持ち、フラグＦＬＧが設定されているブロック以外で、消去回数が最も少ないブロックを選択する。
【００６３】
＜４．第４の実施形態＞
図２３は、本第４の実施形態に係るメモリシステムの構成を示す図である。
【００６４】
本第４の実施形態に係るメモリシステム１０Ｂが第３の実施形態に係るメモリシステム１０Ａと異なる点は、次の通りである。
本第４の実施形態に係るメモリシステム１０Ｂは、チャネルが複数のメモリＩ／Ｆ制御部を含んで構成されている。この場合、チャネル情報の中にどのメモリＩ／Ｆ制御部であるかを特定する情報を含む。
【００６５】
図２３の例では、チャネルＣＨ０は２つのメモリＩ／Ｆ制御部２１０−１，２１０−２を含み、メモリＩ／Ｆ制御部２１０−１に不揮発性メモリ３００−１が接続され、メモリＩ／Ｆ制御部２１０−２に不揮発性メモリ３００−２が接続されている。
同様に、チャネルＣＨ１は２つのメモリＩ／Ｆ制御部２１１−１，２１１−２を含み、メモリＩ／Ｆ制御部２１１−１に不揮発性メモリ３０１−１が接続され、メモリＩ／Ｆ制御部２１１−２に不揮発性メモリ３０１−２が接続されている。
【００６６】
なお、このような構成は、最終書き込みチャネル記録部を含まない第１の実施形態や第２の実施形態にも適用可能である。
【００６７】
＜５．第５の実施形態＞
図２４は、本第５の実施形態に係るメモリシステムの構成を示す図である。
【００６８】
本第５の実施形態に係るメモリシステム１０Ｃが第３の実施形態に係るメモリシステム１０Ａと異なる点は、次の通りである。
本第５の実施形態に係るメモリシステム１０Ｃは、チャネルが２つではさらに多くのチャネルを含んで構成されている。
【００６９】
図２４の例では、４つのチャネルＣＨ０〜ＣＨ３を含んで構成されている。
チャネルＣＨ０はメモリＩ／Ｆ制御部２１０を含み、メモリＩ／Ｆ制御部２１０に不揮発性メモリ３００が接続されている。
チャネルＣＨ１はメモリＩ／Ｆ制御部２１１を含み、メモリＩ／Ｆ制御部２１１に不揮発性メモリ３０１が接続されている。
チャネルＣＨ２はメモリＩ／Ｆ制御部２１２を含み、メモリＩ／Ｆ制御部２１２に不揮発性メモリ３０２が接続されている。
チャネルＣＨ３はメモリＩ／Ｆ制御部２１３を含み、メモリＩ／Ｆ制御部２１３に不揮発性メモリ３０３が接続されている。
【００７０】
なお、このような構成は、最終書き込みチャネル記録部を含まない第１の実施形態や第２の実施形態にも適用可能である。
【００７１】
＜６．第６の実施形態＞
図２５は、本第６の実施形態に係るメモリシステムの構成を示す図である。
【００７２】
本第６の実施形態に係るメモリシステム１０Ｄが第１の実施形態に係るメモリシステム１０と異なる点は、次の通りである。
本第６の実施形態に係るメモリシステム１０Ｄは、メモリＩ／Ｆ制御部２１０が一つのみで構成されている。
メモリＩ／Ｆ制御部２１０には複数の不揮発性メモリが接続され、不揮発性メモリは２つ以上のグループ（ＧＰ０，ＧＰ１、・・・)に分類され、第１の実施形態でのチャネルがグループに置き換わっている。
【００７３】
図２５の例では、メモリＩ／Ｆ制御部２１０にチャネルＣＨ０を通して不揮発性メモリ３００，３０１が接続されている。
そして、不揮発性メモリ３００がグループＧＰ０に分類され、不揮発性メモリ３０１がグループＧＰ１に分類される。
【００７４】
この第６の実施形態において、複数の物理ブロックを消去する場合の処理は、前述した第１の実施形態（図１２のステップＳＴ６００〜ＳＴ９００）と異なる。
このため、以下に、第６の実施形態における複数の物理ブロックを消去する処理を説明する。
図２６は、第６の実施形態における複数の物理ブロックを消去する処理を説明するためのフローチャートである。
図２７は、第６の実施形態に係る論物変換テーブルの一例を示す図である。
【００７５】
本第６の実施形態では、メモリインターフェイスに複数の不揮発性メモリが接続されている。このため、第６の実施形態では、ホスト装置１００からのデータ書き込み最中に数ページのデータの書き込みが終了したら（ステップＳＴ７０４）、消去を行っているグループの消去の進行状態を監視し、消去動作が完了したら次の消去コマンドを送出する。
【００７６】
具体的には、図１２のステップＳＴ５００において、メモリ制御部２０７は、論物変換制御部２０３から書き込み物理ブロックアドレスを受信する。
次に、メモリ制御部２０７は、書き込みデータサイズがあらかじめ第１閾値設定部２０８に設定された第１閾値ＴＨ１より大きいか否かの判別を行う（ＳＴ６００）。
メモリ制御部２０７は、書き込みデータサイズが第１閾値設定部２０８の第１閾値ＴＨ１より大きい場合には、図２６に示す処理を行う。
まず、ページデータカウンタの値を０に設定し（ＳＴ７０１）、消去可能物理ブロック管理部２０５から通知されるチャネルの物理ブロックに消去コマンドを発行し、物理ブロックを１つ以上消去する（ＳＴ７００Ａ）。
次に、１ページのデータの書き込み（ＳＴ７０２）、ページデータカウンタに１を加算する（ＳＴ７０３）。
そして、ホスト装置１００からのデータ書き込み最中に数ページのデータの書き込みが終了したら（ステップＳＴ７０４）、消去を行っているグループの消去の進行状態を監視し、消去動作が完了したら次の消去コマンドを送出する（ＳＴ７０５，ＳＴ７０６）。
書き込みサイズ分のデータの書き込みが終了すると、メモリ制御部２０７は、データの書き込みが終了したことを論物変換制御部２０３に通知する（ＳＴ９００Ａ）。
書き込みデータサイズが第１閾値設定部２０８の第１閾値ＴＨ１より大きくない場合（小さい場合）、メモリ制御部２０７は、消去を行わず、ホスト装置１００からの書き込みデータを物理ブロックアドレスに書込む（ＳＴ８００Ａ）。
メモリ制御部２０７は、データの書き込みが終了したことを論物変換制御部２０３に通知する（ＳＴ９００Ａ）。
【００７７】
＜７．第７の実施形態＞
図２８は、本第７の実施形態に係るメモリシステムの構成を示す図である。
【００７８】
本第７の実施形態に係るメモリシステム１０Ｅが第１の実施形態に係るメモリシステム１０と異なる点は、次の通りである。
本メモリシステム１０Ｅにおいて、各メモリＩ／Ｆ制御部に複数の不揮発性メモリが接続され、不揮発性メモリは２つ以上のグループ（ＧＰ０、ＧＰ１、・・・）に分類され、不揮発性メモリへの書き込み時の他のチャネルおよびグループの消去動作が制御される。
【００７９】
図２８の例では、メモリＩ／Ｆ制御部２１０にチャネルＣＨ０を通して不揮発性メモリ３００−１，３００−２が接続されている。
そして、不揮発性メモリ３００−１がグループＧＰ０に分類され、不揮発性メモリ３００−２がグループＧＰ１に分類される。
メモリＩ／Ｆ制御部２１１にチャネルＣＨ１を通して不揮発性メモリ３０１−１，３０１−２が接続されている。
そして、不揮発性メモリ３０１−１がグループＧＰ２に分類され、不揮発性メモリ３０１−２がグループＧＰ３に分類される。
【００８０】
＜８．第８の実施形態＞
図２９は、本第８の実施形態に係るメモリシステムの構成を示す図である。
【００８１】
本第８の実施形態に係るメモリシステム１０Ｆは、メモリコントローラ２００Ｆと複数の不揮発性メモリをメモリカード４００として構成する例が示されている。
図２９は、複数の不揮発性メモリの接続形態が図２８と同様の構成となっているが、上述した第１〜第７の実施形態に係るメモリコントローラおよび不揮発性メモリの構成を含むメモリカード４００として形成することが可能である。
本メモリカード４００は、ホスト装置１００からの指示により低消費電力モードに遷移する。
【００８２】
このメモリカード４００とホスト装置１００からなるシステムは、ホストの判断により電源が遮断されるメモリシステムとして構成される。
【００８３】
＜９．第９の実施形態＞
図３０および図３１は、本第９の実施形態に係るメモリシステムを説明するための図である。
【００８４】
本第９の実施形態に係るメモリシステム１０Ｆにおいては、不揮発性メモリのチップイネーブル信号ＣＥにより書き込みおよび消去を制御する。
この例では、４チャネルＣＨ０〜ＣＨ３を含み、各チャネルＣＨ０〜ＣＨ３には２つの不揮発性メモリ（フラッシュメモリ）３００−１，３００−２、３０１−１，３０１−２、３０２−１，３０２−２、３０３−１，３０３−２が接続されている。
そして、第１グループＧＰ１の不揮発性メモリ３００−１，３０１−１，３０２−１，３０３−１がチップイネーブル信号ＣＥ０により制御される。
第２グループＧＰ２の不揮発性メモリ３００−２，３０１−２，３０２−２，３０３−２がチップイネーブル信号ＣＥ１により制御される。
【００８５】
このような構成において、図３０に示すように、書き込みコマンドがホスト装置からメモリコントローラ２００Ｇに転送される。
メモリコントローラ２００Ｇは、チップイネーブル信号ＣＥ０により制御されるグループＧＰ１の不揮発性メモリの消去すべきブロックがある場合、これらの不揮発性メモリ３００−１〜３０３−１に消去コマンドが送信される。
不揮発性メモリ３００−１〜３０３−１が消去中でビジー状態にあるとき、チップイネーブル信号ＣＥ１により制御されるグループＧＰ２の不揮発性メモリ３００−２〜３０３−２にデータが転送され、書き込みが行われる。
さらに、図３１に示すように、書き込みデータがブロックサイズより大きい場合、あるいは次の書き込みコマンドが送信される場合、次の処理が行われる。
すなわち、メモリコントローラ２００Ｇは、チップイネーブル信号ＣＥ１により制御されるグループＧＰ２の不揮発性メモリの消去すべきブロックがある場合、これらの不揮発性メモリ３００−２〜３０３−２に消去コマンドが送信される。
不揮発性メモリ３００−２〜３０３−２が消去中でビジー状態にあるとき、チップイネーブル信号ＣＥ０により制御されるグループＧＰ１の不揮発性メモリ３００−１〜３０３−１にデータが転送され、書き込みが行われる。
【００８６】
以上説明したように、本実施形態によれば、図３２に示すように、論理アドレス境界にアラインされた論理アドレスで、物理ブロックサイズの整数倍のサイズの書き込み要求に対しては、その書き込み時の論理アドレスによらずに、書き込み速度を落とさずに、データを書き込むことができる。
ホスト装置からの動作に同期して消去を行い、ホスト装置の予期しないタイミングで消去動作を行わないことで、スタンバイ時の低消費電力化を実効あるものとすることが可能となる。
また、ホスト装置は任意のタイミングでメモリカード等への電力供給を停止することも可能になる。
【００８７】
また、以上詳細に説明した方法は、上記手順に応じたプログラムとして形成し、ＣＰＵ等のコンピュータで実行するように構成することも可能である。
また、このようなプログラムは、半導体メモリ、磁気ディスク、光ディスク、フロッピー（登録商標）ディスク等の記録媒体、この記録媒体をセットしたコンピュータによりアクセスし上記プログラムを実行するように構成可能である。
【符号の説明】
【００８８】
１０，１０Ａ〜１０Ｆ・・・メモリシステム、１００・・・ホスト装置、２００，２００Ａ〜２００Ｆ・・・メモリコントローラ、２０１・・ホストインタフェース（Ｉ／Ｆ）制御部、２０２・・・ホストデータバッファ、２０３・・・論物変換（論理アドレス・物理アドレス変換）制御部、２０４・・・論物変換テーブル、２０５・・・消去可能物理ブロック管理部、２０６・・・消去済み物理ブロック管理部、２０７・・・メモリ制御部、２０８・・・第１閾値設定部、２０９・・・第２閾値設定部、２１０・・・メモリＩ／Ｆ制御部、２１１・・・メモリＩ／Ｆ制御部、２２０・・・最終書き込みチャネル記録部。３００〜３０４・・・不揮発性メモリ。
【図１】
0005609683.tif 000002
【図２】
0005609683.tif 000003
【図３】
0005609683.tif 000004
【図４】
0005609683.tif 000005
【図５】
0005609683.tif 000006
【図６】
0005609683.tif 000007
【図７】
0005609683.tif 000008
【図８】
0005609683.tif 000009
【図９】
0005609683.tif 000010
【図１０】
0005609683.tif 000011
【図１１】
0005609683.tif 000012
【図１２】
0005609683.tif 000013
【図１３】
0005609683.tif 000014
【図１４】
0005609683.tif 000015
【図１５】
0005609683.tif 000016
【図１６】
0005609683.tif 000017
【図１７】
0005609683.tif 000018
【図１８】
0005609683.tif 000019
【図１９】
0005609683.tif 000020
【図２０】
0005609683.tif 000021
【図２１】
0005609683.tif 000022
【図２２】
0005609683.tif 000023
【図２３】
0005609683.tif 000024
【図２４】
0005609683.tif 000025
【図２５】
0005609683.tif 000026
【図２６】
0005609683.tif 000027
【図２７】
0005609683.tif 000028
【図２８】
0005609683.tif 000029
【図２９】
0005609683.tif 000030
【図３０】
0005609683.tif 000031
【図３１】
0005609683.tif 000032
【図３２】
0005609683.tif 000033