Nor Flash and page programming method and system thereof
By dynamically adjusting the programming method according to the number of programming bytes in Nor Flash, partial page programming is implemented, and Nor Flash's Page Program has problems of low efficiency, large power consumption and short life, achieving the effect of shortening programming time, reducing power consumption and extending service life.
Patent Information
- Application Number
- CN202411954858.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-27
- Publication Date
- 2025-04-25
AI Technical Summary
The existing Nor Flash's Page Program has low efficiency, high power consumption and short lifespan.
By obtaining the number of programming bytes and the program start address in the programming command, the full page programming enable signal is set based on the number of programming bytes. If the full page programming enable signal is false, partial page programming operations are performed on the target storage page corresponding to the program start address.
Shortens programming time, reduces programming power consumption, and extends Nor Flash's service life.
Smart Images

Figure CN119889400A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the technical field of non-volatile memory, and in particular to a Nor Flash (a non-volatile flash memory technology) and a page programming method and system thereof. Background Art
[0002] Today, the booming development of technologies such as the Internet of Things, artificial intelligence, and driverless driving is driving the rapid growth of the embedded storage market. Nor Flash storage technology is a non-volatile memory technology that is mainly used to store program code and data. Compared with traditional electrically erasable programmable read-only memory (EEPROM), it has the advantages of large capacity, small size, low power consumption, stable performance, and high localization rate. Therefore, Nor Flash is widely used in various intelligent fields, including motherboard basic input and output systems, digital set-top boxes, home gateways, routers, the Internet of Things, automotive electronics, wearable devices, security monitoring, and artificial intelligence. Its versatility and reliability make our lives more convenient and intelligent.
[0003] Nor Flash has the characteristics of fast reading speed, but slow programming speed and erasing speed. Therefore, in the development process of Nor Flash, its programming speed needs to be continuously optimized. In the traditional Nor Flash programming process, the programming operation is performed in pages, that is, full page programming. No matter how much programming data is, Nor Flash will operate on the entire page corresponding to the programming address. When the programming data is small, this programming method will cause the Nor Flash programming time to be too long, increase programming power consumption, and shorten the service life of Nor Flash. Summary of the invention
[0004] The technical problem to be solved by the present disclosure is to overcome the defects of low Page Program efficiency, high power consumption and short life of Nor Flash in the prior art, and to provide a Nor Flash and a page programming method and system thereof.
[0005] The present invention solves the above technical problems through the following technical solutions:
[0006] In a first aspect, a page programming method of a Nor Flash is provided, wherein the Nor Flash includes a plurality of storage pages, and the page programming method includes:
[0007] Obtaining a programming command, wherein the programming command includes a programming byte number and a programming start address;
[0008] Performing a setting operation on a full page programming enable signal based on the programming byte number;
[0009] If the full page programming enable signal is false, a partial page programming operation is performed on the target memory page corresponding to the programming start address.
[0010] Preferably, the step of setting a full page programming enable signal based on the programming byte number comprises:
[0011] Determining whether the number of programming bytes is less than a preset number of bytes;
[0012] If so, setting the full page program enable signal to false;
[0013] If not, setting the full page program enable signal to true;
[0014] The preset number of bytes is smaller than the number of bytes of a whole page.
[0015] Preferably, if the full page programming enable signal is false, before the step of performing a partial page programming operation on the target storage page corresponding to the programming start address, the step includes:
[0016] Determining whether the full page programming enable signal is false;
[0017] If so, the step of performing a partial page programming operation on the target storage page corresponding to the programming start address is executed.
[0018] Preferably, the step of performing a partial page programming operation on the target storage page corresponding to the programming start address comprises:
[0019] Obtaining the end address to be programmed and the data to be programmed corresponding to the programming command;
[0020] Based on the programming start address, the to-be-programmed end address and the to-be-programmed data, performing a partial page pre-verification operation on the target storage page;
[0021] After the partial page pre-verification operation is completed, based on the programming start address, the end address to be programmed and the data to be programmed, a data programming operation is performed on the target storage page;
[0022] After the data programming operation is completed, based on the programming start address, the end address to be programmed and the data to be programmed, a partial page post-verification operation is performed on the target storage page;
[0023] After the partial page post-verification operation is completed, it is determined that the partial page programming operation is successful.
[0024] Preferably, the step of performing a partial page pre-verification operation on the target storage page based on the programming start address, the end address to be programmed and the data to be programmed comprises:
[0025] Acquire the original data currently stored in each programming address between the programming start address and the to-be-programmed end address;
[0026] Acquire the data to be programmed corresponding to each of the programming addresses;
[0027] Determine whether the data to be programmed and the original data corresponding to the same programming address meet the preset data state;
[0028] Wherein, the preset data state is that the original data is 1 and the data to be programmed is 0;
[0029] If yes, it is determined that the partial page pre-verification operation is completed, and the step of performing a data programming operation on the target storage page based on the programming start address, the end address to be programmed and the data to be programmed is executed;
[0030] If not, the programming operation ends.
[0031] Preferably, after the step of performing data programming operation on the target storage page, the step further includes:
[0032] Determining whether the actual programming end address is equal to the to-be-programmed end address;
[0033] If yes, it is determined that the data programming operation is completed, and the step of performing a partial page post-verification operation on the target storage page based on the programming start address, the end address to be programmed and the data to be programmed is executed;
[0034] If not, a data programming operation is performed on each programming address between the actual programming end address and the to-be-programmed end address until the actual programming end address is equal to the to-be-programmed end address.
[0035] Preferably, the step of performing a partial page post-verification operation on the target storage page comprises:
[0036] Acquire actual programming data in each programming address between the programming start address and the actual programming end address;
[0037] Acquire the data to be programmed corresponding to each of the programming addresses;
[0038] Determining whether the actual programming data corresponding to the same programming address is equal to the data to be programmed;
[0039] If so, the verification operation is completed after confirming the partial page;
[0040] If not, the process returns to the step of performing a data programming operation on the target storage page based on the programming start address, the end address to be programmed and the data to be programmed.
[0041] Preferably, if the full page programming enable signal is true, a full page programming operation is performed on the target storage page corresponding to the programming start address.
[0042] In a second aspect, a page programming system of a Nor Flash is provided, wherein the Nor Flash includes a plurality of storage pages, and the page programming system includes:
[0043] A programming command acquisition module, used to acquire a programming command, wherein the programming command includes a programming byte number and a programming start address;
[0044] A signal setting module, used for setting a full page programming enable signal based on the programming byte number;
[0045] The partial page programming module is used to perform a partial page programming operation on the target storage page corresponding to the programming start address if the full page programming enable signal is false.
[0046] In a third aspect, a Nor Flash is provided, wherein the Nor Flash is implemented using the above-mentioned Nor Flash page programming method.
[0047] On the basis of being in accordance with the common sense in the art, the above-mentioned preferred conditions can be arbitrarily combined to obtain the preferred embodiments of the present disclosure.
[0048] The positive and progressive effects of this disclosure are:
[0049] The Nor Flash and its page programming method and system disclosed in the present invention obtain the programming byte number and programming start address in the programming command, and set the full page programming enable signal based on the programming byte number. If the full page programming enable signal is false, a partial page programming operation is performed on the target storage page corresponding to the programming start address. Only the storage cells that need to be programmed need to be selected for programming, which can not only shorten the programming time but also reduce the programming power consumption. At the same time, all page storage cells will not be selected at a high frequency to apply programming voltage pulses to raise the threshold voltage, which can extend the service life of the NorFlash. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] Figure 1 A first flow chart of a page programming method of Nor Flash provided in Embodiment 1 of the present disclosure;
[0051] Figure 2A second flow chart of the page programming method of Nor Flash provided in Embodiment 1 of the present disclosure;
[0052] Figure 3 A third flow chart of the page programming method of Nor Flash provided in Embodiment 1 of the present disclosure;
[0053] Figure 4 A fourth flow chart of the page programming method of Nor Flash provided in Embodiment 1 of the present disclosure;
[0054] Figure 5 A fifth flow chart of the page programming method of Nor Flash provided in Embodiment 1 of the present disclosure;
[0055] Figure 6 A sixth flow chart of the page programming method of Nor Flash provided in Embodiment 1 of the present disclosure;
[0056] Figure 7 A seventh flow chart of the page programming method of Nor Flash provided in Embodiment 1 of the present disclosure;
[0057] Figure 8 This is a schematic diagram of an eighth flow chart of the page programming method of Nor Flash provided in Embodiment 1 of the present disclosure;
[0058] Fig. 9 A schematic diagram of the structure of the Nor Flash page programming system provided in Embodiment 2 of the present disclosure. DETAILED DESCRIPTION
[0059] The present disclosure is further described below by way of examples, but the present disclosure is not limited to the scope of the examples.
[0060] Prefixes such as "first" and "second" are used in the embodiments of the present disclosure only to distinguish different description objects, and have no limiting effect on the position, order, priority, quantity or content of the described objects. The use of prefixes such as ordinal numbers to distinguish description objects in the embodiments of the present disclosure does not constitute a limitation on the described objects. For the statement of the described objects, please refer to the description in the context of the embodiments, and no unnecessary limitation should be constituted due to the use of such prefixes. In addition, in the description of the present embodiment, unless otherwise specified, the meaning of "plurality" is two or more.
[0061] In the embodiments of the present disclosure, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved are in compliance with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0062] Example 1
[0063] This embodiment provides a page programming method of Nor Flash, wherein Nor Flash includes multiple storage pages, such as Figure 1 As shown, the page programming method of Nor Flash includes:
[0064] S1. Get the programming command, which includes the number of programming bytes and the programming start address.
[0065] S2. Set the full page programming enable signal based on the number of programming bytes.
[0066] S3. If the full page programming enable signal is false, a partial page programming operation is performed on the target storage page corresponding to the programming start address.
[0067] Specifically, the program command includes but is not limited to the program byte number and the program start address.
[0068] In Nor Flash, page is a common unit of programming operation. Existing Nor Flash is programmed by page, so no matter how much programming data is, Nor Flash will operate on the entire page corresponding to the programming address, and cannot use the write data capacity to the maximum efficiency for writing operations, resulting in low efficiency of programming operations.
[0069] The page programming method of the Nor Flash of the present embodiment obtains the programming byte number and the programming start address in the programming command, and sets the full page programming enable signal based on the programming byte number. If the full page programming enable signal is false, a partial page programming operation is performed on the target storage page corresponding to the programming start address. Only the storage cells that need to be programmed need to be selected for programming, which can not only shorten the programming time but also reduce the programming power consumption. At the same time, all page storage cells will not be selected at a high frequency to apply programming voltage pulses to raise the threshold voltage, which can extend the service life of the Nor Flash.
[0070] In an optional embodiment, if Figure 2 As shown, the above step S2 includes:
[0071] S21, determining whether the number of programmed bytes is less than the preset number of bytes.
[0072] If yes, then execute step S22, if no, then execute step S23;
[0073] S22, set the full page programming enable signal to false.
[0074] S23, set the full page programming enable signal to true.
[0075] The preset number of bytes is smaller than the number of bytes of the entire page.
[0076] The number of bytes of a whole page in Nor Flash is 256 bytes, and the preset number of bytes is smaller than the number of bytes of the whole page, that is, the preset number of bytes can be any value between 1-255, for example, it can be 240 bytes.
[0077] For example, the full page programming enable signal may be set to 0, ie, the full page programming enable signal is false; or the full page programming enable signal may be set to 1, ie, the full page programming enable signal is true.
[0078] The page programming method of Nor Flash in this embodiment determines whether to perform a partial page programming operation by judging the relationship between the programming byte number and the preset byte number, and can quickly distinguish whether a partial page programming operation or a full page programming operation is required.
[0079] In an optional embodiment, if Figure 3 As shown, the above step S3 includes:
[0080] S31 . Perform a partial page programming operation on a target storage page corresponding to a programming start address.
[0081] The above step S3 includes:
[0082] S0. Determine whether the full page programming enable signal is false.
[0083] If yes, execute step S31.
[0084] In an optional embodiment, if Figure 4 As shown, the above step S31 includes:
[0085] S311 , obtaining the end address to be programmed and the data to be programmed corresponding to the programming command.
[0086] S312: Based on the programming start address, the end address to be programmed, and the data to be programmed, a partial page pre-verification operation is performed on the target storage page.
[0087] S313: After the partial page pre-verification operation is completed, a data programming operation is performed on the target storage page based on the programming start address, the end address to be programmed, and the data to be programmed.
[0088] S314: After the data programming operation is completed, a partial page post-verification operation is performed on the target storage page based on the programming start address, the end address to be programmed, and the data to be programmed.
[0089] S315 , after the partial page post-verification operation is completed, determine that the partial page programming operation is successful.
[0090] The partial page programming operation mainly consists of a partial page pre-verification operation, a data programming operation and a partial page post-verification operation. If the full page programming enable signal is false, a partial page programming operation is required for the target storage page corresponding to the programming start address.
[0091] Specifically, a partial page pre-verification operation is first performed on the target storage page to determine whether the target storage page is in a programmable state; after the partial page pre-verification operation is completed, a data programming operation is performed on the target storage page, that is, a data writing operation is performed on the target storage page; after the data programming operation is completed, a partial page post-verification operation is performed on the target storage page to verify whether the written data corresponds to the data to be programmed; after the partial page post-verification operation is completed, it is determined that the partial page programming operation is successful.
[0092] In an optional embodiment, if Figure 5 As shown, the above step S312 includes:
[0093] S3121. Obtain the original data currently stored in each programming address between the programming start address and the to-be-programmed end address.
[0094] S3122, obtaining the data to be programmed corresponding to each programming address.
[0095] S3123, determine whether the data to be programmed and the original data corresponding to the same programming address meet the preset data state.
[0096] If yes, execute step S3124, if no, execute step S3125.
[0097] S3124. Determine that the partial page pre-verification operation is completed.
[0098] S3125, end the programming operation.
[0099] After step S3124 is executed, step S313 is executed; that is, after the partial page pre-verification operation is completed, a data programming operation is performed on the target storage page based on the programming start address, the end address to be programmed and the data to be programmed.
[0100] The preset data state is that the original data is 1 and the data to be programmed is 0.
[0101] When the original data currently stored in the programming address is 1, it means that the programming address is in a programmable state. When the data to be programmed corresponding to the programming address is 0, it means that the programming address needs to be programmed. When the original data corresponding to a programming address is 1 and the data to be programmed is 0, it can be determined that the programming address is in a programmable state and needs to be programmed, thereby determining that the partial page pre-verification operation is completed.
[0102] In an optional embodiment, if Figure 6As shown, after the above step S313, the following steps are also included:
[0103] S316: Determine whether the actual programming end address is equal to the to-be-programmed end address.
[0104] If yes, execute step S317; if no, execute step S318.
[0105] S317 , determine that the data programming operation is completed.
[0106] S318, performing data programming operations on each programming address between the actual programming end address and the to-be-programmed end address until the actual programming end address is equal to the to-be-programmed end address.
[0107] After step S317 is executed, step S314 is executed, that is, after the data programming operation is completed, a partial page post-verification operation is performed on the target storage page based on the programming start address, the end address to be programmed and the data to be programmed.
[0108] If the actual programming end address is equal to the to-be-programmed end address, it indicates that the data programming operation is completed; if the actual programming end address is not equal to the to-be-programmed end address, it indicates that the data programming operation is not completed, for example, the data programming operation may be only 80% completed. Therefore, it is necessary to continue the data programming operation. Specifically, the data programming operation is performed on each programming address between the actual programming end address and the to-be-programmed end address until the actual programming end address is equal to the to-be-programmed end address to ensure that the data programming operation is 100% completed.
[0109] In an optional embodiment, if Figure 7 As shown, the above step S313 includes:
[0110] S3131. Determine that the partial page pre-verification operation is completed.
[0111] S3132: Based on the programming start address, the end address to be programmed, and the data to be programmed, perform a data programming operation on the target storage page.
[0112] The above step S314 includes:
[0113] S3141. After the data programming operation is completed, obtain the actual programming data in each programming address between the programming start address and the actual programming end address.
[0114] S3142, obtaining the data to be programmed corresponding to each programming address.
[0115] S3143. Determine whether the actual programming data corresponding to the same programming address is equal to the data to be programmed.
[0116] If so, execute step S3144; if not, return to step S3132.
[0117] S3144. After confirming some pages, the verification operation is completed.
[0118] If the actual programming data corresponding to the same programming address is not equal to the data to be programmed, then based on the programming start address, the end address to be programmed and the data to be programmed, the step of performing data programming operation on the target storage page. When the actual programming data corresponding to the same programming address is not equal to the data to be programmed, it indicates that the data programming operation has not passed, the data writing has failed, and the data programming operation needs to be continued.
[0119] If the actual programming data corresponding to the same programming address is equal to the data to be programmed, it indicates that the partial page post-verification operation is completed and the partial page programming operation is successful.
[0120] In an optional embodiment, if Figure 2 As shown, the page programming method of Nor Flash also includes:
[0121] S4. If the full page programming enable signal is true, a full page programming operation is performed on the target storage page corresponding to the programming start address.
[0122] The full page programming operation is a mature technology in this field, and the specific content will not be repeated here.
[0123] Figure 8 The eighth flow chart of the page programming method of Nor Flash provided in the first embodiment of the present disclosure is as follows: Figure 8 As shown, when a programming command is received, the Nor Flash chip will be initialized internally, and the programming start address in the programming command will be recorded at the same time, and then it will be determined whether the number of programming bytes is less than the preset number of bytes. If so, the full page programming enable signal is set to false, if not, the full page programming enable signal is set to true; then it is determined whether the full page programming enable signal is false, if not, a full page programming operation is performed, and the page programming is terminated after the full page programming operation is successful; if so, a partial page programming operation is performed. Specifically, a partial page pre-verification operation is performed first to determine whether the partial page pre-verification operation is completed, if so, a data programming operation is performed, if not, the page programming is terminated; then it is determined whether the data programming operation is completed, if so, a partial page post-verification operation is performed, if not, the data programming operation is continued until the data programming operation is completed, and then it is determined whether the partial page post-verification operation is completed, if so, the partial page programming operation is successful, and the page programming is terminated, if not, the data programming operation is returned to be executed until the partial page programming operation is successful. For details on how to determine whether the partial page pre-verification operation is completed, whether the data programming operation is completed, and whether the partial page post-verification operation is completed, see the above-mentioned related text description and Figures 1 to 7 That’s it, I won’t go into details here.
[0124] Example 2
[0125] This embodiment provides a page programming system of Nor Flash, wherein the Nor Flash includes a plurality of storage pages, and the page programming system includes:
[0126] A programming command acquisition module 1 is used to acquire a programming command, wherein the programming command includes a programming byte number and a programming start address;
[0127] A signal setting module 2, used for setting a full page programming enable signal based on the number of programming bytes;
[0128] The partial page programming module 3 is used to perform a partial page programming operation on the target storage page corresponding to the programming start address if the full page programming enable signal is false.
[0129] In an optional implementation, the signal setting module 2 is used to determine whether the programming byte number is less than the preset byte number; if so, the full page programming enable signal is set to false; if not, the full page programming enable signal is set to true; wherein the preset byte number is less than the full page byte number.
[0130] In an optional embodiment, the page programming system further includes an enable signal judgment module 4, which is used to judge whether the full page programming enable signal is false; if so, the partial page programming module 3 performs a partial page programming operation on the target storage page corresponding to the programming start address.
[0131] In an optional implementation, the partial page programming module 3 includes:
[0132] A data acquisition unit 31 is used to acquire a to-be-programmed end address and to-be-programmed data corresponding to a programming command;
[0133] A pre-verification operation unit 32, configured to perform a partial page pre-verification operation on a target storage page based on a programming start address, a to-be-programmed end address, and to-be-programmed data;
[0134] A programming operation unit 33, configured to perform a data programming operation on a target storage page based on a programming start address, a to-be-programmed end address and to-be-programmed data after a partial page pre-verification operation is completed;
[0135] A post-verification operation unit 34 performs a partial page post-verification operation on a target storage page based on a programming start address, a to-be-programmed end address, and to-be-programmed data after the data programming operation is completed;
[0136] The page programming determination unit 35 is used to determine that the partial page programming operation is successful after the partial page post-verification operation is completed.
[0137] In an optional embodiment, the pre-verification operation unit 32 is used to obtain the original data currently stored in each programming address between the programming start address and the end address to be programmed; obtain the data to be programmed corresponding to each programming address; determine whether the data to be programmed and the original data corresponding to the same programming address meet the preset data state; wherein the preset data state is that the original data is 1 and the data to be programmed is 0; if so, it is determined that the pre-verification operation of some pages is completed, and the programming operation unit 33 performs data programming operation on the target storage page based on the programming start address, the end address to be programmed and the data to be programmed; if not, the programming operation is terminated.
[0138] In an optional embodiment, the partial page programming module 3 also includes an address determination unit 36, which is used to determine whether the actual programming end address is equal to the end address to be programmed; if so, it is determined that the data programming operation is completed, and the post-verification operation unit 34 performs a partial page post-verification operation on the target storage page based on the programming start address, the end address to be programmed and the data to be programmed; if not, the programming operation unit 33 performs a data programming operation on each programming address between the actual programming end address and the end address to be programmed until the actual programming end address is equal to the end address to be programmed.
[0139] In an optional embodiment, the post-verification operation unit 34 is used to obtain the actual programming data in each programming address between the programming start address and the actual programming end address; obtain the data to be programmed corresponding to each programming address; determine whether the actual programming data corresponding to the same programming address is equal to the data to be programmed; if so, determine that the post-verification operation of some pages is completed; if not, the programming operation unit 33 continues to program data on the target storage page based on the programming start address, the end address to be programmed and the data to be programmed.
[0140] In an optional implementation, the page programming system of Nor Flash further includes a full page programming module 5, and the full page programming module 5 is used to perform a full page programming operation on the target storage page corresponding to the programming start address if the full page programming enable signal is true.
[0141] As for the system embodiment, since it basically corresponds to the method embodiment, the relevant parts may refer to the partial description of method embodiment 1.
[0142] The page programming system of the Nor Flash of this embodiment obtains the number of programming bytes and the programming start address in the programming command, and sets the full page programming enable signal based on the number of programming bytes. If the full page programming enable signal is false, a partial page programming operation is performed on the target storage page corresponding to the programming start address. This can not only shorten the programming time, but also reduce the programming power consumption. At the same time, all page storage cells will not be selected at a high frequency to apply programming voltage pulses to raise the threshold voltage, which can extend the service life of the Nor Flash.
[0143] The system embodiments described above are merely illustrative, in which the units described as separate components may or may not be physically separated, and the components of the units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the disclosed solution.
[0144] Example 3
[0145] This embodiment provides a Nor Flash, and the Nor Flash is implemented using the page programming method of the Nor Flash in the first embodiment.
[0146] The Nor Flash of this embodiment is implemented using the page programming method of the Nor Flash in Embodiment 1. By obtaining the number of programming bytes and the programming start address in the programming command, a full page programming enable signal is set based on the number of programming bytes. If the full page programming enable signal is false, a partial page programming operation is performed on the target storage page corresponding to the programming start address. Only the storage cells that need to be programmed need to be selected for programming, which can not only shorten the programming time but also reduce the programming power consumption. At the same time, all page storage cells will not be selected at a high frequency to apply programming voltage pulses to raise the threshold voltage, which can extend the service life of the Nor Flash.
[0147] Although the specific embodiments of the present disclosure are described above, those skilled in the art should understand that this is only an example, and the protection scope of the present disclosure is defined by the appended claims. Those skilled in the art may make various changes or modifications to these embodiments without departing from the principles and essence of the present disclosure, but these changes and modifications all fall within the protection scope of the present disclosure.
Claims
1. A page programming method for Nor Flash, characterized in that: The Nor Flash includes a plurality of storage pages, and the page programming method includes: Obtaining a programming command, wherein the programming command includes a programming byte number and a programming start address; Performing a setting operation on a full page programming enable signal based on the programming byte number; If the full page programming enable signal is false, a partial page programming operation is performed on the target memory page corresponding to the programming start address.
2. The page programming method according to claim 1, characterized in that: The step of setting a full page program enable signal based on the number of program bytes comprises: Determining whether the number of programming bytes is less than a preset number of bytes; If so, setting the full page program enable signal to false; If not, setting the full page program enable signal to true; The preset number of bytes is smaller than the number of bytes of a whole page.
3. The page programming method according to claim 1, characterized in that: If the full page programming enable signal is false, the step of performing a partial page programming operation on the target storage page corresponding to the programming start address includes: Determining whether the full page programming enable signal is false; If so, the step of performing a partial page programming operation on the target storage page corresponding to the programming start address is executed.
4. The page programming method according to claim 1, characterized in that: The step of performing a partial page programming operation on the target storage page corresponding to the programming start address comprises: Obtaining the end address to be programmed and the data to be programmed corresponding to the programming command; Based on the programming start address, the to-be-programmed end address and the to-be-programmed data, performing a partial page pre-verification operation on the target storage page; After the partial page pre-verification operation is completed, based on the programming start address, the end address to be programmed and the data to be programmed, a data programming operation is performed on the target storage page; After the data programming operation is completed, based on the programming start address, the end address to be programmed and the data to be programmed, a partial page post-verification operation is performed on the target storage page; After the partial page post-verification operation is completed, it is determined that the partial page programming operation is successful.
5. The page programming method according to claim 4, characterized in that: The step of performing a partial page pre-verification operation on the target storage page based on the programming start address, the end address to be programmed and the data to be programmed comprises: Acquire the original data currently stored in each programming address between the programming start address and the to-be-programmed end address; Acquire the data to be programmed corresponding to each of the programming addresses; Determine whether the data to be programmed and the original data corresponding to the same programming address meet the preset data state; Wherein, the preset data state is that the original data is 1 and the data to be programmed is 0; If yes, it is determined that the partial page pre-verification operation is completed, and the step of performing a data programming operation on the target storage page based on the programming start address, the end address to be programmed and the data to be programmed is executed; If not, the programming operation ends.
6. The page programming method according to claim 4, characterized in that: After the step of performing data programming operation on the target storage page, the following step is further included: Determining whether the actual programming end address is equal to the to-be-programmed end address; If yes, it is determined that the data programming operation is completed, and the step of performing a partial page post-verification operation on the target storage page based on the programming start address, the end address to be programmed and the data to be programmed is executed; If not, a data programming operation is performed on each programming address between the actual programming end address and the to-be-programmed end address until the actual programming end address is equal to the to-be-programmed end address.
7. The page programming method according to claim 4, characterized in that: The step of performing a partial page post-verification operation on the target storage page comprises: Acquire actual programming data in each programming address between the programming start address and the actual programming end address; Acquire the data to be programmed corresponding to each of the programming addresses; Determining whether the actual programming data corresponding to the same programming address is equal to the data to be programmed; If so, the verification operation is completed after confirming the partial page; If not, the process returns to the step of performing a data programming operation on the target storage page based on the programming start address, the end address to be programmed and the data to be programmed.
8. The page programming method according to claim 1, characterized in that: If the full page programming enable signal is true, a full page programming operation is performed on the target storage page corresponding to the programming start address.
9. A page programming system for Nor Flash, characterized in that: The Nor Flash includes a plurality of storage pages, and the page programming system includes: A programming command acquisition module, used to acquire a programming command, wherein the programming command includes a programming byte number and a programming start address; A signal setting module, used for setting a full page programming enable signal based on the programming byte number; The partial page programming module is used to perform a partial page programming operation on the target storage page corresponding to the programming start address if the full page programming enable signal is false.
10. A Nor Flash, characterized in that: The Nor Flash is implemented using the Nor Flash page programming method according to any one of claims 1 to 8.