JP6482322B2 - メモリ装置及びプログラム - Google Patents
メモリ装置及びプログラム Download PDFInfo
- Publication number
- JP6482322B2 JP6482322B2 JP2015038998A JP2015038998A JP6482322B2 JP 6482322 B2 JP6482322 B2 JP 6482322B2 JP 2015038998 A JP2015038998 A JP 2015038998A JP 2015038998 A JP2015038998 A JP 2015038998A JP 6482322 B2 JP6482322 B2 JP 6482322B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- information
- unit
- block
- invalid
- 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 claims description 154
- 238000012217 deletion Methods 0.000 claims description 86
- 230000037430 deletion Effects 0.000 claims description 86
- 230000010365 information processing Effects 0.000 claims description 48
- 238000006243 chemical reaction Methods 0.000 claims description 43
- 230000005540 biological transmission Effects 0.000 claims description 22
- 230000006870 function Effects 0.000 claims description 6
- 238000000034 method Methods 0.000 description 35
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 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
- 230000002035 prolonged effect 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
Description
本実施形態は、情報処理装置とメモリ装置との間のデータ及び情報の送信及び受信について説明する。
本実施形態においては、不揮発性キャッシュメモリ4を備えるキャッシュメモリ装置について説明する。
本実施形態においては、上記第1及び第2の実施形態で説明した情報処理装置17とSSD5とを含む情報処理システム35の詳細構成について説明する。
Claims (14)
- 情報処理装置と通信するメモリ装置において、
複数の消去単位エリアを含み、前記消去単位エリアは複数の書き込み単位エリアを含む、不揮発性メモリと、
前記不揮発性メモリに書き込まれる書き込みデータの論理アドレスと、前記不揮発性メモリにおける前記書き込みデータの書き込み位置を示す物理アドレスとを関係付けたアドレス変換情報を生成するアドレス変換部と、
前記書き込みデータを、前記物理アドレスの示す前記書き込み位置へ書き込む書き込み部と、
前記アドレス変換情報に基づいて、前記複数の消去単位エリアに書き込まれているデータが有効データであるか無効データであるかを示す有効/無効情報を生成する生成部と、
前記複数の消去単位エリアから、ガベージコレクション対象の消去単位エリアを選択する選択部と、
前記有効/無効情報に基づいて、前記ガベージコレクション対象の消去単位エリアに書き込まれている前記有効データを示す論理アドレスを含むエリア情報を生成し、前記エリア情報を前記情報処理装置に送信する送信部と、
前記エリア情報の送信後、前記情報処理装置から、前記ガベージコレクション対象の消去単位エリアにおける削除対象データを示す論理アドレスを含む削除情報を受信する受信部と、
前記有効/無効情報と前記削除情報とに基づいて、前記ガベージコレクション対象の消去単位エリアに対して、前記無効データと前記削除対象データを除外し、前記有効データであり、かつ、前記削除対象データではないデータのガベージコレクションを実行するガベージコレクション部と、
を具備するメモリ装置。 - 前記有効/無効情報は、前記消去単位エリアの識別情報と、前記消去単位エリアに書き込まれている前記有効データ又は前記無効データを示す論理アドレスとを関係付けた情報を含み、
前記削除情報は、前記消去単位エリアの識別情報と、前記消去単位エリアに書き込まれている前記削除対象データを示す前記論理アドレスとを関係付けた情報を含む、
請求項1に記載のメモリ装置。 - 前記有効データは、前記不揮発性メモリに書き込まれているデータの更新が発生した場合の更新後のデータであり、
前記無効データは、前記更新が発生した場合の更新前のデータであり、
前記削除対象データは、削除命令の発生したデータである、
請求項1又は請求項2に記載のメモリ装置。 - 前記選択部は、前記複数の消去単位エリアのうち書き込み時間の最も古い消去単位エリアを、前記ガベージコレクション対象の消去単位エリアとして選択する、
請求項1に記載のメモリ装置。 - 前記選択部は、前記複数の消去単位エリアからランダムに前記ガベージコレクション対象の消去単位エリアを選択する、
請求項1に記載のメモリ装置。 - 前記選択部は、前記有効/無効情報に基づいて、前記複数の消去単位エリアのうち、前記無効データの数が最も多い消去単位エリア、又は、前記無効データの数が所定の値より多い消去単位エリアを、前記ガベージコレクション対象の消去単位エリアとして選択する、
請求項1に記載のメモリ装置。 - 前記削除情報を格納する揮発性メモリをさらに具備する請求項1乃至請求項6のいずれか1項に記載のメモリ装置。
- 複数の消去単位エリアを含む不揮発性メモリと、
情報処理装置と通信し、前記不揮発性メモリを制御するコントローラと、
を具備し、
前記コントローラは、前記複数の消去単位エリアから、ガベージコレクション対象の消去単位エリアを選択し、
ガベージコレクションを実行する前に、前記不揮発性メモリにおける前記ガベージコレクション対象の消去単位エリア内の有効データを示す第1の情報を前記情報処理装置に送信し、
前記第1の情報の送信後、前記情報処理装置から前記ガベージコレクション対象の消去単位エリア内の削除対象データを示す第2の情報を受信する、
メモリ装置。 - 前記コントローラは、前記ガベージコレクション対象の消去単位エリアの選択後から前記ガベージコレクションを実行するまでの間に、前記第1の情報を送信し、前記第2の情報を受信する。
請求項8に記載のメモリ装置。 - 前記コントローラは、
前記第2の情報の受信後、前記ガベージコレクション対象の消去単位エリアに対して無効データと前記削除対象データとを除外する前記ガベージコレクションを実行する、
請求項8又は請求項9に記載のメモリ装置。 - 前記コントローラは、
アドレス変換情報に基づいて、前記不揮発性メモリに書き込まれているデータが前記有効データか又は前記無効データかを示す第3の情報を生成し、
前記第3の情報の生成後に、前記ガベージコレクション対象の消去単位エリアを選択し、
前記ガベージコレクション対象の消去単位エリアに書き込まれているデータを示す論理アドレスから、前記第3の情報で無効とされている前記無効データを示す論理アドレスを削除して前記第1の情報を生成する、
請求項10に記載のメモリ装置。 - 前記コントローラは、
前記第3の情報に基づいて、前記ガベージコレクション対象の消去単位エリアを選択する、
請求項11に記載のメモリ装置。 - 前記コントローラは、
前記第2の情報及び前記第3の情報に基づいて、前記ガベージコレクション対象の消去単位エリアに対して前記無効データと前記削除対象データとを除外する前記ガベージコレクションを実行する、
請求項11又は請求項12に記載のメモリ装置。 - 情報処理装置と通信し、複数の消去単位エリアを含み、前記消去単位エリアは複数の書き込み単位エリアを含む不揮発性メモリを制御するコンピュータを、
前記不揮発性メモリに書き込まれる書き込みデータの論理アドレスと、前記不揮発性メモリにおける前記書き込みデータの書き込み位置を示す物理アドレスとを関係付けたアドレス変換情報を生成するアドレス変換部と、
前記書き込みデータを、前記物理アドレスの示す前記書き込み位置へ書き込む書き込み部と、
前記アドレス変換情報に基づいて、前記複数の消去単位エリアに書き込まれているデータが有効データであるか無効データであるかを示す有効/無効情報を生成する生成部と、
前記複数の消去単位エリアから、ガベージコレクション対象の消去単位エリアを選択する選択部と、
前記有効/無効情報に基づいて、前記ガベージコレクション対象の消去単位エリアに書き込まれている有効データを示す論理アドレスを含むエリア情報を生成し、前記エリア情報を前記情報処理装置に送信する送信部と、
前記エリア情報の送信後、前記情報処理装置から、前記ガベージコレクション対象の消去単位エリアにおける削除対象データを示す論理アドレスを含む削除情報を受信する受信部と、
前記有効/無効情報と前記削除情報とに基づいて、前記ガベージコレクション対象の消去単位エリアに対して、前記無効データと前記削除対象データを除外し、前記有効データであり、かつ、前記削除対象データではないデータのガベージコレクションを実行するガベージコレクション部と、
して機能させるためのプログラム。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/656,506 US10120793B2 (en) | 2014-12-29 | 2015-03-12 | Memory device and non-transitory computer readable recording medium |
TW104114943A TW201624490A (zh) | 2014-12-29 | 2015-05-11 | 記憶體裝置及非暫態電腦可讀取記錄媒體 |
CN201510239421.4A CN106205707B (zh) | 2014-12-29 | 2015-05-12 | 存储器装置 |
US15/813,967 US10901885B2 (en) | 2014-12-29 | 2017-11-15 | Memory device and non-transitory computer readable recording medium |
US17/130,485 US11726906B2 (en) | 2014-12-29 | 2020-12-22 | Memory device and non-transitory computer readable recording medium |
US18/215,147 US20230342294A1 (en) | 2014-12-29 | 2023-06-27 | Memory device and non-transitory computer readable recording medium |
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 Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019021654A Division JP6806819B2 (ja) | 2014-12-29 | 2019-02-08 | メモリ装置、メモリシステム及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016126738A JP2016126738A (ja) | 2016-07-11 |
JP6482322B2 true JP6482322B2 (ja) | 2019-03-13 |
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 After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019021654A Active JP6806819B2 (ja) | 2014-12-29 | 2019-02-08 | メモリ装置、メモリシステム及びプログラム |
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 |
---|---|---|---|---|
US8745315B2 (en) * | 2006-11-06 | 2014-06-03 | Rambus Inc. | Memory Systems and methods supporting volatile and wear-leveled 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 | 株式会社東芝 | 半導体記憶装置およびプログラム |
JP5976939B2 (ja) * | 2012-08-23 | 2016-08-24 | アップル インコーポレイテッド | ホスト支援型メモリブロックコンパクション |
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 |
---|---|
JP2021047889A (ja) | 2021-03-25 |
JP7030942B2 (ja) | 2022-03-07 |
JP2016126738A (ja) | 2016-07-11 |
TW201624490A (zh) | 2016-07-01 |
US20230342294A1 (en) | 2023-10-26 |
JP6806819B2 (ja) | 2021-01-06 |
CN106205707A (zh) | 2016-12-07 |
CN106205707B (zh) | 2019-10-22 |
JP2019106197A (ja) | 2019-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11893238B2 (en) | Method of controlling nonvolatile semiconductor memory | |
JP7030942B2 (ja) | メモリ装置及びその制御方法 | |
US20120297140A1 (en) | Expandable data cache | |
US11726906B2 (en) | Memory device and non-transitory computer readable recording medium | |
US11200178B2 (en) | Apparatus and method for transmitting map data in memory system | |
JP6595654B2 (ja) | 情報処理装置 | |
JP6689325B2 (ja) | メモリ装置の制御方法 | |
CN111290975A (zh) | 使用统一缓存处理读命令与预读命令的方法及其存储设备 | |
US10474569B2 (en) | Information processing device including nonvolatile cache memory and processor | |
US10331551B2 (en) | Information processing device and non-transitory computer readable recording medium for excluding data from garbage collection | |
JP6276208B2 (ja) | メモリシステム及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170224 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20170531 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20171030 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171121 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180122 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180619 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180809 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20180830 |
|
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: 20190115 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190212 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6482322 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |