JP6806819B2 - メモリ装置、メモリシステム及びプログラム - Google Patents
メモリ装置、メモリシステム及びプログラム Download PDFInfo
- Publication number
- JP6806819B2 JP6806819B2 JP2019021654A JP2019021654A JP6806819B2 JP 6806819 B2 JP6806819 B2 JP 6806819B2 JP 2019021654 A JP2019021654 A JP 2019021654A JP 2019021654 A JP2019021654 A JP 2019021654A JP 6806819 B2 JP6806819 B2 JP 6806819B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- information
- invalid
- valid
- block
- 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
Links
- 230000015654 memory Effects 0.000 title claims description 159
- 238000012217 deletion Methods 0.000 claims description 74
- 230000037430 deletion Effects 0.000 claims description 74
- 230000010365 information processing Effects 0.000 claims description 51
- 238000013519 translation Methods 0.000 claims description 24
- 238000006243 chemical reaction Methods 0.000 claims description 22
- 230000005540 biological transmission Effects 0.000 claims description 21
- 238000004891 communication Methods 0.000 claims description 5
- 238000000034 method Methods 0.000 description 36
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000012546 transfer Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0871—Allocation or management of cache space
-
- 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/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- 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/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
- G06F2212/1036—Life time enhancement
-
- 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/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- 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/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
-
- 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/22—Employing cache memory using specific memory technology
- G06F2212/222—Non-volatile 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/31—Providing disk cache in a specific location of a storage system
- G06F2212/311—In host system
-
- 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/7201—Logical to physical mapping or translation of blocks or pages
-
- 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/7205—Cleaning, compaction, garbage collection, erase control
-
- 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/7209—Validity control, e.g. using flags, time stamps or sequence numbers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本実施形態は、情報処理装置とメモリ装置との間のデータ及び情報の送信及び受信について説明する。
本実施形態においては、不揮発性キャッシュメモリ4を備えるキャッシュメモリ装置について説明する。
て、書き込み部141は、ブロックグループBG4にデータを書き込む。
本実施形態においては、上記第1及び第2の実施形態で説明した情報処理装置17とSSD5とを含む情報処理システム35の詳細構成について説明する。
ーラ、43B、43F…CPU、44…暗号化/復号化部、45…LUT、46…DDRC、47…DRAM、48…DMAC、49…ECC、50…NANDC、100…ストレージシステム、112、114、122、124、132、134、142…判断部、115、125、136、144…消去部、BG1〜BG4…ブロックグループ、WB…ライトバッファ、RB…リードバッファ、RZ…ランダマイザ。
Claims (6)
- 情報処理装置と通信するメモリ装置において、
複数の消去単位エリアを含み、前記消去単位エリアは複数の書き込み単位エリアを含む、不揮発性メモリと、
前記不揮発性メモリに書き込まれる書き込みデータの論理アドレスと、前記不揮発性メモリにおける前記書き込みデータの書き込み位置を示す物理アドレスとを関係付けたアドレス変換情報を生成するアドレス変換部と、
前記書き込みデータを、前記物理アドレスの示す前記書き込み位置へ書き込む書き込み部と、
前記アドレス変換情報に基づいて、前記複数の消去単位エリアに書き込まれているデータが有効データであるか無効データであるかを示す有効/無効情報を生成する生成部と、
前記複数の消去単位エリアから、前記有効/無効情報と、前記メモリ装置内に格納されておりデータが削除対象か否かを示す情報とに基づいて、前記無効データと前記削除対象のデータとの数が最も多い消去単位エリア、又は、前記無効データと前記削除対象のデータとの数が所定の値より多い消去単位エリアを、ガベージコレクション対象の消去単位エリアとして選択する選択部と、
前記有効/無効情報に基づいて、前記ガベージコレクション対象の消去単位エリアに書き込まれている前記有効データを示す論理アドレスを含むエリア情報を生成し、前記エリア情報を前記情報処理装置に送信する送信部と、
前記エリア情報の送信後、前記情報処理装置から、前記ガベージコレクション対象の消去単位エリアの識別情報と、前記ガベージコレクション対象の消去単位エリアに書き込まれている削除対象データを示す論理アドレスとを関係付けた情報を含む削除情報を受信する受信部と、
前記有効/無効情報と前記削除情報とに基づいて、前記ガベージコレクション対象の消去単位エリアに対して、前記無効データと前記削除対象データを除外し、前記有効データであり、かつ、前記削除対象データではないデータのガベージコレクションを実行するガベージコレクション部と、
を具備する、
メモリ装置。 - 前記データが削除対象か否かを示す情報は、前記複数の消去単位エリアの識別情報と前記複数の消去単位エリアのそれぞれに書き込まれている前記削除対象のデータを示す論理アドレスとを関係付けた情報を含む、請求項1のメモリ装置。
- 前記有効/無効情報は、前記消去単位エリアの識別情報と、前記消去単位エリアに書き込まれている前記有効データ又は前記無効データを示す論理アドレスとを関係付けた情報を含む、請求項1又は請求項2のメモリ装置。
- 前記有効データは、前記不揮発性メモリに書き込まれているデータの更新が発生した場合の更新後のデータであり、
前記無効データは、前記更新が発生した場合の更新前のデータであり、
前記削除対象データ及び前記削除対象のデータは、削除命令の発生したデータである、
請求項1乃至請求項3のいずれか1項のメモリ装置。 - 情報処理装置と通信するメモリシステムにおいて、
複数の消去単位エリアを含み、前記消去単位エリアは複数の書き込み単位エリアを含む、不揮発性メモリと、
前記情報処理装置と通信し、前記不揮発性メモリを制御するコントローラと、
を具備し、
前記コントローラは、
前記不揮発性メモリに書き込まれる書き込みデータの論理アドレスと、前記不揮発性メモリにおける前記書き込みデータの書き込み位置を示す物理アドレスとを関係付けたアドレス変換情報を生成し、
前記書き込みデータを、前記物理アドレスの示す前記書き込み位置へ書き込み、
前記アドレス変換情報に基づいて、前記複数の消去単位エリアに書き込まれているデータが有効データであるか無効データであるかを示す有効/無効情報を生成し、
前記複数の消去単位エリアから、前記有効/無効情報と、前記メモリシステム内に格納されておりデータが削除対象か否かを示す情報とに基づいて、前記無効データと前記削除対象のデータとの数が最も多い消去単位エリア、又は、前記無効データと前記削除対象のデータとの数が所定の値より多い消去単位エリアを、ガベージコレクション対象の消去単位エリアとして選択し、
前記有効/無効情報に基づいて、前記ガベージコレクション対象の消去単位エリアに書き込まれている前記有効データを示す論理アドレスを含むエリア情報を生成して前記エリア情報を前記情報処理装置に送信し、
前記エリア情報の送信後、前記情報処理装置から、前記ガベージコレクション対象の消去単位エリアの識別情報と、前記ガベージコレクション対象の消去単位エリアに書き込まれている削除対象データを示す論理アドレスとを関係付けた情報を含む削除情報を受信し、
前記有効/無効情報と前記削除情報とに基づいて、前記ガベージコレクション対象の消去単位エリアに対して、前記無効データと前記削除対象データを除外し、前記有効データであり、かつ、前記削除対象データではないデータのガベージコレクションを実行する、
メモリシステム。 - 情報処理装置と通信し、複数の消去単位エリアを含み、前記消去単位エリアは複数の書き込み単位エリアを含む不揮発性メモリを制御するコンピュータを、
前記不揮発性メモリに書き込まれる書き込みデータの論理アドレスと、前記不揮発性メモリにおける前記書き込みデータの書き込み位置を示す物理アドレスとを関係付けたアドレス変換情報を生成するアドレス変換部と、
前記書き込みデータを、前記物理アドレスの示す前記書き込み位置へ書き込む書き込み部と、
前記アドレス変換情報に基づいて、前記複数の消去単位エリアに書き込まれているデータが有効データであるか無効データであるかを示す有効/無効情報を生成する生成部と、
前記複数の消去単位エリアから、前記有効/無効情報と、前記コンピュータのメモリ装置内に格納されておりデータが削除対象か否かを示す情報とに基づいて、前記無効データと前記削除対象のデータとの数が最も多い消去単位エリア、又は、前記無効データと前記削除対象のデータとの数が所定の値より多い消去単位エリアを、ガベージコレクション対象の消去単位エリアとして選択する選択部と、
前記有効/無効情報に基づいて、前記ガベージコレクション対象の消去単位エリアに書き込まれている前記有効データを示す論理アドレスを含むエリア情報を生成し、前記エリア情報を前記情報処理装置に送信する送信部と、
前記エリア情報の送信後、前記情報処理装置から、前記ガベージコレクション対象の消去単位エリアの識別情報と、前記ガベージコレクション対象の消去単位エリアに書き込まれている削除対象データを示す論理アドレスとを関係付けた情報を含む削除情報を受信する受信部と、
前記有効/無効情報と前記削除情報とに基づいて、前記ガベージコレクション対象の消去単位エリアに対して、前記無効データと前記削除対象データを除外し、前記有効データであり、かつ、前記削除対象データではないデータのガベージコレクションを実行するガベージコレクション部と、
して機能させるためのプログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462097532P | 2014-12-29 | 2014-12-29 | |
US62/097,532 | 2014-12-29 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015038998A Division JP6482322B2 (ja) | 2014-12-29 | 2015-02-27 | メモリ装置及びプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020199507A Division JP7030942B2 (ja) | 2014-12-29 | 2020-12-01 | メモリ装置及びその制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019106197A JP2019106197A (ja) | 2019-06-27 |
JP6806819B2 true JP6806819B2 (ja) | 2021-01-06 |
Family
ID=56359595
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015038998A Active JP6482322B2 (ja) | 2014-12-29 | 2015-02-27 | メモリ装置及びプログラム |
JP2019021654A Active JP6806819B2 (ja) | 2014-12-29 | 2019-02-08 | メモリ装置、メモリシステム及びプログラム |
JP2020199507A Active JP7030942B2 (ja) | 2014-12-29 | 2020-12-01 | メモリ装置及びその制御方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015038998A Active JP6482322B2 (ja) | 2014-12-29 | 2015-02-27 | メモリ装置及びプログラム |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020199507A Active JP7030942B2 (ja) | 2014-12-29 | 2020-12-01 | メモリ装置及びその制御方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230342294A1 (ja) |
JP (3) | JP6482322B2 (ja) |
CN (1) | CN106205707B (ja) |
TW (1) | TW201624490A (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102530583B1 (ko) * | 2017-10-31 | 2023-05-09 | 삼성전자주식회사 | 저장 장치 및 메모리 시스템 |
JP7102166B2 (ja) * | 2018-02-23 | 2022-07-19 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法及びプログラム |
US11836035B2 (en) | 2021-08-06 | 2023-12-05 | Western Digital Technologies, Inc. | Data storage device with data verification circuitry |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008057557A2 (en) * | 2006-11-06 | 2008-05-15 | Rambus Inc. | Memory system supporting nonvolatile physical memory |
JP2009252255A (ja) * | 2008-04-01 | 2009-10-29 | Renesas Technology Corp | 不揮発性半導体記憶装置 |
US8977805B2 (en) * | 2009-03-25 | 2015-03-10 | Apple Inc. | Host-assisted compaction of memory blocks |
JP2011090496A (ja) * | 2009-10-22 | 2011-05-06 | Hitachi Ltd | 半導体記憶装置および制御方法 |
JP2011128998A (ja) * | 2009-12-18 | 2011-06-30 | Toshiba Corp | 半導体記憶装置 |
US9026716B2 (en) * | 2010-05-12 | 2015-05-05 | Western Digital Technologies, Inc. | System and method for managing garbage collection in solid-state memory |
JP2012123499A (ja) * | 2010-12-07 | 2012-06-28 | Toshiba Corp | メモリシステム |
JP5687648B2 (ja) * | 2012-03-15 | 2015-03-18 | 株式会社東芝 | 半導体記憶装置およびプログラム |
CN104583977B (zh) * | 2012-08-23 | 2017-07-14 | 苹果公司 | 主机辅助的存储块的压缩 |
KR102053865B1 (ko) * | 2013-03-15 | 2019-12-09 | 삼성전자주식회사 | 호스트-주도 가비지 컬렉션 방법과 상기 방법을 수행할 수 있는 시스템 |
JP6008325B2 (ja) * | 2013-05-17 | 2016-10-19 | 学校法人 中央大学 | データ記憶システムおよびその制御方法 |
-
2015
- 2015-02-27 JP JP2015038998A patent/JP6482322B2/ja active Active
- 2015-05-11 TW TW104114943A patent/TW201624490A/zh unknown
- 2015-05-12 CN CN201510239421.4A patent/CN106205707B/zh active Active
-
2019
- 2019-02-08 JP JP2019021654A patent/JP6806819B2/ja active Active
-
2020
- 2020-12-01 JP JP2020199507A patent/JP7030942B2/ja active Active
-
2023
- 2023-06-27 US US18/215,147 patent/US20230342294A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
CN106205707A (zh) | 2016-12-07 |
JP2021047889A (ja) | 2021-03-25 |
JP2016126738A (ja) | 2016-07-11 |
JP2019106197A (ja) | 2019-06-27 |
TW201624490A (zh) | 2016-07-01 |
CN106205707B (zh) | 2019-10-22 |
JP7030942B2 (ja) | 2022-03-07 |
US20230342294A1 (en) | 2023-10-26 |
JP6482322B2 (ja) | 2019-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11893238B2 (en) | Method of controlling nonvolatile semiconductor memory | |
JP6538940B2 (ja) | 不揮発性メモリの制御方法 | |
JP7030942B2 (ja) | メモリ装置及びその制御方法 | |
US11726906B2 (en) | Memory device and non-transitory computer readable recording medium | |
US20200364157A1 (en) | Apparatus and method for transmitting map data in memory system | |
JP6689325B2 (ja) | メモリ装置の制御方法 | |
JP6595654B2 (ja) | 情報処理装置 | |
CN111290975A (zh) | 使用统一缓存处理读命令与预读命令的方法及其存储设备 | |
CN111290974A (zh) | 用于存储设备的缓存淘汰方法与存储设备 | |
US11347637B2 (en) | Memory system and non-transitory computer readable recording medium | |
US10331551B2 (en) | Information processing device and non-transitory computer readable recording medium for excluding data from garbage collection | |
US10474569B2 (en) | Information processing device including nonvolatile cache memory and processor | |
JP6313242B2 (ja) | メモリシステム及びプログラム | |
JP6276208B2 (ja) | メモリシステム及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190208 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20191029 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191119 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200116 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200804 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200813 |
|
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: 20201110 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20201204 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6806819 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |