"複数のチャネルを介してアクセスされるメモリと、複数のアクセスコマンドに従って前記メモリに前記複数のチャネルを介して並行してアクセスするメモリインタフェースと、前記メモリにブロック単位でアクセスするための所定のアクセス処理において、チャネル別のアクセスコマンドの群を前記メモリインタフェースに逐次投機的に投入するコマンド生成手段と、前記メモリインタフェースによる前記複数のチャネルを介してのメモリアクセスのいずれかでエラーが発生した場合、既に投入されている未実行のアクセスコマンドの系列を、パージレスポンスにより返却するパージ手段と、前記所定の処理におけるアクセスコマンドのコマンド進捗をコマンド進捗情報によりチャネル別に管理するコマンド進捗管理手段であって、各チャネルにおけるコマンド進捗が、前記返却された未実行のアクセスコマンドの系列のうちの最も古い未実行のアクセスコマンドの指定する位置に戻されるように、前記コマンド進捗情報を更新するコマンド進捗管理手段とを具備し、前記コマンド生成手段は、前記更新されたコマンド進捗情報に基づいて、前記返却された最も古い未実行のアクセスコマンドを含むチャネル別のアクセスコマンドの群を前記メモリインタフェースに投入するメモリ装置。前記複数のチャネルにおけるアクセスコマンドの進捗を統括的に管理することにより、ブロックの区切りを検出する進捗統括管理手段を更に具備する請求項1記載のメモリ装置。前記コマンド生成手段は、次に投入されるべきアクセスコマンドが、対応するチャネルにおける最終アクセスコマンドであるならば、前記最終アクセスコマンドに、当該最終アクセスコマンドの実行に成功した場合に対応するコマンドレスポンスを返すことを指定する特定の指定情報を設定する請求項2記載のメモリ装置。前記進捗統括管理手段は、前記複数のチャネルにそれぞれ対応する最終アクセスコマンドの群が投入された状態で、前記最終アクセスコマンドの群に対応するコマンドレスポンスの群が返却されているかを判定することにより、前記ブロックの区切りを検出する請求項3記載のメモリ装置。前記複数のチャネルのうちの第1のチャネルを介してのメモリアクセスでエラー訂正符号に基づく訂正が不能なエラーが発生した場合、前記ブロックのエラーページ内のエラー箇所を、チャネル間誤り訂正によって訂正するチャネル間誤り訂正手段と、前記チャネル間誤り訂正の結果に基づいて、前記ブロックのページ毎にチャネル間誤り訂正状態を管理するチャネル間誤り訂正状態管理手段とを更に具備し、前記コマンド進捗管理手段は、少なくとも前記第1のチャネルにおけるコマンド進捗位置が、前記エラーページの次のページの先頭位置にスキップされるように、前記コマンド進捗情報を更新する請求項1記載のメモリ装置。前記コマンド進捗管理手段は、前記複数のチャネルのうち前記エラーページをコマンド進捗位置とする前記第1のチャネルとは異なる第2のチャネルにおける次のコマンド進捗位置も、前記エラーページの次のページの先頭位置にスキップされるように、前記コマンド進捗情報を更新する請求項5記載のメモリ装置。複数のチャネルを介してアクセスされるメモリと、複数のアクセスコマンドに従って前記メモリに前記複数のチャネルを介して並行してアクセスするメモリインタフェースとを備えたメモリ装置において、所定のアクセス処理により前記メモリにブロック単位でアクセスするためのメモリアクセス方法であって、チャネル別のアクセスコマンドの群を前記メモリインタフェースに逐次投機的に投入し、前記メモリインタフェースによる前記複数のチャネルを介してのメモリアクセスのいずれかでエラーが発生した場合、既に投入されている未実行のアクセスコマンドの系列を、パージレスポンスにより返却し、各チャネルにおけるコマンド進捗が、前記返却された未実行のアクセスコマンドの系列のうちの最も古い未実行のアクセスコマンドの指定する位置に戻されるように、前記所定の処理におけるアクセスコマンドの進捗を管理するためのコマンド進捗情報を更新し、前記更新されたコマンド進捗情報に基づいて、前記返却された最も古い未実行のアクセスコマンドを含むチャネル別のアクセスコマンドの群を前記メモリインタフェースに投入するメモリアクセス方法。次に投入されるべきアクセスコマンドが、対応するチャネルにおける最終アクセスコマンドであるならば、前記最終アクセスコマンドに、当該最終アクセスコマンドの実行に成功した場合に対応するコマンドレスポンスを返すことを指定する特定の指定情報を設定する請求項7記載のメモリアクセス方法。前記複数のチャネルにそれぞれ対応する最終アクセスコマンドの群が投入された状態で、前記最終アクセスコマンドの群に対応するコマンドレスポンスの群が返却されているかを判定することにより、前記ブロックの区切りを検出する請求項8記載のメモリアクセス方法。前記複数のチャネルのうちの第1のチャネルを介してのメモリアクセスでエラー訂正符号に基づく訂正が不能なエラーが発生した場合、前記ブロックのエラーページ内のエラー箇所を、チャネル間誤り訂正によって訂正し、前記チャネル間誤り訂正の結果に基づいて、前記ブロックのページ毎にチャネル間誤り訂正状態を管理し、少なくとも前記第1のチャネルにおけるコマンド進捗位置が、前記エラーページの次のページの先頭位置にスキップされるように、前記コマンド進捗情報を更新する請求項7記載のメモリアクセス方法。前記複数のチャネルのうち前記エラーページをコマンド進捗位置とする前記第1のチャネルとは異なる第2のチャネルにおける次のコマンド進捗位置も、前記エラーページの次のページの先頭位置にスキップされるように、前記コマンド進捗情報を更新する請求項10記載のメモリアクセス方法。上記したように、フラッシュメモリを備えた従来のメモリ装置は、ブロックの全領域を対象とするリード/ライト処理つまりメモリアクセス処理において、投機的に発行される全てのアクセスコマンドを記録するように構成されている。このため従来のメモリ装置は、全アクセスコマンドを記録するためのメモリ領域つまり管理領域を必要とする。このことは、フラッシュメモリ以外のメモリを備えたメモリ装置でも、投機的に発行される複数のアクセスコマンドを並行して実行するメモリ装置であれば同様である。本発明の目的は、ブロック単位のメモリアクセス処理を、小容量のメモリ領域を用いた管理で高速に実行できる、マルチチャネルを有するメモリ装置及び同装置におけるメモリアクセス方法を提供することである。実施形態によれば、メモリ装置は、メモリと、メモリインタフェースと、コマンド生成手段と、パージ手段と、コマンド進捗管理手段とを具備する。前記メモリは、複数のチャネルを介してアクセスされる。前記メモリインタフェースは、複数のアクセスコマンドに従って前記メモリに前記複数のチャネルを介して並行してアクセスする。前記コマンド生成手段は、前記メモリにブロック単位でアクセスするための所定のアクセス処理において、チャネル別のアクセスコマンドの群を前記メモリインタフェースに逐次投機的に投入する。前記パージ手段は、前記メモリインタフェースによる前記複数のチャネルを介してのメモリアクセスのいずれかでエラーが発生した場合、既に投入されている未実行のアクセスコマンドの系列を、パージレスポンスにより返却する。前記コマンド進捗管理手段は、前記所定の処理におけるアクセスコマンドのコマンド進捗をコマンド進捗情報によりチャネル別に管理するコマンド進捗管理手段であって、各チャネルにおけるコマンド進捗が、前記返却された未実行のアクセスコマンドの系列のうちの最も古い未実行のアクセスコマンドの指定する位置に戻されるように、前記コマンド進捗情報を更新する。前記コマンド生成手段は、前記更新されたコマンド進捗情報に基づいて、前記返却された最も古い未実行のアクセスコマンドを含むチャネル別のアクセスコマンドの群を前記メモリインタフェースに投入する。以下、実施の形態につき図面を参照して説明する。図1は一つの実施形態に係るマルチチャネルを有するメモリ装置の典型的な構成を示すブロック図である。本実施形態において、図1に示すメモリ装置10は、例えばホスト図示せずと接続されている。ホストは、メモリ装置10を自身の記憶装置として利用する。メモリ装置10は、NANDフラッシュメモリ11とNANDコントローラ12とを備えている。NANDフラッシュメモリ11は、ユーザデータを記憶するための記憶媒体である。NANDフラッシュメモリ11は、複数のNANDフラッシュメモリチップを備えており、複数のアクセスコマンドに応じてNANDコントローラ12によって並行してアクセス可能なように構成されている。なお、複数のアクセスコマンドに応じて並行してアクセス可能であれば、NANDフラッシュメモリ11に代えて、NANDフラッシュメモリ以外のメモリを用いても構わない。NANDコントローラ12は、ホストからの要求に応じてNANDフラッシュメモリ11にアクセスする。NANDコントローラ12はまた、例えば自己診断処理、パトロール処理、或いはリフレッシュ処理のような、ブロック単位でのメモリアクセス処理のために、NANDフラッシュメモリ11にアクセスする。ここでは、自己診断処理が行われることを前提とする。NANDコントローラー12は、NANDインタフェース1201と、制御部1202と、進捗統括管理部1203と、コマンド進捗管理部1204と、コマンド進捗判定部1205と、コマンド生成部1206と、テーブル管理部1207と、レスポンス蓄積部1208と、レスポンス解析部1209と、コンパクション部1210と、チャネル間誤り訂正状態管理部以下、ICPCS管理部と称する1211とを備えている。制御部1202、進捗統括管理部1203、コマンド進捗管理部1204、コマンド進捗判定部1205、コマンド生成部1206、テーブル管理部1207、レスポンス蓄積部1208、レスポンス解析部1209、コンパクション部1210、及びICPCS管理部1211の各部モジュールは、内部バス1212によって相互接続されている。NANDインタフェース1201は、NANDフラッシュメモリ11とコマンド生成部1206及びレスポンス蓄積部1208との間で情報を授受する。NANDインタフェース1201はパージ機構1201a及びチャネル間誤り訂正機構1201bを備えている。パージ機構1201aは、投入されたアクセスコマンドの実行でエラーが発生した場合に、未実行の全てのアクセスコマンドを、特別のコマンドレスポンス以下、パージレスポンスと称するによってレスポンス蓄積部1208に戻す。ICP訂正機構1201bは、エラー訂正符号ECCで訂正不能なエラーが発生した場合に、エラー箇所をチャネル間のデータに基づいて訂正する。この訂正を、チャネル間誤り訂正ICP訂正と呼ぶ。制御部1202は内部バス1211を介して接続された、上記各モジュールの動作を制御する。進捗統括管理部1203は、処理単位自己診断処理単位のコマンド進捗を管理する。進捗統括管理部1203は、コマンド進捗管理部1204によって管理されるチャネル別のコマンド進捗状態を統括的に管理し、処理単位の区切り例えば、1論理ブロックの完了を判定する。コマンド進捗管理部1204は、論理ブロック単位で且つチャネル別に実行されるアクセス処理ここでは、自己診断処理のためのアクセス処理において、1論理ブロックを処理するためにNANDインタフェース1201にチャネル別に投機的に発行されるアクセスコマンドの進捗つまりアクセスコマンド投入の進捗を管理する。コマンド進捗管理部1204は、このチャネル別のアクセスコマンド投入の進捗以下、コマンド進捗と称するを管理するためのコマンド進捗情報を保持する。チャネル別のコマンド進捗情報は、DRAMのようなメモリの領域に格納される。チャネル別のコマンド進捗情報は、ページ番号、プレーン番号、クラスタ番号から構成される。より詳細には、チャネル別のコマンド進捗情報は、ページ番号、プレーン-クラスタ番号から構成される。チャネル別のコマンド進捗情報は、対応するチャネルに次に投入されるべきまたは最も最近に投入されたアクセスコマンドによって指定される物理ブロック内の相対位置ページ、プレーン、クラスタ、つまりコマンド進捗位置を示す。このチャネル別のコマンド進捗情報は、上記指定される物理ブロックが割り当てられる論理ブロック内のチャネル別の相対位置以下、単に位置と称するをも示す。ページ番号、プレーン番号、クラスタ番号及びプレーン-クラスタ番号と、ページ、プレーン及びクラスタとについては後述する。本実施形態では、NANDインタフェース1201は、詳細を後述するように16のチャネル0,1,...,14,15を有している。そこで、コマンド進捗管理部1204は、16のチャネル0,1,...,14,15に対応するチャネル別コマンド進捗管理部以下、CH進捗管理部と称する12040,12041,...,120414,120415から構成される。CH進捗管理部1204ii=0,1,...,14,15は、チャネルiに発行されるアクセスコマンドの進捗を管理し、当該チャネルiに対応するコマンド進捗情報ページ番号、プレーン-クラスタ番号を保持する。コマンド進捗判定部1205は、後述するコマンドレスポンスに基づいてチャネル別に最も古い位置ページ、プレーン及びクラスタを特定し、特定された位置に基づいてコマンド進捗の更新が必要かを判定する。最も古い位置とは、対応するチャネルに投入された未実行のアクセスコマンドの系列のうち最も古いアクセスコマンドの指定する位置を指す。コマンド生成部1206は、NANDフラッシュメモリ11にアクセスするための複数のアクセスコマンドを、NANDインタフェース1201に対してチャネル別に投機的に発行する。コマンド生成部1206は、チャネル別のアクセスコマンドの発行を、コマンド進捗管理部1204によって管理されているチャネル別のコマンド進捗情報に基づいて実行する。テーブル管理部1207は、論理アドレスを物理アドレスに変換するための論理-物理アドレス変換テーブル以下、論物変換テーブルと称する1207aを備えている。本実施形態において、論物変換テーブル1207aは、DRAMのようなメモリの領域に構築されている。テーブル管理部1207は、例えば自己診断処理を行う際に、処理対象となる論理ブロックのアドレス論理アドレスを、論物変換テーブル1207aに基づいて対応する物理ブロックのアドレス物理アドレスに変換する。処理対象となる論理ブロックの論理アドレスは、当該論理ブロックを識別するための論理ブロックIDとコマンド進捗情報ページ番号、プレーン-クラスタ番号とから特定できる。テーブル管理部1207はまた、論理ブロック論理ブロックID毎に、対応する論理ブロックの状態を示す情報以下、論理ブロック情報と称するを保持している。論理ブロック情報は、対応する論理ブロックが、使われている論理ブロックつまりアクティブ論理ブロックであるかを示す情報を含む。レスポンス蓄積部1208は、コマンド生成部1206によってNANDインタフェース1201に投入されたアクセスコマンドに対する当該NANDインタフェース1201からのレスポンス以下、コマンドレスポンスと称するを蓄積する。コマンドレスポンスのうち、エラーを通知するコマンドレスポンスを、エラーレスポンスと呼ぶこともある。レスポンス蓄積部1208はまた、上述のパージレスポンスもコマンドレスポンスとして蓄積する。レスポンス蓄積部1208は、例えば先入れ先出しバッファを用いて構成されるFIFO構造を有する。レスポンス蓄積部1208はライトポインタ及びリードポインタによって管理される。ライトポインタは、次にNANDインタフェース1201から返却されるコマンドレスポンスが蓄積されるべきレスポンス蓄積部1208内の位置を示す。リードポインタは、レスポンス解析部1209によって次に解析されるべきコマンドレスポンスが蓄積されているレスポンス蓄積部1208内の位置を示す。レスポンス解析部1209は、NANDインタフェース1201によって返却されて、レスポンス蓄積部1208に蓄積されたコマンドレスポンスのうち、リードポインタの指し示すコマンドレスポンスを解析する。レスポンス解析部1209は、リードポインタの指し示すコマンドレスポンスを解析し終えると、当該リードポインタをレスポンス蓄積部1208内の次の位置を指し示すように進める。コンパクション部1210は、自己診断処理において論理ブロックのデータの別ブロックへの移動が必要と判定された場合、コンパクション処理を実行する。つまりコンパクション部1210は、コンパクション処理の対象となる論理ブロックの論理ブロックIDが登録された場合、コンパクション処理を実行する。このコンパクション処理により、論理ブロックIDによって示される論理ブロックに現在割り当てられているNANDフラッシュメモリ11内の第1の物理ブロック群のデータが当該NANDフラッシュメモリ11内の別の第2の物理ブロック群に書き換えられる。このデータの書き換えの後、論理ブロックIDによって示される論理ブロックに割り当てられる物理ブロック群が、第1の物理ブロック群から第2の物理ブロック群に変更される。ICPCS管理部1211は、論理ブロックIDによって示される論理ブロック内のICP訂正が実行された論理ページここでは論理ページ0乃至63のいずれかを管理する。本実施形態において、ICPCS管理部1211は、論理ページ0乃至63のICP訂正の完了の有無を、64ビット長のビットマップ以下、ICP完了ページビットマップと称するで管理する。ICP完了ページビットマップは、DRAMのようなメモリの領域に格納される。次に、本実施形態におけるメモリ装置10の動作について、自己診断処理を例に説明する。まず本実施形態では、以下の前提条件1乃至6の下で、メモリ装置10が稼動しているものとする。1コマンド生成部1206は、NANDインタフェース1201に同時に複数のアクセスコマンドを投入できる。コマンド生成部1206からNANDインタフェース1201に同時に投入可能な最大アクセスコマンド数は、メモリ装置10の起動時に設定される。本実施形態では、NANDインタフェース1201は、16のチャネル0,1,...,15を有しており、コマンド生成部1206は最大16チャネル分のアクセスコマンドを同時に発行できる。チャネル0,1,...,15のチャネル番号は、それぞれ、0,1,...,1510進数表現である。21論理ブロックは64のページ論理ページ0,1,...,63で構成され、アクセスここではリードアクセスは1ページの半分のクラスタ単位で行われるものとする。つまりアクセスはクラスタ0,1に分けて行われるものとする。ページ0,1,...,63のページ番号は、それぞれ、0,1,...,6310進数表現である。クラスタ0,1のクラスタ番号は、それぞれ0,110進数表現である。3チャネル0,1,...,15の各々は、2つのプレーン0,1に接続されている。各チャネルを介してのアクセス処理ここではリード処理は、1ページあたり2プレーン×2クラスタの4回に分けて実行される。4アクセスコマンドここではリードコマンドは、チャネル毎に投入された順番で実行オーダーが保証されている。5あるチャネルiでエラーが発生した場合、未実行のコマンドは全てパージされる。6ECCで訂正不能なエラーが、ICP訂正機構1201bを用いて訂正される。図2は、上記の前提条件の下で、1論理ブロックを対象に自己診断処理が実行される場合に生成される4,09664×16×4のアクセスコマンドC0000,C0001,C0002,C0003,C1000,C1001,C1002,C1003,...,CF3F0,CF3F1,CF3F2,CF3F3を、ページ0,1,...,63、チャネル0,1,...,15、プレーン0,1及びクラスタ0,1と対応付けて示す。図2の例では、1論理ブロックに32の物理ブロックが割り当てられる。32の物理ブロックは、16のチャネル0,1,...,15のそれぞれプレーン0,1に対応する。アクセスコマンドCpqrsのうち、Cはアクセスコマンドを示し、p0,1,...,FはアクセスコマンドCpqrsが投入されるチャネルのチャネル番号を示す1桁の16進数である。アクセスコマンドCpqrsのうちのqr00,01,...,3Fは、アクセスされるページのページ番号を示す2桁の16進数である。アクセスコマンドCpqrsのうちのs0,1,2,3は、当該アクセスコマンドCpqrsが発行されるチャネル内のプレーン及びクラスタの組み合わせを特定するためのプレーン-クラスタ番号を示す1桁の16進数である。s=0はプレーン0とクラスタ0との組み合わせを、s=1はプレーン0とクラスタ1との組み合わせを、それぞれ示す。s=2はプレーン1とクラスタ0との組み合わせを、s=3はプレーン1とクラスタ1との組み合わせを、それぞれ示す。このため、s0,1,2,3、つまりプレーン-クラスタ番号は、プレーンのプレーン番号0,1及びクラスタのクラスタ番号0,1を示していることと等価である。本実施形態において、論理ブロック内のページは、チャネル別に、ページ0,1,...,63の順にアクセスされる。但し、アクセスされるページの進捗はチャネル毎に異なる。また、NANDフラッシュメモリ11のチャネルppは16進数表現を介してページqrqrは2桁の16進数表現にアクセスすることを指示する4つのアクセスコマンドCpqr0,Cpqr1,Cpqr2,Cpqr3は、この並びの順に実行される。具体的には、NANDフラッシュメモリ11の例えばチャネル00は10進数表現を介してページ00は10進数表現にアクセスすることを指示する4つのアクセスコマンドC0000,C0001,C0002,C0003は、この並びの順に実行される。また、NANDフラッシュメモリ11の例えばチャネル1516進表現でFを介してページ0にアクセスすることを指示する4つのアクセスコマンドCF000,CF001,CF002,CF003は、この並びの順に実行される。同様に、NANDフラッシュメモリ11の例えばチャネル0を介してページ6316進表現で3Fにアクセスすることを指示する4つのアクセスコマンドC03F0,C03F1,C03F2,C03F3は、この並びの順に実行される。同様に、NANDフラッシュメモリ11の例えばチャネル1516進表現でFを介してページ6316進表現で3Fにアクセスすることを指示する4つのアクセスコマンドCF3F0,CF3F1,CF3F2,CF3F3は、この並びの順に実行される。以下、本実施形態で適用される自己診断処理の手順の概略について、1つの論理ブロックを対象とする自己診断処理を例に説明する。自己診断処理の対象となる論理ブロックは、リードアクセスの対象となる。そこで以下の説明では、自己診断処理の対象となる論理ブロックをリード対象論理ブロックと称することもある。1NANDコントローラ12は、リード対象論理ブロック内の全クラスタの読み出しをチャネル毎に実行し、対応するクラスタのデータが正常であるかを判定する。2NANDコントローラ12は、エラー訂正不能な有効クラスタを検出した場合、ICP訂正可能か否かを判定する。訂正不可であれば、NANDコントローラ12は、リード対象論理ブロックの自己診断処理を終了し、エラークラスタを自己診断処理の要求元に通知する。3上記2でICP訂正可能であれば、NANDコントローラ12は、上記1に戻って、後続のクラスタの読み出しを行う。4リード対象論理ブロックの処理が終了した時点で、1つ以上のエラー訂正不能なクラスタが検出されていた場合、NANDコントローラ12は、当該リード対象論理ブロックを、コンパクション処理の対象となる論理ブロックとして登録する。次に上述の自己診断処理の手順の詳細について、図3及び図4のフローチャートを参照して説明する。今、ホストから、図1のメモリ装置10のNANDコントローラ12に自己診断処理が要求されたものとする。本実施形態において自己診断処理は、ホストによって要求されたアクセス処理に対するバックグラウンド処理として行われる。つまり自己診断処理は、ホストによって要求されたアクセス処理の空き時間を利用して行われる。なお、図3及び図4のフローチャートで示される自己診断処理は、1論理ブロックを対象としている。このため、複数の論理ブロックを自己診断する場合、図3及び図4のフローチャートで示される自己診断処理は、診断されるべき論理ブロックの数だけ繰り返される。NANDコントローラ12の制御部1202は、自己診断処理の対象とすべき論理ブロックつまりリード対象ブロックをコマンド進捗管理部1204に対して指定する。この指定には、例えばリード対象論理ブロックの論理ブロックIDが用いられる。なお、図3及び図4のフローチャートでは省略されているが、自己診断処理の開始時には、コマンド進捗管理部1204に保持されるチャネル0,1,...,14,15のコマンド進捗情報は、それぞれ初期位置ページ0,プレーン0、クラスタ0を示すように000に初期化される。コマンド進捗管理部1204は、制御部1202によってリード対象論理ブロックが指定された場合、当該指定されたリード対象論理ブロックの論理ブロック情報をテーブル管理部1207から取得するステップ301。もし、取得された論理ブロック情報によって、リード対象論理ブロックがアクティブ論理ブロックでないことが示されている場合、当該リード対象論理ブロックの読み出しより詳細には自己診断処理は不要である。この場合、図3及び図4のフローチャートでは省略されているが、制御部1202は、現在のリード対象論理ブロックのための自己診断処理を終了する。これに対し、取得された論理ブロック情報によって、リード対象論理ブロックがアクティブ論理ブロックであることが示されている場合、コマンド進捗管理部1204は、当該リード対象論理ブロックの論理ブロックIDに基づいて論物変換テーブル1207aを参照する。これによりコマンド進捗管理部1204は、リード対象論理ブロックに割り当てられているリード対象物理ブロック群の情報物理ブロック情報と称するを取得するステップ302。物理ブロック情報は、対応する物理ブロック群リード対象物理ブロック群のそれぞれのID物理ブロックIDを含む。次にコマンド進捗管理部1204は、ステップ302で取得した物理ブロック情報中の物理ブロックIDと、自身が保持する現在のチャネル別のコマンド進捗情報ページ番号、プレーン-クラスタ番号とに基づいて、NANDフラッシュメモリ11内のチャネル別にアクセスされるべき物理位置を示す物理アドレスを取得するステップ303。なお、ステップ302で取得した物理ブロック情報により、対応する物理ブロックがNULLブロックであることが示されている場合、コマンド進捗管理部1204は、対応するチャネルの現在のコマンド進捗情報を次の位置を示すように更新する。つまりコマンド進捗管理部1204は、対応するチャネルのコマンド進捗ページ、プレーン、クラスタを次に進める。そしてコマンド進捗管理部1204は、上述と同様の手順で、対応するチャネルを介してアクセスされるべき物理ブロックリード対象物理ブロックにおける物理アドレスを取得する。図5は、本実施形態で適用される論理アドレス及び物理アドレスのフォーマットの例を示す。論理アドレスは、対応する論理ブロックの論理ブロックID、ページ番号、プレーン番号、チャネル番号及びクラスタ番号から構成される。論理アドレスは、メモリ装置10にNANDフラッシュメモリ11が用いられている本実施形態では、論理NANDクラスタアドレスとも呼ばれる。物理アドレスは、対応する物理ブロックを識別するための物理ブロックIDと、プレーン番号、ページ番号、クラスタ番号及びセクタ番号から構成される。この物理アドレスは、物理NANDクラスタアドレスとも呼ばれる。一方、ステップ303において進捗統括管理部1203は、コマンド進捗管理部1204によって管理されるチャネル別のコマンド進捗状態に基づいて、コマンド進捗がリード対象論理ブロック内の最終クラスタより詳細には、最終ページの最終クラスタまで進んだかをチャネル別に判定する。進捗統括管理部1203は、上記チャネル別の判定結果を保持する。ステップ303においてコマンド生成部1206は、コマンド進捗管理部1204によって取得された物理アドレスつまり物理NANDクラスタアドレスに基づいて、チャネル別に、対応する物理位置ページ、プレーン、クラスタへのリードアクセスを指定したアクセスコマンド以下、リードコマンドと称するを生成する。生成されたリードコマンドは、図5に示す形式のNANDクラスタアドレス含む。コマンド生成部1206は更に、チャネル別に生成されたリードコマンドのうち、所定の条件を満たしたリードコマンドに特定の指定情報を設定する。所定の条件を満たしたリードコマンドとは、進捗統括管理部1203によって最終クラスタ処理中であると判定された物理NANDクラスタアドレスに対応するリードコマンドつまり最終リードコマンドを指す。特定の指定情報は、対応する最終リードコマンドの実行に成功した場合にコマンドレスポンス成功レスポンスを返却することを指定する。つまり、特定の指定情報が設定されたリードコマンドは、当該リードコマンドの実行に成功した場合にコマンドレスポンスを返却することを指定する。一方、特定の指定情報が設定されていないリードコマンドつまり、非最終リードコマンドは、当該リードコマンドの実行に成功した場合にコマンドレスポンスを返却しないことを暗黙に指定する。またリードコマンドは、当該リードコマンドの実行に失敗した場合、特定の指定情報が設定されているかに無関係にコマンドレスポンスエラーレスポンスを返却することを暗黙に指定する。なお、所定の条件を満たさないリードコマンド非最終リードコマンドに、コマンド実行に成功した場合にコマンドレスポンスを返却しないことを明示的に指定する指定情報が設定されても構わない。ステップ303において、コマンド生成部1206は、生成されたリードコマンドの群をNANDインタフェース1201に対して最大16個同時に発行する。この例のように、図3及び図4のフローチャートに従う最初のステップ303では、16のチャネル0,1,...,14,15にそれぞれ対応する16のリードコマンドC0000,C1000,...,CE000,CF000が同時に発行される。図6はコマンド生成部1206によって逐次投入されるリードコマンド群の時系列の一例を示す。図6の例では、16のリードコマンドC0000,C1000,...,CE000,CF000が時刻t1に発行されたことが示されている。コマンド生成部1206によってNANDインタフェース1201に同時に投入されたリードコマンドC0000,C1000,...,CE000,CF000は当該NANDインタフェース1201内のコマンドキュー図示せずに蓄えられる。もし、コマンドキューが満杯でなければ、コマンド生成部1206は、後続の物理リードコマンド群をNANDインタフェース1201に投機的に投入することができる。本実施形態では、図6に示すように、時刻t1より後の時刻t2に、16のリードコマンドC0001,C1001,...,CE001,CF001が投入され、その後の時刻t3に、16のリードコマンドC0002,C1002,...,CE002,CF002が投入されたものとする。このように、コマンド生成部1206は、コマンドキューが満杯になるまで、後続のリードコマンド群を投機的に投入することができる。NANDインタフェース1201は、自己診断処理の開始時には、コマンドキューに最初に蓄えられた16のリードコマンドC0000,C1000,...,CE000,CF000を取り出す。そしてNANDインタフェース1201は、取り出されたリードコマンリードコマンドC0000,C1000,...,CE000,CF000に基づき、対応するチャネル0,1,...,14,15にそれぞれ接続されたプレーン0を介してNANDフラッシュメモリ11に並行してアクセスする。ここで、投機的に投入されたリードコマンド群に基づくリードアクセスのいずれかでエラーが発生したものとする。本実施形態において、このエラーは、リードされたデータに付加されているECCに基づいて検出されるため、ECCエラーと呼ばれる。ECCエラーが発生した場合、NANDインタフェース1201は、当該ECCエラーが発生したリードアクセスを指定したリードコマンドに対するコマンドレスポンスとして、エラーレスポンスをレスポンス蓄積部1208に返却する。レスポンス蓄積部1208に返却されたエラーレスポンスコマンドレスポンスは、当該レスポンス蓄積部1208に蓄積される。またECCエラーが発生した場合、NANDインタフェース1201のパージ機構1201aは、ECCエラーが発生したチャネルに対応するコマンドキューに蓄積されている全てのコマンドつまり、ECCエラーが発生したチャネルに投入された未実行の全てのリードコマンドを、パージレスポンスによってレスポンス蓄積部1208に返却する。レスポンス蓄積部1208に返却されたパージレスポンスコマンドレスポンスは、当該レスポンス蓄積部1208に蓄積される。前述したように、自己診断処理はシステムのバックグラウンドで実行される。このため、チャネルによっては、ホストによって要求されたアクセスのためのアクセスコマンドが、自己診断のためのリードコマンドの実行に優先して実行されることもある。本実施形態においてNANDインタフェース1201のパージ機構1201aは、ホストによって要求されたアクセスでECCエラーが発生しても、全ての未実行のコマンドを、パージレスポンスによりレスポンス蓄積部1208に返却する。さて、NANDインタフェース1201によってコマンドレスポンスが返却されて、当該返却されたコマンドレスポンスがレスポンス蓄積部1208に蓄積されたものとする。レスポンス解析部1209は、リードポインタによって指し示されるレスポンス蓄積部1208内の位置から始まる領域に蓄積された全てのコマンドレスポンスを解析するステップ304。レスポンス解析部1209は、コマンドレスポンスの解析結果に基づき、当該解析結果にECCエラーを通知する1つ以上のエラーレスポンスECCエラーレスポンスが含まれているかを判定するステップ305。もし、1つ以上のエラーレスポンスが含まれていた場合、つまりECCエラー数N1がゼロを超えているN1>0場合ステップ305のYes、レスポンス解析部1209はリフレッシュフラグをON状態に設定するステップ306。リフレッシュフラグは、論理ブロックのための自己診断処理の終了時に、当該論理ブロックをコンパクション処理の対象として登録することを指示するのに用いられる。次にレスポンス解析部1209は、ステップ305でECCエラーが判定されたクラスタが有効クラスタであるか否かをテーブル管理部1207に問い合わせる。有効クラスタとは、有効なデータが格納されているクラスタを指す。有効クラスタに格納されていたデータが別のクラスタに移動された場合、当該有効クラスタは無効クラスタとなる。クラスタの有効/無効はテーブル管理部1207によって管理される。レスポンス解析部1209は、テーブル管理部1207に問い合わせた結果に基づいて、ECCエラーが判定された有効クラスタの数つまり有効クラスタのECCエラー数N2がゼロを超えているかを判定するステップ307。もし、有効クラスタのECCエラー数N2がゼロを超えているN2>0ならばステップ307のYes、自己診断処理はステップ308に進む。ステップ308において制御部1202は、ECCエラーが判定された有効クラスタつまりECC訂正不能な有効クラスタを含むページ論理ページについて、ICP訂正機構1201bによるICP訂正を行わせる。本実施形態では、論理ブロック内の論理ページ毎に、対応するページのICP訂正を可能とするために、16チャネルのうちの1チャネルを、ICP訂正のための誤り訂正データの格納に割り当てている。この誤り訂正データの格納に割り当てられるチャネルは、論理ページ毎に変更されるものとするが、特定のチャネルであっても構わない。ICP訂正のための誤り訂正データは、他の15チャネルに格納される対応する論理ページのデータに基づいて生成される、例えばパリティデータチャネル間パリティデータである。ICP訂正機構1201bは、このパリティデータを用いて、ECC訂正不能な有効クラスタを含む論理ページjj=qrのエラー箇所を修復するためのICP訂正を行う。つまりICP訂正機構1201bは、パリティデータと、他の15チャネルのうちECC訂正不能な有効クラスタを持つチャネル第1のチャネルを除くチャネル群第2のチャネル群に対応する論理ページjのデータとに基づいて、ICP訂正を行う。制御部1202は、ICP訂正機構1201bによるICP訂正の結果に基づき、論理ページjのICP訂正に成功したかを判定するステップ309。もし、論理ページjのICP訂正に失敗したならば、つまりICP訂正不能であったならステップ309のNo、制御部1202は、リード対象論理ブロックの論理ブロックIDを、コンパクション処理の対象となる論理ブロックとしてコンパクション部1210に登録するステップ310。このステップ310において、制御部1202は、リフレッシュフラグをON状態からOFF状態に切り替える。次に制御部1202は、自己診断処理の要求元ここではホストにICP訂正不能クラスタを通知して、1論理ブロックのための自己診断処理を終了する。この場合、コンパクション部1210は、ステップ310で登録された論理ブロックIDによって示される論理ブロックのデータを別ブロックに移動するためのコンパクション処理を行う。一方、レスポンス解析部1209による解析結果に1つのエラーレスポンスも含まれていない場合、つまりECCエラー数N1がゼロの場合ステップ305のNo、自己診断処理はステップ401に進む。また、有効クラスタのECCエラー数N2がゼロの場合にもステップ307のNo、自己診断処理はステップ401に進む。ステップ401において、コマンド進捗判定部1205は、レスポンス解析部1209によって解析されたコマンドレスポンス中にパージレスポンスが含まれている存在するかを判定する。つまりコマンド進捗判定部1205は、解析されたコマンドレスポンス中にパージレスポンスによって返されたコマンド以下、パージコマンドと称するが含まれているかを判定する。ここで、チャネル14,15では、ホストから要求されたアクセス処理が優先して行われたために、時刻t1でチャネル0,1,...,14,15に同時に投入されたリードコマンドC0000,C1000,...,CE000,CF000のうちのリードコマンドCE000,CF000が、時刻t2の後も未実行であったものとする。また、ホストから要求されたチャネル14,15を介してのアクセス処理でエラーが発生したために、パージレスポンスが返却されたものとする。この返却されたパージレスポンスには、リードコマンドCE000,CE001,CE002,CF000,CF001,CF002がパージコマンドとして含まれているステップ401のYes。この場合、リードコマンドCE000,CE001,CE002が投入されたチャネル14に対応するコマンド進捗管理部1204のCH進捗管理部120414、及びリードコマンドCF000,CF001,CF002が投入されたチャネル15に対応するコマンド進捗管理部1204のCH進捗管理部120415は、それぞれ自身が保持するチャネル14,15のコマンド進捗情報を次のように更新する。即ちCH進捗管理部120414,120415は、チャネル14,15のチャネルのコマンド進捗情報ページ番号、プレーン-クラスタ番号を、最も古い位置が示されるように更新するステップ402。チャネル14,15に対応する最も古い位置は、最も古いパージコマンド未実行のリードコマンドCE000,CF000に対応する位置ページ0、プレーン0、クラスタ0である。この場合、チャネル14,15のコマンド進捗情報は、いずれも000に更新される。またステップ402において、コマンド進捗管理部1204内のCH進捗管理部120414,120415以外のCH進捗管理部他のCH進捗管理部は、自身が保持するコマンド進捗情報を、次の位置が示されるように更新する。ここでは、上記他のCH進捗管理部は、コマンド進捗情報を、図6から明らかなように、ページ0、プレーン1、クラスタ1が示されるように003に更新する。またステップ402において、コマンド進捗管理部1204は、上記ステップ303と同様にして、ステップ302で取得した物理ブロックIDと現在のチャネル別のコマンド進捗情報とに基づいて、チャネル別に物理NANDクラスタアドレスを取得する。ステップ402においてコマンド生成部1206は、上記ステップ303と同様にして、コマンド進捗管理部1204によってチャネル別に取得された物理NANDクラスタアドレスの示す位置ページ、プレーン、クラスタへのリードアクセスを指定した最大16個のリードコマンドを生成する。ステップ402においてコマンド生成部1206は、生成された最大16個のリードコマンドをNANDインタフェース1201に対して同時に発行する。図6の例では、16のリードコマンドC0003,C1003,...,CE000,CF000が時刻t4に発行されたことが示されている。ステップ402が終了すると、自己診断処理は上記ステップ304に戻る。次に、解析されたコマンドレスポンス中にパージコマンドが含まれていないものとするステップ401のNo。この場合、コマンド進捗管理部1204は、自身が保持するチャネル0~15のコマンド進捗情報のプレーン-クラスタ番号sをインクリメントするステップ403。つまりコマンド進捗管理部1204は、コマンド進捗を次の位置に進める。ステップS403において、更新前のプレーン-クラスタ番号sが3の場合、プレーン-クラスタ番号sは0に設定される。プレーン-クラスタ番号sは、0→1→2→3→0のように更新される。次にコマンド進捗管理部1204は、更新されたチャネル0~15のコマンド進捗情報に基づいて、チャネル別に、1論理ページが完了したかを判定するステップ404。ここでは、例えばチャネルiのコマンド進捗情報のプレーン-クラスタ番号sが0の場合、チャネルiについて1論理ページより詳細には、1論理ページ内のチャネルiに対応する全クラスタが完了したと判定される。もし、いずれのチャネルにおいても、1論理ページが完了していないならばステップ404のNo、自己診断処理はステップ303に戻る。このステップ303では、ステップ403の実行の結果、チャネル別のコマンド進捗情報の示す位置が、最終ページの最終クラスタを示しているかが進捗統括管理部1203によって判定される。進捗統括管理部1203は、チャネル別の判定結果を保持する。これに対し、いずれかのチャネル、例えばチャネルiにおいて1論理ページが完了したならばステップ404のYes、自己診断処理はステップ405に進む。ステップ405においてコマンド進捗管理部1204は、1論理ページが完了したチャネルiのコマンド進捗情報のページ番号をインクリメントする。つまりコマンド進捗管理部1204は、チャネルiのコマンド進捗を次の論理ページに進める。ここでは、直近のステップ403でプレーン-クラスタ番号sが0に設定されていることから、ステップ405で更新されたチャネルiのコマンド進捗は、次の論理ページの先頭クラスタを示す。ステップ405が終了すると、自己診断処理はステップ408に進む。次に、論理ページjのICP訂正に成功した場合ステップ309のYesについて説明する。このICP訂正が、チャネルiに投入されたリードコマンドに従うアクセスでECCエラーが発生したために行われたものとする。この場合、ICPCS管理部1211は、ICP完了ページビットマップを、論理ページjのICP訂正の完了が示されるように更新するステップ406。ここでは、64ビット長のICP完了ページビットマップの論理ページjに対応するビットjが、1ON状態に設定される。論理ページjのICP訂正に成功したことは、論理ページjの自己診断処理が全てのチャネル0~15について正常に終了したことと等価である。そこで、コマンド進捗管理部1204は、ICP完了ページビットマップが更新された場合ステップ406、少なくともチャネルiのコマンド進捗を、ICP訂正に成功した論理ページjの次の論理ページj1の先頭クラスタに進めるステップ407。つまりコマンド進捗管理部1204は、少なくともチャネルiのコマンド進捗に関し、論理ページjをスキップする。ステップ407においてコマンド進捗管理部1204は、残りのチャネルのコマンド進捗のうち、論理ページjの処理中を示すコマンド進捗についても、論理ページj1の先頭クラスタに進める。ステップ407が終了すると、ステップS405が終了した場合と同様に、自己診断処理はステップ408に進む。ステップ408において進捗統括管理部1203は、自身がチャネル別に保持している情報に基づき、全てのチャネル0~15でコマンド進捗がリード対象論理ブロック内の最終クラスタまで進んでいるかを判定する。つまり進捗統括管理部1203は、全てのチャネル0~15でリード対象論理ブロック内の対応する最終クラスタがリード対象となっているかを判定する。もし、最終クラスタがリード対象となっていないチャネルがあるならばステップ408のNo、自己診断処理はステップ303に戻る。これに対し、全てのチャネル0~15でリード対象論理ブロック内の対応する最終クラスタがリード対象となっているならばステップ408のYes、自己診断処理はステップ409に進む。ステップ409において進捗統括管理部1203は、リード対象論理ブロックの処理が完了したかを判定するステップ409。この判定のために進捗統括管理部1203は、全てのチャネル0~15から、リード対象論理ブロック内の対応する最終クラスタへのアクセスに応じてコマンドレスポンス以下、最終コマンドレスポンスと称するが返却されているかをレスポンス解析部1209に問い合わせる。もし、少なくとも1つのチャネルから最終コマンドレスポンス成功レスポンスまたはエラーレスポンスが返却されていないならば、進捗統括管理部1203はリード対象論理ブロックの処理の未完了を判定するステップ409のNo。この場合、進捗統括管理部1203は、例えば所定時間後に再びステップ409を実行する。一方、全てのチャネル0~15から最終コマンドレスポンスが返却されているならば、進捗統括管理部1203はリード対象論理ブロックの処理の完了を判定するステップ409のYes。この場合、制御部1202は、リフレッシュフラグがON状態にあるかを判定するステップ410。もし、リフレッシュフラグがON状態にあるならばステップ410のYes、制御部1202は、リード対象論理ブロックの論理ブロックIDを、コンパクション処理の対象となる論理ブロックとしてコンパクション部1210に登録するステップ411。このステップ411において、制御部1202は、リフレッシュフラグをON状態からOFF状態に切り替える。これにより制御部1202は、1論理ブロックのための自己診断処理を終了する。これに対し、リフレッシュフラグがOFF状態にあるならばステップ410のNo、制御部1202はステップ411をスキップして、1論理ブロックのための自己診断処理を終了する。以上、本実施形態で適用される自己診断処理の手順の詳細について説明した。なお、図1に示すメモリ装置10のNANDコントローラ2によって自律的に行われる、パトロール処理、或いはリフレッシュ処理も自己診断処理と同様に実施することが可能である。上述したように、図1に示すメモリ装置10のNANDコントローラ2では、コマンド進捗管理部1204によってチャネル別のコマンド進捗状態が管理される。また、ICPCS管理部1211によって、論理ブロックの論理ページ毎にICP訂正完了状態が管理される。このようなコマンド進捗管理部1204及びICPCS管理部1211を備えた、本実施形態のメモリ装置10によれば、従来よりも、論理ブロック単位の大容量リード処理を無駄なく、高速に実行することが可能となる。また本実施形態によれば、NANDフラッシュメモリ11を備えたメモリ装置10の信頼性確保に必要不可欠な、自己診断処理、パトロール処理、或いはリフレッシュ処理の性能向上を実現できる。また本実施形態によれば、チャネル毎の利用負荷にばらつきが生じている場合でも、パージ発生時、或いはICP訂正発生時において再投入されるコマンドの冗長度を削減することができる。以上説明した少なくとも1つの実施形態によれば、ブロック単位のメモリアクセス処理を、小容量のメモリ領域を用いた管理で高速に実行できる、マルチチャネルを有するメモリ装置及び同装置におけるメモリアクセス方法を提供することができる。本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。"