CN112908392B - Control method for controlling parameters of nonvolatile memory - Google Patents

Control method for controlling parameters of nonvolatile memory Download PDF

Info

Publication number
CN112908392B
CN112908392B CN202110178558.9A CN202110178558A CN112908392B CN 112908392 B CN112908392 B CN 112908392B CN 202110178558 A CN202110178558 A CN 202110178558A CN 112908392 B CN112908392 B CN 112908392B
Authority
CN
China
Prior art keywords
dynamic trigger
nonvolatile memory
trigger point
parameter
trigger points
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
CN202110178558.9A
Other languages
Chinese (zh)
Other versions
CN112908392A (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.)
Dongxin Semiconductor Co ltd
Original Assignee
Dongxin Semiconductor 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 Dongxin Semiconductor Co ltd filed Critical Dongxin Semiconductor Co ltd
Priority to CN202110178558.9A priority Critical patent/CN112908392B/en
Publication of CN112908392A publication Critical patent/CN112908392A/en
Application granted granted Critical
Publication of CN112908392B publication Critical patent/CN112908392B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention

Abstract

The present invention provides a control method for controlling parameters of a nonvolatile memory, the control method comprising: a dynamic trigger point defining step of setting a dynamic trigger point in the dynamic trigger point defining step; an update parameter storage step of storing update parameters in a specific storage area for each of the dynamic trigger points; a marking unit defining step of defining a corresponding marking unit for each dynamic trigger point; and a parameter updating step in which parameters of the nonvolatile memory are updated based on the total number of erase operations that have been completed, the specific number of erase operations corresponding to each dynamic trigger point, and the programmed states of the corresponding flag cells.

Description

Control method for controlling parameters of nonvolatile memory
Technical Field
The present invention relates to a control method of a parameter, and more particularly, to a control method for controlling a parameter of a nonvolatile memory.
Background
Semiconductor memory devices can be generally classified into Volatile (NV) memory and nonvolatile (Non-Volatile) memory. Volatile memories (such as DRAM, SRAM, etc.) lose stored data in the absence of applied power. In contrast, nonvolatile memory (such as EEPROM, EAROM, PROM, EPROM, flash memory, etc.) is able to retain stored data in the absence of applied power. With the development of portable electronic products (such as personal computers, smart phones, digital cameras, multimedia playing devices, etc.), the demand for nonvolatile memories is increasing, and the demand for performance thereof is also increasing.
In use, the process of powering up the nonvolatile memory is equivalent to a data write operation of the nonvolatile memory, and is referred to as "programming". Whereas the nonvolatile memory is powered down (potential returns to a default potential), this corresponds to the erasing data of the nonvolatile memory, and this process is called "Erase". A complete one-time program/erase (P/E) cycle is the write cycle of the non-volatile memory. Therefore, maintaining P/E cycle stability is critical to the operational life and stability of the nonvolatile memory.
In non-volatile memory storage, it is known to perform program operations using an incremental step pulse programming (ISPP: incremental step pulse program) process and erase operations using an incremental step pulse erase (ISPE: incremental step pulse erase) process. Fig. 1 shows a flow chart and a schematic diagram of an ISPP process. As shown in fig. 1, during ISPP, the program voltage is gently increased until the programmed cell reaches the target program threshold voltage. In the ISPP process, the program start voltage will be set by the initial program speed. Fig. 2 shows a flow chart and schematic diagram of the ISPE process. As shown in fig. 2, during ISPE, the program voltage is gently increased until the erased cell reaches the target erase threshold voltage. In the ISPE process, the erase start voltage will be set by the initial erase speed.
Disclosure of Invention
Technical problem to be solved by the invention
However, in the conventional nonvolatile memory, if the nonvolatile memory cells are programmed at a faster speed during the programming process, the time of the ISPP process is reduced and the initial program start voltage may stress the nonvolatile memory cells. In the erasing process, if the NV cells are erased at a slower speed, the time of the ISPE process increases, and the initial erase start voltage presses the NV cells. Due to these effects, as the number of ISPP processes increases, the ratio of program time to P/E cycle time gradually decreases, as shown in fig. 3, while as the number of ISPE processes increases, the ratio of erase time to P/E cycle time gradually increases. Thus, as the number of ISPE or ISPP runs increases, the ratio of program time to erase time in the P/E cycle time changes, and the P/E cycle becomes unstable, affecting the operating life and performance of the memory.
The present invention has been made in view of the above-described conventional problems, and an object thereof is to provide a control method for controlling parameters of a nonvolatile memory, which can change the operating conditions of the nonvolatile memory to improve the P/E cycle performance of the nonvolatile memory.
Technical proposal for solving the technical problems
In one embodiment of the present invention to solve the above-mentioned problems, there is provided a control method for controlling a nonvolatile memory parameter, comprising:
a dynamic trigger point defining step of setting N dynamic trigger points, each of which corresponds to a specific number of erase operations of the nonvolatile memory, wherein N is a positive integer greater than or equal to 1, and the N dynamic trigger points are arranged from 1 to N in order of the specific number of the erase operations corresponding from small to large;
an update parameter storage step of storing update parameters in a specific memory area of the nonvolatile memory for each of the N dynamic trigger points; and
a flag cell defining step of defining, for each of the N dynamic trigger points, a corresponding flag cell in the nonvolatile memory, the flag cell being initially unprogrammed;
and a parameter updating step of, after each time the erasing operation is completed, being executed in the nonvolatile memory, judging, one by one, for each dynamic trigger point, whether the total number of times of the erasing operation that has been completed is greater than or equal to the specific number of times of the erasing operation that corresponds to the dynamic trigger point and whether a flag cell that corresponds to the dynamic trigger point is programmed, in an order from the nth dynamic trigger point to the first dynamic trigger point in which, when it is judged that one dynamic trigger point appears such that the total number of times of the erasing operation that has been completed is greater than or equal to the specific number of times of the erasing operation that corresponds to the one dynamic trigger point and the flag cell that corresponds to the one dynamic trigger point is not programmed, using the parameter for updating the nonvolatile memory parameter and programming the flag cell that corresponds to the one dynamic trigger point, and ending the parameter updating step, and if it is judged that the specific number of times of the erasing operation that corresponds to the N dynamic trigger points is greater than the total number of times of the erasing operation that has been completed and/or the flag cell that corresponds to the N dynamic trigger points is ended.
In one embodiment of the present invention, the control method further includes:
and a post-power-on updating step of determining, one by one, whether a flag cell corresponding to an nth dynamic trigger point is programmed for each dynamic trigger point in the sequence from the nth dynamic trigger point to a first dynamic trigger point, if it is determined that one flag cell is programmed, selecting an update parameter corresponding to a dynamic trigger point corresponding to the one flag cell for updating the nonvolatile memory parameter, and if it is determined that none of the flag cells corresponding to the N dynamic trigger points is programmed, updating the nonvolatile memory parameter using an initial parameter of the nonvolatile memory.
In another embodiment of the present invention to solve the above-described problems, there is provided a control method for controlling a nonvolatile memory parameter, including:
a dynamic trigger point defining step of setting N dynamic trigger points in which each of the N dynamic trigger points corresponds to a specific number of erase operations of the nonvolatile memory, wherein N is a positive integer greater than or equal to 1;
an update parameter storage step of storing update parameters in a specific memory area of the nonvolatile memory for each of the N dynamic trigger points; and
a flag cell defining step of defining, for each of the N dynamic trigger points, a corresponding flag cell in the nonvolatile memory, the flag cell being initially unprogrammed;
and a parameter updating step of, after each time the erasing operation is completed, being executed in the nonvolatile memory, determining, for one or more dynamic trigger points for which the corresponding flag cell of the N dynamic trigger points is not programmed, whether or not the total number of times of the erasing operation that has been completed is greater than or equal to a specific number of times of the erasing operation corresponding to one of the one or more dynamic trigger points, and if the total number of times of the erasing operation that has been completed is greater than or equal to a specific number of times of the erasing operation corresponding to one of the one or more dynamic trigger points, using an update parameter corresponding to the one dynamic trigger point for updating the nonvolatile memory parameter and programming the flag cell corresponding to the one dynamic trigger point.
In one embodiment of the present invention, the control method further includes:
and a power-on-after-power-off updating step, which is executed under the condition that the nonvolatile memory is powered off and then powered on, and in the power-on-power-off updating step, determining whether a dynamic trigger point of which the corresponding mark unit is programmed exists in the N dynamic trigger points, if the dynamic trigger point of which the corresponding mark unit is programmed exists in the N dynamic trigger points, selecting the dynamic trigger point of which the specific erasing operation frequency is the largest in the dynamic trigger points of which the corresponding mark unit is programmed for updating the nonvolatile memory parameter, and if the dynamic trigger point of which the corresponding mark unit is not programmed exists in the N dynamic trigger points, updating the nonvolatile memory parameter by using the initial parameter of the nonvolatile memory.
In one embodiment of the present invention, in the control method, the N dynamic trigger points are stored in a specific cell area of the nonvolatile memory.
In one embodiment of the present invention, in the control method, the N dynamic trigger points are stored in one block in the specific cell area.
In one embodiment of the present invention, in the control method, the update parameter corresponding to each of the N dynamic trigger points is stored on one page of the one block, and the initial parameter of the nonvolatile memory is stored on one page of the one block.
In one embodiment of the present invention, in the control method, each of the flag cells corresponding to the N dynamic trigger points is stored in a specific cell area of the nonvolatile memory, and each flag cell is spaced apart by a certain distance.
In still another embodiment of the present invention that solves the above-mentioned problems, there is provided a nonvolatile memory storing computer instructions that, when executed by a processing section, perform the above-mentioned control method for the nonvolatile memory.
In still another embodiment of the present invention that solves the above-mentioned problems, there is provided a computer system including:
a computer storage medium having stored thereon computer instructions;
a nonvolatile memory; and
and a processing unit configured to perform the control method on the nonvolatile memory when the computer instructions are executed.
Effects of the invention
According to the present invention, by changing the operating condition of the nonvolatile memory after a specific number of P/E cycles, the P/E cycle performance of the nonvolatile memory can be improved.
Drawings
Fig. 1 is a diagram showing an ISPP process in a nonvolatile memory.
Fig. 2 is a diagram showing an ISPE process in a nonvolatile memory.
FIG. 3 is a schematic diagram showing the relationship between programming time and P/E cycle time as a function of P/E cycle number in the prior art.
FIG. 4 is a schematic diagram showing the relationship between erase time and P/E cycle time as a function of P/E cycle number in the prior art.
FIG. 5 is a schematic diagram illustrating the contents of a "bias" condition in a programming mode according to one embodiment of the invention.
Fig. 6 is a schematic diagram showing the contents of the "bias" condition in the erase mode according to one embodiment of the present invention.
Fig. 7 is a diagram showing one example of a special area for managing a nonvolatile memory according to one embodiment of the present invention.
Fig. 8 is a diagram showing one example of information in a CNF block in a nonvolatile memory according to one embodiment of the present invention.
Fig. 9 is a diagram showing one example of a flag cell in a dyn_pt_on flag block in a nonvolatile memory according to one embodiment of the present invention.
FIG. 10 is a flow chart illustrating dynamic trigger point control during operation according to one embodiment of the invention.
FIG. 11 is a flow chart illustrating dynamic trigger point control after power-up after power-down in accordance with one embodiment of the present invention.
FIG. 12 is a schematic diagram illustrating the relationship between programming time and P/E cycle time as a function of P/E cycle number according to one embodiment of the invention.
FIG. 13 is a schematic diagram illustrating the relationship between erase time and P/E cycle time as a function of P/E cycle number in accordance with one embodiment of the present invention.
Fig. 14 is a flowchart illustrating a control method for controlling the "bias" condition of a nonvolatile memory according to one embodiment of the present invention.
Fig. 15 is a flowchart showing a control method for controlling the "bias" condition of the nonvolatile memory according to one present embodiment of the present invention.
FIG. 16 is a block diagram illustrating a non-volatile memory in which "bias" condition control is performed, according to one embodiment of the invention.
FIG. 17 is a block diagram illustrating a computer system in which "bias" condition control is performed, according to one embodiment of the invention.
Detailed Description
Embodiments of the invention may be understood by reference to the exemplary embodiments depicted in the drawings (embodiments of the invention briefly summarized above and discussed in more detail below). The drawings, however, illustrate only typical embodiments of the invention and are therefore not to be considered limiting of its scope, for the principles may admit to other equally effective embodiments.
For ease of understanding, the same reference numbers are used in the various figures to denote the same elements in common in the figures. The drawings are not to scale and may be simplified for clarity. Elements and features of one embodiment may be advantageously incorporated into other embodiments without further recitation.
Example 1 ]
Hereinafter, a control method for controlling parameters of a nonvolatile memory according to an embodiment of the present invention will be described with reference to fig. 5 to 13.
In a nonvolatile memory, there are a number of parameter data within the chip of the memory that are used to control the configuration and/or operation of the nonvolatile memory, and the collection of these parameter data is generally referred to as a "bias" condition. Fig. 5 and 6 show examples of the "bias" condition in the program mode and the "bias" condition in the erase mode, respectively. Among other things, as can be seen from FIG. 5, the "bias" conditions in the programming mode include various operating parameters of the ISPP process (e.g., pre-program pulse, start voltage, maximum voltage, delta step, pulse before erase failure, program pulse time, etc.), and verify levels, etc. As can be seen from fig. 6, the "bias" condition in erase mode includes various operating parameters of the ISPE process (e.g., pre-program pulse, start voltage, maximum voltage, delta step, pulse before erase failure, program pulse time, etc.), and verify level, etc. With these "bias" conditions, the operation of the nonvolatile memory in the P/E cycle can be adjusted.
Thus, we can adjust the "bias" condition (e.g., increase erase time or decrease erase time) after a particular number of P/E cycles have been completed. The specific number of P/E cycles for performing the erase operation may be calculated by the number of ISPE processes (hereinafter, abbreviated as ISPE sequence number). Thus, we can use the current ISPE sequence number of the memory to know how many P/E cycles have been performed. Based on this information, we can change the "bias" condition to control the P/E loop operation.
Fig. 14 shows a flowchart of a control method for controlling the "bias" condition of the nonvolatile memory of the present embodiment.
At step S1401, based on sufficient test results for the non-volatile memory, one or more particular ISPE sequence numbers may be determined, and the "bias" condition may be appropriately changed during the P/E operation to improve the P/E cycle operation whenever the number of ISPEs reaches the one or more particular ISPE sequence numbers. The one or more specific ISPE sequence numbers may be referred to as dynamic trigger points.
At step S1402, N configuration Control (CNF) registers (N is a positive integer greater than or equal to 1, corresponding to the number of dynamic trigger points) may be defined in the non-volatile memory for one or more dynamic trigger points as described above. Each dynamic trigger point corresponds to a CNF register. Each CNF register has stored therein a value of the dynamic trigger point corresponding thereto. The N CNF registers are denoted by cnfdyn_x_det, where X is a positive integer less than or equal to N and greater than or equal to 1, representing the number of the CNF registers. Alternatively, the CNF register may be set after the chip test is completed. N dynamic trigger points can be arranged in order from small to large according to the specific erasing times corresponding to the dynamic trigger points. For example, the dynamic trigger point with the minimum number of corresponding specific erasures is set as the 1 st trigger point, and corresponds to the first CNF register cnfdyn_1_det; setting the second smallest dynamic trigger point of the corresponding specific erasing times as a 2 nd trigger point, corresponding to a second CNF register CNFDYN_2_DET; … …; the corresponding dynamic trigger point with the largest specific erasing times is set as the N trigger point and corresponds to the N CNF register CNFDYN_N_DET. Each CNF register has stored therein a corresponding "bias" condition for updating the configuration of the memory.
As an example of setting of the dynamic trigger point, for example, initially (0K P/E cycle), the ISPE sequence number to complete the erase operation is 2; after the 20K P/E loop, the ISPE sequence number to complete the erase operation is 4, setting CNFDYN_1_DET to 4 (the first dynamic trigger point); after the 40K P/E loop, the ISPE sequence number to complete the erase operation is 6, CNFDYN_2_DET is set to 6 (the second dynamic trigger point); … …; by analogy, after a 100K P/E loop, the ISPE sequence number to complete the erase operation is 10, setting CNFDYN_N_DET to 10 (the N-th dynamic trigger point).
At step S1403, for each of the N dynamic trigger points, one flag cell is defined in a specific storage area of the nonvolatile memory, and N flag cells in total are defined. Each dynamic trigger point corresponds to a flag cell. The N flag cells may be represented by dyn_x_pt_on, where X is a positive integer less than or equal to N and greater than or equal to 1, representing the number of the CNF register. The N flag cells are initially unprogrammed. If the number of times of the completed ISPE process of the current memory (hereinafter, abbreviated as the current memory ISPE sequence number) exceeds the value of a certain dynamic trigger point, the flag cell corresponding to the dynamic trigger point may be programmed to be used for knowing the state of the current P/E cycle. Based on sufficient test results for the non-volatile memory, a changed "bias" condition may be defined for each dynamic trigger point for updating or adjusting the operation of the non-volatile memory. As one example, the operation of the non-volatile memory may be adjusted by changing the "bias" condition of the non-volatile memory in the following manner: for the programming process, changing the starting voltage, maximum voltage, delta step, programming pulse time, etc., such that the programming time is lower than before; and/or for the erase process, the start voltage, maximum voltage, delta steps, erase pulse time, etc. are changed such that the erase time is higher than before.
The storage, setting, content, operation and the like for the CNF register and the flag unit in steps S1401 to S1403 are described in more detail below.
For example, one or more specific memory cell regions may be defined in the non-volatile memory for storing the CNF registers and the tag units. Fig. 7 shows an example for managing 2 specific memory cell areas storing CNF registers and tag units. The upper side of fig. 7 shows the internal storage structure of the memory. The lower side of fig. 7 shows the function of the internal memory structure. In general, a nonvolatile memory device may include a memory cell array. The memory cell array may have many blocks, and each block may have many pages. A block may be defined as a minimum unit of erase required to perform an erase operation on data stored in a memory cell. A block may comprise, for example, 16 pages or 32 pages. A main memory cell array (simply referred to as a main array) may be used for a user's application. In a cell region of memory other than the main array, a first specific memory cell region (e.g., 1 block) may be defined for storing the CNF register, and a second specific memory cell region (e.g., 1 block or 1 page) may be defined for storing the tag unit. In this example, it may be set that the first specific memory cell and the second specific memory cell are each 1 block, and the first specific memory cell region may be referred to as a CNF block and the second specific memory cell region may be referred to as a dyn_pt_on flag block.
Fig. 8 shows one example of Content Addressable Memory (CAM) information in the CNF block in the above example. The Content Addressable Memory (CAM) refers to a special area for writing configuration values related to various operations of the memory. Initially, the N CNF registers have default values, and during a Power On Reset (POR) time, the user can set the values of the CNF registers by CAM reading. During the POR time, these data can be read and various operation-related configurations set. Thus, we can set N CNF registers to write the target value into the CAM area.
Fig. 9 shows one example of information of a flag cell in the dyn_pt_on flag block in the above example. How many P/E cycles have been performed can be known from the tag units in the DYN_PT_ON tag block. Each flag cell will be programmed individually. Preferably, the marking units are separated by a certain distance within the dyn_pt_on marking block. The distance in the example of fig. 9 is 32 columns.
In order to operate the device correctly, configuration data ("bias" conditions) for various types of operations of the nonvolatile memory may be set according to the test results. Each memory device may have different configuration data. These configuration data may be stored within the CNF block. During the POR time, the memory device downloads configuration data from the CNF block and uses the configuration data to set configuration registers associated with various operations of the memory. Thus, by checking the tag unit, these configuration data can be downloaded to update the configuration of the memory according to the current P/E cycle time.
After each erase operation of the memory is completed, at step S1404, the current memory ISPE sequence number may be compared with the value of each dynamic trigger point, whether the flag cell corresponding to each dynamic trigger point has been programmed is determined, and the "bias" condition of the memory is updated based on the results of the above comparison and determination. As one example, the process of comparison, judgment, and update in this step S1404 may be as shown in fig. 10. Preferably, as shown in fig. 10, the value of each dynamic trigger point (corresponding to a specific number of erase operations) is compared with the current memory ISPE sequence number in order from the nth trigger point (cnfdyn_n_det) to the first trigger point (cnfdyn_1_det). If the current ISPE sequence number exceeds a certain dynamic trigger point (assuming that the current ISPE sequence number is the Y-th dynamic trigger point, Y is a positive integer less than or equal to N and greater than or equal to 1), the flag cell (dyn_y_pt_on) corresponding to the dynamic trigger point may be programmed. And, for the dynamic trigger point, the corresponding configuration parameters (e.g., the Y-th page data) in the CNF block are downloaded, and the values of CNF registers corresponding to the various operations are updated to accommodate the corresponding "bias" condition (Y-th bias "condition). Thereafter, the step ends.
On the other hand, if it is determined that the values of the N dynamic trigger points are all greater than the current ISPE sequence number of the memory and/or the flag cells corresponding to the N dynamic trigger points are all programmed, the "bias" adjustment is not changed, and the step is ended.
Optionally, the control method further includes step S1405. Step S1405 may be performed with the nonvolatile memory powered off and then powered on. As an example, the process of this step S1405 may be as shown in fig. 11. At step S1405, first, a flag cell in the dyn_pt_on flag block may be checked. Preferably, the comparison is performed by judging the current memory ISPE sequence number in order from the nth trigger point (cnfdyn_n_det) to the first trigger point (cnfdyn_1_det). If a certain flag cell (assuming that the Z flag cell is the Z-th flag cell, Z is a positive integer less than or equal to N and greater than or equal to 1) is programmed, corresponding configuration data can be downloaded for the dynamic trigger point corresponding to the flag cell, and various CNF register values can be updated to adapt to the corresponding "bias" condition (Z-th bias "condition). If all of the flag cells are in the erased state, page 0 data in the CNF block may be downloaded for the initial CNF value and all kinds of CNF register values updated to accommodate the initial "offset" condition.
Fig. 12 shows the ratio of the program time to the P/E cycle of the nonvolatile memory using the control method of the present embodiment as a function of the number of P/E cycles. As can be seen from fig. 12, the programming time is nearly the same during the 0K to 100K P/E cycle time. Fig. 13 shows the ratio of the erasing time to the P/E cycle of the nonvolatile memory using the control method of the present embodiment as a function of the number of P/E cycles. As can be seen from fig. 13, the erase time is nearly the same during the 0K to 100K P/E cycle time. This means that the non-volatile memory cells are not subjected to any stress during P/E operation.
Therefore, it can be appreciated that with the control method of the present embodiment, the operating conditions of the nonvolatile memory can be changed, thereby improving the performance of the P/E cycle.
Example 2 ]
Hereinafter, a control method for controlling the "bias" condition of the nonvolatile memory according to the present embodiment will be described with reference to fig. 15.
Fig. 15 is a flowchart showing a control method for controlling the "bias" condition of the nonvolatile memory according to the present embodiment.
At step S1501, based on sufficient test results for the non-volatile memory, one or more particular ISPE sequence numbers may be determined, and the "bias" condition may be appropriately changed during P/E operations to improve P/E cycle operation whenever the number of ISPEs reaches the one or more particular ISPE sequence numbers. The one or more specific ISPE sequence numbers may be referred to as dynamic trigger points. For example, N dynamic trigger points may be set, where N is a positive integer greater than or equal to 1.
At step S1502, N update "bias" conditions corresponding one-to-one to the N dynamic trigger points may be stored in non-volatile memory (e.g., in one or more blocks and/or one or more pages of memory) for one or more dynamic trigger points as described above. The update bias condition is used to update configuration parameters corresponding to various operations of the memory. These configuration data may be stored within one or more blocks of memory, or one or more pages.
At step S1503, for each of the N dynamic trigger points, one corresponding flag cell is defined in the non-volatile memory (e.g., in one or more blocks and/or one or more pages of memory), for a total of N flag cells. Each dynamic trigger point corresponds to a flag cell. The N flag cells are initially unprogrammed.
After the non-volatile memory completes the erase operation each time, at step S1504, for one or more dynamic trigger points that are not programmed by the corresponding flag cells of the N dynamic trigger points, it is determined whether the current memory ISPE sequence number is greater than or equal to the specific erase operation count corresponding to one of the N dynamic trigger points, and if the current memory ISPE sequence number is greater than or equal to the specific erase operation count corresponding to one of the N dynamic trigger points (assuming that Y is a Y-th dynamic trigger point, Y is a positive integer that is less than or equal to N and greater than or equal to 1), the update parameter ("bias" condition) corresponding to the one dynamic trigger point (Y-th dynamic trigger point) is used to update the configuration parameter of the non-volatile memory, and the flag cell (Y-th flag cell) corresponding to the one dynamic trigger point (Y-th dynamic trigger point) is programmed.
Optionally, the control method of the present embodiment further includes step S1505, which is performed in a case where the nonvolatile memory is powered off and then powered on. In this step, it is determined whether there is a dynamic trigger point in which a corresponding flag cell is programmed among N dynamic trigger points, and if it is determined that there is a dynamic trigger point in which a corresponding flag cell is programmed among the N dynamic trigger points (assuming that there are M dynamic trigger points in which a flag cell is programmed, M is a positive integer less than or equal to N and greater than or equal to 1), a dynamic trigger point corresponding to the dynamic trigger point in which the corresponding flag cell is programmed (M dynamic trigger points) having the largest number of specific erase operations is selected, and the configuration parameters of the nonvolatile memory are updated using the "bias" condition corresponding to the dynamic trigger point. If it is determined that there is no corresponding dynamic trigger point of the N dynamic trigger points for which the flag cells are programmed, the configuration parameters of the nonvolatile memory are updated using the initial parameters of the nonvolatile memory.
In certain embodiments, operations in the methods of the embodiments described above may occur simultaneously, substantially simultaneously, or in a different order than shown in the figures. The methods, operations of the processes, and combinations of operations may be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
All or part of the operations involved in embodiments of the present invention may optionally be performed automatically by a program. In one example, the invention may be implemented as a program product stored on a computer readable storage medium for use with a computer system. The program(s) of the program product include the functions of the embodiments (including the methods described herein). Illustrative computer-readable storage media include, but are not limited to: (i) Non-writable storage media (e.g., read-only memory devices within a computer such as CD-ROM disks readable by a CD-ROM machine, flash memory, ROM chips or any type of solid state non-volatile semiconductor memory) on which information is permanently stored; and (ii) a writable storage medium (e.g., a disk storage or hard disk drive or any type of solid-state random-access semiconductor memory) on which alterable information is stored. Such computer-readable storage media, when carrying computer-readable instructions that direct the functions of the methods described herein, are embodiments of the present invention.
Example 3 ]
Hereinafter, a nonvolatile memory in which the "bias" condition of the nonvolatile memory is controlled will be described with reference to fig. 16.
Fig. 16 is a block diagram showing a nonvolatile memory in which "bias" condition control is performed according to the present embodiment. The nonvolatile memory 1601 according to the present embodiment may be a nonvolatile memory such as EEPROM, EAROM, PROM, EPROM or a flash memory. The memory includes a storage area 1602 and a processing section 1603. The storage area 1602 is a portion for storing various types of memory parameters and user data information. The processing section 1603 may control the storage area 1602 automatically or upon receiving a signal from an external computing device (e.g., a computer or a communication terminal, etc.). The processing unit 1603 may be, for example, a semiconductor chip or the like in a nonvolatile memory. The processing section 1603 may execute the control method for controlling the "bias" condition of the nonvolatile memory as described in the above-described embodiment 1 and/or embodiment 2, or a method in which the control methods in the embodiment 1 and the embodiment 2 are partially combined, thereby controlling the storage area 1602 of the nonvolatile memory to improve the P/E cycle of the nonvolatile memory. Related update "bias" parameters, dynamic trigger points, and/or flag cells may be stored in the storage area 1602.
Example 4 ]
Hereinafter, a computer system in which the "bias" condition of the nonvolatile memory is controlled will be described with reference to fig. 17.
Fig. 17 is a block diagram showing a computer system in which "bias" condition control is performed according to the present embodiment. The computer system 1701 may include a memory 1702 and a processing portion 1703. The memory 1702 may be a nonvolatile memory such as EEPROM, EAROM, PROM, EPROM, flash memory, or the like. The processing portion 1702 may control the memory 1702 automatically or upon receiving signals from outside (e.g., via wireless transmission) or from inside (e.g., from other circuitry or components within the computer system 1701). As an example, the processing section 1703 may include an ASIC (Application Specific Integrated Circuit: application specific integrated circuit), an IC (Integrated Circuit: integrated circuit), a DSP (Digital Signal Processor: digital signal processor), an FPGA (Field Programmable Gate Array: field programmable gate array), various logic circuits, various signal processing circuits, and the like. The processing unit 1703 may perform the control method for controlling the "bias" condition of the nonvolatile memory as described in the above-described embodiment 1 and/or embodiment 2, or the method obtained by partially combining the control methods in the embodiment 1 and embodiment 2, thereby controlling the memory 1702 to improve the P/E cycle of the memory 1702.
The update "bias" parameters, dynamic trigger points, and/or flag elements related to control of the memory 1702 may be stored in the memory 1702, other storage devices in the computer system 1701, and/or external storage devices, which other storage devices in the computer system 1701 may be computer readable storage media including, but not limited to: (i) Non-writable storage media (e.g., read-only memory devices within a computer such as CD-ROM disks readable by a CD-ROM machine, flash memory, ROM chips or any type of solid state non-volatile semiconductor memory) on which information is permanently stored; and (ii) a writable storage medium (e.g., a disk storage or hard disk drive or any type of solid-state random-access semiconductor memory) on which alterable information is stored. The external storage device may be the same as or similar to the memory 1702 or other storage devices in the computer system 1701, or may be a cloud, a remote storage device, a remote server, or the like, which communicates with the processing unit 1703. The storage 1702 or the storage device transmits the computer instructions to the processing unit 1703 or receives signals such as feedback signals from the processing unit 1703 via wireless communication, wired communication, or the like.
The foregoing describes in detail alternative embodiments of the present invention. It will be appreciated that various embodiments and modifications may be resorted to without departing from the broad spirit and scope of the invention. Many modifications and variations will be apparent to those of ordinary skill in the art in light of the concepts of the invention without undue burden. Therefore, all technical solutions which can be obtained by logic analysis, reasoning or limited experiments based on the prior art by a person skilled in the art according to the inventive concept shall fall within the scope of protection defined by the claims of the present invention.

Claims (10)

1. A control method for controlling parameters of a nonvolatile memory, comprising:
a dynamic trigger point defining step of setting N dynamic trigger points in which each of the N dynamic trigger points corresponds to a specific number of erase operations of the nonvolatile memory, wherein N is a positive integer greater than or equal to 1, and the N dynamic trigger points are arranged from 1 to N in order of the specific number of erase operations corresponding from small to large;
an update parameter storage step of storing update parameters in a specific memory area of the nonvolatile memory for each of the N dynamic trigger points;
a flag cell defining step of defining, for each of the N dynamic trigger points, a corresponding flag cell in the nonvolatile memory, the flag cell being initially unprogrammed; and
and a parameter updating step of, after each time the erasing operation is completed, being executed in the nonvolatile memory, judging, one by one, for each dynamic trigger point, whether the total number of times of the erasing operation that has been completed is greater than or equal to the specific number of times of the erasing operation that corresponds to the dynamic trigger point and whether a flag cell that corresponds to the dynamic trigger point is programmed, in an order from the nth dynamic trigger point to the first dynamic trigger point in which, when it is judged that one dynamic trigger point appears such that the total number of times of the erasing operation that has been completed is greater than or equal to the specific number of times of the erasing operation that corresponds to the one dynamic trigger point and the flag cell that corresponds to the one dynamic trigger point is not programmed, using the parameter for updating the nonvolatile memory parameter and programming the flag cell that corresponds to the one dynamic trigger point, and ending the parameter updating step, and if it is judged that the specific number of times of the erasing operation that corresponds to the N dynamic trigger points is greater than the total number of times of the erasing operation that has been completed and/or the flag cell that corresponds to the N dynamic trigger points is ended.
2. The control method as set forth in claim 1, further comprising:
and a post-power-on updating step of determining, one by one, whether a flag cell corresponding to an nth dynamic trigger point is programmed for each dynamic trigger point in the sequence from the nth dynamic trigger point to a first dynamic trigger point, if it is determined that one flag cell is programmed, selecting an update parameter corresponding to a dynamic trigger point corresponding to the one flag cell for updating the nonvolatile memory parameter, and if it is determined that none of the flag cells corresponding to the N dynamic trigger points is programmed, updating the nonvolatile memory parameter using an initial parameter of the nonvolatile memory.
3. A control method for controlling parameters of a nonvolatile memory, comprising:
a dynamic trigger point defining step of setting N dynamic trigger points in which each of the N dynamic trigger points corresponds to a specific number of erase operations of the nonvolatile memory, wherein N is a positive integer greater than or equal to 1;
an update parameter storage step of storing update parameters in a specific memory area of the nonvolatile memory for each of the N dynamic trigger points;
a flag cell defining step of defining, for each of the N dynamic trigger points, a corresponding flag cell in the nonvolatile memory, the flag cell being initially unprogrammed; and
and a parameter updating step of, after each time the erasing operation is completed, being executed in the nonvolatile memory, determining, for one or more dynamic trigger points for which the corresponding flag cell of the N dynamic trigger points is not programmed, whether or not the total number of times of the erasing operation that has been completed is greater than or equal to a specific number of times of the erasing operation corresponding to one of the one or more dynamic trigger points, and if the total number of times of the erasing operation that has been completed is greater than or equal to a specific number of times of the erasing operation corresponding to one of the one or more dynamic trigger points, using an update parameter corresponding to the one dynamic trigger point for updating the nonvolatile memory parameter and programming the flag cell corresponding to the one dynamic trigger point.
4. The control method according to claim 3, characterized by further comprising:
and a power-on-after-power-off updating step, which is executed under the condition that the nonvolatile memory is powered off and then powered on, and in the power-on-power-off updating step, determining whether a dynamic trigger point of which the corresponding mark unit is programmed exists in the N dynamic trigger points, if the dynamic trigger point of which the corresponding mark unit is programmed exists in the N dynamic trigger points, selecting the dynamic trigger point of which the specific erasing operation frequency is the largest in the dynamic trigger points of which the corresponding mark unit is programmed for updating the nonvolatile memory parameter, and if the dynamic trigger point of which the corresponding mark unit is not programmed exists in the N dynamic trigger points, updating the nonvolatile memory parameter by using the initial parameter of the nonvolatile memory.
5. The control method according to any one of claims 1 to 4, characterized in that the N dynamic trigger points are stored in a specific cell area of the nonvolatile memory.
6. The control method of claim 5, wherein the N dynamic trigger points are stored in one block in the specific cell area.
7. The control method according to claim 6, wherein the update-use parameter corresponding to each of the N dynamic trigger points is stored on one page in the one block, and the initial parameter of the nonvolatile memory is stored on one page in the one block.
8. The control method according to any one of claims 1 to 4, wherein each of the flag cells corresponding to the N dynamic trigger points is stored in a specific cell area of the nonvolatile memory with a distance therebetween.
9. A nonvolatile memory in which computer instructions are stored, which when executed by a processing section performs the control method according to any one of claims 1 to 4 on the nonvolatile memory.
10. A computer system, comprising:
a computer storage medium having stored thereon computer instructions;
a nonvolatile memory; and
a processing section that, when executing the computer instructions, performs the control method according to any one of claims 1 to 4 on the nonvolatile memory.
CN202110178558.9A 2021-02-09 2021-02-09 Control method for controlling parameters of nonvolatile memory Active CN112908392B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110178558.9A CN112908392B (en) 2021-02-09 2021-02-09 Control method for controlling parameters of nonvolatile memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110178558.9A CN112908392B (en) 2021-02-09 2021-02-09 Control method for controlling parameters of nonvolatile memory

Publications (2)

Publication Number Publication Date
CN112908392A CN112908392A (en) 2021-06-04
CN112908392B true CN112908392B (en) 2023-09-15

Family

ID=76123102

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110178558.9A Active CN112908392B (en) 2021-02-09 2021-02-09 Control method for controlling parameters of nonvolatile memory

Country Status (1)

Country Link
CN (1) CN112908392B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609403A (en) * 2011-01-26 2012-07-25 微软公司 Formatting data by example
CN102985976A (en) * 2010-04-18 2013-03-20 桑迪士克技术有限公司 Programming non-volatile storage includng reducing impact from other memory cells
CN103578552A (en) * 2012-08-10 2014-02-12 三星电子株式会社 Nonvolatile memory device and operating method with variable memory cell state definitions
CN103810443A (en) * 2013-11-13 2014-05-21 威盛电子股份有限公司 Device and method for protecting basic input and output system
CN104011800A (en) * 2011-12-28 2014-08-27 英特尔公司 Cycling endurance extending for memory cells of a non-volatile memory array
CN105340020A (en) * 2013-07-16 2016-02-17 英特尔公司 Erase management in memory systems
CN109918323A (en) * 2019-02-28 2019-06-21 苏州浪潮智能科技有限公司 Data signals acquisition method, device, equipment and storage medium in integrated circuit
CN110955611A (en) * 2018-09-27 2020-04-03 爱思开海力士有限公司 Memory system and operating method thereof

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102985976A (en) * 2010-04-18 2013-03-20 桑迪士克技术有限公司 Programming non-volatile storage includng reducing impact from other memory cells
CN102609403A (en) * 2011-01-26 2012-07-25 微软公司 Formatting data by example
CN104011800A (en) * 2011-12-28 2014-08-27 英特尔公司 Cycling endurance extending for memory cells of a non-volatile memory array
CN103578552A (en) * 2012-08-10 2014-02-12 三星电子株式会社 Nonvolatile memory device and operating method with variable memory cell state definitions
CN105340020A (en) * 2013-07-16 2016-02-17 英特尔公司 Erase management in memory systems
CN103810443A (en) * 2013-11-13 2014-05-21 威盛电子股份有限公司 Device and method for protecting basic input and output system
CN110955611A (en) * 2018-09-27 2020-04-03 爱思开海力士有限公司 Memory system and operating method thereof
CN109918323A (en) * 2019-02-28 2019-06-21 苏州浪潮智能科技有限公司 Data signals acquisition method, device, equipment and storage medium in integrated circuit

Also Published As

Publication number Publication date
CN112908392A (en) 2021-06-04

Similar Documents

Publication Publication Date Title
US20190354285A1 (en) Method and apparatus for memory management
CN101154458B (en) Multi-block memory device erasing methods and related memory devices
US8452913B2 (en) Semiconductor memory device and method of processing data for erase operation of semiconductor memory device
JP4249131B2 (en) System and method for controlling erase voltage during erasure of multiple sectors of a flash memory device
US20050254306A1 (en) Flash memory device and method for driving the same
US20130117635A1 (en) Memory system including nonvolatile memory device and controlling method of controlling nonvolatile memory device
KR100672984B1 (en) Flash memory device capable of reducing program time
JP2006331615A (en) Program method of flash memory device
KR100648254B1 (en) Non_volatile memory device being capable of reducing erase time and erase method thereof
EP0992998B1 (en) Nonvolatile memory device and inspection method thereof
JP2008108326A (en) Storage device and its self-test method
KR100823169B1 (en) Flash memory system capable of improving the access performance and access method thereof
CN112908392B (en) Control method for controlling parameters of nonvolatile memory
US20040047223A1 (en) Non-volatile semiconductor memory device for selectively re-checking word lines
JP3796851B2 (en) Nonvolatile semiconductor memory device
US8004894B2 (en) Semiconductor integrated circuit
CN115938411A (en) Erasing voltage configuration method, device and equipment of flash memory chip and storage medium
US20110122714A1 (en) Control Method For Memory Cell
JP2011134389A (en) Control device for nonvolatile memory and method of operating control device
CN114582402A (en) Nonvolatile memory, programming method thereof and computer system
US10191666B1 (en) Write parameter switching in a memory device
CN109254723B (en) Method and system for memory sector de-registering in non-volatile memory
US8854887B2 (en) Nonvolatile memory device and method of programming the same
US20060282626A1 (en) Memory device and method of controlling operation of the memory device
CN106910520B (en) Writing method of storage device, storage controller and storage system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant