Burning method and system of FLASH memory

By dividing the data blocks and performing real-time verification, and dynamically adjusting the retransmission window and timeout threshold, the problem of low FLASH burning efficiency in the prior art is solved, and efficient data transmission is achieved.

CN120653277APending Publication Date: 2025-09-16SHENZHEN LITONG ELECTRONICS CO LTD
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202510621238.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-14
Publication Date
2025-09-16

AI Technical Summary

Technical Problem

Existing FLASH burning technology has low transmission efficiency in complex environments, and the retransmission window strategy cannot be dynamically adjusted, resulting in a high misjudgment rate and inability to adapt to dynamic changes in network environment and device status.

Method used

By dividing the data to be burned into multiple data blocks, recording the verification information in real time, extracting the cumulative verification features and initial verification features, and dynamically adjusting the retransmission window and response timeout threshold, breakpoint resumption can be achieved.

Benefits of technology

It improves the transmission efficiency of FLASH burning, avoids invalid data transmission, shortens fault response time, adapts to different network environments, and maintains efficient transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120653277A_ABST
    Figure CN120653277A_ABST
Patent Text Reader

Abstract

The invention provides a burning method and system for a FLASH memory, and the method comprises the steps: dividing a to-be-burnt FLASH mirror image file into a plurality of burning data blocks, recording the verification information of the current burning data block in real time after each successful transmission of one burning data block to a target memory, obtaining the verification data of the burning process, and storing the verification data in the target memory. Further extracting an accumulated verification feature of the target burning data in the burning process, and determining a retransmission window of the target burning data after the burning process is interrupted through the accumulated verification feature and an initial verification feature of the target burning data; state difference characteristics between adjacent transmission breakpoints in the data burning process are determined, and a response overtime threshold value of the upper computer after transmission interruption is dynamically adjusted through all the state difference characteristics; and when the real-time transmission interruption time is greater than the response timeout threshold value, carrying out breakpoint resume on the target burning data based on the retransmission window. Based on the scheme, accumulative positioning verification of the retransmission window in FLASH memory data burning can be realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of software installation, and more specifically, to a method and system for burning a FLASH memory. Background Art

[0002] Flash memory programming technology plays a crucial role in the development and upgrade of electronic devices. Traditional programming methods typically require inserting the integrated circuit into a programmer. However, this method presents numerous inconveniences during product debugging and program upgrades, such as the need to repeatedly disassemble and install the memory, which can damage components and printed circuit boards. With technological advancements, online programming devices, using technologies such as level conversion chips, have enabled programming without disassembling the memory, improving debugging efficiency and product reliability.

[0003] Existing FLASH burning technologies generally adopt a crude retransmission mechanism when handling transmission interruptions. In terms of retransmission control, a fixed-size retransmission window strategy is usually adopted, such as full retransmission or fixed block retransmission. This cannot be dynamically adjusted according to the actual transmission status, resulting in a large amount of invalid data transmission. In terms of timeout determination, existing solutions mostly use a preset fixed timeout threshold, which cannot adapt to the dynamic changes in the actual network environment and device status. In wireless burning scenarios, it will produce a higher misjudgment rate. Together, these lead to the low average burning efficiency of traditional solutions in complex environments such as the Industrial Internet of Things, and it deteriorates exponentially as the file size increases. Therefore, how to implement cumulative positioning verification of the retransmission window in FLASH memory data burning, thereby improving the transmission efficiency of FLASH burning, has become a difficult problem facing the industry. Summary of the Invention

[0004] The present application provides a method and system for programming a FLASH memory, which can realize cumulative positioning verification of a retransmission window during programming of FLASH memory data, thereby improving the transmission efficiency of FLASH programming.

[0005] In a first aspect, the present application provides a method for programming a FLASH memory, comprising:

[0006] Load the FLASH image file to be burned as the target burning data, and then divide the target burning data into multiple burning data blocks. After each burning data block is successfully transferred to the target memory, the verification information of the current burning data block is recorded in real time to obtain the verification data of the burning process;

[0007] Extracting a cumulative verification feature of the target burning data during the burning process from the verification information of the verification data, and determining a retransmission window of the target burning data after the burning process is interrupted according to the cumulative verification feature and the initial verification feature of the target burning data;

[0008] Determine the status difference characteristics between adjacent transmission breakpoints during data burning, and then dynamically adjust the host computer's response timeout threshold after transmission interruption based on all status difference characteristics;

[0009] When the real-time transmission interruption time is greater than the response timeout threshold, the target burning data is retransmitted based on the retransmission window.

[0010] In some embodiments, the target burning data is divided into a plurality of burning data blocks according to page size.

[0011] In some embodiments, extracting the cumulative verification feature of the target burning data during the burning process from the verification information of the verification data specifically includes:

[0012] Obtaining a cyclic check value of each successfully transmitted burning data block during the burning process from the check information in the check data;

[0013] The cumulative verification characteristics of the target programming data during the programming process are determined through all the cyclic verification values.

[0014] In some embodiments, determining the retransmission window of the target burning data after the burning process is interrupted by using the accumulated verification feature and the initial verification feature of the target burning data specifically includes:

[0015] Get the initial verification characteristics of the target burning data;

[0016] Determining a characteristic deviation between the initial verification characteristic and the accumulated verification characteristic;

[0017] The retransmission window boundary of the target burning data after the burning process is interrupted is adjusted based on the characteristic deviation to obtain the retransmission window of the target burning data after the burning process is interrupted.

[0018] In some embodiments, determining the status difference characteristics between adjacent transmission breakpoints during data burning specifically includes:

[0019] Obtaining, from the verification data, a transmission delay difference between adjacent transmission breakpoints during data burning;

[0020] Determine the response time distribution characteristics caused by network environment fluctuations;

[0021] The state difference characteristics between adjacent transmission breakpoints in the data burning process are determined according to the response time distribution characteristics and all transmission delay differences.

[0022] In some embodiments, dynamically adjusting the response timeout threshold of the host computer after a transmission interruption based on all state difference characteristics specifically includes:

[0023] Get the basic timeout value of the host computer after transmission interruption;

[0024] Determine the correction coefficient of the host computer after the transmission is interrupted by the memory type of the target burning data;

[0025] Determine the interrupt status value of the data burning process according to all status difference characteristics;

[0026] The basic timeout value is subjected to state correction by using the correction coefficient and the interruption state value to obtain a response timeout threshold of the host computer after the transmission is interrupted.

[0027] In some embodiments, the target memory is a NOR FLASH memory.

[0028] In a second aspect, the present application provides a flash memory programming system, including a breakpoint resume unit, the breakpoint resume unit including:

[0029] The acquisition module is used to load the FLASH image file to be burned as the target burning data, and then divide the target burning data into multiple burning data blocks. After each burning data block is successfully transferred to the target memory, the verification information of the current burning data block is recorded in real time to obtain the verification data of the burning process;

[0030] a processing module, configured to extract a cumulative verification feature of the target burning data during the burning process from the verification information of the verification data, and determine a retransmission window for the target burning data after the burning process is interrupted according to the cumulative verification feature and the initial verification feature of the target burning data;

[0031] The processing module is further used to determine the state difference characteristics between adjacent transmission breakpoints during the data burning process, and then dynamically adjust the response timeout threshold of the host computer after the transmission interruption based on all the state difference characteristics;

[0032] The execution module is configured to resume the target burning data based on the retransmission window when the real-time transmission interruption time is greater than the response timeout threshold.

[0033] In a third aspect, the present application provides a computer device comprising a memory and a processor, wherein the memory is used to store a computer program, and the processor is used to call and run the computer program from the memory, so that the computer device executes the above-mentioned FLASH memory burning method.

[0034] In a fourth aspect, the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores instructions or codes. When the instructions or codes are run on a computer, the computer implements the above-mentioned method for burning the FLASH memory.

[0035] The technical solutions provided by the embodiments disclosed in this application have the following beneficial effects:

[0036] The present application provides a flash memory programming method and system, which loads a flash image file to be programmed as target programming data, divides the target programming data into multiple programming data blocks, and records verification information of the current programming data block in real time after each successful transmission of a programming data block to a target memory, thereby obtaining verification data of the programming process; extracts cumulative verification features of the target programming data during the programming process from the verification information of the verification data, and determines a retransmission window for the target programming data after an interruption in the programming process based on the cumulative verification features and the initial verification features of the target programming data; determines state difference features between adjacent transmission breakpoints during the data programming process, and dynamically adjusts a response timeout threshold of a host computer after a transmission interruption based on all the state difference features; and when the real-time transmission interruption time is greater than the response timeout threshold, resumes transmission of the target programming data based on the retransmission window.

[0037] It can be seen that in this application, when the real-time transmission interruption time is greater than the response timeout threshold, the target burning data is resumed based on the retransmission window; first, the retransmission window is determined by intelligently comparing the cumulative checksum characteristics with the initial checksum characteristics, thereby achieving accurate data recovery range control. After each successful data block transmission, the system will update the cumulative checksum value from the starting block to the current block in real time, and perform a difference analysis with the initial checksum benchmark of the mirror file. When an interruption occurs, the optimal retransmission range is automatically calculated based on the checksum deviation. Through the window calibration aligned with the FLASH physical parameters, secondary errors caused by partial programming are avoided, and the burning and transmission efficiency of the FLASH memory is improved. transmission efficiency; then, the dynamic timeout threshold adjustment mechanism based on state difference characteristics significantly optimizes the timeliness and accuracy of interruption judgment, thereby improving the overall transmission efficiency. When the real-time monitoring value deviates from the benchmark, the threshold is automatically adjusted. Dynamic adjustment can effectively prevent the effective connection from being interrupted by error, and can shorten the fault response time for quickly identifying the real disconnection. It can then adapt to different FLASH types and still maintain a high effective transmission rate in harsh network environments, further improving the overall burning efficiency; in summary, based on the above scheme, the cumulative positioning check of the retransmission window in FLASH memory data burning can be realized, thereby improving the transmission efficiency of FLASH burning. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0039] Figure 1 is an exemplary flow chart of a method for programming a FLASH memory according to some embodiments of the present application;

[0040] Figure 2 is a schematic diagram of a process for determining state difference characteristics according to some embodiments of the present application;

[0041] Figure 3 is a structural diagram of a breakpoint resume transmission unit according to some embodiments of the present application;

[0042] Figure 4 It is a structural diagram of a computer device for implementing a method for burning a FLASH memory according to some embodiments of the present application. DETAILED DESCRIPTION

[0043] In order to better understand the technical solution of the present application, the technical solution of the present application will be described in detail below with reference to the accompanying drawings and specific implementation methods.

[0044] refer to Figure 1 , which is an exemplary flow chart of a method for programming a FLASH memory according to some embodiments of the present application. The method for programming a FLASH memory mainly includes the following steps:

[0045] In step 101, the FLASH image file to be burned is loaded as the target burning data, and then the target burning data is divided into multiple burning data blocks. After each burning data block is successfully transferred to the target memory, the verification information of the current burning data block is recorded in real time to obtain the verification data of the burning process.

[0046] It should be noted that, in this application, the target memory is a NOR FLASH memory; the target burning data is divided into multiple burning data blocks according to the page size; in specific implementation, in the data preprocessing layer, after the FLASH image file is loaded by the host computer software (for example: OpenOCD), the target FLASH page size (for example: 256 bytes of NOR Flash or NAND Flash) is selected. The Flash (2KB) is divided into blocks to obtain multiple burning data blocks, and a control header (including block sequence number, address offset and CRC-16 checksum) is added to the head of each burning data block to form a data packet structure that complies with the JEDEC standard. Data is sent block by block through the SPI / I2C interface protocol at the transmission execution layer. After each block is transmitted, the Bootloader program of the target MCU reads back the Flash content and calculates the checksum. The checksums before and after the transmission are compared in real time through the hardware CRC peripheral (for example, the CRC-32 module of the STM32). If they are consistent, the block status (success / failure), timestamp and checksum result are recorded in the backup SRAM non-volatile log area. The triple consisting of the block sequence number, storage address and CRC value is used as the checksum information of the current burning data block. The checksum information in each burning transmission can be obtained, and the collection of all checksum information can be used as the checksum data of the burning process.

[0047] In step 102, the cumulative verification feature of the target burning data during the burning process is extracted from the verification information of the verification data, and the retransmission window of the target burning data after the burning process is interrupted is determined based on the cumulative verification feature and the initial verification feature of the target burning data.

[0048] In some embodiments, extracting the cumulative verification characteristics of the target burning data during the burning process from the verification information of the verification data can be achieved by using the following steps:

[0049] Obtaining a cyclic check value of each successfully transmitted burning data block during the burning process from the check information in the check data;

[0050] The cumulative verification characteristics of the target programming data during the programming process are determined through all the cyclic verification values.

[0051] It should be noted that, in the present application, the cumulative check feature represents the dynamic aggregate check result of the transmitted data block, and the cumulative check feature can be used for integrity verification; in specific implementation, first, for each successfully transmitted burning data block, the check value of each successfully transmitted burning data block during the burning process is obtained from the check information of the burning data block in the check data, and the rolling CRC algorithm can be used to iteratively calculate the check value and all previous check values ​​of the burning data block, so that the result of the iterative calculation is used as the cyclic check value of the burning data block. In the above manner, the cyclic check value of each successfully transmitted burning data block during the burning process can be obtained, and the cyclic check value represents the real-time check code of a single data block, and the cyclic check value can be used for error detection; then, the set of all cyclic check values ​​can be used as the cumulative check feature of the target burning data during the burning process.

[0052] In some embodiments, determining the retransmission window of the target burning data after the burning process is interrupted by using the accumulated verification feature and the initial verification feature of the target burning data can be achieved by using the following steps:

[0053] Get the initial verification characteristics of the target burning data;

[0054] Determining a characteristic deviation between the initial verification characteristic and the accumulated verification characteristic;

[0055] The retransmission window boundary of the target burning data after the burning process is interrupted is adjusted based on the characteristic deviation to obtain the retransmission window of the target burning data after the burning process is interrupted.

[0056] It should be noted that in this application, the retransmission window represents the range of continuous data blocks that need to be retransmitted when resuming the transmission; the initial verification feature represents the original integrity verification benchmark value of the burned data image file; the feature deviation degree represents a quantitative indicator of the degree of difference between the real-time verification data and the initial verification feature.

[0057] In the specific implementation, first, in the burning startup phase, the host computer performs a full hash calculation on the original image file through the SHA-256 algorithm to generate a 256-bit initial fingerprint value, and simultaneously calculates the block check matrix, which includes the CRC-32 value of each 4KB data block and its physical address mapping table in FLASH. The above feature data is encrypted and stored in the burning configuration area as the initial check feature of the target burning data. The initial check feature includes the global CRC-32 check value of the image file and the block index table; then, the initial check feature and the cumulative check matrix are combined. The cosine similarity between the verified features is used as the feature deviation; finally, if the feature deviation is ≤5%, the retransmission window is the last transmitted data block as the retransmission window of the target burning data after the burning process is interrupted; if 5% < feature deviation ≤ 20%, the retransmission window covers the set of the last 3 data blocks and their adjacent 2 unconfirmed blocks as the retransmission window of the target burning data after the burning process is interrupted; if the feature deviation is greater than 20%, the retransmission window is extended to the set of all data blocks within the boundary of the current erase block as the retransmission window of the target burning data after the burning process is interrupted.

[0058] In step 103, the state difference characteristics between adjacent transmission breakpoints during the data burning process are determined, and then the response timeout threshold of the host computer after the transmission interruption is dynamically adjusted according to all the state difference characteristics.

[0059] In some embodiments, the state difference characteristics between adjacent transmission breakpoints during data burning are determined, referring to Figure 2 As shown in FIG, this figure is a schematic diagram of a process for determining state difference features in some embodiments of the present application. In this embodiment, determining state difference features can be implemented using the following steps:

[0060] In step 1031, a transmission delay difference between adjacent transmission breakpoints during the data burning process is obtained from the verification data;

[0061] In step 1032, a response time distribution characteristic caused by network environment fluctuation is determined;

[0062] In step 1033, the state difference characteristics between adjacent transmission breakpoints in the data burning process are determined according to the response time distribution characteristics and all transmission delay differences.

[0063] It should be noted that in this application, the state difference feature represents the quantitative difference index of the network and device status at different transmission stages; the transmission delay difference represents the fluctuation amplitude value of the transmission time of adjacent data blocks; the response time distribution feature represents the statistical distribution law of the historical transmission response time; the transmission breakpoint represents the boundary position of the last valid transmission when the interruption occurs.

[0064] In a specific implementation, first, for each group of adjacent transmission breakpoints during the data burning process, the result of (target device reception completion interrupt trigger time-host computer sending start timestamp-target device reception completion interrupt trigger time) is used as the transmission delay value of two transmission breakpoints in the adjacent transmission breakpoints, and the absolute value of the difference between the two transmission delay values ​​is used as the transmission delay difference between the adjacent transmission breakpoints. Through the above method, the transmission delay difference of each group of adjacent transmission breakpoints can be obtained, and all transmission delay differences can be obtained; then, based on the sliding window, the packet loss rate and the baud rate fluctuation coefficient are calculated, where the baud rate fluctuation coefficient = current baud rate / standard baud rate, and the set of the packet loss rate and the baud rate fluctuation coefficient is used as the response time distribution feature caused by network environment fluctuations; finally, for each group of adjacent transmission breakpoints, the ratio of the transmission delay difference between the group of adjacent transmission breakpoints to the average value of all transmission delay differences is used as the delay parameter of the group of adjacent transmission breakpoints, and the weighted sum of the delay parameter, baud rate fluctuation coefficient and packet loss rate is calculated as the state difference feature between the group of adjacent transmission breakpoints during the data burning process, and the state difference feature between all adjacent transmission breakpoints during the data burning process can be obtained.

[0065] In some embodiments, dynamically adjusting the response timeout threshold of the host computer after a transmission interruption based on all state difference characteristics can be achieved by using the following steps:

[0066] Get the basic timeout value of the host computer after transmission interruption;

[0067] Determine the correction coefficient of the host computer after the transmission is interrupted by the memory type of the target burning data;

[0068] Determine the interrupt status value of the data burning process according to all status difference characteristics;

[0069] The basic timeout value is subjected to state correction by using the correction coefficient and the interruption state value to obtain a response timeout threshold of the host computer after the transmission is interrupted.

[0070] It should be noted that, in this application, the response timeout threshold represents the maximum allowable delay time for triggering the transmission interruption judgment; the basic timeout value represents the benchmark timeout parameter under an ideal network environment; the correction coefficient represents the adjustment weight of the timeout value according to the device type and environmental factors; the interruption status value represents the quantitative indicator of the fault characteristics recorded when the transmission is abnormal.

[0071] In specific implementation, first, obtain the basic timeout value of the host computer after the transmission is interrupted from the central console of the burning system; second, when the storage type of the target burning data is NOR FLASH, the correction coefficient is 1.0-1.2; when the storage type of the target burning data is NAND FLASH, the correction coefficient is 1.2-1.5; then, the average value of all state difference characteristics is used as the interrupt status value of the data burning process; finally, the result of (basic timeout value * (1 + interrupt status value) * correction coefficient) is used as the response timeout threshold of the host computer after the transmission is interrupted.

[0072] In step 104, when the real-time transmission interruption time is greater than the response timeout threshold, the target burning data is retransmitted based on the retransmission window.

[0073] In specific implementation, when the transmission interruption time exceeds the dynamically calculated response timeout threshold, the system will initiate an intelligent breakpoint resume mechanism. First, the interruption event is double-confirmed through heartbeat detection and CRC response, the transmission queue is frozen, and the last stable state on the device side (the last successful block ID, address, and cumulative CRC value) is obtained. Then, the retransmission window is dynamically calibrated, and a differentiated strategy is adopted based on the CRC matching degree. When there is a complete match, the next N blocks (default is 3 blocks) are resumed. When there is a partial match, the binary search method is used to locate the difference block and expand the window range. In case of severe mismatch, the full erase and retransmission mode is activated. In the physical layer transmission stage, pre-processing is performed based on the characteristics of NOR / NAND Flash (NOR direct overwrite / NAND erase first and then write), and the exponential backoff algorithm is used to dynamically adjust the rate. Metadata tags are attached to each retransmitted block. Finally, a three-level verification (block CRC check, page readback comparison, and cumulative CRC chain reconstruction) is used to ensure data integrity. Normal transmission is resumed after verification.

[0074] In addition, in another aspect of the present application, in some embodiments, the present application provides a FLASH memory burning system, the FLASH memory burning system includes a breakpoint resume unit, reference Figure 3 , which is a schematic diagram of the structure of a breakpoint resuming unit according to some embodiments of the present application. The breakpoint resuming unit includes: an acquisition module 201, a processing module 202, and an execution module 203, which are described as follows:

[0075] Acquisition module 201, in this application, acquisition module 201 is mainly used to load the FLASH image file to be burned as the target burning data, and then divide the target burning data into multiple burning data blocks. After each burning data block is successfully transferred to the target memory, the verification information of the current burning data block is recorded in real time to obtain the verification data of the burning process;

[0076] Processing module 202, in the present application, is used to extract the cumulative verification feature of the target burning data during the burning process from the verification information of the verification data, and determine the retransmission window of the target burning data after the burning process is interrupted based on the cumulative verification feature and the initial verification feature of the target burning data;

[0077] It should be noted that the processing module 202 is also used to determine the state difference characteristics between adjacent transmission breakpoints during the data burning process, and then dynamically adjust the response timeout threshold of the host computer after the transmission interruption based on all the state difference characteristics;

[0078] The execution module 203 in this application is mainly used to resume the target burning data based on the retransmission window when the real-time transmission interruption time is greater than the response timeout threshold.

[0079] The above describes in detail the examples of the burning method and system of the FLASH memory provided by the embodiments of the present application. It can be understood that, in order to realize the above functions, the corresponding device includes a hardware structure and / or software module corresponding to the execution of each function. It should be easily appreciated by those skilled in the art that, in combination with the units and algorithm steps of each example described in the embodiments disclosed herein, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0080] In some embodiments, the present application also provides a computer device, which includes a memory and a processor, the memory is used to store a computer program, and the processor is used to call and run the computer program from the memory, so that the computer device executes the above-mentioned FLASH memory burning method.

[0081] In some embodiments, reference Figure 4 The dotted line in the figure indicates that the unit or module is optional. The figure is a structural diagram of a computer device for implementing a method for burning a FLASH memory according to an embodiment of the present application. The method for burning a FLASH memory described in the above embodiment can be Figure 4 The computer device shown in the figure is implemented, and the computer device includes at least one processor 301, a memory 302 and at least one communication unit 305. The computer device can be a terminal device, a server or a chip.

[0082] The processor 301 may be a general-purpose processor or a dedicated processor. For example, the processor 301 may be a central processing unit (CPU), which may be used to control the computer device, execute software programs, and process data from the software programs. The computer device may also include a communication unit 305 for inputting (receiving) and outputting (transmitting) signals.

[0083] For example, the computer device may be a chip, the communication unit 305 may be an input and / or output circuit of the chip, or the communication unit 305 may be a communication interface of the chip, and the chip may be a component of a terminal device, a network device, or other device.

[0084] For another example, the computer device may be a terminal device or a server, and the communication unit 305 may be a transceiver of the terminal device or the server, or the communication unit 305 may be a transceiver circuit of the terminal device or the server.

[0085] The computer device may include one or more memories 302, on which a program 304 is stored. The program 304 can be executed by the processor 301 to generate instructions 303, so that the processor 301 executes the method described in the above method embodiment according to the instructions 303. Optionally, data (such as a target audit model) can also be stored in the memory 302. Optionally, the processor 301 can also read data stored in the memory 302. The data can be stored at the same storage address as the program 304, or at a different storage address from the program 304.

[0086] The processor 301 and the memory 302 may be provided separately or integrated together, for example, integrated on a system on chip (SOC) of a terminal device.

[0087] It should be understood that each step of the above method embodiment can be completed by a hardware-based logic circuit or software-based instructions in the processor 301. The processor 301 can be a CPU, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, such as discrete gates, transistor logic devices, or discrete hardware components.

[0088] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0089] For example, in some embodiments, the present application also provides a computer-readable storage medium, in which instructions or codes are stored. When the instructions or codes are run on a computer, the computer implements the above-mentioned FLASH memory burning method when executing.

[0090] Although the preferred embodiments of the present application have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the present application.

[0091] Obviously, those skilled in the art may make various changes and modifications to this application without departing from the spirit and scope of this application. Thus, if these modifications and variations of this application fall within the scope of the claims of this application and their equivalents, this application is intended to include these modifications and variations.

Claims

1. A method for burning a FLASH memory, characterized in that: The steps include: Load the FLASH image file to be burned as the target burning data, and then divide the target burning data into multiple burning data blocks. After each burning data block is successfully transferred to the target memory, the verification information of the current burning data block is recorded in real time to obtain the verification data of the burning process; Extracting a cumulative verification feature of the target burning data during the burning process from the verification information of the verification data, and determining a retransmission window of the target burning data after the burning process is interrupted according to the cumulative verification feature and the initial verification feature of the target burning data; Determine the status difference characteristics between adjacent transmission breakpoints during data burning, and then dynamically adjust the host computer's response timeout threshold after transmission interruption based on all status difference characteristics; When the real-time transmission interruption time is greater than the response timeout threshold, the target burning data is retransmitted based on the retransmission window.

2. The method according to claim 1, wherein Divide the target programming data into multiple programming data blocks according to the page size.

3. The method according to claim 1, wherein Extracting the cumulative verification features of the target burning data during the burning process from the verification information of the verification data specifically includes: Obtaining a cyclic check value of each successfully transmitted burning data block during the burning process from the check information in the check data; The cumulative verification characteristics of the target programming data during the programming process are determined through all the cyclic verification values.

4. The method according to claim 1, wherein Determining the retransmission window of the target burning data after the burning process is interrupted by the accumulated verification feature and the initial verification feature of the target burning data specifically includes: Get the initial verification characteristics of the target burning data; Determining a characteristic deviation between the initial verification characteristic and the accumulated verification characteristic; The retransmission window boundary of the target burning data after the burning process is interrupted is adjusted based on the characteristic deviation to obtain the retransmission window of the target burning data after the burning process is interrupted.

5. The method according to claim 1, wherein Determining the status difference characteristics between adjacent transmission breakpoints during data burning specifically includes: Obtaining, from the verification data, a transmission delay difference between adjacent transmission breakpoints during data burning; Determine the response time distribution characteristics caused by network environment fluctuations; The state difference characteristics between adjacent transmission breakpoints in the data burning process are determined according to the response time distribution characteristics and all transmission delay differences.

6. The method according to claim 1, wherein Dynamically adjust the host computer's response timeout threshold after a transmission interruption through all state difference characteristics, specifically including: Get the basic timeout value of the host computer after transmission interruption; Determine the correction coefficient of the host computer after the transmission is interrupted by the memory type of the target burning data; Determine the interrupt status value of the data burning process according to all status difference characteristics; The basic timeout value is subjected to state correction by using the correction coefficient and the interruption state value to obtain a response timeout threshold of the host computer after the transmission is interrupted.

7. The method according to claim 1, wherein The target memory is a NOR FLASH memory.

8. A FLASH memory burning system, the FLASH memory burning system includes a breakpoint resume unit, characterized in that: The breakpoint resuming unit includes: The acquisition module is used to load the FLASH image file to be burned as the target burning data, and then divide the target burning data into multiple burning data blocks. After each burning data block is successfully transferred to the target memory, the verification information of the current burning data block is recorded in real time to obtain the verification data of the burning process; a processing module, configured to extract a cumulative verification feature of the target burning data during the burning process from the verification information of the verification data, and determine a retransmission window for the target burning data after the burning process is interrupted according to the cumulative verification feature and the initial verification feature of the target burning data; The processing module is further used to determine the state difference characteristics between adjacent transmission breakpoints during the data burning process, and then dynamically adjust the response timeout threshold of the host computer after the transmission interruption based on all the state difference characteristics; The execution module is configured to resume the target burning data based on the retransmission window when the real-time transmission interruption time is greater than the response timeout threshold.

9. A computer device, characterized in that: The computer device includes a memory and a processor, the memory is used to store a computer program, and the processor is used to call and run the computer program from the memory, so that the computer device executes the FLASH memory burning method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores instructions or codes, and when the instructions or codes are run on a computer, the computer implements the method for burning a FLASH memory according to any one of claims 1 to 7.

Citation Information

Cited By

  • Program loading system and method based on USB interface

    CN121209992A

  • Method and device for generating hash value of burning configuration file

    CN121680957A