JP2015088121A - メモリシステムおよび方法 - Google Patents
メモリシステムおよび方法 Download PDFInfo
- Publication number
- JP2015088121A JP2015088121A JP2013228593A JP2013228593A JP2015088121A JP 2015088121 A JP2015088121 A JP 2015088121A JP 2013228593 A JP2013228593 A JP 2013228593A JP 2013228593 A JP2013228593 A JP 2013228593A JP 2015088121 A JP2015088121 A JP 2015088121A
- Authority
- JP
- Japan
- Prior art keywords
- block
- blocks
- mode
- data
- written
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7207—Details relating to flash memory management management of metadata or control data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
【解決手段】メモリシステムは、不揮発性のメモリと、コントローラとを備える。メモリは、第1モードでデータが書き込まれる複数の第1ブロックおよび第1モードまたは第1モードよりも単位体積当たりの記憶容量が大きい第2モードでデータが書き込まれる複数の第2ブロックを備える。複数の第1ブロックは、有効データを記憶していない第3ブロックを備え、複数の第2ブロックは、有効データを記憶していない第4ブロックを備える。コントローラは、ホストから書き込み要求されたデータを、第3ブロックの数が第1のしきい値よりも小さい場合には第3ブロックに書込み、第3ブロックの数が第1のしきい値よりも大きい場合には第4ブロックに書き込む。
【選択図】図7
Description
第1の実施形態で使用するNANDフラッシュメモリは、例えば、データ書込みの動作モードを変更可能なフラッシュメモリ112である。動作モードとしては、第1モードと第2モードとを用いる。第1モードは、第2モードよりも同一の記憶領域に書込む情報量が少ない(つまり、第2モードは、第1モードよりも同一の記憶領域に書込む情報量が多い)。例えば、第2モードは、第1モードよりも1つのセルに書込めるビット数が大きなモードである。さらに詳細例としては、第1モードは、SLCモードもしくはMLCモードである。第2モードは、第1モードよりも1つのセルに書込めるビット数が大きなMLCモードである。以下の説明では、第1モードをSLCモードとし、第2モードをMLCモードとして説明する。ただし、MLCモードは、1つに限らず、複数であってもよい。すなわち、4値モードと8値モードまたはそれ以上の記録値のモードとで変更可能であってもよい。
第2の実施形態においては、メモリシステム1は、ホスト機器150からの書込み要求に付帯された情報(付帯情報)に応じて、書込み要求されたデータを第1ブロック群に書込むか、第2ブロック群に書込むかを決めることができる。また、メモリシステム1は、付帯情報に応じて、第2ブロック群に、SLCモードで書き込むか、MLCモードで書き込むかを決めることができる。なお、付帯情報とは、例えば更新頻度に応じたパラメータであってよい。更新頻度に応じたパラメータは、例えば特許文献2に開示されているように、データの区分(txt領域に配置されたデータ、stack領域に配置されたデータ、heap領域に配置されたデータ、data領域に配置されたデータ)に応じて設定されてもよい。また、メモリシステム1は、更新頻度「高」の旨の付帯情報を伴って書込み要求されたデータを第1ブロック群に、更新頻度「低」の旨の付帯情報を伴って書込み要求されたデータを第2ブロック群に書込んでもよい。また、メモリシステム1は、第2ブロック群に書込む際、更新頻度「高」の旨の付帯情報を伴って書込み要求されたデータをSLCモードで、更新頻度「低」の旨の付帯情報を伴って書込み要求されたデータをMLCモードで書込んでもよい。
Claims (20)
- 第1モードでデータが書き込まれる複数の第1ブロックおよび第1モードまたは前記第1モードよりもメモリセル当たりの記憶容量が大きい第2モードでデータが書き込まれる複数の第2ブロックを備える複数のメモリセルからなる不揮発性のメモリと、
コントローラと、
を備え、
前記複数の第1ブロックは、有効データを記憶していない第3ブロックを備え、
前記複数の第2ブロックは、有効データを記憶していない第4ブロックを備え、
前記コントローラは、ホストから書き込み要求されたデータを、
前記第3ブロックの数が第1のしきい値よりも大きい場合には前記第3ブロックに書込み、
前記第3ブロックの数が第1のしきい値よりも小さい場合には前記第4ブロックに書き込む、
ことを特徴とするメモリシステム。 - 前記コントローラは、
前記第4ブロックの数が第2のしきい値よりも小さい場合には、前記ホストから書き込み要求されたデータを、前記第4ブロックに第2モードで書き込む、
ことを特徴とする請求項1に記載のメモリシステム。 - 前記複数の第2ブロックは、第1モードで書き込まれたデータを記憶する第5ブロックを備え、
前記コントローラは、前記第5ブロックの数が第3のしきい値よりも大きい場合には、前記ホストから書込み要求されたデータを、前記第4ブロックに第2モードで書き込む、
ことを特徴とする請求項1または請求項2に記載のメモリシステム。 - 前記複数の第1ブロックは、第1モードで書き込まれたデータを記憶する第6ブロックを備え、
前記コントローラは、前記第3ブロックの数が前記第1のしきい値よりも大きい第4のしきい値よりも小さい場合、第1の転記処理を実行し、
前記第1の転記処理は、前記第6ブロックのうちの少なくとも1つを選択し、前記選択した第6ブロックに記憶されている有効データを前記第4ブロックに転記するとともに前記選択した第6ブロックに記憶されている有効データを無効化する、処理である、
ことを特徴とする請求項1乃至請求項3の何れか一項に記載のメモリシステム。 - 前記コントローラは、
前記選択した第6ブロックに記憶されている有効データを転記する際、前記選択した第6ブロックに記憶されている有効データを前記第4ブロックに第2モードで書き込む、
ことを特徴とする請求項4に記載のメモリシステム。 - 前記ホストと通信するためのインタフェース部をさらに備え、
前記コントローラは、前記インタフェース部が非通信中となってからの経過時間を計測し、前記経過時間が所定時間を越えた場合、第2の転記処理を開始し、
前記第2の転記処理は、前記第5ブロックまたは前記6ブロックのうちの少なくとも1つを選択し、前記選択したブロックに記憶されている有効データを前記第3ブロックまたは前記第4ブロックに転記するとともに前記選択したブロックに記憶されている有効データを無効化する、処理である、
ことを特徴とする請求項1乃至請求項5の何れか一項に記載のメモリシステム。 - 前記コントローラは、前記第3ブロックの数、前記第4ブロックの数、または前記第3ブロックの数と前記第4ブロックの数の合計が、第5のしきい値よりも小さい場合、前記第2の転記処理を開始する、
ことを特徴とする請求項6に記載のメモリシステム。 - 前記第5ブロックの数が前記第3のしきい値と等しい場合の前記メモリの総容量が前記ホストに対する表示容量より大きくなるように前記第3のしきい値は予め設定される、
ことを特徴とする請求項3に記載のメモリシステム。 - 第1モードでデータが書き込まれる複数の第1ブロックおよび前記第1モードまたは前記第1モードよりも単位体積当たりの記憶容量が大きい第2モードでデータが書き込まれる複数の第2ブロックを備える不揮発性のメモリと、
コントローラと、
ホストからの書込み要求を受信するインタフェース部と、
を備え、
前記書込み要求は、付帯情報を備え、
前記複数の第1ブロックは、有効データを記憶していない第3ブロックを備え、
前記複数の第2ブロックは、有効データを記憶していない第4ブロックを備え、
前記コントローラは、ホストから書き込み要求されたデータを、前記第3ブロックまたは前記第4ブロックのうちの前記付帯情報に応じたブロックに書き込む、
ことを特徴とするメモリシステム。 - 前記コントローラは、前記ホストから書き込み要求されたデータを前記第4ブロックに書き込む際、前記第1モードまたは前記第2モードのうちの前記付帯情報に応じたモードで書き込む、
ことを特徴とする請求項9に記載のメモリシステム。 - 複数のブロックを備える不揮発性のメモリをコントローラが制御する方法であって、前記複数のブロックは、第1モードでデータが書き込まれる複数の第1ブロックと、第1モードまたは第2モードでデータが書き込まれる複数の第2ブロックとを備え、
前記コントローラが、ホストからデータの書き込み要求を受信する受信ステップと、
前記コントローラが、前記複数の第1ブロックのうちの有効データを記憶していない第3ブロックの数と第1のしきい値とを比較する第1比較ステップと、
前記第3ブロックの数が前記第1のしきい値よりも大きい場合には、前記コントローラが、前記ホストから書込み要求されたデータを前記第3ブロックに書込み、前記第3ブロックの数が前記第1のしきい値よりも小さい場合には、前記コントローラが、前記ホストから書込み要求されたデータを前記複数の第2ブロックのうちの有効データを記憶していない第4ブロックに書き込む、第1書込みステップと、
を備えることを特徴とする方法。 - 前記第1書込みステップは、
前記コントローラが、前記第4ブロックの数と第2のしきい値とを比較する第2ステップと、
前記第4ブロックの数が第2のしきい値よりも小さい場合には、前記コントローラが、前記ホストから書き込み要求されたデータを前記第4ブロックに第2モードで書き込む、第2書込みステップと、
を備えることを特徴とする請求項11に記載の方法。 - 前記複数の第2ブロックは、第1モードで書き込まれたデータを記憶する第5ブロックを備え、
前記第1書込みステップは、
前記コントローラが、前記第5ブロックの数と第3のしきい値とを比較する第3ステップと、
前記第5ブロックの数が第3のしきい値よりも大きい場合には、前記コントローラが、前記ホストから書込み要求されたデータを前記第4ブロックに第2モードで書き込む、第3書込みステップと、
を備えることを特徴とする請求項11または請求項12に記載の方法。 - 前記複数の第1ブロックは、第1モードで書き込まれたデータを記憶する第6ブロックを備え、
前記コントローラが、前記第3ブロックの数と前記第1のしきい値よりも大きい第4のしきい値とを比較する第4比較ステップと、
前記第3ブロックの数が前記第4のしきい値よりも小さい場合、前記コントローラが、前記第6ブロックのうちの少なくとも1つを選択し、前記選択した第6ブロックに記憶されている有効データを前記第4ブロックに転記するとともに前記選択した第6ブロックに記憶されている有効データを無効化する、第1転送ステップと、
をさらに備えることを特徴とする請求項11乃至請求項13の何れか一項に記載の方法。 - 前記第1転送ステップは、
前記コントローラが、前記選択した第6ブロックに記憶されている有効データを転記する際、前記選択した第6ブロックに記憶されている有効データを前記第4ブロックに第2モードで書き込む、第3書込みステップ
を備えることを特徴とする請求項14に記載の方法。 - 前記コントローラが、前記ホストとの間が非通信中となってからの経過時間を計測するとともに前記経過時間と所定時間とを比較する第5比較ステップと、
前記経過時間が所定時間を越えた場合、前記コントローラが、前記第5ブロックまたは前記6ブロックのうちの少なくとも1つを選択し、前記選択したブロックに記憶されている有効データを前記第3ブロックまたは前記第4ブロックに転記するとともに前記選択したブロックに記憶されている有効データを無効化する、第2転送ステップと、
をさらに備えることを特徴とする請求項11乃至請求項15の何れか一項に記載の方法。 - 前記コントローラが、前記第3ブロックの数、前記第4ブロックの数、または前記第3ブロックの数および前記第4ブロックの数の合計と第5のしきい値を比較する第6比較ステップをさらに備え、
前記合計が前記第5のしきい値よりも小さい場合、前記コントローラが前記第2転送ステップを実行する、
ことを特徴とする請求項16に記載の方法。 - 前記第5ブロックの数が前記第3のしきい値と等しい場合の前記メモリの総容量が前記ホストに対する表示容量より大きくなるように前記第3のしきい値は予め設定される、
ことを特徴とする請求項13に記載の方法。 - 複数のブロックを備える不揮発性のメモリをコントローラが制御する方法であって、前記複数のブロックは、第1モードでデータが書き込まれる複数の第1ブロックと、第1モードまたは第2モードでデータが書き込まれる複数の第2ブロックとを備え、
前記コントローラが、ホストからデータの書き込み要求を付帯情報とともに受信する受信ステップと、
前記コントローラが、前記複数の第1ブロックのうちの有効データを記憶していない第3ブロックと、前記複数の第2ブロックのうちの有効データを記憶していない第4ブロックと、のうちの1つを前記付帯情報に応じて選択する選択ステップと、
前記コントローラが、前記ホストから書込み要求されたデータを前記選択したブロックに書き込む第1書込みステップと、
を備えることを特徴とする方法。 - 前記第1書込みステップは、
前記コントローラが、前記第1モードおよび前記第2モードのうちの1つを前記付帯情報に応じて選択する第2選択ステップと、
前記コントローラが、前記ホストから書き込み要求されたデータを前記選択したモードで前記選択したブロックに書き込む、第2書込みステップと、
を備えることを特徴とする請求項19に記載の方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013228593A JP6139381B2 (ja) | 2013-11-01 | 2013-11-01 | メモリシステムおよび方法 |
US14/206,605 US20150127886A1 (en) | 2013-11-01 | 2014-03-12 | Memory system and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013228593A JP6139381B2 (ja) | 2013-11-01 | 2013-11-01 | メモリシステムおよび方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015088121A true JP2015088121A (ja) | 2015-05-07 |
JP6139381B2 JP6139381B2 (ja) | 2017-05-31 |
Family
ID=53007947
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013228593A Active JP6139381B2 (ja) | 2013-11-01 | 2013-11-01 | メモリシステムおよび方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20150127886A1 (ja) |
JP (1) | JP6139381B2 (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109597571A (zh) * | 2018-11-15 | 2019-04-09 | 金蝶软件(中国)有限公司 | 数据存储方法、数据读取方法、装置和计算机设备 |
JP2019057193A (ja) * | 2017-09-22 | 2019-04-11 | 東芝メモリ株式会社 | メモリシステム |
JP2019191909A (ja) * | 2018-04-25 | 2019-10-31 | 東芝メモリ株式会社 | メモリシステムおよび制御方法 |
JP2022121654A (ja) * | 2018-04-25 | 2022-08-19 | キオクシア株式会社 | メモリシステム |
JP2022538587A (ja) * | 2019-07-01 | 2022-09-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データ・ストレージ・システムにおけるブロック・モード・トグリング |
JP7451809B2 (ja) | 2022-02-17 | 2024-03-18 | キオクシア株式会社 | 方法 |
JP7486534B2 (ja) | 2019-07-01 | 2024-05-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ストレージ・システムにおけるブロック・プール・サイズの適合 |
JP7490469B2 (ja) | 2020-06-25 | 2024-05-27 | キオクシア株式会社 | ストレージデバイス、ストレージシステム及び制御方法 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106959818B (zh) * | 2016-01-11 | 2020-03-31 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元与存储器储存装置 |
JP7095568B2 (ja) * | 2018-11-21 | 2022-07-05 | Tdk株式会社 | メモリコントローラ及びこれを備えるフラッシュメモリシステム |
KR102593541B1 (ko) * | 2018-11-29 | 2023-10-25 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작방법 |
US20220188242A1 (en) * | 2020-12-11 | 2022-06-16 | Micron Technology, Inc. | Multi-tier cache for a memory system |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008276330A (ja) * | 2007-04-25 | 2008-11-13 | Toshiba Corp | メモリ制御装置及び方法 |
JP2012068986A (ja) * | 2010-09-24 | 2012-04-05 | Toshiba Corp | メモリシステム |
US20130238833A1 (en) * | 2012-03-08 | 2013-09-12 | Apple Inc. | Heuristics for programming data in a non-volatile memory |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090043831A1 (en) * | 2007-08-11 | 2009-02-12 | Mcm Portfolio Llc | Smart Solid State Drive And Method For Handling Critical Files |
US8407400B2 (en) * | 2008-11-12 | 2013-03-26 | Micron Technology, Inc. | Dynamic SLC/MLC blocks allocations for non-volatile memory |
US20100169540A1 (en) * | 2008-12-30 | 2010-07-01 | Sinclair Alan W | Method and apparatus for relocating selected data between flash partitions in a memory device |
-
2013
- 2013-11-01 JP JP2013228593A patent/JP6139381B2/ja active Active
-
2014
- 2014-03-12 US US14/206,605 patent/US20150127886A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008276330A (ja) * | 2007-04-25 | 2008-11-13 | Toshiba Corp | メモリ制御装置及び方法 |
JP2012068986A (ja) * | 2010-09-24 | 2012-04-05 | Toshiba Corp | メモリシステム |
US20130238833A1 (en) * | 2012-03-08 | 2013-09-12 | Apple Inc. | Heuristics for programming data in a non-volatile memory |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019057193A (ja) * | 2017-09-22 | 2019-04-11 | 東芝メモリ株式会社 | メモリシステム |
JP7030463B2 (ja) | 2017-09-22 | 2022-03-07 | キオクシア株式会社 | メモリシステム |
JP2019191909A (ja) * | 2018-04-25 | 2019-10-31 | 東芝メモリ株式会社 | メモリシステムおよび制御方法 |
JP2022121654A (ja) * | 2018-04-25 | 2022-08-19 | キオクシア株式会社 | メモリシステム |
US11543997B2 (en) | 2018-04-25 | 2023-01-03 | Kioxia Corporation | Memory system and method for controlling nonvolatile memory |
US11861218B2 (en) | 2018-04-25 | 2024-01-02 | Kioxia Corporation | Memory system and method for controlling nonvolatile memory |
CN109597571A (zh) * | 2018-11-15 | 2019-04-09 | 金蝶软件(中国)有限公司 | 数据存储方法、数据读取方法、装置和计算机设备 |
JP2022538587A (ja) * | 2019-07-01 | 2022-09-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データ・ストレージ・システムにおけるブロック・モード・トグリング |
JP7448569B2 (ja) | 2019-07-01 | 2024-03-12 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データ・ストレージ・システムにおけるブロック・モード・トグリング |
JP7486534B2 (ja) | 2019-07-01 | 2024-05-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ストレージ・システムにおけるブロック・プール・サイズの適合 |
JP7490469B2 (ja) | 2020-06-25 | 2024-05-27 | キオクシア株式会社 | ストレージデバイス、ストレージシステム及び制御方法 |
JP7451809B2 (ja) | 2022-02-17 | 2024-03-18 | キオクシア株式会社 | 方法 |
Also Published As
Publication number | Publication date |
---|---|
JP6139381B2 (ja) | 2017-05-31 |
US20150127886A1 (en) | 2015-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6139381B2 (ja) | メモリシステムおよび方法 | |
US11893238B2 (en) | Method of controlling nonvolatile semiconductor memory | |
JP5907255B2 (ja) | Lsb及びmsbページにおける選択的データ記憶 | |
US11747989B2 (en) | Memory system and method for controlling nonvolatile memory | |
US11216368B2 (en) | Memory system for garbage collection using page offsets, invalid offset ratio, sequential ratio, and logical address prediction | |
US11436136B2 (en) | Memory system including non-volatile buffer and control method thereof | |
US8174912B2 (en) | Systems and methods for circular buffering control in a memory device | |
US20130212319A1 (en) | Memory system and method of controlling memory system | |
US10936203B2 (en) | Memory storage device and system employing nonvolatile read/write buffers | |
US11334272B2 (en) | Memory system and operating method thereof | |
US11422930B2 (en) | Controller, memory system and data processing system | |
CN110908595B (zh) | 存储装置及信息处理系统 | |
JP2019148913A (ja) | メモリシステム | |
TWI808010B (zh) | 資料處理方法及對應之資料儲存裝置 | |
US20240103733A1 (en) | Data processing method for efficiently processing data stored in the memory device by splitting data flow and the associated data storage device | |
EP4287028A1 (en) | Storage device providing high purge performance and memory block management method thereof | |
US20230315294A1 (en) | Memory system and method for controlling nonvolatile memory | |
CN117149052A (zh) | 提供高清除性能的存储设备及其存储块管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20151102 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160217 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161125 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161213 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161222 |
|
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: 20170328 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170427 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6139381 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |