[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN110007861A - A kind of method for reading data and device - Google Patents

A kind of method for reading data and device Download PDF

Info

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
Application number
CN201910248879.4A
Other languages
Chinese (zh)
Inventor
唐侃毅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN201910248879.4A priority Critical patent/CN110007861A/en
Publication of CN110007861A publication Critical patent/CN110007861A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • G06F11/108Parity data distribution in semiconductor storages, e.g. in SSD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-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

A kind of method for reading data and device
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.
CN201910248879.4A 2019-03-29 2019-03-29 A kind of method for reading data and device Pending CN110007861A (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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