JP5858081B2 - メモリコントローラ、メモリシステム及びメモリ制御方法 - Google Patents
メモリコントローラ、メモリシステム及びメモリ制御方法 Download PDFInfo
- Publication number
- JP5858081B2 JP5858081B2 JP2014066369A JP2014066369A JP5858081B2 JP 5858081 B2 JP5858081 B2 JP 5858081B2 JP 2014066369 A JP2014066369 A JP 2014066369A JP 2014066369 A JP2014066369 A JP 2014066369A JP 5858081 B2 JP5858081 B2 JP 5858081B2
- Authority
- JP
- Japan
- Prior art keywords
- spare
- physical
- area
- logical
- maximum
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- 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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2206/00—Indexing scheme related to dedicated interfaces for computers
- G06F2206/10—Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
- G06F2206/1014—One time programmable [OTP] memory, e.g. PROM, WORM
-
- 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/7211—Wear leveling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Description
論理ブロックと物理ブロックの対応関係は、アドレス変換テーブルを用いて管理される。アドレス変換テーブルは、例えばワークエリア8に記憶される。
Claims (6)
- 物理領域単位でデータが消去されるメモリが有する複数の物理領域のうちのスペア物理領域を論理領域にマッピングし、マッピングした前記スペア物理領域に、ホストシステムからの書込み要求に従うデータを書き込むメモリコントローラであって、
論理空間を構成する複数の論理領域の各々について登録消去回数が登録される記憶部と、
前記複数の論理領域のうちのいずれかの論理領域にスペア物理領域をマッピングするときのシステム最大消去回数をそのマッピング先の論理領域に関連付けられる前記登録消去回数として前記記憶部に登録するプロセッサと
を有し、
前記システム最大消去回数は、前記複数の物理領域にそれぞれ対応した複数の消去回数のうちの最大値である、
メモリコントローラ。 - 前記プロセッサは、
前記システム最大消去回数と、前記複数の論理領域にそれぞれ対応した複数の登録消去回数のうちの最小値である最小登録消去回数とを取得し、
前記取得したシステム最大消去回数と前記取得した最小登録消去回数との差が第1の閾値未満か否かの第1の判断を行い、
前記第1の判断の結果が否定の場合、データコピー処理を行い、
前記データコピー処理は、コピー元物理領域からコピー先物理領域へデータをコピーする処理と、前記コピー先物理領域を前記取得した最小登録消去回数が関連付けられている論理領域にマッピングする処理とを含み、
前記コピー元物理領域は、前記取得した最小登録消去回数が関連付けられている論理領域にマッピングされている物理領域であり、
前記コピー先物理領域は、スペア最大消去回数のスペア物理領域であり、
前記スペア最大消去回数は、1以上のスペア物理領域にそれぞれ対応した消去回数のうちの最大値である、
請求項1記載のメモリコントローラ。 - 前記プロセッサは、
前記取得したシステム最大消去回数と、前記スペア最大消去回数との差が第2の閾値未満か否かの第2の判断を行い、
前記第1の判断の結果が否定であり前記第2の判断の結果が肯定の場合に、前記データコピー処理を行う、
請求項2記載のメモリコントローラ。 - 前記プロセッサは、
前記複数の物理領域にそれぞれ対応した複数の消去回数のうちの最大値であるシステム最大消去回数と前記ホストシステムからの書込み要求に従う書込み先論理領域に関連付けられている登録消去回数との差が第3の閾値未満か否かの第3の判断を行い、
前記第3の判断の結果が否定の場合に、前記スペア最大消去回数のスペア物理領域を前記書込み先論理領域にマッピングし、
前記第3の判断の結果が肯定の場合に、スペア最小消去回数のスペア物理領域を前記書込み先論理領域にマッピングし、
前記スペア最大消去回数は、1以上のスペア物理領域にそれぞれ対応した消去回数のうちの最大値であり、
前記スペア最小消去回数は、前記1以上のスペア物理領域にそれぞれ対応した消去回数のうちの最小値である、
請求項1記載のメモリコントローラ。 - 請求項1乃至4のうちのいずれか1項に記載のメモリコントローラと、
前記メモリコントローラに接続されたメモリと
を有するメモリシステム。 - 複数の物理領域を有し物理領域単位でデータが消去されるメモリの制御方法であって、
前記メモリが有する複数の物理領域のうちのスペア物理領域を、前記ホストシステムに提供される論理空間を構成する複数の論理領域のうちのいずれかの論理領域にマッピングし、
前記スペア物理領域を前記論理領域にマッピングするときの、前記複数の物理領域にそれぞれ対応した複数の消去回数のうちの最大値であるシステム最大消去回数を、そのマッピング先の論理領域に登録消去回数として関連付ける、
メモリ制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014066369A JP5858081B2 (ja) | 2014-03-27 | 2014-03-27 | メモリコントローラ、メモリシステム及びメモリ制御方法 |
US14/620,332 US9703495B2 (en) | 2014-03-27 | 2015-02-12 | Memory controller, memory system, and memory control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014066369A JP5858081B2 (ja) | 2014-03-27 | 2014-03-27 | メモリコントローラ、メモリシステム及びメモリ制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015191294A JP2015191294A (ja) | 2015-11-02 |
JP5858081B2 true JP5858081B2 (ja) | 2016-02-10 |
Family
ID=54190403
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014066369A Active JP5858081B2 (ja) | 2014-03-27 | 2014-03-27 | メモリコントローラ、メモリシステム及びメモリ制御方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9703495B2 (ja) |
JP (1) | JP5858081B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11256432B2 (en) | 2018-11-21 | 2022-02-22 | Tdk Corporation | Memory controller and memory system |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107025066A (zh) | 2016-09-14 | 2017-08-08 | 阿里巴巴集团控股有限公司 | 在基于闪存的存储介质中写入存储数据的方法和装置 |
JP2019057172A (ja) * | 2017-09-21 | 2019-04-11 | 東芝メモリ株式会社 | メモリシステムおよび制御方法 |
US10990472B2 (en) | 2018-07-24 | 2021-04-27 | Micron Technology, Inc. | Spare substitution in memory system |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6230233B1 (en) * | 1991-09-13 | 2001-05-08 | Sandisk Corporation | Wear leveling techniques for flash EEPROM systems |
US20080082736A1 (en) * | 2004-03-11 | 2008-04-03 | Chow David Q | Managing bad blocks in various flash memory cells for electronic data flash card |
JP4485231B2 (ja) | 2004-03-24 | 2010-06-16 | 京セラ株式会社 | 電子機器 |
KR100857761B1 (ko) * | 2007-06-14 | 2008-09-10 | 삼성전자주식회사 | 웨어 레벨링을 수행하는 메모리 시스템 및 그것의 쓰기방법 |
US7925822B2 (en) * | 2008-01-31 | 2011-04-12 | Sandisk Il Ltd | Erase count recovery |
US9547589B2 (en) * | 2008-06-18 | 2017-01-17 | Super Talent Technology, Corp. | Endurance translation layer (ETL) and diversion of temp files for reduced flash wear of a super-endurance solid-state drive |
US20100017556A1 (en) * | 2008-07-19 | 2010-01-21 | Nanostar Corporationm U.S.A. | Non-volatile memory storage system with two-stage controller architecture |
US8140739B2 (en) * | 2008-08-08 | 2012-03-20 | Imation Corp. | Flash memory based storage devices utilizing magnetoresistive random access memory (MRAM) to store files having logical block addresses stored in a write frequency file buffer table |
JP4821845B2 (ja) * | 2008-12-22 | 2011-11-24 | Tdk株式会社 | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
JP4821844B2 (ja) * | 2008-12-22 | 2011-11-24 | Tdk株式会社 | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
JP4666081B2 (ja) * | 2009-02-09 | 2011-04-06 | Tdk株式会社 | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
TW201120898A (en) * | 2009-12-07 | 2011-06-16 | Jmicron Technology Corp | Mehtod for wear-leveling and apparatus thereof |
TWI455131B (zh) * | 2010-04-16 | 2014-10-01 | Silicon Motion Inc | 記憶體之資料寫入方法及資料儲存裝置 |
TW201239619A (en) * | 2011-03-21 | 2012-10-01 | Silicon Motion Inc | Writing method of a flash memory and flash memory device |
TWI516922B (zh) * | 2014-03-12 | 2016-01-11 | 慧榮科技股份有限公司 | 資料儲存裝置及快閃記憶體零散資料收集方法 |
-
2014
- 2014-03-27 JP JP2014066369A patent/JP5858081B2/ja active Active
-
2015
- 2015-02-12 US US14/620,332 patent/US9703495B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11256432B2 (en) | 2018-11-21 | 2022-02-22 | Tdk Corporation | Memory controller and memory system |
Also Published As
Publication number | Publication date |
---|---|
US9703495B2 (en) | 2017-07-11 |
US20150277787A1 (en) | 2015-10-01 |
JP2015191294A (ja) | 2015-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4844639B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP4666080B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP2011203916A (ja) | メモリコントローラ、および半導体記憶装置 | |
JP4666081B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
US9122586B2 (en) | Physical-to-logical address map to speed up a recycle operation in a solid state drive | |
JP5093294B2 (ja) | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP5858081B2 (ja) | メモリコントローラ、メモリシステム及びメモリ制御方法 | |
JP2018160189A (ja) | メモリシステム | |
US20190012260A1 (en) | Flash memory package and storage system including flash memory package | |
US9778862B2 (en) | Data storing method for preventing data losing during flush operation, memory control circuit unit and memory storage apparatus | |
JP4488048B2 (ja) | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP4636005B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP2009110314A (ja) | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP2012068765A (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP2007323159A (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
JP4241741B2 (ja) | メモリコントローラ及びフラッシュメモリシステム | |
JP4434171B2 (ja) | メモリコントローラ及びフラッシュメモリシステム | |
JP4661566B2 (ja) | アクセスコントローラ、フラッシュメモリシステム及びアクセス制御方法 | |
JP4952742B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP6260395B2 (ja) | メモリコントローラ、メモリシステム及びメモリ制御方法 | |
JP4952741B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP3934659B1 (ja) | メモリコントローラ及びフラッシュメモリシステム | |
JP2010086107A (ja) | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
US20240202113A1 (en) | Memory system | |
JP2010146512A (ja) | メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150901 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151005 |
|
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: 20151117 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151130 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5858081 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |