CN110007861A - A kind of method for reading data and device - Google Patents
A kind of method for reading data and device Download PDFInfo
- Publication number
- CN110007861A CN110007861A CN201910248879.4A CN201910248879A CN110007861A CN 110007861 A CN110007861 A CN 110007861A CN 201910248879 A CN201910248879 A CN 201910248879A CN 110007861 A CN110007861 A CN 110007861A
- Authority
- CN
- China
- Prior art keywords
- read voltage
- mark
- read
- reading
- data
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
- G06F11/108—Parity data distribution in semiconductor storages, e.g. in SSD
-
- 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/061—Improving I/O performance
-
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
The application provides a kind of method for reading data and device, this method comprises: receiving data read command, the data read command includes the mark of target physical block;Read voltage corresponding with the mark of the target physical block is obtained from preset cache space identifies table;The read voltage mark table includes multiple read voltages mark according to reading order arrangement;Based on the reading order of the multiple read voltage mark, one read voltage mark of selection, determines read voltage parameter corresponding with read voltage mark from the multiple read voltage mark;Data are read from the target physical block using the read voltage parameter;If reading data fails, the reading order for executing and identifying based on the multiple read voltage is returned to, the process that one read voltage of selection identifies from the multiple read voltage mark;If reading data success, exports the data successfully read.By the technical solution of the application, reading efficiency can be increased, promote reading performance, increase reading speed.
Description
Technical field
This application involves technical field of memory, more particularly, to a kind of method for reading data and device.
Background technique
SSD (Solid State Drives, solid state hard disk) is a kind of novel hard disk, the fast, quake-resistant safety with speed
Property it is high, stability is good, high integration, vast capacity, read or write speed are fast, read-write postpones small, low in energy consumption, non-volatile storage Jie
The characteristics such as matter, to be widely used in the every field of life, such as consumer electronics, military equipment, monitoring security protection, network, clothes
Business device, handheld device, Industry Control etc..
In the use process of solid state hard disk, number can constantly be written into physical block (i.e. Block, also referred to as data block)
According to, until physical block is fully written, data then are written into next physical block, and so on.In the use of solid state hard disk
In the process, in order to guarantee to have available physical block, then for the physical block (i.e. effective physical block) for having write full data, may be used also
To carry out garbage reclamation to effective physical block, so that effectively physical block becomes free physical block, in this way, can be again to idle object
Data are written in reason block.
For each physical block of solid state hard disk, the time that physical block saves data is terminable, this preservation
Time limit is known as Data Retention (power-off data retention period), once data retention over time is more than power-off data retention period
Limit, reading data are possible to malfunction, that is to say, that for the data read from physical block, are not available ECC (Error
Correcting Code, error checking and correction) error correction success.
After reading data error, adjustable read voltage, and data are re-read using read voltage adjusted, this
Sample, the data re-read are possible to success, that is to say, that by adjusting read voltage and the mechanism of data is re-read, it may
Data are read in success, to extend the service life of solid state hard disk.
But there are many modes for the adjustable strategies of read voltage, for example, read voltage is adjusted to read voltage A or read voltage
B, then, it is read voltage to be adjusted to read voltage A, or read voltage is adjusted to read voltage B, there is no selections well at present
Scheme leads to the effect re-read and bad.
Summary of the invention
The application provides a kind of method for reading data, is applied to storage equipment, which comprises
Data read command is received, the data read command includes the object in the solid state hard disk of the storage equipment
Manage the mark of block;
Read voltage corresponding with the mark of the target physical block is obtained from preset cache space identifies table;The reading electricity
Pressure mark table includes multiple read voltages mark according to reading order arrangement;
Based on the reading order of the multiple read voltage mark, a read voltage is selected from the multiple read voltage mark
Mark determines read voltage parameter corresponding with read voltage mark;
Data are read from the target physical block using the read voltage parameter;
If reading data fails, return and execute the reading order that identifies based on the multiple read voltage, from the multiple
The process of one read voltage of selection mark in read voltage mark;
If reading data success, exports the data successfully read.
The application provides a kind of reading data device, is applied to storage equipment, and described device includes:
Receiving module, reads instruction for receiving data, and the data read command includes the solid-state of the storage equipment
The mark of target physical block in hard disk;
Module is obtained, for obtaining read voltage mark corresponding with the mark of the target physical block from preset cache space
Know table;The read voltage mark table includes multiple read voltages mark according to reading order arrangement;
Selecting module, the reading order for being identified based on the multiple read voltage, from the multiple read voltage mark
A read voltage mark is selected, determines read voltage parameter corresponding with read voltage mark;
Read module, for reading data from the target physical block using the read voltage parameter;
The selecting module, if be also used to reading data failure, based on the multiple read voltage mark reading order,
One read voltage mark of selection from the multiple read voltage mark;
Output module, if exporting the data successfully read for reading data success.
Based on the above-mentioned technical proposal, in the embodiment of the present application, it can safeguard that read voltage identifies table for each physical block, when need
When reading data from target physical block, first determine that the corresponding read voltage of target physical block identifies table, the read voltage mark
Table includes multiple read voltages mark according to reading order arrangement.Based on the reading order of multiple read voltages mark, from multiple readings
A read voltage mark is selected in voltage identification, and identifies corresponding read voltage parameter from target physical block using the read voltage
Read data.If reading data fails, one read voltage of selection is identified from multiple read voltages mark again, and utilizes the reading
The corresponding read voltage parameter of voltage identification reads data from target physical block, and so on, until reading data is successful and defeated
Succeed the data read out.Based on aforesaid way, constantly read voltage parameter can be adjusted, until successfully reading number
According to extend the service life of solid state hard disk, the effect for re-reading data is relatively good, can increase reading efficiency, is promoted
Reading performance increases reading speed, reduces reading times.
Detailed description of the invention
It, below will be to the application in order to clearly illustrate the embodiment of the present application or technical solution in the prior art
Embodiment or attached drawing needed to be used in the description of the prior art be briefly described, it should be apparent that, it is described below
Attached drawing is only some embodiments as described in this application, for those of ordinary skill in the art, can also be according to this Shen
Please these attached drawings of embodiment obtain other attached drawings.
Fig. 1 is the flow chart of the method for reading data in a kind of embodiment of the application;
Fig. 2 is the schematic diagram of the read voltage mark table in a kind of embodiment of the application;
Fig. 3 is the structure chart of the reading data device in a kind of embodiment of the application;
Fig. 4 is the hardware structure diagram of the storage equipment in a kind of embodiment of the application.
Specific embodiment
In the term that the embodiment of the present application uses merely for the sake of for the purpose of describing particular embodiments, rather than limit this Shen
Please.The "an" of singular used in the application and claims, " described " and "the" are also intended to including most shapes
Formula, unless context clearly shows that other meanings.It is also understood that term "and/or" used herein refers to comprising one
A or multiple associated any or all of project listed may combine.
It will be appreciated that though various letters may be described using term first, second, third, etc. in the embodiment of the present application
Breath, but these information should not necessarily be limited by these terms.These terms are only used to for same type of information being distinguished from each other out.For example,
In the case where not departing from the application range, the first information can also be referred to as the second information, and similarly, the second information can also be with
The referred to as first information.Depending on context, in addition, used word " if " can be construed to " ... when " or
" when ... " or " in response to determination ".
The embodiment of the present application proposes a kind of method for reading data, and this method can be applied to storage equipment, and storage equipment can
To be the equipment using solid state hard disk (i.e. SSD) storing data.Wherein, solid state hard disk can by a large amount of Block (physical block,
It is properly termed as data block) composition, it is subsequent to be illustrated by taking physical block as an example.
Wherein, solid state hard disk can be a kind of novel hard disk, storage medium may include Flash (flash memory) medium (such as
NAND Flash medium), by the way that multiple storage units are formed a storage array, and control unit and some additional function is added
Energy device, can form one piece of solid state hard disk.Solid state hard disk is with speed is fast, seismic seeurity is high, stability is good, highly integrated
Degree, vast capacity, read or write speed are fast, read-write postpones the characteristics such as small, low in energy consumption, non-volatile storage medium, thus extensive
Every field applied to life.
In the use process of solid state hard disk, for each physical block of solid state hard disk, physical block saves data
Time is terminable, this pot-life referred to as power-off data retention period, once data retention over time is more than power-off data
Kept for the time limit, reading data is possible to malfunction, that is, is not available ECC error correction success.It is adjustable after reading data error
Read voltage, and data are re-read using read voltage adjusted, in this way, the data re-read are possible to success, that is,
It says, by adjusting read voltage and re-reads the mechanism of data, data may be successfully read, to extend the use of solid state hard disk
Service life.
For example, there is optimal read voltage A for the data A of solid state hard disk storage.Assuming that the read voltage of default is to read electricity
Press B, then when reading data A by read voltage B, reading data error.After read voltage is adjusted to read voltage C, pass through read voltage C
When reading data A, reading data error, and so on, constantly read voltage is adjusted.Read voltage is being adjusted to read voltage
After A, when reading data A by read voltage A, reading data success, in conclusion by adjusting read voltage, to successfully read
Data.
Constantly adjustment read voltage, and the read voltage by adjusting after re-reads the mechanism of data, is properly termed as reading again
Take mechanism (i.e. Read Retry mechanism referred to as reads mechanism again).Currently, the solid state hard disk of most manufacturers can be supported to read again
Mechanism, by adjusting read voltage, then goes to re-read data after reading data error, is possible to restore data, from
And extend the service life of solid state hard disk.
In order to realize that the mechanism of re-reading, solid state hard disk can support multiple read voltage parameters, each read voltage parameter packet
Content related with read voltage is included, if read voltage parameter A includes read voltage 1, read voltage parameter B includes read voltage 2 and read voltage
3, read voltage parameter C include read voltage 4 and read voltage 5, and so on, with no restrictions to the content of this read voltage parameter, as long as
Data can be read by read voltage parameter.
In one example, solid state hard disk can support a large amount of read voltage parameters, such as support 30-60 read voltage parameter.
If successively attempting each read voltage parameter, it is very big to read delay.For example, first passing through read voltage parameter A reads data, if reading number
According to failure, then data are read by read voltage parameter B, if reading data failure, data are read by read voltage parameter C, with
This analogizes.Assuming that solid state hard disk supports 60 read voltage parameters, then may at most retry 60 times, the delay of reading data is very big,
Customer service experience is poor.
To solve the above-mentioned problems, in one example, read voltage parameter and state parameter (such as physics can be pre-configured with
The erasable number of block, time data memory (i.e. Retention time), physical block reading times, current temperature value etc.) corresponding close
System.Based on this, CPU (Central Processing Unit, central processing unit) is sending data read command to solid state hard disk
When, data read command needs carrier state parameter (such as state parameter 1).Solid state hard disk after receiving data read command,
State parameter 1, and the corresponding relationship based on read voltage parameter and state parameter, inquiry and state are obtained from data read command
The corresponding read voltage parameter of parameter 1, and data are read by this read voltage parameter.Due to directly inquiring and state parameter 1
Therefore stressed number can be effectively reduced in corresponding read voltage parameter, promoted and read accuracy again.
But in above-mentioned implementation, when sending data read command to solid state hard disk, which refers to CPU
Order needs to carry the state parameters such as the erasable number of physical block, time data memory, physical block reading times, current temperature value, this
A little state parameters will definitely increase the length of data read command, to occupy the massive band width money between CPU and solid state hard disk
Source, and occupy a large amount of process resources of CPU.
For above-mentioned discovery, in the embodiment of the present application, CPU is when sending data read command to solid state hard disk, the data
Instruction is read not need to carry the states such as the erasable number of physical block, time data memory, physical block reading times, current temperature value
Parameter saves the bandwidth resources between CPU and solid state hard disk, saves the processing of CPU to reduce the length of data read command
Resource.Moreover, by safeguarding that read voltage identifies table for each physical block, when needing to read data from target physical block, first
Determine that the corresponding read voltage mark table of target physical block, read voltage mark table include the multiple read voltages arranged according to reading order
Mark.Based on the reading order of multiple read voltages mark, one read voltage mark of selection from multiple read voltages mark, and utilize
The read voltage identifies corresponding read voltage parameter and reads data from target physical block.If reading data fails, again from more
One read voltage mark of selection in a read voltage mark, and corresponding read voltage parameter is identified from target physical using the read voltage
Data are read in block, and so on, until reading data success, and export the data successfully read.It, can also based on aforesaid way
To be constantly adjusted to read voltage parameter, until data are read in success from target physical, to extend solid state hard disk
Service life, the effect for re-reading data are relatively good.During reading data, it can be obtained based on read voltage mark table
Suitable read voltage parameter, can increase reading efficiency, promote reading performance, increase reading speed, and reduce reading times.
Below in conjunction with specific embodiment, the method for reading data of the embodiment of the present application is illustrated.Referring to Fig. 1 institute
Show, be the flow chart of the method for reading data of the embodiment of the present application, this method can be applied to storage equipment, which can
With using solid state hard disk, come storing data, this method may include:
Step 101, data read command is received, which includes the mark of the target physical block in solid state hard disk
Know.
Step 102, read voltage corresponding with the mark of target physical block is obtained from preset cache space identify table;The reading
Voltage identification table may include multiple read voltages mark according to reading order arrangement.
Wherein, the multiple read voltages mark for respectively corresponding multiple physical blocks of storage equipment is stored in preset cache space
Table, and the sequence of the mark of multiple physical blocks is corresponding with multiple read voltages mark sequence of table.
In one example, in order to read data from some physical block, then CPU is sending reading data to solid state hard disk
When instruction, this data read command carries the mark of this physical block, and (serial number of such as physical block, the mark of physical block have only
One property distinguishes different physical blocks by the mark of physical block), in order to distinguish conveniently, this physical block is known as object
Block is managed, i.e., reads data from target physical block.
Wherein, which carries the mark of target physical block, but the data read command does not carry physics
The state parameters such as the erasable number of block, time data memory, physical block reading times, current temperature value, to reduce reading data
The length of instruction saves the bandwidth resources between CPU and solid state hard disk.
In one example, one section of preset cache space can be divided in buffer zone, which is used for
The corresponding read voltage mark table of multiple physical blocks (the part physical block of such as solid state hard disk or whole physical blocks) is recorded, referring to figure
Shown in 2, for the example of the read voltage mark table stored in preset cache space.
Shown in Figure 2, first row is used to record the mark of physical block, such as the part physical block or whole of solid state hard disk
The mark of physical block, for example, physical block be identified as physical block 1, physical block 2 ..., physical block x.Secondary series is for recording physics
The corresponding read voltage of the mark of block identifies table, as the corresponding read voltage mark table 1 of physical block 1, the corresponding read voltage of physical block 2 identify table
2 ..., physical block x corresponds to read voltage mark table x.Third arranges the content for recording read voltage mark table, such as records read voltage mark
Multiple read voltages mark that knowledge table includes.For example, read voltage mark table includes a queue, pass through the multiple readings of this queue record
Voltage identification.Read voltage mark table record is the corresponding read voltage mark of read voltage parameter, is not read voltage parameter.
For example, it is assumed that solid state hard disk supports 10 read voltage parameters, for example, read voltage parameter A- read voltage parameter J etc., reads
Voltage parameter A corresponds to read voltage mark 1, read voltage parameter B corresponds to read voltage mark 2, and so on, read voltage parameter J is corresponding
Read voltage mark 10.Based on this, recorded in read voltage mark table can be read voltage mark 1, read voltage mark 2 ..., read
Voltage identification 10.
In different physical blocks corresponding read voltage mark table, the reading orders of multiple read voltages marks can it is identical or
It is different.For example, read voltage mark table 1 and read voltage mark table 2 record: read voltage mark 1, read voltage identify 2, read voltage
Mark 3, read voltage mark 4, read voltage mark 5, read voltage mark 6, read voltage mark 7, read voltage mark 8, read voltage mark
9, read voltage mark 10.Read voltage mark table 3 records: read voltage mark 3, read voltage mark 5, reads electricity at read voltage mark 4
Pressure mark 6, read voltage mark 1, read voltage mark 8, read voltage mark 9, read voltage mark 7, read voltage identify 10, read voltage mark
Know 2.Certainly, several examples of above-mentioned only read voltage mark table, it is without limitation.
For each read voltage mark table, read voltage, which identifies table, has initial default sequence, different read voltage marks
The initial default sequence of table can be same or different, and initial default sequence can be configured rule of thumb, without limitation.Example
Such as, the initial default sequence of each read voltage mark table is read voltage mark 1, read voltage mark 2, read voltage mark 3, reads electricity
Pressure mark 4, read voltage mark 5, read voltage mark 6, read voltage mark 7, read voltage mark 8, read voltage identify 9, read voltage mark
Know 10.
In the follow-up process, the reading order that can be identified to the read voltage in read voltage mark table is adjusted, and is read
The adjustment mode of sequence may refer to subsequent embodiment, and details are not described herein.
In conclusion obtaining the mark of target physical block from the data read command after receiving data read command
Know (such as physical block 1), preset cache space shown in Fig. 2 is inquired by the mark of target physical block, from preset cache space
Read voltage mark table (such as read voltage identifies table 1) corresponding with the mark of target physical block is obtained, which includes
3, read voltage are identified according to multiple read voltages mark of reading order arrangement, such as read voltage mark 1, read voltage mark 2, read voltage
Mark 4, read voltage mark 5, read voltage mark 6, read voltage mark 7, read voltage mark 8, read voltage mark 9, read voltage mark
10。
Step 103, the reading order based on multiple read voltages mark selects a read voltage from multiple read voltages mark
Mark, and determine read voltage parameter corresponding with read voltage mark.
In one example, the reading order based on multiple read voltages mark selects one from multiple read voltages mark
Read voltage mark may include: to identify vertical reading order based on multiple read voltages, from multiple read voltages mark time
Go through the read voltage mark of unselected mistake in first epicycle reading process.
Step 104, data are read from target physical block using currently determining read voltage parameter.
Step 105, judge whether successfully to read data from target physical block.(i.e. reading data failure) if not, then
Return to step 103.If it is (i.e. reading data success), 106 are thened follow the steps.
Step 106, the data successfully read are exported, CPU is such as returned data to and is handled.
For step 103- step 106, it is assumed that read voltage mark table 1 includes the read voltage mark according to reading order arrangement
1, read voltage mark 2, read voltage mark 3, read voltage mark 4, read voltage mark 5, read voltage identify 6, read voltage mark 7, read
Voltage identification 8, read voltage mark 9, read voltage mark 10, identify vertical reading order based on multiple read voltages, then may be used
To proceed as follows:
In first time data read process, from multiple read voltages mark in traverse first epicycle reading process in not by
The read voltage mark selected, since read voltage identifies 1 unselected mistake, traverse out read voltage mark 1.Then, it is determined that
1 corresponding read voltage parameter A is identified with read voltage, and reads data from target physical block using read voltage parameter A, to this reading
Take process with no restrictions.If reading data success, exports the data successfully read, terminate epicycle reading process.If data are read
Failure is taken, then executes second of data read process, i.e., reads data from target physical block again after adjustment read voltage parameter.
In second of data read process, from multiple read voltages mark in traverse first epicycle reading process in not by
The read voltage mark selected, since read voltage mark 1 is selected, read voltage identifies 2 unselected mistakes and therefore traverses out
Read voltage mark 2.Then, it is determined that identifying 2 corresponding read voltage parameter B with read voltage, and utilize read voltage parameter B from object
Data are read in reason block.If reading data success, exports the data successfully read, terminate epicycle reading process.If data are read
Failure is taken, then executes third time data read process, i.e., reads data from target physical block again after adjustment read voltage parameter.
And so on, in each data read process, first epicycle of traversal it can be read from multiple read voltages mark
The read voltage mark of unselected mistake is (as successively selection read voltage identifies 1, read voltage mark 2, read voltage mark 3 during taking
Deng), and identify corresponding read voltage parameter using this read voltage and read data from target physical block.In conclusion can be with
The each read voltage parameter passed sequentially through in read voltage parameter A- read voltage parameter J reads data from target physical block, always
Data are read from target physical block to success.After successfully reading data, then terminate epicycle reading process, and export and successfully read
The data taken.
Referring to above-described embodiment, the read voltage parameter used when reading data for the first time is not default read voltage parameter, is
The read voltage traversed from multiple read voltages mark identifies corresponding read voltage parameter.
In one example, after traversing the last one read voltage mark in multiple read voltages mark, using last
One read voltage identifies corresponding read voltage parameter and reads data from target physical block.If reading data fails, then it represents that weight
New reading process failure, that is, be based on all read voltage parameters, can not read data from target physical block, be based on this, need
Using other abnormality processing processes, details are not described herein.
In one example, using read voltage parameter from target physical block read data after, if reading data at
Function, and data errors number is less than preset threshold, then increases the success for reading the corresponding read voltage mark of successful read voltage parameter
Reading times.If reading data success, but data errors number is not less than preset threshold, then keeps reading successful read voltage ginseng
The successful reading times of the corresponding read voltage mark of number are constant.
For example, if reading data, and reading data success, data errors from target physical block using read voltage parameter A
Number is less than preset threshold (preset threshold can be configured rule of thumb), then by read voltage parameter A corresponding read voltage mark 1 at
Function reading times+1.If reading data, and reading data success, still data from target physical block using read voltage parameter B
Number of bit errors is not less than preset threshold, then keeps the successful reading times of the corresponding read voltage mark 2 of read voltage parameter B constant, with
This analogizes.
Wherein, data errors number is exactly data error rate, for example, when 10% data have mistake, then data errors number
Exactly 10%;When 30% data have mistake, then data errors number is exactly 30%.
Wherein, when the data of reading have mistake, ECC can be used to progress error correction.If by ECC error correction success,
It indicates reading data success, if failing by ECC error correction, indicates reading data failure.
Therefore, when data errors number is less than preset threshold, alternatively, data are equal when data errors number is not less than preset threshold
It may read successfully.On this basis, in the present embodiment, if reading data success, when data errors number is less than preset threshold,
It just will be updated the successful reading times of read voltage mark.When data errors number is not less than preset threshold, then it not will be updated reading electricity
Press the successful reading times of mark.
In one example, using read voltage parameter from target physical block read data after, if reading data at
Function, and data errors number is not less than preset threshold, then can will read the corresponding read voltage mark of successful read voltage parameter and exist
Read voltage identifies the reading order in table and reduces.For example, if read data from target physical block using read voltage parameter A, and
Reading data success, data errors number are not less than preset threshold, then the corresponding read voltage of adjustment read voltage parameter A identifies 1 backward
Reading order in read voltage mark table, for example, read voltage mark 1 is adjusted a position backward, alternatively, by read voltage mark
Know 1 and adjust two positions backward, alternatively, the position by 1 adjustment of read voltage mark to the end, without limitation.
For the convenience of description, being illustrated by taking the sequence adjustment process of read voltage mark table 1 as an example, other read voltage marks
The adjustment process of table is similar with read voltage mark table 1, and it is no longer repeated herein.
For example, the current reading order of read voltage mark table 1 is read voltage mark 1, read voltage mark 2, read voltage mark
3, read voltage mark 4, read voltage mark 5, read voltage mark 6, read voltage mark 7, read voltage identify 8, read voltage mark 9, read
Voltage identification 10.1 corresponding read voltage parameter A is identified using read voltage and reads data from physical block 1, if reading data is lost
It loses, identifies 2 corresponding read voltage parameter B using read voltage and read data from physical block 1.If reading data success, and data
Number of bit errors is not less than preset threshold, then terminates data read process, adjusts read voltage mark 2 backward in read voltage mark table 1
Position.
For example, read voltage mark table 1 adjusted is read voltage mark 1, read voltage mark 3, read voltage mark 2, reads electricity
Pressure mark 4, read voltage mark 5, read voltage mark 6, read voltage mark 7, read voltage mark 8, read voltage identify 9, read voltage mark
Know 10.Alternatively, read voltage mark 1, read voltage mark 3, read voltage mark 4, read voltage mark 5, read voltage identify 6, read voltage
Mark 7, read voltage mark 8, read voltage mark 9, read voltage mark 10, read voltage mark 2.Certainly, above-mentioned only example, to this
With no restrictions.
It in one example, can be according to every for the reading order of multiple read voltages mark in read voltage mark table
The successful reading times of a read voltage mark adjust the reading order of multiple read voltages mark in read voltage mark table
It is whole.Specifically, when meeting reading order and rearranging condition, based on each read voltage mark in read voltage mark table at
Function reading times rearrange the reading order of each read voltage mark in read voltage mark table.For example, being based on read voltage mark
The sequence of the successful reading times of each read voltage mark in table from high to low is known, to each reading electricity in read voltage mark table
Pressure mark is rearranged;Wherein, the high read voltage mark of success reading times, before read voltage mark table.
For the convenience of description, being illustrated by taking the sequence adjustment process of read voltage mark table 1 as an example, other read voltage marks
The adjustment process of table is similar with read voltage mark table 1, and it is no longer repeated herein.
For example, the initial default sequence of read voltage mark table 1 is read voltage mark 1, read voltage mark 2, read voltage mark
3, read voltage mark 4, read voltage mark 5, read voltage mark 6, read voltage mark 7, read voltage identify 8, read voltage mark 9, read
Voltage identification 10, it is 0 that each read voltage, which identifies corresponding success reading times,.It is successful from object every time in data read process
Data are read in reason block 1, and when data errors number is not less than preset threshold, are just identified the corresponding read voltage of read voltage parameter
Success reading times+1.For example, if reading data, reading data success and data from physical block 1 using read voltage parameter A
Number of bit errors is not less than preset threshold, then by the successful reading times+1 of the corresponding read voltage mark 1 of read voltage parameter A.
Further, meet reading order rearrange condition (such as apart from last time reading order adjustment process time
Interval reaches preset time, and such as 30 minutes, alternatively, the reading times apart from last time reading order adjustment process reach default time
Number, such as 50 times, without limitation) when, then it can be based on successful reading times from high to low suitable that each read voltage identifies
Sequence rearranges each read voltage mark in read voltage mark table, and the read voltage mark that success reading times are high,
Before read voltage mark table.
For example, the successful reading times of read voltage mark 2 are 3 if the successful reading times of read voltage mark 1 are 2, electricity is read
The successful reading times of pressure mark 3 are 4, and the successful reading times of read voltage mark 4 are 0, the successful reading time of read voltage mark 5
Number is 5, and the successful reading times of read voltage mark 6 are 7, and the successful reading times of read voltage mark 7 are 6, read voltage mark 8
Success reading times are 10, and the successful reading times of read voltage mark 9 are 7, and the successful reading times of read voltage mark 10 are 6,
Then the reading order adjusted of read voltage mark table 1 can be with are as follows: read voltage mark 8, read voltage mark 9, read voltage mark 6,
Read voltage mark 7, read voltage mark 5, read voltage mark 3, read voltage mark 2, read voltage mark 1, reads electricity at read voltage mark 10
Pressure mark 4.Certainly, above-mentioned only example, it is without limitation.
In conclusion, for the reading order of read voltage mark table, successfully being read during solid state hard disk is constantly run
The high read voltage mark of probability, which is located at, successfully to be read before the low read voltage mark of probability.
In one example, before electricity under solid state hard disk, the reading order of read voltage mark table can be saved, in solid-state
When hard disk powers on, the reading order of read voltage mark table can be restored, i.e., with the previously stored reading order of electricity under solid state hard disk
It is identical.Before electricity under solid state hard disk, the successful reading times of each read voltage mark can be saved, can not also be saved each
The successful reading times of read voltage mark.
Based on the above-mentioned technical proposal, in the embodiment of the present application, it can safeguard that read voltage identifies table for each physical block, when need
When reading data from target physical block, first determine that the corresponding read voltage of target physical block identifies table, the read voltage mark
Table includes multiple read voltages mark according to reading order arrangement.Based on the reading order of multiple read voltages mark, from multiple readings
A read voltage mark is selected in voltage identification, and identifies corresponding read voltage parameter from target physical block using the read voltage
Read data.If reading data fails, one read voltage of selection is identified from multiple read voltages mark again, and utilizes the reading
The corresponding read voltage parameter of voltage identification reads data from target physical block, and so on, until reading data is successful and defeated
Succeed the data read out.Based on aforesaid way, constantly read voltage parameter can be adjusted, until successfully reading number
According to extend the service life of solid state hard disk, the effect for re-reading data is relatively good, can increase reading efficiency, is promoted
Reading performance increases reading speed, reduces reading times.In addition, aforesaid way can reduce the length of data read command, drop
The occupancy instructed in low cpu resource.
Based on similarly applying conceiving with the above method, a kind of reading data device is also proposed in the embodiment of the present application, is answered
For storing equipment, as shown in figure 3, being the structure chart of described device, described device is specifically included:
Receiving module 31, reads instruction for receiving data, and the data read command includes consolidating for the storage equipment
The mark of target physical block in state hard disk;
Module 32 is obtained, for obtaining read voltage corresponding with the mark of the target physical block from preset cache space
Identify table;The read voltage mark table includes multiple read voltages mark according to reading order arrangement;
Selecting module 33, the reading order for being identified based on the multiple read voltage are identified from the multiple read voltage
One read voltage mark of middle selection, determines read voltage parameter corresponding with read voltage mark;
Read module 34, for reading data from the target physical block using the read voltage parameter;
The selecting module 33, if being also used to reading data failure, the reading based on the multiple read voltage mark is suitable
Sequence, one read voltage mark of selection from the multiple read voltage mark;
Output module 35, if exporting the data successfully read for reading data success.
Optionally, in one example, the reading order that the selecting module 33 is identified based on the multiple read voltage, from
It is specifically used for when one read voltage mark of selection in the multiple read voltage mark:
Vertical reading order is identified based on the multiple read voltage, the is traversed from the multiple read voltage mark
The read voltage mark of unselected mistake in one epicycle reading process.
Optionally, in one example, the reading data device further includes (being not shown in Fig. 3):
Module is adjusted, for utilizing the read voltage parameter after reading data in the target physical block, if number
According to reading successfully, and data errors number is less than preset threshold, then increases and read the corresponding read voltage mark of successful read voltage parameter
The successful reading times of knowledge.
The adjustment module, be also used to using the read voltage parameter read from the target physical block data it
Afterwards, if reading data is successful, and data errors number is not less than preset threshold, then will read the corresponding reading of successful read voltage parameter
Reading order of the voltage identification in read voltage mark table reduces.
The adjustment module, is also used to when meeting reading order and rearranging condition, identifies table based on the read voltage
In each read voltage mark successful reading times, rearrange in the read voltage mark table each read voltage mark
Reading order.
Optionally, in one example, it is stored in the preset cache space and respectively corresponds the more of the storage equipment
Multiple read voltages of a physical block identify table, and the sequence of the mark of the multiple physical block identifies table with the multiple read voltage
Sequence it is corresponding.
Storage equipment provided by the embodiments of the present application, for hardware view, hardware structure schematic diagram specifically be may refer to
It may include: machine readable storage medium and processor shown in Fig. 4, in which:
Machine readable storage medium: store instruction code.
Processor: communicating with machine readable storage medium, read and execute stored in machine readable storage medium it is described
Instruction code realizes data read operation disclosed in the application above-mentioned example.
Here, machine readable storage medium can be any electronics, magnetism, optics or other physical storage devices, can be with
Include or store information, such as executable instruction, data, etc..For example, machine readable storage medium may is that RAM (Radom
Access Memory, random access memory), volatile memory, nonvolatile memory, flash memory, memory driver is (as hard
Disk drive), solid state hard disk, any kind of storage dish (such as CD, dvd) perhaps similar storage medium or they
Combination.
System, device, module or the unit that above-described embodiment illustrates can specifically realize by computer chip or entity,
Or it is realized by the product with certain function.A kind of typically to realize that equipment is computer, the concrete form of computer can
To be personal computer, laptop computer, cellular phone, camera phone, smart phone, personal digital assistant, media play
In device, navigation equipment, E-mail receiver/send equipment, game console, tablet computer, wearable device or these equipment
The combination of any several equipment.
For convenience of description, it is divided into various units when description apparatus above with function to describe respectively.Certainly, implementing this
The function of each unit can be realized in the same or multiple software and or hardware when application.
It should be understood by those skilled in the art that, embodiments herein can provide as method, system or computer program
Product.Therefore, complete hardware embodiment, complete software embodiment or reality combining software and hardware aspects can be used in the application
Apply the form of example.Moreover, it wherein includes computer usable program code that the embodiment of the present application, which can be used in one or more,
The computer implemented in computer-usable storage medium (including but not limited to magnetic disk storage, CD-ROM, optical memory etc.)
The form of program product.
The application is referring to method, the process of equipment (system) and computer program product according to the embodiment of the present application
Figure and/or block diagram describe.It is generally understood that being realized by computer program instructions each in flowchart and/or the block diagram
The combination of process and/or box in process and/or box and flowchart and/or the block diagram.It can provide these computer journeys
Sequence instruct to general purpose computer, special purpose computer, Embedded Processor or other programmable data processing devices processor with
A machine is generated, so that the instruction generation executed by computer or the processor of other programmable data processing devices is used for
Realize the dress for the function of specifying in one or more flows of the flowchart and/or one or more blocks of the block diagram
It sets.
Moreover, these computer program instructions also can store be able to guide computer or other programmable datas processing set
In standby computer-readable memory operate in a specific manner, so that instruction stored in the computer readable memory generates
Manufacture including command device, the command device are realized in one process of flow chart or multiple processes and/or block diagram one
The function of being specified in a box or multiple boxes.
These computer program instructions can also be loaded into computer or other programmable data processing devices, so that counting
Series of operation steps are executed on calculation machine or other programmable devices to generate computer implemented processing, thus in computer
Or the instruction executed on other programmable devices is provided for realizing in one or more flows of the flowchart and/or block diagram
The step of function of being specified in one box or multiple boxes.
The above description is only an example of the present application, is not intended to limit this application.For those skilled in the art
For, various changes and changes are possible in this application.All any modifications made within the spirit and principles of the present application are equal
Replacement, improvement etc., should be included within the scope of the claims of this application.
Claims (12)
1. a kind of method for reading data, which is characterized in that be applied to storage equipment, which comprises
Data read command is received, the data read command includes the target physical block in the solid state hard disk of the storage equipment
Mark;
Read voltage corresponding with the mark of the target physical block is obtained from preset cache space identifies table;The read voltage mark
Knowledge table includes multiple read voltages mark according to reading order arrangement;
Based on the reading order of the multiple read voltage mark, a read voltage mark is selected from the multiple read voltage mark
Know, determines read voltage parameter corresponding with read voltage mark;
Data are read from the target physical block using the read voltage parameter;
If reading data fails, the reading order for executing and identifying based on the multiple read voltage is returned to, from the multiple reading electricity
The process of one read voltage of selection mark in pressure mark;
If reading data success, exports the data successfully read.
2. the method according to claim 1, wherein the reading based on the multiple read voltage mark is suitable
Sequence, one read voltage mark of selection from the multiple read voltage mark, comprising:
Vertical reading order is identified based on the multiple read voltage, traverses first from the multiple read voltage mark
The read voltage mark of unselected mistake in epicycle reading process.
3. the method according to claim 1, wherein described utilize the read voltage parameter from the target physical
After reading data in block, the method also includes:
If reading data success, and data errors number is less than preset threshold, then it is corresponding to increase the successful read voltage parameter of reading
The successful reading times of read voltage mark.
4. the method according to claim 1, wherein described utilize the read voltage parameter from the target physical
After reading data in block, the method also includes:
If reading data success, and data errors number is not less than preset threshold, then it is corresponding will to read successful read voltage parameter
Reading order of the read voltage mark in read voltage mark table reduces.
5. the method according to claim 3 or 4, which is characterized in that the method also includes:
When meeting reading order and rearranging condition, the success based on each read voltage mark in read voltage mark table
Reading times rearrange the reading order of each read voltage mark in the read voltage mark table.
6. the method according to claim 1, wherein stored in the preset cache space respectively correspond it is described
Store equipment multiple physical blocks multiple read voltages identify table, and the sequence of the mark of the multiple physical block with it is the multiple
The sequence that read voltage identifies table is corresponding.
7. a kind of reading data device, which is characterized in that be applied to storage equipment, described device includes:
Receiving module, reads instruction for receiving data, and the data read command includes the solid state hard disk of the storage equipment
In target physical block mark;
Module is obtained, for obtaining read voltage mark corresponding with the mark of the target physical block from preset cache space
Table;The read voltage mark table includes multiple read voltages mark according to reading order arrangement;
Selecting module, the reading order for being identified based on the multiple read voltage are selected from the multiple read voltage mark
One read voltage mark, determines read voltage parameter corresponding with read voltage mark;
Read module, for reading data from the target physical block using the read voltage parameter;
The selecting module, if reading data failure is also used to, based on the reading order of the multiple read voltage mark, from institute
State one read voltage mark of selection in multiple read voltage marks;
Output module, if exporting the data successfully read for reading data success.
8. device according to claim 7, which is characterized in that
The reading order that the selecting module is identified based on the multiple read voltage selects one from the multiple read voltage mark
A read voltage is specifically used for when identifying:
Vertical reading order is identified based on the multiple read voltage, traverses first from the multiple read voltage mark
The read voltage mark of unselected mistake in epicycle reading process.
9. device according to claim 7, which is characterized in that further include:
Module is adjusted, for utilizing the read voltage parameter after reading data in the target physical block, if data are read
Success is taken, and data errors number is less than preset threshold, then increases and read the corresponding read voltage mark of successful read voltage parameter
Success reading times.
10. device according to claim 7, which is characterized in that further include:
Module is adjusted, for utilizing the read voltage parameter after reading data in the target physical block, if data are read
Success is taken, and data errors number is not less than preset threshold, then will read the corresponding read voltage mark of successful read voltage parameter and exist
Reading order in the read voltage mark table reduces.
11. device according to claim 9 or 10, which is characterized in that
The adjustment module is also used to when meeting reading order and rearranging condition, based in read voltage mark table
The successful reading times of each read voltage mark rearrange the reading of each read voltage mark in the read voltage mark table
Sequentially.
12. device according to claim 7, which is characterized in that stored in the preset cache space and respectively correspond institute
State storage equipment multiple physical blocks multiple read voltage mark tables, and the sequence of the mark of the multiple physical block with it is described more
The sequence of a read voltage mark table is corresponding.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910248879.4A CN110007861A (en) | 2019-03-29 | 2019-03-29 | A kind of method for reading data and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910248879.4A CN110007861A (en) | 2019-03-29 | 2019-03-29 | A kind of method for reading data and device |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110007861A true CN110007861A (en) | 2019-07-12 |
Family
ID=67168787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910248879.4A Pending CN110007861A (en) | 2019-03-29 | 2019-03-29 | A kind of method for reading data and device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110007861A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111880736A (en) * | 2020-07-28 | 2020-11-03 | 苏州浪潮智能科技有限公司 | Solid state disk access method, device, equipment and medium |
WO2022099441A1 (en) * | 2020-11-10 | 2022-05-19 | 华为技术有限公司 | Method for reading storage medium, and related device |
CN116302844A (en) * | 2023-05-16 | 2023-06-23 | 苏州浪潮智能科技有限公司 | Method and device for acquiring hard disk information, computer equipment and storage medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106653087A (en) * | 2015-10-28 | 2017-05-10 | 光宝电子(广州)有限公司 | A solid state memory device and a related reading and controlling method thereof |
CN106843771A (en) * | 2017-01-26 | 2017-06-13 | 合肥兆芯电子有限公司 | Memory reads method, memorizer control circuit unit and memory storage apparatus again |
-
2019
- 2019-03-29 CN CN201910248879.4A patent/CN110007861A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106653087A (en) * | 2015-10-28 | 2017-05-10 | 光宝电子(广州)有限公司 | A solid state memory device and a related reading and controlling method thereof |
CN106843771A (en) * | 2017-01-26 | 2017-06-13 | 合肥兆芯电子有限公司 | Memory reads method, memorizer control circuit unit and memory storage apparatus again |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111880736A (en) * | 2020-07-28 | 2020-11-03 | 苏州浪潮智能科技有限公司 | Solid state disk access method, device, equipment and medium |
WO2022021857A1 (en) * | 2020-07-28 | 2022-02-03 | 苏州浪潮智能科技有限公司 | Solid state disk access method and apparatus, and device and medium |
CN111880736B (en) * | 2020-07-28 | 2022-08-16 | 苏州浪潮智能科技有限公司 | Solid state disk access method, device, equipment and medium |
US11734113B2 (en) | 2020-07-28 | 2023-08-22 | Inspur Suzhou Intelligent Technology Co., Ltd. | Solid state disk access method and apparatus, device, and medium |
WO2022099441A1 (en) * | 2020-11-10 | 2022-05-19 | 华为技术有限公司 | Method for reading storage medium, and related device |
CN116302844A (en) * | 2023-05-16 | 2023-06-23 | 苏州浪潮智能科技有限公司 | Method and device for acquiring hard disk information, computer equipment and storage medium |
CN116302844B (en) * | 2023-05-16 | 2023-08-08 | 苏州浪潮智能科技有限公司 | Method and device for acquiring hard disk information, computer equipment and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9063844B2 (en) | Non-volatile memory management system with time measure mechanism and method of operation thereof | |
US9146850B2 (en) | Data storage system with dynamic read threshold mechanism and method of operation thereof | |
US20150113206A1 (en) | Biasing for Wear Leveling in Storage Systems | |
US10126970B2 (en) | Paired metablocks in non-volatile storage device | |
US9361222B2 (en) | Electronic system with storage drive life estimation mechanism and method of operation thereof | |
US9465537B2 (en) | Memory system and method of controlling memory system | |
US20190108091A1 (en) | Self-prioritizing adaptive retry threshold adjustment | |
CN104919434A (en) | System and method for lower page data recovery in a solid state drive | |
US9123443B2 (en) | Memory device, memory management device, and memory management method | |
US20190378565A1 (en) | Method and apparatus for adaptive data retention management in non-volatile memory | |
CN110007861A (en) | A kind of method for reading data and device | |
CN108897492B (en) | Data writing method and device | |
US10545810B2 (en) | Method and apparatus for monitoring non-volatile memory read errors using background media scan | |
US20150220394A1 (en) | Memory system and method of controlling memory system | |
US10049007B2 (en) | Non-volatile memory device and read method thereof | |
CN109343796B (en) | Data processing method and device | |
US20160011937A1 (en) | Semiconductor memory device, memory controller, and control method of memory controller | |
JP2018163707A (en) | Semiconductor storage device and read control method of the same | |
US20180254092A1 (en) | Data-storage device and block-releasing method | |
US9779017B2 (en) | Data storage device and data accessing method thereof | |
US20100058145A1 (en) | Storage device and method of controlling storage device | |
KR101070511B1 (en) | Solid state drive controller and method for operating of the solid state drive controller | |
US9286176B1 (en) | Selective skipping of blocks in an SSD | |
JP2020119007A (en) | Information processing apparatus, storage control apparatus and storage control program | |
US20160041759A1 (en) | Storage system and data transmitting method thereof |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190712 |
|
RJ01 | Rejection of invention patent application after publication |