Chip data processing method and device, electronic equipment and storage medium

By grouping the data to be burned, the target burned data group is determined, and the chip is burned according to the group, the problem of low chip burning efficiency in the prior art is solved, and an efficient and low-cost burning process is realized.

CN119536755APending Publication Date: 2025-02-28CHANGSHA YINGWEITENG ELECTRIC TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411474933.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-21
Publication Date
2025-02-28

AI Technical Summary

Technical Problem

The prior art requires switching production tools from different manufacturers during the chip burning process, which leads to complex and time-consuming burning operations, and some tools are incompatible, so the computer needs to be restarted, which makes the burning efficiency low.

Method used

By obtaining the chip information and data to be burned, a single-time burning amount threshold is determined, the data are grouped in an orderly manner, forming a target burning data group, and the chip is burned according to the group.

Benefits of technology

While controlling the cost of burning, it effectively improves the chip burning efficiency, avoids the steps of tool switching and restarting the computer, and improves the efficiency of burning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119536755A_ABST
    Figure CN119536755A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of chips, in particular to a chip data processing method and device, electronic equipment and a storage medium. The method is applied to an upper computer and comprises the steps that chip information of a to-be-burnt chip and to-be-burnt data are acquired; according to the chip information, determining a single burning quantity threshold value of the to-be-burnt chip; on the basis of the single burning quantity threshold value, orderly grouping the to-be-burnt data, and determining a target burning data group; and burning the chip to be burnt according to the target burning data group. By adopting the method, the chip burning efficiency can be effectively improved while the burning cost is controlled.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of chip technology, and in particular to a chip data processing method, device, electronic device and storage medium. Background Art

[0002] In the industrial control industry, such as frequency converters, the main control chips used will use chips from many different manufacturers, such as TI, ST and other chip manufacturers. When producing and burning chips and burning and upgrading chips after sales, it is usually necessary to install and switch production tools from different manufacturers for chip burning. This burning method not only requires burning operators to learn to operate production tools from different manufacturers, which has high production costs, but also, in the case of incompatibility of some manufacturers' tools, it is even necessary to restart the computer, which is very time-consuming and has low burning efficiency. At present, the burning efficiency of the chip can be improved by increasing the baud rate, but increasing the baud rate has high requirements for burning hardware equipment, high burning costs, and will cause unstable burning.

[0003] In view of this, how to effectively improve chip burning efficiency while controlling burning costs is an issue that needs to be considered at present. Summary of the invention

[0004] In view of this, the embodiments of the present application provide a chip data processing method, device, electronic device and storage medium, which can effectively improve the chip burning efficiency while controlling the burning cost.

[0005] A first aspect of an embodiment of the present application provides a chip data processing method, which is applied to a host computer and includes:

[0006] Get the chip information of the chip to be burned and the data to be burned;

[0007] Determine a single programming amount threshold of the chip to be programmed according to the chip information;

[0008] Based on the single-time programming amount threshold, the data to be programmed are grouped in order to determine a target programming data group;

[0009] The chip to be programmed is programmed according to the target programming data group.

[0010] In a possible implementation of the first aspect, the step of grouping the to-be-burned data in order based on the single-burning amount threshold to determine a target burning data group includes:

[0011] Sorting the data to be programmed by address and grouping them to obtain a number of initial data groups to be programmed, wherein each of the ordered initial data groups to be programmed is composed of data to be programmed with consecutive addresses, and the number of initial data groups to be programmed;

[0012] Performing a comparison operation on each of the initial data groups to be burned in sequence, the comparison operation comprising comparing the data amount of the initial data group to be burned with the single burning amount threshold;

[0013] A target data group to be programmed is determined based on the execution result of the comparison operation, the initial data group to be programmed and a preset interval threshold.

[0014] In a possible implementation manner of the first aspect, determining a target data group to be burned based on the execution result of the comparison operation, the initial data group to be burned, and a preset interval threshold includes:

[0015] When the amount of data in the initial data group to be programmed is greater than the single programming amount threshold, a first judgment operation is performed, wherein the first judgment operation includes judging whether the address interval between the excess data to be programmed and the next group of initial data group to be programmed is less than the preset interval threshold, wherein the excess data to be programmed is the data to be programmed in the initial data group to be programmed that exceeds the single programming amount threshold;

[0016] If the address interval between the excess data to be programmed and the next group of initial data to be programmed is greater than the preset interval threshold, determining a target data group to be programmed according to the excess data to be programmed;

[0017] The method further includes: if the address interval between the excess data to be programmed and the next group of initial data to be programmed is less than or equal to the preset interval threshold, determining a new initial data group to be programmed according to the excess data to be programmed and the next group of initial data to be programmed.

[0018] In a possible implementation manner of the first aspect, determining a target data group to be burned based on the execution result of the comparison operation, the initial data group to be burned, and a preset interval threshold includes:

[0019] When the data amount of the initial data group to be programmed is less than the single programming amount threshold, performing a second judgment operation, the second judgment operation comprising judging whether the address interval between the initial data group to be programmed and the next initial data group to be programmed is less than a preset interval threshold;

[0020] If the address interval between the initial data group to be programmed and the next initial data group to be programmed is greater than the preset interval threshold, determining a target data group to be programmed according to the initial data group to be programmed;

[0021] The method further includes: if the address interval between the initial data group to be programmed and the next initial data group to be programmed is less than or equal to the preset interval threshold, determining a new initial data group to be programmed according to the initial data group to be programmed and the next initial data group to be programmed.

[0022] In a possible implementation manner of the first aspect, the chip information includes a chip model, and the method further includes:

[0023] Based on the chip model, determining the byte writing time of the chip to be burned;

[0024] The preset interval threshold is determined according to the byte writing time.

[0025] In a possible implementation manner of the first aspect, before determining the single programming amount threshold of the chip to be programmed according to the chip information, the method further includes:

[0026] Calculating the check code of the data to be burned;

[0027] Verify whether there is a historical verification code consistent with the verification code in the database;

[0028] The step of determining a single programming amount threshold of the chip to be programmed according to the chip information includes:

[0029] If there is no historical verification code consistent with the verification code in the database, a single programming amount threshold of the chip to be programmed is determined according to the chip information.

[0030] In a possible implementation manner of the first aspect, the method further includes:

[0031] If there is a historical verification code consistent with the verification code in the database, reading the historical target burning data group corresponding to the historical verification code;

[0032] The chip to be programmed is programmed based on the historical target programming data group.

[0033] A second aspect of an embodiment of the present application provides a chip data processing device, which is applied to a host computer. The chip data processing device includes:

[0034] An information data acquisition unit, used to acquire chip information of the chip to be burned and data to be burned;

[0035] A burning amount threshold determination unit, used to determine a single burning amount threshold of the chip to be burned according to the chip information;

[0036] A data grouping processing unit, configured to group the data to be programmed in an orderly manner based on the single programming amount threshold value, and determine a target programming data group, wherein the data to be programmed in the target programming data group does not exceed the single programming amount threshold value;

[0037] The chip programming unit is used to program the chip to be programmed according to the target programming data group.

[0038] A third aspect of an embodiment of the present application provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and running on the processor, wherein when the processor executes the computer program, the steps of the chip data processing method provided in the first aspect of the embodiment of the present application are implemented.

[0039] The fourth aspect of the embodiments of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the steps of the chip data processing method provided in the first aspect of the embodiments of the present application.

[0040] The fifth aspect of the embodiments of the present application provides a computer program product. When the computer program product runs on a terminal device, the terminal device executes the steps of the chip data processing method described in the first aspect of the embodiments of the present application.

[0041] In an embodiment of the present application, the chip information of the chip to be burned and the data to be burned are obtained through the host computer, and the single burning amount threshold of the chip to be burned is determined according to the chip information, and then the data to be burned is orderly grouped based on the single burning amount threshold, and the target burning data group is determined, and then the chip to be burned is burned according to the target burning data group. The present application can ensure the high efficiency of burning by grouping the data to be burned so that each burning does not exceed the single burning amount threshold, and effectively improve the chip burning efficiency while controlling the burning cost. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. 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 work.

[0043] Figure 1 is a flow chart for implementing the chip data processing method provided in the embodiment of the present application;

[0044] Figure 2 is a specific implementation flow chart of step S103 in the chip data processing method provided in an embodiment of the present application;

[0045] Figure 3 It is a specific implementation flow chart of determining a target data group to be burned in the chip data processing method provided in the embodiment of the present application;

[0046] Figure 4This is another specific implementation flow chart of determining a target data group to be burned in the chip data processing method provided in the embodiment of the present application;

[0047] Figure 5 is a flow chart of an implementation of a chip data processing method provided by another embodiment of the present application;

[0048] Figure 6 is a structural block diagram of a chip data processing device provided in an embodiment of the present application;

[0049] Figure 7 It is a schematic diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0050] In the following description, specific details such as specific device structures, technologies, etc. are provided for the purpose of illustration rather than limitation, so as to provide a thorough understanding of the embodiments of the present application. However, it should be clear to those skilled in the art that the present application may also be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to prevent unnecessary details from obstructing the description of the present application.

[0051] In addition, in the description of the present application specification and the appended claims, the terms "first", "second", "third", etc. are only used to distinguish the descriptions and cannot be understood as indicating or implying relative importance.

[0052] References to "one embodiment" or "some embodiments" etc. described in the specification of this application mean that one or more embodiments of the present application include specific features, structures or characteristics described in conjunction with the embodiment. Therefore, the statements "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.

[0053] In current technology, the burning of chips from different manufacturers requires the installation of each manufacturer's production tools separately. During the burning process, the burning tools need to be switched. In the case of incompatibility between some manufacturers' tools, the computer even needs to be restarted, which is very time-consuming and leads to low burning efficiency.

[0054] In view of the above problems, an embodiment of the present application provides a chip data processing method, which is applied to a host computer, encapsulates classes of different chip manufacturers together, and does not need to switch the generation tools of each manufacturer when burning the chip. The chip information of the chip to be burned and the data to be burned are obtained through the host computer, and the single burning amount threshold of the chip to be burned is determined according to the chip information, and then based on the single burning amount threshold, the data to be burned is orderly grouped, and a target burning data group in which the data to be burned does not exceed the single burning amount threshold is determined, and then the chip to be burned is burned according to the target burning data group, so that each burning does not exceed the single burning amount threshold, thereby ensuring the high efficiency of burning, and effectively improving the chip burning efficiency while controlling the burning cost.

[0055] As an example but not a limitation, the chip data processing method provided in the embodiment of the present application can be applied to electronic devices that need to perform chip burning of various types of data, specifically including mobile phones, tablet computers, laptops, ultra-mobile personal computers (ultra-mobile personal computers, UMPCs), desktop computers and other electronic devices that can issue control commands. The embodiment of the present application does not impose any restrictions on the specific type of electronic devices.

[0056] The chip data processing method provided in the present application is exemplarily described below in conjunction with specific embodiments.

[0057] Figure 1 The implementation process of the chip data processing method provided in an embodiment of the present application is shown, and the method process may include the following steps S101 to S104.

[0058] Step S101: Obtain chip information of the chip to be programmed and data to be programmed.

[0059] In this embodiment, the chip to be programmed can be determined according to the user's selection instruction, and then the chip information of the chip to be programmed can be obtained, and the corresponding data to be programmed of the chip to be programmed can be read at the same time. For example, the user determines that the chip to be programmed is ST's H723 chip, and obtains the chip information and the data to be programmed corresponding to the H723 chip.

[0060] Step S102: determining a single programming amount threshold of the chip to be programmed according to the chip information.

[0061] The chip information includes the model. The single programming amount threshold can be determined according to the model of the chip to be programmed. In this embodiment, the programming is performed in chip sectors. Generally, the sector size of the chip to be programmed is the single programming amount threshold.

[0062] The chip to be programmed has different models and different storage and area sizes. The storage area size of the chip to be programmed is determined by the size and number of the storage body (bank). The storage body includes blocks, pages and sectors. Generally, the chip storage area is generally divided into 2 banks, a bank has 2 power layers (for example, 64 layers), each layer has 2 power blocks (for example, 64 blocks), a block has 2 power pages (for example, 64 pages), a page has 2 power sectors (for example, 2 sectors), and a sector has a fixed number of bytes (for example, 64 / 128 / 256 / 512 bytes)

[0063] In a possible implementation, before determining the single programming amount threshold of the chip to be programmed according to the chip information, it is determined whether the model of the chip to be programmed belongs to a specified model. If the model of the chip to be programmed belongs to the specified model, the chip to be programmed is directly programmed based on the data to be programmed. In actual production, some types of chips do not support continuous programming. For such chips, the data to be programmed is not processed, and target programming data is directly generated based on the data to be programmed for programming.

[0064] Step S103: based on the single programming amount threshold, the data to be programmed are grouped in order to determine a target programming data group.

[0065] In this embodiment, the data to be burned in the target burning data group does not exceed the single burning amount threshold

[0066] As a possible implementation of the present application, the data to be burned includes address-data value. Figure 2 A specific implementation process of step S103 in the method provided in the embodiment of the present application is shown, and is described in detail as follows:

[0067] A1: sorting the data to be programmed by address and grouping them to obtain a plurality of initial data groups to be programmed, wherein each ordered initial data group to be programmed is composed of data to be programmed with consecutive addresses.

[0068] A2: performing a comparison operation on each of the initial data groups to be programmed in turn, wherein the comparison operation includes comparing the data volume of the initial data group to be programmed with the single programming volume threshold.

[0069] A3: Determine a target data group to be programmed based on the execution result of the comparison operation, the initial data group to be programmed and a preset interval threshold.

[0070] In this embodiment, the data to be programmed are initially sorted and grouped based on the addresses of the data to be programmed, and the data to be programmed with continuous addresses are grouped together to obtain a number of initial data groups to be programmed. The number of initial data groups to be programmed are sorted by address at the same time, and the data amount of each initial data group to be programmed is compared with the single maximum programming threshold to determine whether the data amount of the data to be programmed in the data group to be programmed is equal to the single programming amount threshold.

[0071] When the data amount of the initial data group to be programmed is equal to the single programming amount threshold, the initial data group to be programmed is determined as the target data group to be programmed, and then a comparison operation is performed on the next initial data group to be programmed.

[0072] When the data amount of the initial data group to be programmed is not equal to the single programming amount threshold, it is necessary to determine whether to update the data to be programmed in the initial data group to be programmed based on the execution result of the comparison operation and the preset interval threshold, and then determine the target data group to be programmed. This cycle is repeated until the target data group to be programmed corresponding to the last initial data group to be programmed is determined.

[0073] As a possible implementation of the present application, Figure 3 As shown, the step of determining a target data group to be programmed based on the execution result of the comparison operation, the initial data group to be programmed, and a preset interval threshold comprises:

[0074] a1: When the amount of data in the initial data group to be programmed is greater than the single programming amount threshold, a first judgment operation is performed, wherein the first judgment operation includes judging whether the address interval between the excess data to be programmed and the next group of initial data group to be programmed is less than the preset interval threshold. The excess data to be programmed is the data to be programmed in the initial data group to be programmed that exceeds the single programming amount threshold.

[0075] The lower group of initial data to be programmed is determined according to the sorting information of the initial data to be programmed. The lower group of initial data to be programmed is adjacent to the initial data to be programmed.

[0076] According to the execution result of the first judgment operation, it is determined whether to update the grouping of the initial data group to be burned.

[0077] a2: if the address interval between the excess data to be programmed and the next group of initial data to be programmed is greater than the preset interval threshold, determining a target data group to be programmed according to the excess data to be programmed.

[0078] a3: If the address interval between the excess data to be programmed and the next group of initial data to be programmed is less than or equal to the preset interval threshold, a new initial data group to be programmed is determined based on the excess data to be programmed and the next group of initial data to be programmed. For example, the excess data group to be programmed is combined with the next group of initial data to be programmed to form a new initial data group to be programmed.

[0079] When the data amount of the initial data group to be programmed is greater than the single programming amount threshold, the data to be programmed in the initial data group to be programmed that does not exceed the single programming amount threshold is determined as a target data group to be programmed.

[0080] In the embodiment of the present application, for the initial data group to be burned whose data volume exceeds the threshold value of the single burning amount, the data to be burned in the initial data group to be burned is truncated according to the address sequence and the threshold value of the single burning amount. After the truncation process, the initial data group to be burned is divided into the data to be burned that does not exceed the threshold value of the single burning amount and the excess data to be burned, and the data to be burned in the initial data group to be burned is sorted by address, and the data to be burned that does not exceed the threshold value of the single burning amount in the initial data group to be burned is determined as a target data group to be burned. For the excess data to be burned, by judging whether the address interval between the excess data to be burned and the next group of initial data group to be burned is less than the preset interval threshold, it can be determined whether to write the excess data to be burned in a continuous write mode, then jump to write the next group of initial data group to be burned, or to adopt the continuous write mode after merging with the next group of initial data group to be burned into a new initial data group to be burned, which can effectively save the writing time, thereby improving the burning efficiency.

[0081] As a possible implementation of the present application, Figure 4 As shown, the step of determining a target data group to be programmed based on the execution result of the comparison operation, the initial data group to be programmed, and a preset interval threshold comprises:

[0082] b1: When the data amount of the initial data group to be programmed is less than the single programming amount threshold, a second judgment operation is performed, wherein the second judgment operation includes judging whether the address interval between the initial data group to be programmed and the next initial data group to be programmed is less than a preset interval threshold.

[0083] The next group of initial data to be programmed is determined according to the sorting information of the initial data to be programmed. According to the result of the second judgment operation, it is determined whether to update the grouping of the initial data to be programmed.

[0084] b2: if the address interval between the initial data group to be programmed and the next initial data group to be programmed is greater than the preset interval threshold, determining a target data group to be programmed according to the initial data group to be programmed.

[0085] b3: if the address interval between the initial data group to be programmed and the next initial data group to be programmed is less than or equal to the preset interval threshold, determine a new initial data group to be programmed according to the initial data group to be programmed and the next initial data group to be programmed.

[0086] For example, the initial data group to be programmed is combined with the next initial data group to be programmed to form a new initial data group to be programmed.

[0087] In this embodiment, when the data amount of the initial data group to be burned is less than the single burning amount threshold, by judging whether the address interval between the excess data to be burned and the next group of initial data group to be burned is less than the preset interval threshold, it can be determined whether the initial data group to be burned and the next group of initial data group to be burned can be merged into a new initial data group to be burned and then written continuously, which can effectively save writing time and make full use of the single burning amount, thereby improving the burning efficiency.

[0088] In a possible implementation, the excess data to be burned is merged with the next group of initial data to be burned, or the initial data group to be burned is merged with the next group of initial data to be burned, by inserting a specific value (such as 0xFF), and the addresses of the data to be burned in the new initial data group to be burned obtained after the merger are continuous. Wherein, when the excess data to be burned is merged with the next group of initial data to be burned, the number of inserted specific values ​​is determined according to the number of address intervals between the excess data to be burned and the next group of initial data to be burned; when the initial data group to be burned is merged with the next group of initial data to be burned, the number of inserted specific values ​​is determined according to the number of address intervals between the initial data group to be burned and the next group of initial data to be burned. The writing of data to be burned with continuous addresses can effectively save writing time, thereby improving burning efficiency.

[0089] The preset interval threshold is used to determine the address interval between two initial data groups to be programmed. In a possible implementation, based on the chip model, the byte write time of the chip to be programmed is determined; and according to the byte write time, the preset interval threshold is determined.

[0090] When the address interval between two initial data groups to be programmed is less than or equal to the preset interval threshold, it means that the time consumed for continuous writing of the chip to be programmed is less than the time consumed for jump writing. On the contrary, when the address interval between two initial data groups to be programmed is greater than the preset interval threshold, it means that the time consumed for continuous writing of the chip to be programmed is more than the time consumed for jump writing.

[0091] For example, it is known that the sector (single burn amount threshold) of H723 is 256 bytes, that is, the first sector address is 0-255. Assuming that continuous writing takes 2us for one byte, jumping to a discontinuous, new address takes 20us. If the jump exceeds 10 bytes, the jump is faster than continuous writing; if the jump is less than or equal to 10 bytes, inserting 0xFF makes it write continuously faster, and the preset interval threshold is 10 bytes. For example, there are two segments of data. The first segment of data has 6 addresses, namely addresses 0 to 5, and the second segment of data has 4 addresses, namely addresses 8 to 11. If they are written non-continuously, it takes 20*(6+4)=200us; if they are split into two segments and written separately, it takes 2*6+20+2*4=40us; the address interval between the first segment of data and the second segment of data is less than the preset interval threshold of 10 bytes. By inserting 2 0xFF addresses to supplement the interval and merging them, and then writing them continuously, it takes 2*(6+4+4)=24us. Obviously, it takes less time and can effectively improve the burning efficiency.

[0092] In a possible implementation, when the single programming amount threshold is less than the sector size, before performing the comparison operation on each of the initial data groups to be programmed in turn, it is determined whether the data to be programmed in the initial data groups to be programmed belong to the same sector; if they do not belong to the same sector, the grouping of the data to be programmed is updated, the initial data groups to be programmed are truncated, and the data to be programmed that belong to the same sector and have continuous addresses are determined as one initial data group to be programmed.

[0093] Step S104: programming the chip to be programmed according to the target programming data group.

[0094] In this embodiment, the initial data of each layer in the chip to be programmed is erased before each programming, and after erasing, the values ​​of all addresses become 0xFF. The chip to be programmed is programmed according to a plurality of target programming data groups, and the target programming data groups are stored in a database. The number of target programming data groups is not necessarily equal to the number of initial programming data groups.

[0095] In a possible implementation, the programming mode is determined according to the model of the chip to be programmed; if it is determined according to the model that the chip to be programmed has multiple layers of programming, multiple layers of programming are enabled simultaneously; if multiple layers of programming do not exist, programming is performed in sequence from low to high addresses.

[0096] As can be seen from the above, in the embodiment of the present application, the host computer obtains the chip information of the chip to be burned, and the data to be burned, and determines the single burning amount threshold of the chip to be burned according to the chip information, and then, based on the single burning amount threshold, the data to be burned is orderly grouped, the target burning data group is determined, and then the chip to be burned is burned according to the target burning data group. The present application can ensure the high efficiency of burning by grouping the data to be burned so that each burning does not exceed the single burning amount threshold, and effectively improve the chip burning efficiency while controlling the burning cost.

[0097] As a possible implementation of the present application, the target requirement also includes a target language. Figure 5 The implementation flow of the chip data processing method provided by another embodiment of the present application is shown, and the method flow may include the following steps S501 to S504.

[0098] Step S501: Obtain chip information of the chip to be programmed and data to be programmed.

[0099] In this embodiment, the specific steps of step S501 refer to step S101 in the above embodiment and are not described again.

[0100] Step S502: Calculate the check code of the data to be burned. The check code is used to identify the data to be burned. The check code can be an MD5 value. The data to be burned includes a hex file, a bin file, etc., and the MD5 value of the data to be burned can be calculated based on the hex file and the bin file. The calculation method of the check code can refer to the existing technology and will not be repeated here.

[0101] Step S503: Verify whether there is a historical verification code in the database that is consistent with the verification code. The historical verification code is used to identify the historical target burning data group.

[0102] Step S504: If there is a historical verification code in the database that is consistent with the verification code, then read the historical target burning data group corresponding to the historical verification code.

[0103] Step S505: programming the chip to be programmed based on the historical target programming data group.

[0104] Step S506: If there is no historical verification code consistent with the verification code in the database, a single programming amount threshold of the chip to be programmed is determined according to the chip information.

[0105] Step S507: Based on the single programming amount threshold, the data to be programmed are grouped in order to determine a target programming data group. The data to be programmed in the target programming data group does not exceed the single programming amount threshold.

[0106] Step S508: programming the chip to be programmed according to the target programming data group.

[0107] In the embodiment of the present application, after obtaining the chip information and the data to be burned of the chip to be burned, the check code of the data to be burned is calculated, and the same historical check code is searched in the database based on the check code to see if there is a same historical check code. If there is no same historical check code, it means that there is no target burning data group that can be burned directly in the database, and the data to be burned is processed, and the target burning data group is determined before burning. If there is the same historical check code, it means that there is a historical target burning data group corresponding to the chip to be burned in the database. At this time, there is no need to group the changed data to be burned again, and the historical target burning data group corresponding to the check code in the database can be called, and the chip to be burned is burned directly based on the historical target burning data group, which effectively utilizes the processed data to be burned, saves data processing time, and greatly improves the efficiency of chip burning.

[0108] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0109] Corresponding to the chip data processing method described in the above embodiment, Figure 6 A structural block diagram of a chip data processing device provided in an embodiment of the present application is shown. For ease of explanation, only the parts related to the embodiment of the present application are shown.

[0110] Reference Figure 6 The chip data processing device is applied to a host computer, and the device includes: an information data acquisition unit 61, a burning amount threshold determination unit 62, a data group processing unit 63, and a chip burning unit 64, wherein:

[0111] The information data acquisition unit 61 is used to acquire chip information of the chip to be programmed and data to be programmed;

[0112] A programming amount threshold determination unit 62, used to determine a single programming amount threshold of the chip to be programmed according to the chip information;

[0113] A data grouping processing unit 63 is used to group the data to be programmed in order based on the single programming amount threshold value, and determine a target programming data group, wherein the data to be programmed in the target programming data group does not exceed the single programming amount threshold value;

[0114] The chip programming unit 64 is used to program the chip to be programmed according to the target programming data group.

[0115] As a possible implementation manner of the present application, the data group processing unit 63 includes:

[0116] A data grouping unit, used for grouping the data to be programmed according to the address, to obtain a plurality of initial data groups to be programmed, wherein each orderly arranged initial data group to be programmed is composed of data to be programmed with continuous addresses;

[0117] A comparison execution unit, configured to sequentially perform a comparison operation on each of the initial data groups to be burned, wherein the comparison operation includes comparing the data volume of the initial data group to be burned with the single burning volume threshold;

[0118] The grouping updating unit is used to determine a target data group to be burned based on the execution result of the comparison operation, the initial data group to be burned and a preset interval threshold.

[0119] As a possible implementation manner of the present application, the above-mentioned group updating unit includes:

[0120] A first judgment execution module is used for executing a first judgment operation when the amount of data in the initial data group to be burned is greater than the single burning amount threshold, wherein the first judgment operation includes judging whether the address interval between the excess data to be burned and the next group of initial data group to be burned is less than the preset interval threshold, wherein the excess data to be burned is the data to be burned in the initial data group to be burned that exceeds the single burning amount threshold;

[0121] A first grouping update module, configured to determine a target data group to be programmed according to the excess data to be programmed if an address interval between the excess data to be programmed and the next group of initial data to be programmed is greater than a preset interval threshold;

[0122] The device also includes:

[0123] The second grouping update module is used to determine a new initial data group to be programmed according to the excess data to be programmed and the next initial data group to be programmed if the address interval between the excess data to be programmed and the next initial data group to be programmed is less than or equal to the preset interval threshold.

[0124] As a possible implementation manner of the present application, the above-mentioned group updating unit includes:

[0125] A second judgment execution module is used to perform a second judgment operation when the data amount of the initial data group to be burned is less than the single burning amount threshold, and the second judgment operation includes judging whether the address interval between the initial data group to be burned and the next initial data group to be burned is less than a preset interval threshold;

[0126] A first grouping update module, configured to determine a target data group to be programmed according to the initial data group to be programmed if an address interval between the initial data group to be programmed and the next initial data group to be programmed is greater than a preset interval threshold;

[0127] The device also includes:

[0128] The second grouping update module is used to determine a new initial data group to be programmed according to the initial data group to be programmed and the next initial data group to be programmed if the address interval between the initial data group to be programmed and the next initial data group to be programmed is less than or equal to the preset interval threshold.

[0129] As a possible implementation of the present application, the chip data processing device further includes:

[0130] A write time determination unit, used to determine the byte write time of the chip to be burned based on the chip model;

[0131] The interval threshold determination unit is used to determine the preset interval threshold according to the byte writing time consumption.

[0132] As a possible implementation of the present application, the chip data processing device further includes:

[0133] A check code calculation unit, used for calculating the check code of the data to be burned;

[0134] A verification code verification unit, used to verify whether there is a historical verification code consistent with the verification code in the database;

[0135] The programming amount threshold determination unit 62 is further configured to determine a single programming amount threshold of the chip to be programmed according to the chip information if there is no historical verification code consistent with the verification code in the database.

[0136] As a possible implementation of the present application, the chip data processing device further includes:

[0137] A historical target burning reading unit, used for reading the historical target burning data group corresponding to the historical verification code if there is a historical verification code consistent with the verification code in the database;

[0138] The chip programming unit 64 is further configured to program the chip to be programmed based on the historical target programming data set.

[0139] In an embodiment of the present application, the host computer obtains chip information of the chip to be burned and the data to be burned, determines the single burning amount threshold of the chip to be burned according to the chip information, and then, based on the single burning amount threshold, orderly groups the data to be burned, determines the target burning data group, and then burns the chip to be burned according to the target burning data group. The present application can ensure the high efficiency of burning by grouping the data to be burned so that each burning does not exceed the single burning amount threshold, and effectively improves the chip burning efficiency while controlling the burning cost.

[0140] The present application also provides a computer-readable storage medium storing a computer program, wherein when the computer program is executed by a processor, Figures 1 to 5 The steps of any chip data processing method represented.

[0141] The embodiment of the present application also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and running on the processor, wherein when the processor executes the computer program, the following is achieved: Figures 1 to 5 The steps of any chip data processing method represented.

[0142] The embodiment of the present application also provides a computer program product, when the computer program product is run on a terminal device, the terminal device executes the following Figures 1 to 5 The steps of any chip data processing method represented.

[0143] Figure 7 is a schematic diagram of an electronic device provided by an embodiment of the present application. Figure 7 As shown, the electronic device 7 of this embodiment includes: a processor 70, a memory 71, and a computer program 72 stored in the memory 71 and executable on the processor 70. When the processor 70 executes the computer program 72, the steps in the above-mentioned embodiments of the chip data processing method are implemented, for example Figure 1 Steps S101 to S104 shown, or Figure 5 Alternatively, when the processor 70 executes the computer program 72, the functions of each module / unit in the above-mentioned device embodiments are realized, for example Figure 6 The functions of units 61 to 64 are shown.

[0144] The computer program 72 may be divided into one or more modules / units, which are stored in the memory 71 and executed by the processor 70 to complete the present application. The one or more modules / units may be a series of computer program instruction segments capable of completing specific functions, which are used to describe the execution process of the computer program 72 in the electronic device 7.

[0145] The processor 70 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc.

[0146] The memory 71 may be an internal storage unit of the electronic device 7, such as a hard disk or memory of the electronic device 7. The memory 71 may also be an external storage device of the electronic device 7, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the electronic device 7. Further, the memory 71 may also include both an internal storage unit and an external storage device of the electronic device 7. The memory 71 is used to store the computer program and other programs and data required by the electronic device. The memory 71 may also be used to temporarily store data that has been output or is to be output.

[0147] The technicians in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated in a processing unit, or each unit can exist physically separately, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned device can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here.

[0148] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0149] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0150] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software 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.

[0151] In the embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the modules or units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another device, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0152] The units described as separate components may or may not be physically separated, and the components shown as 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 units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0153] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0154] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, and can also be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, U disk, mobile hard disk, disk, optical disk, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electric carrier signal, telecommunication signal and software distribution medium. It should be noted that the content contained in the computer-readable medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable media do not include electric carrier signals and telecommunication signals.

[0155] The embodiments described above are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.

Claims

1. A chip data processing method, characterized in that: Applied to the host computer, including: Get the chip information of the chip to be burned and the data to be burned; Determine a single programming amount threshold of the chip to be programmed according to the chip information; Based on the single-time programming amount threshold, the data to be programmed are grouped in order to determine a target programming data group; The chip to be programmed is programmed according to the target programming data group.

2. The method according to claim 1, characterized in that The step of orderly grouping the data to be programmed based on the single programming amount threshold to determine a target programming data group includes: Sorting the data to be programmed according to the addresses and grouping them to obtain a plurality of initial data groups to be programmed, wherein each orderly arranged initial data group to be programmed is composed of data to be programmed with consecutive addresses; Performing a comparison operation on each of the initial data groups to be burned in sequence, the comparison operation comprising comparing the data amount of the initial data group to be burned with the single burning amount threshold; A target data group to be programmed is determined based on the execution result of the comparison operation, the initial data group to be programmed and a preset interval threshold.

3. The method according to claim 2, characterized in that The step of determining a target data group to be programmed based on the execution result of the comparison operation, the initial data group to be programmed, and a preset interval threshold comprises: When the amount of data in the initial data group to be programmed is greater than the single programming amount threshold, a first judgment operation is performed, wherein the first judgment operation includes judging whether the address interval between the excess data to be programmed and the next group of initial data group to be programmed is less than the preset interval threshold, wherein the excess data to be programmed is the data to be programmed in the initial data group to be programmed that exceeds the single programming amount threshold; If the address interval between the excess data to be programmed and the next group of initial data to be programmed is greater than the preset interval threshold, determining a target data group to be programmed according to the excess data to be programmed; The method further includes: if the address interval between the excess data to be programmed and the next group of initial data to be programmed is less than or equal to the preset interval threshold, determining a new initial data group to be programmed according to the excess data to be programmed and the next group of initial data to be programmed.

4. The method according to claim 2, characterized in that The step of determining a target data group to be programmed based on the execution result of the comparison operation, the initial data group to be programmed, and a preset interval threshold comprises: When the data amount of the initial data group to be programmed is less than the single programming amount threshold, performing a second judgment operation, the second judgment operation comprising judging whether the address interval between the initial data group to be programmed and the next initial data group to be programmed is less than a preset interval threshold; If the address interval between the initial data group to be programmed and the next initial data group to be programmed is greater than the preset interval threshold, determining a target data group to be programmed according to the initial data group to be programmed; The method further includes: if the address interval between the initial data group to be programmed and the next initial data group to be programmed is less than or equal to the preset interval threshold, determining a new initial data group to be programmed according to the initial data group to be programmed and the next initial data group to be programmed.

5. The method according to claim 2, characterized in that The chip information includes a chip model, and the method further includes: Based on the chip model, determining the byte writing time of the chip to be burned; The preset interval threshold is determined according to the byte writing time.

6. The method according to any one of claims 1 to 5, characterized in that: Before determining the single programming amount threshold of the chip to be programmed according to the chip information, the method further includes: Calculating the check code of the data to be burned; Verify whether there is a historical verification code consistent with the verification code in the database; The step of determining a single programming amount threshold of the chip to be programmed according to the chip information includes: If there is no historical verification code consistent with the verification code in the database, a single programming amount threshold of the chip to be programmed is determined according to the chip information.

7. The method according to claim 6, characterized in that The method further comprises: If there is a historical verification code consistent with the verification code in the database, reading the historical target burning data group corresponding to the historical verification code; The chip to be programmed is programmed based on the historical target programming data group.

8. A chip data processing device, characterized in that: Applied to the host computer, including: An information data acquisition unit, used to acquire chip information of the chip to be burned and data to be burned; A burning amount threshold determination unit, used to determine a single burning amount threshold of the chip to be burned according to the chip information; A data grouping processing unit, configured to group the data to be programmed in an orderly manner based on the single programming amount threshold value, and determine a target programming data group, wherein the data to be programmed in the target programming data group does not exceed the single programming amount threshold value; The chip programming unit is used to program the chip to be programmed according to the target programming data group.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and running on the processor, characterized in that: When the processor executes the computer program, the steps of the chip data processing method according to any one of claims 1 to 7 are implemented.

10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the steps of the chip data processing method according to any one of claims 1 to 7 are implemented.