CN102081577A - Data storage structure of Flash memory and data manipulation mode thereof - Google Patents

Data storage structure of Flash memory and data manipulation mode thereof Download PDF

Info

Publication number
CN102081577A
CN102081577A CN 201110008672 CN201110008672A CN102081577A CN 102081577 A CN102081577 A CN 102081577A CN 201110008672 CN201110008672 CN 201110008672 CN 201110008672 A CN201110008672 A CN 201110008672A CN 102081577 A CN102081577 A CN 102081577A
Authority
CN
China
Prior art keywords
data
page
piece
file
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 201110008672
Other languages
Chinese (zh)
Other versions
CN102081577B (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.)
Xiamen Yaxon Networks Co Ltd
Original Assignee
Xiamen Yaxon Networks 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 Xiamen Yaxon Networks Co Ltd filed Critical Xiamen Yaxon Networks Co Ltd
Priority to CN 201110008672 priority Critical patent/CN102081577B/en
Publication of CN102081577A publication Critical patent/CN102081577A/en
Application granted granted Critical
Publication of CN102081577B publication Critical patent/CN102081577B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Read Only Memory (AREA)

Abstract

The invention relates to the field of a Flash memory, particularly a data storage structure of a Flash memory. A storage unit on each page comprises a data storage space for storing data and a spare space, wherein the spare space is defined into the following parts: a file name recording area, a page name recording area, a page storage state recording area, a page state recording area, a block erase counter recording area and a data check code recording area. The data manipulation mode of the data storage structure of a Flash memory specifically comprises a system initialization step and a data manipulation step, wherein the data manipulation step comprises storage space allocation and release operation, anti-power-down protection operation, abrasion balancing operation, bad block processing and data check operation. The invention optimizes the data storage structure of a Flash memory and the data manipulation control mode thereof, balances the Flash memory in the read-write operation, carries out anti-powder-down processing and designs an ECC (Error Correction Code) processing mechanism, thereby avoiding the defects of the existing Flash.

Description

The data store organisation of Flash storer and data manipulation mode thereof
Technical field
The present invention relates to the electronic memory field, relate in particular to Flash storer (flash memory) field.
Background technology
For embedded device, flash memory (Flash) is very common a kind of storage medium.Along with popularizing that GPS uses, various application and developments based on GPS emerge in an endless stream.GPS monitoring car-mounted terminal is a kind of electronic product of present GPS in the automobile industry widespread use, is usually used in functions such as automobile burglar, monitoring, location, position enquiring, black box, scheduling.On essence, GPS monitoring car-mounted terminal also is a embedded device, and it needs CPU equally, internal memory, I/O mouth, parts such as storage medium.So the storage medium of GPS monitoring car-mounted terminal is also mostly to be to adopt the Flash storer.
Because vehicle GPS monitor terminal working environment very severe, the influence of various external factor such as electric spark, electromagnetic interference (EMI), automobile power source shakiness, hot environment is often arranged, cause the monitor terminal abnormal power-down, exceptional reset, problem such as cause that data storage is destroyed, lost.Under the hot environment, also can cause the Flash device to endure the puzzlement of position exchange phenomenon to the fullest extent, cause error in data.Therefore, when design data is stored, must take into full account the influence of these factors, make data storage have anti-power down, anti-interference, from the error correction ability, reliable and stable.
When the Flash storer carries out the data storage design, also to consider the characteristic of some Flash.The Flash storer can not be wiped single byte, and minimum erase unit is a piece (Block), is also referred to as sector (Sector) sometimes.The write operation of any Flash storer can only be carried out in sky or the unit of having wiped.So in most cases, execution is earlier wiped before carrying out write operation.But the life-span of Flash chip is limited, and the maximum erasable number of times of each Block is 1,000,000 times among the NAND flash usually, and the erasable number of times of NOR flash is 100,000 times.If certain Block erasing times above the life-span number of times, causes bad piece occurring easily even monoblock Flash scraps.So-called bad piece is not that whole Block has gone bad, may be in the piece one or a few bit loss bad.
And the data store organisation of existing Flash storer and data manipulation mode acquiescence thereof are fairly simple, directly the piece in the Flash storer (Block) are deleted successively and are write.Therefore, usually the piece (Block) and the page (Page) that come the front are frequently deleted and write, the piece (Block) that comes the back is then relative with the page (Page) idle.That is, the frequency of utilization of each piece (Block) in the Flash storer is inconsistent.Thereby, often be easy to generate bad piece and influence serviceable life of Flash.
So the data storage design time also needs to consider the loss balancing of Flash, will consider that promptly all pieces of Flash (Block) can both evenly be used, rather than some read and write always, and other piece effectively prolongs the life-span of Flash then at leisure.If the unfortunate bad piece of physics that takes place must guarantee that this piece can not continue to be used, at this moment need to consider bad piece treatment mechanism.
In addition, anti-power down process and data check (ECC) treatment mechanism is not often considered in the design of the data store organisation of existing Flash storer and data manipulation mode thereof yet.
Summary of the invention
Therefore, deficiency at the above-mentioned prior art of saying, the present invention proposes a kind of data store organisation of Flash storer of optimization and the control mode of data manipulation thereof, equilibrium treatment is carried out in storage to Flash in read-write operation, and carry out anti-power down process and the design of data check (ECC) treatment mechanism, avoided above-mentioned generation of defects.
The present invention adopts following technical scheme:
The data store organisation of Flash storer comprises a data space and a spare space of storing data in the storage cell of its each page (Page).Wherein, described spare space be defined as following a few part:
File name (FileID) recording areas is used to deposit file name (FileID) data;
Page Name (PageID) recording areas is used to deposit Page Name (PageID) data;
Page stores state recording district is used to deposit page stores mode bit (Page status) data and piece store status position (Block status) data;
Page status (TAG) recording areas is used to deposit page series number (Page Serial) data and page data length (Pagedatalen) data;
Piece erasing times recording areas is used to deposit the erasing times data of piece (Block);
Data check sign indicating number (ECC) recording areas is used for store data check code (ECC, Error Correction Code) data.
Data store organisation to aforesaid Flash storer carries out data manipulation mode, specifically: comprise system initialization step and data manipulation step;
Wherein, system initialization step comprises:
Step a: the various hardware parameters that obtain the Flash storer;
Step b: the backup space in the storage cell of each page (Page) of traverse scanning Flash storer, judge whether bad piece of this page (Page) by reading piece store status position (Block status) data in the page stores state recording district, if bad piece, carry out bad piece once more and judge affirmation, if be still bad piece, then identifying this piece is the scanning that stops behind the bad piece other pages (Page) in the piece under this page (Block), enters into the scanning of the page of next piece (Block);
Step c: for the page (Page) in the piece (Block) of non-bad piece, judge by page data length (Pagedatalen) data that read page status (TAG) recording areas whether all pages (Page) in this piece (Block) are the clean page, if then this piece is mounted on the free block chained list;
Steps d: for the non-clean page (Page), judge by page stores mode bit (Page status) data that read in the page stores state recording district whether the current data of this page (Page) is effective, if the data of all pages (Page) in the piece (Block) all are invalid datas, represent that this piece (Block) can wipe, it is mounted to waits to wipe on the chained list;
Step e: for the page with valid data (Page), judge by file name (FileID) data that read in file name (FileID) recording areas whether the file chained list of the file that this page is affiliated is present in internal memory, if do not exist, then create a new file chained list with this file name;
Step f: the page (Page) that has existed for the file chained list, judge by Page Name (PageID) data that read Page Name (PageID) recording areas whether this page (Page) exists the Page Name node on the file chained list of same file title, if there is not this page of carry;
Step g: the page (Page) that has been present in the file chained list for the Page Name node, judge by page series number (Page Serial) data that read page status (TAG) recording areas whether its series number is maximum, if not maximum, be invalid with page stores mode bit (Page status) Data Identification of this page;
Step h: for page series number is the maximum page (Page), and this page of carry is on the file chained list of same file title;
Step I:, count current free block (Block) number information and file number information by free block chained list and file chained list;
Step j: canned data in the backup space in the storage cell of each page (Page) of Flash storer is read internal memory by certain data structure, be mounted on the doubly linked list of system organization information, and reside in the internal memory, set up the data structure of system at last;
Wherein, data manipulation step comprises: the distribution of storage space and releasing operation and/or the operation of anti-power down protection and/or balance abrasion operation and/or the processing of bad piece and/or data check operation.
Hardware parameter among the described step a comprises piece (Block) amount of capacity, the page (Page) amount of capacity, piece (Block) quantity, starting block (Block) and end block (Block) position.
The distribution of described storage space and releasing operation be specifically:
When new data file is created, specify or produce a file name (FileID) in order by system, obtain from current free block linked list head, and distribute a clean free block (Block), the file name of same data file (FileID) all is set to identical, and Page Name (PageID) increases progressively since 0 in order;
Data are write fashionable, new page (Page) is designated untapped the beginning from current page stores mode bit (Page status) with same file title (FileID) and page stores state recording district and distributes, if having write completely, current block (Block) uses up, then the piece store status position (Block status) in page stores state recording district is masked as full, redistribute a new clean free block (Block), and keep its file name (FileID) constant;
When deleting a data file, system can find the piece (Block) of all same file titles (FileID) according to file name (FileID), confirm in these pieces (Block) current do not carrying out read-write operation after, execution block (Block) erasing move in order, then one by one again carry return on the free block chained list.
Described anti-power down protection is operated specifically: system all is 0 when data are write for the first time in the page series number (Page Serial) of each page (Page), all adds 1 when writing the page (Page) with identical file title (FileID) and Page Name (PageID) later at every turn.
Described balance abrasion is operated specifically: the erasing times data of the piece (Block) in the piece erasing times recording areas of each page (Page) all are 0 when operating for the first time, all add 1 in the time of later on each data manipulation, system decides this to wipe the front and back order of piece (Block) afterwards on the idle chained list of piece according to the erasing times of piece (Block), less (Block) ordering on the idle chained list of piece of erasing times is forward, and the piece (Block) of same erasing times is with the sequencing ordering of its carry in the idle chained list of piece.
Described bad piece is handled specifically: system has write each page (Page) and has read these data after the data at once and compare with the preceding data that write in the data buffer area, if find not exclusively coupling, bad piece may appear in the piece (Block) of then representing this page (Page) place, earlier the current stored valid data of this piece (Block) is transferred on the another one piece (Block), success to be transferred, write after more possible bad piece being wiped again and treat write data, if it is still undesired, be bad piece clearly then with this block mark, system is follow-up in service, as long as read the piece store status bit data of the bad piece of this piece, just jump to next piece (Block) automatically.
Described data check is operated specifically: system can calculate the check code (ECC of storage data earlier by the ECC checking algorithm before data are writing at every turn, Error Correction Code), then simultaneously with check code (ECC, Error Correction Code) writes the backup space of the page, during reading of data, the data that read are calculated ECC check code (ECC earlier, Error Correction Code), again the ECC check code that the draws data check code data with data check sign indicating number recording areas is compared, if it is inconsistent, show mistake to have occurred, call the ECC correction algorithm at last, carry out data and remedy.
Technical scheme of the present invention proposes a kind of data store organisation of Flash storer of optimization and the control mode of data manipulation thereof.Technical scheme of the present invention is carried out equilibrium treatment to Flash storage in read-write operation, avoided avoiding the generation of bad piece as far as possible, thereby having prolonged the serviceable life of Flash storer because of frequently writing deletion action to the piece shortening in (Block) life-span.Simultaneously, also under rugged surroundings, use and carry out anti-power down process and the design of data check (ECC) treatment mechanism, thereby make the Flash storer have anti-power down in data storage at the Flash storer, anti-interference, from the error correction ability.
Therefore, the present invention is that a kind of data storage that is suitable for the GPS monitor terminal under the vehicle environment is used.The present invention uses through the test of long period, proves that this kind data structures data and data manipulation method thereof are safe and reliable.Equally, the data store organisation of Flash storer of the present invention and data manipulation mode thereof also be applicable under the vehicle environment less, the no operating system support of other embedded device, particularly internal memory and to the relatively strict equipment of data memory requirement.
Embodiment
The present invention at first proposes a kind of data store organisation of Flash storer, comprises a data space and a spare space of storing data in the storage cell of its each page (Page).Wherein, described spare space be defined as following a few part:
File name (FileID) recording areas is used to deposit file name (FileID) data;
Page Name (PageID) recording areas is used to deposit Page Name (PageID) data;
Page stores state recording district is used to deposit page stores mode bit (Page status) data and piece store status position (Block status) data;
Page status (TAG) recording areas is used to deposit page series number (Page Serial) data and page data length (Pagedatalen) data;
Piece erasing times recording areas is used to deposit the erasing times data of piece (Block);
Data check sign indicating number (ECC) recording areas is used for store data check code (ECC, Error Correction Code) data.
The present invention mainly is that the characteristic at NAND Flash designs, but as long as the parameters such as size by configuration Flash piece also can be transplanted on the Nor Flash.Only describe with NAND Flash below, those skilled in the art can realize identical design data and data manipulation mode according to the thinking principle of this explanation on Nor Flash.
Nand Flash is that unit is wiped with piece (Block), is the characteristics that unit carries out access with the page (Page), file group is made into the data segment of fixed size.In general, each block size of the following capacity NANDFlash of 128MB chip is 16K, and each piece has 32 pages.One page comprises that size is 512 bytes, be used for the data space of store data during design, each page also has the spare space (SpareData) of 16 bytes in addition, is used for storing the organizational information of ECC (Error Correction Code) verification and data storage during design.Data store organisation of the present invention then is to design at spare space (SpareData) and realize thinking of the present invention.
Each page data on the NAND FLASH all has additional space to be used for storing additional information, is that the NAND FLASH chip of a PAGE is an example with 512+16Byte, and the storage layout of data is as follows:
0..511 Data area (512Byte)
512-513 FileID (2Byte) supports 255 different files at most
514-515 Maximum 65535 pages of each file of Page ID (2Byte)
516 Page status (1Byte) page stores mode bit
517 Block status (1Byte) piece store status position
518..519 Piece erasing times (2Byte)
520..521 TAG(2Byte)
522..524 The ECC check results (3Byte) of preceding 256 byte datas
525..527 The ECC check results (3Byte) of back 256 byte datas
Can see and use 2 BYTE page status recording areas TAG to be used for depositing the relevant information of page status here altogether.The concrete operating position of these 2 Byte is as follows in order:
Bits Content
4 Page Serial page series number (4bit)
10 Pagedatalen page data length (4bit)
2 Unused is undefined
Flash writes fashionable at each page of execution, can calculate the spare space data of each page according to page data and information, and page data and spare space data are stored in buffer zone together, is written among the Flash synchronously then.Guaranteed the integrality of each page data and organizational information like this.More during new data, earlier the data of the legacy data page are read buffer zone, the page stores mode bit (page status) with this page is changed to 1 then, buffer data is upgraded again, and calculate the spare space data message, write a newly assigned page together.
Data store organisation to aforesaid Flash storer carries out data manipulation mode, specifically: comprise system initialization step and data manipulation step;
Wherein, system initialization step comprises:
Step a: the various hardware parameters that obtain the Flash storer;
Step b: the backup space in the storage cell of each page (Page) of traverse scanning Flash storer, judge whether bad piece of this page (Page) by reading piece store status position (Block status) data in the page stores state recording district, if bad piece, carry out bad piece once more and judge affirmation, if be still bad piece, then identifying this piece is the scanning that stops behind the bad piece other pages (Page) in the piece under this page (Block), enters into the scanning of the page of next piece (Block);
Step c: for the page (Page) in the piece (Block) of non-bad piece, judge by page data length (Pagedatalen) data that read page status (TAG) recording areas whether all pages (Page) in this piece (Block) are the clean page, if then this piece is mounted on the free block chained list;
Steps d: for the non-clean page (Page), judge by page stores mode bit (Page status) data that read in the page stores state recording district whether the current data of this page (Page) is effective, if the data of all pages (Page) in the piece (Block) all are invalid datas, represent that this piece (Block) can wipe, it is mounted to waits to wipe on the chained list;
Step e: for the page with valid data (Page), judge by file name (FileID) data that read in file name (FileID) recording areas whether the file chained list of the file that this page is affiliated is present in internal memory, if do not exist, then create a new file chained list with this file name;
Step f: the page (Page) that has existed for the file chained list, judge by Page Name (PageID) data that read Page Name (PageID) recording areas whether this page (Page) exists the Page Name node on the file chained list of same file title, if there is not this page of carry;
Step g: the page (Page) that has been present in the file chained list for the Page Name node, judge by page series number (Page Serial) data that read page status (TAG) recording areas whether its series number is maximum, if not maximum, be invalid with page stores mode bit (Page status) Data Identification of this page;
Step h: for page series number is the maximum page (Page), and this page of carry is on the file chained list of same file title;
Step I:, count current free block (Block) number information and file number information by free block chained list and file chained list;
Step j: canned data in the backup space in the storage cell of each page (Page) of Flash storer is read internal memory by certain data structure, be mounted on the doubly linked list of system organization information, and reside in the internal memory, set up the data structure of system at last;
Wherein, data manipulation step comprises: the distribution of storage space and releasing operation and/or the operation of anti-power down protection and/or balance abrasion operation and/or the processing of bad piece and/or data check operation.
1. the distribution of described storage space and releasing operation are specifically:
When new data file is created, specify or produce a file name (FileID) in order by system, obtain from current free block linked list head, and distribute a clean free block (Block), the file name of same data file (FileID) all is set to identical, and Page Name (PageID) increases progressively since 0 in order;
Data are write fashionable, new page (Page) is designated untapped the beginning from current page stores mode bit (Page status) with same file title (FileID) and page stores state recording district and distributes, if having write completely, current block (Block) uses up, then the piece store status position (Block status) in page stores state recording district is masked as full, redistribute a new clean free block (Block), and keep its file name (FileID) constant;
When deleting a data file, system can find the piece (Block) of all same file titles (FileID) according to file name (FileID), confirm in these pieces (Block) current do not carrying out read-write operation after, execution block (Block) erasing move in order, then one by one again carry return on the free block chained list.
2. described anti-power down protection is operated specifically:
System all is 0 when data are write for the first time in the page series number (Page Serial) of each page (Page), all adds 1 when writing the page (Page) with identical file title (FileID) and Page Name (PageID) later at every turn.When upgrading a PAGE, always on a new physics Page, write data, again with original physics Page deletion, so this serial can wait in particular cases in outage, when new page writes, but old page does not also have to be used for discerning correct Page deleted the time, guarantees the correctness of data.Behind power-off restarting, when reading Spare district data during system initialization, can read the serial of each PAGE, serial the maximum shows it is the data that write at last, is the correct data before the outage.According to this point, when new data more,, only be in the loss of data in the buffer zone at the most if when having little time to write data, when restarting next time, the data that can find last success to write according to serial automatically.Flash writes fashionable at each page of execution, meeting is written to the data of spare space among the Flash simultaneously together synchronously.
3. described balance abrasion is operated specifically:
The erasing times data of the piece (Block) in the piece erasing times recording areas of each page (Page) all are 0 when operating for the first time, all add 1 in the time of later on each data manipulation, system decides this to wipe the front and back order of piece (Block) afterwards on the idle chained list of piece according to the erasing times of piece (Block), less (Block) ordering on the idle chained list of piece of erasing times is forward, and the piece (Block) of same erasing times is with the sequencing ordering of its carry in the idle chained list of piece.
4. described bad piece is handled specifically:
System to each page (Page) write read after the data at once these data and with data buffer area in write before data compare, if find not exclusively coupling, bad piece may appear in the piece (Block) of then representing this page (Page) place, earlier the current stored valid data of this piece (Block) is transferred on the another one piece (Block), success to be transferred, write after more possible bad piece being wiped again and treat write data, if it is still undesired, be bad piece clearly then with this block mark, system is follow-up in service, as long as read the piece store status bit data of the bad piece of this piece, just jump to next piece (Block) automatically.
5. described data check is operated specifically:
System can calculate the check code (ECC of storage data earlier by the ECC checking algorithm before data are writing at every turn, Error Correction Code), then simultaneously with check code (ECC, Error Correction Code) writes the backup space of the page, during reading of data, the data that read are calculated ECC check code (ECC earlier, Error Correction Code), again the ECC check code that the draws data check code data with data check sign indicating number recording areas is compared, if it is inconsistent, show mistake to have occurred, call the ECC correction algorithm at last, carry out data and remedy.ECC can correct single-bit error and detect the dibit mistake, and computing velocity is very fast.
Although specifically show and introduced the present invention in conjunction with preferred embodiment; but the those skilled in the art should be understood that; in the spirit and scope of the present invention that do not break away from appended claims and limited; can make various variations to the present invention in the form and details, be protection scope of the present invention.

Claims (8)

1.Flash the data store organisation of storer comprises a data space and a spare space of storing data in the storage cell of its each page, it is characterized in that: described spare space be defined as following a few part:
The file name recording areas is used to deposit the file name data;
The Page Name recording areas is used to deposit the Page Name data;
Page stores state recording district is used to deposit page stores mode bit data and piece store status bit data;
The page status recording areas is used to deposit page series number data and page data length data;
Piece erasing times recording areas is used to deposit the erasing times data of piece;
Data check sign indicating number recording areas is used for store data check code data.
2. the data store organisation to Flash storer as claimed in claim 1 carries out data manipulation mode, it is characterized in that: comprise system initialization step and data manipulation step;
Wherein, system initialization step comprises:
Step a: the various hardware parameters that obtain the Flash storer;
Step b: the backup space in the storage cell of each page of traverse scanning Flash storer, judge whether bad piece of this page by reading piece store status bit data in the page stores state recording district, if bad piece, carry out bad piece once more and judge affirmation, if be still bad piece, then identifying this piece is the scanning that stops behind the bad piece other pages in the piece under this page, enters into the scanning of the page of next piece;
Step c:, judge by the page data length data that reads the page status recording areas whether all pages in this piece are the clean page, if then this piece is mounted on the free block chained list for non-bad piece;
Steps d: for the non-clean page, judge by the page stores mode bit data that read in the page stores state recording district whether current data is effective, if the data of all pages in piece all are invalid datas, represent that this piece can wipe, it is mounted to waits to wipe on the chained list;
Step e:, judge by reading file name data in the file name recording areas whether the file chained list of the file under this page is present in internal memory, if do not exist, then with this file name establishment one new file chained list for the page with valid data;
Step f: for the page that the file chained list has existed, judge by the Page Name data that read the Page Name recording areas whether this page exists the Page Name node on the file chained list of same file title, if there is not this page of carry;
Step g: being present in the page of file chained list for the Page Name node, having judged by the page series number data that read the page status recording areas whether its series number is maximum, if not maximum, is invalid with the page stores mode bit Data Identification of this page;
Step h: for page series number is the maximum page, and this page of carry is on the file chained list of same file title;
Step I:, count current free block number information and file number information by free block chained list and file chained list;
Step j: canned data in the backup space in the storage cell of each page of Flash storer is read internal memory by certain data structure, be mounted on the doubly linked list of system organization information, and reside in the internal memory, set up the data structure of system at last;
Wherein, data manipulation step comprises: the distribution of storage space and releasing operation and/or the operation of anti-power down protection and/or balance abrasion operation and/or the processing of bad piece and/or data check operation.
3. data manipulation mode according to claim 2 is characterized in that: the hardware parameter among the described step a comprises piece amount of capacity, page amount of capacity, number of blocks, starting block and end block position.
4. data manipulation mode according to claim 2 is characterized in that: the distribution of described storage space and releasing operation specifically:
When new data file is created, specify or produce a file name in order by system, obtain from current free block linked list head, and distribute a clean free block, the file name of depositing in the backup space of same each page of data file is identical, and Page Name increases progressively since 0 in order;
Data are write fashionable, new page is designated the untapped page from current page stores mode bit with same file title and page stores state recording district and begins to distribute, if current block has been write completely and has been used up, then the piece store status bit flag in page stores state recording district is for full, redistribute a new clean free block, and keep its file name constant;
When deleting a data file, system can find the piece of all same file titles according to file name, confirm in these pieces current do not carrying out read-write operation after, the execution block erasing move is hung back on the free block chained list then one by one in order.
5. data manipulation mode according to claim 2; it is characterized in that: described anti-power down protection is operated specifically: the page series number data of each page all are 0 when writing for the first time, all add 1 when writing the page with identical file title and Page Name later at every turn.
6. data manipulation mode according to claim 2, it is characterized in that: described balance abrasion is operated specifically: the erasing times data of the piece in the piece erasing times recording areas of each page all are 0 when operating for the first time, all add 1 in the time of later on each data manipulation, system decides this to wipe the front and back order of piece afterwards on the idle chained list of piece according to the erasing times of piece, less of erasing times sorts forward on the idle chained list of piece, and the piece of same erasing times is with the sequencing ordering of its carry in the idle chained list of piece.
7. data manipulation mode according to claim 2, it is characterized in that: described bad piece is handled specifically: system has write each page and has read these data after the data at once and compare with the preceding data that write in the data buffer area, if find not exclusively coupling, bad piece may appear in the piece of then representing this page place, earlier the current stored valid data of this piece is transferred on the another one piece, success to be transferred, write after more possible bad piece being wiped again and treat write data, if it is still undesired, be bad piece clearly then with this block mark, system is follow-up in service, as long as read the piece store status bit data of the bad piece of this piece, just jump to next piece automatically.
8. data manipulation mode according to claim 2, it is characterized in that: described data check is operated specifically: system can calculate the check code of storage data earlier by the ECC checking algorithm before data are writing at every turn, simultaneously check code is write the backup space of the page then, during reading of data, the data that read are calculated the ECC proof test value earlier, again the ECC proof test value that the draws data check code data with data check sign indicating number recording areas is compared, if it is inconsistent, show and mistake occurred, call the ECC correction algorithm at last, carry out data and remedy.
CN 201110008672 2011-01-12 2011-01-12 Data storage structure of Flash memory and data manipulation mode thereof Active CN102081577B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110008672 CN102081577B (en) 2011-01-12 2011-01-12 Data storage structure of Flash memory and data manipulation mode thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110008672 CN102081577B (en) 2011-01-12 2011-01-12 Data storage structure of Flash memory and data manipulation mode thereof

Publications (2)

Publication Number Publication Date
CN102081577A true CN102081577A (en) 2011-06-01
CN102081577B CN102081577B (en) 2013-02-13

Family

ID=44087550

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110008672 Active CN102081577B (en) 2011-01-12 2011-01-12 Data storage structure of Flash memory and data manipulation mode thereof

Country Status (1)

Country Link
CN (1) CN102081577B (en)

Cited By (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102323907A (en) * 2011-08-19 2012-01-18 长安大学 Method for embedded ARM (advanced RISC machines) processor to store and delete NANDFLASH data
CN102495806A (en) * 2011-11-25 2012-06-13 清华大学 Periodic wear balancing method and memory management method of phase change memory
CN102609334A (en) * 2012-01-09 2012-07-25 晨星软件研发(深圳)有限公司 Method for restoring abnormal-erasure storage blocks of NAND flash and corresponding device
CN102609336A (en) * 2012-01-19 2012-07-25 青岛海信传媒网络技术有限公司 Data administration method and data administration system
CN102841826A (en) * 2011-06-20 2012-12-26 鑫创科技股份有限公司 Drive recorder, flash memory device and management method thereof
CN103207836A (en) * 2012-01-16 2013-07-17 百度在线网络技术(北京)有限公司 Write method and write device for solid-state storage hard disk
CN103226530A (en) * 2012-01-31 2013-07-31 上海华虹集成电路有限责任公司 Nandflash controller
CN103425546A (en) * 2013-08-14 2013-12-04 江苏林洋电子股份有限公司 General high-efficient reliable Nor Flash data memory management method
CN103559144A (en) * 2013-11-12 2014-02-05 上海华兴数字科技有限公司 Method and device for secure data storage of embedded system
CN103678180A (en) * 2013-11-29 2014-03-26 武汉天喻信息产业股份有限公司 Intelligent card nonvolatile memory management method
CN103853551A (en) * 2012-12-04 2014-06-11 德州仪器公司 Detecting method of uninitialized memory reads
CN104008020A (en) * 2013-02-25 2014-08-27 飞思卡尔半导体公司 Robust sector ID scheme for tracking dead sectors to automate search and copydown
CN104091617A (en) * 2014-06-17 2014-10-08 深圳市江波龙电子有限公司 Flash memory equipment detection method and apparatus thereof
CN104111893A (en) * 2013-06-21 2014-10-22 芜湖美的厨卫电器制造有限公司 Data storage method
CN104182291A (en) * 2013-05-28 2014-12-03 上海博达数据通信有限公司 Method for recovering destroyed idle memory linked list
CN104216791A (en) * 2013-05-30 2014-12-17 上海斐讯数据通信技术有限公司 Flash stored data verifying method
CN104464809A (en) * 2014-11-05 2015-03-25 武汉新芯集成电路制造有限公司 Method for prolonging service life of flash memory
CN105183392A (en) * 2015-09-18 2015-12-23 广州日滨科技发展有限公司 Method for storing fixed-length data on FLASH
CN105404475A (en) * 2015-12-14 2016-03-16 武汉奥泽电子有限公司 Storage management system and method for small-capacity flash in MCU chip
CN105589767A (en) * 2015-12-21 2016-05-18 北京时代民芯科技有限公司 System power failure protection realizing method for NAND FLASH
CN105788648A (en) * 2014-12-25 2016-07-20 研祥智能科技股份有限公司 NVM bad block recognition processing and error correcting method and system based on heterogeneous mixing memory
CN106354669A (en) * 2015-07-13 2017-01-25 国民技术股份有限公司 Memory with hierarchical structure
CN106354586A (en) * 2016-09-05 2017-01-25 上海爱数信息技术股份有限公司 Database backup performance controlling method and system and server with system
CN104021816B (en) * 2013-03-01 2017-03-29 安凯(广州)微电子技术有限公司 A kind of method and system of test NFTL
CN106663044A (en) * 2014-06-26 2017-05-10 微软技术许可有限责任公司 Extended lifetime memory
CN107678683A (en) * 2017-08-17 2018-02-09 惠州市德赛西威汽车电子股份有限公司 A kind of date storage method of high efficient and reliable
CN107992431A (en) * 2017-12-21 2018-05-04 珠海亿智电子科技有限公司 A kind of power-off protection method of nand flash memory invalid data recycling
CN108182035A (en) * 2017-12-28 2018-06-19 湖南国科微电子股份有限公司 A kind of method for improving SSD reliabilities
CN108196975A (en) * 2017-11-21 2018-06-22 深信服科技股份有限公司 Data verification method, device and storage medium based on more verification sums
CN108376121A (en) * 2018-03-01 2018-08-07 曲阜师范大学 A kind of data store organisation of flash storage
CN109343790A (en) * 2018-08-06 2019-02-15 百富计算机技术(深圳)有限公司 A kind of date storage method based on NAND FLASH, terminal device and storage medium
CN109740095A (en) * 2018-12-27 2019-05-10 四川新网银行股份有限公司 A kind of H5 page dynamic backing method based on browser stack management
CN109857383A (en) * 2017-11-30 2019-06-07 浙江双峰电气有限公司 A kind of efficient information memory mechanism that power down secure resources are compact
CN109976939A (en) * 2019-03-28 2019-07-05 联想(北京)有限公司 A kind of data processing method and device
CN110658981A (en) * 2019-04-19 2020-01-07 石家庄科林电气股份有限公司 Method for prolonging service life of Flash
CN110750467A (en) * 2019-10-22 2020-02-04 深圳芯邦科技股份有限公司 Method and system for detecting interference page in Nand Flash
CN110764704A (en) * 2019-10-18 2020-02-07 浙江大华技术股份有限公司 Environment variable writing method, storage medium and electronic device
CN110865772A (en) * 2019-11-11 2020-03-06 深圳忆联信息系统有限公司 Method and device for protecting system data physical block erasure count value, computer equipment and storage medium
CN111475101A (en) * 2019-01-23 2020-07-31 安凯(广州)微电子技术有限公司 Method, system, device and storage medium for repairing flash memory card
CN112035417A (en) * 2020-09-07 2020-12-04 浙江大华技术股份有限公司 Method and device for managing storage block, storage medium and electronic device
CN113254364A (en) * 2021-05-24 2021-08-13 山东创恒科技发展有限公司 Information storage device for embedded system
CN113625964A (en) * 2021-07-16 2021-11-09 浙江鸿泉电子科技有限公司 NandFlash-based sequential storage method, electronic equipment and storage medium
CN113805806A (en) * 2018-12-03 2021-12-17 北京奥星贝斯科技有限公司 Efficient data unit reusing method and system
CN115955581A (en) * 2023-03-15 2023-04-11 浪潮电子信息产业股份有限公司 Real-time video processing method, device, equipment and storage medium
CN116661696A (en) * 2023-06-05 2023-08-29 深圳市航顺芯片技术研发有限公司 Storage method based on flash memory and related device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060184718A1 (en) * 2005-02-16 2006-08-17 Sinclair Alan W Direct file data programming and deletion in flash memories
CN101482837A (en) * 2009-01-21 2009-07-15 华为技术有限公司 Error correction method and apparatus for flash memory file system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060184718A1 (en) * 2005-02-16 2006-08-17 Sinclair Alan W Direct file data programming and deletion in flash memories
CN101482837A (en) * 2009-01-21 2009-07-15 华为技术有限公司 Error correction method and apparatus for flash memory file system

Cited By (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102841826A (en) * 2011-06-20 2012-12-26 鑫创科技股份有限公司 Drive recorder, flash memory device and management method thereof
CN102841826B (en) * 2011-06-20 2016-09-21 鑫创科技股份有限公司 Drive recorder, flash memory device and management method thereof
CN102323907A (en) * 2011-08-19 2012-01-18 长安大学 Method for embedded ARM (advanced RISC machines) processor to store and delete NANDFLASH data
CN102495806A (en) * 2011-11-25 2012-06-13 清华大学 Periodic wear balancing method and memory management method of phase change memory
CN102495806B (en) * 2011-11-25 2014-09-03 清华大学 Periodic wear balancing method and memory management method of phase change memory
CN102609334B (en) * 2012-01-09 2016-05-04 晨星软件研发(深圳)有限公司 Nonvolatile flash memory is wiped abnormal memory block restorative procedure and device
CN102609334A (en) * 2012-01-09 2012-07-25 晨星软件研发(深圳)有限公司 Method for restoring abnormal-erasure storage blocks of NAND flash and corresponding device
TWI512742B (en) * 2012-01-09 2015-12-11 Mstar Semiconductor Inc Non-volatile memory flash memory erase-abnormal block repair method and device applying the same
CN103207836A (en) * 2012-01-16 2013-07-17 百度在线网络技术(北京)有限公司 Write method and write device for solid-state storage hard disk
CN103207836B (en) * 2012-01-16 2016-01-20 百度在线网络技术(北京)有限公司 A kind of write method for solid storage hard disk and write device
CN102609336A (en) * 2012-01-19 2012-07-25 青岛海信传媒网络技术有限公司 Data administration method and data administration system
CN103226530A (en) * 2012-01-31 2013-07-31 上海华虹集成电路有限责任公司 Nandflash controller
CN103853551A (en) * 2012-12-04 2014-06-11 德州仪器公司 Detecting method of uninitialized memory reads
CN103853551B (en) * 2012-12-04 2019-02-01 德州仪器公司 Detect the method that the memory of no initializtion is read
CN104008020A (en) * 2013-02-25 2014-08-27 飞思卡尔半导体公司 Robust sector ID scheme for tracking dead sectors to automate search and copydown
CN104008020B (en) * 2013-02-25 2018-10-19 恩智浦美国有限公司 Robust sector ID scheme for tracking dead sector to search for and transcribe automatically
CN104021816B (en) * 2013-03-01 2017-03-29 安凯(广州)微电子技术有限公司 A kind of method and system of test NFTL
CN104182291A (en) * 2013-05-28 2014-12-03 上海博达数据通信有限公司 Method for recovering destroyed idle memory linked list
CN104182291B (en) * 2013-05-28 2018-04-20 上海博达数据通信有限公司 A kind of method for recovering destroyed free memory chained list
CN104216791A (en) * 2013-05-30 2014-12-17 上海斐讯数据通信技术有限公司 Flash stored data verifying method
CN104216791B (en) * 2013-05-30 2018-05-01 上海斐讯数据通信技术有限公司 A kind of method of verification Flash storages data
CN104111893A (en) * 2013-06-21 2014-10-22 芜湖美的厨卫电器制造有限公司 Data storage method
CN103425546A (en) * 2013-08-14 2013-12-04 江苏林洋电子股份有限公司 General high-efficient reliable Nor Flash data memory management method
CN103559144A (en) * 2013-11-12 2014-02-05 上海华兴数字科技有限公司 Method and device for secure data storage of embedded system
CN103678180B (en) * 2013-11-29 2017-11-24 武汉天喻信息产业股份有限公司 The management method of intelligent card nonvolatile memory
CN103678180A (en) * 2013-11-29 2014-03-26 武汉天喻信息产业股份有限公司 Intelligent card nonvolatile memory management method
CN104091617A (en) * 2014-06-17 2014-10-08 深圳市江波龙电子有限公司 Flash memory equipment detection method and apparatus thereof
CN104091617B (en) * 2014-06-17 2017-05-03 深圳市江波龙电子有限公司 Flash memory equipment detection method and apparatus thereof
CN106663044A (en) * 2014-06-26 2017-05-10 微软技术许可有限责任公司 Extended lifetime memory
CN106663044B (en) * 2014-06-26 2020-03-03 微软技术许可有限责任公司 Memory with prolonged service life
CN104464809A (en) * 2014-11-05 2015-03-25 武汉新芯集成电路制造有限公司 Method for prolonging service life of flash memory
CN105788648A (en) * 2014-12-25 2016-07-20 研祥智能科技股份有限公司 NVM bad block recognition processing and error correcting method and system based on heterogeneous mixing memory
CN105788648B (en) * 2014-12-25 2020-09-18 研祥智能科技股份有限公司 NVM bad block identification processing and error correction method and system based on heterogeneous hybrid memory
CN106354669B (en) * 2015-07-13 2021-03-26 国民技术股份有限公司 Memory with hierarchical structure
CN106354669A (en) * 2015-07-13 2017-01-25 国民技术股份有限公司 Memory with hierarchical structure
CN105183392A (en) * 2015-09-18 2015-12-23 广州日滨科技发展有限公司 Method for storing fixed-length data on FLASH
CN105404475A (en) * 2015-12-14 2016-03-16 武汉奥泽电子有限公司 Storage management system and method for small-capacity flash in MCU chip
CN105404475B (en) * 2015-12-14 2018-08-21 武汉奥泽电子有限公司 The storage management system and method for low capacity flash in MCU pieces
CN105589767B (en) * 2015-12-21 2018-07-31 北京时代民芯科技有限公司 A kind of system power failure for NAND FLASH protects implementation method
CN105589767A (en) * 2015-12-21 2016-05-18 北京时代民芯科技有限公司 System power failure protection realizing method for NAND FLASH
CN106354586A (en) * 2016-09-05 2017-01-25 上海爱数信息技术股份有限公司 Database backup performance controlling method and system and server with system
CN107678683A (en) * 2017-08-17 2018-02-09 惠州市德赛西威汽车电子股份有限公司 A kind of date storage method of high efficient and reliable
CN108196975B (en) * 2017-11-21 2021-09-17 深信服科技股份有限公司 Data verification method and device based on multiple checksums and storage medium
CN108196975A (en) * 2017-11-21 2018-06-22 深信服科技股份有限公司 Data verification method, device and storage medium based on more verification sums
CN109857383A (en) * 2017-11-30 2019-06-07 浙江双峰电气有限公司 A kind of efficient information memory mechanism that power down secure resources are compact
CN107992431A (en) * 2017-12-21 2018-05-04 珠海亿智电子科技有限公司 A kind of power-off protection method of nand flash memory invalid data recycling
CN108182035A (en) * 2017-12-28 2018-06-19 湖南国科微电子股份有限公司 A kind of method for improving SSD reliabilities
CN108376121A (en) * 2018-03-01 2018-08-07 曲阜师范大学 A kind of data store organisation of flash storage
CN108376121B (en) * 2018-03-01 2021-10-22 曲阜师范大学 Data storage method of Flash memory
CN109343790A (en) * 2018-08-06 2019-02-15 百富计算机技术(深圳)有限公司 A kind of date storage method based on NAND FLASH, terminal device and storage medium
CN109343790B (en) * 2018-08-06 2021-07-13 百富计算机技术(深圳)有限公司 Data storage method based on NAND FLASH, terminal equipment and storage medium
CN113805806A (en) * 2018-12-03 2021-12-17 北京奥星贝斯科技有限公司 Efficient data unit reusing method and system
CN109740095A (en) * 2018-12-27 2019-05-10 四川新网银行股份有限公司 A kind of H5 page dynamic backing method based on browser stack management
CN111475101B (en) * 2019-01-23 2022-07-19 广州安凯微电子股份有限公司 Method, system, device and storage medium for repairing flash memory card
CN111475101A (en) * 2019-01-23 2020-07-31 安凯(广州)微电子技术有限公司 Method, system, device and storage medium for repairing flash memory card
CN109976939A (en) * 2019-03-28 2019-07-05 联想(北京)有限公司 A kind of data processing method and device
CN109976939B (en) * 2019-03-28 2021-03-19 联想(北京)有限公司 Data processing method and device
CN110658981A (en) * 2019-04-19 2020-01-07 石家庄科林电气股份有限公司 Method for prolonging service life of Flash
CN110658981B (en) * 2019-04-19 2022-11-08 石家庄科林电气股份有限公司 Method for prolonging service life of Flash
CN110764704A (en) * 2019-10-18 2020-02-07 浙江大华技术股份有限公司 Environment variable writing method, storage medium and electronic device
CN110764704B (en) * 2019-10-18 2023-09-05 浙江大华技术股份有限公司 Environment variable writing method, storage medium and electronic device
CN110750467A (en) * 2019-10-22 2020-02-04 深圳芯邦科技股份有限公司 Method and system for detecting interference page in Nand Flash
CN110750467B (en) * 2019-10-22 2021-11-02 深圳芯邦科技股份有限公司 Method and system for detecting interference page in Nand Flash
CN110865772A (en) * 2019-11-11 2020-03-06 深圳忆联信息系统有限公司 Method and device for protecting system data physical block erasure count value, computer equipment and storage medium
CN112035417A (en) * 2020-09-07 2020-12-04 浙江大华技术股份有限公司 Method and device for managing storage block, storage medium and electronic device
CN113254364A (en) * 2021-05-24 2021-08-13 山东创恒科技发展有限公司 Information storage device for embedded system
CN113254364B (en) * 2021-05-24 2022-07-19 山东创恒科技发展有限公司 Information storage device for embedded system
CN113625964A (en) * 2021-07-16 2021-11-09 浙江鸿泉电子科技有限公司 NandFlash-based sequential storage method, electronic equipment and storage medium
CN113625964B (en) * 2021-07-16 2024-01-26 浙江鸿泉电子科技有限公司 NandFlash-based sequential storage method, electronic device and storage medium
CN115955581A (en) * 2023-03-15 2023-04-11 浪潮电子信息产业股份有限公司 Real-time video processing method, device, equipment and storage medium
CN116661696A (en) * 2023-06-05 2023-08-29 深圳市航顺芯片技术研发有限公司 Storage method based on flash memory and related device
CN116661696B (en) * 2023-06-05 2024-03-22 深圳市航顺芯片技术研发有限公司 Storage method based on flash memory and related device

Also Published As

Publication number Publication date
CN102081577B (en) 2013-02-13

Similar Documents

Publication Publication Date Title
CN102081577B (en) Data storage structure of Flash memory and data manipulation mode thereof
US9547589B2 (en) Endurance translation layer (ETL) and diversion of temp files for reduced flash wear of a super-endurance solid-state drive
US8583868B2 (en) Storage system cache using flash memory with direct block access
US8959280B2 (en) Super-endurance solid-state drive with endurance translation layer (ETL) and diversion of temp files for reduced flash wear
US8180953B2 (en) Data accessing method for flash memory, and storage system and controller system thereof
US8046528B2 (en) Data writing method for flash memory, and flash memory controller and storage device thereof
EP2115595B1 (en) Memory device performance enhancement through pre-erase mechanism
CN101782875B (en) Storage unit and data storage method
TWI436369B (en) Methods for measuring usable lifespan and replacing an in-system programming code of a memory device, and data storage system using the same
CN100458718C (en) Method of correcting error code for multiple sector
CN101925884A (en) Increasing spare space in memory to extend lifetime of memory
CN102096561B (en) Hierarchical data storage processing method, device and storage equipment
CN101324862B (en) Flash memory storage management method
CN101963891A (en) Method and device for data storage and processing, solid-state drive system and data processing system
CN101625897B (en) Data write-in method, storage system and controller used for quick flash memory
CN104423888A (en) Data writing method, memory control circuit unit and memory storage device
CN103996412A (en) Power-fail protection method applied to intelligent-card nonvolatile memories
CN103778964B (en) Process, using method and the device of a kind of NAND Flash programming data, system
CN109669889B (en) Light Nor Flash control method and device
CN102981969A (en) Method for deleting repeated data and solid hard disc thereof
CN109558335A (en) A kind of file memory format of the embedded system based on Nor flash storage
JP2010086009A (en) Storage device and memory control method
CN102789813B (en) Method and device for controlling use of non-least significant bit page in storage device
CN103578566B (en) Memory storage apparatus and restorative procedure thereof
CN102800357B (en) Procedure code is written into and access method, Memory Controller and memorizer memory devices

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