JP5874525B2 - 制御装置、記憶装置、記憶制御方法 - Google Patents

制御装置、記憶装置、記憶制御方法 Download PDF

Info

Publication number
JP5874525B2
JP5874525B2 JP2012109090A JP2012109090A JP5874525B2 JP 5874525 B2 JP5874525 B2 JP 5874525B2 JP 2012109090 A JP2012109090 A JP 2012109090A JP 2012109090 A JP2012109090 A JP 2012109090A JP 5874525 B2 JP5874525 B2 JP 5874525B2
Authority
JP
Japan
Prior art keywords
physical
logical
written
data
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012109090A
Other languages
English (en)
Other versions
JP2013235531A5 (ja
JP2013235531A (ja
Inventor
伸吾 麻生
伸吾 麻生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2012109090A priority Critical patent/JP5874525B2/ja
Priority to US13/875,961 priority patent/US20130304972A1/en
Priority to CN2013101607888A priority patent/CN103389942A/zh
Publication of JP2013235531A publication Critical patent/JP2013235531A/ja
Publication of JP2013235531A5 publication Critical patent/JP2013235531A5/ja
Application granted granted Critical
Publication of JP5874525B2 publication Critical patent/JP5874525B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages

Description

本技術は、制御装置、記憶装置、記憶制御方法に関し、特に論理アドレス−物理アドレスの変換のための管理情報の処理に関する。
特開2009−70098号公報 特開2007−334852号公報 特開2007−193838号公報 特開2007−58840号公報
例えばNAND型フラッシュメモリなどの不揮発性メモリを用いた記憶装置が普及している。不揮発性メモリは、例えば各種電子機器、情報処理装置などで使用されるメモリカード、SSD(Solid State Drive)、eMMC(Embedded MultiMedia Card)などで利用されている。
上記特許文献1〜4にはフラッシュメモリを用いた記憶装置が開示されている。
不揮発性メモリでは、物理的な記憶領域のアドレスとして物理アドレスが使用される。これにより物理ブロック、物理ページ、物理セクタが設定されている。複数の物理セクタで物理ページが構成され、複数の物理ページで物理ブロックが構成される。
消去(イレーズ)は物理ブロック単位で行われ、書込(プログラム)及び読出(リード)は物理ページ単位で可能とされる。
ホスト機器側からのアドレス指定は、論理アドレスが用いられる。論理アドレスによる論理ブロック、論理ページが、上記の物理アドレスに対応づけられる。これによりアクセス要求時には論理アドレスが物理アドレスに変換されて、実際のフラッシュメモリへのアクセスが実行される。
このように、NAND型フラッシュメモリ等を記憶デバイスとして用いる記憶装置においては、ホスト機器から指示される論理アドレスと、その論理アドレスに対応したデータがフラッシュメモリ上のどの物理ブロックのどの物理ページにあるかを示す物理アドレスの変換を行う必要がある。
従って、この変換を行うための管理情報を構築しなければならない。
このような管理情報の構築を高速に行うことを可能とするため、物理ブロック内においては、論理アドレスが必ず連続となるようにデータの書き込みを行うように制限をする手法が提案されている。この手法によれば、管理情報の構築は、物理ブロック内の最終使用済み物理ページを見つけ出し、その物理ページに記録されたデータの論理アドレスを取得することで高速に行うことができる。
但し、この手法では物理ブロックに書き込むデータは常に論理アドレスが連続である必要があり、ホストデバイスが非連続な論理アドレスのデータを書き込もうとした場合や、既に書き込み済みの論理アドレスデータを更新するといった場合には、別の物理ブロックを確保し、該確保した物理ブロックにデータをコピーするいわゆるガベージコレクションが多発し、デバイス寿命、及び書き込み速度を著しく低下させてしまうという問題がある。
一方、物理ブロックに非連続な論理アドレスを持つデータを連続に書き込むことを許容するという手法もある。
この手法によれば、非連続な論理アドレスデータの書き込みが行われても上記のようなガベージコレクションの発生を回避できるが、物理ブロック内に論理アドレスが非連続なデータが連続するため、管理情報の構築に時間を要するものとなってしまう。具体的にこの場合における管理情報の構築は、対象とする物理ブロック内における全ての物理ページの論理アドレスを取得して行うものとされており、結果として管理情報の取得までに多くの時間を要し、この点において書き込み/読み出し速度の低下が生じてしまうものである。
本技術は上記のような事情に鑑み為されたものであり、物理ブロック内に非連続な論理アドレスを持つデータを連続に書き込むことを許容してガベージコレクションが多発する事態の回避を図ると共に、論理・物理アドレスの管理情報の取得を高速化して、書き込み/読み出し速度の向上が図られるようにすることを課題とする。
上記課題の解決のため、本技術では制御装置を以下のように構成することとした。
すなわち、本技術の制御装置は、消去単位である物理ブロックのサイズが書込最小単位である物理ページのサイズよりも大とされた第1の不揮発性メモリに対するデータの書込制御を行うと共に、該書込制御によってデータが書き込まれた書込対象物理ブロック内における物理ページアドレスと論理アドレスとの対応関係を表す論理・物理アドレス管理情報を生成し、該論理・物理アドレス管理情報が、上記第1の不揮発性メモリに対するデータ書き込みごとに、第2の不揮発性メモリに記憶されるように制御を行う制御部を備え、上記制御部は、上記書込対象物理ブロックについての直前のデータ書込時に上記第2の不揮発性メモリに記憶された上記論理・物理アドレス管理情報が保存されるように、上記論理・物理アドレス管理情報の追記制御を行うものである。
また本技術では記憶装置を以下のように構成することとした。
つまり、本技術の記憶装置は、消去単位である物理ブロックのサイズが書込最小単位である物理ページのサイズよりも大とされた第1の不揮発性メモリを備える。
また、第2の不揮発性メモリを備える。
また、上記第1の不揮発性メモリに対するデータの書込制御を行うと共に、該書込制御によってデータが書き込まれた書込対象物理ブロック内における物理ページアドレスと論理アドレスとの対応関係を表す論理・物理アドレス管理情報を生成し、該論理・物理アドレス管理情報が、上記第1の不揮発性メモリに対するデータ書き込みごとに、上記第2の不揮発性メモリに記憶されるように制御を行う制御部とを備え、上記制御部は、上記書込対象物理ブロックについての直前のデータ書込時に上記第2の不揮発性メモリに記憶された上記論理・物理アドレス管理情報が保存されるように、上記論理・物理アドレス管理情報の追記制御を行うものである。
上記のように本技術では、論理・物理アドレス管理情報を生成し、これを不揮発性メモリ(第2の不揮発性メモリ)に記憶するものとしている。これにより、物理ブロック内において論理アドレスが必ず連続となるようにデータの書き込みを行うというような制限を課す必要性はなくなり、物理ブロック内に非連続な論理アドレスを持つデータを連続に書き込むことを許容して、ガベージコレクションが多発する事態を回避できる。
ここで、従来、物理ブロック内に非連続な論理アドレスを持つデータを連続に書き込むことを許容する手法では、論理・物理アドレス管理情報を取得するにあたっては、該論理・物理アドレス管理情報が管理する全ての物理ページを読み出すようにされていた。これに対し上記本技術によれば、論理・物理アドレス管理情報を第2の不揮発性メモリに記憶するものとしているので、論理・物理アドレス管理情報の取得は、該第2の不揮発性メモリを読み出すことで実現できる。このように管理情報の取得が高速化されることで、書き込み/読み出し速度の向上が図られる。
本技術によれば、物理ブロック内に非連続な論理アドレスを持つデータを連続に書き込むことが許容されガベージコレクションが多発する事態の回避が図られると共に、論理・物理アドレスの管理情報の取得が高速化され、書き込み/読み出しの速度向上が図られる。
実施の形態としての記憶装置の内部構成を示したブロック図である。 実施の形態における物理ブロックと物理ページとの関係を模式的に示した図である。 物理ブロック内において論理アドレスが必ず連続となるようにデータを書き込む従来方式についての説明図である。 図3に示す従来方式の問題点についての説明図である。 物理ブロック内に非連続な論理アドレスを持つデータを連続に書き込むことを許容する従来方式についての説明図である。 実施の形態としての書込手法についての説明図である。 管理テーブルのデータ構造を示した図である。 実施の形態の管理テーブル構築処理のフローチャートである。 実施の形態のデータ書き込み時の処理のフローチャートである。 複数の物理ブロック分の論理・物理アドレスの対応関係を表す管理テーブルの概念を模式的に示した図である。 複数の物理ブロック分の論理・物理アドレスの対応関係を表すとした場合の管理テーブルのデータ構造を示した図である。
以下、本技術に係る実施の形態について説明する。
なお、説明は以下の順序で行う。

<1.記憶装置の構成>
<2.従来の書込方式について>
<3.実施の形態の書込手法>
<4.処理手順>
<5.変形例>
<1.記憶装置の構成>

図1のブロック図は、本技術の記憶装置に係る実施の形態としてのメモリカード1の内部構成を示している。
メモリカード1はホスト機器2に接続され、記憶装置として用いられる。ホスト機器2としては、例えばパーソナルコンピュータ、デジタルスチルカメラ、ビデオカメラ、オーディオプレーヤ、ビデオプレーヤ、ゲーム機器、携帯電話機、PDA(Personal Digital Assistant)等の情報端末など、各種の電子機器、情報処理装置が想定される。
メモリカード1は、制御部11、インターナルRAM(Random Access Memory)12、デバイスインターフェース13、バッファRAM14、フラッシュメモリ15、及びNVメモリ(Non-Volatile Memory)16を備える。
制御部11はCPU(Central Processing Unit)によって形成され、メモリカード1の全体を制御する。このため制御部11はインターナルRAM12に置かれた命令コードを逐次実行する。主に制御部11は、ホスト機器2からのコマンドに応じたデータの書き込みや読み出しを実行させる。このため制御部11は、デバイスインターフェース13のホスト機器2とのデータ送受信動作制御、バッファRAM14の書込/読出動作の制御、フラッシュメモリ15へのアクセス動作の制御を行う。
インターナルRAM12は例えばSRAM(Static Random Access Memory)で構成される。インターナルRAM12は、制御部11が実行するプログラム(ファームウェア)の記憶や、ワーク領域として使用される。
デバイスインターフェース13はホスト機器2との間の通信を行う。
バッファRAM14はホスト機器2との間の転送データ(書込データや読出データ)のバッファリングに用いられる。
フラッシュメモリ15は、不揮発性のメモリであり、本例ではNAND型フラッシュメモリが用いられている。
またNVメモリ16は、制御部11が各種処理で用いるデータの記憶が行われる不揮発性のメモリである。
メモリカード1の基本的な動作としては、データ書込時には、ホスト機器2から書込要求とともに、書込アドレス(論理アドレス)、データサイズ、さらに書き込むべきデータが送られてくる。
ホスト機器2から送られてくるデータは、デバイスインターフェース13で受信されてバッファRAM14にバッファリングされる。そして制御部11の制御の下、データがフッラシュメモリ15に書き込まれる。制御部11は書込要求、書込アドレス、データサイズに応じてこれらの動作を制御する。
データ読出時にはホスト機器2から読出要求とともに、読出アドレス(論理アドレス)、データサイズが送られてくる。制御部11は、読出アドレス、データサイズに基づいてフラッシュメモリ15から指示されたデータの読み出しを行い、バッファRAM14にバッファリングする。また制御部11はバッファリングされた読出データに対してエラー訂正処理等を行う。そして読出データはバッファRAM14からデバイスインターフェース13に転送され、ホスト機器2に送信される。
ところで、フラッシュメモリ15は、物理的な記憶領域のアドレスとして物理アドレスが使用される。これにより物理ブロック(Physical Block)、物理ページ(Physical Page)、物理セクタ(Physical Sector)が設定されている。複数の物理セクタで物理ページが構成され、また複数の物理ページで物理ブロックが構成される。
図2は、物理ブロックと物理ページとの関係を模式的に示している。
本実施の形態では、1つの物理ブロックが128個の物理ページで構成されているとする。
なお、図示はしていないが、物理ページ内は複数の物理セクタに分けられている。
消去(イレーズ)は物理ブロック単位で行われる。また、書き込み(プログラム)及び読み出し(リード)は物理ページ単位で可能とされる。つまり物理ブロックが物理的消去単位(最小消去単位)、物理ページが物理的書込単位(書込最小単位)となる。
ホスト機器2側からのアドレス指定は、論理アドレスが用いられる。論理アドレスによる論理ブロック、論理ページ、論理セクタが、上記の物理アドレスに対応づけられる。すなわち、制御部11は論理アドレスと物理アドレスとを対応づけて論理・物理アドレス管理情報を形成し、ホスト機器2からのアクセス要求時には、指定される論理アドレスを論理・物理アドレス管理情報を参照して物理アドレスに変換する。そして物理アドレスにより、実際のフラッシュメモリ15へのアクセスを実行する。
ここで以下、ホスト機器2から書き込みや読み出しが要求されるデータ(ホスト機器2が論理アドレスで管理するデータ)のことを「ホストデータ」と表記する。
<2.従来の書込方式について>

従前の一般的な書込方式の1つとしては、図3に示すように、物理ブロック内において論理アドレスが必ず連続となるようにデータを書き込む方式を挙げることができる。
この図3では、ホストデータとして0〜5の論理アドレス(ページ単位の論理アドレス)の付された6ページ分に対応するデータの書き込みが指示された場合の様子を示している。
物理ブロックは物理ページ番号=0の物理ページから順に使用されていくため、この場合のホストデータ(論理アドレス=0〜5)は、図のように連続した物理ページに書き込まれる。
このように論理アドレスが必ず連続となるようにデータを書き込む方式としておけば、次回、物理ブロック内に書き込まれたホストデータの情報を取得する場合に、物理ブロック内の最終使用済み物理ページを見つけ出し、その物理ページの冗長エリアに書き込まれているホストデータの論理アドレスを読み出すことで、当該物理ブロック内におけるホストデータの記録態様を把握できる。すなわち、当該物理ブロック内での論理アドレスと物理アドレスの対応関係を把握できるものである。
ここで確認のため述べておくと、最終使用済み物理ページとは、その時点で過去に最新のデータ書込が行われた物理ページを意味する。前述のように物理ブロックは物理ページ番号=0の物理ページから順に使用されていくため、物理ブロック内で論理アドレスの連続性が保証される下では、最終使用済み物理ページに記録されたデータの論理アドレスが判明すれば、その物理ブロック内における論理・物理アドレスの対応関係が把握されるものである。
ただし、図3に示す方式を採る場合、図4に示すような問題が生じる。
図4では、1回目の書込時におけるホストデータが0〜4の論理アドレスを持つデータ(5ページ分のデータ)とされ、2回目の書き込みとして、論理アドレス=1のデータについての書き換えが行われる場合を例示している。
この場合、1回目書込時におけるホストデータ(論理アドレス=0〜4)は物理ブロックMに対して行われたとする。
2回目書込時については、物理ブロック内における論理アドレスの連続性を保証する必要があるため、新たに書き込まれるべき論理アドレス=1のデータを、物理ブロックMに対して書き込むことができない。また消去単位は物理ブロック単位であるため、物理ブロックMに記録されている論理アドレス=1のデータを消去して、そこに2回目の書き込みで指示された論理アドレス=1のデータを新たに書き込むということもできない。
よってこの場合は、物理ブロックMとは別の物理ブロックNを新たに確保し、物理ブロックM内に記録されている論理アドレス=0,2,3,4のデータと2回目に書き込み指示された論理アドレス=1のデータとを、このように確保した物理ブロックNに対して論理アドレスが連続となるように書き込むことになる。
このように論理アドレスの連続性を保証する方式では、既に書き込み済みの論理アドレスのホストデータを更新する場合に、別の物理ブロックNへホストデータをコピーするいわゆるガベージコレクションが発生する。
また図示による説明は省略するが、このようなガベージコレクションは、物理ブロックに対して非連続な論理アドレスのホストデータを書き込むとした場合にも生じるものとなる。すなわち、論理アドレスの連続性を保証する従来方式は、ガベージコレクションが多発する事態を招くものとなる。
このようにガベージコレクションが多発することで、デバイス寿命、及び書き込み速度を著しく低下させてしまう。
一方、従来の別の書込方式として、物理ブロック内に非連続な論理アドレスを持つホストデータを連続に書き込むことを許容する方式がある。
この方式を採った場合には、図5に示されるように、先の図4と同様に論理アドレス=0〜4のホストデータの書き込み後、2回目書込時に論理アドレス=1の書き換えが指示された場合に、該2回目書込時の論理アドレス=1のホストデータを、物理ページ番号=5としての続き部分に対して書き込むことができる。
つまりこの点からも理解されるように、物理ブロック内における論理アドレスの非連続性を許容する方式によれば、ガベージコレクションが多発する事態を効果的に回避できる。
しかしながら従来方式では、管理情報の構築は、対象とする物理ブロック内における全ての物理ページの論理アドレスを取得して行うものとされており、結果として管理情報の取得までに多くの時間を要し、この点において書き込み/読み出し速度の低下が生じていた。
本実施の形態では、これら従来技術の有する問題点に鑑み、物理ブロック内に非連続な論理アドレスを持つデータを連続に書き込むことを許容してガベージコレクションが多発する事態の回避を図ると共に、論理・物理アドレスの管理情報の取得を高速化して、書き込み/読み出しの速度向上が図られるようにする。
<3.実施の形態の書込手法>

先ず、本実施の形態では、物理ブロック内における論理アドレスの非連続性を許容できるようにするべく、論理・物理アドレス管理情報により、物理ブロック内における論理・物理アドレスの対応関係を管理するものとする。具体的には、後述する管理テーブルである。
物理ブロック内における論理アドレスの非連続性を許容することで、前述のようなガベージコレクションの発生回数を減少させることができる。
そして本実施の形態では、上記のような論理・物理アドレス管理情報による管理を前提とした場合において、該論理・物理アドレス管理情報の取得を効率的に短時間で実行できるようにして、ホストデータの書き込み/読み出しとしてのアクセス速度の向上を図るものとする。
具体的に本実施の形態では、1回のホストデータの書き込みごとに、論理・物理アドレス管理情報を図1に示したNVメモリ16に対して書き込むという手法を採る。
なお以下、論理・物理アドレス管理情報は、管理テーブルとも表記する。
図6は、実施の形態としての書込手法についての説明図である。
なおこの図では、書込対象とされた或る物理ブロック(未記録の物理ブロックであったとする)に対し、1回目のホストデータとして論理アドレス=0〜4のデータの書き込みが指示され、2回目のホストデータとして論理アドレス=1の書き換えが指示され、その後n回目のホストデータとして論理アドレス=200のデータの書き込みが指示された場合を例示している。
先ず、1回目のホストデータの書き込み指示に対応しては、指示された論理アドレス=0〜4のデータを物理ブロック内の物理ページ番号0〜4の物理ページに書き込む。
前述のように物理ブロックは、物理ページ番号=0の物理ページから順に使用されていくものである。
そして、これら書き込んだデータについての論理・物理アドレスの対応関係を表す管理テーブルを生成し、該管理テーブルを、NVメモリ16に書き込む。具体的に、この図に示す1回目ホストデータの書き込みに応じては、論理アドレス=0,1,2,3,4と、これらの論理アドレスを持つデータが書き込まれた物理ページ番号との対応関係を表す管理テーブルを生成し、これをNVメモリ16に対して書き込むことになる。
以降のホストデータの書込時も同様に、管理テーブルの書き込みが行われる。
具体的に、2回目のホストデータの書き込み(論理アドレス=1のデータの書き換え)が指示されたことに応じては、図のように書き込み指示された論理アドレス=1のホストデータを物理ページ番号=の物理ページに書き込んだ後、物理ページ番号=0〜までの物理ページにおける論理・物理アドレスの対応関係を表す管理テーブルを生成し、該生成した管理テーブルをNVメモリ16に書き込む。
また図では、その後に物理ページ番号=123の物理ページまでが使用され、さらにその後、n回目のホストデータの書き込み(論理アドレス=200のデータ)が指示された場合を例示しているが、該n回目の書込時には、指示された論理アドレス=200のデータを物理ページ番号=124の物理ページに対して書き込んだ後、物理ページ番号=0〜124までの物理ページにおける論理・物理アドレスの対応関係を表す管理テーブルを生成し、該生成した管理テーブルをNVメモリ16に書き込む。
図7は、管理テーブルのデータ構造を示している。
この図7に示すように、管理テーブルは論理アドレスと物理ページ番号とを対応づけた情報となる。
本例の場合、1つの管理テーブルは、1つの物理ブロック内における論理・物理アドレスの対応関係を管理する情報とされている。ここで言う論理アドレスは、対象とする物理ブロック内の物理ページに対して書き込まれたホストデータに付されている論理アドレスであり、管理テーブルでは、論理アドレスごとに、その論理アドレスの付されたホストデータが書き込まれた物理ページ番号の情報が対応づけられる。
上記のように本実施の形態では、対象とする物理ブロック内における論理・物理アドレスの対応関係を表す管理テーブル(論理・物理アドレス管理情報)を生成し、これをNVメモリ16に対して記憶させるものとしている。このことで、その後に当該物理ブロックについての読み出し/書き込みを行うにあたり論理・物理アドレスの管理情報を取得する際には、当該NVメモリ16を読み出せばよいものとでき、結果、従来方式の場合よりも高速に論理・物理アドレス管理情報の取得を行うことができる。
具体的に、物理ブロック内における論理アドレスの非連続性を許容する従来方式では、論理・物理アドレス管理情報の取得のためには対象とする物理ブロック内の全ての物理ページを読み出す必要があったが、本実施の形態によればその必要性はなく、単にNVメモリ16内に記憶された該当する論理・物理アドレス管理情報を読み出すことで足るものとできる。この結果、従来よりも高速な管理情報の取得が可能となり、それにより読み出し/書き込み速度の向上が図られる。
また、本実施の形態では管理テーブルをNVメモリ16に記憶させるものとしているので、フラッシュメモリ15の記憶容量、すなわちユーザデータの記憶可能容量を圧迫することがない。
ここで、上述のように本実施の形態では、NVメモリ16への管理テーブルの書き込みを、ホストデータの書き込みごとに実行するものとしている。すなわち、先の図に示したように或る物理ブロックについて複数回のホストデータの書き込みがある場合は、その都度、その物理ブロックについての管理テーブルのNVメモリ16に対する書き込みが実行されるものである。
このとき、管理テーブルの書き込みについては、前回のホストデータの書込時にNVメモリ16に書き込まれた管理テーブルを上書きするか、或いは上書きせずに前回のホストデータ書込時の管理テーブルが保存されるように追記するかを選択できる。
本例においては、後者の手法、すなわち上書きせずに前回の管理テーブルが保存されるように追記する手法を採用するものとしている。
後の図8で説明する処理では、このように保存される前回書込時の管理テーブルを利用して、最新管理テーブルの復旧処理が高速に行われるように図っている。
なお確認のため述べておくと、制御部11は、管理テーブルの生成をインターナルRAM12上で行う。
前述のように、制御部11では、ホスト機器2側からのコマンドにより書き込むべきデータの論理アドレスが把握される。
制御部11は、書き込みが指示されたホストデータの論理アドレスとそのホストデータを書き込むべき物理ページの物理ページ番号とを対応づけた情報を、管理テーブルのエントリ情報としてインターナルRAM12上に蓄積していく。この結果、管理テーブル(最新の管理テーブル)が生成される。このように生成された管理テーブルを、ホストデータの書き込みごとにNVメモリ16に対して書き込んでいく。
<4.処理手順>

図8及び図9のフローチャートにより、上記により説明した実施の形態としての書込手法を実現するために実行されるべき具体的な処理の手順を説明する。
なおこれら図8、図9に示される処理は、制御部11が例えばフラッシュメモリ15やNVメモリ16等の所定の記憶装置に記憶されたプログラムに従って実行するものである。
図8は、管理テーブルの構築処理を示している。
この図8に示す管理テーブルの構築処理は、少なくとも起動時において実行されればよい。
図8において、制御部11は、先ずステップS101において、NVメモリ16に対象物理ブロックの管理テーブルがあるか否かを判別する。
ステップS101において、NVメモリ16に対象物理ブロックの管理テーブルがあるということは、該対象物理ブロックに過去にホストデータの書き込みが為されている(つまり対象物理ブロックが使用中)ということを意味する。
一方、NVメモリ16に対象物理ブロックの管理テーブルがないということは、該対象物理ブロックが未使用であるか、或いは、使用中であっても何らかの理由で管理テーブルが読み出せなかった場合となる。
なお、本例では管理テーブルを追記するものとして直前の書込時の管理テーブルを残すものとしているので、上記「管理テーブルが読み出せなかった場合」としては、新/旧2つの管理テーブルの双方が読み出せなかった場合と、対象物理ブロックに1回のみ行われたホストデータの書き込みに対応してNVメモリ16に記憶されていた1つの管理テーブルを読み出せなかった場合とがあり得る。
ステップS101において、NVメモリ16に対象物理ブロックの管理テーブルがなかったとの否定結果が得られた場合、制御部11はステップS102に進み、対象物理ブロックの最終使用済み物理ページを検索する。
例えば2分検索などとして最終使用済み物理ページを探すことができる。前述のように最終使用済み物理ページとは、その時点で過去に最新のデータ書き込みが行われた物理ページを意味するものである。
上記2分検索とは、例えば中央の物理ページを確認しながら最終使用済み物理ページを探索する手法となる。仮に、物理ブロックが8個の物理ページ(0〜7)で成る場合には、中央部に位置する例えば物理ページ番号=4の物理ページを先ず確認する。この物理ページ番号=4の物理ページが書込済みであれば、最終使用済み物理ページは当該物理ページ番号=4以降の物理ページにあることが分かる。そこで次に、物理ページ番号=5〜7の範囲の中央部に位置する物理ページ番号=6の物理ページを確認する。この物理ページ番号=6の物理ページが書込済みであれば、最終使用済み物理ページは物理ページ番号=7と特定できる。このように中央部の物理ページを確認しながら追い込んでいき、最終使用済み物理ページを探索する。
ステップS102による検索を行った後、制御部11は、ステップS103にて対象物理ブロックは未使用であるか否かを判別する。すなわち、ステップS102の検索により、最終使用済み物理ページが存在しないとの結果が得られた場合は未使用との肯定結果を得、そうでない場合は未使用ではないとの否定結果を得る。
対象物理ブロックが未使用である場合には、管理テーブルを構築できない。従ってステップS103にて肯定結果が得られた場合、制御部11は、この図に示す処理動作を終了する。
一方、対象物理ブロックが未使用ではないとの否定結果が得られた場合、制御部11は、ステップS104〜S109により、最新の管理テーブルを復旧するための処理を実行する。
なお確認のため述べておくと、ここで言う「最新の管理テーブル」とは、その時点において対象物理ブロックに記録されている全てのホストデータについての論理・物理アドレスの対応関係を表す管理テーブルを意味するものである。
具体的に制御部11は、先ずステップS104において、先のステップS102で検索された最終使用済み物理ページを読み出す処理を実行し、ステップS105において、物理ページに記録されたデータの論理アドレスを取得する。すなわち、ステップS104で読み出した最終使用済み物理ページに記録されたデータの論理アドレス(又は後のステップS107で読み出した物理ページに記録されたデータの論理アドレス)を取得する。
ステップS105の論理アドレスの取得を行った後、制御部11は、ステップS106にて物理ブロックの先頭ページであるか否かを判別する。
すなわち、ステップS104で読み出した最終使用済み物理ページ(又はS107で読み出した物理ページ)が対象物理ブロックの先頭の物理ページであるか否かを判別する。
ステップS106において、物理ブロックの先頭ページではないとの否定結果が得られた場合、制御部11は、ステップS107に進んで1つ前の物理ページを読み出した後、先のステップS105に戻り物理ページに記録されたデータの論理アドレスを取得する。
ステップS105〜S107のループ処理により、最終使用済み物理ページから先頭物理ページまでの各物理ページについての論理アドレスが取得されることになる。
ステップS106において、物理ブロックの先頭ページではないとの否定結果が得られた場合、制御部11は、ステップS108に進んで対象物理ブロックの管理テーブルを生成する。すなわち、ステップS105で取得した論理アドレスとその論理アドレスの付されたデータが記録された物理ページ番号との対応関係を表す管理テーブルを生成するものである。これにより、対象物理ブロックについての最新の管理テーブルが作成されたことになる。
ステップS108で管理テーブルを生成した後、制御部11は、ステップS109にて該管理テーブルをNVメモリ16に書き込む。これにより、対象物理ブロックについての最新の管理テーブルが復旧されたことになる。
また、先のステップS101において、NVメモリ16に対象物理ブロックの管理テーブルがあるとの肯定結果が得られた場合、制御部11は、ステップS110〜S113により当該管理テーブルが最新の管理テーブルであるかを確認するための処理を実行し、最新の管理テーブルではない場合には、ステップS114・S115により、最新の管理テーブルを復旧するための処理を行う。
具体的に制御部11は、ステップS110において、管理テーブルで管理されている最終物理ページ番号を取得する。
ここで、上記「最終物理ページ番号」とは、対象物理ブロックについての管理テーブルで管理されている物理ページ番号のうち最も値の大きい物理ページ番号を意味するものであり、例えば対象物理ブロックについて新/旧2つの管理テーブルがNVメモリ16上に存在している場合には、これら管理テーブルで管理される物理ページ番号のうち最も値の大きい物理ページ番号が該当する。
上記最終物理ページ番号を取得した後、制御部11は、ステップS111において対象物理ブロックの最終使用済み物理ページを検索し、ステップS112において、該最終使用済み物理ページの物理ページ番号を取得する。
続くステップS113では、管理テーブルは最新か否かを判別する。すなわち、ステップS110にて取得した最終物理ページ番号とステップS112で取得した最終使用済み物理ページの物理ページ番号とが一致する場合は管理テーブルが最新との肯定結果を得、そうでない場合は管理テーブルが最新ではないとの否定結果を得る。
ステップS113において、管理テーブルが最新であるとの肯定結果が得られた場合、制御部11はこの図に示す処理動作を終了する。すなわち、この場合は管理テーブルの復旧は不要であるので処理動作を終了するものである。
一方、ステップS113にて管理テーブルが最新ではないと否定結果が得られた場合、制御部11は、ステップS114に進んで未管理の物理ページに記録されたデータの論理アドレスを取得する。
具体的には、ステップS112で取得した最終使用済み物理ページ番号からステップS110で取得した最終物理ページ番号の次の物理ページ番号までの間の物理ページについて、そこに記録されたデータの論理アドレスを取得するものである。
ステップS114の論理アドレス取得処理を実行した後、制御部11は、ステップS115にて管理テーブルを更新する。すなわち、ステップS114で取得した論理アドレスと、該論理アドレスの付されたデータが記録されている物理ページの物理ページ番号とを対応づけた情報が、NVメモリ16上に存在する上記最終物理ページ番号を管理している管理テーブルに対して追加されるように、当該NVメモリ16上の管理テーブルの更新を行うものである。
これにより、最新の管理テーブルの復旧が行われたことになる。
ここで、本実施の形態では、前述のように前回のホストデータの書込時にNVメモリ16に書き込まれた管理テーブルを上書きせずに、該前回のホストデータ書込時の管理テーブルが保存されるように管理テーブルの追記を行うものとしている。
このことで、上記のステップS114・S115の最新管理テーブルの復旧処理において、当該保存された管理テーブルの情報内容を利用することができ、その分、最新管理テーブルの復旧を高速に行うことができる。
また本実施の形態では、ホストデータの書き込みごとに、NVメモリ16に対する管理テーブルの書き込みを行うものとしているが、このことで、図8に示す最新管理テーブルの復旧処理(S104〜S109又はS110〜S115)の実行回数の削減を図ることができる。
例えば仮に、2回分のホストデータの書き込みごとにそれら2回分のホストデータについての管理テーブルを生成・NVメモリ16に記憶するとした場合には、n回目とn+1回目のホストデータの書き込みの間に電源断があったとすると、その後の起動時には必ず図8に示す構築処理で最新の管理テーブルの復旧を行わなければならないことになる。これに対し1回のホストデータの書き込みごとにNVメモリ16に管理テーブルを書き込むものとすれば、そのような事態を回避することができるものである。
上記図8による管理テーブルの構築処理が少なくとも起動時に実行されることで、ホスト機器2からの書き込み/読み出し指示が為される時点で、制御部11がフラッシュメモリ15内の各物理ブロックについての論理・物理アドレスの最新の対応関係を把握している状態を得ることができる。
続いて、図9は、ホストデータの書き込み時に対応して実行されるべき処理を示している。
図9において、制御部11は、ステップS201において、ホスト機器2からデータ書き込み要求に応じて書き込みを行うホストデータの取り込みや論理アドレスの取得等を行う。
具体的に制御部11は、送信されてくるホストデータについてはデバイスインターフェース13を介してバッファRAM14に一時格納させる。また制御部11は、デバイスインターフェース13を介して送信される書き込み要求のコマンドにより、書き込むホストデータの論理アドレスとデータ量を把握する。
ステップS202では、今回のデータ書込に対応すべく管理テーブルを作成又は更新する。
先の図8に示した構築処理が実行されることで、制御部11は、現時点(ホストデータの書き込み前時点)における、書き込み対象とする物理ブロック内の論理・物理アドレスの対応関係を把握した状態にある。
対象とする物理ブロックに対し過去にホストデータの書き込みが実行されていた場合には、当該ステップS202の処理は、これから書き込むべきホストデータについての論理・物理アドレスの対応関係情報に基づき、既にインターナルRAM12上に置かれた管理テーブルを更新する処理となる。或いは、対象とする物理ブロックが今回初めて使用される場合には、当該ステップS202の処理は、これから書き込むべきホストデータについての論理・物理アドレスの対応関係情報に基づき、管理テーブルを新規に作成する処理となる。
ステップS202による管理テーブルの作成/更新処理を実行した後、制御部11は、ステップS203にてホストデータの書き込みを実行する。
前述のように物理ブロックは物理ページ番号=0から順に使用するものとされるので、制御部11は、ホスト機器2側から指示されたホストデータを、対象とする物理ブロックの最終使用済み物理ページの次の物理ページから順に書き込む。
ホストデータの書き込みを実行した後、制御部11は、ステップS204にてNVメモリ16に管理テーブルを書き込む。すなわち、先のステップS202によりインターナルRAM12上にて作成/更新された管理テーブルを、NVメモリ16に書き込むものである。
本例の場合、このステップS204では、当該対象物理ブロックに対する前回のホストデータの書き込み時にNVメモリ16上に記憶された管理テーブル(前回管理テーブとする)が保存されるべく、ステップS202でインターナルRAM12上にて作成/更新された管理テーブルを、前回管理テーブルに対する上書きではなく、追記として書き込むようにする。
<5.変形例>

以上、本技術に係る実施の形態について説明したが、本技術はこれまでで説明した具体例に限定されるべきものではない。
例えば、これまでの説明では、管理テーブルは、1つの物理ブロック分の論理・物理アドレスの対応関係を表す情報としたが、管理テーブルは、複数の物理ブロック分の論理・物理アドレスの対応関係を表す情報とすることもできる。
図10は、その場合の管理テーブルの概念を模式的に示している。
この図10の例では、物理ブロックM,N,Oの3つの物理ブロック分の論理・物理アドレスの対応関係を表す管理テーブルを例示している。
この場合、3つの物理ブロックは一体で管理され、管理テーブルは、これら3つの物理ブロック内を対象としたホストデータの書き込みが行われるごとに、NVメモリ16に対して書き込むことになる。
図11は、このように複数の物理ブロック分の論理・物理アドレスの対応関係を表すとした場合の管理テーブルのデータ構造を示している。
複数の物理ブロック分の論理・物理アドレスの対応関係を表す場合、管理テーブルとしては、論理アドレスと、その論理アドレスの付されたデータが書き込まれた物理ページの番号(物理ページ番号)と共に、その論理アドレスの付されたデータの書き込まれた物理ブロックのアドレス(物理ブロックアドレス)とを対応づける。
複数の物理ブロック分の論理・物理アドレスの対応関係を1つの管理テーブルで管理しようとした場合、該管理テーブルのデータサイズが大となる傾向となり、システム環境に応じて、1つの物理ブロック分の対応関係を管理する管理テーブルとするか、複数の物理ブロック分の対応関係を管理する管理テーブルとするかを選択することができる。
上記のように複数の物理ブロック分の論理・物理アドレスの対応関係を管理する管理テーブルとすれば、従来方式では複数の物理ブロック内の全ての書き込み済み物理ページを読み出して論理・物理アドレス管理情報を取得しなければならなかったものを、1つの管理テーブルの読み出しを行えば済むものとでき、結果、書き込み/読み出し速度のさらなる向上を図ることができる。
また、これまでの説明では、前回管理テーブルを上書きせず保存するものとしたが、管理テーブルは、前回管理テーブルを上書きするように書き込むこともできる。このような上書きを採用した場合には、NVメモリ16の記憶容量の消費を抑えることができる。
また、これまでの説明では、先の図8に示した管理テーブルの構築処理を起動時に実行するものとして説明したが、該管理テーブルの構築処理は、例えばホスト機器2からの書き込みや読み出しの要求の都度行うなど、起動時以外の他のタイミングで実行するということも考えられる。
また、これまでの説明では、本技術がNAND型フラッシュメモリを有する記憶装置に適用される場合を例示したが、本技術は、消去単位である物理ブロックのサイズが書込最小単位である物理ページのサイズよりも大とされたメモリ部に対してデータの書き込みが行われる場合に好適に適用できるものである。
また、本技術は以下のような構成も採ることができる。
(1)
消去単位である物理ブロックのサイズが書込最小単位である物理ページのサイズよりも大とされた第1の不揮発性メモリに対するデータの書込制御を行うと共に、該書込制御によってデータが書き込まれた書込対象物理ブロック内における物理ページアドレスと論理アドレスとの対応関係を表す論理・物理アドレス管理情報を生成し、該論理・物理アドレス管理情報が、上記第1の不揮発性メモリに対するデータ書き込みごとに、第2の不揮発性メモリに記憶されるように制御を行う制御部を備える
制御装置。
(2)
上記制御部は、
上記書込対象物理ブロックについての直前のデータ書込時に上記第2の不揮発性メモリに記憶された上記論理・物理アドレス管理情報が保存されるように、上記論理・物理アドレス管理情報の追記制御を行う
上記(1)に記載の制御装置。
(3)
上記制御部は、
対象とする物理ブロック内の最終使用済み物理ページを検索して取得した当該最終使用済み物理ページの物理ページ番号と、上記対象とする物理ブロックについての論理・物理アドレス管理情報で管理される最終物理ページ番号とが一致するか否かを判別し、これらの番号が一致しない場合に、上記対象とする物理ブロックについての論理・物理アドレス管理情報で未管理とされる各物理ページに記録されるデータの論理アドレスを取得し、該取得した論理アドレスに基づき、論理・物理アドレス管理情報を更新する処理を行う
上記(2)に記載の制御装置。
(4)
上記制御部は、
上記第2の不揮発性メモリに対する上記論理・物理アドレス管理情報の記憶が、上記書込対象物理ブロックについての直前のデータ書込時に上記第2の不揮発性メモリに記憶された上記論理・物理アドレス管理情報に対する上書きとして行われるように制御する
上記(1)に記載の制御装置。
(5)
上記制御部は、
上記論理・物理アドレス管理情報として、1つの物理ブロックごとの上記物理ページアドレスと論理アドレスとの対応関係を表す情報を生成する
上記(1)乃至(4)何れかに記載の制御装置。
(6)
上記制御部は、
上記論理・物理アドレス管理情報として、複数の物理ブロックごとの上記物理ページアドレスと論理アドレスとの対応関係を表す情報を生成する
上記(1)乃至(4)何れかに記載の制御装置。
(7)
上記制御部は、
NAND型フラッシュメモリである上記第1の不揮発性メモリに対して書込制御を行う上記(1)乃至(6)何れかに記載の制御装置。
1 メモリカード、2 ホスト機器、11 制御部、12 インターナルRAM、13 デバイスインターフェース、14 バッファRAM、15 フラッシュメモリ、16 NVメモリ

Claims (7)

  1. 消去単位である物理ブロックのサイズが書込最小単位である物理ページのサイズよりも大とされた第1の不揮発性メモリに対するデータの書込制御を行うと共に、該書込制御によってデータが書き込まれた書込対象物理ブロック内における物理ページアドレスと論理アドレスとの対応関係を表す論理・物理アドレス管理情報を生成し、該論理・物理アドレス管理情報が、上記第1の不揮発性メモリに対するデータ書き込みごとに、第2の不揮発性メモリに記憶されるように制御を行う制御部を備え、
    上記制御部は、上記書込対象物理ブロックについての直前のデータ書込時に上記第2の不揮発性メモリに記憶された上記論理・物理アドレス管理情報が保存されるように、上記論理・物理アドレス管理情報の追記制御を行う
    制御装置。
  2. 上記制御部は、
    対象とする物理ブロック内の最終使用済み物理ページを検索して取得した当該最終使用済み物理ページの物理ページ番号と、上記対象とする物理ブロックについての論理・物理アドレス管理情報で管理される最終物理ページ番号とが一致するか否かを判別し、これらの番号が一致しない場合に、上記対象とする物理ブロックについての論理・物理アドレス管理情報で未管理とされる各物理ページに記録されるデータの論理アドレスを取得し、該取得した論理アドレスに基づき、論理・物理アドレス管理情報を更新する処理を行う
    請求項1に記載の制御装置。
  3. 上記制御部は、
    上記論理・物理アドレス管理情報として、1つの物理ブロックごとの上記物理ページアドレスと論理アドレスとの対応関係を表す情報を生成する
    請求項1に記載の制御装置。
  4. 上記制御部は、
    上記論理・物理アドレス管理情報として、複数の物理ブロックごとの上記物理ページアドレスと論理アドレスとの対応関係を表す情報を生成する
    請求項1に記載の制御装置。
  5. 上記制御部は、
    NAND型フラッシュメモリである上記第1の不揮発性メモリに対して書込制御を行う
    求項1に記載の制御装置。
  6. 消去単位である物理ブロックのサイズが書込最小単位である物理ページのサイズよりも大とされた第1の不揮発性メモリと、
    第2の不揮発性メモリと、
    上記第1の不揮発性メモリに対するデータの書込制御を行うと共に、該書込制御によってデータが書き込まれた書込対象物理ブロック内における物理ページアドレスと論理アドレスとの対応関係を表す論理・物理アドレス管理情報を生成し、該論理・物理アドレス管理情報が、上記第1の不揮発性メモリに対するデータ書き込みごとに、上記第2の不揮発性メモリに記憶されるように制御を行う制御部とを備え、
    上記制御部は、上記書込対象物理ブロックについての直前のデータ書込時に上記第2の不揮発性メモリに記憶された上記論理・物理アドレス管理情報が保存されるように、上記論理・物理アドレス管理情報の追記制御を行う
    記憶装置。
  7. 消去単位である物理ブロックのサイズが書込最小単位である物理ページのサイズよりも大とされた第1の不揮発性メモリに対するデータの書込制御を行うと共に、該書込制御によってデータが書き込まれた書込対象物理ブロック内における物理ページアドレスと論理アドレスとの対応関係を表す論理・物理アドレス管理情報を生成し、該論理・物理アドレス管理情報が、上記第1の不揮発性メモリに対するデータ書き込みごとに、第2の不揮発性メモリに記憶されるように制御し、上記書込対象物理ブロックについての直前のデータ書込時に上記第2の不揮発性メモリに記憶された上記論理・物理アドレス管理情報が保存されるように、上記論理・物理アドレス管理情報の追記制御を行う
    記憶制御方法。
JP2012109090A 2012-05-11 2012-05-11 制御装置、記憶装置、記憶制御方法 Active JP5874525B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2012109090A JP5874525B2 (ja) 2012-05-11 2012-05-11 制御装置、記憶装置、記憶制御方法
US13/875,961 US20130304972A1 (en) 2012-05-11 2013-05-02 Control device, storage device, and storage control method
CN2013101607888A CN103389942A (zh) 2012-05-11 2013-05-03 控制装置、存储装置及存储控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012109090A JP5874525B2 (ja) 2012-05-11 2012-05-11 制御装置、記憶装置、記憶制御方法

Publications (3)

Publication Number Publication Date
JP2013235531A JP2013235531A (ja) 2013-11-21
JP2013235531A5 JP2013235531A5 (ja) 2015-03-19
JP5874525B2 true JP5874525B2 (ja) 2016-03-02

Family

ID=49534221

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012109090A Active JP5874525B2 (ja) 2012-05-11 2012-05-11 制御装置、記憶装置、記憶制御方法

Country Status (3)

Country Link
US (1) US20130304972A1 (ja)
JP (1) JP5874525B2 (ja)
CN (1) CN103389942A (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9904688B2 (en) 2014-09-30 2018-02-27 International Business Machines Corporation Buffering and replicating data written to a distributed storage system
US9916325B2 (en) 2014-09-30 2018-03-13 International Business Machines Corporation Quick initialization of data regions in a distributed storage system
TWI601011B (zh) * 2016-07-05 2017-10-01 慧榮科技股份有限公司 偵測使用中邏輯頁面之資料儲存裝置與資料儲存方法
US10977186B2 (en) * 2017-11-21 2021-04-13 Micron Technology, Inc. Last written page searching
KR20200057866A (ko) * 2018-11-16 2020-05-27 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 이의 동작 방법
CN112988038A (zh) * 2019-12-17 2021-06-18 国民技术股份有限公司 非易失性存储器的数据写入方法、终端和可读存储介质
CN116661704B (zh) * 2023-07-07 2024-03-08 深圳宏芯宇电子股份有限公司 存储装置数据读写方法、存储器存储装置及存储器控制器

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07219720A (ja) * 1993-10-01 1995-08-18 Hitachi Maxell Ltd 半導体メモリ装置ならびにその制御方法
JP2005316793A (ja) * 2004-04-30 2005-11-10 Tdk Corp フラッシュメモリシステム及びフラッシュメモリの制御方法
JP2007164318A (ja) * 2005-12-12 2007-06-28 Renesas Technology Corp 記憶装置
KR100882740B1 (ko) * 2007-02-22 2009-02-09 삼성전자주식회사 맵 히스토리 기반의 불휘발성 메모리의 매핑 방법 및 저장장치
US7975109B2 (en) * 2007-05-30 2011-07-05 Schooner Information Technology, Inc. System including a fine-grained memory and a less-fine-grained memory
US8219776B2 (en) * 2009-09-23 2012-07-10 Lsi Corporation Logical-to-physical address translation for solid state disks
US8726126B2 (en) * 2010-03-23 2014-05-13 Apple Inc. Non-regular parity distribution detection via metadata tag
US8850160B2 (en) * 2010-08-23 2014-09-30 Apple Inc. Adaptive write behavior for a system having non-volatile memory
US8793429B1 (en) * 2011-06-03 2014-07-29 Western Digital Technologies, Inc. Solid-state drive with reduced power up time
US9104614B2 (en) * 2011-09-16 2015-08-11 Apple Inc. Handling unclean shutdowns for a system having non-volatile memory
US8819367B1 (en) * 2011-12-19 2014-08-26 Western Digital Technologies, Inc. Accelerated translation power recovery

Also Published As

Publication number Publication date
US20130304972A1 (en) 2013-11-14
JP2013235531A (ja) 2013-11-21
CN103389942A (zh) 2013-11-13

Similar Documents

Publication Publication Date Title
JP5983019B2 (ja) 制御装置、記憶装置、記憶制御方法
JP5874525B2 (ja) 制御装置、記憶装置、記憶制御方法
JP4633802B2 (ja) 不揮発性記憶装置及びデータ読み出し方法及び管理テーブル作成方法
US8285940B2 (en) Method and apparatus for high speed cache flushing in a non-volatile memory
JP4418439B2 (ja) 不揮発性記憶装置およびそのデータ書込み方法
US8402202B2 (en) Input/output control method and apparatus optimized for flash memory
US10838629B2 (en) Solid state device with fast boot after ungraceful shutdown
JP2007184005A (ja) フラッシュメモリのアドレスマッピング方法、マッピング情報管理方法及びこれらの方法を用いたフラッシュメモリ
US20120290769A1 (en) Flash memory device, memory control device, memory control method, and storage system
US20100318726A1 (en) Memory system and memory system managing method
JP2009037317A (ja) メモリーコントローラ、及びこれを用いた不揮発性記憶装置並びに不揮発性記憶システム
JP5592478B2 (ja) 不揮発性記憶装置及びメモリコントローラ
US10025706B2 (en) Control device, storage device, and storage control method
JP5949122B2 (ja) 制御装置、記憶装置、記憶制御方法
JP2008047155A (ja) 一括消去型不揮発性メモリおよび携帯電話
JP2008299455A (ja) データ記憶装置及びデータ管理方法
JP4710274B2 (ja) メモリ装置、メモリ装置の制御方法およびデータ処理システム
JP2006244017A (ja) データコピー方法
JP2013109404A (ja) 情報処理装置
JP2012037971A (ja) メモリコントローラ及びメモリコントローラを備える不揮発性メモリシステム、並びに不揮発性メモリの制御方法
JP2007304920A (ja) フラッシュメモリ制御方法
JP2008191855A (ja) 半導体記憶装置及びメモリ制御方法
JPWO2020129612A1 (ja) 情報処理装置、情報処理方法および情報処理プログラム
JP2010079860A (ja) 記憶装置およびメモリ制御方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150129

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151020

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151203

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151222

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160104

R151 Written notification of patent or utility model registration

Ref document number: 5874525

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250