CN107315648A - A kind of method of data-moving performance during raising bad block management - Google Patents
A kind of method of data-moving performance during raising bad block management Download PDFInfo
- Publication number
- CN107315648A CN107315648A CN201710513873.6A CN201710513873A CN107315648A CN 107315648 A CN107315648 A CN 107315648A CN 201710513873 A CN201710513873 A CN 201710513873A CN 107315648 A CN107315648 A CN 107315648A
- Authority
- CN
- China
- Prior art keywords
- data
- page
- block
- bad block
- lpa
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0727—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
-
- 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
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Abstract
The invention discloses a kind of method of data-moving performance during raising bad block management, step is specifically included:(1) the step of write-in has physical page address PPA counterlogic page address PLA data structure LPA_LOG in NAND Flash pages;(2) the step of reclaiming bad block data:(2 1) block number reads the data stored in block page and data structure LPA_LOG, obtains the corresponding logical page address PLA of physical page address PPA according to occurring after exception;(2 2) copy block page data is to new page, and re-writes in new page data structure LPA_LOG;The corresponding new physical page address PPA ' of logical page address PLA in the mapping table of (2 3) modified address;(2 4) complete after the moving of all page datas of block, mark the block for bad block and be added into bad block list and be managed.When being moved to bad block data, logical page address PLA can be obtained directly from data structure LPA_LOG by being not required to traversal address mapping table, effectively improve efficiency and performance that bad block data is moved.
Description
Technical field
Moved the present invention relates to bad block data, especially it is a kind of improve bad block management when data-moving performance method.
Background technology
Flourishing for semicon industry, occurs in that high performance memory NAND Flash, NAND flash storage
Using semiconductor as storage medium, with a high speed, low energy consumption and it is shockproof the advantages of, NAND Flash basic unit of storage is
It is made up of block (Block).Every piece is made up of some pages (Page) again.Wherein, minimum read-write cell is page, and minimum erasing unit is
Block, it is necessary to which the block at this page of place first is carried out into erasing operation before being programmed to one page.Due to NAND Flash in itself
Attribute, the erasing times of monolithic are limited, and as technique is increasingly advanced, capacity is increasing, NAND Flash monolithics
Erasing times are less and less, from SLC type NAND Flash 100,000 erasing times to the hundreds of of current TLC types NAND Flash
Secondary erasing times, therefore, abrasion equilibrium is particularly important for NAND Flash, good abrasion equilibrium management method
It is not only able to improve NAND Flash performances and efficiency, additionally it is possible to greatly extend NAND Flash service life.Based on this,
A series of management algorithms for NAND Flash are occurred in that, the core of management algorithm all includes address of cache, abrasion equilibrium, rubbish
Rubbish is reclaimed and the several big part compositions of bad block management, and wherein bad block management is one important portion of NAND Flash management algorithms
Point.
Due to NAND Flash manufacturing process, manufacturer is it cannot be guaranteed that all bulks of NAND Flash when dispatching from the factory
State is all good, and it has been just bad block to have when some dispatch from the factory, and these Huai Kuai producers can be marked when dispatching from the factory, bad block management
Algorithm can read the flag bit in initialization, and these blocks are added in bad block list and are managed.Due to NAND Flash
In use because various exceptions will also result in the generation of bad block, bad block management algorithm occurs during using
Bad block add bad block list and be managed.In this process, if also there are data in the bad block, need to carry out data
The process moved, it is necessary to be updated processing to address mapping table after the completion of moving.For Large Copacity solid storage device
Speech, in order to pursue high-performance, so majority takes a page mapping mechanism, under this mapping mechanism, due to NAND Flash mappings
What table was represented is the mapping relations that logical page address (LPA) arrives physical page address (PPA), you can easily to be found by LPA
PPA, but occur when writing data after bad block, it is necessary to the data stored in the block all be copied in new block, Ran Houtong
Cross PPA and reversely find LPA, modification LPA and new PPA mapping relations just can guarantee that the normal of data, as shown in Figure 1.For
For NAND Flash, capacity is bigger, and address mapping table is also bigger, for example for L85C serial 2Tb capacity NAND
Flash has 33536 blocks, and each block has 512 pages, i.e., include 33536*512=17170432 page altogether, pair and page
Mapping table is said, 17170432 list items are needed altogether.For Large Copacity SSD, it is necessary to list item then to be multiplied, be
The corresponding LPA of PPA are searched out in so many list item to be needed to take a substantial amount of time, and is set to T0, the NAND of correspondence L85C series
For Flash, each block have page 512, if carrying out data-moving, it is necessary to time be 512T0, this is for high-speed data
It is unacceptable for read-write application.
The content of the invention
The technical problems to be solved by the invention are:Traversal address is not required to for above-mentioned problem there is provided one kind to reflect
The high efficiency bad block data moving method of firing table.
The technical solution adopted by the present invention is as follows:
It is a kind of improve bad block management when data-moving performance method, NAND Flash minimum erasure unit be block, block by
Page composition, page is divided into data segment and extra segment, and method includes step:
(1) write-in has physical page address PPA counterlogic page address PLA data structure in NAND Flash pages
The step of LPA_LOG;
(2) the step of reclaiming bad block data:
(2-1) block number reads the data stored in block page and data structure LPA_LOG, obtains the thing according to occurring after exception
Manage the corresponding logical page address PLA of page address PPA;
(2-2) copies block page data to new page, and re-writes in new page data structure LPA_LOG;
The corresponding new physical page address PPA ' of logical page address PLA in the mapping table of (2-3) modified address;
(2-4) is completed after the moving of all page datas of block, and is marked the block for bad block and is added into bad block list and is managed
Reason.
Further, data are stored in into NAND Flash pages with user in step (1), NAND Flash are driven at this
Write-in has physical page address PPA counterlogic page address PLA data structure LPA_LOG in page extra segment.
Further, block, according to occurring after exception, first can be labeled as bad block to be recycled, preferential answering by block number in step (2)
The reading and writing data request of host computer carries out page data and moved again.
In summary, by adopting the above-described technical solution, the beneficial effects of the invention are as follows:With user to NAND
Data are stored in Flash page, NAND Flash drivings write-in in this page of extra segment has physical page address PPA counterlogics
Page address PLA data structure LPA_LOG, when needing to move bad block data, is not required to travel through address mapping table
Physical page address PPA counterlogic page address PLA are directly obtained from data structure LPA_LOG, bad block data is effectively improved
The efficiency and performance moved.
Brief description of the drawings
Examples of the present invention will be described by way of reference to the accompanying drawings, wherein:
The method flow diagram for the recovery bad block data that Fig. 1 provides for the present invention
Embodiment
All features disclosed in this specification, or disclosed all methods or during the step of, except mutually exclusive
Feature and/or step beyond, can combine in any way.
Any feature disclosed in this specification, unless specifically stated otherwise, can be equivalent by other or with similar purpose
Alternative features are replaced.I.e., unless specifically stated otherwise, each feature is an example in a series of equivalent or similar characteristics
.
It is a kind of improve bad block management when data-moving performance method, NAND Flash minimum erasure unit be block, block by
Page composition, page is divided into data segment and extra segment, and method includes step:
(1) write-in has physical page address PPA counterlogic page address PLA data structure in NAND Flash pages
The step of LPA_LOG;
(2) the step of reclaiming bad block data:
(2-1) block number reads the data stored in block page and data structure LPA_LOG, obtains the thing according to occurring after exception
Manage the corresponding logical page address PLA of page address PPA;
(2-2) copies block page data to new page, and re-writes in new page data structure LPA_LOG;
The corresponding new physical page address PPA ' of logical page address PLA in the mapping table of (2-3) modified address;
(2-4) is completed after the moving of all page datas of block, and is marked the block for bad block and is added into bad block list and is managed
Reason.
To improve write performance, NAND Flash use strange land more new strategy, i.e., one logical page address LPA can correspond to many
What is stored on individual physical page address PPA, only one of which physical page address PPA is valid data, and remaining is outdated data,
It is used as data collection, or without using.By searching physical page address PPA, logical page address LPA and physical page address are found
PPA corresponding relation, could obtain effective data.
Data are stored in into NAND Flash pages with user in step (1), NAND Flash are driven in this page of extra segment
It is middle to write the data structure LPA_LOG for having physical page address PPA counterlogic page address PLA.When user is not to NAND
When being stored in data in Flash, NAND Flash drivings will not write data structure LPA_LOG in the page.Data structure LPA_
LOG write-in is to be stored in data into NAND Flash pages with user.
By page data from bad block move out when, the data structure LPA_LOG in this page of extra segment is not moved with page data.
When page data is copied in new page, NAND Flash drivings, which perform step (1) process and write in the new page extra segment, to be had
New physical page address PPA ' counterlogic page address PLA data structure LPA_LOG.
Optimally, block, according to occurring after exception, first can be labeled as on bad block to be recycled, preferential answering by block number in step (2)
The reading and writing data request of position machine, treats after the completion of host computer request of data, performs step (2-1), step (2-2), step (2-3) and enter
Row bad block data is reclaimed.The block of data exception is first labeled as bad block to be recycled, the number of preferential answering host computer before data record
According to read-write requests, efficiency and performance that bad block data is moved are effectively increased.
The invention is not limited in foregoing embodiment.The present invention, which is expanded to, any in this manual to be disclosed
New feature or any new combination, and disclose any new method or process the step of or any new combination.
Claims (3)
1. a kind of method of data-moving performance during raising bad block management, NAND Flash minimum erasure units are block, and block is by page
Composition, page is divided into data segment and extra segment, it is characterised in that method includes step:
(1) write-in has physical page address PPA counterlogic page address PLA data structure LPA_ in NAND Flash pages
The step of LOG;
(2) the step of reclaiming bad block data:
(2-1) block number reads the data stored in block page and data structure LPA_LOG, obtains the Physical Page according to occurring after exception
The corresponding logical page address PLA of address PPA;
(2-2) copies block page data to new page, and re-writes in new page data structure LPA_LOG;
The corresponding new physical page address PPA ' of logical page address PLA in the mapping table of (2-3) modified address;
(2-4) is completed after the moving of all page datas of block, and is marked the block for bad block and is added into bad block list and is managed.
2. the method for data-moving performance during a kind of raising bad block management according to claim 1, it is characterised in that step
(1) data are stored in into NAND Flash pages with user in, NAND Flash drivings write-in in this page of extra segment has this
Physical page address PPA counterlogic page address PLA data structure LPA_LOG.
3. the method for data-moving performance during a kind of raising bad block management according to claim 1, it is characterised in that step
(2) block first can be labeled as bad block to be recycled, the reading and writing data request of preferential answering host computer is again by block number according to occurring after exception in
Page data is carried out to move.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710513873.6A CN107315648B (en) | 2017-06-29 | 2017-06-29 | Method for improving data moving performance during bad block management |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710513873.6A CN107315648B (en) | 2017-06-29 | 2017-06-29 | Method for improving data moving performance during bad block management |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107315648A true CN107315648A (en) | 2017-11-03 |
CN107315648B CN107315648B (en) | 2020-07-03 |
Family
ID=60179804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710513873.6A Active CN107315648B (en) | 2017-06-29 | 2017-06-29 | Method for improving data moving performance during bad block management |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107315648B (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101075211A (en) * | 2007-06-08 | 2007-11-21 | 马彩艳 | Flash memory management based on sector access |
CN103559144A (en) * | 2013-11-12 | 2014-02-05 | 上海华兴数字科技有限公司 | Method and device for secure data storage of embedded system |
US9122586B2 (en) * | 2013-02-06 | 2015-09-01 | Seagate Technology Llc | Physical-to-logical address map to speed up a recycle operation in a solid state drive |
CN105389266A (en) * | 2015-10-16 | 2016-03-09 | 联想(北京)有限公司 | Data management method and apparatus |
CN106528436A (en) * | 2015-09-15 | 2017-03-22 | 慧荣科技股份有限公司 | Data storage device and data maintenance method thereof |
-
2017
- 2017-06-29 CN CN201710513873.6A patent/CN107315648B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101075211A (en) * | 2007-06-08 | 2007-11-21 | 马彩艳 | Flash memory management based on sector access |
US9122586B2 (en) * | 2013-02-06 | 2015-09-01 | Seagate Technology Llc | Physical-to-logical address map to speed up a recycle operation in a solid state drive |
CN103559144A (en) * | 2013-11-12 | 2014-02-05 | 上海华兴数字科技有限公司 | Method and device for secure data storage of embedded system |
CN106528436A (en) * | 2015-09-15 | 2017-03-22 | 慧荣科技股份有限公司 | Data storage device and data maintenance method thereof |
CN105389266A (en) * | 2015-10-16 | 2016-03-09 | 联想(北京)有限公司 | Data management method and apparatus |
Also Published As
Publication number | Publication date |
---|---|
CN107315648B (en) | 2020-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8892814B2 (en) | Data storing method, and memory controller and memory storage apparatus using the same | |
US10649661B2 (en) | Dynamically resizing logical storage blocks | |
US20180260317A1 (en) | Method for managing the copying and storing of data in garbage collection, memory storage device and memory control circuit unit using the same | |
US8407397B2 (en) | Block management method for flash memory and controller and storage system using the same | |
US20080177937A1 (en) | Storage apparatus, computer system, and method for managing storage apparatus | |
TWI537728B (en) | Buffer memory management method, memory control circuit unit and memory storage device | |
US10877898B2 (en) | Method and system for enhancing flash translation layer mapping flexibility for performance and lifespan improvements | |
CN106462493B (en) | The mitigation of solid-state memory damage | |
CN112506814B (en) | Memory, control method thereof and memory system | |
CN102646069A (en) | Method for prolonging service life of solid-state disk | |
TW200534092A (en) | Non-volatile memory and method with block management system | |
US9176866B2 (en) | Active recycling for solid state drive | |
KR101403922B1 (en) | Apparatus and method for data storing according to an access degree | |
US20100318726A1 (en) | Memory system and memory system managing method | |
TWI584189B (en) | Memory controller, memory storage device, and method for writing data | |
US8812772B2 (en) | Data merging method for non-volatile memory and controller and storage apparatus using the same | |
CN106598493A (en) | Solid state disk address mapping table management method | |
US11372578B2 (en) | Control method for flash memory controller and associated flash memory controller and memory device | |
CN103970669A (en) | Method for accelerating physical-to-logic address mapping of recycling operation in solid-state equipment | |
TW201303584A (en) | Memory storage device, memory controller thereof, and method for identifying valid data | |
CN113253926A (en) | Memory internal index construction method for improving query and memory performance of novel memory | |
US9329994B2 (en) | Memory system | |
US20140089566A1 (en) | Data storing method, and memory controller and memory storage apparatus using the same | |
Chen et al. | Beyond address mapping: A user-oriented multiregional space management design for 3-D NAND flash memory | |
Chung et al. | A high-performance wear-leveling algorithm for flash memory system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |