CN107678694B - RAID stripe method for reconstructing and solid-state disk - Google Patents
RAID stripe method for reconstructing and solid-state disk Download PDFInfo
- Publication number
- CN107678694B CN107678694B CN201710964327.4A CN201710964327A CN107678694B CN 107678694 B CN107678694 B CN 107678694B CN 201710964327 A CN201710964327 A CN 201710964327A CN 107678694 B CN107678694 B CN 107678694B
- Authority
- CN
- China
- Prior art keywords
- physical block
- error
- rate
- raw bit
- block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
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
- 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/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- 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/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Abstract
The invention discloses a kind of RAID stripe method for reconstructing applied to solid-state disk, recombination, which is carried out, for the physical block group to RAID memory array forms new RAID stripe, this method comprises: step S1, detects the raw Bit-Error-Rate of physical block and updated and be recorded in bulk state table;Step S2 obtains weak block message according to the raw Bit-Error-Rate in bulk state table;Step S3, obtains weak block number mesh by bulk state table, carries out band tissue to physical block;The LSB page of physical block in same RAID stripe and MSB pages are staggeredly carried out band tissue in block by step S4.RAID stripe method for reconstructing of the invention realizes the dynamic adjustment of solid-state disk RAID stripe, avoids loss of data, while avoiding waste of storage space, improve the reliability of solid-state disk, extend the service life of solid-state disk.Meanwhile the invention also discloses a kind of solid-state disks comprising RAID memory array and the controller for the RAID memory array adaptively to be adjusted and is managed to the data that it is stored.
Description
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 technique
Solid-state disk is because of its high-performance, and low energy consumption, anti-seismic performance is good, as a feasible substitute of disk,
It is widely used in server system.With the progress of flash technology, especially from SLC (Single-LevelCell) technology to
The development of MLC (Multi-LevelCell) technology and flash memory making technology, flash capacity increasingly increase.However, flash memory physical block
Endurance but decline to a great extent, reliability significantly reduce.For the consistency for guaranteeing data, the manufacturer of solid-state disk uses in disk
The reliability of independent hard disk redundancy array (RAID) mechanism enhancing solid-state disk.
The function to be realized of RAID first is that striping is carried out to multiple memories of controller control, and to multiple storages
Device, which carries out striping, may make that mutually indepedent incoherent memory pool is at the memory array of an entirety originally.Striping
It is the data block for continuous data being divided by controller same size, 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 common particle for forming solid-state disk.Flash memories
Write operation need by " erase-write " two operating process.If storage unit to be written, it is necessary to be deposited to this
The physical block of storage unit executes erasing operation, and after the completion of being wiped free of, the data content of entire physical block is all emptied, erasing operation
Process is known as recycling.
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.Moreover, because the difference of manufacturing process, solid-state disk is in physics
There are the non-uniform phenomenons of Fault Distribution for block, Hash memory pages etc..For example, under identical program/erase number, different physical blocks
Embody different error properties;In the same physical block, what the page (MSB pages) of most significant bit composition was formed 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 entire lifetime
The RAID strategy for determining intensity, caused in solid-state disk using the later period, and 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 period demand.
In the prior art, SehwanLee et al. proposes the RAID scheme of service life perception, in different program/erases
Under several, using the RAID strategy of varying strength, guarantee the reliability of solid-state disk entire lifetime with the smallest memory space expense.
But the RAID of service life perception has ignored the wear-resistant power of the medium as caused by manufacturing process (physical block level and Hash memory pages grade)
Difference, the sole indicator measured using program/erase number as the degree of wear sacrifice sky although existing to adjust RAID intensity
Between capacity, but RAID intensity adjustment the case where being still unable to satisfy reliability requirement.
On the one hand, ignore the difference between the wear-resistant power of physical block level: when two or more are with higher original
When the physical block of the bit error rate is in same band, the promotion of band reliability can not offset the abrasion of the physical block, to can lead
Cause loss of data;On the other hand, ignore the difference between the wear-resistant power of Hash memory pages grade: the RAID of service life perception by LSB page and
MSB pages separately constitutes RAID stripe, so that the degree of wear of entire MSB band is significantly larger than LSB band, and since 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, to bring space waste.
In consideration of it, it is necessary to provide what one kind can solve drawbacks described above to 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 array of rate adaptively recombinates.
Summary of the invention
A technical problem to be solved by this invention is to provide a kind of achievable RAID memory array and adaptively recombinates,
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 a kind of technical solution as described below: RAID stripe method for reconstructing,
Rebuild with the physical block group to RAID memory array 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 obtains weak block message according to the raw Bit-Error-Rate in bulk state table;
Step S3, obtains weak block number mesh by bulk state table, carries out band tissue to physical block;
The LSB page of physical block in same RAID stripe and MSB pages are staggeredly carried out band tissue in block by step S4.
Its further technical solution are as follows: the step S1 specifically includes the following steps:
Step S1.1, total physical block of setting program/erase frequency threshold value, weak piece of raw Bit-Error-Rate threshold value and physical block group
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 need to carry out the original mistake of physical block when program/erase number reaches according to the judging result of step S1.2
When the program/erase frequency threshold value of code rate detection, the raw Bit-Error-Rate detection of physical block is carried out simultaneously by it to the physical block group
It is recorded in bulk state table.
Its further technical solution are as follows: the step S1.3 specifically: according to the judging result of step S1.2, 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, obtain the raw Bit-Error-Rate of Hash memory pages, and 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 solution are as follows: the step S1 further include: according to the judging result of step S1.2, 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, directly execution step S3.
Its further technical solution are as follows: the step S2 specifically includes the following steps:
Step S2.1 is recorded in the raw Bit-Error-Rate value of bulk state table and weak piece of original error code of setting according to step S1.3
Rate threshold value is compared, judge physical block raw Bit-Error-Rate value whether be more than setting weak piece of raw Bit-Error-Rate threshold value;
Step S2.2, according to the judging result of step S2.1, if the raw Bit-Error-Rate value of physical block is more than weak piece original
The physical block is then labeled as weak piece, and is recorded in bulk state table by bit error rate threshold.
Its further technical solution are as follows: the step S2 further include: according to the judging result of step S2.1, when physical block
Raw Bit-Error-Rate value is less than weak piece of raw Bit-Error-Rate threshold value of setting, then directly executes step S3.
Its further technical solution are as follows: the step S2.2 further include:
Step S2.2.1, bad block prediction judgement, weak piece of number is obtained according to the weak block message in bulk state table, is judged weak
Whether block number mesh is more than 1/2 of physical block number in physical block group;
Step S2.2.2, according to the judging result of step S2.2.1, when weak block number mesh is more than the 1/2 of total physical block number
When, prejudging the maximum physical block of raw Bit-Error-Rate in physical block group according to the raw Bit-Error-Rate information of bulk state table is bad block, right
Bad block is replaced, and the update of the raw Bit-Error-Rate of physical block new after replacement is recorded in bulk state table;Otherwise it directly holds
Row step S3.
Its further technical solution are as follows: the step S3 specifically: 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, it will be each weak
Block is placed in different RAID stripes, it is ensured that and weak piece of only one 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 solution are as follows: the step S3 further include:
Step S3.1, the storage verification data in weak piece of the physical block group of RAID stripe.
In order to solve the above technical problems, including RAID memory array and control the present invention also provides a kind of solid-state disk
Device processed, the RAID memory array are used for segmented storing data;When the program/erase number of solid-state disk is more than preset threshold
When value, the controller carries out the RAID memory array for executing above-mentioned RAID stripe method for reconstructing adaptive
Recombination, and the storing data of the RAID memory array is managed.
The beneficial technical effect of the present invention lies in: RAID stripe method for reconstructing provided by the invention passes through detection 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 object
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 extends the service life of solid-state disk, can effectively protect data, prevents loss of data;Meanwhile by the object in same RAID stripe
Band tissue in the LSB page of block and the MSB pages of progress block that interlocks is managed, the inhomogeneities of data page Fault Distribution in physical block is overcome,
Avoid the occurrence of reliability difference it is too big caused by waste of storage space the problem of, improve storage space utilization.Meanwhile this hair
The bright solid-state disk that additionally provides includes RAID memory array and controller, and the controller can carry out RAID memory array
Adaptive recombination extends solid-state disk system lifetim to improve the reliability of solid-state disc system.
Detailed description of the invention
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.
Specific embodiment
To make those skilled 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, will be described below embodiment is only the present invention
A part of the embodiment, instead of all the embodiments.Based on the embodiments of the present invention, those of ordinary skill in the art are not having
Every other embodiment obtained under the premise of creative work is made, shall fall within the protection scope of the present invention.
RAID stripe method for reconstructing of the present invention, for using stripe depth as block RAID stripe tissue or physical location be
Static RAID stripe tissue is rebuild applied in solid-state disk with the physical block group to RAID memory array, is formed new
RAID stripe with storing data, dynamic adjustment is carried out to RAID stripe, improves solid-state disk system reliability.
Referring to Fig.1, the RAID stripe method for reconstructing the following steps are included:
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 that physical block is detected using read-after-write mode, i.e., in physics
The data of write-in are read after block programming at once with the error situation of detection data, to detect the raw Bit-Error-Rate of physical block, have
The read-after-write mode of body can refer to " the New ERA:new efficient that MingchangYang et al. is delivered
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.
Referring to Fig. 2, in some embodiments, such as the present embodiment, the step S1 specifically includes the following steps:
Step S1.1, total physical block of setting program/erase frequency threshold value, weak piece of raw Bit-Error-Rate threshold value and physical block group
Number.
Wherein, weak piece of physical block high for raw Bit-Error-Rate, wear-resistant power is poor.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 set 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 variation range, less, therefore, solid-state disk is used for the abrasion variation of physical block
The interval at initial stage, the program/erase frequency threshold value of setting is larger;With the use of solid-state disk, the abrasion variation of physical block with
The growth variation of program/erase number is very fast, therefore the interval for the program/erase frequency threshold value being arranged 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 be more than it is described programming/
When 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 for judging object
Manage whether block is weak piece, when detected physical block raw Bit-Error-Rate is more than the weak piece of raw Bit-Error-Rate threshold value, the then object
Managing block is weak piece.
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 the way that program/erase frequency threshold value is arranged, can be judged whether to need to detect physical block according to program/erase number
Raw Bit-Error-Rate reduces the reading to physical block data to control the frequency of physical block raw Bit-Error-Rate detection, reduces solid-state
The expense that physical block raw Bit-Error-Rate detects in disk.In solid-state disk use process, the programming of program/erase number and setting/
Erasing times threshold value is compared, when program/erase number be more than the program/erase frequency threshold value when, then to physical block into
The detection of row raw Bit-Error-Rate.
Step S1.3 need to carry out the original mistake of physical block when program/erase number reaches according to the judging result of step S1.2
When the program/erase frequency threshold value of code rate detection, the raw Bit-Error-Rate detection for carrying out physical block 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 specifically: according to the judging result of step S1.2, when program/erase number reaches step
When the need of rapid S1.1 setting 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, obtain the raw Bit-Error-Rate of Hash memory pages, and 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 obtains weak block message according to the raw Bit-Error-Rate in bulk state table.
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, whether it is weak that the raw Bit-Error-Rate for detecting physical block can be the multilevel iudge physical block
Block provides foundation.The weak block message indicates the information of physical block of the label for block in bulk state table, for which object to be learnt
Managing block is weak piece.
With continued reference to Fig. 2, in some embodiments, such as the present embodiment, the step S2 specifically includes the following steps:
Step S2.1 is recorded in the raw Bit-Error-Rate value of bulk state table and weak piece of original error code of setting according to step S1.3
Rate threshold value is compared, judge physical block raw Bit-Error-Rate value whether be more than setting weak piece of raw Bit-Error-Rate threshold value.
Step S2.2, according to the judging result of step S2.1, if the raw Bit-Error-Rate value of physical block is more than weak piece original
The physical block is then labeled as weak piece, and is recorded in bulk state table by bit error rate threshold.
In some embodiments, such as the present embodiment, the step S2.2 is further comprising the steps of:
Step S2.2.1, bad block prediction judgement, weak piece of number is obtained according to the weak block message in bulk state table, is judged weak
Whether block number mesh is more than 1/2 of total physical block number in physical block group.
Step S2.2.2, according to the judging result of step S2.2.1, when weak block number mesh is more than the 1/2 of total physical block number
When, prejudging the maximum physical block of raw Bit-Error-Rate in physical block group according to the raw Bit-Error-Rate information of bulk state table is bad block, right
Bad block is replaced, and the update of the raw Bit-Error-Rate of physical block new after replacement is recorded in bulk state table;Otherwise it directly holds
Row step S3.
Wherein, bad block is that raw Bit-Error-Rate is maximum in physical block group when weak block number mesh is more than 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.It is extensive to can avoid RAID data when the replacement of bad block for the migration that valid data are completed before wiping bad block
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
It is below weak piece of raw Bit-Error-Rate threshold value, that is, replacing new physical block after bad block is non-weak piece of physical block, to ensure weak block number mesh
Less than the 1/2 of total physical block number, so that preventing the loss of data in physical block compiling procedure without bad block in solid-state disk.When weak
When block number mesh is more than the 1/2 of total physical block number, the prediction judgement of bad block is triggered, the maximum physical block of raw Bit-Error-Rate is labeled as
Bad block is conducive to the use that bad block is avoided in later period solid-state disk use process, reduces error rate.
Step S3, obtains weak block number mesh by bulk state table, carries out band tissue to physical block.
In conjunction with Fig. 2 and 3, further, the step S3 specifically: according to the weak block message of bulk state table, statistics is obtained
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, it will
Each weak piece is placed in different RAID stripes, it is ensured that and weak piece of only one 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 the present embodiment, the step S1 further include: according to the judging result of step S1.2,
When program/erase number 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 the present embodiment, the step S2 further include: according to the judging result of step S2.1,
When the raw Bit-Error-Rate value of physical block is less than weak piece of raw Bit-Error-Rate threshold value of setting, then step S3 is directly executed.
The combination of the RAID stripe in solid-state disk between physical block is illustrated referring to Fig. 3, Fig. 3, every a line represents solid-state disk in Fig. 3
RAID stripe when 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 program/erase number is smaller, when weak block number mesh is 0, entire 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 be 1 when, the non-weak piece of physical block of entire solid-state disk with should
Weak piece of one RAID stripe of composition, as shown in the second row in Fig. 3;When weak block number mesh is 2, RAID stripe number is two at this time,
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 is gradually increased, when weak block number mesh reaches solid-state disk object
When managing block number purpose half, then one weak piece and one non-weak piece of physical block forms a RAID stripe, reaches maximum superfluous at this time
Remaining.
Determine that RAID stripe number, dynamic adjust the size and composition of RAID stripe according to weak block number mesh, it can be ensured that each
Weak piece of only one in RAID stripe, the intensity by promoting RAID offsets weak piece of abrasion, to avoid loss of data, improves
The reliability of solid-state disk.
With continued reference to Fig. 3, in some embodiments, such as the present embodiment, the step S3 further include:
Step S3.1, the storage verification data in weak piece of the physical block group of RAID stripe.
Wherein, the verification data are used for the integrality and accuracy of detection data, and in conjunction with Fig. 3, P represents check number in figure
According to verification data are placed in weak piece of each band, since verification data only can be restored just to be read out in data, and in weak piece
Verification data are contained only, the influence for reading interference is can avoid, minimizes the interference to weak piece, it is higher to error rate weak to reduce user
Block carries out reading data, to reduce ECC (ErrorCorrectingCode) decoding time in reading process, 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, uses initial stage in solid-state disk, when
When weak piece being not present in physical set, verification data are placed in physical block last in RAID stripe.
Based on above-mentioned steps, with the use of solid-state disk, weak block number mesh is gradually increased, 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 verify data be placed in it is weak
In block, reach maximum verification redundancy at this time.Only one weak piece of each RAID stripe can avoid the redundancy of verification data, drop
Low waste of storage space.
The LSB page of physical block in same RAID stripe and MSB pages are staggeredly carried out band tissue in block by step S4.
LSB page and MSB pages are staggeredly subjected to band tissue in block, the unevenness 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,
To avoid the problem that Physical Page group occur reliability difference it is too big caused by waste of storage space, improve memory space and utilize
Rate.
The present invention also provides a kind of solid-state disks, include RAID memory array and controller, wherein the memory
Array is used for segmented storing data;When the program/erase number of solid-state disk is more than preset threshold value, the controller is used for
Above-mentioned RAID stripe method for reconstructing is executed adaptively to be recombinated to the RAID memory array, and the RAID is deposited
The storing data of memory array is managed, and to improve the reliability of system, extends lifetime of system.
In conclusion the raw Bit-Error-Rate of RAID stripe method for reconstructing of the invention by detection physical block, perceives physics
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 includes 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
The weak piece of loss of data caused by the same RAID stripe, improve solid-state disk system reliability, extend the service life of solid-state disk;Into
Row bad block detection, and migrates valid data when replace bad block in advance, can effectively protect data, prevents RAID stripe recycling and bad
Loss of data when block is replaced;Data will be verified to be set in weak piece with the reading of reduction weak block number evidence higher to error rate, mentioned
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, overcomes 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, improves space utilization rate;Bad block forecasting mechanism, prediction physical block error, to prevent the later period solid are set
Loss of data when state disk uses.Meanwhile solid-state disk of the invention can carry out adaptively RAID memory array by controller
Recombination with dynamically adjust RAID stripe form and size, improve the reliability of system, prevent loss of data.
The above description is only a preferred embodiment of the present invention, rather than does limitation in any form to the present invention.This field
Technical staff can impose various equivalent changes and improvement, all institutes within the scope of the claims on the basis of the above embodiments
The equivalent variations or modification done, should all fall under the scope of the present invention.
Claims (9)
1. a kind of RAID stripe method for reconstructing carries out recombination shape applied to solid-state disk with the physical block group to RAID memory array
The RAID stripe of Cheng Xin, which is characterized in that method includes 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 obtains weak block message according to the raw Bit-Error-Rate in bulk state table, wherein weak piece high, resistance to for raw Bit-Error-Rate
The physical block of abrasive forces difference;
Step S3 obtains weak block number mesh by the weak block message of bulk state table, and carries out band tissue according to weak block number mesh, according to
Weak block number mesh determines the RAID stripe number of physical block group, and each weak piece is placed in different RAID stripes, it is ensured that every RAID
Weak piece of only one in band, while the non-weak piece of physical block of remaining in solid-state disk is evenly distributed in each RAID stripe according to number
In band;
The LSB page of physical block in same RAID stripe and MSB pages are staggeredly carried out band tissue in block by step S4.
2. RAID stripe method for reconstructing as described in claim 1, which is characterized in that the step S1 specifically includes following step
It is rapid:
Step S1.1, total physics block number of setting program/erase frequency threshold value, weak piece of raw Bit-Error-Rate threshold value and physical block group
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 need to carry out physical block raw Bit-Error-Rate when program/erase number reaches according to the judging result of step S1.2
When the program/erase frequency threshold value of detection, the raw Bit-Error-Rate detection for carrying out physical block to the physical block group is recorded simultaneously
In bulk state table.
3. RAID stripe method for reconstructing as claimed in claim 2, which is characterized in that the step S1.3 specifically: according to step
The judging result of rapid S1.2 need to carry out the program/erase number of physical block raw Bit-Error-Rate detection when program/erase number reaches
When 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 object
Raw Bit-Error-Rate of the maximum Hash memory pages raw Bit-Error-Rate as the physical block in block is managed, is recorded in bulk state table.
4. RAID stripe method for reconstructing as claimed in claim 2, which is characterized in that the step S1 further include: according to step
The judging result of S1.2, when program/erase number need to not up to carry out the program/erase number of physical block raw Bit-Error-Rate detection
When threshold value, directly execution step S3.
5. RAID stripe method for reconstructing as claimed in claim 2, which is characterized in that the step S2 specifically includes following step
It is rapid:
Step S2.1 is recorded in the raw Bit-Error-Rate value of bulk state table and weak piece of raw Bit-Error-Rate threshold of setting according to step S1.3
Value is compared, judge physical block raw Bit-Error-Rate value whether be more than setting weak piece of raw Bit-Error-Rate threshold value;
Step S2.2, according to the judging result of step S2.1, if the raw Bit-Error-Rate value of physical block is more than weak piece of original error code
The physical block is then labeled as weak piece, and is recorded in bulk state table by rate threshold value.
6. RAID stripe method for reconstructing as claimed in claim 5, which is characterized in that the step S2 further include: according to step
The judging result of S2.1 is then directly held when the raw Bit-Error-Rate value of physical block is less than weak piece of raw Bit-Error-Rate threshold value of setting
Row step S3.
7. RAID stripe method for reconstructing as claimed in claim 5, which is characterized in that the step S2.2 further include:
Step S2.2.1, bad block prediction judgement, weak piece of number is obtained according to the weak block message in bulk state table, judges weak block number
Whether mesh is more than 1/2 of total physical block number in physical block group;
Step S2.2.2, according to the judging result of step S2.2.1, when weak block number mesh is more than the 1/2 of total physical block number, root
According to bulk state table raw Bit-Error-Rate information anticipation physical block group in the maximum physical block of raw Bit-Error-Rate be bad block, to bad block into
Row replacement, and the update of the raw Bit-Error-Rate of physical block new after replacement is recorded in bulk state table;Otherwise step is directly executed
S3。
8. RAID stripe method for reconstructing as described in claim 1, which is characterized in that the step S3 further include:
Step S3.1, the storage verification data in weak piece of the physical block group of RAID stripe.
9. a kind of solid-state disk includes RAID memory array and controller, it is characterised in that: the RAID memory array is used
In segmented storing data;When the program/erase number of solid-state disk is more than preset threshold value, the controller is for executing
RAID stripe method for reconstructing according to any one of claims 1 to 8 is stated adaptively to be weighed to the RAID memory array
Group, and the storing data of the RAID memory array is managed.
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 CN107678694A (en) | 2018-02-09 |
CN107678694B true 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) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108804045B (en) * | 2018-06-28 | 2021-10-15 | 郑州云海信息技术有限公司 | Bad block table establishing method and related device |
CN109830257A (en) * | 2019-01-24 | 2019-05-31 | 山东华芯半导体有限公司 | A kind of method of weak piece of NAND Flash screening |
CN110231999B (en) * | 2019-05-29 | 2020-05-19 | 华中科技大学 | Method and device for improving reliability of storage system based on local repair coding |
CN111158589B (en) * | 2019-12-16 | 2023-10-20 | 绿晶半导体科技(北京)有限公司 | Dynamic management method and device for storage array |
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 |
CN111813609B (en) * | 2020-07-23 | 2021-10-15 | 深圳大普微电子科技有限公司 | Data recovery method in storage medium, data recovery system and related equipment |
CN112506430B (en) * | 2020-12-04 | 2022-07-26 | 苏州浪潮智能科技有限公司 | Method and device for keeping SSD fixed stripe size |
CN113782082B (en) * | 2021-09-10 | 2024-01-16 | 深圳大普微电子科技有限公司 | Two-dimensional wear balancing method for flash memory and solid state disk |
CN115629720B (en) * | 2022-12-20 | 2023-07-28 | 鹏钛存储技术(南京)有限公司 | Asymmetric striping method on storage device based on flash memory as medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106227463A (en) * | 2016-07-11 | 2016-12-14 | 苏州科达科技股份有限公司 | RAID model, reading and writing data and method for reconstructing thereof |
CN106990918A (en) * | 2017-03-03 | 2017-07-28 | 杭州宏杉科技股份有限公司 | Trigger the method and device that RAID array is rebuild |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101625627B (en) * | 2009-08-05 | 2012-03-21 | 成都市华为赛门铁克科技有限公司 | Data read-in method, disc redundant array and controller thereof |
CN102508733B (en) * | 2011-09-22 | 2016-01-20 | 杭州华三通信技术有限公司 | A kind of data processing method based on disk array 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 |
CN107220148B (en) * | 2016-03-21 | 2020-12-04 | 伊姆西Ip控股有限责任公司 | Reconstruction method and device for redundant array of independent disks |
CN106528003A (en) * | 2016-12-09 | 2017-03-22 | 曙光信息产业(北京)有限公司 | Method and device for rebuilding disk array |
-
2017
- 2017-10-17 CN CN201710964327.4A patent/CN107678694B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106227463A (en) * | 2016-07-11 | 2016-12-14 | 苏州科达科技股份有限公司 | RAID model, reading and writing data and method for reconstructing thereof |
CN106990918A (en) * | 2017-03-03 | 2017-07-28 | 杭州宏杉科技股份有限公司 | Trigger the method and device that RAID array is rebuild |
Also Published As
Publication number | Publication date |
---|---|
CN107678694A (en) | 2018-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107678694B (en) | RAID stripe method for reconstructing and solid-state disk | |
US9727271B2 (en) | Data storage device and flash memory control method | |
US9606737B2 (en) | Variable bit encoding per NAND flash cell to extend life of flash-based storage devices and preserve over-provisioning | |
US10055294B2 (en) | Selective copyback for on die buffered non-volatile memory | |
US9910606B2 (en) | End of life extension of solid state memory | |
US9298534B2 (en) | Memory system and constructing method of logical block | |
US20110302477A1 (en) | Data Hardening to Compensate for Loss of Data Retention Characteristics in a Non-Volatile Memory | |
US9946483B2 (en) | Efficiently managing unmapped blocks to extend life of solid state drive with low over-provisioning | |
CN104216665B (en) | The memory management method of multilevel-cell solid state hard disc | |
US20160342345A1 (en) | Variable Bit Encoding Per NAND Flash Cell to Improve Device Endurance and Extend Life of Flash-Based Storage Devices | |
US11960409B2 (en) | Zone-aware memory management in memory sub-systems | |
US20100325351A1 (en) | Memory system having persistent garbage collection | |
US9268657B1 (en) | Varying data redundancy in storage systems | |
US20140059405A1 (en) | Solid-state drive retention monitor using reference blocks | |
US9946473B2 (en) | Efficiently managing unmapped blocks to extend life of solid state drive | |
JP2015535640A (en) | Method with runtime variable RAID protection scheme, solid-state drive controller, and data storage device | |
US10915443B2 (en) | Allocation of overprovisioned blocks for minimizing write amplification in solid state drives | |
CN102522121B (en) | The method that solid state hard disc is repaired automatically and solid state hard disc thereof | |
CN113924546A (en) | Wear-aware block mode switching in non-volatile memory | |
CN114429778A (en) | Managing bin placement for a family of blocks of a memory device using trigger metric scoring | |
US11404141B2 (en) | Preemptive read refresh in memories with time-varying error rates | |
US11698742B2 (en) | Garbage collection in a memory component using an adjusted parameter | |
Yang et al. | Gd-ftl: Improving the performance and lifetime of tlc ssd by downgrading worn-out blocks | |
US20240061589A1 (en) | Code rate as function of logical saturation | |
US20230393920A1 (en) | Adaptive wear leveling for endurance compensation |
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 |