(57)【要約】【課題】使用状況によってデータの書き込み速度が変化するメモリに対し所定のビットレートでデータを書き込む際のデータの欠落を防止する。【解決手段】メモリ管理装置は、メモリの複数のバンクを外部の装置に認識されるビジブルバンクと認識されないインビジブルバンクに区分する。メモリ管理装置は、ビジブルバンクの１つをアクティブバンクとし、データの書き込み速度を向上させるための前処理の完了したインビジブルバンクの１つをシャドーバンクとする。アクティブバンクとシャドーバンクは論理アドレス空間を共有し、外部の装置からは区別されない。メモリ管理装置は、データの書き込み要求に応じてシャドーバンクにデータを書き込む間、インビジブルバンクに対する前処理を行う。シャドーバンクへのデータの書き込みが完了すると、メモリ管理装置はシャドーバンクをビジブルバンクに切り替え、アクティブバンクをインビジブルバンクに切り替える。【選択図】図３Ｄ
2017138636.tif 000002
【特許請求の範囲】
【請求項１】
データの書き込みに先んじて前処理を行うことによりデータの書き込み速度を速めることができるメモリを管理するメモリ管理装置が、
前記メモリを構成する所定サイズの複数のバンクのうちの所定数の複数のバンクをビジブルバンクとして選択するとともに、前記複数のバンクのうちビジブルバンクとして選択されていない複数のバンクをインビジブルバンクとし、
前記複数のインビジブルバンクの各々に前記前処理を行い、
前記複数のビジブルバンクの中から１つのバンクをアクティブバンクとして選択するとともに、前記複数のインビジブルバンクのうち前記前処理が完了しているインビジブルバンクの中から１つのバンクを前記アクティブバンクと論理アドレス空間を共有するシャドーバンクとして選択し、
データの書き込み要求に応じて前記シャドーバンクにデータを書き込み、
新たなアクティブバンクの選択に伴い、当該選択の時点までアクティブバンクであったバンクをインビジブルバンクとし、当該選択の時点までシャドーバンクであったバンクをビジブルバンクとする
メモリ管理方法。
【請求項２】
前記メモリ管理装置は、前記前処理が完了した１つのバンクに最大量のデータを書き込むために要する時間をａとし、１つのバンクに前記前処理を行うために要する時間をｂとするとき、インビジブルバンクの数が（ｂ／ａ＋１）以上となるように、前記所定数のビジブルバンクの選択を行う
請求項１に記載のメモリ管理方法。
【請求項３】
前記メモリは、前記前処理が行われることなくデータの書き換えが行われる程、データの書き込み速度が低下し、
前記メモリ管理装置は、前記複数のインビジブルバンクの各々に関し、前記前処理に先んじて当該インビジブルバンクのデータの書き込み速度を特定し、当該特定した書き込み速度が所定の閾値より速い場合、当該インビジブルバンクに関する前記前処理を行わない
請求項１または２に記載のメモリ管理方法。
【請求項４】
前記前処理は、前記アクティブバンクに記憶されているデータを前記シャドーバンクへコピーする処理を含む
請求項１乃至３のいずれか１項に記載のメモリ管理方法。
【請求項５】
前記メモリ管理装置は、前記シャドーバンクにデータを書き込むために要する第１の時間と、前記前処理に要する第２の時間とを推定し、前記第１の時間と前記第２の時間が所定の条件を満たす場合、通知装置に通知を指示する
請求項１乃至４のいずれか１項に記載のメモリ管理方法。
【請求項６】
データの書き込みに先んじて前処理を行うことによりデータの書き込み速度を速めることができるメモリを管理するメモリ管理装置が備えるプロセッサに、
前記メモリを構成する所定サイズの複数のバンクのうちの所定数の複数のバンクをビジブルバンクとして選択するとともに、前記複数のバンクのうちビジブルバンクとして選択されていない複数のバンクをインビジブルバンクとする処理と、
前記複数のインビジブルバンクの各々に前記前処理を行う処理と、
前記複数のビジブルバンクの中から１つのバンクをアクティブバンクとして選択するとともに、前記複数のインビジブルバンクのうち前記前処理が完了しているインビジブルバンクの中から１つのバンクを前記アクティブバンクと論理アドレス空間を共有するシャドーバンクとして選択する処理と、
データの書き込み要求に応じて前記シャドーバンクにデータを書き込む処理と、
新たなアクティブバンクの選択に伴い、当該選択の時点までアクティブバンクであったバンクをインビジブルバンクとし、当該選択の時点までシャドーバンクであったバンクをビジブルバンクとする処理と
を実行させるためのプログラム。
【請求項７】
データの書き込みに先んじて前処理を行うことによりデータの書き込み速度を速めることができるメモリを管理するメモリ管理装置であって、
前記メモリを構成する所定サイズの複数のバンクのうちの所定数の複数のバンクをビジブルバンクとして選択するとともに、前記複数のバンクのうちビジブルバンクとして選択されていない複数のバンクをインビジブルバンクとする選択部と、
前記複数のインビジブルバンクの各々に前記前処理を行う前処理部と、
を備え、
前記選択部は、前記複数のビジブルバンクの中から１つのバンクをアクティブバンクとして選択するとともに、前記複数のインビジブルバンクのうち前記前処理が完了しているインビジブルバンクの中から１つのバンクを前記アクティブバンクと論理アドレス空間を共有するシャドーバンクとして選択し、
データの書き込み要求に応じて前記シャドーバンクにデータを書き込む書込部を備え、
前記選択部は、新たなアクティブバンクの選択に伴い、当該選択の時点までアクティブバンクであったバンクをインビジブルバンクとし、当該選択の時点までシャドーバンクであったバンクをビジブルバンクとする
メモリ管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリのパフォーマンスを向上するための技術に関する。
【背景技術】
【０００２】
メモリに対するデータの書き込み速度を向上するために、様々な仕組みが提案されている。例えば特許文献１には、ｎ個のページを含む２組のリングバッファのページを各々対応付けて、一方のリングバッファのページにログ情報を記録する間に、他方のリングバッファの対応するページに記録されているログ情報を消去しておくことで、ログ情報の記録時に古いログ情報の消去処理を要することなく速やかにログ情報の書き込みを可能とする仕組みが提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−００３６０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
メモリに対するデータの書き込み速度が常時、所定の速度以上に保たれなければならないケースがある。例えば、ビデオカメラで撮影される動画を記録する場合、メモリに対するデータの書き込み速度が動画データの入力される速度を下回ると、その間の動画データの一部がメモリに書き込まれず、データの欠落が生じる。
【０００５】
ある種のメモリは、メモリの使用状況に応じてデータの書き込み速度が変化する。例えば、フラッシュメモリは、既にデータが書き込まれている領域を新たなデータで書き替えるために要する時間が、何もデータが書き込まれていない領域に新たなデータを書き込むために要する時間より長い。従って、同じビットレートでデータを書き込んでいく場合であっても、何もデータが書き込まれていないメモリにデータを書き込んでいく場合にはデータの欠落が生じず、何らかのデータが書き込まれているメモリにデータを書き込んでいく場合にはデータの欠落が生じてしまう、という不都合が起こりうる。
【０００６】
上記の事情に鑑み、本発明は、使用状況によってデータの書き込み速度が変化するメモリに対し所定のビットレートでデータを書き込む際のデータの欠落を防止するための手段の提供を目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決するために、本発明は、データの書き込みに先んじて前処理を行うことによりデータの書き込み速度を速めることができるメモリを管理するメモリ管理装置が、前記メモリを構成する所定サイズの複数のバンクのうちの所定数の複数のバンクをビジブルバンクとして選択するとともに、前記複数のバンクのうちビジブルバンクとして選択されていない複数のバンクをインビジブルバンクとし、前記複数のインビジブルバンクの各々に前記前処理を行い、前記複数のビジブルバンクの中から１つのバンクをアクティブバンクとして選択するとともに、前記複数のインビジブルバンクのうち前記前処理が完了しているインビジブルバンクの中から１つのバンクを前記アクティブバンクと論理アドレス空間を共有するシャドーバンクとして選択し、データの書き込み要求に応じて前記シャドーバンクにデータを書き込み、新たなアクティブバンクの選択に伴い、当該選択の時点までアクティブバンクであったバンクをインビジブルバンクとし、当該選択の時点までシャドーバンクであったバンクをビジブルバンクとするメモリ管理方法を第１の実施態様として提案する。
【０００８】
また、本発明は、上記の第１の実施態様において、前記メモリ管理装置は、前記前処理が完了した１つのバンクに最大量のデータを書き込むために要する時間をａとし、１つのバンクに前記前処理を行うために要する時間をｂとするとき、インビジブルバンクの数が（ｂ／ａ＋１）以上となるように、前記所定数のビジブルバンクの選択を行う、という構成を第２の実施態様として提案する。
【０００９】
また、本発明は、上記の第１または第２の実施態様において、前記メモリは、前記前処理が行われることなくデータの書き換えが行われる程、データの書き込み速度が低下し、前記メモリ管理装置は、前記複数のインビジブルバンクの各々に関し、前記前処理に先んじて当該インビジブルバンクのデータの書き込み速度を特定し、当該特定した書き込み速度が所定の閾値より速い場合、当該インビジブルバンクに関する前記前処理を行わない、という構成を第３の実施態様として提案する。
【００１０】
また、本発明は、上記の第１乃至第３のいずれかの実施態様において、前記前処理は、前記アクティブバンクに記憶されているデータを前記シャドーバンクへコピーする処理を含む、という構成を第４の実施態様として提案する
【００１１】
また、本発明は、上記の第１乃至第４のいずれかの実施態様において、前記メモリ管理装置は、前記シャドーバンクにデータを書き込むために要する第１の時間と、前記前処理に要する第２の時間とを推定し、前記第１の時間と前記第２の時間が所定の条件を満たす場合、通知装置に通知を指示する、という構成を第５の実施態様として提案する。
【００１２】
また、本発明は、データの書き込みに先んじて前処理を行うことによりデータの書き込み速度を速めることができるメモリを管理するメモリ管理装置が備えるプロセッサに、前記メモリを構成する所定サイズの複数のバンクのうちの所定数の複数のバンクをビジブルバンクとして選択するとともに、前記複数のバンクのうちビジブルバンクとして選択されていない複数のバンクをインビジブルバンクとする処理と、前記複数のインビジブルバンクの各々に前記前処理を行う処理と、前記複数のビジブルバンクの中から１つのバンクをアクティブバンクとして選択するとともに、前記複数のインビジブルバンクのうち前記前処理が完了しているインビジブルバンクの中から１つのバンクを前記アクティブバンクと論理アドレス空間を共有するシャドーバンクとして選択する処理と、データの書き込み要求に応じて前記シャドーバンクにデータを書き込む処理と、新たなアクティブバンクの選択に伴い、当該選択の時点までアクティブバンクであったバンクをインビジブルバンクとし、当該選択の時点までシャドーバンクであったバンクをビジブルバンクとする処理とを実行させるためのプログラムを第６の実施態様として提案する。
【００１３】
また、本発明は、データの書き込みに先んじて前処理を行うことによりデータの書き込み速度を速めることができるメモリを管理するメモリ管理装置であって、前記メモリを構成する所定サイズの複数のバンクのうちの所定数の複数のバンクをビジブルバンクとして選択するとともに、前記複数のバンクのうちビジブルバンクとして選択されていない複数のバンクをインビジブルバンクとする選択部と、前記複数のインビジブルバンクの各々に前記前処理を行う前処理部とを備え、前記選択部は、前記複数のビジブルバンクの中から１つのバンクをアクティブバンクとして選択するとともに、前記複数のインビジブルバンクのうち前記前処理が完了しているインビジブルバンクの中から１つのバンクを前記アクティブバンクと論理アドレス空間を共有するシャドーバンクとして選択し、データの書き込み要求に応じて前記シャドーバンクにデータを書き込む書込部を備え、前記選択部は、新たなアクティブバンクの選択に伴い、当該選択の時点までアクティブバンクであったバンクをインビジブルバンクとし、当該選択の時点までシャドーバンクであったバンクをビジブルバンクとするメモリ管理装置を第７の実施態様として提案する。
【発明の効果】
【００１４】
本発明によれば、データの書き込み要求に応じて、前処理が完了しているメモリ領域（シャドーバンク）にデータの書き込みが行われるため、データの書き込み速度が所定の速度を下回らないように維持される。その結果、所定のビットレートのデータの書き込みにおいて、データの欠落が生じない。その際、シャドーバンクと対をなすアクティブバンクからのデータの読み出しが行われても、シャドーバンクに対するデータの書き込み速度は影響を受けない。アクティブバンクとシャドーバンクは論理アドレス空間を共有しているので、データの読み書きの要求元からはアクティブバンクとシャドーバンクは同じメモリ領域として認識される。従って、データの書き込みが行われているメモリ領域に書き込まれているデータの読み出しの要求が生じた場合であっても、データの読み出し速度が犠牲となることなく、データの書き込み速度が所定の速度以上に維持される。
【図面の簡単な説明】
【００１５】
【図１】一実施形態にかかるデータ記憶システムの構成を示した図である。
【図２】一実施形態にかかるメモリ管理装置の機能構成を示した図である。
【図３Ａ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｂ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｃ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｄ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｅ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｆ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｇ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｈ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｉ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｊ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｋ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｌ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｍ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｎ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｏ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｐ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図３Ｑ】一実施形態にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図４】一実施形態にかかるデータ記憶装置に記憶されているデータの状態を例示した図である。
【図５】一変形例におけるメモリ管理装置の構成を示した図である。
【図６Ａ】一変形例にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図６Ｂ】一変形例にかかるメモリ管理装置によりバンク間の切り替えが行われる様子を示した図である。
【図７】一変形例におけるメモリ管理装置の構成を示した図である。
【発明を実施するための形態】
【００１６】
［実施形態］
以下に本発明の一実施形態にかかるデータ記憶システム１を説明する。図１は、データ記憶システム１の構成を示した図である。データ記憶システム１は、データ処理装置１１と、データ処理装置１１の要求に応じてデータの読み書きを行うデータ記憶装置１２を備える。
【００１７】
データ処理装置１１は、例えば汎用のコンピュータであり、プログラムやユーザデータ等のデータを記憶するメモリ１１１と、メモリ１１１に記憶されているプログラムに従いデータ処理を行うプロセッサ１１２と、データ記憶装置１２との間でデータの受け渡しを行うインタフェース１１３を備える。なお、データ処理装置１１は汎用のコンピュータに限定されず、データ記憶装置１２に対しデータの読み書きを要求する装置であればいずれの種別の装置であってもよい。例えば、ビデオカメラのような専ら特定のデータ処理を行うように設計された専用機であってもよい。
【００１８】
データ記憶装置１２は、データ処理装置１１との間でデータの受け渡しを行うインタフェース１２１と、データ記憶装置１２から受け取ったデータを記憶するｉ個のメモリモジュール１２２−１〜１２２−ｉ（ｉは任意に自然数）（以下、メモリモジュール１２２−１〜１２２−ｉを総称して「メモリモジュール１２２」という）と、メモリモジュール１２２によるデータの記憶を管理するためのプログラムを記憶するメモリ１２３と、メモリ１２３に記憶されているプログラムに従いメモリモジュール１２２によるデータの記憶を管理するための処理を行うプロセッサ１２４を備える。
【００１９】
メモリモジュール１２２の各々は、メモリチップ１２２１と、メモリチップ１２２１におけるデータの読み書きを制御するメモリコントローラ１２２２を備える。メモリチップ１２２１は１つのメモリチップで構成されても、複数のメモリチップの集合体として構成されてもよい。メモリチップ１２２１は、例えばＮＡＮＤ型フラッシュメモリであり、メモリコントローラ１２２２はウェアレベリング、ガーベッジコレクション、エラー訂正等の既知の処理を行いつつ、メモリチップ１２２１に対するデータの読み書きを行う。
【００２０】
以下の説明において、メモリチップ１２２１はＮＡＮＤ型フラッシュメモリであるものとするが、メモリチップ１２２１は過去にデータの書き込みが行われているメモリ領域に対し新たなデータの書き込みが行われる際に、当該新たなデータの書き込みに先んじて、当該メモリ領域のデータの消去等の前処理を行うことにより、当該新たなデータの書き込み速度を速めることができるメモリであれば、いずれの種別のメモリであってもよい。
【００２１】
ＮＡＮＤ型フラッシュメモリは、データの書き換えが繰り返されるに伴い、新たなデータの書き込み速度が低下することが知られている。これは、消去可能なデータが記憶されているページ（本願においてページとは、メモリにおけるデータの書き込み単位をいう）に対しデータの書き込みが行われる際、当該ページを含むブロック（本願においてブロックとは、メモリにおけるデータの消去単位をいう）のデータをデータが記憶されていない未使用ブロックにコピーする、という処理を要するためである。従って、データの書き込み要求に先んじて、複数のブロックに散在するデータを１つのブロックに集めた後、全てのデータが消去可能となったブロックのデータを消去する、という処理（ガーベッジコレクション）を前処理として行っておくことで、新たなデータの書き込み要求が生じた際、当該要求に応じたデータの書き込み速度を速めることができる。
【００２２】
しかしながら、ガーベッジコレクションを行っても、メモリに何らかのデータが記憶されていると、新たなデータの書き込みにおいて、書き込み先のページを選択する処理等が伴うため、未使用のメモリにデータを書き込む場合と比べ、データの書き込み速度は遅くなる。これに対し、例えば１つのメモリコントローラにより管理されるメモリチップの全メモリ領域において、記憶されているデータを消去し、メモリチップを未使用の状態に戻す処理（サニタイズ）を前処理として行うことで、データ書き込み速度を最大化することができる。
【００２３】
データ記憶装置１２が備えるプロセッサ１２４は、メモリ１２３に記憶されているプログラムに従いメモリモジュール１２２のメモリコントローラ１２２２に望ましいタイミングでサニタイズの指示を与え、メモリコントローラ１２２２がプロセッサ１２４からの指示に従いメモリチップ１２２１に対するサニタイズを前処理として行うことにより、データ記憶装置１２がデータ処理装置１１から新たなデータの書き込み要求を受け取った場合、当該書き込み要求に応じたデータの書き込みが常時、最大速度で行われる。
【００２４】
図２は、プロセッサ１２４とプロセッサ１２４からの指示に従い前処理を行うメモリコントローラ１２２２により実現されるメモリ管理装置１２０の機能構成を示した図である。すなわち、メモリ１２３に記憶されているプログラムに従いプロセッサ１２４がメモリコントローラ１２２２の処理を管理することにより、プロセッサ１２４およびメモリコントローラ１２２２は、図２に示す機能構成を備えるメモリ管理装置１２０として機能する。メモリ管理装置１２０は、メモリモジュール１２２が備えるメモリチップ１２２１を所定サイズに区分して得られる複数のバンクの中からデータの書き込み先のバンクの選択等を行う選択部１２０１と、選択部１２０１により前処理の対象として選択されたバンクに対し前処理（本実施形態においてはサニタイズ）を行う前処理部１２０２と、データ処理装置１１からのデータの書き込み要求に応じて選択部１２０１によりデータの書き込み先として選択されたバンクにデータを書き込む書込部１２０３を備える。
【００２５】
続いて、メモリ管理装置１２０が行う処理を説明する。図３Ａ〜図３Ｑ（以下、図３Ａ〜図３Ｑを総称して図３という）は、メモリ管理装置１２０により複数のバンクの役割がデータの書き込みの進行に伴い切り替えられていく様子を示した図である。まず、図３Ａは、データ記憶装置１２に何もデータが記憶されていない状態のメモリチップ１２２１の状態を示している。図３に示す例では、データ記憶装置１２が備えるメモリチップ１２２１が、バンクＡ〜Ｌの計１２のバンクに区分されている。これらのバンクのサイズは全て同じである。
【００２６】
以下の説明において、データ記憶装置１２が１２個のメモリモジュール１２２、すなわち、メモリモジュール１２２−１〜１２２−１２を備え、メモリモジュール１２２−１が備えるメモリチップ１２２１をバンクＡ、メモリモジュール１２２−２が備えるメモリチップ１２２１をバンクＢ、・・・のように、各々のメモリモジュール１２２が備えるメモリチップ１２２１をバンクの単位とする。ただし、メモリコントローラ１２２２がメモリチップ１２２１よりも小さいメモリ領域の単位で前処理を行うことができる場合、１つのメモリチップ１２２１を複数に分割したメモリ領域の各々を１つのバンクとして扱う構成が採用されてもよい。また、複数のメモリチップ１２２１を１つのバンクとして扱う構成が採用されてもよい。
【００２７】
データ記憶装置１２が未使用の状態において、メモリ管理装置１２０の選択部１２０１は、まず、１２個のバンクのうち、任意に８個のバンクをビジブルバンクとして選択する。ビジブルバンクとして選択されなかったバンクはインビジブルバンクとなる。図３Ａにおいて上段に示されるバンクがビジブルバンクであり、下段に示されるバンクがインビジブルバンクである。
【００２８】
１つのバンクの全領域にデータを書き込むために要する時間をａとし、１つのバンクに前処理を行うために要する時間をｂとするとき、選択部１２０１は、インビジブルバンクの数が（ｂ／ａ＋１）以上の数となるようにビジブルバンク（２以上）の選択を行う。以下、例として、１つのバンクの全領域にデータを書き込むために要する時間ａを１０分とし、１つのバンクに前処理を行うために要する時間ｂを３０分とする。この例の場合、（ｂ／ａ＋１）＝４となり、選択部１２０１はインビジブルバンクの数が４以上となるように、ビジブルバンクとして８以下のバンクを選択する。従って、以下の説明において、選択部１２０１はビジブルバンクを８個選択するものとするが、選択部１２０１により選択されるビジブルバンクの数は１〜８個のいずれであってもよい。ただし、データ記憶装置１２に記憶可能なデータ量の観点からは、ビジブルバンクの数は多い方が望ましい。
【００２９】
ビジブルバンクは、データ処理装置１１から認識されるバンクである。８個のビジブルバンクのメモリ領域は、例えば連続する１つの論理アドレス空間に配置され、データ記憶装置１２はデータ処理装置１１からのデータの書き込み要求に応じてデータの書き込みを行った場合、当該データの書き込み先の論理アドレスおよびデータサイズをデータ処理装置１１に通知する。なお、データ記憶装置１２は論理アドレスと物理アドレスの変換を行い、データ処理装置１１には論理アドレスが通知される。データ処理装置１１はデータ記憶装置１２から通知された論理アドレスとデータサイズを指定することで、データ記憶装置１２に記憶されているデータの読み出し要求を行うことができる。
【００３０】
一方、インビジブルバンクは、データ処理装置１１から認識されないバンクである。図３Ａの状態（初期状態）において、４つのインビジブルバンクは全て、前処理が完了している状態である。すなわち、いずれのインビジブルバンクもサニタイズされ、データが全て消去されている。図３において、インビジブルバンク（以下に述べるシャドーバンクを除く）の各々の上の（    ）内の分数は、前処理の進行度を示す。例えば図３Ａにおいて、バンクＩ〜バンクＬの各々の上に示される（３０／３０）は、これらのバンクの前処理が、所要時間３０分に対し、３０分の分だけ終了している（すなわち、完了している）ことを意味する。
【００３１】
選択部１２０１は、８つのビジブルバンクのうち１つをアクティブバンクとして選択する。以下、選択部１２０１は８つのビジブルバンクの中から、バンクの記号（Ａ〜Ｌ）の順番に従ってアクティブバンクを順次選択するものとする。この場合、バンクＡがアクティブバンクとして選択される。なお、選択部１２０１がアクティブバンクを選択する規則はこれに限られず、例えばビジブルバンクの中からランダムに１つがアクティブバンクとして選択されてもよい。アクティブバンクは、データ記憶装置１２がデータ処理装置１１からデータの書き込み要求を受け取った場合、当該要求に応じてデータの書き込みを行う論理アドレス空間の割り当てられたバンクである。
【００３２】
続いて、選択部１２０１は、４つのインビジブルバンクのうち前処理が完了しているインビジブルバンクの中から１つをシャドーバンクとして選択する。図３Ａの状態においてはバンクＩ〜Ｌの全てに関し前処理が完了している。このように複数のインビジブルバンクに関し前処理が完了している場合、選択部１２０１は、バンクの記号（Ａ〜Ｌ）の順番に従ってシャドーバンクを選択するものとする。この場合、バンクＩがシャドーバンクとして選択される。なお、選択部１２０１がシャドーバンクを選択する規則はこれに限られず、例えばインビジブルバンクの中からランダムに１つがシャドーバンクとして選択されてもよい。
【００３３】
シャドーバンクは、アクティブバンクと対をなし、アクティブバンクと論理アドレス空間を共有するバンクである。すなわち、アクティブバンクとシャドーバンクは、メモリ管理装置１２０において異なる物理アドレスにより区別されるメモリ領域であるが、同じ論理アドレスが割り当てられたメモリ領域であり、データ処理装置１１からデータ記憶装置１２に対し通知される論理アドレスにおいては、アクティブバンクとシャドーバンクは区別されない。
【００３４】
メモリ管理装置１２０は、データ記憶装置１２からデータの書き込み要求を受け取った場合、当該要求に応じたデータの書き込みをシャドーバンクに対し行う。データ記憶装置１２はデータ処理装置１１に対しデータの書き込み先の論理アドレスを通知するが、データ処理装置１１は通知されたアドレスからデータがアクティブバンク（ビジブルバンクの１つ）に書き込まれたのか、シャドーバンク（インビジブルバンクの１つ）に書き込まれたのかを感知しない。
【００３５】
図３Ｂは、選択部１２０１によるアクティブバンクとシャドーバンクの選択が完了した直後の状態を示している。図３Ｂ〜図３Ｑにおいて、太枠で示されるバンクがアクティブバンクであり、アクティブバンクの下に示されるバンクがシャドーバンクである。
【００３６】
図３Ｂの状態で、データ記憶装置１２はデータ処理装置１１からのデータの読み書きの要求に応じることができる。以下の説明において、データ処理装置１１がデータ記憶装置１２に対し、６０分に渡る動画データの書き込みを連続して要求してくる場合を例として、データ記憶装置１２において動画データが書き込まれる様子を説明する。
【００３７】
メモリ管理装置１２０は、動画データの書き込み要求に応じて、シャドーバンク（バンクＩ）に動画データを書き込んでゆく。図３Ｃは、動画データの書き込み開始から５分が経過した時点のデータ記憶装置１２の状態を示している。既述のように、動画データはシャドーバンクに書き込まれてゆく。図３Ｃ（図３Ｄ〜図３Ｑにおいても同様）において、シャドーバンク（バンクＩ）の斜線の付された部分は、動画データが書き込まれているメモリ領域を模式的に示している。実際には、メモリコントローラ１２２２によるウェアレベリング等が行われ、動画データが書き込まれる位置は物理アドレスの順序に従わなくてもよい。また、図３Ｃ（図３Ｄ〜図３Ｑにおいても同様）において、アクティブバンク（バンクＡ）の網掛けの付された部分は、シャドーバンクの動画データが書き込まれた領域に対応する領域（同じ論理アドレス空間）である。この網掛けの付された部分は、データ処理装置１１には動画データが新たに書き込まれた領域として認識される。
【００３８】
図３Ｃにおいて、アクティブバンク（バンクＡ）の斜線の付された部分は、シャドーバンク（バンクＩ）において動画データが書き込まれたメモリ領域と同じ論理アドレスで識別されるアクティブバンク（バンクＡ）メモリ領域を模式的に示している。アクティブバンクの斜線の付された部分には、実際には動画データの書き込みは行われていないが、データ処理装置１１からは、データ記憶装置１２からの通知により、斜線の付されたメモリ領域に動画データが記憶されていると認識される。
【００３９】
図３Ｄは、動画データの書き込み開始から１０分が経過した時点のデータ記憶装置１２の状態を示している。この時点で、バンクＩにはこれ以上、動画データを書き込むことができなくなる。そこで、選択部１２０１は、ビジブルバンクの中から新たなアクティブバンクを選択する。この場合、バンクＢが新たなアクティブバンクとなる。そして、選択部１２０１は、新たなアクティブバンクの選択に伴い、インビジブルバンクのうち前処理が完了しているものの中から新たなシャドーバックを選択する。この場合、バンクＪが新たなシャドーバンクとなる。すなわち、選択部１２０１はバンクＪにバンクＢと同じ論理アドレスのアドレス空間を割り当てる。
【００４０】
同時に、選択部１２０１は、それまでシャドーバンクであったバンクＩを対となるバンクＡと入れ替えてビジブルバンクとし、それまでアクティブバンクであったバンクＡをインビジブルバンクとする。すなわち、選択部１２０１はバンクＡに対する論理アドレスのアドレス空間の割り当てを解除する。前処理部１２０２は、新たにインビジブルバンクとなったバンクＡに対し前処理を開始する。図３Ｅは、選択部１２０１によるこれらのバンク間の切り替えが完了した状態を示している。
【００４１】
図３Ｅの状態で、新たなシャドーバンクであるバンクＪに対し動画データの書き込みが開始される。同時に、バンクＩに記憶されている動画データの読み出しや削除が許可される。動画データの書き込みはバンクＪに対し行われているため、バンクＩからデータの読み出しやバンクＩに記憶されているデータの削除が行われても、動画データの書き込み速度は影響を受けないためである。
【００４２】
メモリ管理装置１２０は、その後、上述した手順に従い、順次、バンク間の切り替えを行いつつ、インビジブルバンクに対する前処理を行う。図３Ｆは、動画データの書き込み開始から１５分が経過した時点のデータ記憶装置１２の状態、図３Ｇは、動画データの書き込み開始から２０分が経過しバンク間の切り替えが行われる前のデータ記憶装置１２の状態、図３Ｈは、動画データの書き込み開始から２０分が経過しバンク間の切り替えが行われた後のデータ記憶装置１２の状態を示している。
【００４３】
図３Ｉは、動画データの書き込み開始から２５分が経過した時点のデータ記憶装置１２の状態、図３Ｊは、動画データの書き込み開始から３０分が経過しバンク間の切り替えが行われる前のデータ記憶装置１２の状態、図３Ｋは、動画データの書き込み開始から３０分が経過しバンク間の切り替えが行われた後のデータ記憶装置１２の状態を示している。
【００４４】
図３Ｌは、動画データの書き込み開始から３５分が経過した時点のデータ記憶装置１２の状態、図３Ｍは、動画データの書き込み開始から４０分が経過しバンク間の切り替えが行われる前のデータ記憶装置１２の状態、図３Ｎは、動画データの書き込み開始から４０分が経過しバンク間の切り替えが行われた後のデータ記憶装置１２の状態を示している。
【００４５】
図３Ｍに示されるように、動画データの書き込み開始から４０分が経過した時点で、前処理部１２０２によるバンクＡに対する前処理が完了する。そして、図３Ｎに示されるように、選択部１２０１により、前処理の完了したバンクＡが新たなシャドーバンクとして選択される。
【００４６】
この例では、インビジブルバンク（シャドーバンクを含む）の数が４個であるため、バンク間の切り替えの時点において前処理の完了しているインビジブルバンクは１つしかなく、選択部１２０１はそのバンクを新たなシャドーバンクとして選択する。インビジブルバンク（シャドーバンクを含む）の数が５個以上である場合、バンク間の切り替えの時点において前処理の完了しているインビジブルバンクは２以上あるため、選択部１２０１はそれらのインビジブルバンクの中からバンクの記号（Ａ〜Ｌ）の順番に従ってシャドーバンクを選択する。ただし、既述のように、前処理の完了しているインビジブルバンクの中からシャドーバンクが選択される規則はこれに限られず、例えばランダムにシャドーバンクの選択が行われてもよい。
【００４７】
図３Ｏは、動画データの書き込み開始から４５分が経過した時点のデータ記憶装置１２の状態、図３Ｐは、動画データの書き込み開始から５０分が経過しバンク間の切り替えが行われる前のデータ記憶装置１２の状態、図３Ｑは、動画データの書き込み開始から５０分が経過しバンク間の切り替えが行われた後のデータ記憶装置１２の状態を示している。メモリ管理装置１２０は、その後も、上述した手順に従い、順次、バンク間の切り替えを行いつつ、インビジブルバンクに対する前処理を行う。
【００４８】
図４は、データ処理装置１１からの動画データの書き込み要求が複数回に渡り行われ、複数の動画データがデータ記憶装置１２に記憶されている状態を例示している。図４の例では、バンクＬからバンクＢに動画データＤ１が記憶され、バンクＢからバンクＤに動画データＤ２が記憶され、バンクＤからバンクＥに動画データＤ３が記憶されている。そして、バンクＥからバンクＬに動画データＤ４が記憶され、現在、バンクＬと対をなすシャドーバンクであるバンクＨに対する動画データＤ４の書き込みが進行している。
【００４９】
図４の状態において、書き込み中でない動画データＤ１、Ｄ２、Ｄ３の読み出しや削除を行うことが許可される。従って、例えばデータ処理装置１１のユーザは、動画データＤ４の記録中に動画データＤ１、Ｄ２、Ｄ３を他のデータ処理装置にコピーした後、それらのデータを削除する、という操作が可能となる。例えば、動画データＤ１が読み出されたり削除されたりする場合、バンクＬに対するデータのアクセスが発生するが、データの書き込みはバンクＨに対し行われているため、データの書き込み速度が影響を受けることはない。
【００５０】
また、図４の状態において、記録中の動画データＤ４のうち、データが書き込まれているバンクＬ以外のバンク（バンクＥからバンクＧ）に記憶されている部分の読み出しも許可される。従って、例えばデータ処理装置１１のユーザは、動画データＤ４の記録中に、動画データＤ４が示す動画を先頭や途中から再生する、といった操作も可能である。この場合、データのアクセスが発生するのはバンクＥからバンクＧであり、バンクＨに対し行われているデータの書き込み速度が影響を受けることはない。
【００５１】
上述したように、データ記憶システム１において、書き込み要求に応じたデータの書き込みは常に前処理の完了したシャドーバンクに対し行われ、データの書き込みが行われている間、シャドーバンクに記憶されているデータの読み込みや削除等が行われることはない。従って、所定値以上のデータの書き込み速度が保証され、所定のビットレート以下で入力されるデータの欠落が生じることはない。
【００５２】
［変形例］
上述した実施形態は本発明の技術的思想の範囲内において様々に変形可能である。以下にそれらの変形の例を示す。なお、上述した実施形態および以下に示す変形例のうちの２以上が適宜組み合わせられてもよい。
【００５３】
（１）上述した実施形態において、データ記憶装置１２の前処理部１２０２は、インビジブルバンクとなったバンクに対し常に前処理を行う。前処理を行わなくても所定速度以上の速度でデータの書き込みが可能なインビジブルバンクに関しては、前処理部１２０２が前処理を行わない構成が採用されてもよい。以下、この変形例を第１変形例という。
【００５４】
図５は、第１変形例におけるデータ記憶装置１２のメモリ管理装置１２０の構成を示した図である。第１変形例において、メモリ管理装置１２０は選択部１２０１、前処理部１２０２、および書込部１２０３に加え、速度特定部１２０４を備える。速度特定部１２０４は、選択部１２０１により新たにインビジブルバンクとして選択されたバンクに関し、前処理部１２０２による前処理に先んじて、データの書き込み速度を特定する。
【００５５】
速度特定部１２０４がインビジブルバンクに対するデータの書き込み速度を特定する方法としては、例えば、ダミーデータをインビジブルバンクに書き込み、その際の書き込み速度を測定する方法や、インビジブルバンクに対し最後に前処理が行われた後にデータが書き換えられた回数を記録しておき、その回数に基づき所定の算定式等に従い書き込み速度を推定する方法など、いずれが採用されてもよい。
【００５６】
前処理部１２０２は、選択部１２０１により新たにインビジブルバンクとして選択されたバンクに関し、速度特定部１２０４により特定されたデータの書き込み速度が所定の閾値より速い場合、そのインビジブルバンクに関しては前処理を行わず、速度特定部１２０４により特定されたデータの書き込み速度が所定の閾値以下である場合に限り、前処理を行う。
【００５７】
メモリチップ１２２１が例えばＮＡＮＤ型フラッシュメモリである場合、メモリチップ１２２１に対するデータの書き換えが繰り返されるに伴い、メモリチップ１２２１に対するデータの書き込み速度が低下する。メモリチップ１２２１に対しサニタイズが行われると、メモリチップ１２２１に対するデータの書き込み速度は速くなる。ただし、メモリチップ１２２１のデータ書き換え回数には上限があり、サニタイズはデータ書き換え回数を増やすので、メモリチップ１２２１の寿命の観点からはサニタイズを行う回数は必要最低限であることが望ましい。また、サニタイズを行うためにメモリモジュール１２２は電力を消費する。従って、電力消費量の観点からもサニタイズを行う回数は必要最低限であることが望ましい。サニタイズに限らず、ガーベッジコレクション等の他の種別の前処理に関しても、多くの場合、同様の理由で実行回数は必要最低限であることが望ましい。
【００５８】
第１変形例によれば、データの書き込み速度の保証の観点から、インビジブルバンクに対する前処理が必要な場合に限り前処理が行われるため、メモリの寿命や電力消費量等の観点から望ましい。
【００５９】
（２）上述した実施形態においては、アクティブバンクに記憶されているデータは当該アクティブバンクと対をなすシャドーバンクに対するデータの書き込みが完了し、バンク間の切り替えが行われる際、破棄される。すなわち、アクティブバンクに記憶されているデータは、バンク間の切り替えに先んじて他のバンクにコピーされることはなく、アクティブバンクがバンク間の切り替えによってインビジブルバンクとなると、当該バンクに対する論理アドレス空間の割り当てが解除されるため、当該バンクに記憶されていたデータがその後、利用されることはない。従って、バンク単位で新たなデータにより古いデータが全て上書きされることになる。
【００６０】
上述した実施形態におけるデータ記憶システム１による場合、新たなバンクに対する新しいデータの書き込みに先んじて、同じバンクに記憶されている古いデータの削除が行われる必要がある。これに代えて、バンクに既に記憶されているデータを保持しつつ、新たなデータを同じバンクに書き込み可能な構成が採用されてもよい。以下、この変形例を第２変形例という。
【００６１】
図６Ａおよび図６Ｂは、第２変形例においてデータ記憶装置１２にデータが書き込まれていく様子を例示した図である。第２変形例において、前処理部１２０２は、インビジブルバンクに対するサニタイズと、将来、アクティブバンクとなる予定のビジブルバンクと対をなすシャドーバンクに対するアクティブバンクのデータのコピーとを前処理として行う。なお、アクティブバンクからシャドーバンクへのデータのコピーにおいて、ガーベッジコレクションが併せて行われる。
【００６２】
図６Ａの状態において、バンクＢがアクティブバンクである。アクティブバンクであるバンクＢに加え、次にアクティブバンクとなる予定のバンクＣと、さらにその次にアクティブバンクとなる予定のバンクＤにも、既にシャドーバンクが選択されている。例えば、バンクＤと対をなすシャドーバンク（バンクＪ）は、バンクＢが新たなアクティブバンクとして選択されたタイミングで、サニタイズが完了しているインビジブルバンクの中から選択されたものである。
【００６３】
図６Ａの状態において、アクティブバンクであるバンクＢと対をなすシャドーバンクのバンクＨに新たなデータの書き込みが行われる間、前処理部１２０２は、サニタイズが完了していないインビジブルバンクであるバンクＫとバンクＡに対するサニタイズを行う。それと同時に、前処理部１２０２は、バンクＣに記憶されているデータをバンクＩに、バンクＤに記憶されているデータをバンクＪに、各々コピーする。
【００６４】
その後、バンクＨに対するデータの書き込みが完了すると、選択部１２０１はアクティブバンクをバンクＢからバンクＣに切り替え、バンクＢをインビジブルバンクにするとともにバンクＨをバンクＢに替わるビジブルバンクとし、その時点でサニタイズが完了しているバンクＫをバンクＥと対をなすシャドーバンクとして選択する。なお、バンクＣからバンクＩへのデータのコピーは、これらのバンク間の切り替え前に完了している。図６Ｂは、これらのバンク間の切り替えが完了した状態を示している。
【００６５】
図６Ｂの状態において、アクティブバンクであるバンクＣと対をなすシャドーバンクのバンクＩに新たなデータの書き込みが行われる間、前処理部１２０２は、サニタイズが完了していないインビジブルバンクであるバンクＡとバンクＢに対するサニタイズを行う。それと同時に、前処理部１２０２は、バンクＤに記憶されているデータをバンクＪに、バンクＥに記憶されているデータをバンクＫに、各々コピーする。
【００６６】
上記の手順に従い、選択部１２０１によるバンクの選択と前処理部１２０２による前処理が行われる結果、第２変形例においては、新たなデータの書き込み先のバンクに過去に記憶されたデータがバンク間の切り替えに伴い破棄されることがない。
【００６７】
第２変形例においては、上記のように、新たなデータがバンクに書き込まれる際に、既にそのバンクの一部領域には過去に記憶されているデータが記憶されている。従って、データ記憶装置１２に記憶されているデータの量が増加するに伴い、アクティブバンクと対をなすシャドーバンクへ新たに書き込み可能なデータ量は減少し、アクティブバンクの切り替えの間隔が短くなる。また、データ記憶装置１２に記憶されているデータの量が増加するに伴い、ビジブルバンクからシャドーバンクへのデータのコピーに要する時間が長くなる。
【００６８】
従って、データ記憶装置１２に記憶されているデータの量がある程度の量に達すると、前処理部１２０２によるサニタイズやデータのコピーがバンク間の切り替えのタイミングまでに間に合わない状況が生じる。そこで、第２変形例において、データ記憶装置１２は、前処理部１２０２による前処理が間に合わない状況に陥る前に、データ処理装置１１に対しユーザに対する通知を指示する。
【００６９】
図７は、第２変形例におけるデータ記憶装置１２のメモリ管理装置１２０の構成を示した図である。第２変形例において、メモリ管理装置１２０は選択部１２０１、前処理部１２０２、および書込部１２０３に加え、所要時間推定部１２０５と、通知指示部１２０６を備える。
【００７０】
所要時間推定部１２０５は、アクティブバンクと対をなすシャドーバンクに対するデータの書き込みに要する時間と、前処理部１２０２がインビジブルバンクに対し前処理を行うために要する時間を推定する。所要時間推定部１２０５がこれらの時間を推定する方法としては、例えば、過去にそれらのバンクに対しデータの書き込みや前処理を行った際の所要時間の時系列変化を記録しておき、その時系列変化に基づき将来の所要時間を推定する方法や、それらのバンクに記憶されているデータの量に基づき推定する方法など、いずれが採用されてもよい。
【００７１】
通知指示部１２０６は、所要時間推定部１２０５により推定された時間が、バンク間の切り替えまでに前処理が完了しない状況を示す所定の条件を満たす場合、データ処理装置１１に対し、ユーザに対する通知を指示する指示データを出力する。データ処理装置１１は、この指示データに従い、ユーザに対し、例えば不要なデータの削除を促すとともに、データの削除が行われなければデータの書き込み速度が保証されずデータの欠落が生じる可能性がある旨の警告メッセージを表示する。
【００７２】
通知指示部１２０６は、例えば、アクティブバンクと対をなすシャドーバンクに対するデータの書き込みに要する時間（所要時間推定部１２０５による推定値）をａとし、１つのインビジブルバンクにサニタイズを行うために要する時間をｂとし、インビジブルバンクの数をｘとするとき、ｂ／（ｘ−１）＞ａ−αとなれば、サニタイズに要する時間が確保できなくなる危険性が高い、と判定して指示データの出力を行う。ただし、αはサニタイズに要する時間が確保できなくなる前に通知を行うためのマージン値である。
【００７３】
また、通知指示部１２０６は、例えば、アクティブバンクと対をなすシャドーバンクに対するデータの書き込みに要する時間（所要時間推定部１２０５による推定値）をａとし、アクティブバンクと対をなすシャドーバンクに対するデータの書き込み中にビジブルバンクからデータをコピーするシャドーバンクの数をｙとし、これらのシャドーバンクの各々に対するデータのコピーに要する時間（所要時間推定部１２０５による推定値）をｃとするとき、ｃ／ｙ＞ａ−βとなれば、データのコピーに要する時間が確保できなくなる危険性が高い、と判定して指示データの出力を行う。ただし、βはデータのコピーに要する時間が確保できなくなる前に通知を行うためのマージン値である。
【００７４】
第２変形例によれば、新しいデータの書き込みに伴い同じバンクに記憶されている古いデータを削除しなくてもよい。ただし、既に記憶されているデータの量の増加に伴い、新たなデータの書き込み速度が保証されなくなる場合がある。そのような状況が生じる前にユーザに対し通知が行われるため、ユーザは通知に応じて不要なデータを削除する等の対応を行うことで、必要なデータの書き込み速度を確保することができる。
【００７５】
上述した第２変形例においては、近々アクティブバンクになるビジブルバンクに記憶されているデータは、それらのビジブルバンクと対をなすシャドーバンク（サニタイズを終えたインビジブルバンク）にコピーされる。これに代えて、もしくは加えて、当座はアクティブバンクにならない他のビジブルバンクに対しデータのコピーが行われてもよい。例えば、データのコピー先のバンクを複数に分散することで、データのコピーに要する時間を短縮することができる。
【００７６】
（３）上述した実施形態および変形例において示したバンクの数や判定の条件等はあくまで例示であって、他の数や判定の条件等が採用されてもよい。
【００７７】
（４）上述した実施形態および第１変形例においては前処理としてサニタイズが行われ、第２変形例においてはサニタイズとデータのコピーが行われるものとした。前処理部１２０２により行われる前処理はこれらに限られず、データの書き込みに先んじてメモリに対し行うことで当該メモリに対するデータの書き込み速度を向上することができる処理であれば、例えばガーベッジコレクション等の他の種別の処理が前処理部１２０２により前処理として行われてもよい。また、前処理の種別はメモリチップ１２２１の種別によっても異なり得る。
【００７８】
（５）上述した実施形態においては、データ記憶装置１２がメモリ管理装置１２０の全ての構成部を備える。これに代えて、データ記憶装置１２に接続される外部の装置、例えばデータ処理装置１１がメモリ管理装置１２０の構成部の一部を備える構成が採用されてもよい。例えば、メモリ管理装置１２０が備える選択部１２０１をデータ処理装置１１が備える構成が採用されてもよい。この場合、データ処理装置１１はメモリ１１１に記憶されるプログラムに従い、データ記憶装置１２に対しバンク間の切り替えを指示することになる。
【００７９】
（６）上述した実施形態においては、データ記憶装置１２はメモリモジュール１２２の各々においてメモリチップ１２２１を制御するメモリコントローラ１２２２と、メモリ１２３に記憶されているプログラムに従い、複数のメモリモジュール１２２の各々のメモリコントローラ１２２２に対しバンク切り替え等の指示を行うプロセッサ１２４を備える。これに代えて、プロセッサ１２４がメモリモジュール１２２の役割を兼ねる構成が採用されてもよい。
【００８０】
（７）上述した実施形態においては、メモリ管理装置１２０はメモリ１２３に記憶されるプログラムに従うプロセッサ１２４の処理により実現される。これに代えて、例えば論理集積回路等の専用のハードウェアによりメモリ管理装置１２０が実現されてもよい。
【符号の説明】
【００８１】
１…データ記憶システム、１１…データ処理装置、１２…データ記憶装置、１１１…メモリ、１１２…プロセッサ、１１３…インタフェース、１２０…メモリ管理装置、１２１…インタフェース、１２２…メモリモジュール、１２３…メモリ、１２４…プロセッサ、１２０１…選択部、１２０２…前処理部、１２０３…書込部、１２０４…速度特定部、１２０５…所要時間推定部、１２０６…通知指示部、１２２１…メモリチップ、１２２２…メモリコントローラ
【図１】
2017138636.tif 000003
【図２】
2017138636.tif 000004
【図３Ａ】
2017138636.tif 000005
【図３Ｂ】
2017138636.tif 000006
【図３Ｃ】
2017138636.tif 000007
【図３Ｄ】
2017138636.tif 000008
【図３Ｅ】
2017138636.tif 000009
【図３Ｆ】
2017138636.tif 000010
【図３Ｇ】
2017138636.tif 000011
【図３Ｈ】
2017138636.tif 000012
【図３Ｉ】
2017138636.tif 000013
【図３Ｊ】
2017138636.tif 000014
【図３Ｋ】
2017138636.tif 000015
【図３Ｌ】
2017138636.tif 000016
【図３Ｍ】
2017138636.tif 000017
【図３Ｎ】
2017138636.tif 000018
【図３Ｏ】
2017138636.tif 000019
【図３Ｐ】
2017138636.tif 000020
【図３Ｑ】
2017138636.tif 000021
【図４】
2017138636.tif 000022
【図５】
2017138636.tif 000023
【図６Ａ】
2017138636.tif 000024
【図６Ｂ】
2017138636.tif 000025
【図７】
2017138636.tif 000026