CN107678694A - RAID stripe method for reconstructing and solid-state disk - Google Patents

RAID stripe method for reconstructing and solid-state disk Download PDF

Info

Publication number
CN107678694A
CN107678694A CN201710964327.4A CN201710964327A CN107678694A CN 107678694 A CN107678694 A CN 107678694A CN 201710964327 A CN201710964327 A CN 201710964327A CN 107678694 A CN107678694 A CN 107678694A
Authority
CN
China
Prior art keywords
physical block
error
rate
block
weak
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
Application number
CN201710964327.4A
Other languages
Chinese (zh)
Other versions
CN107678694B (en
Inventor
王顺卓
程波
周游
陈祥
杨庆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Dapu Microelectronics Co Ltd
Original Assignee
Shenzhen Dapu Microelectronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Dapu Microelectronics Co Ltd filed Critical Shenzhen Dapu Microelectronics Co Ltd
Priority to CN201710964327.4A priority Critical patent/CN107678694B/en
Publication of CN107678694A publication Critical patent/CN107678694A/en
Application granted granted Critical
Publication of CN107678694B publication Critical patent/CN107678694B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

The invention discloses a kind of RAID stripe method for reconstructing applied to solid-state disk, forms new RAID stripe for carrying out restructuring to the physical block group of RAID memory arrays, this method includes:Step S1, detects the raw Bit-Error-Rate of physical block and is updated and be recorded in bulk state table;Step S2, the raw Bit-Error-Rate in bulk state table obtain weak block message;Step S3, weak block number mesh is obtained by bulk state table, and band tissue is carried out to physical block;Step S4, the LSB page of the physical block in same RAID stripe and MSB pages are staggeredly subjected to band tissue in block.The RAID stripe method for reconstructing of the present invention, the dynamic adjustment of solid-state disk RAID stripe is realized, avoids loss of data, while avoid waste of storage space, improved the reliability of solid-state disk, extend the life-span of solid-state disk.Meanwhile the invention also discloses a kind of solid-state disk, it includes RAID memory arrays and the controller for the RAID memory arrays adaptively adjust and be managed the data that it is stored.

Description

RAID stripe method for reconstructing and solid-state disk
Technical field
The present invention relates to nnir Rtorae technologies field, more particularly to a kind of RAID stripe method for reconstructing and solid-state disk.
Background technology
Solid-state disk is because its high-performance, and low energy consumption, anti-seismic performance is good, a feasible substitute as disk, It is widely used in server system.With the progress of flash technology, particularly from SLC (Single-LevelCell) technologies to The development of MLC (Multi-LevelCell) technologies and flash memory making technology, flash capacity increasingly increase.However, flash memory physical block Endurance but decline to a great extent, reliability significantly reduces.To ensure the uniformity of data, the manufacturer of solid-state disk uses in disk The reliability of independent hard disk redundancy array (RAID) mechanism enhancing solid-state disk.
One of the functions to be realized of RAID are to carry out striping to multiple memories of controller control, and to multiple storages Device carries out striping and may be such that originally memory array of the incoherent memory pool into an entirety independently of each other.Striping It is the data block for continuous data being divided into by controller formed objects, every segment data is respectively written into array not With the method on memory, band is the volume that multiple memory pools are formed.
Solid-state disk storage is different from traditional magnetic disk, and nand flash memory is the conventional particle for forming solid-state disk.Flash memories Write operation need by " erase-write " two operating process.If to be write to memory cell, it is necessary to which this is deposited The physical block of storage unit performs erasing operation, and after the completion of being wiped free of, the data content of whole physical block is all cleared, erasing operation Process is referred to as reclaiming.
Wherein, nand flash memory has some special error properties.The raw Bit-Error-Rate (RBER) of nand flash memory can be with The increase of program/erase number (P/Ecycle) is exponentially increased.The difference of manufacturing process is additionally, since, solid-state disk is in physics The uneven phenomenon of Fault Distribution be present in block, Hash memory pages etc..For example, under identical program/erase number, different physical blocks Embody different error properties;In same physical block, the page (MSB pages) of highest significant position composition forms than least significant bit The raw Bit-Error-Rate of page (LSB page) is higher, and MSB pages of wear-resistant power is less than the wear-resistant power of LSB page.
However, traditional RAID does not consider these error properties of nand flash memory, using solid in the solid-state disk whole lifetime Determine intensity RAID strategy, cause to use the later stage in solid-state disk, its program/erase number of times is larger, flash media it is original The bit error rate increases, and the reliability that the RAID of fixing intensity is provided is insufficient for later stage demand.
In the prior art, SehwanLee et al. proposes the RAID schemes of life-span perception, in different program/erases Under several, using the RAID strategies of varying strength, with the reliability of the memory space expense guarantee solid-state disk whole lifetime of minimum. But the RAID that the life-span perceives have ignored due to the wear-resistant power of medium caused by manufacturing process (physical block level and Hash memory pages level) Difference, using program/erase number as the sole indicator that the degree of wear is measured to adjust RAID intensity, sacrifice sky although existing Between capacity, but the adjustment of RAID intensity can not still meet the situation of reliability requirement.
On the one hand, the difference between the wear-resistant power of physical block level is ignored:When two or more are with higher original When the physical block of the bit error rate is in same band, the lifting of band reliability can not offset the abrasion of the physical block, so as to lead Cause loss of data;On the other hand, the difference between the wear-resistant power of Hash memory pages level is ignored:The RAID that life-span perceives by LSB page and MSB pages separately constitutes RAID stripe so that and the degree of wear of whole MSB bands is significantly larger than LSB bands, and because physical block dodges The greatest wear for depositing page determines the abrasion of physical block, result in a physical block it is unavailable when, the LSB page in the physical block is still It can be used, so as to bring space waste.
In consideration of it, be necessary to provide it is a kind of solve drawbacks described above prevent RAID stripe loss of data and space utilization The RAID stripe method for reconstructing and solid-state disk that the high achievable RAID memory arrays of rate adaptively recombinate.
The content of the invention
A technical problem to be solved by this invention is to provide a kind of achievable RAID memory arrays and adaptively recombinated, Improve the RAID stripe method for reconstructing of solid-state disk dependable with function.
Another technical problem to be solved by this invention, which is to provide one kind, can prevent RAID stripe loss of data and space The high solid-state disk of utilization rate.
In order to solve the above technical problems, the present invention uses technical scheme as described below:A kind of RAID stripe method for reconstructing, With the physical block group to RAID memory arrays rebuild applied to solid-state disk and form new RAID stripe, this method include with Lower step:
Step S1, detects the raw Bit-Error-Rate of physical block and is updated and be recorded in bulk state table;
Step S2, the raw Bit-Error-Rate in bulk state table obtain weak block message;
Step S3, weak block number mesh is obtained by bulk state table, and band tissue is carried out to physical block;
Step S4, the LSB page of the physical block in same RAID stripe and MSB pages are staggeredly subjected to band tissue in block.
Its further technical scheme is:The step S1 specifically includes following steps:
Step S1.1, total physical block of program/erase frequency threshold value, weak piece of raw Bit-Error-Rate threshold value and physical block group is set Number;
Step S1.2, judges whether program/erase number reaches the programming/wiping that need to carry out physical block raw Bit-Error-Rate detection Except frequency threshold value;
Step S1.3, according to step S1.2 judged result, the original mistake of physical block need to be carried out when program/erase number reaches During the program/erase frequency threshold value of code check detection, the raw Bit-Error-Rate detection of physical block is carried out to the physical block group simultaneously by it It is recorded in bulk state table.
Its further technical scheme is:The step S1.3 is specially:According to step S1.2 judged result, when programming/ When erasing times reach the program/erase frequency threshold value that need to carry out physical block raw Bit-Error-Rate detection, the every of physical block group is read All Hash memory pages in one physical block, the raw Bit-Error-Rate of Hash memory pages is obtained, Hash memory pages maximum in each physical block are original Raw Bit-Error-Rate of the bit error rate as the physical block, is recorded in bulk state table.
Its further technical scheme is:The step S1 also includes:According to step S1.2 judged result, when programming/wiping When not up to need to carry out the program/erase frequency threshold value of raw Bit-Error-Rate detection except number, step S3 is directly performed.
Its further technical scheme is:The step S2 specifically includes following steps:
Step S2.1, the raw Bit-Error-Rate value of bulk state table and the weak piece of original error code set are recorded according to step S1.3 Rate threshold value is compared, and judges whether the raw Bit-Error-Rate value of physical block exceedes the weak piece of raw Bit-Error-Rate threshold value set;
Step S2.2, according to step S2.1 judged result, if the raw Bit-Error-Rate value of physical block is original more than weak piece Bit error rate threshold, then the physical block is labeled as weak piece, and be recorded in bulk state table.
Its further technical scheme is:The step S2 also includes:According to step S2.1 judged result, when physical block Raw Bit-Error-Rate value then directly performs step S3 not less than weak piece of raw Bit-Error-Rate threshold value of setting.
Its further technical scheme is:The step S2.2 also includes:
Step S2.2.1, the prediction of bad block judge that the weak block message in bulk state table obtains weak piece of number, judged weak Whether block number mesh exceedes 1/2 of physical block number in physical block group;
Step S2.2.2, according to step S2.2.1 judged result, when weak block number mesh exceedes the 1/2 of total physical block number When, it is bad block to prejudge the physical block that raw Bit-Error-Rate is maximum in physical block group according to the raw Bit-Error-Rate information of bulk state table, right Bad block is replaced, and the raw Bit-Error-Rate renewal of physical block new after replacement is recorded in bulk state table;Otherwise directly hold Row step S3.
Its further technical scheme is:The step S3 is specially:Weak block number is obtained by the weak block message of bulk state table Mesh, and band tissue is carried out according to weak block number mesh, the RAID stripe number of physical block group is determined according to weak block number mesh, will be each weak Block is placed in different RAID stripes, it is ensured that there was only one weak piece in each RAID stripe, while by non-weak piece of remaining in solid-state disk Physical block is evenly distributed in each RAID stripe according to number.
Its further technical scheme is:The step S3 also includes:
Step S3.1, verification data is deposited in weak piece of the physical block group of RAID stripe.
In order to solve the above technical problems, present invention also offers a kind of solid-state disk, include RAID memory arrays and control Device processed, the RAID memory arrays are used for segmented data storage;When the program/erase number of solid-state disk exceedes default threshold During value, the controller is used to perform above-mentioned RAID stripe method for reconstructing to carry out adaptively the RAID memory arrays Restructuring, and the data storage of the RAID memory arrays is managed.
The advantageous effects of the present invention are:RAID stripe method for reconstructing provided by the invention is by detecting physical block Raw Bit-Error-Rate, perceives the actual wear of physical block, and according to raw Bit-Error-Rate value by physical block according to weak piece and non-weak piece of thing Reason block distinguishes, and is recorded in bulk state table, carries out band tissue to physical block according to weak piece of number, improves solid-state disc system Reliability, extend the life-span of solid-state disk, can effectively protect data, prevent loss of data;Meanwhile by the thing in same RAID stripe Band tissue in the LSB page of block and the MSB pages of progress block that interlocks is managed, overcomes the inhomogeneities of data page Fault Distribution in physical block, Avoid the occurrence of reliability difference it is too big caused by waste of storage space the problem of, improve memory space utilization rate.Meanwhile this hair The bright solid-state disk that additionally provides includes RAID memory arrays and controller, and the controller can be carried out to RAID memory arrays Adaptive restructuring, to improve the reliability of solid-state disc system, extend solid-state disk system lifetim.
Brief description of the drawings
Fig. 1 is the flow chart of RAID stripe method for reconstructing of the present invention.
Fig. 2 is the flow chart of a specific embodiment of RAID stripe method for reconstructing of the present invention.
Fig. 3 be RAID stripe method for reconstructing of the present invention physical block between RAID stripe schematic illustration of tissue.
Embodiment
To make one of ordinary skill in the art that the object, technical solutions and advantages of the present invention be more clearly understood, with Under the present invention is further elaborated in conjunction with the accompanying drawings and embodiments.Obviously, embodiment explained below is only the present invention Part of the embodiment, rather than whole embodiments.Based on the embodiment in the present invention, those of ordinary skill in the art are not having The every other embodiment obtained under the premise of creative work is made, belongs to the scope of protection of the invention.
RAID stripe method for reconstructing of the present invention, it is for the RAID stripe tissue using stripe depth as block or physical location Static RAID stripe tissue, rebuild, formed new with the physical block group to RAID memory arrays applied in solid-state disk RAID stripe with data storage, Mobile state adjustment is entered to RAID stripe, improves solid-state disk system reliability.
Reference picture 1, the RAID stripe method for reconstructing comprise the following steps:
Step S1, detects the raw Bit-Error-Rate of physical block and is updated and be recorded in bulk state table.
In the present embodiment, the raw Bit-Error-Rate of physical block is detected using read-after-write modes, i.e., in physics The data of write-in are read after block programming at once to detect the error situation of data, so as to detect the raw Bit-Error-Rate of physical block, tool The read-after-write modes of body refer to what MingchangYang et al. was delivered《New ERA:new efficient reliability-aware wear leveling for endurance enhancement of flash storage devices》(Proceedings of the 50th Annual Design Automation Conference,Article NO.163,2013) periodical literature.
Reference picture 2, in some embodiments, such as in the present embodiment, the step S1 specifically includes following steps:
Step S1.1, total physical block of program/erase frequency threshold value, weak piece of raw Bit-Error-Rate threshold value and physical block group is set Number.
Wherein, weak piece is raw Bit-Error-Rate is high, wear-resistant power is poor physical block.Due to the raw Bit-Error-Rate in physical block With the characteristic that program/erase number is exponentially increased, the setting number of the program/erase frequency threshold value is multiple, and is set The interval for the program/erase frequency threshold value put is also different;Then when program/erase number of times is smaller, the abrasion of physical block becomes Change degree is slower, and in one section of program/erase number excursion, the abrasion change of physical block is little, and therefore, solid-state disk uses Initial stage, the interval of the program/erase frequency threshold value of setting are larger;With the use of solid-state disk, the abrasion change of physical block with The growth change of program/erase number is very fast, therefore the interval of the program/erase frequency threshold value set is smaller.Programming/the wiping Except frequency threshold value be used for judge whether to physical block raw Bit-Error-Rate detection, when program/erase number exceed it is described programming/ During erasing times threshold value, then raw Bit-Error-Rate detection is carried out to physical block;The weak piece of raw Bit-Error-Rate threshold value is used to judge thing Manage whether block is weak piece, when the physical block raw Bit-Error-Rate that detection obtains exceedes the weak piece of raw Bit-Error-Rate threshold value, then the thing It is weak piece to manage block.
Step S1.2, judges whether program/erase number reaches the programming/wiping that need to carry out physical block raw Bit-Error-Rate detection Except frequency threshold value.
By setting program/erase frequency threshold value, can be judged whether to need to detect physical block according to program/erase number Raw Bit-Error-Rate, so as to control the frequency that physical block raw Bit-Error-Rate detects, the reading to physical block data is reduced, reduces solid-state The expense that physical block raw Bit-Error-Rate detects in disk.During solid-state disk use, its program/erase number with set programming/ Erasing times threshold value is compared, and when program/erase number exceedes the program/erase frequency threshold value, then physical block is entered Row raw Bit-Error-Rate detects.
Step S1.3, according to step S1.2 judged result, the original mistake of physical block need to be carried out when program/erase number reaches During the program/erase frequency threshold value of code check detection, the raw Bit-Error-Rate detection that physical block is carried out to the physical block group simultaneously will be right The raw Bit-Error-Rate value answered is recorded in bulk state table.
Further, step S1.3 is specially:According to step S1.2 judged result, when program/erase number reaches step When the need that rapid S1.1 is set carry out the program/erase frequency threshold value of physical block raw Bit-Error-Rate detection, the physical block group is read All Hash memory pages in each physical block, the raw Bit-Error-Rate of Hash memory pages is obtained, Hash memory pages maximum in each physical block are former Raw Bit-Error-Rate of the beginning ber value as the physical block, is recorded in bulk state table.
Step S2, the raw Bit-Error-Rate in bulk state table obtain weak block message.
Wherein, the physical block that raw Bit-Error-Rate is high, wear-resistant power is poor is labeled as weak piece.Judge whether physical block is weak piece Foundation be physical block raw Bit-Error-Rate, the raw Bit-Error-Rate for detecting physical block can be whether the multilevel iudge physical block is weak Block provides foundation.The weak block message represents to mark the information of the physical block for block in bulk state table, for which thing to be learnt It is weak piece to manage block.
With continued reference to Fig. 2, in some embodiments, such as in the present embodiment, the step S2 specifically includes following steps:
Step S2.1, the raw Bit-Error-Rate value of bulk state table and the weak piece of original error code set are recorded according to step S1.3 Rate threshold value is compared, and judges whether the raw Bit-Error-Rate value of physical block exceedes the weak piece of raw Bit-Error-Rate threshold value set.
Step S2.2, according to step S2.1 judged result, if the raw Bit-Error-Rate value of physical block is original more than weak piece Bit error rate threshold, then the physical block is labeled as weak piece, and be recorded in bulk state table.
In some embodiments, such as in the present embodiment, the step S2.2 is further comprising the steps of:
Step S2.2.1, the prediction of bad block judge that the weak block message in bulk state table obtains weak piece of number, judged weak Whether block number mesh exceedes 1/2 of total physical block number in physical block group.
Step S2.2.2, according to step S2.2.1 judged result, when weak block number mesh exceedes the 1/2 of total physical block number When, it is bad block to prejudge the physical block that raw Bit-Error-Rate is maximum in physical block group according to the raw Bit-Error-Rate information of bulk state table, right Bad block is replaced, and the raw Bit-Error-Rate renewal of physical block new after replacement is recorded in bulk state table;Otherwise directly hold Row step S3.
Wherein, bad block is that raw Bit-Error-Rate is maximum in physical block group when weak block number mesh exceedes the 1/2 of total physical block number Physical block, bad block replace with by the valid data in bad block migrates to the low physical block of raw Bit-Error-Rate or free time physics Block, wipes bad block, and by the raw Bit-Error-Rate of the low physical block of the raw Bit-Error-Rate or the original error code of the physical block of free time Rate is recorded in bulk state table.Before bad block is wiped complete valid data migration, can avoid bad block replace when RAID data it is extensive Performance cost caused by multiple;The raw Bit-Error-Rate of the low physical block of the raw Bit-Error-Rate or the raw Bit-Error-Rate of the physical block of free time Weak piece of raw Bit-Error-Rate threshold value is below, that is, it is non-weak piece of physical block to replace new physical block after bad block, to ensure weak block number mesh Less than the 1/2 of total physical block number so that without bad block in solid-state disk, prevent the loss of data in physical block compiling procedure.When weak When block number mesh exceedes the 1/2 of total physical block number, trigger the prediction of bad block and judge, the maximum physical block of raw Bit-Error-Rate is labeled as Bad block, be advantageous to avoid the use of bad block during later stage solid-state disk use, reduce error rate.
Step S3, weak block number mesh is obtained by bulk state table, and band tissue is carried out to physical block.
With reference to Fig. 2 and 3, further, the step S3 is specially:According to the weak block message of bulk state table, statistics obtains Weak block number mesh, and band tissue is carried out according to weak block number mesh, the number of physical block group RAID stripe is determined according to weak block number mesh, will Each weak piece is placed in different RAID stripes, it is ensured that there was only one weak piece in each RAID stripe, and by remaining in solid-state disk Non- weak piece of physical block is evenly distributed in each RAID stripe according to number.
In some embodiments, such as in the present embodiment, the step S1 also includes:According to step S1.2 judged result, When program/erase number, which is not up to, needs to carry out the program/erase frequency threshold value of physical block raw Bit-Error-Rate detection, directly hold Row step S3.
In some embodiments, such as in the present embodiment, the step S2 also includes:According to step S2.1 judged result, When the raw Bit-Error-Rate value of physical block is not less than weak piece of raw Bit-Error-Rate threshold value of setting, then step S3 is directly performed.
Reference picture 3, Fig. 3 illustrate the RAID stripe combination between physical block in solid-state disk, and every a line represents solid-state disk in Fig. 3 RAID stripe during service condition difference in solid-state disk between physical block, wherein, square represents physical block, and dark physical block represents Weak piece.Solid-state disk uses initial stage, and its program/erase number is smaller, when weak block number mesh is 0, whole all physical blocks of solid-state disk A RAID stripe is formed, as shown in the first row in Fig. 3;When weak block number mesh is 1, the non-weak piece of physical block of whole solid-state disk is with being somebody's turn to do Weak piece of one RAID stripe of composition, as shown in the second row in Fig. 3;When weak block number mesh is 2, now RAID stripe number is two, Each RAID stripe only has one weak piece, and the non-weak piece of physical block of remaining in solid-state disk is according to number mean allocation to each RAID stripe In, as shown in the third line in Fig. 3;With the use of solid-state disk, weak block number mesh gradually increases, when weak block number mesh reaches solid-state disk thing When managing block number purpose half, then one weak piece and one non-weak piece of physical block forms a RAID stripe, now reaches the superfluous of maximum Remaining.
RAID stripe number is determined according to weak block number mesh, dynamic adjusts the size and composition of RAID stripe, it can be ensured that each There was only one weak piece in RAID stripe, the intensity by lifting RAID offsets weak piece of abrasion, so as to avoid loss of data, improves The reliability of solid-state disk.
With continued reference to Fig. 3, in some embodiments, such as in the present embodiment, the step S3 also includes:
Step S3.1, verification data is deposited in weak piece of the physical block group of RAID stripe.
Wherein, the verification data is used for the integrality and accuracy for detecting data, and with reference to Fig. 3, P represents check number in figure According to verification data is placed in weak piece of each band, because verification data only can be just read out in data recovery, and in weak piece Verification data is comprised only, can avoid reading the influence disturbed, minimize the interference to weak piece, reduces weak higher to error rate of user Block carries out digital independent, so as to reduce the ECC in reading process (ErrorCorrectingCode) the decoding times, improves solid-state The reading performance of disk.When program/erase number is smaller, the weak block number evidence in physical block group is smaller, and initial stage is used in solid-state disk, when When weak piece being not present in physical set, verification data is placed in physical block last in RAID stripe.
Based on above-mentioned steps, with the use of solid-state disk, weak block number mesh gradually increases, when weak block number mesh reaches total physical block Number 1/2 when, each RAID stripe be one weak piece and one it is non-weak piece composition RAID1, and verification data be placed in it is weak In block, now reach maximum verification redundancy.Each RAID stripe only has one weak piece, can avoid the redundancy of verification data, drop Low waste of storage space.
Step S4, the LSB page of the physical block in same RAID stripe and MSB pages are staggeredly subjected to band tissue in block.
LSB page and MSB pages are staggeredly subjected to band tissue in block, the inequality of data page Fault Distribution in physical block can be overcome Even property, when MSB pages wears up to it is unusable when, data recovery is carried out to it using LSB page, avoids MSB pages of Missing data, So as to avoid Physical Page group occur reliability difference it is too big caused by waste of storage space the problem of, improve memory space and utilize Rate.
Present invention also offers a kind of solid-state disk, includes RAID memory arrays and controller, wherein, the memory Array is used for segmented data storage;When the program/erase number of solid-state disk exceedes default threshold value, the controller is used for Above-mentioned RAID stripe method for reconstructing is performed adaptively to be recombinated to the RAID memory arrays, and the RAID is deposited The data storage of memory array is managed, and to improve the reliability of system, extends lifetime of system.
In summary, RAID stripe method for reconstructing of the invention perceives physics by detecting the raw Bit-Error-Rate of physical block The actual wear of block, and according to raw Bit-Error-Rate value by physical block according to weak piece and non-weak piece distinguishes, operated in band tissue The middle number according to weak piece determines the number of RAID stripe, it is ensured that only include one weak piece in each RAID stripe, and by solid-state Non- weak piece of physical block in disk physical block group is evenly distributed in RAID stripe according to number, avoids the occurrence of two or more Weak piece be in loss of data caused by same RAID stripe, improve solid-state disk system reliability, extend the life-span of solid-state disk;Enter Row bad block detection, and migrates valid data when replacing bad block, can effectively protect data in advance, prevents RAID stripe recovery and bad Loss of data when block is replaced;Verification data is arranged in weak piece to reduce the reading of the weak block number evidence higher to error rate, carried The reading performance of high solid-state disk;Meanwhile the LSB page of the physical block in same RAID stripe and MSB pages are staggeredly subjected to band in block Tissue, overcome the inhomogeneities of data page Fault Distribution in physical block, avoid the occurrence of reliability difference it is too big caused by store The problem of space waste, improve space availability ratio;Bad block forecasting mechanism, prediction physical block error, to prevent the later stage from consolidating are set Loss of data when state disk uses.Meanwhile solid-state disk of the invention can be carried out adaptively by controller to RAID memory arrays Restructuring with dynamically adjust RAID stripe form and size, improve the reliability of system, prevent loss of data.
The preferred embodiments of the present invention are the foregoing is only, rather than any formal limitation is done to the present invention.This area Technical staff various equivalent changes and improvement, all institutes within the scope of the claims can be imposed on the basis of above-described embodiment The equivalent variations done or modification, it all should fall under the scope of the present invention.

Claims (10)

1. a kind of RAID stripe method for reconstructing, restructuring shape is carried out with the physical block group to RAID memory arrays applied to solid-state disk Cheng Xin RAID stripe, it is characterised in that this method comprises the following steps:
Step S1, detects the raw Bit-Error-Rate of physical block and is updated and be recorded in bulk state table;
Step S2, the raw Bit-Error-Rate in bulk state table obtain weak block message;
Step S3, weak block number mesh is obtained by bulk state table, and band tissue is carried out to physical block;
Step S4, the LSB page of the physical block in same RAID stripe and MSB pages are staggeredly subjected to band tissue in block.
2. RAID stripe method for reconstructing as claimed in claim 1, it is characterised in that the step S1 specifically includes following step Suddenly:
Step S1.1, total physics block number of program/erase frequency threshold value, weak piece of raw Bit-Error-Rate threshold value and physical block group is set Mesh;
Step S1.2, judges whether program/erase number reaches the program/erase that need to carry out physical block raw Bit-Error-Rate detection Number threshold value;
Step S1.3, according to step S1.2 judged result, physical block raw Bit-Error-Rate need to be carried out when program/erase number reaches During the program/erase frequency threshold value of detection, the raw Bit-Error-Rate detection that physical block is carried out to the physical block group is recorded simultaneously In bulk state table.
3. RAID stripe method for reconstructing as claimed in claim 2, it is characterised in that the step S1.3 is specially:According to step Rapid S1.2 judged result, the program/erase number of physical block raw Bit-Error-Rate detection need to be carried out when program/erase number reaches During threshold value, all Hash memory pages in each physical block of physical block group are read, the raw Bit-Error-Rate of Hash memory pages are obtained, by each thing Raw Bit-Error-Rate of the Hash memory pages raw Bit-Error-Rate maximum in block as the physical block is managed, is recorded in bulk state table.
4. RAID stripe method for reconstructing as claimed in claim 2, it is characterised in that the step S1 also includes:According to step S1.2 judged result, when program/erase number need to not up to carry out the program/erase number of physical block raw Bit-Error-Rate detection During threshold value, step S3 is directly performed.
5. RAID stripe method for reconstructing as claimed in claim 2, it is characterised in that the step S2 specifically includes following step Suddenly:
Step S2.1, the raw Bit-Error-Rate value of bulk state table and the weak piece of raw Bit-Error-Rate threshold set are recorded according to step S1.3 Value is compared, and judges whether the raw Bit-Error-Rate value of physical block exceedes the weak piece of raw Bit-Error-Rate threshold value set;
Step S2.2, according to step S2.1 judged result, if the raw Bit-Error-Rate value of physical block exceedes weak piece of original error code Rate threshold value, then the physical block is labeled as weak piece, and be recorded in bulk state table.
6. RAID stripe method for reconstructing as claimed in claim 5, it is characterised in that the step S2 also includes:According to step S2.1 judged result, when the raw Bit-Error-Rate value of physical block is not less than weak piece of raw Bit-Error-Rate threshold value of setting, then directly hold Row step S3.
7. RAID stripe method for reconstructing as claimed in claim 5, it is characterised in that the step S2.2 also includes:
Step S2.2.1, the prediction of bad block judge that the weak block message in bulk state table obtains weak piece of number, judges weak block number Whether mesh exceedes 1/2 of total physical block number in physical block group;
Step S2.2.2, according to step S2.2.1 judged result, when weak block number mesh exceedes the 1/2 of total physical block number, root It is bad block according to the maximum physical block of raw Bit-Error-Rate in the raw Bit-Error-Rate information anticipation physical block group of bulk state table, bad block is entered Row is replaced, and the raw Bit-Error-Rate renewal of physical block new after replacement is recorded in bulk state table;Otherwise step is directly performed S3。
8. RAID stripe method for reconstructing as claimed in claim 1, it is characterised in that the step S3 is specially:Pass through bulk The weak block message of state table obtains weak block number mesh, and carries out band tissue according to weak block number mesh, and physical block is determined according to weak block number mesh The RAID stripe number of group, each weak piece is placed in different RAID stripes, it is ensured that there was only one weak piece in each RAID stripe, The non-weak piece of physical block of remaining in solid-state disk is evenly distributed in each RAID stripe according to number simultaneously.
9. RAID stripe method for reconstructing as claimed in claim 1, it is characterised in that the step S3 also includes:
Step S3.1, verification data is deposited in weak piece of the physical block group of RAID stripe.
10. a kind of solid-state disk, include RAID memory arrays and controller, it is characterised in that:The RAID memory arrays For segmented data storage;When the program/erase number of solid-state disk exceedes default threshold value, the controller is used to perform RAID stripe method for reconstructing described in any one of the claims 1~9 is adaptive to be carried out to the RAID memory arrays Restructuring, and the data storage of the RAID memory arrays is managed.
CN201710964327.4A 2017-10-17 2017-10-17 RAID stripe method for reconstructing and solid-state disk Active CN107678694B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710964327.4A CN107678694B (en) 2017-10-17 2017-10-17 RAID stripe method for reconstructing and solid-state disk

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710964327.4A CN107678694B (en) 2017-10-17 2017-10-17 RAID stripe method for reconstructing and solid-state disk

Publications (2)

Publication Number Publication Date
CN107678694A true CN107678694A (en) 2018-02-09
CN107678694B CN107678694B (en) 2019-02-05

Family

ID=61141286

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710964327.4A Active CN107678694B (en) 2017-10-17 2017-10-17 RAID stripe method for reconstructing and solid-state disk

Country Status (1)

Country Link
CN (1) CN107678694B (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804045A (en) * 2018-06-28 2018-11-13 郑州云海信息技术有限公司 A kind of bad block table method for building up and relevant apparatus
CN109830257A (en) * 2019-01-24 2019-05-31 山东华芯半导体有限公司 A kind of method of weak piece of NAND Flash screening
CN110231999A (en) * 2019-05-29 2019-09-13 华中科技大学 Promote the method and device of the storage system reliability encoded based on local route repair
CN111045607A (en) * 2019-12-27 2020-04-21 深圳大普微电子科技有限公司 Data storage method, storage controller, solid state disk and computer storage medium
CN111158589A (en) * 2019-12-16 2020-05-15 绿晶半导体科技(北京)有限公司 Dynamic management method and device for storage array
CN111552582A (en) * 2020-04-24 2020-08-18 江苏芯盛智能科技有限公司 Method and device for screening flash weak blocks and solid state disk
CN111813609A (en) * 2020-07-23 2020-10-23 深圳大普微电子科技有限公司 Data recovery method in storage medium, data recovery system and related equipment
CN112506430A (en) * 2020-12-04 2021-03-16 苏州浪潮智能科技有限公司 Method and equipment for keeping SSD fixed stripe size
CN113782082A (en) * 2021-09-10 2021-12-10 深圳大普微电子科技有限公司 Two-dimensional wear leveling method for flash memory and solid state disk
CN115629720A (en) * 2022-12-20 2023-01-20 鹏钛存储技术(南京)有限公司 Asymmetric striping method on storage device based on flash memory as medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101625627A (en) * 2009-08-05 2010-01-13 成都市华为赛门铁克科技有限公司 Data read-in method, disc redundant array and controller thereof
CN102508733A (en) * 2011-09-22 2012-06-20 杭州华三通信技术有限公司 Disk array based data processing method and disk array manager
US9448883B1 (en) * 2012-12-04 2016-09-20 Cadence Design Systems, Inc. System and method for allocating data in memory array having regions of varying storage reliability
CN106227463A (en) * 2016-07-11 2016-12-14 苏州科达科技股份有限公司 RAID model, reading and writing data and method for reconstructing thereof
CN106528003A (en) * 2016-12-09 2017-03-22 曙光信息产业(北京)有限公司 Method and device for rebuilding disk array
CN106990918A (en) * 2017-03-03 2017-07-28 杭州宏杉科技股份有限公司 Trigger the method and device that RAID array is rebuild
CN107220148A (en) * 2016-03-21 2017-09-29 伊姆西公司 For the method for reconstructing and equipment of RAID

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101625627A (en) * 2009-08-05 2010-01-13 成都市华为赛门铁克科技有限公司 Data read-in method, disc redundant array and controller thereof
CN102508733A (en) * 2011-09-22 2012-06-20 杭州华三通信技术有限公司 Disk array based data processing method and disk array manager
US9448883B1 (en) * 2012-12-04 2016-09-20 Cadence Design Systems, Inc. System and method for allocating data in memory array having regions of varying storage reliability
CN107220148A (en) * 2016-03-21 2017-09-29 伊姆西公司 For the method for reconstructing and equipment of RAID
CN106227463A (en) * 2016-07-11 2016-12-14 苏州科达科技股份有限公司 RAID model, reading and writing data and method for reconstructing thereof
CN106528003A (en) * 2016-12-09 2017-03-22 曙光信息产业(北京)有限公司 Method and device for rebuilding disk array
CN106990918A (en) * 2017-03-03 2017-07-28 杭州宏杉科技股份有限公司 Trigger the method and device that RAID array is rebuild

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804045B (en) * 2018-06-28 2021-10-15 郑州云海信息技术有限公司 Bad block table establishing method and related device
CN108804045A (en) * 2018-06-28 2018-11-13 郑州云海信息技术有限公司 A kind of bad block table method for building up and relevant apparatus
CN109830257A (en) * 2019-01-24 2019-05-31 山东华芯半导体有限公司 A kind of method of weak piece of NAND Flash screening
CN110231999A (en) * 2019-05-29 2019-09-13 华中科技大学 Promote the method and device of the storage system reliability encoded based on local route repair
CN110231999B (en) * 2019-05-29 2020-05-19 华中科技大学 Method and device for improving reliability of storage system based on local repair coding
CN111158589A (en) * 2019-12-16 2020-05-15 绿晶半导体科技(北京)有限公司 Dynamic management method and device for storage array
CN111158589B (en) * 2019-12-16 2023-10-20 绿晶半导体科技(北京)有限公司 Dynamic management method and device for storage array
CN111045607A (en) * 2019-12-27 2020-04-21 深圳大普微电子科技有限公司 Data storage method, storage controller, solid state disk and computer storage medium
CN111045607B (en) * 2019-12-27 2023-10-03 深圳大普微电子科技有限公司 Data storage method, storage controller, solid state disk and computer storage medium
CN111552582B (en) * 2020-04-24 2022-10-14 江苏芯盛智能科技有限公司 Method and device for screening weak flash blocks and solid state disk
CN111552582A (en) * 2020-04-24 2020-08-18 江苏芯盛智能科技有限公司 Method and device for screening flash weak blocks and solid state disk
CN111813609B (en) * 2020-07-23 2021-10-15 深圳大普微电子科技有限公司 Data recovery method in storage medium, data recovery system and related equipment
CN111813609A (en) * 2020-07-23 2020-10-23 深圳大普微电子科技有限公司 Data recovery method in storage medium, data recovery system and related equipment
CN112506430A (en) * 2020-12-04 2021-03-16 苏州浪潮智能科技有限公司 Method and equipment for keeping SSD fixed stripe size
CN113782082A (en) * 2021-09-10 2021-12-10 深圳大普微电子科技有限公司 Two-dimensional wear leveling method for flash memory and solid state disk
CN113782082B (en) * 2021-09-10 2024-01-16 深圳大普微电子科技有限公司 Two-dimensional wear balancing method for flash memory and solid state disk
CN115629720A (en) * 2022-12-20 2023-01-20 鹏钛存储技术(南京)有限公司 Asymmetric striping method on storage device based on flash memory as medium

Also Published As

Publication number Publication date
CN107678694B (en) 2019-02-05

Similar Documents

Publication Publication Date Title
CN107678694B (en) RAID stripe method for reconstructing and solid-state disk
CN110245093B (en) Workload adaptive overallocation in solid state storage drive arrays
US9727271B2 (en) Data storage device and flash memory control method
US20200167083A1 (en) Techniques for controlling recycling of blocks of memory
JP6077673B2 (en) Method with runtime variable RAID protection scheme, solid-state drive controller, and data storage device
US8799747B2 (en) Data hardening to compensate for loss of data retention characteristics in a non-volatile memory
JP5242264B2 (en) Data control apparatus, storage system, and program
US8843698B2 (en) Systems and methods for temporarily retiring memory portions
CN104216665B (en) The memory management method of multilevel-cell solid state hard disc
US8468292B2 (en) Solid state drive data storage system and method
JP5819610B2 (en) Method and apparatus for writing data to different storage devices
US9910606B2 (en) End of life extension of solid state memory
US7451264B2 (en) Cycle count storage methods
US9268657B1 (en) Varying data redundancy in storage systems
US20150067415A1 (en) Memory system and constructing method of logical block
US20140059405A1 (en) Solid-state drive retention monitor using reference blocks
US20080294814A1 (en) Flash Memory System with Management of Housekeeping Operations
US20080294813A1 (en) Managing Housekeeping Operations in Flash Memory
US20100325351A1 (en) Memory system having persistent garbage collection
US20130086454A1 (en) Adjustable memory allocation based on error correction
Shim et al. Exploiting process similarity of 3D flash memory for high performance SSDs
CN106170773A (en) On naked core, the selectivity of buffer-type nonvolatile memory returns and copies
CN102522121B (en) The method that solid state hard disc is repaired automatically and solid state hard disc thereof
JP2010515179A (en) Flash memory block management method
CN109062506B (en) RAID-5 full flash disk array and method for prolonging overall service life of array

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
CP03 Change of name, title or address

Address after: 518000 3501, venture capital building, No. 9, Tengfei Road, huanggekeng community, Longcheng street, Longgang District, Shenzhen, Guangdong Province

Patentee after: Shenzhen Dapu Microelectronics Co.,Ltd.

Country or region after: China

Address before: 518000 503, block B, building 2, Huangge North Road, Longcheng street, Longgang District, Shenzhen, Guangdong

Patentee before: SHENZHEN DAPU MICROELECTRONICS Co.,Ltd.

Country or region before: China