Background technology
There is the semiconductor memory of number of different types to be used for storage data in the computer system, a storer is made up of many storage unit (memory cell), each storage unit is deposited 1 bit binary data, usually storage unit is arranged in a matrix array (array) form, for the bigger storer of memory capacity, the more storer of storage unit just, a plurality of storage unit can be divided into a plurality of blocks (sector).Random-access memory (ram), dynamic RAM (DRAM), static RAM (SRAM), ROM (read-only memory) (ROM), programmable read-only memory (prom), EPROM (EPROM), Electrically Erasable Read Only Memory (EEPROM) and flash memory (flash memory) commonly used at present all can be used for storage data.
Every kind of storer all has its merits and demerits.For example, the single position of DRAM and SRAM one time erasable data, data can be lost when still cutting off the power supply.EEPROM need not be extra external unit promptly optionally Convenient scrubber remove data, but reduced data storage density, speed is slow and cost is higher.Comparatively speaking, the EPROM cost is lower, has higher density but is not easy to wipe.
Flash memory has become widely used semiconductor memory over past ten years, because it combines the high density of EPROM and the advantage of the electric erasable of advantage and EEPROM cheaply.Flash memory can repeat to write and can keep its content when outage, is non-volatile (nonvolatile) therefore.Because the source electrode of storage unit metal-oxide-semiconductor links together in the flash memory, wipe by word the EEPROM so can not resemble, but the such whole array of similar EPROM wipes or blockette is wiped.
To the wiping of flash memory (erase), programming (program) with read (read) and operate normally and storage unit to be applied suitable voltage finishes.Wipe or programming operation in, apply voltage so that electric charge is removed or is stored in the storage unit.In read operation, apply voltage in storage unit, to produce electric current, this magnitude of current represents to be stored in the data value in this storage unit.
Please refer to Fig. 1, it discloses the method for deleting of existing a kind of flash memory.In the erase operation of flash memory, a plurality of storage unit in array or the block normally are wiped free of simultaneously, and it can be finished by applying one or more very brief erasing pulses (erase pulse).After each erasing pulse, can carry out erase verification (erase verify) operation with the threshold voltage (threshold voltage) of determining each storage unit in array or the block whether in the predetermined threshold value voltage limit, if the threshold voltage of storage unit in the predetermined threshold value voltage limit, is then represented this storage unit and " is wiped (erased) "; If the threshold voltage of storage unit is higher than the predetermined threshold upper voltage limit, represent that then this storage unit " wipes deficiency (under-erased) " or " not wiping (un-erased) ".If detect the storage unit of " wiping deficiency " or " not wiping ", then can apply extra erasing pulse again and also verify the storage unit of being somebody's turn to do " wiping deficiency " or " not wiping " once more in this whole array or block.Yet, in this erase process, if there is certain storage unit " to wipe deficiency " or " not wiping ", wipe with verification operation constantly interactively carry out till this storage unit is fully wiped, therefore the time of whole erase process also increases thereupon, and some storage unit can become before other storage unit is fully wiped " cross and wipe (over-erased) ", and just the threshold voltage of storage unit is lower than the predetermined threshold lower voltage limit." crossing and wipe " the permanance decline and the data hold capacity that can cause storage unit reduces, in order correctly to write or the data of reading cells, effectively and reliably eraseable memory unit becomes particularly important to the limited field that can accept, therefore, storage unit is not wish to be retained in erase status.
Please refer to the patent No. and be 5818763 United States Patent (USP), it discloses the method for deleting of another kind of flash memory.As shown in Figure 2, this method for deleting is at first wiped a plurality of storage unit in a plurality of blocks simultaneously by applying an erasing pulse; Then successively the storage unit of each block is carried out the erase verification operation,, then the block at this storage unit place is recorded as and wipes unsuccessful block if detect the storage unit of " wiping deficiency " or " not wiping "; If behind all blocks of checking, wipe unsuccessful block, then apply an erasing pulse and wipe a plurality of storage unit in a plurality of blocks again simultaneously, successively each is wiped the unsuccessful onblock executing erase verification operation new record of laying equal stress on then and wipe unsuccessful block.In this erase process, if there is certain storage unit " to wipe deficiency " or " not wiping ", wipe with the block verification operation till also constantly interactively is carried out storage unit in all blocks and fully wiped, therefore the time of whole erase process equally also increases thereupon, and some storage unit can become before other storage unit is fully wiped " cross and wipe ".
Even more serious situation is, because the integrity problem of storer, may have individual memory cell and make a mistake and be in erase status all the time or be in not erase status all the time in programming process in erase process, this storage unit is commonly called " position of blocking " (stuck bit).When " position of blocking " in erase process, occurring, extra erasing pulse meeting constantly puts on whole array or block, therefore the time of whole erase process constantly increases, and the most storage unit in array or the block all can be in erase status, promptly can cause the failure of wiping of whole storer thus.
For solving " cross and wipe " problem of said memory cells, disclose a kind of usefulness " soft programming (soft-program) " method in the prior art and repaired the storage unit of " cross and wipe ", be as described in 6442071 the United States Patent (USP) as the patent No., this method is to adjust the threshold voltage of the storage unit of " cross and wipe " by progressively increasing soft-program voltage (being lower than normal program voltage), makes it to return in the predetermined threshold value voltage limit.Yet along with the increase to storage unit programming number of times, the performance of storage unit can progressively reduce, and then causes the reliability of whole storer to reduce.
In sum, providing a kind of method for deleting of improved flash memory, is very to be necessary with the storage unit that shortens erasing time and minimizing " mistake is wiped " as much as possible.
Summary of the invention
The problem that the present invention solves is to provide a kind of method for deleting of storer, to shorten the erase process of storer, the storage unit that minimizing as much as possible " is crossed and wiped ".What is more important, the present invention can eliminate the failure of wiping that " position of blocking " caused.
For addressing the above problem, the invention provides a kind of method for deleting of storer, described storer comprises a plurality of storage unit, described method comprises the steps: that (1) applies erasing pulse, and a plurality of storage unit of storer are carried out erase operation simultaneously; (2) storage unit of not carrying out verification operation is carried out verification operation, judge whether the storage unit of carrying out verification operation " does not wipe " or " wiping deficiency "; If carrying out the storage unit of verification operation is " not wiping " or " wiping deficiency ", then execution in step (3) is not " not wiping " or " wiping deficiency " as if storage unit, then execution in step (4); (3) apply erasing pulse, described a plurality of storage unit are carried out erase operation more simultaneously; (4) judge described a plurality of storage unit whether all executed cross verification operation, if described a plurality of storage unit are not that all verification operation is crossed in executed, then be back to step (2), if described a plurality of storage unit all executed cross verification operation, judge that then erase process finishes.
According to better embodiment of the present invention, described storer is a flash memory.Described a plurality of storage unit can be arranged in a matrix array, and described a plurality of storage unit to storer are carried out erase operation simultaneously and are meant described matrix array execution erase operation.Described a plurality of storage unit also can be arranged in a plurality of blocks, and described a plurality of storage unit to storer are carried out erase operation simultaneously and are meant described at least one onblock executing erase operation.Described method for deleting also comprises: after erase process is finished, described a plurality of storage unit are carried out inspection and repaired operation, repair the storage unit of " not wiping ", " wiping deficiency " or " cross and wipe ", wherein, the storage unit of repairing " not wiping ", " wiping deficiency " or " cross and wipe " is to utilize that the error-correcting code reparation " is not wiped ", the storage unit of " wiping deficiency " or " cross and wipe ", or utilizes that the redundant array reparation " is not wiped ", the storage unit of " wiping deficiency " or " cross and wipe ".
For addressing the above problem, the present invention provides a kind of method for deleting of storer again, and described storer comprises a plurality of storage unit, and described method comprises the steps: that (1) applies erasing pulse, and a plurality of storage unit of storer are carried out erase operation simultaneously; (2) storage unit of not carrying out verification operation is carried out verification operation, judge whether the storage unit of carrying out verification operation " does not wipe " or " wiping deficiency ", if storage unit is " not wiping " or " wiping deficiency ", execution in step (3) then, as if storage unit is not " not wiping " or " wiping deficiency ", then execution in step (5); (3) judge whether the erasing pulse number reaches predetermined maximum erasing times, if the erasing pulse number does not reach predetermined maximum erasing times, then execution in step (4) if the erasing pulse number reaches predetermined maximum erasing times, is then judged the erase process failure; (4) apply erasing pulse, described a plurality of storage unit are carried out erase operation more simultaneously; (5) judge described a plurality of storage unit whether all executed cross verification operation, if described a plurality of storage unit are not that all verification operation is crossed in executed, then be back to step (2), if described a plurality of storage unit all executed cross verification operation, judge that then erase process finishes.
According to better embodiment of the present invention, described storer is a flash memory.Described a plurality of storage unit can be arranged in a matrix array, and described a plurality of storage unit to storer are carried out erase operation simultaneously and are meant described matrix array execution erase operation.Described a plurality of storage unit also can be arranged in a plurality of blocks, and described a plurality of storage unit to storer are carried out erase operation simultaneously and are meant described at least one onblock executing erase operation.Described method for deleting also comprises: after erase process is finished, described a plurality of storage unit are carried out inspection and repaired operation, repair the storage unit of " not wiping ", " wiping deficiency " or " cross and wipe ", wherein, the storage unit of repairing " not wiping ", " wiping deficiency " or " cross and wipe " is to utilize that the error-correcting code reparation " is not wiped ", the storage unit of " wiping deficiency " or " cross and wipe ", or utilizes that the redundant array reparation " is not wiped ", the storage unit of " wiping deficiency " or " cross and wipe ".
In the prior art, if exist certain storage unit " to wipe deficiency " or " not wiping ", wipe and verify (or block checking) operation constantly the interactively execution till this storage unit is fully wiped.And in method for deleting provided by the present invention, whether the storage unit of no matter carrying out verification operation is " not wiping " or " wiping deficiency ", the capital continues another storage unit is carried out verification operation, that is to say, the verification operation of each storage unit is only carried out once.Therefore, compared with prior art, the present invention has shortened whole erase process, the number of times that has reduced erase operation as much as possible to be reducing the storage unit of " cross and wipe ", and has eliminated the failure of wiping that " position of blocking " caused.
Embodiment
The invention provides a kind of each storage unit and only carry out the method for deleting of one-time authentication operation storer, wherein, described storer comprises a plurality of storage unit, and described storer is a storer of simultaneously a plurality of storage unit being carried out erase operation, for example is flash memory.Below in conjunction with accompanying drawing and preferred embodiment the specific embodiment of the present invention is described in detail.
First embodiment
Fig. 3 is the basic procedure step of the method for deleting of storer of the present invention, as shown in the figure, described method for deleting is execution in step S301 at first, apply erasing pulse, a plurality of storage unit to storer are carried out erase operation simultaneously, in the present embodiment, promptly be to apply an erasing pulse, a plurality of storage unit of storer are carried out erase operation simultaneously.Then carry out step S302.
In step S302, a storage unit of not carrying out verification operation is carried out verification operation, be meant in the present embodiment from first storage unit of storer to begin to carry out verification operation, then carry out step S303.
In step S303, judge whether the storage unit of carrying out verification operation " does not wipe " or " wiping deficiency ", is " not wiping " or " wiping deficiency " if carry out the storage unit of verification operation, then carries out step S304; If carrying out the storage unit of verification operation is not " not wiping " or " wiping deficiency ", then carry out step S305.
In step S304, apply erasing pulse, a plurality of storage unit of storer are carried out erase operation more simultaneously, in the present embodiment, promptly be to apply an erasing pulse, a plurality of storage unit described in the step S301 are carried out erase operation more simultaneously.Then carry out step S305.
In step S305, judge described a plurality of storage unit whether all executed cross verification operation, be meant in the present embodiment and judge whether the storage unit of carrying out verification operation is last storage unit, if carrying out the storage unit of verification operation is last storage unit, then carry out step S306, the judgement erase process is finished; If carrying out the storage unit of verification operation is not last storage unit, then carry out step S307.
In step S307, continue a storage unit of not carrying out verification operation is carried out verification operation, be meant that in the present embodiment continuation is to next storage unit execution verification operation.Then be back to step S303, whether judge storage unit " not wiping " or " wiping deficiency ".
A plurality of storage unit of above-mentioned storer can be arranged in a matrix array, and this will be described in detail in a second embodiment; A plurality of storage unit also can be arranged in a plurality of blocks, and this will be described in detail in the 3rd embodiment.
In addition, the method for deleting of above-mentioned storer also comprises: after judging that erase process finishes, described a plurality of storage unit are carried out inspection and repaired operation, repair the storage unit of " not wiping ", " wiping deficiency " or " cross and wipe ".Wherein, described reparation " is not wiped ", the storage unit of " wiping deficiency " or " cross wipe " is to utilize that the error-correcting code reparation " is not wiped ", the storage unit of " wiping deficiency " or " cross and wipe ", or utilizes that the redundant array reparation " is not wiped ", the storage unit of " wiping deficiency " or " cross and wipe ".Described inspection and reparation operation also will give in the second and the 3rd embodiment of back
Describe in detail.
Second embodiment
Please refer to Fig. 4, Fig. 4 is the detailed process step of the method for deleting of the described storer of second embodiment of the invention.In the present embodiment, a plurality of storage unit of storer are arranged in a matrix array, and erase operation is that all storage unit in this array are carried out simultaneously.
At first carry out step S401, apply an erasing pulse, wipe all storage unit in the array simultaneously, just wipe storage unit all in the storer simultaneously.Then carry out step S402.
In step S402, begin to carry out verification operation from first storage unit.The corresponding memory unit address (address) of each storage unit, the memory unit address of first storage unit correspondence is that the memory unit address of 0, the second storage unit correspondence is 1, the rest may be inferred.Begin to carry out verification operation from first storage unit and be meant memory unit address is made as 0, read the threshold voltage of first storage unit then.Then carry out step S403.
In step S403, judge whether the storage unit of carrying out verification operation " does not wipe " or " wiping deficiency ", whether the threshold voltage of just judging storage unit is higher than the predetermined threshold value upper voltage limit, if the threshold voltage of storage unit is higher than the predetermined threshold value upper voltage limit, then carry out step S404; If the threshold voltage of storage unit is not higher than the predetermined threshold value upper voltage limit, then carry out step S406.
In step S404, judge whether the erasing pulse number reaches maximum erasing times, described maximum erasing times can preestablish according to the performance of relevant storage unit in the specification of storer, because the setting of maximum erasing times belongs to known technology for a person skilled in the art, promptly no longer describe in detail at this.If the erasing pulse number reaches maximum erasing times, then carry out step S412, judge the erase process failure, because therefore the most storage unit in this moment storer be need not storer to be carried out to wipe and verification operation owing to repeatedly repeat to wipe and be in erase status again; If the erasing pulse number does not reach maximum erasing times, then carry out step S405.
In step S405, apply an erasing pulse, wipe all storage unit in this matrix array simultaneously.In this step, when the storage unit of carrying out verification operation is " not wiping " or " wiping deficiency " and erasing pulse number when not reaching maximum erasing times, wipe all storage unit in the storer once more.Then carry out step S406.
In step S406, judge whether the storage unit of carrying out verification operation is last storage unit, judge just whether the pairing memory unit address of storage unit is the pairing memory unit address of last storage unit, if carrying out the storage unit of verification operation is not last storage unit, then carry out step S407; If carrying out the storage unit of verification operation is last storage unit, then carry out step S408.
In step S407, continue next storage unit is carried out verification operation.In this step, memory unit address is added 1, the threshold voltage of the pairing storage unit in reading cells address then is back among the step S403 again, whether judges this storage unit " not wiping " or " wiping deficiency ".
In step S408, in the array all storage unit successively checking finish, judge that therefore erase process finishes.Then carry out step S409.
In step S409, check all storage unit, repair the storage unit of " not wiping " or " wiping deficiency ".In this step, the threshold voltage that reads all storage unit successively is to find out the storage unit of " not wiping " or " wiping deficiency ", then the storage unit of " not wiping " or " wiping deficiency " is repaired operation, described reparation operation can be to utilize redundant array (redundancy array) to replace the storage unit of all " not wiping " or " wiping deficiency ", or utilizes error-correcting code (ErrorCorrection Code) to replace each respectively and " do not wipe " or the storage unit of " wiping deficiency ".Because described reparation is operating as known technology, does not promptly launch explanation at this.In addition, those skilled in the art should know, can check out the storage unit of " cross and wipe " in this step equally and repairs.Then carry out step S410.
In step S410, judge whether reparation is successful, in this step, the threshold voltage of reading cells successively, whether the threshold voltage of judging storage unit in the predetermined threshold value voltage limit, judges just whether all storage unit are in erase status, if all storage unit are in erase status, then carry out step S411, judge whole erase process success; If storage unit is not to be in erase status, then carry out step S412, judge whole erase process failure.
The 3rd embodiment
Please refer to Fig. 5, Fig. 5 is the detailed process step of the method for deleting of the described storer of third embodiment of the invention.In the present embodiment, a plurality of storage unit of storer are arranged in a plurality of blocks, that is to say, storer is divided into a plurality of blocks, each block comprises a plurality of storage unit, erase operation be to one, partly or entirely all storage unit in the block are carried out simultaneously.Present embodiment is to be that example describes so that all storage unit in the part block are carried out erase operations.
At first carry out step S501, apply an erasing pulse, wipe all storage unit in a plurality of blocks simultaneously.Then carry out step S502.
In step S502, begin to carry out verification operation from first storage unit of first block.The corresponding memory unit address of each storage unit, the also corresponding block address of each block.Begin to carry out verification operation from first storage unit of first block and be meant that block address is made as first to be wiped free of the block address of block and memory unit address is made as 0, reads the threshold voltage that first is wiped free of first storage unit of block then.Then carry out step S503.
In step S503, judge whether the storage unit of carrying out verification operation " does not wipe " or " wiping deficiency ", whether the threshold voltage of just judging storage unit is higher than the predetermined threshold value upper voltage limit, if the threshold voltage of storage unit is higher than the predetermined threshold value upper voltage limit, then carry out step S504; If the threshold voltage of storage unit is not higher than the predetermined threshold value upper voltage limit, then carry out step S506.
In step S504, judge whether the erasing pulse number reaches maximum erasing times, described maximum erasing times can preestablish according to the performance of relevant storage unit in the specification of storer, because the setting of maximum erasing times belongs to known technology for a person skilled in the art, promptly no longer describe in detail at this.If the erasing pulse number reaches maximum erasing times, then carry out step S514, judge the erase process failure, because therefore the most storage unit in this moment storer be need not storer to be carried out to wipe and verification operation owing to repeatedly repeat to wipe and be in erase status again; If the erasing pulse number does not reach maximum erasing times, then carry out step S505.
In step S505, apply an erasing pulse, wipe all storage unit in those blocks simultaneously.In this step, when the storage unit of carrying out verification operation is " not wiping " or " wiping deficiency " and erasing pulse number when not reaching maximum erasing times, all storage unit in the described a plurality of blocks of erase step S501 once more.Then carry out step S506.
In step S506, whether storage unit that judge to carry out verification operation is last storage unit in the block, judge just whether the pairing memory unit address of storage unit is the pairing memory unit address of last storage unit in the block, if carrying out the storage unit of verification operation is not last storage unit,, then carry out step S507; If carrying out the storage unit of verification operation is last storage unit, then carry out step S508.
In step S507, continue next storage unit is carried out verification operation.In this step, memory unit address is added 1, the threshold voltage of the pairing storage unit in reading cells address then is back among the step S503 again, whether judges this storage unit " not wiping " or " wiping deficiency ".
In step S508, all storage unit in the block have been verified successively and have been finished, judge whether the block of carrying out verification operation is last block that need verify, judge just whether the pairing block address of block is last block address that is wiped free of block, if carrying out the block of verification operation is not last block that need verify, then carry out step S509; If carrying out the block of verification operation is last block that need verify, then carry out step S510.
In step S509, begin to carry out verification operation from first storage unit of next block.In this step, block address is made as the next one is wiped free of the block address of block and memory unit address is made as 0, read the threshold voltage that the next one is wiped free of first storage unit of block then.Then be back among the step S403, whether judge this storage unit " not wiping " or " wiping deficiency ".
In step S510, all be wiped free of in the block storage unit successively checking finish, therefore judge that erase process finishes.Then carry out step S511.
In step S511, check all storage unit, repair the storage unit of " not wiping " or " wiping deficiency ".In this step, read all threshold voltages that are wiped free of the storage unit in the block successively to find out the storage unit of " not wiping " or " wiping deficiency ", then the storage unit of " not wiping " or " wiping deficiency " is repaired operation, described reparation operation can be to utilize redundant array to replace the storage unit of all " not wiping " or " wiping deficiency ", or utilizes error-correcting code to replace each respectively and " do not wipe " or the storage unit of " wiping deficiency ".Because described reparation is operating as known technology, does not promptly launch explanation at this.In addition, those skilled in the art should know, can check out the storage unit of " cross and wipe " in this step equally and repairs.Then carry out step S512.
In step S512, judge whether reparation is successful, in this step, the threshold voltage of reading cells successively, whether the threshold voltage of judging storage unit in the predetermined threshold value voltage limit, judges just whether all storage unit are in erase status, if all storage unit are in erase status, then carry out step S513, judge whole erase process success; If storage unit is not to be in erase status, then carry out step S414, judge whole erase process failure.
In sum, in the method for deleting of storer provided by the present invention, whether the storage unit of no matter carrying out verification operation is " not wiping " or " wiping deficiency ", the capital continues another storage unit is carried out verification operation, difference is: if carry out the storage unit of verification operation is " not wiping " or " wiping deficiency ", then continues another storage unit is carried out verification operation behind erase operation of execution earlier again; If carrying out the storage unit of verification operation is not " not wiping " or " wiping deficiency ", then directly another storage unit is carried out verification operation.That is to say, the present invention only carries out once the verification operation of each storage unit, certain " is not wiped " or the storage unit of " wiping deficiency " is compared with repeated authentication in the prior art, the verification operation number of times has reduced, correspondingly the erase operation number of times has also reduced, therefore, whole erase process also shortens thereupon.Simultaneously because the minimizing of erase operation number of times has also reduced the storage unit of " cross and wipe " as much as possible.
For storer in erase process if exist " position of blocking ", just there is individual memory cell to be in not erase status all the time, method for deleting provided by the present invention is only carried out an erase operation and is promptly no longer verified this storage unit after authenticating to this storage unit of " not wiping ", therefore, method for deleting of the present invention can avoid causing because of the mistake of individual memory cell the problem of whole memory erase failure.And the storage unit of described " not wiping " can utilize follow-up inspection and reparation operation that it is repaired.
In addition, in the method for deleting of storer of the present invention, also preestablished maximum erasing times, when the erase operation number of times reaches this predetermined maximum erasing times, most storage unit in the storer are owing to repeatedly repeated to wipe and be in erase status, therefore need not to continue again to carry out to wipe and verification operation, so also shortened erase process from another point of view.
Though the present invention with preferred embodiment openly as above; but it is not to be used for limiting the present invention; any those skilled in the art without departing from the spirit and scope of the present invention; can make possible change and modification, so protection scope of the present invention should be as the criterion with the scope that claim of the present invention was defined.