(57)【特許請求の範囲】
【請求項１】
メモリセルアレイを有する半導体メモリと、
前記半導体メモリからデータを読み出す制御装置と
を備え、
前記メモリセルアレイには、それぞれが読み出し単位であり、複数の第１識別情報がそれぞれ割り当てられた、物理的に区分された複数の第１単位記憶領域が定められ、
前記メモリセルアレイには、複数の第２識別情報がそれぞれ割り当てられた、論理的に区分された複数の第２単位記憶領域が定められ、
各前記第１単位記憶領域には、複数の前記第２単位記憶領域が割り当てられ、
前記制御装置は、前記半導体メモリから読み出し対象のデータを読み出す読み出し処理を行う際には、
前記メモリセルアレイ内のデータと、当該データが記憶される複数の前記第２単位記憶領域の前記第２識別情報とを対応付ける第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、
前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報とを対応付ける第２対応付け情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けし、
グループごとに、当該グループに必要な、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を前記半導体メモリに行う、記憶システム。
【請求項２】
請求項１に記載の記憶システムであって、
前記第１識別情報は、それに対応する前記第１単位記憶領域についての、前記メモリセルアレイでの物理的なあるいは論理的な位置を示す情報である、記憶システム。
【請求項３】
請求項１及び請求項２のいずれか一つに記載の記憶システムであって、
各前記第１単位記憶領域は、複数の部分記憶領域に区分され、
一つの前記部分記憶領域には、一つの前記第２単位記憶領域が割り当てられ、
前記制御装置は、前記グループごとに、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内における、当該グループを構成する複数の前記第２識別情報に対応する複数の前記第２単位記憶領域が割り当てられた複数の前記部分記憶領域にそれぞれ記憶される複数のデータの読み出し要求を順に前記半導体メモリに行う、記憶システム。
【請求項４】
請求項１及び請求項２のいずれか一つに記載の記憶システムであって、
各前記第１単位記憶領域は、複数の部分記憶領域に区分され、
一つの前記部分記憶領域には、一つの前記第２単位記憶領域が割り当てられ、
前記第２対応付け情報では、前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報と、当該第１単位記憶領域に含まれる、当該第２単位記憶領域が割り当てられた前記部分記憶領域を特定するための特定情報とが対応付けられ、
前記制御装置は、前記グループごとに、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内の全データの読み出し要求を前記半導体メモリに行い、
前記制御装置は、前記グループに対応する前記第１識別情報の前記第１単位記憶領域内の全データを前記半導体メモリから受け取ると、前記第２対応付け情報に基づいて、当該全データのうち、当該グループを構成する複数の前記第２識別情報に対応する複数の前記第２単位記憶領域が割り当てられた複数の前記部分記憶領域内のデータ以外のデータを破棄する、記憶システム。
【請求項５】
請求項１及び請求項２のいずれか一つに記載の記憶システムであって、
各前記第１単位記憶領域は、複数の部分記憶領域に区分され、
一つの前記部分記憶領域には、一つの前記第２単位記憶領域が割り当てられ、
前記第２対応付け情報では、前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報と、当該第１単位記憶領域に含まれる、当該第２単位記憶領域が割り当てられた前記部分記憶領域を特定するための特定情報とが対応付けられ、
前記制御装置は、前記グループごとに、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内における、当該グループを構成する複数の前記第２識別情報に対応する複数の前記第２単位記憶領域が割り当てられた複数の前記部分記憶領域に記憶される全データの読み出し要求を前記半導体メモリに行う、記憶システム。
【請求項６】
請求項１乃至請求項５のいずれか一つに記載の記憶システムであって、
前記制御装置は、少なくとも一つの前記第１単位記憶領域内のデータを、別の少なくとも一つの前記第１単位記憶領域に書き直す再配置処理を実行し、実行した前記再配置処理の内容に応じて前記第２対応付け情報を更新する更新処理を実行し、
前記制御装置は、前記読み出し処理を行う際には、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域が割り当てられた複数の前記第１単位記憶領域内のデータについての前記再配置処理は実行しない、記憶システム。
【請求項７】
請求項１乃至請求項５のいずれか一つに記載の記憶システムであって、
前記制御装置は、少なくとも一つの前記第１単位記憶領域内のデータを、別の少なくとも一つの前記第１単位記憶領域に書き直す再配置処理を実行し、実行した前記再配置処理の内容に応じて前記第２対応付け情報を更新する更新処理を実行し、
前記制御装置は、前記読み出し処理の実行中に、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域が割り当てられた複数の前記第１単位記憶領域の少なくとも一つの第１単位記憶領域内のデータについての前記再配置処理を実行した場合には、前記読み出し対象データを前記半導体メモリから読み出した後に、前記更新処理を実行する、記憶システム。
【請求項８】
請求項１乃至請求項５のいずれか一つに記載の記憶システムであって、
前記制御装置は、少なくとも一つの前記第１単位記憶領域内のデータを、別の少なくとも一つの前記第１単位記憶領域に書き直す再配置処理を実行し、実行した前記再配置処理の内容に応じて前記第２対応付け情報を更新する更新処理を実行し、
前記制御装置は、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報において、前記読み出し処理の実行中に行った前記再配置処理及び前記更新処理によって前記第１識別情報との対応付けが変更された対応変更済み第２識別情報が存在する場合には、前記読み出し対象データを前記半導体メモリから読み出した後に、読み出した前記読み出し対象データに含まれる、当該対応変更済み第２識別情報に対応する前記第２単位記憶領域内のデータを破棄するとともに、当該対応変更済み第２識別情報に対応する前記第２単位記憶領域内のデータを前記半導体メモリから再度読み出す、記憶システム。
【請求項９】
それぞれがメモリセルアレイを有する複数の半導体メモリと、
前記複数の半導体メモリからデータを読み出す制御装置と
を備え、
前記複数の半導体メモリの前記メモリセルアレイのそれぞれには、それぞれが読み出し単位であり、複数の第１識別情報がそれぞれ割り当てられた、物理的に区分された複数の第１単位記憶領域が定められ、
前記複数の半導体メモリの前記メモリセルアレイ全体で構成される記憶領域には、複数の第２識別情報がそれぞれ割り当てられた、論理的に区分された複数の第２単位記憶領域が定められ、
各前記第１単位記憶領域には、複数の前記第２単位記憶領域が割り当てられ、
前記複数の半導体メモリには、複数の第３識別情報がそれぞれ割り当てられ、
前記制御装置は、前記複数の半導体メモリから読み出し対象のデータを読み出す読み出し処理を行う際には、
前記複数の半導体メモリの前記メモリセルアレイ内のデータと、当該データが記憶される複数の前記第２単位記憶領域の前記第２識別情報とを対応付ける第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、
前記複数の半導体メモリのそれぞれについて用意された、前記第３識別情報と、前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報とを対応付ける第２対応付け情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１及び第３識別情報の組が同一になるようにグループ分けし、
グループごとに、当該グループに必要な、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を、当該グループに対応する前記第３識別情報の前記半導体メモリに行う、記憶システム。
【請求項１０】
それぞれがメモリセルアレイを有する複数の半導体メモリと、
前記複数の半導体メモリからデータを読み出す制御装置と
を備え、
前記複数の半導体メモリの前記メモリセルアレイ全体で構成される記憶領域には、それぞれが読み出し単位であり、複数の第１識別情報がそれぞれ割り当てられた、物理的に区分された複数の第１単位記憶領域が定められ、
前記複数の半導体メモリの前記メモリセルアレイ全体で構成される記憶領域には、複数の第２識別情報がそれぞれ割り当てられた、論理的に区分された複数の第２単位記憶領域が定められ、
各前記第１単位記憶領域には、複数の前記第２単位記憶領域が割り当てられ、
前記制御装置は、前記複数の半導体メモリから読み出し対象のデータを読み出す読み出し処理を行う際には、
前記複数の半導体メモリの前記メモリセルアレイ内のデータと、当該データが記憶される複数の前記第２単位記憶領域の前記第２識別情報とを対応付ける第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、
前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報とを対応付ける第２対応付け情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けし、
グループごとに、当該グループに必要な、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を、当該第１単位記憶領域を含む前記メモリセルアレイを有する前記半導体メモリに行う、記憶システム。
【請求項１１】
請求項１乃至請求項８のいずれか一つに記載の記憶システムであって、
前記制御装置は、
前記半導体メモリを制御するメモリ制御装置と、
前記メモリ制御装置を制御することによって、前記メモリ制御装置を通じて前記半導体メモリ内のデータを読み出す上位装置と
を有する、記憶システム。
【請求項１２】
請求項１１に記載の記憶システムであって、
前記上位装置は、前記第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、特定した複数の前記第２識別情報を前記メモリ制御装置に通知し、
前記メモリ制御装置は、前記第２対応付け情報に基づいて、前記上位装置から通知される複数の前記第２識別情報に対応する複数の前記第１識別情報を特定し、特定した複数の前記第１識別情報を前記上位装置に通知し、
前記上位装置は、前記メモリ制御装置から通知される複数の前記第１識別情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けする、記憶システム。
【請求項１３】
請求項４及び請求項５のいずれか一つに記載の記憶システムであって、
前記制御装置は、
前記半導体メモリを制御するメモリ制御装置と、
前記メモリ制御装置を制御することによって、前記メモリ制御装置を通じて前記半導体メモリ内のデータを読み出す上位装置と
を有し、
前記上位装置は、前記第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、特定した複数の前記第２識別情報を前記メモリ制御装置に通知し、
前記メモリ制御装置は、前記第２対応付け情報に基づいて、前記上位装置から通知される複数の前記第２識別情報に対応する複数の前記第１識別情報を特定し、特定した複数の前記第１識別情報を前記上位装置に通知し、
前記上位装置は、前記メモリ制御装置から通知される複数の前記第１識別情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けし、グループごとに、当該グループに対応する前記第１識別情報を前記メモリ制御装置に通知し、
前記メモリ制御装置は、
前記上位装置から通知された前記第１識別情報が、前記上位装置に通知したものである場合には、当該第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を行い、
前記上位装置から通知された前記第１識別情報が、前記上位装置に通知したものでない場合には、当該第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を行わない、記憶システム。
【請求項１４】
請求項１３に記載の記憶システムであって、
前記メモリ制御装置は、前記上位装置から通知された前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を行わない場合には、その旨を前記上位装置に通知する、記憶システム。
【請求項１５】
請求項９に記載の記憶システムであって、
前記制御装置は、
前記複数の半導体メモリを制御するメモリ制御装置と、
前記メモリ制御装置を制御することによって、前記メモリ制御装置を通じて前記複数の半導体メモリ内のデータを読み出す上位装置と
を有する、記憶システム。
【請求項１６】
請求項１５に記載の記憶システムであって、
前記上位装置は、前記第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、特定した複数の前記第２識別情報を前記メモリ制御装置に通知し、
前記メモリ制御装置は、前記複数の半導体メモリのそれぞれについて用意された前記第２対応付け情報に基づいて、前記上位装置から通知される各前記第２識別情報に対応する前記第１及び第３識別情報を特定し、特定した前記第１及び第３識別情報を前記上位装置に通知し、
前記上位装置は、前記メモリ制御装置から通知される前記第１及び第３識別情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１及び第３識別情報の組が同一になるようにグループ分けする、記憶システム。
【請求項１７】
請求項１０に記載の記憶システムであって、
前記制御装置は、
前記複数の半導体メモリを制御するメモリ制御装置と、
前記メモリ制御装置を制御することによって、前記メモリ制御装置を通じて前記複数の半導体メモリ内のデータを読み出す上位装置と
を有する、記憶システム。
【請求項１８】
請求項１７に記載の記憶システムであって、
前記上位装置は、前記第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、特定した複数の前記第２識別情報を前記メモリ制御装置に通知し、
前記メモリ制御装置は、前記第２対応付け情報に基づいて、前記上位装置から通知される複数の前記第２識別情報に対応する複数の前記第１識別情報を特定し、特定した複数の前記第１識別情報を前記上位装置に通知し、
前記上位装置は、前記メモリ制御装置から通知される複数の前記第１識別情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けする、記憶システム。
【請求項１９】
請求項１乃至請求項１８のいずれか一つに記載の記憶システムが備える制御装置。
【請求項２０】
請求項１１乃至請求項１８のいずれか一つに記載の記憶システムが備えるメモリ制御装置。
【請求項２１】
請求項２０に記載のメモリ制御装置と、
前記メモリ制御装置によって制御される少なくとも一つの半導体メモリと
を備える、記憶装置。
【請求項２２】
請求項１１乃至請求項１８のいずれか一つに記載の記憶システムが備える上位装置。
【請求項２３】
コンピュータ装置を、請求項２０に記載のメモリ制御装置として機能させるための制御プログラム。
【請求項２４】
コンピュータ装置を、請求項２２に記載の上位装置として機能させるための制御プログラム。
【請求項２５】
請求項１に記載の記憶システムが備える半導体メモリからデータを読み出すデータ読み出し方法であって、
前記半導体メモリの前記メモリセルアレイ内のデータと、当該データが記憶される複数の前記第２単位記憶領域の前記第２識別情報とを対応付ける第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定する工程と、
前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報とを対応付ける第２対応付け情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けする工程と、
グループごとに、当該グループに必要な、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を前記半導体メモリに行う工程と
を備える、データ読み出し方法。
【請求項２６】
請求項９に記載の記憶システムが備える複数の半導体メモリからデータを読み出すデータ読み出し方法であって、
前記複数の半導体メモリの前記メモリセルアレイ内のデータと、当該データが記憶される複数の前記第２単位記憶領域の前記第２識別情報とを対応付ける第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定する工程と、
前記複数の半導体メモリのそれぞれについて用意された、前記第３識別情報と、前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報とを対応付ける第２対応付け情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１及び第３識別情報の組が同一になるようにグループ分けする工程と、
グループごとに、当該グループに必要な、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を、当該グループに対応する前記第３識別情報の前記半導体メモリに行う工程と
を備える、データ読み出し方法。
【請求項２７】
請求項１０に記載の記憶システムが備える複数の半導体メモリからデータを読み出すデータ読み出し方法であって、
前記複数の半導体メモリの前記メモリセルアレイ内のデータと、当該データが記憶される複数の前記第２単位記憶領域の前記第２識別情報とを対応付ける第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定する工程と、
前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報とを対応付ける第２対応付け情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けする工程と、
グループごとに、当該グループに必要な、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を、当該第１単位記憶領域を含む前記メモリセルアレイを有する前記半導体メモリに行う工程と
を備える、データ読み出し方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体メモリに関する。
【背景技術】
【０００２】
特許文献１〜３には、半導体メモリに関する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−２３４３６３号公報
【特許文献２】特開２００８−１９２２６６号公報
【特許文献３】特開２００８−１９２２６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
さて、半導体メモリに対する読み出しの高速化が望まれる。
【０００５】
そこで、本発明は上述の点に鑑みて成されたものであり、半導体メモリに対する読み出しの高速化を図ることが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、本発明に係る記憶システムの一態様は、メモリセルアレイを有する半導体メモリと、前記半導体メモリからデータを読み出す制御装置とを備え、前記メモリセルアレイには、それぞれが読み出し単位であり、複数の第１識別情報がそれぞれ割り当てられた、物理的に区分された複数の第１単位記憶領域が定められ、前記メモリセルアレイには、複数の第２識別情報がそれぞれ割り当てられた、論理的に区分された複数の第２単位記憶領域が定められ、各前記第１単位記憶領域には、複数の前記第２単位記憶領域が割り当てられ、前記制御装置は、前記半導体メモリから読み出し対象のデータを読み出す読み出し処理を行う際には、前記メモリセルアレイ内のデータと、当該データが記憶される複数の前記第２単位記憶領域の前記第２識別情報とを対応付ける第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報とを対応付ける第２対応付け情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けし、グループごとに、当該グループに必要な、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を前記半導体メモリに行う。
【０００７】
また、本発明に係る記憶システムの一態様では、前記第１識別情報は、それに対応する前記第１単位記憶領域についての、前記メモリセルアレイでの物理的なあるいは論理的な位置を示す情報である。
【０００８】
また、本発明に係る記憶システムの一態様では、各前記第１単位記憶領域は、複数の部分記憶領域に区分され、一つの前記部分記憶領域には、一つの前記第２単位記憶領域が割り当てられ、前記制御装置は、前記グループごとに、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内における、当該グループを構成する複数の前記第２識別情報に対応する複数の前記第２単位記憶領域が割り当てられた複数の前記部分記憶領域にそれぞれ記憶される複数のデータの読み出し要求を順に前記半導体メモリに行う。
【０００９】
また、本発明に係る記憶システムの一態様では、各前記第１単位記憶領域は、複数の部分記憶領域に区分され、一つの前記部分記憶領域には、一つの前記第２単位記憶領域が割り当てられ、前記第２対応付け情報では、前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報と、当該第１単位記憶領域に含まれる、当該第２単位記憶領域が割り当てられた前記部分記憶領域を特定するための特定情報とが対応付けられ、前記制御装置は、前記グループごとに、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内の全データの読み出し要求を前記半導体メモリに行い、前記制御装置は、前記グループに対応する前記第１識別情報の前記第１単位記憶領域内の全データを前記半導体メモリから受け取ると、前記第２対応付け情報に基づいて、当該全データのうち、当該グループを構成する複数の前記第２識別情報に対応する複数の前記第２単位記憶領域が割り当てられた複数の前記部分記憶領域内のデータ以外のデータを破棄する。
【００１０】
また、本発明に係る記憶システムの一態様では、各前記第１単位記憶領域は、複数の部分記憶領域に区分され、一つの前記部分記憶領域には、一つの前記第２単位記憶領域が割り当てられ、前記第２対応付け情報では、前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報と、当該第１単位記憶領域に含まれる、当該第２単位記憶領域が割り当てられた前記部分記憶領域を特定するための特定情報とが対応付けられ、前記制御装置は、前記グループごとに、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内における、当該グループを構成する複数の前記第２識別情報に対応する複数の前記第２単位記憶領域が割り当てられた複数の前記部分記憶領域に記憶される全データの読み出し要求を前記半導体メモリに行う。
【００１１】
また、本発明に係る記憶システムの一態様では、前記制御装置は、少なくとも一つの前記第１単位記憶領域内のデータを、別の少なくとも一つの前記第１単位記憶領域に書き直す再配置処理を実行し、実行した前記再配置処理の内容に応じて前記第２対応付け情報を更新する更新処理を実行し、前記制御装置は、前記読み出し処理を行う際には、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域が割り当てられた複数の前記第１単位記憶領域内のデータについての前記再配置処理は実行しない。
【００１２】
また、本発明に係る記憶システムの一態様では、前記制御装置は、少なくとも一つの前記第１単位記憶領域を特定し、特定した少なくとも一つの前記第１単位記憶領域内のデータを、別の少なくとも一つの前記第１単位記憶領域に書き直す再配置処理を実行し、実行した前記再配置処理の内容に応じて前記第２対応付け情報を更新する更新処理を実行し、前記制御装置は、前記読み出し処理の実行中に、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域が割り当てられた複数の前記第１単位記憶領域の少なくとも一つの第１単位記憶領域内のデータについての前記再配置処理を実行した場合には、前記読み出し対象データを前記半導体メモリから読み出した後に、前記更新処理を実行する。
【００１３】
また、本発明に係る記憶システムの一態様では、前記制御装置は、少なくとも一つの前記第１単位記憶領域内のデータを、別の少なくとも一つの前記第１単位記憶領域に書き直す再配置処理を実行し、実行した前記再配置処理の内容に応じて前記第２対応付け情報を更新する更新処理を実行し、前記制御装置は、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報において、前記読み出し処理の実行中に行った前記再配置処理及び前記更新処理によって前記第１識別情報との対応付けが変更された対応変更済み第２識別情報が存在する場合には、前記読み出し対象データを前記半導体メモリから読み出した後に、読み出した前記読み出し対象データに含まれる、当該対応変更済み第２識別情報に対応する前記第２単位記憶領域内のデータを破棄するとともに、当該対応変更済み第２識別情報に対応する前記第２単位記憶領域内のデータを前記半導体メモリから再度読み出す。
【００１４】
また、本発明に係る記憶システムの一態様は、それぞれがメモリセルアレイを有する複数の半導体メモリと、前記複数の半導体メモリからデータを読み出す制御装置とを備え、前記複数の半導体メモリの前記メモリセルアレイのそれぞれには、それぞれが読み出し単位であり、複数の第１識別情報がそれぞれ割り当てられた、物理的に区分された複数の第１単位記憶領域が定められ、前記複数の半導体メモリの前記メモリセルアレイ全体で構成される記憶領域には、複数の第２識別情報がそれぞれ割り当てられた、論理的に区分された複数の第２単位記憶領域が定められ、各前記第１単位記憶領域には、複数の前記第２単位記憶領域が割り当てられ、前記複数の半導体メモリには、複数の第３識別情報がそれぞれ割り当てられ、前記制御装置は、前記複数の半導体メモリから読み出し対象のデータを読み出す読み出し処理を行う際には、前記複数の半導体メモリの前記メモリセルアレイ内のデータと、当該データが記憶される複数の前記第２単位記憶領域の前記第２識別情報とを対応付ける第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、前記複数の半導体メモリのそれぞれについて用意された、前記第３識別情報と、前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報とを対応付ける第２対応付け情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１及び第３識別情報の組が同一になるようにグループ分けし、グループごとに、当該グループに必要な、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を、当該グループに対応する前記第３識別情報の前記半導体メモリに行う。
【００１５】
また、本発明に係る記憶システムの一態様は、それぞれがメモリセルアレイを有する複数の半導体メモリと、前記複数の半導体メモリからデータを読み出す制御装置とを備え、前記複数の半導体メモリの前記メモリセルアレイ全体で構成される記憶領域には、それぞれが読み出し単位であり、複数の第１識別情報がそれぞれ割り当てられた、物理的に区分された複数の第１単位記憶領域が定められ、前記複数の半導体メモリの前記メモリセルアレイ全体で構成される記憶領域には、複数の第２識別情報がそれぞれ割り当てられた、論理的に区分された複数の第２単位記憶領域が定められ、各前記第１単位記憶領域には、複数の前記第２単位記憶領域が割り当てられ、前記制御装置は、前記複数の半導体メモリから読み出し対象のデータを読み出す読み出し処理を行う際には、前記複数の半導体メモリの前記メモリセルアレイ内のデータと、当該データが記憶される複数の前記第２単位記憶領域の前記第２識別情報とを対応付ける第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報とを対応付ける第２対応付け情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けし、グループごとに、当該グループに必要な、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を、当該第１単位記憶領域を含む前記メモリセルアレイを有する前記半導体メモリに行う。
【００１６】
また、本発明に係る記憶システムの一態様では、前記制御装置は、前記半導体メモリを制御するメモリ制御装置と、前記メモリ制御装置を制御することによって、前記メモリ制御装置を通じて前記半導体メモリ内のデータを読み出す上位装置とを有する。
【００１７】
また、本発明に係る記憶システムの一態様では、前記上位装置は、前記第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、特定した複数の前記第２識別情報を前記メモリ制御装置に通知し、前記メモリ制御装置は、前記第２対応付け情報に基づいて、前記上位装置から通知される複数の前記第２識別情報に対応する複数の前記第１識別情報を特定し、特定した複数の前記第１識別情報を前記上位装置に通知し、前記上位装置は、前記メモリ制御装置から通知される複数の前記第１識別情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けする。
【００１８】
また、本発明に係る記憶システムの一態様では、前記制御装置は、前記半導体メモリを制御するメモリ制御装置と、前記メモリ制御装置を制御することによって、前記メモリ制御装置を通じて前記半導体メモリ内のデータを読み出す上位装置とを有し、前記上位装置は、前記第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、特定した複数の前記第２識別情報を前記メモリ制御装置に通知し、前記メモリ制御装置は、前記第２対応付け情報に基づいて、前記上位装置から通知される複数の前記第２識別情報に対応する複数の前記第１識別情報を特定し、特定した複数の前記第１識別情報を前記上位装置に通知し、前記上位装置は、前記メモリ制御装置から通知される複数の前記第１識別情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けし、グループごとに、当該グループに対応する前記第１識別情報を前記メモリ制御装置に通知し、前記メモリ制御装置は、前記上位装置から通知された前記第１識別情報が、前記上位装置に通知したものである場合には、当該第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を行い、前記上位装置から通知された前記第１識別情報が、前記上位装置に通知したものでない場合には、当該第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を行わない。
【００１９】
また、本発明に係る記憶システムの一態様では、前記メモリ制御装置は、前記上位装置から通知された前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を行い場合には、その旨を前記上位装置に通知する。
【００２０】
また、本発明に係る記憶システムの一態様では、前記制御装置は、前記複数の半導体メモリを制御するメモリ制御装置と、前記メモリ制御装置を制御することによって、前記メモリ制御装置を通じて前記複数の半導体メモリ内のデータを読み出す上位装置とを有する。
【００２１】
また、本発明に係る記憶システムの一態様では、前記上位装置は、前記第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、特定した複数の前記第２識別情報を前記メモリ制御装置に通知し、前記メモリ制御装置は、前記複数の半導体メモリのそれぞれについて用意された前記第２対応付け情報に基づいて、前記上位装置から通知される各前記第２識別情報に対応する前記第１及び第３識別情報を特定し、特定した前記第１及び第３識別情報を前記上位装置に通知し、前記上位装置は、前記メモリ制御装置から通知される前記第１及び第３識別情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１及び第３識別情報の組が同一になるようにグループ分けする。
【００２２】
また、本発明に係る記憶システムの一態様では、前記上位装置は、前記第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定し、特定した複数の前記第２識別情報を前記メモリ制御装置に通知し、前記メモリ制御装置は、前記第２対応付け情報に基づいて、前記上位装置から通知される複数の前記第２識別情報に対応する複数の前記第１識別情報を特定し、特定した複数の前記第１識別情報を前記上位装置に通知し、前記上位装置は、前記メモリ制御装置から通知される複数の前記第１識別情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けする。
【００２３】
また、本発明に係る制御装置の一態様は、上記の記憶システムが備える制御装置である。
【００２４】
また、本発明に係るメモリ制御装置の一態様は、上記の記憶システムが備えるメモリ制御装置である。
【００２５】
また、本発明に係る記憶装置の一態様は、上記のメモリ制御装置と、前記メモリ制御装置によって制御される少なくとも一つの半導体メモリとを備える。
【００２６】
また、本発明に係る上位装置の一態様は、上記の記憶システムが備える上位装置である。
【００２７】
また、本発明に係る制御プログラムの一態様は、コンピュータ装置を、上記のメモリ制御装置として機能させるための制御プログラムである。
【００２８】
また、本発明に係る制御プログラムの一態様は、コンピュータ装置を、上記の上位装置として機能させるための制御プログラムである。
【００２９】
また、本発明に係るデータ読み出し方法の一態様は、上記の記憶システムが備える半導体メモリからデータを読み出すデータ読み出し方法であって、前記半導体メモリの前記メモリセルアレイ内のデータと、当該データが記憶される複数の前記第２単位記憶領域の前記第２識別情報とを対応付ける第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定する工程と、前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報とを対応付ける第２対応付け情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けする工程と、グループごとに、当該グループに必要な、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を前記半導体メモリに行う工程とを備える。
【００３０】
また、本発明に係るデータ読み出し方法の一態様は、上記の記憶システムが備える複数の半導体メモリからデータを読み出すデータ読み出し方法であって、前記複数の半導体メモリの前記メモリセルアレイ内のデータと、当該データが記憶される複数の前記第２単位記憶領域の前記第２識別情報とを対応付ける第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定する工程と、前記複数の半導体メモリのそれぞれについて用意された、前記第３識別情報と、前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報とを対応付ける第２対応付け情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１及び第３識別情報の組が同一になるようにグループ分けする工程と、グループごとに、当該グループに必要な、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を、当該グループに対応する前記第３識別情報の前記半導体メモリに行う工程とを備える。
【００３１】
また、本発明に係るデータ読み出し方法の一態様は、上記の記憶システムが備える複数の半導体メモリからデータを読み出すデータ読み出し方法であって、前記複数の半導体メモリの前記メモリセルアレイ内のデータと、当該データが記憶される複数の前記第２単位記憶領域の前記第２識別情報とを対応付ける第１対応付け情報に基づいて、前記読み出し対象のデータが記憶される複数の前記第２単位記憶領域の前記第２識別情報を特定する工程と、前記第２識別情報と、当該第２識別情報の前記第２単位記憶領域が割り当てられた前記第１単位記憶領域の前記第１識別情報とを対応付ける第２対応付け情報に基づいて、特定した複数の前記第２識別情報を、対応する前記第１識別情報ごとにグループ分けする工程と、グループごとに、当該グループに必要な、当該グループに対応する前記第１識別情報の前記第１単位記憶領域内のデータの読み出し要求を、当該第１単位記憶領域を含む前記メモリセルアレイを有する前記半導体メモリに行う工程とを備える。
【発明の効果】
【００３２】
半導体メモリに対する読み出しの高速化を図ることができる。
【図面の簡単な説明】
【００３３】
【図１】データ処理システムの構成を示す図である。
【図２】メモリセルアレイの物理的な構成を示す図である。
【図３】メモリセルアレイの論理的な構成を示す図である。
【図４】ページの構成を示す図である。
【図５】セクタ番号とページ番号との対応付けの一例を示す図である。
【図６】制御装置の動作を示す図である。
【図７】セクタデータの読み出し処理を行う順番の一例を示す図である。
【図８】複数のセクタ番号のグループ分けの一例を示す図である。
【図９】セクタ番号とページ番号との対応付けの一例を示す図である。
【図１０】セクタデータの読み出し処理を行う順番の一例を示す図である。
【図１１】複数のセクタ番号のグループ分けの一例を示す図である。
【図１２】制御装置の動作を示す図である。
【図１３】制御装置及びフラッシュメモリの動作を示す図である。
【図１４】制御装置及びフラッシュメモリの動作を示す図である。
【図１５】再配置処理の一例を示す図である。
【図１６】更新処理の一例を示す図である。
【図１７】再配置処理の一例を示す図である。
【図１８】更新処理の一例を示す図である。
【図１９】セクタ番号とページ番号との対応付けの一例を示す図である。
【図２０】制御装置の動作を示す図である。
【図２１】制御装置の動作を示す図である。
【図２２】データ処理システムの構成を示す図である。
【図２３】制御装置の動作を示す図である。
【図２４】セクタ番号とページ番号との対応付けの一例を示す図である。
【図２５】複数のセクタ番号のグループ分けの一例を示す図である。
【図２６】データ処理システムの構成を示す図である。
【発明を実施するための形態】
【００３４】
＜データ処理システムの全体構成＞
図１はデータ処理システム１の構成を示す図である。データ処理システム１は、ホスト装置２と、記憶装置３とを備えている。ホスト装置２は、記憶装置３を制御する上位装置である。記憶装置３は、半導体メモリの一種であるフラッシュメモリ５を有する。
【００３５】
ホスト装置２は、データ処理システム１全体の動作を統括的に管理する。ホスト装置２は、データ処理システム１の本体装置であると言える。ホスト装置２は、記憶装置３からデータを読み出したり、記憶装置３にデータを書き込んだりする。ホスト装置２が記憶装置３に対して読み出し要求を出力すると、それを受け取った記憶装置３は、フラッシュメモリ５内のデータを読み出してホスト装置２に出力する。また、ホスト装置２が記憶装置３に対して書き込み要求を出力すると、それを受け取った記憶装置３は、ホスト装置２からのデータをフラッシュメモリ５内に書き込む。
【００３６】
記憶装置３の形状は、例えば、カード型となっている。カード型の記憶装置３がホスト装置２に対して装着されることによって、記憶装置３とホスト装置２とが接続される。記憶装置３はホスト装置２に対して着脱可能となっている。なお、記憶装置３とホスト装置２との接続方法はこれに限られない。また、記憶装置３の形状はカード型に限られない。
【００３７】
フラッシュメモリ５はアプリケーションデータ５２０を記憶している。ホスト装置２は、フラッシュメモリ５内のアプリケーションデータ５２０を記憶装置３から読み出し、読み出したアプリケーションデータ５２０を処理する。
【００３８】
ここで、アプリケーションデータは、アプリケーションプログラム（アプリケーションソフトウェア）と、当該アプリケーションプログラムの実行で使用される各種データ（当該アプリケーションプログラムに付随する各種データ）とを含む。言い換えれば、アプリケーションデータは、アプリケーションプログラムと、当該アプリケーションプログラムの実行によって実現される所定の処理の進行で用いられる各種データとを含んでいる。アプリケーションデータ５２０が、例えばゲームデータである場合には、アプリケーションデータ５２０には、ゲームプログラムと、当該ゲームプログラムの実行によって実現されるゲームの進行で用いられる、キャラクタデータ及びイメージデータ等の各種データとが含まれる。アプリケーションデータ５２０が、ゲームデータである場合には、記憶装置３が例えばゲームカートリッジとして機能する。そして、ホスト装置２がゲーム機本体として機能する。ホスト装置２が、記憶装置３から読み出したゲームプログラムを実行することによって、データ処理システム１ではゲームが進行する。なお、フラッシュメモリ５内には、アプリケーションデータ５２０に加えて、あるいはアプリケーションデータ５２０の代わりに、動画像データ及び音楽データなどの各種コンテンツデータが記憶されても良い。
【００３９】
＜ホスト装置の構成＞
ホスト装置２は、一種のコンピュータ装置であって、制御部２０、記憶部２１及びＩ／Ｆ回路２２を備える。制御部２０は、ＣＰＵ（Central Processing Unit）等で構成されており、ホスト装置２の動作を統括的に管理する。記憶部２１は、ＲＯＭ（Read Only Memory）及びＲＡＭ（Random Access Memory）等の、制御部２０（ＣＰＵ）が読み取り可能な非一時的な記録媒体で構成されている。記憶部２１には、ホスト装置２の動作を制御するための制御プログラム２１０等が記憶されている。ホスト装置２の各種機能は、制御部２０のＣＰＵが記憶部２１内の制御プログラム２１０を実行することによって実現される。Ｉ／Ｆ回路２２は、ホスト装置２と記憶装置３と接続するための回路であって、記憶装置３からの信号を制御部２０に入力したり、制御部２０からの信号を記憶装置３に出力したりする。
【００４０】
なお、記憶部２１は、ＲＯＭ及びＲＡＭ以外の、コンピュータが読み取り可能な非一時的な記録媒体を備えていても良い。記憶部２１は、例えば、小型のハードディスクドライブ及びＳＳＤ（Solid State Drive）等を備えていても良い。
【００４１】
制御部２０は、フラッシュメモリ５内のデータを読み出すための制御信号を生成して、Ｉ／Ｆ回路２２を通じて記憶装置３に出力する。また、制御部２０は、フラッシュメモリ５内にデータを書き込むための制御信号を生成して、Ｉ／Ｆ回路２２を通じて記憶装置３に出力する。制御部２０は、後述する管理情報５００に基づいて、フラッシュメモリ５からデータを読み出したり、フラッシュメモリ５にデータを書き込んだりする。制御部２０は、フラッシュメモリ５から読み出されたデータに対して各種処理を行う。なお、制御部２０は、ＣＰＵ等で構成するのではなく、その機能の実現にソフトウェアを必要としないハードウェア回路で構成されても良い。また、ホスト装置２全体が、その機能の実現にソフトウェアを必要としないハードウェア回路で構成されても良い。
【００４２】
＜記憶装置の構成＞
記憶装置３は、メモリ制御装置（メモリ制御回路）４及びフラッシュメモリ５を備えている。メモリ制御装置４は、ホスト装置２からの指示に応じてフラッシュメモリ５を制御する。
【００４３】
フラッシュメモリ５は、例えばＮＡＮＤ型メモリである。フラッシュメモリ５は、メモリセルアレイ５０と、ページバッファ５１とを備えている。メモリセルアレイ５０には、当該メモリセルアレイ５０内でのデータを管理する管理情報５１０と、アプリケーションデータ５２０とが記憶されている。さらに、メモリセルアレイ５０内には、ホスト装置２が使用する管理情報５００が記憶されている。管理情報５００は、メモリセルアレイ５０内のデータをファイルとして管理する管理情報である。管理情報５００は、ホスト装置２が起動したときに、記憶装置３からホスト装置２に出力されて、記憶部２１内に記憶される。ホスト装置２では、制御部２０は、記憶部２１内の管理情報５００を使用する。
【００４４】
メモリ制御装置４は、制御部４０、Ｉ／Ｆ回路４１及び記憶部４２を備えている。メモリ制御装置４は一種のコンピュータ装置である。
【００４５】
Ｉ／Ｆ回路４１は、記憶装置３とホスト装置２とを接続するための回路であって、ホスト装置２からの信号を制御部４０に入力したり、制御部４０からの信号をホスト装置２に出力したりする。
【００４６】
制御部４０は、例えば、ＣＰＵ等で構成されており、記憶装置３の動作を統括的に管理する。制御部４０は、ホスト装置２の制御部２０から読み出し要求が通知されると、メモリセルアレイ５０内の管理情報５１０に基づいてフラッシュメモリ５内のデータを読み出し、読み出したデータをＩ／Ｆ回路４１を通じてホスト装置２に出力する。また、制御部４０は、ホスト装置２の制御部２０から書き込み要求が通知されると、メモリセルアレイ５０内の管理情報５１０に基づいて、フラッシュメモリ５に対して制御部２０からのデータを書き込む。
【００４７】
記憶部４２は、ＲＯＭ及びＲＡＭ等の、制御部４０（ＣＰＵ）が読み取り可能な非一時的な記録媒体で構成されている。記憶部４２には、メモリ制御装置４の動作を制御するための制御プログラム４２０等が記憶されている。メモリ制御装置４の各種機能は、制御部４０のＣＰＵが記憶部４２内の制御プログラム４１０を実行することによって実現される。
【００４８】
本実施の形態では、ホスト装置２及びメモリ制御装置４によって、フラッシュメモリ５からデータを読み出したり、フラッシュメモリ５にデータを書き込んだりする制御装置１０が構成されている。データ処理システム１は、フラッシュメモリ５と、当該フラッシュメモリ５からデータを読み出す制御装置１０とを備える記憶システムであると言える。ホスト装置２は、メモリ制御装置４を通じて、フラッシュメモリ５からデータを読み出したり、フラッシュメモリ５にデータを書き込んだりする。
【００４９】
なお、制御部４０は、ＣＰＵ等で構成されるのではなく、その機能の実現にソフトウェアを必要としないハードウェア回路で構成されても良い。また、メモリ制御装置４全体が、その機能の実現にソフトウェアを必要としないハードウェア回路で構成されても良い。
【００５０】
＜フラッシュメモリの記憶領域の構成＞
図２はフラッシュメモリ５のメモリセルアレイ５０の物理的な構成を示す図である。図２に示されるように、メモリセルアレイ５０は、複数のページ１５０に物理的に区分されている。複数のページ１５０は、メモリセルアレイ５０の列方向に沿って連続的に並んでいる。複数のページ１５０のそれぞれには固有の物理ページ番号が固定的に割り当てられている。物理ページ番号は、ページ１５０を識別するための一種の識別情報である。物理ページ番号は、メモリセルアレイ５０での、それに対応するページ１５０の物理的な位置を示している。図２の例では、メモリセルアレイ５０は、（Ｎ＋１）個のページ１５０を備えている。連続する（Ｎ＋１)個のページ１５０に対して、０番からＮ番までの数字がそれぞれ固定的に割り当てられている。物理ページ番号は物理ページアドレスとも呼ばれる。以後、特に断らない限り、ページ番号と言えば「物理ページ番号」を意味する。
【００５１】
各ページ１５０は、データの読み出し単位及び書き込み単位となっている。したがって、メモリセルアレイ５０からは、ページ１５０単位でデータが読み出される。また、メモリセルアレイ５０に対して、ページ１５０単位でデータが書き込まれる。複数のページ１５０は、メモリセルアレイ５０において物理的に区分された複数の単位記憶領域であると言える。フラッシュメモリ５では、複数のページ１５０によって、データの消去単位であるブロックが構成される。メモリセルアレイ５０に対するデータ消去は、ブロック単位で行われる。
【００５２】
ページバッファ５１の記憶容量は、例えば、１ページ分の記憶容量と一致している。したがって、ページバッファ５１は、１ページ分のデータを記憶することができる。メモリ制御装置４（制御装置１０）がフラッシュメモリ５から、あるページ１５０のデータを読み出す際には、対象のページ１５０の全データが、一旦ページバッファ５１に記憶される。その後、フラッシュメモリ５は、ページバッファ５１内のデータをメモリ制御装置４（制御装置１０）に出力する。また、メモリ制御装置４（制御装置１０）がフラッシュメモリ５のあるページ１５０に対してデータを書き込む際には、書き込み対象のデータが、一旦ページバッファ５１に記憶される。その後、フラッシュメモリ５は、ページバッファ５１内のデータを対象のページ１５０に書き込む。
【００５３】
このように、メモリ制御装置４と、メモリセルアレイ５０との間のデータのやり取りは、ページバッファ５１を介して行われる。
【００５４】
また本実施の形態では、図３に示されるように、メモリセルアレイ５０は、複数のセクタ２５０に論理的に区分されている。複数のセクタ２５０のそれぞれにはセクタ番号が割り当てられている。セクタ番号は、セクタ２５０を識別するための一種の識別情報である。複数のセクタ２５０は、メモリセルアレイ５０において論理的に区分された複数の単位記憶領域であると言える。図３の例では、メモリセルアレイ５０は、（Ｍ＋１）個のセクタ２５０を論理的に有している。（Ｍ＋１)個のセクタ２５０に対して、０番からＭ番までの数字がそれぞれ割り当てられている。セクタ番号はセクタアドレスとも呼ばれる。
【００５５】
ホスト装置２は、セクタ２５０単位で、メモリセルアレイ５０からデータを読み出したり、メモリセルアレイ５０にデータを書き込んだりする。またホスト装置２は、少なくとも一つのセクタ２５０で構成されるクラスタと呼ばれる単位でファイルの管理を行う。
【００５６】
本実施の形態では、各ページ１５０には複数のセクタ２５０が割り当てられる。例えば、各ページ１５０には４つのセクタ２５０が割り当てられる。一つのセクタ２５０の記憶容量は、一つのページ１５０の記憶容量の四分の一となっている。各ページ１５０は、セクタ２５０の４つ分のデータを記憶することが可能である。
【００５７】
図４に示されるように、各ページ１５０は、メモリセルアレイ５０の行方向に並ぶ４つの部分ページ（部分記憶領域）１５１で構成されている。１つの部分ページ１５１には、１つのセクタ２５０が割り当てられる。つまり、論理的（仮想的）な記憶領域であるセクタ２５０内のデータは、それに対応する、物理的な記憶領域である部分ページ１５１内に記憶されている。部分ページ１５１に割り当てられるセクタ２５０の番号は固定ではなく変化する。あるページ番号のページ１５０に含まれる各部分ページ１５１は、メモリセルアレイ５０に対して行方向に沿って割り当てられた列アドレスによって特定することができる。したがって、メモリセルアレイ５０での任意の部分ページ１５１は、ページ番号及び列アドレスによって特定することができる。列アドレスは、ページ１５０に含まれる各部分ページ１５１を特定する一種の特定情報であると言える。以後、一つのページ１５０を構成する４つの部分ページ１５１を、列アドレスが小さいものから順に、第１部分ページ１５１ａ、第２部分ページ１５１ｂ、第３部分ページ１５１ｃ、第４部分ページ１５１ｄとそれぞれ呼ぶことがある。セクタ２５０内のデータをセクタデータと呼ぶことがある。
【００５８】
図５は、ホスト装置２で管理されているあるファイルＡが記憶されるセクタ２５０及びページ１５０の対応関係の一例を示す図である。図５では、部分ページ１５１を示す四角内に、当該部分ページ１５１に対応するセクタ２５０のセクタ番号が示されている。
【００５９】
図５の例では、アプリケーションデータ５２０の一部であるファイルＡは、セクタ番号１０００〜１００９のセクタ２５０に記憶されている。セクタ番号１０００，１００８，１００５のセクタ２５０は、ページ番号１００のページ１５０に割り当てられている。詳細には、セクタ番号１０００，１００８，１００５のセクタ２５０は、それぞれ、ページ番号１００のページ１５０の第１部分ページ１５１ａ、第３部分ページ１５１ｃ及び第４部分ページ１５１ｄに割り当てられている。よって、ファイルＡのうち、セクタ番号１０００のセクタ２５０のデータは、ページ番号１００のページ１５０の第１部分ページ１５１ａに記憶され、セクタ番号１００８のセクタ２５０のデータは、ページ番号１００のページ１５０の第３部分ページ１５１ｃに記憶され、セクタ番号１００５のセクタ２５０のデータは、ページ番号１００のページ１５０の第４部分ページ１５１ｄに記憶されている。
【００６０】
セクタ番号１００１，１００４のセクタ２５０は、ページ番号１０１のページ１５０に割り当てられている。詳細には、セクタ番号１００１，１００４のセクタ２５０は、それぞれ、ページ番号１０１のページ１５０の第２部分ページ１５１ｂ及び第３部分ページ１５１ｃに割り当てられている。
【００６１】
セクタ番号１００６，１００２のセクタ２５０は、ページ番号１０２のページ１５０に割り当てられている。詳細には、セクタ番号１００６，１００２のセクタ２５０は、それぞれ、ページ番号１０２のページ１５０の第２部分ページ１５１ｂ及び第３部分ページ１５１ｃに割り当てられている。
【００６２】
セクタ番号１００７，１００９，１００３のセクタ２５０は、ページ番号１０３のページ１５０に割り当てられている。詳細には、セクタ番号１００７，１００９，１００３のセクタ２５０は、それぞれ、ページ番号１０３のページ１５０の第１部分ページ１５１ａ、第３部分ページ１５１ｃ及び第４部分ページ１５１ｄに割り当てられている。
【００６３】
このように、一つのページ１５０に割り当てられる複数のセクタ２５０のセクタ番号は連続しているとは限らない。
【００６４】
ホスト装置２が使用する管理情報５００には、メモリセルアレイ５０内のファイル（データ）と、当該ファイルが記憶される複数のセクタのセクタ番号とを対応付ける対応付け情報（以後、「第１対応付け情報」と呼ぶことがある）が含まれている。
【００６５】
また、フラッシュメモリ５内の管理情報５１０には、セクタ番号と、当該セクタ番号のセクタ２５０が割り当てられたページ１５０のページ番号と、当該ページ１５０に含まれる、当該セクタ２５０が割り当てられた部分ページ１５１を特定するための部分ページ特定情報とを対応付ける論物変換情報（以後、「第２対応付け情報」と呼ぶことがある）が含まれている。論物変換情報では、セクタ番号と、当該セクタ番号のセクタ２５０内のデータが記憶されるページ１５０のページ番号と、当該ページ１５０に含まれる、当該セクタ２５０内のデータが記憶される部分ページ１５１の部分ページ特定情報とが対応付けられている。部分ページ特定情報としては、上記の列アドレスを採用することができる。また部分ページ特定情報として、列アドレス以外の情報を採用しても良い。例えば、一つのページを構成する４つの部分ページに対して４つの識別番号をそれぞれ割り当て、当該識別番号を部分ページ特定情報として採用しても良い。
【００６６】
＜データ読み出しの基本動作＞
次に図６を参照して、ホスト装置２がメモリセルアレイ５０からアプリケーションデータ５２０を読み出す際のデータ処理システム１の基本的な動作について説明する。
【００６７】
ホスト装置２が、アプリケーションデータ５２０に含まれるあるファイルをメモリセルアレイ５０から読み出す際には、制御部２０が管理情報５００（第１対応付け情報）を参照して、読み出し対象のファイルが記憶される複数のセクタ２５０のセクタ番号を特定する。そして、制御部２０は、Ｉ／Ｆ回路２２を通じて、特定した複数のセクタ番号の一つを含むホスト側読み出し要求信号をメモリ制御装置４に通知する（図６のステップｓ１）。制御部２０には、ファイルを管理するファイルシステムが構築され、当該ファイルシステムによって管理情報５００は管理される。ファイルシステムは、管理情報５００を参照して、読み出し対象のファイルが記憶される複数のセクタ２５０のセクタ番号を特定する。
【００６８】
メモリ制御装置４では、制御部４０が、ホスト装置２からＩ／Ｆ回路４１を通じてホスト側読み出し要求信号を受け取ると、管理情報５１０（論物変換情報）を参照して、当該ホスト側読み出し要求信号に含まれるセクタ番号に対応するページ番号及び部分ページ特定情報を特定する。記憶装置３では、その電源が投入されると、メモリ制御装置４が、メモリセルアレイ５０から管理情報５１０を読み出して揮発性メモリ４２に記憶する。制御部４０は、ホスト装置２からセクタ番号が通知されると、揮発性メモリ４２内の管理情報５１０を参照して、当該セクタ番号に対応するページ番号及び部分ページ特定情報を特定する。
【００６９】
制御部４０は、特定したページ番号のページ１５０に含まれる、特定した部分ページ特定情報で特定される部分ページ１５１内のデータの読み出し要求をフラッシュメモリ５に行う。具体的には、制御部４０は、特定したページ番号と、特定した部分ページ特定情報で特定される部分ページ１５１の列アドレスとを含むメモリ側読み出し要求信号をフラッシュメモリ５に出力する（図６のステップｓ２）。これにより、フラッシュメモリ５は、メモリ制御装置４からページ番号及び列アドレスが通知される。
【００７０】
フラッシュメモリ５は、メモリ制御装置４からのメモリ側読み出し要求信号に含まれるページ番号のページ１５０内のデータが、ページバッファ５１内にあるかどうかを判断する。フラッシュメモリ５は、ページバッファ５１内に、メモリ制御装置４から通知されたページ番号のページ１５０内のデータがないと判断すると、当該ページ１５０内の全データをメモリセルアレイ５０から読み出してページバッファ５１内に一旦書き込む。その後、フラッシュメモリ５は、ページバッファ５１内のデータのうち、メモリ制御装置４から通知されるページ番号のページ１５０に含まれる、メモリ制御装置４から通知される列アドレスで指定される部分ページ１５１内のデータを、セクタデータとしてメモリ制御装置４に出力する（図６のステップｓ３）。一方で、フラッシュメモリ５は、ページバッファ５１内に、メモリ制御装置４から通知されたページ番号のページ１５０内のデータがあると判断すると、ページバッファ５１内のデータのうち、メモリ制御装置４から通知されるページ番号のページ１５０に含まれる、メモリ制御装置４から通知される列アドレスで指定される部分ページ１５１内のデータを、セクタデータとしてメモリ制御装置４に出力する（図６のステップｓ３）。
【００７１】
メモリ制御装置４では、制御部４０が、フラッシュメモリ５からセクタデータを受け取ると、受け取ったセクタデータをＩ／Ｆ回路４１を通じてホスト装置２に出力する（図６のステップｓ４）。これにより、ホスト装置２は、メモリ制御装置４に通知したセクタ番号のセクタ２５０のデータ（読み出し対象のファイルの一部のデータ）を取得することができる。つまり、ホスト装置２は、記憶装置３に対して読み出し要求を行ったセクタデータを当該記憶装置３から受け取ることができる。
【００７２】
次に、ホスト装置２は、特定した複数のセクタ番号のうちの別のセクタ番号を含むホスト側読み出し要求信号をメモリ制御装置４に通知し（ステップｓ１）、以後、データ処理システム１は同様に動作する。ホスト装置２が、特定した複数のセクタ番号のうち、メモリ制御装置４に最後に通知したセクタ番号のセクタ２５０内のセクタデータを受け取ると、ホスト装置２では、フラッシュメモリ５に対する、読み出し対象のファイルの読み出し処理が終了する。以後、ホスト装置２が次のファイルを読み出す際には、データ処理システム１は同様に動作する。
【００７３】
このように、フラッシュメモリ５は、あるページ１５０内のデータの読み出し要求をメモリ制御装置４から受けた場合、当該あるページ１５０のデータがページバッファ５１内に無いときには、当該あるページ１５０からデータを読み出してページバッファ５１内に一旦記憶した後、ページバッファ５１内のデータをメモリ制御装置４に出力する。一方で、フラッシュメモリ５は、当該あるページ１５０のデータがページバッファ５１内にある場合には、当該あるページ１５０からデータを読み出さずにページバッファ５１内のデータをメモリ制御装置４に出力する。したがって、ホスト装置２が、あるページ番号に対応するセクタ番号をメモリ制御装置４に通知した後に続けて、当該あるページ番号と同じページ番号に対応するセクタ番号をメモリ制御装置４に通知する場合には、フラッシュメモリ５は、２回目に通知されるセクタ番号のセクタ２５０内のセクタデータを、ページ１５０にアクセスすることなくページバッファ５１から出力することができる。フラッシュメモリ５では、前回出力したセクタデータのセクタ番号に対応するページ番号とは異なるページ番号のページ１５０内のセクタデータの読み出し要求を受けると、メモリセルアレイ５０に対するアクセスが必ず発生する。
【００７４】
＜データ読み出し処理の詳細説明＞
図５に示されるように、セクタ番号１０００〜１００９のセクタ２５０に記憶されるファイルＡをメモリセルアレイ５０から読み出す際のデータ処理システム１でのデータ読み出し処理について考える。
【００７５】
ホスト装置２がファイルＡを読み出す場合には、ホスト装置２がセクタ番号１０００〜１００９を小さいものから順にメモリ制御装置４に通知することが考えられる。この場合には、図７に示されるように、メモリ制御装置４は、ページ番号１００、ページ番号１０１、ページ番号１０２、ページ番号１０３、ページ番号１０１、ページ番号１００、ページ番号１０２、ページ番号１０３、ページ番号１００、ページ番号１０３の順で、ページ１５０内のデータの読み出し要求をフラッシュメモリ５に対して行うことになる。つまり、ファイルＡの読み出し処理において、メモリ制御装置４は、フラッシュメモリ５に対して、ページ番号１００、ページ番号１０１、ページ番号１０２、ページ番号１０３、ページ番号１０１、ページ番号１００、ページ番号１０２、ページ番号１０３、ページ番号１００、ページ番号１０３の順でページ番号を通知することになる。メモリ制御装置４は、同じページ番号を連続してフラッシュメモリ５に通知しないことから、フラッシュメモリ５は、ページ番号が通知されるたびに、当該ページ番号のページ１５０内のデータをメモリセルアレイ５０から読み出してページバッファ５１に書き込む必要がある。つまり、フラッシュメモリ５は、ページ番号が通知されるたびに、メモリセルアレイ５０に対してアクセスする必要があり、この場合のファイルＡの読み出し処理では、メモリセルアレイ５０に１０回アクセスすることになる。フラッシュメモリ５が、ページ番号が通知されたときにメモリセルアレイ５０に対してアクセスする場合には、メモリ制御装置４がページ番号を出力してから、そのページ番号のページ１５０内のデータをフラッシュメモリ５から受け取るまでに時間がかかってしまう。よって、ホスト装置２が、フラッシュメモリ５からファイルＡを読み出すときに、セクタ番号１０００〜１００９を小さいものから順にメモリ制御装置４に通知する場合には、フラッシュメモリ５に対する読み出し速度が遅くなってしまう。
【００７６】
そこで、本実施の形態に係る制御装置１０は、読み出し対象のファイルＡが記憶される複数のセクタ２５０のセクタ番号を、対応するページ番号ごとにグループ分けし、グループごとに、当該グループに必要な、当該グループに対応するページ番号のページ１５０内のデータの読み出し要求をフラッシュメモリ５に行う。これにより、フラッシュメモリ５がメモリセルアレイ５０にアクセスする頻度を低減することが可能となり、フラッシュメモリ５に対する読み出しの高速化を図ることができる。以下に、本実施の形態に係るデータ読み出し処理について詳細に説明する。
【００７７】
図８は本実施の形態に係る制御装置１０の動作を説明するための図である。図８に示されるように、制御装置１０は、ファイルＡが記憶される複数のセクタ２５０のセクタ番号１０００〜１００９を、対応するページ番号ごとにグループ分けを行う。具体的には、制御装置１０は、セクタ番号１０００〜１００９を、対応するページ番号が１００である１００番グループと、対応するページ番号が１０１である１０１番グループと、対応するページ番号が１０２である１０２番グループと、対応するページ番号が１０３番である１０３番グループとに分ける。１００番グループは、セクタ番号１０００，１００５，１０００８で構成され、１０１番グループは、セクタ番号１００１，１００４で構成され、１０２番グループは、セクタ番号１００２，１００６で構成され、１０３番グループは、セクタ番号１００３，１００７，１００９で構成される。
【００７８】
そして、制御装置１０は、グループごとに、当該グループに必要な、当該グループに対応するページ番号のページ１５０内のデータの読み出し要求をフラッシュメモリ５に行う。具体的には、制御装置１０は、１００番グループに必要な、ページ番号１００のページ１５０内のデータの読み出し要求、つまり、ページ番号１００のページ１５０に含まれる、セクタ番号１０００，１００５，１００８のセクタ２５０に対応する第１部分ページ１５１ａ、第４部分ページ１５１ｄ及び第３部分ページ１５１ｃ内のデータの読み出し要求を行う。また制御装置１０は、１０１番グループに必要な、ページ番号１０１のページ１５０内のデータの読み出し要求、つまり、ページ番号１０１のページ１５０に含まれる、セクタ番号１００１，１００４のセクタ２５０に対応する第２部分ページ１５１ｂ及び第３部分ページ１５１ｃ内のデータの読み出し要求を行う。また、制御装置１０は、１０２番グループに必要な、ページ番号１０２のページ１５０内のデータの読み出し要求、つまり、ページ番号１０２のページ１５０に含まれる、セクタ番号１００２，１００６のセクタ２５０に対応する第３部分ページ１５１ｃ及び第２部分ページ１５１ｂ内のデータの読み出し要求を行う。そして、制御装置１０は、１０３番グループに必要な、ページ番号１０３のページ１５０内のデータの読み出し要求、つまり、ページ番号１０３のページ１５０に含まれる、セクタ番号１００３，１００７，１００９のセクタ２５０に対応する第４部分ページ１５１ｄ、第１部分ページ１５１ａ及び第３部分ページ１５１ｃ内のデータの読み出し要求を行う。
【００７９】
このように、本実施の形態では、制御装置１０は、読み出し対象のファイルが記憶される複数のセクタ２５０のセクタ番号を、対応するページ番号ごとにグループ分けし、グループごとに、当該グループに必要な、当該グループに対応するページ番号のページ１５０内のデータの読み出し要求をフラッシュメモリ５に行う。したがって、フラッシュメモリ５に対しては、同じページ番号のページ１５０内のデータの読み出し要求が連続して行われる可能性が高くなる。つまり、フラッシュメモリ５に対しては、同じページ番号のページ１５０に対する読み出し要求が連続して行われる可能性が高くなる。
【００８０】
例えば、制御装置１０は、１００番グループに必要なデータの読み出し要求を行う際には、ページ番号１００のページ１５０に含まれる、セクタ番号１０００のセクタ２５０に対応する第１部分ページ１５１ａに対する読み出し要求、ページ番号１００のページ１５０に含まれる、セクタ番号１００５のセクタ２５０に対応する第４部分ページ１５１ｄに対する読み出し要求、ページ番号１００のページ１５０に含まれる、セクタ番号１００８のセクタ２５０に対応する第３部分ページ１５１ｃに対する読み出し要求が、連続して行われることになる。つまり、制御装置１０は、１００番グループに必要なデータの読み出し要求を行う際には、ページ番号１００を３回連続してフラッシュメモリ５に通知することになる。同様に、制御装置１０は、１０１番グループに必要なデータの読み出し要求を行う際にはページ番号１０１を２回連続してフラッシュメモリ５に通知し、１０２番グループに必要なデータの読み出し要求を行う際にはページ番号１０２を２回連続してフラッシュメモリ５に通知し、１０３番グループに必要なデータの読み出し要求を行う際にはページ番号１０３を３回連続してフラッシュメモリ５に通知する。よって、ファイルの読み出し処理において、フラッシュメモリ５がメモリセルアレイ５０にアクセスする頻度を低減することが可能となり、フラッシュメモリ５に対する読み出しの高速化を図ることができる。
【００８１】
ファイルＡについての本実施の形態に係る読み出し処理では、１００番グループに必要なデータの読み出し要求で１回、１０１番グループに必要なデータの読み出し要求で１回、１０２番グループに必要なデータの読み出し要求で１回、１０３番グループに必要なデータの読み出し要求で１回、メモリセルアレイ５０に対するアクセスが発生する。したがって、ファイルＡについての本実施の形態に係る読み出し処理では、メモリセルアレイ５０に対するアクセス回数が“４回”となり、セクタ番号１０００〜１００９を小さいものから順にメモリ制御装置４に通知する場合の“１０回”と比較して大幅に少なくなる。
【００８２】
なお、複数のグループの間において、データの読み出し要求を行う順番はどのような順番であっても良い。例えば、ファイルＡの読み出し処理では、１００番グループ、１０１番グループ、１０２番グループ、１０３番グループの順でデータの読み出し要求を行っても良いし、１０３番グループ、１０２番グループ、１０１番グループ、１００番グループの順でデータの読み出し要求を行っても良いし、１０２番グループ、１０１番グループ、１００番グループ、１０３番グループの順でデータの読み出し要求を行っても良い。
【００８３】
また、一つのグループを構成する複数のセクタ番号のセクタ２５０の間においては、データの読み出し要求を行う順番はどのような順番であっても良い。例えば、上記の１００番グループを構成する複数のセクタ番号１０００，１００５，１００８のセクタ２５０においては、セクタ番号１０００のセクタ２５０、セクタ番号１００５のセクタ２５０、セクタ番号１００８のセクタ２５０の順で、データの読み出し要求を行っても良いし、セクタ番号１００８のセクタ２５０、セクタ番号１００５のセクタ２５０、セクタ番号１０００のセクタ２５０の順で、データの読み出し要求を行っても良いし、セクタ番号１００５のセクタ２５０、セクタ番号１０００のセクタ２５０、セクタ番号１００８のセクタ２５０の順でデータの読み出し要求を行っても良い。
【００８４】
また、上記の例では、一つのファイルの読み出し処理について説明したが、複数のファイルの読み出し処理においても、同様にして、フラッシュメモリ５がメモリセルアレイ５０にアクセスする頻度を低減することができる。以下に、フラッシュメモリ５から２つのファイルを読み出す場合を例に挙げて、複数のファイルの読み出し処理について説明する。
【００８５】
図９は、ホスト装置２で管理されている２つのファイルＡ，Ｂが記憶されるセクタ２５０及びページ１５０の対応関係の一例を示す図である。図９の例では、ファイルＢは、セクタ番号２０００〜２００３のセクタ２５０に記憶されている。セクタ番号２０００のセクタ２５０は、ページ番号１００のページ１５０の第２部分ページ１５１ｂに割り当てられている。よって、ファイルＢのうち、セクタ番号２０００のセクタ２５０のデータは、ページ番号１００のページ１５０の第２部分ページ１５１ｂに記憶されている。セクタ番号２００１のセクタ２５０は、ページ番号１０１のページ１５０の第４部分ページ１５１ｄに割り当てられている。セクタ番号２００２のセクタ２５０は、ページ番号１０２のページ１５０の第１部分ページ１５１ａに割り当てられている。セクタ番号２００３のセクタ２５０は、ページ番号１０３のページ１５０の第２部分ページ１５１ｂに割り当てられている。
【００８６】
ここで、制御装置１０のホスト装置２が、ファイルＡ、ファイルＢの順でフラッシュメモリ５からデータを読み出す場合であって、ファイルＡの読み出し時にセクタ番号１０００〜１００９を小さいものから順にメモリ制御装置４に通知し、ファイルＢの読み出し時にセクタ番号２０００〜２００３を小さいものから順にメモリ制御装置４に通知する場合を考える。この場合には、図１０に示されるように、メモリ制御装置４は、ページ番号１００、ページ番号１０１、ページ番号１０２、ページ番号１０３、ページ番号１０１、ページ番号１００、ページ番号１０２、ページ番号１０３、ページ番号１００、ページ番号１０３、ページ番号１００、ページ番号１０１、ページ番号１０２、ページ番号１０３の順で、ページ１５０内のデータの読み出し要求をフラッシュメモリ５に対して行う。したがって、この場合には、フラッシュメモリ５は、メモリセルアレイ５０に１４回アクセスすることになり、ファイルＡ，Ｂの読み出し速度が低下する。
【００８７】
これに対して、本実施の形態では、制御装置１０は、ファイルの種類を区別することなく、ファイルＡ，Ｂを記憶する複数のセクタ２５０のセクタ番号１０００〜１００９，２０００〜２００３を、対応するページ番号でグループ分けする。そして、制御装置１０は、グループごとに、当該グループに必要な、当該グループに対応するページ番号のページ１５０内のデータの読み出し要求をフラッシュメモリ５に行う。
【００８８】
図９の例では、図１１に示されるように、１００番グループは、セクタ番号１０００，１００５，１００８，２０００で構成され、１０１番グループは、セクタ番号１００１，１００４，２００１で構成され、１０２番グループは、セクタ番号１００２，１００６，２００２で構成され、１０３番グループは、セクタ番号１００３，１００７，１００９，２００３で構成される。
【００８９】
制御装置１０は、１００番グループに必要な、ページ番号１００のページ１５０内のデータの読み出し要求を行う際には、ページ番号１００のページ１５０に含まれる、セクタ番号１０００，１００５，１００８，２０００のセクタ２５０に対応する第１部分ページ１５１ａ、第４部分ページ１５１ｄ、第３部分ページ１５１ｃ及び第２部分ページ１５１ｂ内のデータの読み出し要求を行う。また制御装置１０は、１０１番グループに必要な、ページ番号１０１のページ１５０内のデータの読み出し要求を行う際には、ページ番号１０１のページ１５０に含まれる、セクタ番号１００１，１００４，２００１のセクタ２５０に対応する第２部分ページ１５１ｂ、第３部分ページ１５１ｃ及び第４部分ページ１５１ｄ内のデータの読み出し要求を行う。また、制御装置１０は、１０２番グループに必要な、ページ番号１０２のページ１５０内のデータの読み出し要求を行う際には、ページ番号１０２のページ１５０に含まれる、セクタ番号１００２，１００６，２００２のセクタ２５０に対応する第３部分ページ１５１ｃ、第２部分ページ１５１ｂ及び第１部分ページ１５１ａ内のデータの読み出し要求を行う。そして、制御装置１０は、１０３番グループに必要な、ページ番号１０３のページ１５０内のデータの読み出し要求を行う際には、ページ番号１０３のページ１５０に含まれる、セクタ番号１００３，１００７，１００９，２００３のセクタ２５０に対応する第４部分ページ１５１ｄ、第１部分ページ１５１ａ、第３部分ページ１５１ｃ及び第２部分ページ１５１ｂ内のデータの読み出し要求を行う。
【００９０】
このように、ファイルＡ，Ｂを記憶する複数のセクタ２５０のセクタ番号を、対応するページ番号でグループ分けし、グループごとに、当該グループに必要な、当該グループに対応するページ番号のページ１５０内のデータの読み出し要求をフラッシュメモリ５に行うことによって、メモリセルアレイ５０に対するアクセス回数が、１４回から４回に減少する。よって、ファイルＡ，Ｂの読み出し処理が高速化する。
【００９１】
なお、制御装置１０は、どのセクタからデータを読み出したか把握していることから、読み出した複数のセクタデータをファイルＡとファイルＢとに分けることが可能である。また、制御装置１０は、フラッシュメモリ５から３つ以上のファイルを読み出す場合であっても、同様に動作することによって、複数のファイルの読み出し処理が高速化する。
【００９２】
次にデータの読み出し処理でのホスト装置２及びメモリ制御装置４のそれぞれの動作について詳細に説明する。図１２はホスト装置２及びメモリ制御装置４のそれぞれの動作を示す図である。読み出し処理が開始すると、図１２に示されるように、ホスト装置２では、制御部２０が、ステップｓ１１において、読み出し対象のデータ（少なくとも一つのファイル）が記憶される複数のセクタ２５０のセクタ番号を、管理情報５００（第１対応情報）を参照して特定する。
【００９３】
次に、ステップｓ１２において、制御部２０は、特定した複数のセクタ番号の一つを含む情報要求信号をＩ／Ｆ回路２２を通じてメモリ制御装置４に出力する。ここで、情報要求信号とは、それに含まれるセクタ番号に対応するページ番号の通知を要求するための信号である。
【００９４】
メモリ制御装置４では、制御部４０は、Ｉ／Ｆ回路４１を通じてホスト装置２からの情報要求信号を受け取ると、ステップｓ１３において、揮発性メモリ４２内の論物変換情報（第２対応付け情報）を参照して、受け取った情報要求信号に含まれるセクタ番号に対応するページ番号を特定し、特定したページ番号をＩ／Ｆ回路４１を通じてホスト装置２に出力する。
【００９５】
ホスト装置２では、制御部２０は、Ｉ／Ｆ回路２２を通じてメモリ制御装置４からページ番号を受け取ると、再度ステップｓ１２を実行する。このステップｓ１２では、制御部２０は、特定した複数のセクタ番号のうち、対応するページ番号がメモリ制御装置４から通知されていないセクタ番号を含む情報要求信号を送信する。そして、メモリ制御装置４は、ステップｓ１３を実行して、ホスト装置２からの情報要求信号に含まれるセクタ番号に対応するページ番号をホスト装置２に出力する。
【００９６】
以後、ホスト装置２及びメモリ制御装置４は同様に動作し、ホスト装置２が、特定した複数のセクタ番号にそれぞれ対応するページ番号を取得するまで、制御装置１０ではステップｓ１２，ｓ１３が繰り返し実行される。
【００９７】
なお、ホスト装置２は、特定した複数のセクタ番号のすべてを含む情報要求信号をメモリ制御装置４に出力し、メモリ制御装置４は受け取った情報要求信号に含まれる複数のセクタ番号にそれぞれ対応する複数のページ番号をまとめてホスト装置２に通知しても良い。
【００９８】
ホスト装置２では、制御部２０は、特定した複数のセクタ番号にそれぞれ対応するページ番号を取得すると、ステップｓ１４において、上述のようにして、特定した複数のセクタ番号を、対応するページ番号でグループ分けする。そして、制御部２０は、グループごとに、当該グループを構成する複数のセクタ番号を順にメモリ制御装置４に通知する。具体的には、まず、制御部２０は、複数のグループのうち、処理対象のグループを決定する。そして、制御部２０は、処理対象のグループを構成する複数のセクタ番号のうち、処理対象のセクタ番号を決定する。そして、制御部２０は、処理対象のセクタ番号を含むホスト側読み出し要求信号をメモリ制御装置４に出力する（ステップｓ１）。
【００９９】
ホスト装置２からホスト側読み出し要求信号を受け取ったメモリ制御装置４では、制御部４０は、管理情報５１０を参照して、受け取ったホスト側読み出し要求信号に含まれるセクタ番号に対応するページ番号及び部分ページ識別情報を特定する。そして、制御部４０は、特定したページ番号のページ１５０に含まれる、特定した部分ページ特定情報で特定される部分ページ１５１内のデータの読み出し要求をフラッシュメモリ５に行う。具体的には、制御部４０は、特定したページ番号と、特定した部分ページ特定情報で特定される部分ページ１５１の列アドレスとを含むメモリ側読み出し要求信号をフラッシュメモリ５に通知する（上述の図６のステップｓ２）。
【０１００】
フラッシュメモリ５は、メモリ制御装置４からメモリ側読み出し要求信号を受け取ると、上述のようにして、当該メモリ側読み出し要求信号に含まれるページ番号及び列アドレスに応じたセクタデータをメモリ制御装置４に出力する（上述の図６のステップｓ３）。
【０１０１】
メモリ制御装置４では、制御部４０は、フラッシュメモリ５からセクタデータを受け取ると、ステップｓ４において、受け取ったセクタデータをホスト装置２に出力する。
【０１０２】
ホスト装置２では、制御部２０は、処理対象のセクタ番号に応じたセクタデータをメモリ制御装置４から受け取ると、処理対象のグループにおいて処理対象のセクタ番号を変更し、新たな処理対象のセクタ番号を含むホスト側読み出し要求信号をメモリ制御装置４に出力する（ステップｓ１）。以後、メモリ制御装置４及びフラッシュメモリ５は同様に動作して、ホスト装置２は、新たな処理対象のセクタ番号に応じたセクタデータを取得する。
【０１０３】
以後、ホスト装置２が、処理対象のグループを構成する各セクタ番号に応じたセクタデータを取得するまで、データ処理システム１は同様に動作する。そして、ホスト装置２は、処理対象のグループの各セクタ番号に応じたセクタデータを取得すると、処理対象のグループを変更する。以後、データ処理システム１は同様に動作し、ホスト装置２が、グループ分けによって得られた各グループの各セクタ番号に応じたセクタデータを取得すると、つまり、読み出し対象のデータを取得すると、読み出し処理が終了する。
【０１０４】
このように、本実施の形態では、ホスト装置２は、グループごとに、当該グループを構成する複数のセクタ番号を順にメモリ制御装置４に通知する。そして、メモリ制御装置４は、セクタ番号が通知されると、当該セクタ番号に対応するページ番号のページ１５０内における、当該セクタ番号のセクタ２５０が割り当てられた部分ページ１５１に記憶されるデータの読み出し要求をフラッシュメモリ５に行う。このホスト装置２及びメモリ制御装置４の動作は、制御装置１０が、グループごとに、当該グループに対応するページ番号のページ１５０内における、当該グループを構成する複数のセクタ番号に対応する複数のセクタ２５０が割り当てられた複数の部分ページ１５１にそれぞれ記憶される複数のデータの読み出し要求を順にフラッシュメモリ５に対して行う動作であると言える。
【０１０５】
以上のように、本実施の形態では、制御装置１０は、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号を、対応するページ番号ごとにグループ分けし、グループごとに、当該グループに必要な、当該グループに対応するページ番号のページ１５０内のデータの読み出し要求をフラッシュメモリ５に行う。したがって、フラッシュメモリ５に対しては、同じページ番号のページ１５０内のデータの読み出し要求が連続して行われる可能性が高くなる。よって、データの読み出し処理において、フラッシュメモリ５がメモリセルアレイ５０にアクセスする頻度を低減することが可能となる。その結果、フラッシュメモリ５に対する読み出しの高速化を図ることができる。
【０１０６】
なお、上記の例では、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号のグループ分けは、ホスト装置２で行われていたが、メモリ制御装置４で行われても良い。この場合には、ホスト装置２は、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号をメモリ制御装置４に通知し、メモリ制御装置４は、当該複数のセクタ２５０のセクタ番号を、対応するページ番号でグループ分けする。そして、メモリ制御装置４は、グループごとに、当該グループに必要な、当該グループに対応するページ番号のページ１５０内のデータの読み出し要求をフラッシュメモリ５に行う。したがって、メモリ制御装置４が、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号のグループ分けを行う場合には、ホスト装置２からメモリ制御装置４への情報要求信号の通知（図１２のステップｓ１２）と、当該情報要求信号に対するメモリ制御装置４の応答（図１２のステップｓ１３）が不要となる。よって、フラッシュメモリ５に対する読み出しのさらなる高速化を図ることができる。一方で、メモリ制御装置４が、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号を、対応するページ番号に応じてグループ分けする際には、メモリ制御装置４では、ホスト装置２から通知される当該複数のセクタ番号を一時的に保持するバッファが必要となる。その結果、記憶装置３の回路規模が大きくなる可能性がある。
【０１０７】
＜各種変形例＞
以下に本実施の形態の各種変形例について説明する。
【０１０８】
＜第１変形例：論理ページ番号でグループ分け＞
上記の例では、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号は、対応する物理ページ番号に応じてグループ分けされていたが、対応する論理ページ番号に応じてグループ分けされても良い。論理ページ番号とは、それに対応するページについての、メモリセルアレイ５０での論理的な位置を示す情報である。
【０１０９】
メモリセルアレイ５０に対して、例えば、管理情報５１０が記憶される複数のページ１５０以外の各ページ１５０に対して論理ページ番号が割り当てられることがある。ページ１５０に割り当てられる論理ページ番号は変化することがある。管理情報５１０に含まれる論物変換情報では、物理ページ番号に対して、当該物理ページ番号のページ１５０に割り当てられた論理ページ番号が対応付けられている。
【０１１０】
読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号が、対応する論理ページ番号に応じてグループ分けされる際には、例えば、メモリ制御装置４は、情報要求信号を利用してホスト装置２が通知する各セクタ番号に対応する論理ページ番号を、論物変換情報に基づいて特定する。そして、メモリ制御装置４は、特定した各論理ページ番号をホスト装置２に出力する。ホスト装置２は、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号を、対応する論理ページ番号でグループ分けする。その後、ホスト装置２は、メモリ側読み出し要求信号を利用して、グループごとに、当該グループを構成する各セクタ番号をメモリ制御装置４に通知する。以後の制御装置１０の動作は上記と同様である。メモリ制御装置４が、物理ページ番号のページ内のデータの読み出し要求をフラッシュメモリ５に行うことは、見方を変えれば、当該物理ページ番号に対応する論理ページ番号のページ内のデータの読み出し要求をフラッシュメモリ５に行うことと言える。
【０１１１】
このように、本変形例では、制御装置１０は、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号を、対応する論理ページ番号ごとにグループ分けする。そして、制御装置１０は、グループごとに、当該グループに必要な、当該グループに対応する論理ページ番号のページ１５０内のデータの読み出し要求をフラッシュメモリ５に行う。これにより、上記と同様に、データの読み出し処理において、フラッシュメモリ５がメモリセルアレイ５０にアクセスする頻度を低減することが可能となる。その結果、フラッシュメモリ５に対する読み出しの高速化を図ることができる。
【０１１２】
＜第２変形例：読み出し要求の変形例その１＞
上記の例では、制御装置１０は、セクタ単位で、言い換えれば、部分ページ単位でフラッシュメモリ５に対してデータの読み出し要求を行っていたが、ページ単位でフラッシュメモリ５に対してデータの読み出し要求を行っても良い。これにより、読み出し処理時のフラッシュメモリ５に対するアクセス回数が低減し、フラッシュメモリ５に対する読み出しのさらなる高速化を図ることができる。
【０１１３】
本変形例では、ホスト装置２は、上述の図１１の１００番グループのように、処理対象のグループが４つのセクタ番号で構成されている場合には、つまり、処理対象のグループに対応するページ番号のページ１５０を構成する４つの部分ページ１５１のそれぞれに読み出し対象のセクタデータが記憶されている場合には、処理対象のグループに対応するページ番号を含むホスト側読み出し要求信号をメモリ制御装置４に出力する。メモリ制御装置４は、ホスト側読み出し要求信号に含まれるページ番号を含むメモリ側読み出し要求信号をフラッシュメモリ５に出力する。これより、ページ単位でフラッシュメモリ５に対してデータの読み出し要求が行われる。
【０１１４】
フラッシュメモリ５は、メモリ制御装置４からのメモリ側読み出し要求信号に含まれるページ番号のページ１５０内のデータがページバッファ５１内にある場合には、当該ページバッファ５１内の１ページ分のデータ（４セクタ分のデータ）をメモリ制御装置４に出力する。一方で、フラッシュメモリ５は、メモリ側読み出し要求信号に含まれるページ番号のページ１５０内のデータがページバッファ５１内にない場合には、当該ページ１５０内の全データをメモリセルアレイ５０から読み出してページバッファ５１内に一旦記憶する。そして、フラッシュメモリ５は、ページバッファ５１内の１ページ分のデータをメモリ制御装置４に出力する。メモリ制御装置４は、フラッシュメモリ５からの１ページ分のデータと、処理対象のグループを構成する４つのセクタ番号にそれぞれ対応する複数の部分ページ特定情報とをホスト装置２に出力する。これにより、ホスト装置２は、処理対象のグループを構成する４つのセクタ番号に応じた４つのセクタデータを取得することができる。４つのセクタ番号で構成されるグループに関して、セクタ単位でアクセスする場合にはフラッシュメモリ５に４回アクセスする必要があったのに対して、ページ単位でアクセスすることによってフラッシュメモリ５に対するアクセス回数が１回となる。よって、フラッシュメモリ５に対する読み出しのさらなる高速化を図ることができる。
【０１１５】
なお、本変形例のように、ページ単位でフラッシュメモリ５に対してデータの読み出し要求を行う場合であっても、当然に、セクタ単位でフラッシュメモリ５に対してデータの読み出し要求を行っても良い。つまり、フラッシュメモリ５に対するページ単位でのデータの読み出し要求と、フラッシュメモリ５に対するセクタ単位でのデータの読み出し要求とを併用しても良い。この点については以下の変形例についても同様である。
【０１１６】
＜第３変形例：読み出し要求の変形例その２＞
上記の第２変形例では、制御装置１０は、４つのセクタ番号で構成されるグループに関する読み出し処理においてページ単位でフラッシュメモリ５にアクセスしたが、グループを構成する複数のセクタ番号の数にかかわらず、ページ単位でフラッシュメモリ５にアクセスしても良い。つまり、制御装置１０は、グループごとに、当該グループに対応するページ番号のページ１５０内の全データの読み出し要求をフラッシュメモリ５に行っても良い。以下に、本変形例について詳細に説明する。
【０１１７】
本変形例では、メモリ制御装置４は、ホスト装置２から情報要求信号が入力されたとき、論物変換情報に基づいて、入力された情報要求信号に含まれるセクタ番号に対応するページ番号だけではなく、当該セクタ番号に対応する部分ページ特定情報をホスト装置２に出力する。
【０１１８】
ホスト装置２は、処理対象のグループを構成する複数のセクタ番号の数にかかわらず、処理対象のグループに対応するページ番号を含むホスト側読み出し制御信号をメモリ制御装置４に出力する。メモリ制御装置４は、ホスト装置２からのホスト側読み出し制御信号に含まれるページ番号をフラッシュメモリ５に出力する。
【０１１９】
フラッシュメモリ５は、メモリ制御装置４からページ番号を受けると、第２変形例と同様にして、当該ページ番号のページ１５０内の１ページ分のデータをメモリ制御装置４に出力する。メモリ制御装置４は、フラッシュメモリ５からの１ページ分のデータと、当該１ページ分のデータが記憶されるページ１５０を構成する複数の部分ページ１５１の部分ページ特定情報とをホスト装置２に出力する。
【０１２０】
ホスト装置２は、メモリ制御装置４から、１ページ分のデータを受け取ると、当該１ページ分のデータに不要なデータが含まれているかどうかを判定する。具体的には、ホスト装置２は、処理対象のグループが４つのセクタ番号で構成されている場合には、１ページ分のデータに不要なデータが含まれていないと判定して、当該１ページ分のデータを読み出し対象として取り扱う。一方で、ホスト装置２は、処理対象のグループが４つ未満のセクタ番号で構成されている場合には、１ページ分のデータに不要なデータが含まれていると判定する。そして、ホスト装置２は、１ページ分のデータから不要なデータを破棄し、残りのデータを読み出し対象として取り扱う。ホスト装置２は、１ページ分のデータのうち、処理対象のグループを構成する複数のセクタ番号（３つ以下のセクタ番号）に対応する複数の部分ページ特定情報で特定される複数の部分ページ内のデータ以外のデータを、不要なデータとして破棄する。例えば図５，８の例において、処理対象のグループが１００番グループである場合、ホスト装置２は、メモリ制御装置４から受け取った、ページ番号１００のページ１５０内の１ページ分のデータのうち、１００番グループを構成するセクタ番号１０００，１００５，１００８に対応する３つの部分ページ特定情報で特定される第１部分ページ１５１ａ、第４部分ページ１５１ｄ及び第３部分ページ１５１ｃ内のデータ以外のデータ、つまり、第２部分ページ１５１ｂ内のデータを、不要なデータとして破棄する。
【０１２１】
なお、メモリ制御装置４が、入力された情報要求信号に含まれるセクタ番号に対応する部分ページ特定情報をホスト装置２に出力する代わりに、ホスト装置２は、処理対象のグループに対応するページ番号だけではなく、処理対象のグループを構成する複数のセクタ番号を含むホスト側読み出し制御信号をメモリ制御装置４に出力しても良い。この場合には、メモリ制御装置４は、フラッシュメモリ５から、処理対象のグループに対応するページ番号のページ１５０内の１ページ分のデータを受け取ると、ホスト装置２から通知された、処理対象のグループを構成する複数のセクタ番号に基づいて、当該１ページ分のデータに不要なデータが含まれているかどうかを判定する。具体的には、メモリ制御装置４は、処理対象のグループが４つのセクタ番号で構成されている場合には、１ページ分のデータに不要なデータが含まれていないと判定して、当該１ページ分のデータをホスト装置２に出力する。一方で、メモリ制御装置４は、処理対象のグループが４つ未満のセクタ番号で構成されている場合には、１ページ分のデータに不要なデータが含まれていると判定する。そして、メモリ制御装置４は、１ページ分のデータから不要なデータを破棄し、残りのデータをホスト装置２に出力する。メモリ制御装置４は、１ページ分のデータのうち、処理対象のグループを構成する複数のセクタ番号に対応する複数の部分ページ特定情報で特定される複数の部分ページ内のデータ以外のデータを不要なデータとして破棄する。
【０１２２】
なお、ホスト装置２は、処理対象のグループに対応するページ番号を出力せずに、処理対象のグループを構成する複数のセクタ番号をメモリ制御装置４に出力しても良い。この場合には、メモリ制御装置４が、論物変換情報を参照して、処理対象のグループを構成する複数のセクタ番号に対応するページ番号を特定し、当該ページ番号をフラッシュメモリ５に通知すれば良い。
【０１２３】
以上のように、本変形例では、制御装置１０は、図１３に示されるように、処理対象のグループに対応するページ番号のページ１５０内の全データ（１ページ分のデータ）の読み出し要求をフラッシュメモリ５に行う（ステップｓ２１）。そして、制御装置１０は、処理対象のグループに対応するページ番号のページ１５０内の全データ（１ページ分のデータ）をフラッシュメモリ５から受け取ると（ステップｓ２２）、論物変換情報に基づいて、当該全データのうち、当該グループを構成する複数のセクタ番号に対応する複数のセクタ２５０が割り当てられた複数の部分ページ１５１内のデータ以外のデータを破棄する（ステップｓ２３）。これにより、読み出し対象のデータを適切に取得しつつ、フラッシュメモリ５に対する読み出しのさらなる高速化を図ることができる。
【０１２４】
＜第４変形例：読み出し要求の変形例その３＞
上記の第３変形例では、制御装置１０は、処理対象のグループに対応するページ番号のページ１５０内の１ページ分のデータを読み出した後に不要なデータを破棄していたが、処理対象のグループに対応するページ番号のページ１５０内の１ページ分のデータのうち、必要なセクタデータだけを一度に読み出しても良い。以下に、本変形例について詳細に説明する。
【０１２５】
本変形例では、ホスト装置２は、処理対象グループに対応するページ番号と、処理対象のグループを構成する複数のセクタ番号とを含むホスト側読み出し要求信号をメモリ制御装置４に出力する。メモリ制御装置４は、論物変換情報を参照して、ホスト側読み出し要求信号に含まれる複数のセクタ番号にそれぞれ対応する複数の部分ページ特定情報を特定する。そして、メモリ制御装置４は、特定した複数の部分ページ特定情報によって特定される複数の部分ページ１５１の列アドレスと、ホスト側読み出し要求信号に含まれるページ番号とを含むメモリ側読み出し要求信号をフラッシュメモリ５に出力する。これにより、制御装置１０から、処理対象のグループに対応するページ番号のページ１５０の１ページ分のデータのうち、処理対象のグループを構成する複数のセクタ番号に対応する複数のセクタ２５０が割り当てられた複数の部分ページ１５１に記憶される全データの読み出し要求が、フラッシュメモリ５に対して行われる。
【０１２６】
フラッシュメモリ５は、メモリ側読み出し要求信号に含まれるページ番号のページ１５０内のデータがページバッファ５１に記憶される場合には、ページバッファ５１内における、メモリ側読み出し要求信号に含まれる列アドレスで指定される複数の部分ページ１５１内の全データをメモリ制御装置４に出力する。これにより、メモリ制御装置４は、処理対象のグループに対応するページ番号のページ１５０内の１ページ分のデータのうち、処理対象のグループを構成する複数のセクタ番号のセクタ２５０のセクタデータ、つまり必要なセクタデータのみを取得する。メモリ制御装置４は、処理対象のグループを構成する複数のセクタ番号のセクタ２５０のセクタデータと、当該セクタデータの数と、当該複数のセクタ番号にそれぞれ対応する複数の部分ページ特定情報とをホスト装置２に出力する。なお、処理対象のグループが４つのセクタ番号で構成されている場合には、処理対象グループに対応するページ番号のページ１５０内の１ページ分のデータのすべてが必要なデータとなる。
【０１２７】
なお、ホスト装置２は、処理対象のグループに対応するページ番号を出力せずに、処理対象のグループを構成する複数のセクタ番号をメモリ制御装置４に出力しても良い。この場合には、メモリ制御装置４が、論物変換情報を参照して、処理対象のグループを構成する複数のセクタ番号に対応するページ番号を特定し、当該ページ番号をフラッシュメモリ５に通知すれば良い。
【０１２８】
以上のように、本変形例では、制御装置１０は、図１４に示されるように、処理対象のグループに対応するページ番号のページ１５０内における、処理対象のグループを構成する複数のセクタ番号に対応する複数のセクタ２５０が割り当てられた複数の部分ページ１５１に記憶される全セクタデータ、つまり必要な複数のセクタデータの読み出し要求をフラッシュメモリ５に行う（ステップｓ３１）。そして、制御装置１０は、必要な複数のセクタデータをフラッシュメモリ５から受け取る（ステップｓ３２）。これにより、上記の第３変形例と同様に、読み出し対象のデータを適切に取得しつつ、フラッシュメモリ５に対する読み出しのさらなる高速化を図ることができる。
【０１２９】
＜第５変形例：フラッシュメモリに対する読み出し要求の不実施＞
第２〜第４変形例のように、ホスト装置２がメモリ制御装置４に対してページ番号を含むホスト側読み出し要求信号を出力する場合には、上述の図１２に示される、読み出し対象のデータについての読み出し処理において、ホスト装置２は、誤動作により、グループ分けによって得られた各グループに対応したページ番号以外のページ番号を出力する可能性がある。つまり、ホスト装置２は、読み出し処理において、メモリ制御装置４から通知されたページ番号以外のページ番号を、誤ってメモリ制御装置４に通知することがある。このような場合に、メモリ制御装置４が、誤って通知されたページ番号のページ１５０内のデータを、フラッシュメモリ５から読み出してホスト装置２に出力すると、ホスト装置２は、受け取ったデータがどのセクタ２５０のデータであるか分からないことから、ホスト装置２がさらに誤動作する可能がある。
【０１３０】
そこで、本変形例では、メモリ制御装置４は、読み出し処理において、ホスト装置２からの情報要求信号に応じてホスト装置２に通知したページ番号以外のページ番号を含むホスト側読み出し要求信号をホスト装置２から受け取ったときには、当該ホスト側読み出し要求信号を無視する。つまり、メモリ制御装置４は、読み出し処理において、ホスト装置２からのホスト側読み出し要求信号に含まれるページ番号が、自身がホスト装置２に通知したページ番号である場合には、第２〜第４変形例のように、ホスト側読み出し要求信号に含まれるページ番号のページ１５０内のデータの読み出し要求をフラッシュメモリ５に行う。一方で、メモリ制御装置４は、読み出し処理において、ホスト装置２からのホスト側読み出し要求信号に含まれるページ番号が、自身がホスト装置２に通知したページ番号では無い場合には、ホスト側読み出し要求信号に含まれるページ番号のページ１５０内のデータの読み出し要求をフラッシュメモリ５に行わない。これにより、フラッシュメモリ５に対する不要な読み出しを抑制することができるとともに、ホスト装置２が不要なデータを取得して誤動作する可能性を抑制することができる。
【０１３１】
なお、メモリ制御装置４は、ホスト装置２からのホスト側読み出し要求信号を無視した場合には、その旨をホスト装置２に通知しても良い。メモリ制御装置４は、ホスト装置２からのホスト側読み出し要求信号を無視したことを通知する通知データを、読み出し処理において最後にフラッシュメモリ５から読み出したデータに続けて出力しても良いし、ホスト装置２からのホスト側読み出し要求信号を無視した直後に、それを通知する通知データを出力しても良い。
【０１３２】
＜第６変形例（再配置処理の一時的な禁止）＞
上述の特許文献２及び３にも記載されるように、フラッシュメモリのメモリセルアレイ内のデータが、リードディスターブ等によって、本来の値から変化し、当該データにビットエラーが発生することがある。以下に、この対策として一般的に行われる再配置処理及び更新処理について説明する。
【０１３３】
メモリ制御装置４の制御部４０は、所定の判定条件に基づいて、ビットエラーの発生確率の高い少なくとも一つのページ１５０を特定し、特定した少なくとも一つのページ１５０内のデータを、別の少なくとも一つの空きのページ１５０に書き直す再配置処理を実行する。この再配置処理はリフレッシュとも呼ばれる。そして、制御部４０は、再配置処理を実行したときには、実行した再配置処理の内容に応じて、管理情報５１０に含まれる論物変換情報を更新する更新処理を行う。以下に、再配置処理及び更新処理の例について説明する。
【０１３４】
図１５，１７は再配置処理の一例を示す図である。図１６は、図１５に示される再配置処理に応じた更新処理を説明するための図である。図１８は、図１７に示される再配置処理に応じた更新処理を説明するための図である。図１６，１８では、説明の便宜上、第１部分ページ１５１ａ、第２部分ページ１５１ｂ、第３部分ページ１５１ｃ及び第４部分ページ１５１ｄを特定するための部分ページ特定情報が、それぞれ、Ａ、Ｂ、Ｃ及びＤで示されている。
【０１３５】
図１５に示される再配置処理では、ビットエラーの発生確率の高い一つのページ１５０に書き込まれているデータが、空きの一つのページ１５０に書き直されている。具体的には、ビットエラーの発生確率の高いページ番号１００のページ１５０内のデータが、そのまま、空きのページ番号２００のページ１５０に書き直されている。
【０１３６】
図１５に示される再配置処理に応じた更新処理では、図１６に示されるように、論物変換情報において、セクタ番号１０００，２０００，１００８，１００５に対応するページ番号が１００から２００に変更される。なおこの更新処理では、セクタ番号１０００，２０００，１００８，１００５に対応する部分ページ特定情報は変更されない。
【０１３７】
一方で、図１７に示される再配置処理では、ビットエラーの発生確率の高い複数のページ１５０に書き込まれているデータが、空きの複数のページ１５０に書き直されている。具体的には、ビットエラーの発生確率の高いページ番号１００，１０１のページ１５０内のデータが、空きのページ番号２００，２０１のページ１５０に書き直されている。図１７の例では、ページ番号１００のページ１５０内のデータのうち、一部のデータ（セクタ番号１０００，１００５に応じたセクタデータ）がページ番号２００のページ１５０に書き込まれ、残りのデータ（セクタ番号２０００，１００８に応じたセクタデータ）がページ番号２０１のページ１５０に書き込まれている。同様に、ページ番号１０１のページ１５０内のデータのうち、一部のデータ（セクタ番号１００１，１００４に応じたセクタデータ）がページ番号２００のページ１５０に書き込まれ、残りのデータ（セクタ番号２００１に応じたセクタデータ）がページ番号２０１のページ１５０に書き込まれている。
【０１３８】
図１７に示される再配置処理に応じた更新処理では、図１８に示されるように、論物変換情報において、セクタ番号１０００，１００５に対応するページ番号が１００から２００に変更され、セクタ番号１００１，１００４に対応するページ番号が１０１から２００に変更され、セクタ番号１００８，２０００に対応するページ番号が１００から２０１に変更され、セクタ番号２００１に対応するページ番号が１０１から２０１に変更される。
【０１３９】
さらに、図１７に示される再配置処理に応じた更新処理では、セクタ番号２０００に対応する部分ページ特定情報がＢからＣに変更され、セクタ番号１００８に対応する部分ページ特定情報がＣからＡに変更される。
【０１４０】
このように、再配置処理においては、ビットエラーの発生確率の高いページ１５０内のデータが、そのまま別のページ１５０に書き直される場合もあれば、ビットエラーの発生確率の高いページ１５０内のデータが、複数に分けられて複数のページ１５０に書き直される場合もある。
【０１４１】
更新処理が実行されると、データが別のページ１５０に書き直されたページ１５０は、空きのページ１５０となる。よって、データが別のページ１５０に書き直されたページ１５０には、図１９に示されるように、新たなデータが書き込まれることがある。図１９の例では、データが別のページ１５０に書き直されたページ番号１００のページ１５０には、セクタ番号３０００，３００９，３００２のセクタ２５０のデータが書き込まれている。
【０１４２】
制御部４０は、再配置処理を行う際には、ビットエラーの発生確率の高いページ１５０内のデータに対して誤り検出及び誤り訂正を行っても良い。制御部４０は、ビットエラーの発生確率の高いページ１５０内のデータに対する誤り検出の結果、ビットエラーが検出された場合には、当該データに対して誤り訂正を行い、誤り訂正後の当該データを、書き直し先のページ１５０に書き込む。
【０１４３】
再配置処理で使用される判定条件としては、様々な条件が考えられる。例えば、制御部４０は、各ページ１５０に対する読み出し回数をカウントし、読み出し回数がしきい値以上のページ１５０を、ビットエラーの発生確率の高いページ１５０であると判定しても良い。また、制御部４０は、ページ１５０から読み出したデータに対して誤り検出及び誤り訂正を行う場合には、ページ１５０から読み出したデータでの誤りビット数がしきい値以上のときに、当該ページ１５０が、ビットエラーの発生確率の高いページ１５０であると判定しても良い。このしきい値としては、制御部４０が誤り訂正可能なビット数よりも小さい値に設定される。
【０１４４】
以上のような一般的な再配置処理及び更新処理が、読み出し処理の際に行われると、フラッシュメモリ５に対して、同じページ番号のページ１５０内のデータの読み出し要求を連続して行う可能性が低くなることがある。さらに、上記の第２〜第５変形例のように、ホスト装置２がページ番号を含むホスト側読み出し要求信号を出力する場合には、ホスト装置２は所望のデータをフラッシュメモリ５から読み出せない可能性がある。以下にこの点について説明する。
【０１４５】
上述の図１７に示されるように、再配置処理が行われた場合には、同じページ番号のページ１５０に書き込まれている複数のセクタデータが、同じページ１５０に書き直されないことがある。図１７の例では、ページ番号１００のページ１５０に書き込まれている４つのセクタデータのうち、セクタ番号１０００，１００５のセクタ２５０のセクタデータは、ページ番号２００のページ１５０に書き直され、セクタ番号２０００，１００８のセクタ２５０のセクタデータは、ページ番号２０１のページ１５０に書き直されている。
【０１４６】
同じページ番号のページ１５０に書き込まれている複数のセクタデータが、同じページ１５０に書き直されない場合には、更新処理後の論物変換情報では、当該複数のセクタデータに対応するページ番号が同じにはならない。図１８に示されるように、セクタ番号１０００，１００５に対応するページ番号は２００であり、セクタ番号２０００，１００８に対応するページ番号は２０１であり、セクタ番号１０００，２０００，１００８，１００５に対応するページ番号は同じではない。
【０１４７】
読み出し処理の実行中に、図１７，１８のような再配置処理及び更新処理が行われると、あるグループに関するデータの読み出し要求を行うときに、メモリ制御装置４での論物変換情報において、当該あるグループを構成する複数のセクタ番号が同じページ番号に対応付けられていない可能性がある。
【０１４８】
例えば、上記のファイルＡの読み出し処理において、グループ分け（図１２のステップｓ１４）の直後に、図１７，１８のような再配置処理及び更新処理が行われると、図８に示される１００番グループに関するデータの読み出し処理を行う時点において、メモリ制御装置４での論物変換情報では、１００番グループを構成する複数のセクタ番号１０００，１００５，１００８は同じページ番号に対応付けられていない。具体的には、図１８の右側に示されるように、セクタ番号１０００，１００５はページ番号２００に対応付けられ、セクタ番号１００８はページ番号２０１に対応付けられている。このような場合に、制御装置１０が、１００番グループについてのセクタ単位のデータ読み出しを行うと、フラッシュメモリ５に対しては、ページ番号２００のページ１５０内のデータの読み出し要求が２回、ページ番号２０１のページ１５０内のデータの読み出し要求が１回通知され、上記の例とは異なり、同じページ番号のページ１５０内のデータの読み出し要求が３回連続して通知されない。よって、フラッシュメモリ５がメモリセルアレイ５０にアクセスする頻度が少し増加し、フラッシュメモリ５に対する読み出し速度が少し低下する可能性がある。
【０１４９】
さらに、このような場合に、ホスト装置２が、１００番グループに関するデータ読み出しを行う際に、ページ番号１００をメモリ制御装置４に通知すると、フラッシュメモリ５からは、セクタ番号１０００，１００５，１００８以外のセクタ番号に応じたセクタデータが読み出される可能性がある。具体的に説明すると、上述の図１９に示されるように、再配置処理が行われたデータを記憶していたページ番号１００のページ１５０は空きページ１５０となって、他のセクタ番号に応じたデータが書き込まれることがあり、このような場合に、メモリ制御装置４がページ番号１００のページ１５０内のデータの読み出し要求をフラッシュメモリ５に行うと、フラッシュメモリ５からは、セクタ番号１０００，１００５，１００８以外のセクタ番号に応じたセクタデータが出力される。したがって、ホスト装置２は、所望のデータをフラッシュメモリ５から読み出せない可能性がある。
【０１５０】
そこで、本変形例では、制御装置１０は、読み出し処理を行う際には、読み出し対象のデータが記憶される複数のセクタ２５０が割り当てられた複数のページ１５０に書き込まれているデータについての再配置処理は実行しない。図２０は、本変形例に係るホスト装置２及びメモリ制御装置４の動作を示す図である。図２０は上述の図１２に対応している。
【０１５１】
図２０に示されるように、ホスト装置２では、制御部２０が、管理情報５００に基づいて、読み出し対象のデータを記憶する複数のセクタ２５０のセクタ番号を特定する前に、メモリ制御装置４に対して、再配置処理の実行を禁止することを通知するための再配置禁止通知信号を出力する（ステップｓ４１）。これにより、メモリ制御装置４では、再配置処理の実行が禁止される。メモリ制御装置４では、メモリセルアレイ５０に記憶されている全データについての再配置処理が禁止されても良い。あるいは、メモリ制御装置４では、情報要求信号に応じてホスト装置２に通知する各ページ番号のページ１５０内のデータ、つまり、読み出し対象のデータが記憶される複数のセクタ２５０が割り当てられている複数のページ１５０内のデータだけの再配置処理が禁止され、他のページ１５０内のデータの再配置処理が許可されても良い。再配置処理が禁止されると、再配置処理に応じた更新処理も当然に実行されない。
【０１５２】
ホスト装置２は、再配置禁止通知信号を出力した後、管理情報５００に基づいて、読み出し対象のデータを記憶する複数のセクタ２５０のセクタ番号を特定する（ステップｓ１１）。以後、ホスト装置２及びメモリ制御装置４は上記と同様に動作する。そして、ホスト装置２は、読み出し対象のデータの読み出しが完了すると、再配置処理の実行を許可することを通知するための再配置許可通知信号を出力する（ステップｓ４２）。これにより、メモリ制御装置４では再配置処理の実行が許可される。
【０１５３】
以上のように、本変形例では、制御装置１０は、読み出し処理を行う際には、読み出し対象のデータが記憶される複数のセクタ２５０が割り当てられている複数のページ１５０（図８の例では、ページ番号１００，１０１，１０２，１０３のページ１５０）に書き込まれているデータについての再配置処理は実行しない。したがって、より確実に、同じページ番号のページ１５０内のデータの読み出し要求を連続して行うことができる。さらに、ホスト装置２がページ番号を含むホスト側読み出し要求信号を出力する場合には、制御装置１０が所望のデータをフラッシュメモリ５から読み出せない可能性を抑制することができる。
【０１５４】
＜第７変形例：読み出し処理後に更新処理を実施＞
上記の説明から理解できるように、読み出し処理中に再配置処理が実行されたとしても、読み出し処理の後に当該再配置処理の内容に応じた更新処理が実行される場合には、読み出し処理中に、それが記憶するデータの再配置処理が行われたページ１５０が空きページ１５０とはならない。したがって、この場合には、読み出し処理中において、それが記憶するデータの再配置処理が行われたページ１５０内には、再配置処理されたデータが残っている（図１５，１７参照）。よって、この場合には、制御装置１０は同じページ番号のページ１５０内のデータの読み出し要求を連続して行うことができるとともに、制御装置１０が所望のデータをフラッシュメモリ５から読み出せないことを抑制することができる。
【０１５５】
そこで、本変形例では、制御装置１０は、読み出し処理中であっても再配置処理を禁止しない。そして、制御装置１０は、読み出し処理中に、読み出し対象のデータが記憶される複数のセクタ２５０が割り当てられた複数のページ１５０の少なくとも一つのページ１５０に書き込まれているデータについての再配置処理を実行した場合には、読み出し対象データをフラッシュメモリ５から読み出した後に（読み出し処理後に）、当該再配置処理の内容に応じた更新処理を実行する。これにより、制御装置１０は同じページ番号のページ１５０内のデータの読み出し要求を連続して行うことができるとともに、制御装置１０が所望のデータをフラッシュメモリ５から読み出せない可能性を抑制し、さらに、リードディスターブ等によってメモリセルアレイ５０内のデータにビットエラーが発生することを抑制することができる。
【０１５６】
例えば、制御装置１０は、ファイルＡの読み出し中に、ページ番号１００のページ１５０内のデータについて、図１５に示されるような再配置処理を行った場合には、ファイルＡを読み出した後に、論物変換情報において、セクタ番号１０００，２０００，１００８，１００５に対応するページ番号を１００から２００に変更する。これにより、制御装置１０は、読み出し処理中に、ページ番号１００のページ１５０内のデータの読み出し要求を行った場合には、所望のセクタデータ、つまりセクタ番号１０００，２０００，１００８，１００５に応じてセクタデータをフラッシュメモリ５から読み出すことができる。
【０１５７】
なお、制御部４０が、再配置処理を実行する際に、ビットエラーの発生確率の高いページ１５０内のデータに対して誤り検出及び誤り訂正を行う場合には、ホスト装置２は、読み出したデータのうち、そのデータの読み出し処理中に誤り訂正されたセクタデータを、読み出し処理後に再度フラッシュメモリ５から読み出しても良い。以下にこの場合のホスト装置２及びメモリ制御装置４の動作を詳細に説明する。
【０１５８】
ホスト装置２は、読み出し対象のデータの読み出しが完了すると、当該読み出し対象のデータのうち、読み出し処理中の再配置処理の実行時に誤り訂正されたセクタデータが存在するか否かを確認するための訂正データ確認信号をメモリ制御装置４に出力する。
【０１５９】
メモリ制御装置４では、制御部４０は、ホスト装置２から訂正データ確認信号を受け取ると、読み出し対象のデータにおいて、読み出し処理中の再配置処理の実行時に誤り訂正を行ったセクタデータが存在するか否かを判定する。制御部４０は、読み出し対象のデータにおいて、誤り訂正を行ったセクタデータが存在する場合には、当該セクタデータに対応するセクタ番号（以後、「訂正データ対応セクタ番号」と呼ぶ）をホスト装置２に通知する。例えば、ファイルＡの読み出し処理の間に上述の図１５に示される再配置処理が行われ、当該再配置処理の際に、制御部４０が、ページ番号１００のページ１５０の第１部分ページ１５１ａ及び第２部分ページ１５１ｂ内のセクタデータを誤り訂正した上で、ページ番号２００のページ１５０の第１部分ページ１５１ａ及び第２部分ページ１５１ｂ内に書き込んだ場合には、制御部４０は、ホスト装置２から訂正データ確認信号を受け取ると、訂正データ対応セクタ番号として、セクタ番号１０００，２０００をホスト装置２に通知する。
【０１６０】
ホスト装置２では、制御部２０は、読み出し済みの読み出し対象のデータのうち、メモリ制御装置４から通知された訂正データ対応セクタ番号に応じたセクタデータを破棄する。当該セクタデータは、メモリ制御装置２で誤り訂正される前のデータであることから、当該セクタデータにはデータ誤りが発生している。したがって、当該セクタデータはホスト装置２によって破棄される。その後、ホスト装置２は、通知された訂正データ対応セクタ番号に応じたセクタデータを、フラッシュメモリ５から読み出す。具体的には、ホスト装置２は、訂正データ対応セクタ番号をメモリ制御装置４に通知し、メモリ制御装置４は、論物変換情報に基づいて、通知された訂正データ対応セクタ番号に対応するページ番号及び部分ページ特定情報を特定する。このときの論物変換情報は、読み出し処理後に更新された論物変換情報である。したがって、訂正データ対応セクタ番号が、セクタ番号１０００，２０００である場合には、このときの論物変換情報においては、図１６の右側に示されるように、セクタ番号１０００，２０００に対応するページ番号は１００ではなく２００となる。
【０１６１】
その後、メモリ制御装置４は、特定したページ番号と、特定した部分ページ特定情報によって特定される部分ページ１５１の列アドレスとを含むメモリ側読み出し要求信号をフラッシュメモリ５に出力する。これにより、フラッシュメモリ５からは、訂正データ対応セクタ番号に応じたセクタデータが出力され、当該セクタデータがホスト装置２に入力される。このセクタデータは誤り訂正済みのデータである。ホスト装置２は、破棄したセクタデータ（データ誤りが発生しているセクタデータ）の代わりに、再度読み出したセクタデータ（誤り訂正済みのセクタデータ）を使用する。
【０１６２】
このように、制御装置１０は、読み出し済みの読み出し対象のデータにおいて、そのデータの読み出し処理中に誤り訂正されたセクタデータが存在する場合には、当該セクタデータを破棄する。そして、制御装置１０は、読み出し処理中に誤り訂正されたセクタデータに対応するセクタ番号に対応するセクタ２５０内のデータをフラッシュメモリ５から再度読み出す。これより、制御装置１０は、適切な読み出し対象のデータを取得することができる。
【０１６３】
なお、上記の例では、メモリ制御装置４は、読み出し処理の後にホスト装置２から通知される訂正データ確認信号に応じて訂正データ対応セクタ番号を通知しているが、読み出し処理中において、訂正データ対応セクタ番号を自らホスト装置２に通知しても良い。このとき、メモリ制御装置４は、フラッシュメモリ５から読み出したデータと一緒に訂正データ対応セクタ番号を通知しても良い。
【０１６４】
＜第８変形例：読み出し処理後のデータの再読出し＞
本変形例では、制御装置１０は、読み出し処理中の再配置処理及び更新処理を禁止しない代わりに、読み出し処理後に、フラッシュメモリ５からデータを再読出しする。図２１は本変形例に係るホスト装置２及びメモリ制御装置４の動作を示す図である。
【０１６５】
図２１に示されるように、ホスト装置２では、制御部２０が、ステップｓ１１において、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号を特定した後に、特定したセクタ番号に対応するページ番号の要求を開始することを通知するための情報要求開始通知信号をメモリ制御装置４に出力する。（ステップｓ５１）。その後、制御装置２０は、特定したセクタ番号を含む情報要求信号をメモリ制御装置４に出力し（ステップｓ１２）、その後、ホスト装置２及びメモリ制御装置４は上記と同様に動作する。ホスト装置２は、特定した各セクタ番号に対応するページ番号を取得すると、ページ番号の要求を終了することを通知するための情報要求終了通知信号をメモリ制御装置４に出力する。（ステップｓ５２）。
【０１６６】
ホスト装置２は、情報要求終了通知信号を出力すると、ステップｓ１４を実行し、その後、ホスト装置２及びメモリ制御装置４は同様に動作する。その後、ホスト装置２は、読み出し対象のデータの読み出しが完了すると、情報要求信号に応じてメモリ制御装置４から通知されたページ番号のページ１５０内のデータに対して再配置処理が実行された否かを確認するための再配置確認信号をメモリ制御装置４に出力する（ステップｓ５３）。
【０１６７】
メモリ制御装置４では、制御部４０は、ホスト装置２から再配置確認信号を受け取ると、情報要求開始通知信号を受け取ってから情報要求終了通知信号を受け取るまでの期間にホスト装置２から通知された複数のセクタ番号において、読み出し処理の間に実行した再配置処理及び更新処理によって、論物変換情報でのページ番号との対応付けが変更されたセクタ番号が存在するか否かを判定する。つまり、制御部４０は、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号において、読み出し処理中の再配置処理及び更新処理によって、論物変換情報でのページ番号との対応付けが変更されたセクタ番号（以後、対応変更済みセクタ番号と呼ぶ）が存在するか否かを判定する。メモリ制御装置４は、読み出し対象データが記憶される複数のセクタ２５０のセクタ番号において、対応変更済みセクタ番号が存在する場合には、対応変更済みセクタ番号をホスト装置２に通知する（ステップｓ５４）。
【０１６８】
例えば、ファイルＡの読み出し処理の間に上述の図１５，１６に示される再配置処理及び更新処理が行われた場合には、対応変更済みセクタ番号は、セクタ番号１０００，１００８，１００５となる。
【０１６９】
ホスト装置２では、制御部２０は、読み出したデータのうち、メモリ制御装置４から通知された対応変更済みセクタ番号に応じたセクタデータを破棄する（ステップｓ５５）。その後、ホスト装置２は、通知された対応変更済みセクタ番号に応じたセクタデータを、フラッシュメモリ５から再度読み出す（ステップｓ５６）。具体的には、ホスト装置２は、対応変更済みセクタ番号をメモリ制御装置４に通知し、メモリ制御装置４は、論物変換情報に基づいて、通知された対応変更済みセクタ番号に対応するページ番号及び部分ページ特定情報を特定する。なお、このときの論物変換情報は、読み出し処理中に行われた再配置処理の内容に応じて更新された論物変換情報である。したがって、対応変更済みセクタ番号が、セクタ番号１０００，１００８，１００５である場合には、このときの論物変換情報においては、図１６の右側に示されるように、セクタ番号１０００，１００８，１００５に対応するページ番号は１００ではなく２００となる。
【０１７０】
その後、メモリ制御装置４は、特定したページ番号と、特定した部分ページ特定情報によって特定される部分ページ１５１の列アドレスとを含むメモリ側読み出し要求信号をフラッシュメモリ５に出力する。これにより、フラッシュメモリ５からは、対応変更済みセクタ番号に応じたセクタデータが出力され、当該セクタデータがホスト装置２に入力される。ホスト装置２は、破棄したデータの代わりに、再度読み出したセクタデータを使用する。これにより、ホスト装置２は適切な読み出し対象のデータを取得することができる。
【０１７１】
このように、本変形例では、制御装置１０は、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号において、読み出し処理の実行中に行った再配置処理及び更新処理によってページ番号との対応付けが変更された対応変更済みセクタ番号が存在する場合には、読み出し対象データをフラッシュメモリ５から読み出した後に、読み出した当該読み出し対象のデータに含まれる、当該対応変更済みセクタ番号に対応するセクタ２５０内のデータを破棄する。そして、制御装置１０は、対応変更済みセクタ番号に対応するセクタ２５０内のデータをフラッシュメモリ５から再度読み出す。これより、制御装置１０は、適切な読み出し対象のデータを取得することができる。
【０１７２】
＜第９変形例：複数のフラッシュメモリに対する読み出し処理＞
図２２は本変形例に係るデータ処理システム１の構成を示す図である。図２２に示されるように、本変形例では、記憶装置３は、複数のフラッシュメモリ５を備えている。ホスト装置２は、メモリ制御装置４を通じて、複数のフラッシュメモリ５のそれぞれからデータを読み出すことができるとともに、複数のフラッシュメモリ５のそれぞれに対してデータを書き込むことができる。
【０１７３】
複数のフラッシュメモリ５は、互いに同じ構成を有している。各フラッシュメモリ５のメモリセルアレイ５０には、上記と同様に、当該メモリセルアレイ５０内でのデータを管理する管理情報５１０と、アプリケーションデータ５２０とが記憶されている。したがって、複数のフラッシュメモリ５のそれぞれには固有の管理情報５１０が記憶されている。よって、複数のフラッシュメモリ５にそれぞれ対応する複数の論物変換情報が存在する。
【０１７４】
また、各フラッシュメモリ５においては、メモリセルアレイ５０を構成する複数のページ１５０に対して、０番から始まる複数の物理ページ番号がそれぞれ固定的に割り当てられている。したがって、複数のフラッシュメモリ５の間においては、同じ物理ページ番号のページ１５０が存在する。ここでも、単にページ番号と言えば、物理ページ番号を意味する。
【０１７５】
本変形例では、複数のフラッシュメモリ５がそれぞれ備える複数のメモリセルアレイ５０全体で構成される記憶領域が、複数のセクタ２５０に論理的に区分されている。そして、当該複数のセクタ２５０には、互いに異なる複数のセクタ番号が割り当てられている。したがって、複数のフラッシュメモリ５の間においては、同じセクタ番号のセクタ２５０は存在しない。
【０１７６】
また本変形例では、上記と同様に、一つのページ１５０には複数のセクタ２５０、例えば４つのセクタ２５０が割り当てられる。一つのセクタ２５０の記憶容量は、一つのページ１５０の記憶容量の四分の一となっている。各ページ１５０は、セクタ２５０の４つ分のデータを記憶することが可能である。
【０１７７】
ホスト装置２内の管理情報５００には、上記と同様に、複数のフラッシュメモリ５のメモリセルアレイ５０内のファイル（データ）と、当該ファイルが記憶される複数のセクタ２５０のセクタ番号とを対応付ける第１対応付け情報が含まれている。一つのファイルは、一つのフラッシュメモリ５のメモリセルアレイ５０内にだけ記憶されることもあれば、２つ以上のフラッシュメモリ５のメモリセルアレイ５０にわたって記憶されることがある。
【０１７８】
各フラッシュメモリ５に対しては、当該フラッシュメモリ５を識別するための固有の識別情報が割り当てられている。以後、この識別情報をメモリ識別情報と呼ぶ。メモリ識別情報は、番号であっても良いし、他の情報であっても良い。
【０１７９】
フラッシュメモリ５内の管理情報５１０に含まれる論物変換情報では、当該フラッシュメモリ５のメモリ識別情報と、セクタ番号と、当該セクタ番号のセクタ２５０内のデータが記憶されるページ１５０のページ番号と、当該ページ１５０に含まれる、当該セクタ２５０内のデータが記憶される部分ページ１５１の部分ページ特定情報とが対応付けられている。言い換えれば、フラッシュメモリ５内の論物変換情報では、セクタ番号と、当該セクタ番号のセクタ２５０が割り当てられたページ１５０のページ番号と、当該ページ１５０に含まれる、当該セクタ２５０が割り当てられた部分ページ１５１の部分ページ特定情報と、当該ページ１５０を有するフラッシュメモリ５のメモリ識別情報とが対応付けられている。
【０１８０】
本変形例に係る制御装置１０は、複数のフラッシュメモリ５にそれぞれ対応する複数の論物変換情報に基づいて、読み出し対象のデータが記憶される複数のセクタのセクタ番号を、対応するページ番号及びメモリ識別情報の組が同一になるようにグループ分けする。そして、制御装置１０は、グループごとに、当該グループに必要な、当該グループに対応するページ番号のページ１５０内のデータの読み出し要求を、当該グループに対応するメモリ識別情報のフラッシュメモリ５に行う。図２３は読み出し処理を行う本変形例のホスト装置２及びメモリ制御装置４の動作を示す図である。
【０１８１】
図２３に示されるように、ホスト装置２は、上記と同様に、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号を、管理情報５００を参照して特定する（ステップｓ１１）。
【０１８２】
次に、ホスト装置２は、上記と同様に、特定した複数のセクタ番号の一つを含む情報要求信号をメモリ制御装置４に出力する（ステップｓ１２）。
【０１８３】
メモリ制御装置４は、揮発性メモリ４２内の、複数のフラッシュメモリ５にそれぞれ対応する複数の論物変換情報を参照して、ホスト装置２からの情報要求信号に含まれるセクタ番号に対応するページ番号及びメモリ特定情報を特定し、それらをホスト装置２に出力する（ステップｓ６３）。
【０１８４】
ステップｓ１２，ｓ６３は、ホスト装置２が、特定した複数のセクタ番号のそれぞれに対応するページ番号及びメモリ特定情報を取得するまで行われる。
【０１８５】
ホスト装置２は、特定した複数のセクタ番号のそれぞれに対応するページ番号及びメモリ特定情報を取得すると、ステップｓ６４において、特定した複数のセクタ番号を、対応するページ番号及びメモリ特定情報の組が同じとなるようにグループ分けする。以下に、本変形例のグループ分けの一例について説明する。以下の説明では、セクタ番号５０００〜５００９のセクタ２５０に記憶されるファイルＣの読み出し処理でのグループ分けについて説明する。
【０１８６】
図２４は、ファイルＣが記憶されるセクタ２５０及びページ１５０の対応関係を示す図である。図２４に示されるように、セクタ番号５０００のセクタ２５０は、フラッシュメモリ５ａでのページ番号５００のページ１５０の第１部分ページ１５１ａに割り当てられ、セクタ番号５００８のセクタ２５０は、フラッシュメモリ５ａでのページ番号５００のページ１５０の第３部分ページ１５１ｃに割り当てられ、セクタ番号５００５のセクタ２５０は、フラッシュメモリ５ａでのページ番号５００のページ１５０の第４部分ページ１５１ｄに割り当てられている。セクタ番号５００１のセクタ２５０は、フラッシュメモリ５ａでのページ番号５０１のページ１５０の第２部分ページ１５１ｂに割り当てられ、セクタ番号５００４のセクタ２５０は、フラッシュメモリ５ａでのページ番号５０１のページ１５０の第３部分ページ１５１ｃに割り当てられている。
【０１８７】
セクタ番号５００２のセクタ２５０は、フラッシュメモリ５ｂでのページ番号８５０のページ１５０の第１部分ページ１５１ａに割り当てられ、セクタ番号５００６のセクタ２５０は、フラッシュメモリ５ｂでのページ番号８５０のページ１５０の第２部分ページ１５１ｂに割り当てられ、セクタ番号５００３のセクタ２５０は、フラッシュメモリ５ｂでのページ番号８５０のページ１５０の第３部分ページ１５１ｃに割り当てられている。セクタ番号５００７のセクタ２５０は、フラッシュメモリ５ｂでのページ番号８５１のページ１５０の第２部分ページ１５１ｂに割り当てられ、セクタ番号５００９のセクタ２５０は、フラッシュメモリ５ｂでのページ番号８５１のページ１５０の第４部分ページ１５１ｄに割り当てられている。
【０１８８】
ホスト装置２は、図２５に示されるように、ファイルＣに対応するセクタ番号５０００〜５００９を、対応するページ番号及びメモリ識別情報の組が同一となるようにグループ分けする。図２５では、フラッシュメモリ５ａ，５ｂのメモリ識別情報を便宜上それぞれ５ａ、５ｂとしている。
【０１８９】
グループＧ１は、対応するページ番号及びメモリ識別情報が５００及び５ａであるセクタ番号５０００，５００８，５００５で構成されている。グループＧ２は、対応するページ番号及びメモリ識別情報が５０１及び５ａであるセクタ番号５００１，５００４で構成されている。グループＧ３は、対応するページ番号及びメモリ識別情報が８５０及び５ｂであるセクタ番号５００２，５００６，５００３で構成されている。グループＧ４は、対応するページ番号及びメモリ識別情報が８５１及び５ｂであるセクタ番号５００７，５００９で構成されている。
【０１９０】
ホスト装置２は、ステップｓ６４においてグループ分けを行うと、上記と同様に、グループごとに、当該グループを構成する複数のセクタ番号を順にメモリ制御装置４に通知する（ステップｓ１）。
【０１９１】
ホスト装置２からセクタ番号が通知されたメモリ制御装置４では、制御部４０が、複数のフラッシュメモリ５にそれぞれ対応する複数の論物変換情報を参照して、通知されたセクタ番号に対応するページ番号、部分ページ識別情報及びメモリ識別情報を特定する。そして、制御部４０は、特定したページ番号のページ１５０に含まれる、特定した部分ページ特定情報で特定される部分ページ１５１内のデータの読み出し要求を、特定したメモリ識別情報のフラッシュメモリ５に行う。つまり、制御部４０は、特定したページ番号と、特定した部分ページ特定情報で特定される部分ページ１５１の列アドレスとを含むメモリ側読み出し要求信号を、特定したメモリ識別情報のフラッシュメモリ５に通知する（上述の図６のステップｓ２）。
【０１９２】
メモリ側読み出し要求信号を受けたフラッシュメモリ５は、上記と同様にして、当該メモリ側読み出し要求信号に含まれるページ番号及び列アドレスに応じたセクタデータをメモリ制御装置４に出力する（上述の図６のステップｓ３）。
【０１９３】
メモリ制御装置４では、制御部４０は、フラッシュメモリ５からセクタデータを受け取ると、ステップｓ４において、受け取ったセクタデータをホスト装置２に出力する。
【０１９４】
以後、制御装置１０は同様に動作して、ホスト装置２が、グループ分けによって得られた各グループの各セクタ番号に応じたセクタデータを取得すると、読み出し処理が終了する。
【０１９５】
このように、本変形例では、制御装置１０が、複数のフラッシュメモリ５のそれぞれについて用意された論物変換情報に基づいて、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号を、対応するページ番号及びメモリ識別情報の組が同一になるようにグループ分けする。そして、制御装置１０は、グループごとに、当該グループに必要な、当該グループに対応するページ番号のページ１５０内のデータの読み出し要求を、当該グループに対応するメモリ識別情報のフラッシュメモリ５に行う。これにより、制御装置１０が複数のフラッシュメモリ５を制御する場合であっても、上記と同様に、各フラッシュメモリ５に対して、同じページ番号のページ１５０に対する読み出し要求が連続して行われる可能性が高くなる。よって、各フラッシュメモリ５に対する読み出しの高速化を図ることが可能となる。
【０１９６】
なお、本変形例では、ホスト装置２からセクタ番号を含むホスト側読み出し要求信号が出力される場合について説明したが、上記の第２〜５変形例のように、ホスト装置２からページ番号を含むホスト側読み出し要求信号が出力される場合であっても、上記と同様のグループ分け及びフラッシュメモリ５に対する読み出し要求を行うことができる。
【０１９７】
また、本変形例では、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号は、対応する物理ページ番号及びメモリ識別情報の組が同一となるようにグループ分けされていたが、対応する論理ページ番号でグループ分けされても良い。ここでの論理ページ番号とは、それに対応するページについての、複数のフラッシュメモリ５のメモリセルアレイ５０全体で構成される記憶領域での論理的な位置を示す情報である。当該記憶領域には、互いに異なる複数の論理ページ番号がそれぞれ割り当てられた複数のページ１５０が含まれている。複数のフラッシュメモリ５がそれぞれ有する複数のメモリセルアレイ５０の間では、同じ論理ページ番号が割り当てられたページ１５０は存在しない。
【０１９８】
読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号が、対応する論理ページ番号でグループ分けされる場合には、複数のフラッシュメモリ５にそれぞれ対応する複数の論物変換情報のそれぞれでは、物理ページ番号に対して、当該物理ページ番号のページ１５０に割り当てられた論理ページ番号が対応付けられている。制御装置１０は、各論物変換情報を参照して、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号に対応する複数の論理ページ番号を特定する。例えば、メモリ制御装置４は、情報要求信号を利用してホスト装置２が通知する各セクタ番号に対応する論理ページ番号を、各論物変換情報に基づいて特定する。そして、メモリ制御装置４は、特定した各論理ページ番号をホスト装置２に出力する。
【０１９９】
ホスト装置２は、メモリ制御装置４から通知される論理ページ番号に基づいて、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号を、対応する論理ページ番号でグループ分けする。その後、ホスト装置２は、ホスト側読み出し要求信号を利用して、グループごとに、当該グループを構成する各セクタ番号をメモリ制御装置４に通知する。以後の制御装置１０の動作は上記と同様である。メモリ制御装置４が、物理ページ番号のページ内のデータの読み出し要求をフラッシュメモリ５に行うことは、見方を変えれば、当該物理ページ番号に対応する論理ページ番号のページ内のデータの読み出し要求をフラッシュメモリ５に行うことと言える。
【０２００】
このように、制御装置１０が、グループごとに、当該グループに必要な、当該グループに対応する論理ページ番号のページ１５０内のデータの読み出し要求を、当該論理ページ番号のページ１５０を含むメモリセルアレイ５０を有するフラッシュメモリ５に行うことによって、同様の効果が得られる。
【０２０１】
＜第１０変形例：ホスト装置が直接フラッシュメモリを制御＞
上記の例では、ホスト装置２は、メモリ制御装置４を通じてフラッシュメモリ５を制御していたが、メモリ制御装置４を介さずに直接フラッシュメモリ５を制御しても良い。図２６は、本変形例に係るデータ処理システム１の構成を示す図である。
【０２０２】
図２６に示されるように、本変形例のデータ処理システム１では、メモリ制御装置４が設けられておらず、ホスト装置２が、直接的に、フラッシュメモリ５からデータを読み出したり、フラッシュメモリ５に対してデータを書き込んだりする。本変形例では、制御装置１０がホスト装置２だけで構成される。
【０２０３】
本変形例に係るホスト装置２は、例えば、Ｌｉｎｕｘ（登録商標）に対応している。Ｌｉｎｕｘ（登録商標）に対応するホスト装置２では、ＦＴＬ (Flash Translation Layer)という機能ブロック が制御部２０に形成される。このＦＴＬが、フラッシュメモリ５のメモリセルアレイ５０でのデータを管理する。つまり、ＦＴＬが論物変換情報を有している。ホスト装置２の制御部２０では、ファイルシステムが、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号を特定する。そして、ホスト装置２の制御部２０では、ＦＴＬが、論物変換情報を使用して、読み出し対象のデータが記憶される複数のセクタ２５０のセクタ番号のグループ分けを行うとともに、グループごとに、当該グループに関するデータの読み出し要求をフラッシュメモリ５に対して行う。ＦＴＬは、メモリ制御装置４と同様に、フラッシュメモリ５に対して、ページ番号等を含む読み出し要求信号を出力することによって、フラッシュメモリ５に対して、ページ１５０内のデータの読み出し要求を行う。
【０２０４】
このように、ホスト装置２がフラッシュメモリ５に対して直接アクセスする場合には、ホスト装置２とメモリ制御装置４との間の信号のやり取りが不要となることから、フラッシュメモリ５に対する読み出しのさらなる高速化を図ることができる。
【０２０５】
以上のように、データ処理システム（記憶システム）１は詳細に説明されたが、上記した説明は、全ての局面において例示であって、この発明がそれに限定されるものではない。また、上述した各種変形例は、相互に矛盾しない限り組み合わせて適用可能である。そして、例示されていない無数の変形例が、この発明の範囲から外れることなく想定され得るものと解される。
【符号の説明】
【０２０６】
１  データ処理システム（記憶システム）
２  上位装置
４  メモリ制御装置
５，５ａ，５ｂ  フラッシュメモリ（半導体メモリ）
５０  メモリセルアレイ
５１  ページバッファ
１５０  ページ
１５１  部分ページ
２５０  セクタ
２１０  制御プログラム
【図１】
0006412820.tif 000002
【図２】
0006412820.tif 000003
【図３】
0006412820.tif 000004
【図４】
0006412820.tif 000005
【図５】
0006412820.tif 000006
【図６】
0006412820.tif 000007
【図７】
0006412820.tif 000008
【図８】
0006412820.tif 000009
【図９】
0006412820.tif 000010
【図１０】
0006412820.tif 000011
【図１１】
0006412820.tif 000012
【図１２】
0006412820.tif 000013
【図１３】
0006412820.tif 000014
【図１４】
0006412820.tif 000015
【図１５】
0006412820.tif 000016
【図１６】
0006412820.tif 000017
【図１７】
0006412820.tif 000018
【図１８】
0006412820.tif 000019
【図１９】
0006412820.tif 000020
【図２０】
0006412820.tif 000021
【図２１】
0006412820.tif 000022
【図２２】
0006412820.tif 000023
【図２３】
0006412820.tif 000024
【図２４】
0006412820.tif 000025
【図２５】
0006412820.tif 000026
【図２６】
0006412820.tif 000027