CN102024497B - Method for storing data and storage device - Google Patents

Method for storing data and storage device Download PDF

Info

Publication number
CN102024497B
CN102024497B CN200910173950.3A CN200910173950A CN102024497B CN 102024497 B CN102024497 B CN 102024497B CN 200910173950 A CN200910173950 A CN 200910173950A CN 102024497 B CN102024497 B CN 102024497B
Authority
CN
China
Prior art keywords
data
flash memory
error correcting
correcting code
leaf
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN200910173950.3A
Other languages
Chinese (zh)
Other versions
CN102024497A (en
Inventor
张娅舸
徐君
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Huawei Technology Co Ltd
Original Assignee
Huawei Symantec 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 Huawei Symantec Technologies Co Ltd filed Critical Huawei Symantec Technologies Co Ltd
Priority to CN200910173950.3A priority Critical patent/CN102024497B/en
Publication of CN102024497A publication Critical patent/CN102024497A/en
Application granted granted Critical
Publication of CN102024497B publication Critical patent/CN102024497B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

The embodiment of the invention discloses a method for storing data and a storage device. The method comprises the following steps of acquiring data and error correcting codes of the data; and respectively storing the data and the error correcting codes of the data in different pages of a flash memory through a data channel which is connected with the flash memory. Based on the technical scheme, because the error correcting codes of the data are stored in independent pages, i.e. the pages of a storage space are divided into two types, one type of the pages is used for storing the data, and the other type of the pages is used for storing the error correcting codes of the data, the data and all error correcting codes of the data can be obtained through less reading times, thereby acquiring correct data, reducing the error possibility of the storage device and enabling the storage device to be safe and stable in the process of data storage.

Description

A kind of data storing method and memory storage
Technical field
The present invention relates to electronic technology field, be specifically related to a kind of data storing method and memory storage.
Background technology
Memory device has important effect for current people's life, and people store written historical materials, picture, video etc. with it.A kind of memory device commonly used such as solid state hard disc (SSD, Solid State Disk), because its memory capacity is big, volume is little, and is easy to carry, plays an important role in daily life.A kind of SSD can be made up of flash memory (Flash), as with non-(NAND) Flash.Because random bit (bit) upset all may take place, thereby cause data to be made mistakes in NAND Flash manufacturing process when the reading and writing of carrying out data and storage.Along with making updating of Flash technology, the data of unit storage space storage are more, and it is bigger then to store the probability that data make mistakes.
Bug check and correction (ECC, Error Checking and Correcting) technology can be carried out bug check and correction to the data of reading from Flash, reduces the error rate of the data of reading from Flash.Concrete method of operating comprises:
At first, data are encoded, specific implementation comprises: the data that write the Flash chip are calculated, thereby obtain the error correcting code (ECC of storage data, Error Correction Code), this process of obtaining error correcting code also becomes coding, wherein, the space of storage error correcting code is also referred to as check digit, ECC and the data of storage are write in the Flash chip together, wherein, the calculating of error correcting code is to be unit with sector (Sector), the shared check bit of error correcting code of the data of storing in a Sector who obtains during greater than the check bit that allows at most among the Sector, stores the error correcting code of the data of storing among this Sector in the check bit of a plurality of Sector into;
Secondly, data are deciphered, specific implementation comprises: during the data of storing on will reading the Flash chip, the error correcting code of this data of storing on data and the check bit is read, the error correcting code that produces during according to the error correcting code of reading and read data, the data of reading are corrected, thereby reach the purpose of reading correct data.
In the prior art in sector the distribution of storage space as shown in Figure 1, data are to be that unit writes among the Flash with Sector, perhaps read from Flash.(still, wherein the space of 512B is used for the storage data as data space for B, data Bytes), and 16B is as redundant space can to store 528 bytes among the Sector at most.Have at least the space of 4B to be used for stored logic block address (LBA, Logic Block Address) address in the redundant space of 16B, therefore, the space that is used for the storage error correcting code has only 12B at most.
In research and practice process to prior art, the present inventor finds, in the prior art for 1 sector, every correction 1 bit (bit) data need the error correcting code of 13bit usually, namely to take the check digit of 13bit, therefore, check digit for 12B space in the sector can be corrected the 8bit misdata at most, when wanting the data of the more bits of error correction, error correcting code need be stored in the check bit of more Sector, comprise a plurality of Sector in the page or leaf, wherein, page or leaf is that memory storage writes, the least unit of sense data, therefore, cause memory storage when sense data, can not in time get access to the error correcting code corresponding with data, made memory storage in storage safety inadequately during data, stable.
Summary of the invention
The embodiment of the invention provides a kind of data storing method and memory storage, can improve security of storage data and stability.
The embodiment of the invention provides a kind of data storing method, comprising:
Obtain the error correcting code of data and described data;
By the data channel that links to each other with flash memory, the error correcting code of described data and described data is stored into respectively in the different page or leaf of described flash memory.
The embodiment of the invention provides also a kind of memory storage, and it comprises: data channel, flash memory, first acquiring unit, second acquisition unit and control store unit;
Described first acquiring unit is used for obtaining data;
Described second acquisition unit is for the error correcting code of obtaining described data;
Described control store unit is used for the described data channel by linking to each other with described flash memory, with the error correcting code of described data and described data store into respectively described flash memory different page in.
The embodiment of the invention adopts the error correcting code with data to store into independently in the page or leaf, and the page or leaf that is about to storage space is divided into two classes, comprising: a class page or leaf is used for the storage data, and a class page or leaf is used for the error correcting code of storage data; Therefore, can just can obtain all error correcting codes of data and data by less read-around number, thereby get access to correct data, reduce the memory storage probability of errors, make memory storage safe, stable when the storage data.
Description of drawings
In order to be illustrated more clearly in the embodiment of the invention or technical scheme of the prior art, to do to introduce simply to the accompanying drawing of required use in embodiment or the description of the Prior Art below, apparently, accompanying drawing in describing below only is some embodiments of the present invention, for those of ordinary skills, under the prerequisite of not paying creative work, can also obtain other accompanying drawing according to these accompanying drawings.
Fig. 1 is the distribution diagram of storage space in sector in the prior art;
Fig. 2 is a kind of data storing method general flow chart that the embodiment of the invention one provides;
Fig. 3 is a kind of data storing method general flow chart that the embodiment of the invention two provides;
Fig. 4 is the distribution synoptic diagram of a kind of storage space in the embodiment of the invention two;
Fig. 5 is a kind of data storing method general flow chart that the embodiment of the invention three provides;
Fig. 6 is the distribution synoptic diagram of a kind of storage space in the embodiment of the invention three;
Fig. 7 is the logical block synoptic diagram of a kind of memory storage of providing in the embodiment of the invention four.
Embodiment
Below in conjunction with the accompanying drawing in the embodiment of the invention, the technical scheme in the embodiment of the invention is clearly and completely described, obviously, described embodiment only is the present invention's part embodiment, rather than whole embodiment.Based on the embodiment among the present invention, those of ordinary skills belong to the scope of protection of the invention not making the every other embodiment that obtains under the creative work prerequisite.
Embodiment one,
The embodiment of the invention provides a kind of data storing method, and as shown in Figure 2, this method comprises:
Step 1: the error correcting code (ECC) of obtaining data and these data;
Wherein, the data of obtaining in the step 1 can be the data that receive the needs storage of miscellaneous equipment transmission, the error correcting code of obtaining these data in the step 1 can be according to specific algorithm, and the error correcting code of the data that calculate, the concrete operations of obtaining the error correcting code of data can be with reference to prior art.
Step 2: by the data channel that links to each other with flash memory, the error correcting code of data and data is stored into respectively in the different page or leaf of flash memory.
Wherein, need to prove that memory storage is that unit is operated with page or leaf (Page) all at read data with when writing data.Data are stored in one or more than in one the page or leaf in step 2, also store the error correcting code of data into one or more than in one the page or leaf, and wherein, the page or leaf of the page or leaf of storage data and storage correcting data error sign indicating number is different pages.The page or leaf that namely can understand in the memory storage is split up into two parts, comprising: the page or leaf of the page or leaf of storage data and storage correcting data error sign indicating number.
Explanation by a kind of data storing method that the embodiment of the invention is provided, this method stores into independently in the page or leaf by the error correcting code with data, the page or leaf that is about to storage space is divided into two classes, comprising: a class page or leaf is used for the storage data, and a class page or leaf is used for the error correcting code of storage data; Therefore, can just can obtain all error correcting codes of data and data by less read-around number, thereby get access to correct data, reduce the memory storage probability of errors, make memory storage safe, stable when the storage data.
Embodiment two,
The embodiment of the invention provides a kind of data storing method, this method is similar to the method that embodiment one provides, comprise: all with the error correcting code of data independent be that unit stores with Page, the Page of storage correcting data error sign indicating number does not store data, simultaneously, the Page of storage data does not store the error correcting code of data; But the embodiment of the invention provides a kind of method of storing data and this correcting data error sign indicating number more specifically, is convenient to the step by still less, gets access to all error correcting codes of data faster, thereby gets access to correct storage data.
As shown in Figure 3, this method comprises:
Steps A 1: identical with the step 1 among the embodiment one, namely obtain the error correcting code (ECC) of data and these data;
Steps A 2: by the data channel that links to each other with flash memory, the error correcting code of data and data is stored into respectively in the different page or leaf of flash memory; Wherein, above-mentioned data channel comprises at least one; The above-mentioned data channel that links to each other with flash memory comprises: with one or at least one data channel that links to each other more than one flash memory; When the different page or leaf of above-mentioned flash memory be in the flash memory during the identical different page or leaf of numbering, above-mentioned error correcting code is the error correcting code of the data of storing in the page or leaf that numbering is identical in the flash memory.
The explanation of being convenient to understand comprises: this memory storage stores the error correcting code of the data obtained and these data respectively in the different pages or leaves, as more than a flash memory, and when the data channel that links to each other with flash memory (Flash) comprises more than one, Flash is divided into the page or leaf more than, in the page or leaf that numbering is identical in all Flash, have a page or leaf to be used for the storage error correcting code, error correcting code is the error correcting code of the data of storage in the page or leaf that numbering is identical among all Flash.
It will be appreciated that data channel is for the storage space that data and error correcting code is inputed to memory storage, perhaps, data and error correcting code is exported from storage space.Storage space described here normally is made up of a plurality of flash memories, data passage usually with one or link to each other more than one flash memory, flash memory is divided into a plurality of pages or leaves, and flash memory is data or the error correcting code of storing in the unit output page with the page or leaf, is that unit writes data or error correcting code with the page or leaf.
Common many data channel and the data of being about to are imported or the output memory storage.As shown in Figure 4, be example so that four data channel to be arranged in the memory storage, comprising: zero passage (Channle0), first passage (Channel1), second channel (Channel2), and third channel (Channel3).Wherein, be different with the numbering of each Page among the Flash that every passage links to each other, as demonstrated among the figure with Flash that each passage links to each other in numbering from the numbering of Page0 to Page7 continuous page.Wherein, said in the steps A 2 " in the page or leaf that numbering is identical in all Flash; have a page or leaf to be used for the storage error correcting code; error correcting code is the error correcting code of the data of storage in the page or leaf that numbering is identical among all Flash ", understanding at Fig. 4 is, will with Flash that Channel0 to Channel3 links to each other in be numbered in the page or leaf of Page0, have a page or leaf (being the Page0 of Channel0) to be used for the error correcting code of data among all Page0 of Flash that storage links to each other with Channel1 to Channel3.Be about to all with Flash that data channel links to each other in the data definition stored in the Page0 be data0, all with Flash that data channel links to each other in the data definition stored in the Page1 be data1, by that analogy; The error correcting code of data0 is stored in one of them page or leaf of Page0 (namely as check bit Parity0 place among Fig. 4 page), the error correcting code of data1 is stored in the page or leaf of Page1 (namely as check bit Parity1 place among Fig. 4 page), by that analogy.
Also it will be appreciated that, the physical address of the page or leaf that numbering is identical in all data is normally continuous, for example: usually with Flash that Channel0 links to each other in page0, with Flash that Channel1 links to each other in page0, with Flash that Channel2 links to each other in page0, with Flash that Channel3 links to each other in the physical address of page0 continuous.
By the explanation of above-mentioned a kind of data storing method that the embodiment of the invention is provided, when reading the continuation address data, because interchannel is concurrent, read once just can obtain the error correcting code of data and these data, thereby carry out data check and output.Thereby get access to correct data, reduced the memory storage probability of errors, make memory storage safe, stable when the storage data.
Further, in order to guarantee when reading the address discrete date, can just can read the error correcting code of data correspondence by the least possible operation, then store the page or leaf of error correcting code in the steps A 2, also need further restriction, that is: with flash memory that a data channel at least one data channel links to each other in, when with flash memory that a data passage links to each other in different page or leaf be in the flash memory during continuous N page of numbering, error correcting code is stored in the page or leaf of N continuous page or leaf of numbering, the value of N is the quantity of all data channel.
The explanation of the preceding paragraph literal can be understood as, and to the page or leaf of storage error correcting code in the steps A 2, further restriction comprises: in all Flash that a data passage links to each other, number in N the continuous page or leaf, have only a page or leaf to be used for the storage error correcting code, wherein, N is the quantity of all data channel.
For the ease of understanding the preceding paragraph literal, still referring to shown in Figure 4, because many data channel and the data of being about to are exported memory storage, and when the address that synchronization reads is discontinuous, for example: the page or leaf that synchronization reads comprises: with the Page0 among the Flash that Channel0 links to each other, with the Page0 among the Flash that Channel1 links to each other, with the Page1 among the Flash that Channel2 links to each other, with the Page2 among the Flash that Channel3 links to each other, the data that namely read order be: Parity0, data0, data1, data2.
Because in all Flash that a data passage links to each other, number in N the continuous page or leaf, have only a page or leaf to be used for the storage error correcting code, therefore, memory storage is exported once again and just the error correcting code of all data can be read, the page or leaf that namely reads following a moment comprises at least: with the Parity1 that stores among the Page1 among the Flash that Channel1 links to each other, with Flash that Channel2 links to each other in Page2 in the Parity2 that stores.If Parity1 and Parity2 are stored in the same data channel, just can not be at the error correcting code Parity1 that once reads out data1, data2, Parity2.
By carrying out above-mentioned data storing method, as shown in Figure 4, be the distribution schematic diagram of the error correcting code of the data finally in data channel, imported and data, as can be seen, have only a page or leaf to be used for the storage error correcting code in each passage in continuous four pages or leaves, the data of other three page or leaf storages.Therefore, be used for storage error correcting code page or leaf and formed regular ladder distribution as shown in Figure 4.
Need to prove that also above-mentioned is that memory storage with four data channel is illustrated, and for the situation of other incremental data passage, can explanation from here release easily, therefore, should not be construed the restriction to the embodiment of the invention herein.
Embodiment three,
The embodiment of the invention provides a kind of data storing method, the embodiment of the invention provides a kind of data storing method, this method is similar to the method that embodiment one provides, comprise: all with the error correcting code of data independent be that unit stores with Page, the Page of storage correcting data error sign indicating number does not store data, simultaneously, the Page of storage data does not store the error correcting code of data; But the embodiment of the invention provides another kind of method of storing data and this correcting data error sign indicating number more specifically, is convenient to the step by still less, gets access to all error correcting codes of data faster, thereby gets access to correct storage data.
As shown in Figure 5, this method comprises:
Step B1: identical with the step 1 among the embodiment one, namely obtain the error correcting code (ECC) of data and these data;
Step B2: the error correcting code of data and data is stored into respectively in the different page or leaf of the flash memory that links to each other with the different pieces of information passage; Wherein, above-mentioned data channel comprises at least one; The above-mentioned data channel that links to each other with flash memory comprises: with one or at least one data channel that links to each other more than one flash memory.
B2 can be understood as to step: the error correcting code of the data obtained and these data is stored into respectively in the different pages or leaves, wherein, as more than a flash memory, and when the data channel that links to each other with flash memory (Flash) comprises more than one, Flash is divided into more than a page or leaf, with the data of storing among all Flash that a data channel links to each other, with the error correcting code of these data, be stored in the flash memory that links to each other with different data channel; Article one, data channel is any data channel.
Wherein, in step B2 will with the error correcting code of the data of storing among the Flash that a data channel links to each other, be stored among the different Flash, this different Flash refers to the Flash that links to each other with another data channel, when the concurrent data of interchannel, the error correcting code of data and these data can be exported simultaneously, thereby can be got access to correct data fast.
As shown in Figure 6, be example so that four data channel to be arranged in the memory storage, the space of storage data and the spatial distributions synoptic diagram of correcting data error sign indicating number.Wherein, a self-defined sector address space is used for the error correcting code of storage data in each data channel, and in every data channel lines one sector address space being arranged namely as among Fig. 6 is for the error correcting code of storing data; For the ease of understanding, in Fig. 6 with Flash that Channel0 links to each other in all data definitions of storing be data0, with Flash that Channel1 links to each other in all data definitions of storing be data1, being data2 with all data definitions of storing among the Flash that Channel2 links to each other, is data3 with all data definitions of storing among the Flash that Channe3 links to each other.With data0 must the Flash that all error correcting codes leave in Channel1 links to each other in a self-defining sector address space (being parity0), with data1 must the Flash that all error correcting codes leave in Channel2 links to each other in a self-defining sector address space (being parit1), with data2 must the Flash that all error correcting codes leave in Channel3 links to each other in a self-defining sector address space (being parity2), with data3 must the Flash that all error correcting codes leave in Channel0 links to each other in a self-defining sector address space (being parity3).
Wherein, comprise at least one page or leaf in each self-defining sector address space.Also it will be appreciated that, above-mentioned is the situation of the error correcting code of regular storage data, namely as shown in Figure 6, with the error correcting code of the data of storing among the Flash that each bar data channel links to each other, be stored in and number with it among the Flash that next adjacent bar data channel links to each other in the self-defining address space.In fact, with the data of storing among the Flash that a data channel links to each other, error correcting code with the data of storing among the Flash that this data channel links to each other, satisfy to be stored in respectively among the Flash that links to each other with different data channel and get final product, when needs read the data of storing in this data channel, just can read error correcting code according to the address of the error correcting code of storing these data.Wherein, the error correcting code of sense data and data can be simultaneously, also can be at twice, comprising: a sense data, the error correcting code of a sense data.Sense data and error correcting code are can be according to the address of the error correcting code of storage data and data, select the strategy of sense data the most fast and error correcting code thereof.
Explanation by a kind of data storing method that the embodiment of the invention is provided, this method stores the error correcting code of the data obtained and these data respectively in the different pages or leaves, wherein, as more than a flash memory, and when the data channel that links to each other with flash memory (Flash) comprised more than one, Flash was divided into the page or leaf more than, with the data of storing among all Flash that a data channel links to each other, with the error correcting code of these data, be stored in the flash memory that links to each other with different data channel; Article one, data channel is any data channel; Therefore, can just can obtain all error correcting codes of data and data by less read-around number, thereby get access to correct data, reduce the memory storage probability of errors, make memory storage safe, stable when the storage data.
Embodiment four,
The embodiment of the invention provides a kind of memory storage, and as shown in Figure 7, this memory storage comprises: first acquiring unit 100, second acquisition unit 101, control store unit 102, data channel 103 and flash memory 104.
Wherein, first acquiring unit 100 is used for obtaining data;
Second acquisition unit 101 is used for obtaining the error correcting code that first acquiring unit 100 obtains data;
Wherein, the data of obtaining in first acquiring unit 100 can be the data that receive the needs storage of miscellaneous equipment transmission, the error correcting code of obtaining these data in the second acquisition unit 101 can be according to specific algorithm, and the error correcting code of the data that calculate, the concrete operations of obtaining the error correcting code of data can be with reference to prior art.
Control store unit 102 is used for the data channel by linking to each other with flash memory, with the error correcting code of data and data store into respectively flash memory different page in.
Data channel 103 is for the error correcting code of transmission data and data, identical with data channel in the prior art;
Flash memory 104 is used for storage data and error correcting code, and wherein, flash memory is that unit is divided with the page or leaf, and is identical with flash memory in the prior art.
Wherein, data are stored in one or more than in one the page or leaf, also store the error correcting code of data into one or more than in one the page or leaf, and wherein, the page or leaf of the page or leaf of storage data and storage correcting data error sign indicating number is different pages.
Explanation by a kind of memory storage that the embodiment of the invention is provided, this device stores into independently in the page or leaf by the error correcting code with data, the page or leaf that is about to storage space is divided into two classes, comprising: a class page or leaf is used for the storage data, and a class page or leaf is used for the error correcting code of storage data; Therefore, can just can obtain all error correcting codes of data and data by less read-around number, thereby get access to correct data, reduce the memory storage probability of errors, make memory storage safe, stable when the storage data.
Optionally, comprise at least one when data channel; And with one or link to each other with each bar data channel more than one flash memory;
Then the control store unit 102, the concrete data channel that is used for by linking to each other with flash memory, with the error correcting code of data and data store into respectively flash memory different page in; When the different page or leaf of flash memory be in the flash memory during the identical different page or leaf of numbering, error correcting code is the error correcting code of the data of storing in the page or leaf that numbering is identical in the flash memory.
For the explanation of last two sections literal to control store unit 102, it is also understood that for, control store unit 102 concrete error correcting codes for the data that will obtain and these data store different pages or leaves respectively into, wherein, as more than a flash memory, and when the data channel that links to each other with flash memory (Flash) comprises more than one, Flash is divided into the page or leaf more than, in the page or leaf that numbering is identical in all Flash, have a page or leaf to be used for the storage error correcting code, error correcting code is the error correcting code of the data of storage in the page or leaf that numbering is identical among all Flash.
Wherein, it will be appreciated that this memory storage can comprise one or more than one Flash, this Flash provides storage space, the error correcting code that namely is used for storage data and/or data, each Flash is divided into a plurality of pages or leaves again, and page or leaf is that Flash is read or the minimum unit of write operation.
By further specifying the control store unit 102 in this memory storage, make this memory storage when reading the continuation address data, because interchannel is concurrent, reads once just can obtain the error correcting code of data and these data, thereby carry out data check and output.Thereby get access to correct data, reduced the memory storage probability of errors, make memory storage safe, stable when the storage data.
Further, on the above-mentioned basis that further specifies about this memory storage 102, among all Flash that link to each other with a data passage in this memory storage 102, number in N the continuous page or leaf, have only a page or leaf to be used for the storage error correcting code, wherein, N is the quantity of described data channel.
Explanation to the preceding paragraph literal also can be understood as: with flash memory that a data channel at least one data channel links to each other in, when with flash memory that a data passage links to each other in different page or leaf be in the flash memory during continuous N page of numbering, error correcting code is stored in the page or leaf of N continuous page or leaf of numbering, the value of N is the quantity of all data channel.
By the explanation of further increase to the control store unit 102 in this memory storage, make this memory storage when reading the address discrete date, can just can read the error correcting code of data correspondence by few operation of doing the best.
Optionally, work as data channel in this memory storage and comprise at least one; And with one or link to each other with each bar data channel more than one flash memory; Then the control store unit 102, the concrete different page or leaf that is used for the error correcting code of data and data is stored into respectively the flash memory that links to each other with the different pieces of information passage.
Also can be understood as the control store unit 102 in this memory storage, the error correcting code that can be specifically be used for the data that will obtain and these data stores different pages respectively into, wherein, as more than a flash memory, and when the data channel that links to each other with flash memory (Flash) comprised more than one, Flash was divided into the page or leaf more than, with the data of storing among all Flash that a data channel links to each other, with the error correcting code of these data, be stored in the flash memory that links to each other with different data channel; Article one, data channel is any data channel.
By the restriction of the preceding paragraph literal to this control store unit 102, make this memory storage will with the error correcting code of the data of storing among the Flash that a data channel links to each other, be stored among the Flash that links to each other with 01 data channel, when the concurrent data of interchannel, the error correcting code of data and these data can be exported simultaneously, thereby can be got access to correct data fast.
Also need to prove, for more detailed descriptions and the understanding of this memory storage, the explanation in can reference method embodiment one, two and three.
One of ordinary skill in the art will appreciate that all or part of step in the whole bag of tricks of above-described embodiment is to instruct relevant hardware to finish by program, this program can be stored in the computer-readable recording medium, and storage medium can comprise: ROM, RAM, disk or CD etc.
More than provide a kind of data storing method and memory storage to be described in detail to the embodiment of the invention, used specific case herein principle of the present invention and embodiment are set forth, the explanation of above embodiment just is used for helping to understand method of the present invention and core concept thereof; Simultaneously, for one of ordinary skill in the art, according to thought of the present invention, the part that all can change in specific embodiments and applications, in sum, this description should not be construed as limitation of the present invention.

Claims (6)

1. a data storing method is characterized in that, comprising:
Obtain the error correcting code of data and described data;
By the data channel that links to each other with flash memory, the error correcting code of described data and described data is stored into respectively in the different page or leaf of described flash memory;
Wherein, described data channel comprises more than one; The described data channel that links to each other with flash memory comprises: with at least one data channel that links to each other more than one flash memory;
When the different page or leaf of described flash memory be in the flash memory during the identical different page or leaf of numbering, described error correcting code is the error correcting code of the data of storing in the page or leaf that numbering is identical in the flash memory.
2. data storing method according to claim 1 is characterized in that, described data channel by linking to each other with flash memory stores the error correcting code of described data and described data respectively in the different page or leaf of described flash memory, comprising:
With the described flash memory that links to each other more than a data channel in the data channel in, when with flash memory that a described data passage links to each other in different page or leaf be in the flash memory during continuous N page of numbering, error correcting code is stored in the page or leaf of the continuous N of described numbering page or leaf, the value of described N is the quantity of all data channel.
3. a data storing method is characterized in that, comprising:
Obtain the error correcting code of data and described data;
By the data channel that links to each other with flash memory, the error correcting code of described data and described data is stored into respectively in the different page or leaf of described flash memory;
Wherein, described data channel comprises more than one; The described data channel that links to each other with flash memory comprises: with at least one data channel that links to each other more than one flash memory;
Described data channel by linking to each other with flash memory stores the error correcting code of described data and described data respectively in the different page or leaf of described flash memory and to comprise: the error correcting code of described data and described data stored into respectively in different pages of the flash memory that links to each other with the different pieces of information passage.
4. memory storage comprises: data channel and flash memory, it is characterized in that, and also comprise: first acquiring unit, second acquisition unit and control store unit;
Described first acquiring unit is used for obtaining data;
Described second acquisition unit is for the error correcting code of obtaining described data;
Described control store unit is used for the described data channel by linking to each other with described flash memory, with the error correcting code of described data and described data store into respectively described flash memory different page in;
Wherein, described data channel comprises more than one; The described data channel that links to each other with flash memory comprises: with at least one data channel that links to each other more than one flash memory;
When the different page or leaf of described flash memory be in the flash memory during the identical different page or leaf of numbering, described error correcting code is the error correcting code of the data of storing in the page or leaf that numbering is identical in the flash memory.
5. device according to claim 4 is characterized in that, described data channel by linking to each other with flash memory stores the error correcting code of described data and described data respectively in the different page or leaf of described flash memory, comprising:
With the described flash memory that links to each other more than a data channel in the data channel in, when with flash memory that a described data passage links to each other in different page or leaf be in the flash memory during continuous N page of numbering, error correcting code is stored in the page or leaf of the continuous N of described numbering page or leaf, the value of described N is the quantity of all data channel.
6. memory storage comprises: data channel and flash memory, it is characterized in that, and also comprise: first acquiring unit, second acquisition unit and control store unit;
Described first acquiring unit is used for obtaining data;
Described second acquisition unit is for the error correcting code of obtaining described data;
Described control store unit is used for the described data channel by linking to each other with described flash memory, with the error correcting code of described data and described data store into respectively described flash memory different page in;
Wherein, described data channel comprises more than one; The described data channel that links to each other with flash memory comprises: with link to each other more than one flash memory more than a data channel;
Described data channel by linking to each other with flash memory stores the error correcting code of described data and described data respectively in the different page or leaf of described flash memory and to comprise: the error correcting code of described data and described data stored into respectively in different pages of the flash memory that links to each other with the different pieces of information passage.
CN200910173950.3A 2009-09-22 2009-09-22 Method for storing data and storage device Active CN102024497B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910173950.3A CN102024497B (en) 2009-09-22 2009-09-22 Method for storing data and storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910173950.3A CN102024497B (en) 2009-09-22 2009-09-22 Method for storing data and storage device

Publications (2)

Publication Number Publication Date
CN102024497A CN102024497A (en) 2011-04-20
CN102024497B true CN102024497B (en) 2013-10-02

Family

ID=43865690

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910173950.3A Active CN102024497B (en) 2009-09-22 2009-09-22 Method for storing data and storage device

Country Status (1)

Country Link
CN (1) CN102024497B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8874994B2 (en) * 2011-07-22 2014-10-28 Sandisk Technologies Inc. Systems and methods of storing data
CN110457160B (en) * 2019-07-02 2023-11-17 深圳市金泰克半导体有限公司 Error correction method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1737801A (en) * 2005-09-05 2006-02-22 威盛电子股份有限公司 Data memory structure and method thereof
CN101427225A (en) * 2000-11-22 2009-05-06 三因迪斯克公司 Techniques for operating non-volatile memory systems with data sectors having different sizes than the sizes of the pages and/or blocks of the memory

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7155559B1 (en) * 2000-08-25 2006-12-26 Lexar Media, Inc. Flash memory architecture with separate storage of overhead and user data
US6906961B2 (en) * 2003-06-24 2005-06-14 Micron Technology, Inc. Erase block data splitting

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101427225A (en) * 2000-11-22 2009-05-06 三因迪斯克公司 Techniques for operating non-volatile memory systems with data sectors having different sizes than the sizes of the pages and/or blocks of the memory
CN1737801A (en) * 2005-09-05 2006-02-22 威盛电子股份有限公司 Data memory structure and method thereof

Also Published As

Publication number Publication date
CN102024497A (en) 2011-04-20

Similar Documents

Publication Publication Date Title
US10459794B2 (en) Memory systems having extended product lifetime and methods of operating the same
CN105340022B (en) Circuit, device and method for correction data mistake
US10283216B2 (en) Data storage device and data maintenance method thereof
US9465552B2 (en) Selection of redundant storage configuration based on available memory space
CN104871249A (en) Adaptive error correction codes for data storage systems
CN108268337B (en) Method for managing data in memory device, memory device and controller thereof
CN103578565B (en) The method of calibration and device of a kind of NAND Flash memory chips
CN101183565A (en) Data verification method for storage medium
CN102394114B (en) BCH code error correction method capable of adaptive error correction
CN101573694A (en) Method, system, and apparatus for ECC protection of small data structures
US10509697B2 (en) Data storage device and operating method therefor
CN102339641A (en) Error checking and correcting verification module and data reading-writing method thereof
US9171629B1 (en) Storage device, memory controller and memory control method
US20160283319A1 (en) Data storage device and encoding method thereof
JP6346123B2 (en) Controller and control method
US20210271544A1 (en) Generating error checking data for error detection during modification of data in a memory sub-system
CN103594120A (en) Memorizer error correction method adopting reading to replace writing
US20190296774A1 (en) Memory system and control method
KR102666852B1 (en) Controller, semiconductor memory system and operating method thereof
CN114115729B (en) Efficient data migration method under RAID
CN102024497B (en) Method for storing data and storage device
CN101308706A (en) Data writing method and error correction encoding and decoding method suitable for flash memory
CN104794019B (en) The data guard method and device of a kind of in-line memory
CN104681095B (en) Storage device and its operating method
CN103559914B (en) ECC storer stores the method for different length data

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: HUAWEI DIGITAL TECHNOLOGY (CHENGDU) CO., LTD.

Free format text: FORMER NAME: CHENGDU HUAWEI SYMANTEC TECHNOLOGIES CO., LTD.

CP01 Change in the name or title of a patent holder

Address after: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Patentee after: HUAWEI DIGITAL TECHNOLOGIES (CHENG DU) Co.,Ltd.

Address before: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Patentee before: CHENGDU HUAWEI SYMANTEC TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right

Effective date of registration: 20220831

Address after: No. 1899 Xiyuan Avenue, high tech Zone (West District), Chengdu, Sichuan 610041

Patentee after: Chengdu Huawei Technologies Co.,Ltd.

Address before: 611731 Qingshui River District, Chengdu hi tech Zone, Sichuan, China

Patentee before: HUAWEI DIGITAL TECHNOLOGIES (CHENG DU) Co.,Ltd.

TR01 Transfer of patent right