JP2009116465A - 記憶装置及びメモリ制御方法 - Google Patents
記憶装置及びメモリ制御方法 Download PDFInfo
- Publication number
- JP2009116465A JP2009116465A JP2007286428A JP2007286428A JP2009116465A JP 2009116465 A JP2009116465 A JP 2009116465A JP 2007286428 A JP2007286428 A JP 2007286428A JP 2007286428 A JP2007286428 A JP 2007286428A JP 2009116465 A JP2009116465 A JP 2009116465A
- Authority
- JP
- Japan
- Prior art keywords
- data
- block
- replacement
- area
- memory control
- 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.)
- Granted
Links
Images
Abstract
【解決手段】不揮発性半導体メモリ2を制御する手段として、物理ブロックを少なくともデータページ222と交替ページ223とに分割し、ホスト装置3からの書込み要求毎に、新たな交替ページ223に書き込みを行う。また、交替ページ223が不足するときには、交替ブロック23に最新のデータを移し、同様の書込み制御を行う。
【選択図】図3
Description
また、交替ブロックに有効データが書き込まれた後に、データブロックは、交替ブロックの候補となるようにデータ領域と交替領域とを消去済み領域とするように制御される。
また、書込み毎に“リード・モディファイ・ライト”をしないため、応答性能を向上できる。また、オリジナルデータ毎に更新データを対応付けしていないため、全体的なメモリ容量の使用性を向上できる。
図1は本発明の実施の形態を実現するためのハードウェア構成例を示す図である。
最初に図1に基づいて本実施例のハードウェア構成について説明する。
記憶装置6は、メモリ制御部1と半導体メモリ2とから構成される。メモリ制御部1は、マイクロプロセッサ11と、メモリI/F(インターフェース)制御部12と、ホストI/F制御部13と、メモリ14とを有している。
本発明の実施の形態においては、メモリの種類については言及しないが、SRAM(Static Random Access Memory)やDRAM(Dynamic RAM)又はMRAM(Magneto-resistive RAM)等のメモリ素子を使用することができる。
図7は、論理/物理変換テーブル141の構成例を示した図である。図7Aは初期状態、図7Bはページ書き換え後、図7Cはブロック交替後の状態を示している。
論理/物理変換テーブル141は、ホスト装置3からのアクセスにて示される論理アドレス1410と半導体メモリ2上のブロック番号とページ番号からなる物理アドレス1411で構成される。
交替ブロックリストテーブル143は使用可能な交替ブロックの番号が使用する順番に並んでおり、交替ブロックが使用されると、例えば図9Aに示す初期状態から図9Bに示すブロック交替後のような状態に移り変わる。
消去管理テーブル144は各ブロックのブロック番号1440と対応するブロックの消去回数1441から構成される。各ブロックに存在しているデータの消去が行われると、例えば、図10Aに示す初期状態から図10Bに示す交替処理後のような状態に移り変わる。
消去候補管理テーブル145は、ブロックの消去がなされると、図11Aに示す初期状態から図11Bに示すブロック交替処理後の状態に移り変わる。
また、半導体メモリ2とメモリ制御部1とのデータのやり取りは、データバス5によって行われる。記憶装置6はホスト装置3からの指示に基づいてデータの記憶を行う装置である。
図3は、本発明の実施の形態の特徴であるメモリ制御方式を実現するためのメモリの使用態様を示す図であり、メモリ制御部1の制御により半導体メモリ2内に構築される論理的記憶領域を示している。
データブロック22は、データを記憶する一つあるいは複数のブロックからなるブロックであり、ブロック1からブロックp(整数)までの論理ブロックを有している。各ブロックは、図示のようにデータページ222と交替ページ223で構成されている。
図4〜図6に示したフローチャートでは、本発明の実施の形態の特徴である、書込み処理とそれに関連したブロック交替処理、及びブロック消去処理の手順を示している。
まず、ホスト装置3からデータの書込み要求があった場合の処理について、図4、図5を用いて説明する。
図4のフローチャートは、マイクロプロセッサ11の半導体メモリ2への書込み処理のフローチャートである。以下その処理の流れを説明する。
まず、マイクロプロセッサ11は、ホストI/F制御部13を介して、ホスト装置3から論理アドレス、データ、データサイズを受信する(ステップS700)。
例えば、次回書込みページ管理テーブル142が図8Aに示す初期状態であったとき、ステップS701にてブロック1を特定した場合、1421の次回書込みページはq+1となる。
次に、マイクロプロセッサ11は、書込み後の物理アドレスとの関連付けのために、論理/物理変換テーブル141を書込み完了した物理アドレスへ更新する(ステップS706)。
次に、マイクロプロセッサ11は、ホストI/F制御部13を介して、ホスト装置3に書込み終了を報告する(ステップS707)。
次に、上述した図4に示すステップ710のブロック交替処理について、図5のフローチャートを用いて説明する。
まず、マイクロプロセッサ11は、交替元ブロックの有効なデータを交替先のブロックへコピーするために、論理/物理変換テーブル141を参照して、該当する物理アドレスから該当のブロックに関連付けられた全ページのデータを読み出す(ステップS711)。
次に、マイクロプロセッサ11は、交替先のブロックを確認するために、交替ブロックリストテーブル143を参照し、交替ブロック23の中の一つのブロックを特定する。
例えば、交替ブロックリストテーブル143の状態が図9Aの初期状態であれば、ブロックp+1を特定し、図9Bのブロック交替後の1431に示す状態に更新する。
ステップS715でデータ書込みが終了したら、マイクロプロセッサ11は、次回書込みページ管理テーブル142の内容に書込み完了したページ数を加算することで、テーブルを更新する(ステップS716)。
ホスト装置3からデータの読出し要求に対しては、処理数が少ないので、フローチャートなしで、以下に文章で示す。
まず、マイクロプロセッサ11は、ホストI/F制御部13を介して、ホスト装置3から論理アドレス、データサイズを受信する。
次に、図6のフローチャートに基づいて、ブロック消去処理の流れを説明する。
マイクロプロセッサ11は、ホスト装置3からデータの書込みや読出しの要求が無いときに、消去候補管理テーブル145に関連付けされているブロックの消去処理を実施する。
ステップS800で判定した結果、消去対象となるブロックがない場合は処理を終了する。
消去対象となるブロックがある場合は、マイクロプロセッサ11は、消去回数管理テーブル144に対し、当該ブロックの消去回数を一つ加算する(ステップS801)。
次に、マイクロプロセッサ11は、消去候補管理テーブル145にある、消去済みブロックの情報を削除し、テーブルを更新する(ステップS803)。
次に、マイクロプロセッサ11は、同図内ステップS800の判定処理に戻り、消去候補管理テーブル145の該当するブロックが無くなるまで処理を続ける。
Claims (14)
- 記憶領域に対するデータの書き込みを所定の単位で行うと共に、その所定の単位よりデータ量が大きな物理ブロックの単位でデータの消去を行う不揮発性半導体メモリと、
外部のホストシステムからの指示に従い、前記半導体メモリに対する読み出し又は書き込みを制御するメモリ制御部と、
を具備する記憶装置であって、
前記不揮発性半導体メモリの記憶領域は、1又は複数の前記物理ブロックからなるデータブロックと、1又は複数の前記物理ブロックからなる交替ブロックとから構成され、
前記それぞれのデータブロック及び交替ブロックは、前記所定の単位で書き込まれたデータを記憶するデータ領域と、同じデータブロック内の前記データ領域に記憶したデータの再書き込みが前記所定の単位で可能な交替領域とから構成され、
前記それぞれのデータブロックにおいて交替領域への新たな書き込みができない場合、又は新たな書き込みができなくなる可能性がある場合に、そのデータブロック内の有効なデータだけを、前記交替ブロックのデータ領域に再書き込みして移し、その移された交替ブロックをデータブロックとして使用することを特徴とする記憶装置。 - 請求項1記載の記憶装置において、
前記交替ブロックに再書き込み後に、その再書き込みされたデータが記憶されていた前記データブロックは、前記交替ブロックの候補となるように前記データ領域と前記交替領域とを前記メモリ制御部が消去することを特徴とする記憶装置。 - 請求項1記載の記憶装置において、
前記メモリ制御部は、前記ホストシステムからのデータの書込み要求がある論理アドレスと、それに対応する前記半導体メモリの物理アドレスを格納するテーブルを持ち、前記書込み要求に対応する物理アドレスを書換え、前記交替領域を管理することを特徴とする記憶装置。 - 請求項1記載の記憶装置において、
前記物理ブロックの各ブロック毎の消去回数を記載した手段を持ち、消去回数を一括管理することを可能とすることを特徴とする記憶装置。 - 請求項1記載の記憶装置において、
前記物理ブロックの消去予定のブロックを管理する手段を持ち、前記メモリ制御部のマイクロプロセッサの空き時間に、消去処理を行うことを特徴とする記憶装置。 - 請求項1記載の記憶装置において、
次回書込み領域を管理する手段を持ち、前記次回書込み領域を管理する手段によって保持している情報を更新した後に、新たな交替領域にデータの書き込みを行うことを特徴とする記憶装置。 - 請求項1記載の記憶装置において、
前記交替ブロックのデータ領域にデータの書込み後の前記データブロックのうちの有効なデータを移す際に、前記ホストシステムからの論理アドレスの順に最新のデータを並び替えることを特徴とする記憶装置。 - データの書き込みを行う所定の単位に比べ、よりデータ量の大きな物理ブロックの単位でデータの消去を行う記憶領域を備えた不揮発性半導体メモリに対して、
外部のホストシステムからの指示に従い、メモリ制御部により読み出し又は書き込みを行うメモリ制御方法であって、
前記不揮発性半導体メモリの記憶領域は、1又は複数の前記物理ブロックからなるデータブロックと、1又は複数の前記物理ブロックからなる交替ブロックとから構成され、
前記それぞれのデータブロック及び交替ブロックは、前記所定の単位で書き込まれたデータを記憶するデータ領域と、同じデータブロック内の前記データ領域に記憶したデータの再書き込みが前記所定の単位で可能な交替領域とから構成され、
前記それぞれのデータブロックにおいて交替領域への新たな書き込みができない場合、又は新たな書き込みができなくなる可能性がある場合に、そのデータブロック内の有効なデータだけを、前記交替ブロックのデータ領域に再書き込みして移し、その移された交替ブロックをデータブロックとして使用することを特徴とするメモリ制御方法。 - 請求項8記載のメモリ制御方法において、
前記交替ブロックに再書き込み後に、その再書き込みされたデータが記憶されていた前記データブロックは、前記交替ブロックの候補となるように前記データ領域と前記交替領域とが消去されることを特徴とするメモリ制御方法。 - 請求項8記載のメモリ制御方法において、
前記ホストシステムからのデータの書込み要求がある論理アドレスと、それに対応する前記半導体メモリの物理アドレスを格納するテーブルに基づいて、前記書込み要求に対応する物理アドレスを書換え、前記交替領域を管理することを特徴とするメモリ制御方法。 - 請求項8記載のメモリ制御方法において、
前記物理ブロックの各ブロック毎の消去回数を記載することにより、消去回数を一括管理することを可能とすることを特徴とするメモリ制御方法。 - 請求項8記載のメモリ制御方法において、
前記物理ブロックの消去予定のブロックを管理することにより、前記メモリ制御部のマイクロプロセッサの空き時間に、消去処理を行うことを特徴とするメモリ制御方法。 - 請求項8記載のメモリ制御方法において、
次回書込み領域を管理することにより、保持している情報を更新した後に、新たな交替領域にデータの書き込みを行うことを特徴とするメモリ制御方法。 - 請求項8記載のメモリ制御方法において、
前記交替ブロックのデータ領域にデータの書込み後の前記データブロックのうちの有効なデータを移す際に、前記ホストシステムからの論理アドレスの順に最新のデータを並び替えることを特徴とするメモリ制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007286428A JP4829202B2 (ja) | 2007-11-02 | 2007-11-02 | 記憶装置及びメモリ制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007286428A JP4829202B2 (ja) | 2007-11-02 | 2007-11-02 | 記憶装置及びメモリ制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009116465A true JP2009116465A (ja) | 2009-05-28 |
JP4829202B2 JP4829202B2 (ja) | 2011-12-07 |
Family
ID=40783572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007286428A Active JP4829202B2 (ja) | 2007-11-02 | 2007-11-02 | 記憶装置及びメモリ制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4829202B2 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012118892A (ja) * | 2010-12-03 | 2012-06-21 | Yazaki Corp | データ格納装置及びデータ格納方法 |
JPWO2011007511A1 (ja) * | 2009-07-16 | 2012-12-20 | パナソニック株式会社 | メモリコントローラ、不揮発性記憶装置、アクセス装置、不揮発性記憶システム |
DE112010004667T5 (de) | 2009-12-03 | 2013-01-17 | Hitachi, Ltd. | Speichervorrichtung und Speichersteuerung |
US8812767B2 (en) | 2011-03-08 | 2014-08-19 | Fujitsu Semiconductor Limited | Method of controlling memory, memory control circuit, storage device and electronic device |
JP2015166993A (ja) * | 2014-03-04 | 2015-09-24 | ソニー株式会社 | メモリコントローラ、記憶装置、情報処理システム、および、それらにおける制御方法。 |
JP2018147191A (ja) * | 2017-03-03 | 2018-09-20 | 株式会社東芝 | 管理装置、情報処理装置および管理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05282889A (ja) * | 1992-03-31 | 1993-10-29 | Toshiba Corp | 不揮発性半導体メモリ装置 |
WO2002052416A1 (fr) * | 2000-12-27 | 2002-07-04 | Tdk Corporation | Systeme de memoire flash |
US20070061545A1 (en) * | 2003-10-24 | 2007-03-15 | Hyperstone Ag | Method for writing memory sectors in a memory deletable by blocks |
JP2007094571A (ja) * | 2005-09-27 | 2007-04-12 | Tdk Corp | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 |
JP2007517335A (ja) * | 2003-12-30 | 2007-06-28 | サンディスク コーポレイション | 不揮発性メモリおよびブロック管理システムを伴う方法 |
-
2007
- 2007-11-02 JP JP2007286428A patent/JP4829202B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05282889A (ja) * | 1992-03-31 | 1993-10-29 | Toshiba Corp | 不揮発性半導体メモリ装置 |
WO2002052416A1 (fr) * | 2000-12-27 | 2002-07-04 | Tdk Corporation | Systeme de memoire flash |
US20070061545A1 (en) * | 2003-10-24 | 2007-03-15 | Hyperstone Ag | Method for writing memory sectors in a memory deletable by blocks |
JP2007517335A (ja) * | 2003-12-30 | 2007-06-28 | サンディスク コーポレイション | 不揮発性メモリおよびブロック管理システムを伴う方法 |
JP2007094571A (ja) * | 2005-09-27 | 2007-04-12 | Tdk Corp | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2011007511A1 (ja) * | 2009-07-16 | 2012-12-20 | パナソニック株式会社 | メモリコントローラ、不揮発性記憶装置、アクセス装置、不揮発性記憶システム |
US8447922B2 (en) | 2009-07-16 | 2013-05-21 | Panasonic Corporation | Memory controller, nonvolatile storage device, accessing device, and nonvolatile storage system |
DE112010004667T5 (de) | 2009-12-03 | 2013-01-17 | Hitachi, Ltd. | Speichervorrichtung und Speichersteuerung |
US8949515B2 (en) | 2009-12-03 | 2015-02-03 | Hitachi, Ltd. | Storage device and memory controller |
JP2012118892A (ja) * | 2010-12-03 | 2012-06-21 | Yazaki Corp | データ格納装置及びデータ格納方法 |
US8812767B2 (en) | 2011-03-08 | 2014-08-19 | Fujitsu Semiconductor Limited | Method of controlling memory, memory control circuit, storage device and electronic device |
JP2015166993A (ja) * | 2014-03-04 | 2015-09-24 | ソニー株式会社 | メモリコントローラ、記憶装置、情報処理システム、および、それらにおける制御方法。 |
JP2018147191A (ja) * | 2017-03-03 | 2018-09-20 | 株式会社東芝 | 管理装置、情報処理装置および管理方法 |
Also Published As
Publication number | Publication date |
---|---|
JP4829202B2 (ja) | 2011-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8386698B2 (en) | Data accessing method for flash memory and storage system and controller using the same | |
JP5480913B2 (ja) | 記憶装置、およびメモリコントローラ | |
JP5612514B2 (ja) | 不揮発性メモリコントローラ及び不揮発性記憶装置 | |
US8037232B2 (en) | Data protection method for power failure and controller using the same | |
US8117374B2 (en) | Flash memory control devices that support multiple memory mapping schemes and methods of operating same | |
KR101437123B1 (ko) | 메모리 시스템 및 그것의 마모도 관리 방법 | |
US8055873B2 (en) | Data writing method for flash memory, and controller and system using the same | |
TWI385519B (zh) | 資料寫入方法及使用此方法的快閃儲存系統與其控制器 | |
US20070214309A1 (en) | Nonvolatile storage device and data writing method thereof | |
WO2009096180A1 (ja) | メモリコントローラ、不揮発性記憶装置、及び、不揮発性記憶システム | |
WO2014074449A2 (en) | Wear leveling in flash memory devices with trim commands | |
JPWO2006067923A1 (ja) | メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ制御方法 | |
CN110955384A (zh) | 数据储存装置以及非挥发式存储器控制方法 | |
JP2018101411A (ja) | データストレージデバイスおよびその操作方法 | |
JP4829202B2 (ja) | 記憶装置及びメモリ制御方法 | |
JP5570406B2 (ja) | メモリコントローラ、及びデータ記録装置 | |
US8271721B2 (en) | Data writing method and data storage device | |
US20090210612A1 (en) | Memory controller, nonvolatile memory device, and nonvolatile memory system | |
JP4308780B2 (ja) | 半導体メモリ装置、メモリコントローラ及びデータ記録方法 | |
JPH11282765A (ja) | フラッシュメモリを使用した外部記憶装置 | |
CN111949212B (zh) | 基于自定义开放通道ssd的文件系统及文件管理方法 | |
JP5180726B2 (ja) | 記憶装置およびデータ書き込み制御方法 | |
US7899974B2 (en) | Nonvolatile memory, mapping control apparatus and method of the same | |
US20200272561A1 (en) | Data storage device and control method for non-volatile memory | |
US11080203B2 (en) | Data storage device and control method for non-volatile memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100223 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101124 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110121 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110614 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110805 |
|
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: 20110823 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110915 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140922 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4829202 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |