CN108804045A - A kind of bad block table method for building up and relevant apparatus - Google Patents
A kind of bad block table method for building up and relevant apparatus Download PDFInfo
- Publication number
- CN108804045A CN108804045A CN201810688090.6A CN201810688090A CN108804045A CN 108804045 A CN108804045 A CN 108804045A CN 201810688090 A CN201810688090 A CN 201810688090A CN 108804045 A CN108804045 A CN 108804045A
- Authority
- CN
- China
- Prior art keywords
- bad block
- block table
- target
- band
- 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.)
- Granted
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
-
- 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/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
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 bad block table method for building up,System,Device and computer readable storage medium,It can be when writing SSD,The bad block table of each band is written to corresponding data frame,And user data is followed to write with a brush dipped in Chinese ink in flash,When being powered on again after powered-off fault,It can be obtained by the bad block table of corresponding band by obtaining the bad block table in target data frame,And then obtain SSD overall situation bad block tables,Since band bad block table is in write-in DF and to write with a brush dipped in Chinese ink in flash,Therefore when obtaining the bad block table for the band each write with a brush dipped in Chinese ink down,It is most really and accurately bad block table that can make acquisition result,It is avoided simultaneously by according to reading block states structure,Or the method by calculation structure bad block table,Avoid the bad block table because old,Cause the generation of SSD read-write failures,Or the case where SSD capacity diminution,Enhance SSD stability and reliability.
Description
Technical field
The present invention relates to SSD technology fields, more specifically to a kind of bad block table method for building up, system, device and meter
Calculation machine readable storage medium storing program for executing.
Background technology
Currently, usually will appear bad block, i.e. bad block in SSD (Solid State Drives, solid state disk), it is
It has been damaged in SSD, the block that cannot be written and read again, there is manufacture bad block and has increased by two class of bad block.It is that SSD exists to increase bad block
During use, the normal erasable readings of block are gradually worn out, and lose the block of read-write capability.SSD can be by building one in DDR
A overall situation bad block table (bad block bitmap table) is managed all block.Each representative of Bitmap
One block, 1 represents the block represents the block preferably block as bad block, 0.SSD can be avoided in use by searching for bad block table
Bad block.
When SSD can be by periodically writing with a brush dipped in Chinese ink or being lower electric, newest bad block table in DDR is write with a brush dipped in Chinese ink in flash.On SSD is normal
When electric, bad block table can be restored by reading the flash of corresponding address.But in powered-off fault, the energy storage carried in SSD is electric
Appearance can be connected powers to SSD, before storage capacitor electricity exhausts, it is possible that newest bad block table does not write with a brush dipped in Chinese ink completion all
The case where.If there is afore-mentioned, SSD after the power is turned on, will can only obtain a new bad block table, to miss out new production again
Raw bad block.
Currently, overall block can be carried out and wipe reading, build bad block table by reading feedback states, this method can get accurate
Bad block table, but all data saved in SSD can be lost;In addition, also reading can be scanned to overall all block
Mode, build bad block table by reading feedback states, but preserve data in block, when read error can feed back a variety of reading mistakes
Accidentally state;At this point, be only inaccurate come the bad block table built by wherein several error conditions, it may be by good block as bad
Block directly reduces capacity workable for SSD disks.
Therefore, accurate bad block table how is obtained, is those skilled in the art's problem to be solved.
Invention content
The purpose of the present invention is to provide a kind of bad block table method for building up, system, device and computer readable storage medium,
To obtain accurate bad block table.
To achieve the above object, an embodiment of the present invention provides following technical solutions:
A kind of bad block table method for building up, including:
The bad block table of each band is written in data frame corresponding with each band, and by the data
The data of frame are written to flash;
The bad block table in target data frame in each band is read, obtains reading result;
SSD overall situation bad block tables are updated using the reading result.
Wherein, the band includes the common block for storing user data of the first predetermined number;With 1
Parity block, wherein the parity block store the data exclusive or result of the common block;It is described common
The block and parity block are respectively the first preset numbers block of the lun from the second predetermined number, wherein often
A lun includes the block being numbered according to identical numbering.
Wherein, the bad block table read in each band in target data frame, is read as a result, wrapping
It includes:
Super page are determined in each band;Wherein, the super page are in each band
All second preset numbers page;Each block of the wherein described band includes being numbered according to identical numbering
page;
Two target page are determined in the super page;
It obtains respectively belonging to the super page that the target data frame in described two target page are preserved
The bad block table of band obtains two target bad block tables;
The reading result is determined using the target bad block table.
Wherein, described to determine the reading as a result, including using the target bad block table:
Judge whether described two target bad block tables are identical;
If so, determining that any one of target bad block table is the reading result;
If not, it is determined that the target bad block table being not zero is the reading result.
Wherein, the super that the target data frame obtained respectively in described two target page are preserved
The bad block table of band belonging to page obtains two target bad block tables, including:
S401 obtains the super page institutes that the target data frame in described two target page are preserved respectively
The bad block table of the band of category;
S402 judges whether to obtain two target bad block tables;
S403, if so, executing described the step of determining the reading result using the target bad block table;
S404, if not, it is determined that the quantity for not obtaining target bad block table, as failure quantity;
S405 determines the failure in the page for not attempting to obtain the target bad block table of the super page
The target page of quantity;Return to S401.
Wherein, after the S404, further include:
The failure quantity is added to history failure quantity, judges whether the history failure quantity is more than default threshold
Value;
If so, stopping operation, it is bad that the bad block table of the band belonging to the super page, which is recorded as all block,
Block obtains the new bad block table for corresponding to the affiliated bands of super page, and using the new bad block table as target bad block table;
If it is not, then executing S405.
In order to solve the above technical problems, present invention also provides a kind of bad block tables to establish system, including:
Writing module, for the bad block table of each band to be written to data frame corresponding with each band
In;
Read module obtains reading result for reading the bad block table in each band in target data frame;
Update module, for updating SSD overall situation bad block tables using the reading result.
Wherein, the band includes the common block for storing user data of the first predetermined number;With 1
Parity block, wherein the parity block store the data exclusive or result of the common block;It is described common
The block and parity block are respectively the first preset numbers block of the lun from the second predetermined number, wherein often
A lun includes the block being numbered according to identical numbering.
Present invention also provides a kind of bad block tables to establish device, including:
Memory, for storing computer program;
Processor is realized when for executing the computer program such as the step of the bad block table method for building up.
Present invention also provides a kind of computer readable storage medium, meter is stored on the computer readable storage medium
Calculation machine program is realized when the computer program is executed by processor such as the step of the bad block table method for building up.
By above scheme it is found that a kind of bad block table method for building up provided by the invention, including:By the bad block of each band
Table is written in data frame corresponding with each band, and the data of the data frame are written to flash;
The bad block table in target data frame in each band is read, obtains reading result;It is updated using the reading result
SSD overall situation bad block tables.
It can be seen that a kind of bad block table method for building up provided by the present application, it can be when writing SSD, by the bad of each band
Block table is written to corresponding data frame, and user data is followed to write with a brush dipped in Chinese ink in flash, is powered on again after powered-off fault
When, the bad block table of corresponding band is can be obtained by by obtaining the bad block table in target data frame, and then obtain the SSD overall situations
Bad block table is obtaining the band each write with a brush dipped in Chinese ink down since band bad block table is in write-in DF and to write with a brush dipped in Chinese ink in flash
When bad block table, it is most really and accurately bad block table that can make acquisition result, while being avoided by according to reading block state structures
It builds, or the method that bad block table is built by calculation, avoids the bad block table because old, cause the generation of SSD read-write failures,
Or the case where SSD capacity diminution, enhance SSD stability and reliability.
Present invention also provides a kind of bad block tables to establish system, device and computer readable storage medium, equally can be real
Existing above-mentioned technique effect.
Description of the drawings
In order to more clearly explain the embodiment of the invention or the technical proposal in the existing technology, to embodiment or will show below
There is attached drawing needed in technology description to be briefly described, it should be apparent that, the accompanying drawings in the following description is only this
Some embodiments of invention for those of ordinary skill in the art without creative efforts, can be with
Obtain other attached drawings according to these attached drawings.
Fig. 1 is a kind of bad block table method for building up flow chart disclosed by the embodiments of the present invention;
Fig. 2 is a kind of specific bad block table method for building up flow chart disclosed by the embodiments of the present invention;
Fig. 3 is a kind of specific bad block table method for building up flow chart disclosed by the embodiments of the present invention;
Fig. 4 is a kind of specific bad block table method for building up flow chart disclosed by the embodiments of the present invention;
Fig. 5 is that a kind of specific bad block table disclosed by the embodiments of the present invention establishes system structure diagram;
Fig. 6 is that a kind of specific bad block table disclosed by the embodiments of the present invention establishes apparatus structure schematic diagram.
Specific implementation mode
Following will be combined with the drawings in the embodiments of the present invention, and technical solution in the embodiment of the present invention carries out clear, complete
Site preparation describes, it is clear that described embodiments are only a part of the embodiments of the present invention, instead of all the embodiments.It is based on
Embodiment in the present invention, it is obtained by those of ordinary skill in the art without making creative efforts every other
Embodiment shall fall within the protection scope of the present invention.
The embodiment of the invention discloses a kind of bad block table method for building up, system, device and computer readable storage medium, with
Obtain accurate bad block table.
Referring to Fig. 1, a kind of bad block table method for building up provided in an embodiment of the present invention specifically includes:
The bad block table of each band is written in data frame corresponding with each band by S101, and by institute
The data for stating data frame are written to flash.
In the present solution, write-in can be executed to SSD when writing SSD (Solid State Drives, solid state disk)
When operation, the bad block table of each band is just just written to each data frame (data frame, abbreviation DF) in the band
In control meta, i.e. SSD controller will be filled with the band of user data and writes with a brush dipped in Chinese ink in flash every time, each in band
Page corresponds to a page in flash block.
S102 reads the bad block table in target data frame in each band, obtains reading result.
Specifically, in SSD powered-off faults, then the bad block table in each band in target data is read after the power is turned on, read
Take result.
In SSD powered-off faults, then depth recovery flow is executed after the power is turned on, be in same band by scan full hard disk reading
Two difference block same number DF the regions control meta, obtain the bad block table of the band, and update and arrive DDR
The corresponding position of global bad block table in (Double Data Rate, Double Data Rate synchronous DRAM).Scan full hard disk
After, you can obtain accurate bad block table.
It should be noted that in the present solution, a band includes common block and 1 of the first predetermined number
Parity block, wherein the parity block store the data exclusive or result of the common block;It is described common
The block and parity block are respectively the first preset numbers block of the lun from the second predetermined number, wherein often
A lun includes the block being numbered according to identical numbering.
May include 15+1 block for example, in a band, i.e., 15 common block and 1 parity
Block, this 16 block are for example to number the block for being 1 respectively from the same number of different lun respectively.
More specifically, the super page buffer for buffered user data are created in DDR:Super page are adopted
With the Raid5 mechanism of Adaptive Raid, maximum supports 15+1.In logic realization, the spaces SSD can be used partitioned organization
Mode.For example, the physical space of 32TB is divided into 4 areas (Partition), managed respectively by a controller core, often
A area includes 8TB, 16 channel.In a Partition, including several super lun, each super lun by
Four different lun compositions of four channel (four lun are respectively in different target).In a super lun
Portion, it is exactly a Raid band that identical No. block block, which forms super a block, a super block,.
One super block includes 15+1 block, wherein 15 block are stored for user data, 1 block
Block is verified as parity.The data of Parity block are filled by the data exclusive or of other 15 block.
Inside a super block, identical No. page page forms a super page.As shown in table 1,
Each page in super page is made of 4 4KB data frame, and each data frame carry 16Bytes's
The areas control meta.Wherein 2Bytes indicates the bad block bitmap of the super block, that is, indicates the super
The bad block table of block, the fine or not situation of each mark block, 1 indicates the block indicates the block for bad block, 0
For good block.
Table 1
Inside a super block, the bad of the areas the control meta preservation of all customer data data frame
Block bitmap are identical;And the bad that the areas control meta of data frame preserve in parity block
Block bitmap, because exclusive or calculates, value 0, or it is identical with user data.
S103 updates SSD overall situation bad block tables using the reading result.
Specifically, the global bad block table of SSD can be updated using the bad block table of each obtained band.
It can be seen that a kind of bad block table method for building up provided by the embodiments of the present application, it can be when writing SSD, by each item
The bad block table of band is written to corresponding data frame, and user data is followed to write with a brush dipped in Chinese ink in flash, after powered-off fault again
When powering on, the bad block table of corresponding band is can be obtained by by obtaining the bad block table in target data frame, and then obtain SSD
Global bad block table is obtaining the item each write with a brush dipped in Chinese ink down since band bad block table is in write-in DF and to write with a brush dipped in Chinese ink in flash
When the bad block table of band, it is most really and accurately bad block table that can make acquisition result, while being avoided by according to reading block shapes
State is built, or the method for building bad block table by calculation, avoids the bad block table because old, causes SSD read-write failures
The case where generation or SSD capacity reduce, enhances SSD stability and reliability.
A kind of specific bad block table method for building up provided by the embodiments of the present application is introduced below, is different from above-mentioned reality
Apply example, the embodiment of the present invention has done further restriction and explanation to S102 in above-described embodiment, other step contents with it is above-mentioned
Embodiment can be cross-referenced, and details are not described herein again.
Referring to Fig. 2, a kind of S102 of specific bad block table method for building up provided by the embodiments of the present application, including:
S201 determines super page in each band;Wherein, the super page are each band
In all second preset numbers page;Each block of the wherein described band includes being compiled according to identical numbering
Number page.
It should be noted that band includes the block of the first predetermined number, and each block includes default
Several page, wherein the page in each block is numbered according to same manner, for example, being page0 to page15.?
Determine that a super page, wherein super page are all of a certain number in the band in all block of band
Page, for example, super page be the band all block in first page, i.e. 16 page0, form one
Super page, respectively as page0 to the page15 of super page.
S202 determines two target page in the super page.
After a super page is determined, two target page, preferably the first two page are determined in super page,
Such as the page0 in super page and page1.
S203 obtains the super page institutes that the target data frame in described two target page are preserved respectively
The bad block table of the band of category obtains two target bad block tables.
Specifically, include data frame in each page, such as including four data frame.In the present solution,
A data frame is determined in each page as target data frame, preferably using first DF, that is, DF0 as target
data frame。
It should be noted that being preserved belonging to the page in each data frame in each page
The bad block table of the corresponding whole bands of block.It is right in the present solution, if super block are made of 16 block
The super page answered also have the same number page from 16 block, also there is 16.Two mesh are determined in 16 page
Page is marked, and obtains the band bad block table preserved in a data frame in target page, you can determines the band
Accurate bad block table.
S204 determines the reading result using the target bad block table.
Specifically, after obtaining target bad block table, you can determine and read result.
Referring specifically to Fig. 3, determine that the method for reading result may refer to following steps:
S301 judges whether described two target bad block tables are identical;
S302, if so, determining that any one of target bad block table is the reading result;
S303, if not, it is determined that the target bad block table being not zero is the reading result.
It should be noted that for example 16 page correspond to 16 block, and the bad block table that preceding 15 block are preserved should
All it is the same bad block table of the corresponding band, so if target page comes from preceding 15 page, can determines arbitrary
The bad block table that one target page is preserved is as this reading as a result, and that preserved due to the last one block is front block
Exclusive or result, it is thus possible to be 0, it is also possible to it is identical with front, so if being got from two target page bad
When block table differs, then inherently there are one 0 value, and 0 value is the preservation of parity block as a result, it is not 0 therefore to choose
Bad block table, be the corresponding bad block tables of the common block in front.
A kind of specific bad block table method for building up provided by the embodiments of the present application is introduced below, is different from above-mentioned reality
Apply example, a kind of specific bad block table method for building up provided by the embodiments of the present application has done further S203 in above-described embodiment
It limits and illustrates, other step contents are roughly the same with above-described embodiment, and details are not described herein again.
It is specifically included referring to Fig. 4, S203:
S401 obtains the super page institutes that the target data frame in described two target page are preserved respectively
The bad block table of the band of category.
S402 judges whether to obtain two target bad block tables.
In the present solution, in view of when obtaining two target bad block tables, having the possibility obtained that cannot succeed, obtaining
After the bad block table for the band belonging to the super page that target data frame in described two target page are preserved,
Judge whether to have got two target bad block tables, if two obtain successfully, it is determined that read as a result, otherwise, then needing
It is reacquired according to failed quantity.
S403, if so, executing described the step of determining the reading result using the target bad block table.
S404, if not, it is determined that the quantity for not obtaining target bad block table, as failure quantity.
Specifically, if not getting two target bad block tables, it is determined that the quantity for not obtaining target bad block table, as
Failure quantity, for example, when obtaining 0 target bad block table, then unsuccessfully quantity is 2, when obtaining 1 target bad block table, is unsuccessfully counted
Amount is 1.
The failure quantity is added to history failure quantity by S501, and it is pre- to judge whether the history failure quantity is more than
If threshold value.
Specifically, determining failure quantity is added to history failure quantity, judges the corresponding accumulation failure of the band
Whether history failure quantity reaches preset value, for example, when band is 15+1 block, then when history failure quantity is more than 7,
Determine that history failure quantity is more than predetermined threshold value.
The bad block table of band belonging to the super page is recorded as owning by S502 if so, stopping operation
Block is bad block, obtains the new bad block table for corresponding to the affiliated bands of super page, and using the new bad block table as target
Bad block table.
Specifically, if history failure quantity marked when having been above predetermined threshold value, by corresponding whole band be
The corresponding all block of bad block, the i.e. band are bad blocks.
S503, if it is not, then executing S405.
S405 determines the failure in the page for not attempting to obtain the target bad block table of the super page
The target page of quantity;Return to S401.
If history failure quantity is less than predetermined threshold value, it is determined that this failure quantity, such as 1, then according to failure
Quantity is other in super page to be not attempt to obtain 1 target page in all page for obtaining target bad block table,
Return to S401.
It establishes system to a kind of bad block table provided by the embodiments of the present application below to be introduced, a kind of bad block described below
Table establishes system can be cross-referenced with above-described embodiment.
Referring to Fig. 5, a kind of bad block table provided by the embodiments of the present application establishes system, specifically includes:
Writing module 501, for the bad block table of each band to be written to data corresponding with each band
In frame;
Read module 502 obtains reading knot for reading the bad block table in each band in target data frame
Fruit;
Update module 503, for updating SSD overall situation bad block tables using the reading result.
Wherein, the band includes the common block for storing user data of the first predetermined number;With 1
Parity block, wherein the parity block store the data exclusive or result of the common block;It is described common
The block and parity block are respectively the first preset numbers block of the lun from the second predetermined number, wherein often
A lun includes the block being numbered according to identical numbering.
The bad block table of the present embodiment establishes system for realizing bad block table method for building up above-mentioned, therefore bad block table establishes system
The embodiment part of the visible bad block table method for building up hereinbefore of specific implementation mode in system, for example, writing module 501, reads
Modulus block 502, update module 503, be respectively used to realize in above-mentioned bad block table method for building up step S101, S102, S103 and
S104, so, specific implementation mode is referred to the description of corresponding various pieces embodiment, and details are not described herein.
It establishes device to a kind of bad block table provided by the embodiments of the present application below to be introduced, a kind of bad block described below
Table establishes device can be cross-referenced with a kind of above-described bad block table method for building up.
Referring to Fig. 6, a kind of bad block table provided by the embodiments of the present application establishes device, specifically includes:
Memory 100, for storing computer program;
Processor 200 realizes that bad block table is established as described in above-mentioned any embodiment when for executing the computer program
The step of method.
Specifically, memory 100 includes non-volatile memory medium, built-in storage.The non-volatile memory medium stores
Have operating system and computer-readable instruction, the built-in storage be non-volatile memory medium in operating system and computer can
The operation of reading instruction provides environment.Processor 200 provides calculating and control ability for data acquisition equipment, may be implemented above-mentioned
The step of one bad block table method for building up embodiment is provided.
Present invention also provides a kind of computer readable storage mediums, are stored thereon with computer program, the computer
The step of above-described embodiment is provided may be implemented when program is executed by processor.The storage medium may include:SSD etc. is various
The medium of program code can be stored.
Each embodiment is described by the way of progressive in this specification, the highlights of each of the examples are with other
The difference of embodiment, just to refer each other for identical similar portion between each embodiment.
The foregoing description of the disclosed embodiments enables those skilled in the art to implement or use the present invention.
Various modifications to these embodiments will be apparent to those skilled in the art, as defined herein
General Principle can be realized in other embodiments without departing from the spirit or scope of the present invention.Therefore, of the invention
It is not intended to be limited to the embodiments shown herein, and is to fit to and the principles and novel features disclosed herein phase one
The widest range caused.
Claims (10)
1. a kind of bad block table method for building up, which is characterized in that including:
The bad block table of each band is written in data frame corresponding with each band, and by the data
The data of frame are written to flash;
The bad block table in target data frame in each band is read, obtains reading result;
SSD overall situation bad block tables are updated using the reading result.
2. according to the method described in claim 1, it is characterized in that, the band includes being used for storing for the first predetermined number
The common block of user data;With 1 parity block, wherein the parity block store the number of the common block
According to exclusive or result;The common block and parity block respectively first of the lun from the second predetermined number are pre-
If number block, wherein each lun includes the block being numbered according to identical numbering.
3. according to the method described in claim 2, it is characterized in that, described read target data frame in each band
In bad block table, read as a result, including:
Super page are determined in each band;Wherein, the super page are all in each band
Second preset numbers page;Each block of the wherein described band includes the page being numbered according to identical numbering;
Two target page are determined in the super page;
The band belonging to the super page that the target data frame in described two target page are preserved is obtained respectively
Bad block table, obtain two target bad block tables;
The reading result is determined using the target bad block table.
4. according to the method described in claim 3, it is characterized in that, described determine that the reading is tied using the target bad block table
Fruit, including:
Judge whether described two target bad block tables are identical;
If so, determining that any one of target bad block table is the reading result;
If not, it is determined that the target bad block table being not zero is the reading result.
5. according to the method described in claim 3, it is characterized in that, the target obtained respectively in described two target page
The bad block table for the band belonging to the super page that data frame are preserved, obtains two target bad block tables, including:
S401 is obtained respectively belonging to the super page that the target data frame in described two target page are preserved
The bad block table of band;
S402 judges whether to obtain two target bad block tables;
S403, if so, executing described the step of determining the reading result using the target bad block table;
S404, if not, it is determined that the quantity for not obtaining target bad block table, as failure quantity;
S405 determines the failure quantity in the page for not attempting to obtain the target bad block table of the super page
Target page;Return to S401.
6. according to the method described in claim 5, it is characterized in that, after the S404, further include:
The failure quantity is added to history failure quantity, judges whether the history failure quantity is more than predetermined threshold value;
If so, stopping operation, it is bad block that the bad block table of the band belonging to the super page, which is recorded as all block,
Obtain corresponding to the new bad block table of the affiliated bands of super page, and using the new bad block table as target bad block table;
If it is not, then executing S405.
7. a kind of bad block table establishes system, which is characterized in that including:
Writing module, for being written to the bad block table of each band in data frame corresponding with each band;
Read module obtains reading result for reading the bad block table in each band in target data frame;
Update module, for updating SSD overall situation bad block tables using the reading result.
8. system according to claim 7, which is characterized in that the band includes being used for storing for the first predetermined number
The common block of user data;With 1 parity block, wherein the parity block store the number of the common block
According to exclusive or result;The common block and parity block respectively first of the lun from the second predetermined number are pre-
If number block, wherein each lun includes the block being numbered according to identical numbering.
9. a kind of bad block table establishes device, which is characterized in that including:
Memory, for storing computer program;
Processor realizes the bad block table method for building up as described in any one of claim 1 to 6 when for executing the computer program
The step of.
10. a kind of computer readable storage medium, which is characterized in that be stored with computer on the computer readable storage medium
Program, realizing the bad block table method for building up as described in any one of claim 1 to 6 when the computer program is executed by processor
Step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810688090.6A CN108804045B (en) | 2018-06-28 | 2018-06-28 | Bad block table establishing method and related device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810688090.6A CN108804045B (en) | 2018-06-28 | 2018-06-28 | Bad block table establishing method and related device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108804045A true CN108804045A (en) | 2018-11-13 |
CN108804045B CN108804045B (en) | 2021-10-15 |
Family
ID=64072558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810688090.6A Active CN108804045B (en) | 2018-06-28 | 2018-06-28 | Bad block table establishing method and related device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108804045B (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109582239A (en) * | 2018-12-03 | 2019-04-05 | 郑州云海信息技术有限公司 | A kind of store method, device, equipment and the storage medium of SSD bad block table |
CN109918022A (en) * | 2019-02-22 | 2019-06-21 | 山东华芯半导体有限公司 | A kind of SSD opens card bad block table inheritance method |
CN110333971A (en) * | 2019-07-10 | 2019-10-15 | 深圳忆联信息系统有限公司 | SSD bad block table backup method, device, computer equipment and storage medium |
CN110471625A (en) * | 2019-08-15 | 2019-11-19 | 深圳忆联信息系统有限公司 | Bad block message guard method, device, computer equipment and storage medium |
CN110837345A (en) * | 2019-11-08 | 2020-02-25 | 杭州华澜微电子股份有限公司 | Bad block table storage method and device |
CN111026332A (en) * | 2019-12-09 | 2020-04-17 | 深圳忆联信息系统有限公司 | SSD bad block information protection method and device, computer equipment and storage medium |
CN111596860A (en) * | 2020-04-21 | 2020-08-28 | 中国科学院长春光学精密机械与物理研究所 | FPGA control method for improving NAND-FLASH storage reliability |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010014121A1 (en) * | 1998-06-16 | 2001-08-16 | General Instrument Corporation | Pre-processing of bit rate allocation in a multi-channel video encoder |
CN103530069A (en) * | 2013-11-05 | 2014-01-22 | 浪潮(北京)电子信息产业有限公司 | Method for processing bad sectors of RAID5 disk array |
CN103593303A (en) * | 2013-10-29 | 2014-02-19 | 福建星网视易信息系统有限公司 | Bad block table storage method and device and NAND gate nonvolatile memory |
CN107678694A (en) * | 2017-10-17 | 2018-02-09 | 深圳大普微电子科技有限公司 | RAID stripe method for reconstructing and solid-state disk |
-
2018
- 2018-06-28 CN CN201810688090.6A patent/CN108804045B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010014121A1 (en) * | 1998-06-16 | 2001-08-16 | General Instrument Corporation | Pre-processing of bit rate allocation in a multi-channel video encoder |
CN103593303A (en) * | 2013-10-29 | 2014-02-19 | 福建星网视易信息系统有限公司 | Bad block table storage method and device and NAND gate nonvolatile memory |
CN103530069A (en) * | 2013-11-05 | 2014-01-22 | 浪潮(北京)电子信息产业有限公司 | Method for processing bad sectors of RAID5 disk array |
CN107678694A (en) * | 2017-10-17 | 2018-02-09 | 深圳大普微电子科技有限公司 | RAID stripe method for reconstructing and solid-state disk |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109582239A (en) * | 2018-12-03 | 2019-04-05 | 郑州云海信息技术有限公司 | A kind of store method, device, equipment and the storage medium of SSD bad block table |
CN109582239B (en) * | 2018-12-03 | 2022-02-18 | 郑州云海信息技术有限公司 | SSD bad block table storage method, device, equipment and storage medium |
CN109918022A (en) * | 2019-02-22 | 2019-06-21 | 山东华芯半导体有限公司 | A kind of SSD opens card bad block table inheritance method |
CN109918022B (en) * | 2019-02-22 | 2021-11-09 | 山东华芯半导体有限公司 | SSD open card bad block table inheritance method |
CN110333971B (en) * | 2019-07-10 | 2021-08-17 | 深圳忆联信息系统有限公司 | SSD bad block table backup method and device, computer equipment and storage medium |
CN110333971A (en) * | 2019-07-10 | 2019-10-15 | 深圳忆联信息系统有限公司 | SSD bad block table backup method, device, computer equipment and storage medium |
CN110471625A (en) * | 2019-08-15 | 2019-11-19 | 深圳忆联信息系统有限公司 | Bad block message guard method, device, computer equipment and storage medium |
WO2021027271A1 (en) * | 2019-08-15 | 2021-02-18 | 深圳忆联信息系统有限公司 | Bad block information protection method and apparatus, computer device and storage medium |
CN110837345A (en) * | 2019-11-08 | 2020-02-25 | 杭州华澜微电子股份有限公司 | Bad block table storage method and device |
CN111026332A (en) * | 2019-12-09 | 2020-04-17 | 深圳忆联信息系统有限公司 | SSD bad block information protection method and device, computer equipment and storage medium |
CN111026332B (en) * | 2019-12-09 | 2024-02-13 | 深圳忆联信息系统有限公司 | SSD bad block information protection method, SSD bad block information protection device, computer equipment and storage medium |
CN111596860B (en) * | 2020-04-21 | 2021-04-23 | 中国科学院长春光学精密机械与物理研究所 | FPGA control method for improving NAND-FLASH storage reliability |
CN111596860A (en) * | 2020-04-21 | 2020-08-28 | 中国科学院长春光学精密机械与物理研究所 | FPGA control method for improving NAND-FLASH storage reliability |
Also Published As
Publication number | Publication date |
---|---|
CN108804045B (en) | 2021-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108804045A (en) | A kind of bad block table method for building up and relevant apparatus | |
US11042437B2 (en) | Metadata hardening and parity accumulation for log-structured arrays | |
US9575844B2 (en) | Mass storage device and method of operating the same to back up data stored in volatile memory | |
US20200133503A1 (en) | Method and device for rebuilding data in storage array group | |
US10915256B2 (en) | Efficient mapping scheme with deterministic power transition times for flash storage devices | |
JP5923964B2 (en) | Disk array device, control device, and program | |
JP6144819B2 (en) | Synchronous mirroring in non-volatile memory systems | |
CN101124639B (en) | System and method of accessing non-volatile computer memory | |
US9213633B2 (en) | Flash translation layer with lower write amplification | |
US20120072680A1 (en) | Semiconductor memory controlling device | |
US8601347B1 (en) | Flash memory device and storage control method | |
CN112447245A (en) | Hybrid read voltage calibration in non-volatile random access memory | |
CN114127677B (en) | Method and system for data placement in a write cache architecture | |
US11126377B2 (en) | Accessing solid state disk | |
CN114756179B (en) | Data writing, reading and managing method based on simulation eeprom | |
US20150082124A1 (en) | Spatially decoupled redundancy schemes for a solid state drive (ssd) | |
CN108762989A (en) | Date storage method, device, equipment and the readable storage medium storing program for executing of solid state disk | |
CN108762670A (en) | Management method, system and the device of data block in a kind of SSD firmwares | |
US9547554B2 (en) | Mass storage device and method of operating the same to store parity data | |
US10067828B2 (en) | Memory controller and data control method | |
US11762568B2 (en) | Storage system control | |
CN110083310A (en) | Company-data store method, device and storage cluster system in a kind of storage cluster | |
JP4843695B2 (en) | Disk array control device and disk array device | |
US20130198563A1 (en) | Disk storage system with rebuild sequence and method of operation thereof | |
CN114625563B (en) | Data protection method and device of SSD, readable storage medium and electronic equipment |
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 |