WO2022257319A1 - Data burning method and apparatus, terminal, and storage medium - Google Patents

Data burning method and apparatus, terminal, and storage medium Download PDF

Info

Publication number
WO2022257319A1
WO2022257319A1 PCT/CN2021/124813 CN2021124813W WO2022257319A1 WO 2022257319 A1 WO2022257319 A1 WO 2022257319A1 CN 2021124813 W CN2021124813 W CN 2021124813W WO 2022257319 A1 WO2022257319 A1 WO 2022257319A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
burning
bit
programming
valid data
Prior art date
Application number
PCT/CN2021/124813
Other languages
French (fr)
Chinese (zh)
Inventor
林示麟
Original Assignee
深圳市昂科技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳市昂科技术有限公司 filed Critical 深圳市昂科技术有限公司
Publication of WO2022257319A1 publication Critical patent/WO2022257319A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools

Definitions

  • the present application relates to the technical field of chip programming, in particular to a data programming method, device, terminal and storage medium.
  • Burning refers to writing the software program into the chip or microcontroller.
  • the current chip programming scheme is mainly divided into two types, one of which is: directly store the programming file in the programming device, and the programming device directly parses the programming file to obtain the programming data, and then performs programming.
  • the storage space can be minimized, but the parsing process needs to be performed by the burning device itself, which has high requirements on the hardware of the burning device, and some burning devices need to use the smallest unit as the writing unit to write when burning.
  • the writing position is an integer multiple of the smallest unit. For example, eMMC programming needs to be written in units of 512 bytes, and the write address of the chip must be an integer multiple of 512 bytes.
  • the present application provides a data programming method, device, terminal and storage medium to solve the problem that the existing chip programming scheme has too high requirements on the hardware of the programming equipment.
  • a technical solution adopted by this application is: provide a data programming method, which is applied to the data analysis end; It is divided into at least one burning unit for storage, and each burning unit corresponds to a bit; the data corresponding to each bit is scanned in turn, and when the data corresponding to the bit is valid data, the bit is marked to obtain the storage mapping table; The marked bits correspond to valid data, and send the storage mapping table and the valid data to the programming terminal, so that the programming terminal can use the valid data set and the storage table to perform programming.
  • another technical solution adopted by this application is to provide a data burning method, which is applied to the burning terminal; Store in the storage area in turn; when receiving the burning request input by the user, build a cache area corresponding to the area to be written in the chip, the cache area includes multiple cache units, and each cache unit corresponds to a bit of the storage mapping table; read valid data corresponding to the marked bits in the storage mapping table in the storage area, and storing the valid data into the cache unit corresponding to the marked bits to obtain final programming data; and burning the final programming data into the chip.
  • the burning request includes the data start bit and data length of the burning data in the storage mapping table;
  • the data is stored in the buffer unit corresponding to the marked bit, and the final burning data is obtained, including: sequentially judging whether each bit in the data length range starting from the data start bit in the storage mapping table is the marked target bit; If so, calculate the number of marked bits between the target bit and the first bit of the storage mapping table, and confirm the target valid data corresponding to the target bit from the storage area according to the number of marked bits; data, and write the target valid data into the cache unit corresponding to the target bit to obtain the final programming data.
  • each bit in the storage mapping table starting from the data start bit and within the data length range is the marked target bit, it also includes: if not, skip the bit and confirm the next Whether a bit is marked.
  • burning the final programming data into the chip includes: when burning the final programming data into the chip, judging whether the data stored in the current programming unit is valid data; The burning unit burns to the corresponding position on the chip, and then burns the next burning unit until the last burning unit; if not, skips the current burning unit and burns the next burning unit until the last A burning unit.
  • a data programming device which includes: a division module for dividing the pre-acquired programming data according to the preset minimum chip programming unit size It is at least one burning unit, and each burning unit corresponds to one bit; the scanning module is used to sequentially scan the data corresponding to each bit, and when the data corresponding to the bit is valid data, mark the bit to obtain the storage mapping table; the data The sending module is used to sequentially extract the valid data corresponding to the marked bits, and send the storage mapping table and valid data to the programming terminal, so that the programming terminal can use the valid data set and the storage table to perform programming.
  • a data burning device which includes: a receiving module, which is used to receive the valid data and the storage mapping table sent by the data analysis end, and store the valid data in sequence to the storage area; a building module, used to construct a buffer area corresponding to the area to be written into the chip when receiving a burning request input by the user.
  • the buffer area includes multiple cache units, and each cache unit corresponds to a bit of the storage mapping table ;
  • the reading module is used to read the valid data corresponding to the marked bit in the storage mapping table in the storage area, and store the valid data to the buffer unit corresponding to the marked bit to obtain the final burning data; burning Module, used to burn the final programming data into the chip.
  • the terminal includes a processor and a memory coupled to the processor.
  • Program instructions are stored in the memory.
  • the processing The device executes the steps of any one of the above-mentioned data burning methods.
  • Another technical solution adopted by the present application is to provide a storage medium storing program files capable of implementing any one of the above data burning methods.
  • the data burning method of the present application obtains the burning data by parsing the burning file at the data analysis end, and divides the burning data into a plurality of burning units according to the minimum burning unit requirements of the chip for storage, Each burning unit corresponds to one bit, and then identify whether the data stored in each bit is valid data one by one in order, and if so, mark the bit until the last bit is identified, and then obtain the storage mapping table, and then store The valid data corresponding to the mapping table and the marked bits are sent to the programming terminal to program the chip. It only sends valid data to the programming terminal for storage instead of the entire programming data, thus reducing the need for the programming terminal. Due to the hardware requirements, the programming device with a small buffer space can also complete the programming of the chip.
  • Fig. 1 is a schematic structural view of an embodiment of the data burning system of the present invention
  • Fig. 2 is the flowchart of the first embodiment of the data burning method of the present invention
  • Fig. 3 is a schematic diagram of the burn data burn unit mark of the present invention.
  • Fig. 4 is the flowchart of the second embodiment of the data burning method of the present invention.
  • Fig. 5 is a schematic diagram of effective data reading in the present invention.
  • FIG. 6 is a schematic diagram of the functional modules of the first embodiment of the data burning device of the present invention.
  • FIG. 7 is a schematic diagram of functional modules of the second embodiment of the data burning device of the present invention.
  • FIG. 8 is a schematic structural diagram of a terminal of the present invention.
  • Fig. 9 is a schematic structural diagram of a storage medium of the present invention.
  • FIG. 1 is a schematic structural diagram of a data burning system according to an embodiment of the present invention.
  • the data burning system 1 comprises a data analyzing terminal 10 and a burning terminal 11, wherein the data analyzing terminal 10 is connected to the burning terminal 11 in communication, and the data analyzing terminal 10 comprises an analyzing module 100, a cache module 101 and Transmission module 102, the analysis file input by the user includes multiple formats, the analysis module 100 is used to analyze the burning file input by the user to obtain the burning data, and store it in the cache module 101, and the transmission module 102 is used for the burning in the cache module 101
  • the recording data is scanned according to the minimum programming unit of the preset chip, and multiple programming units and storage mapping tables with valid data are obtained, and then the multiple programming units and storage mapping tables are sent to the programming terminal 11;
  • the recording terminal 11 includes a buffering and reading module 111, a storage module 112 and a burning module 113.
  • the buffering and reading module 111 is used to receive a plurality of burning units and storage mapping tables transmitted by the data analysis terminal 10, and then convert a plurality of burning units into The recording units are sequentially stored in the storage module 112.
  • the programming module 113 reads the programming data from the storage module 112 in combination with the programming request input by the user and the storage mapping table, and then programs the chip according to the programming data. .
  • FIG. 2 is a schematic flowchart of a data burning method according to a first embodiment of the present invention. It should be noted that the method of the present invention is not limited to the flow sequence shown in FIG. 2 if substantially the same result is obtained. It should be noted that the data burning method is applied to the data analysis end, as shown in Figure 2, the data burning method includes steps:
  • Step S101 Divide the pre-acquired programming data into at least one programming unit according to the preset minimum chip programming unit size for storage, and each programming unit corresponds to one bit.
  • step S101 after analyzing the data file and obtaining the programming data, the data analysis terminal stores the programming data in the pre-built buffer area of the analysis terminal, which is equal in size to the allowable write-in area of the chip.
  • the total size of the recorded data and the minimum programming unit are used to calculate the number of bytes required to store the programmed data.
  • the calculation formula is:
  • BitMapBytes is the number of bytes
  • DevSize is the total size of the programming data
  • SectorSize is the minimum programming unit
  • the minimum programming unit can be obtained from the chip manual, or set by the user
  • Ceiling refers to rounding up, for example , when the calculation result in brackets is 1.2, round up to get the final result of 2.
  • a byte includes 8 bits, assuming that the total size of the programming data is 127M, and the minimum programming unit is 1M, substitute the above formula for calculation: That is to say, 16 bytes are needed to store the programming data, that is, to build a 16-byte parser cache area.
  • the programming data After storing the programming data in the cache area of the analysis end, divide the programming data into at least one programming unit according to the minimum programming unit, for example, when the total size of the programming data is 127M and the minimum programming unit is 1M, then divide There are 127 programming units, and each programming unit corresponds to one bit.
  • Step S102 Scan the data corresponding to each bit in turn, and when the data corresponding to the bit is valid data, mark the bit to obtain the storage mapping table.
  • step S102 scan the data corresponding to each bit in the programming data in turn, and judge whether the data corresponding to each bit is the initial default value or valid data, if the initial default value ( If it is a blank block in the figure), the corresponding bit is not marked, and if it is valid data (shaded block in the figure), the corresponding bit is marked, so as to obtain a storage mapping table in which each marked bit is recorded.
  • Step S103 sequentially extract valid data corresponding to the marked bits, and send the storage mapping table and the valid data to the programming terminal, so that the programming terminal can use the valid data set and the storage table for programming.
  • step S103 according to the storage mapping table, each bit of the cache area of the analysis end is traversed in turn.
  • the data corresponding to the current bit recorded in the storage mapping table is the default value, this bit is skipped.
  • the data is valid data
  • the valid data is extracted, and all valid data are sequentially extracted according to the storage mapping table, and then all valid data and the storage mapping table are sent to the programming terminal, so that the programming terminal can use the valid data set and storage table to burn.
  • the programming data is divided into multiple programming units according to the minimum programming unit requirements of the chip for storage.
  • the recording unit corresponds to a bit, and then identify whether the data stored in each bit is valid data one by one in order, and if so, mark the bit until the last bit is identified, obtain the storage mapping table, and then store the mapping table and
  • the valid data corresponding to the marked bits is sent to the programming terminal to program the chip, which reduces the requirements for the programming terminal hardware by only sending valid data to the programming terminal for storage instead of the entire programming data , so that the programming device with a small buffer space can also complete the programming of the chip.
  • FIG. 4 is a schematic flowchart of a data burning method according to a second embodiment of the present invention. It should be noted that, if substantially the same result is obtained, the method of the present invention is not limited to the flow sequence shown in FIG. 4 . It should be noted that the data burning method is applied to the burning terminal, as shown in Figure 4, the data burning method includes steps:
  • Step S201 Receive the valid data and the storage mapping table sent by the data analysis end, and store the valid data in the storage area in sequence.
  • the programming terminal includes a data storage module
  • the data storage module may be a DDR memory of the programming terminal or an external Flash, which is not limited in this embodiment.
  • Step S202 When a programming request input by the user is received, a buffer area corresponding to the area to be written in the chip is constructed.
  • the buffer area includes a plurality of buffer units, and each buffer unit corresponds to a bit of the storage mapping table.
  • step S202 after receiving the programming request input by the user, a buffer area corresponding to the area to be written in the chip is constructed in combination with the storage mapping table, and each buffer unit in the buffer area corresponds to a bit of the storage mapping table.
  • Step S203 Read the valid data corresponding to the marked bits in the storage mapping table in the storage area, and store the valid data in the cache unit corresponding to the marked bits to obtain the final programming data.
  • step S203 combined with the storage mapping table, the stored valid data is read from the storage area, and then according to the position of the bit corresponding to the valid data in the storage mapping table, the valid data is filled into the corresponding cache unit, thereby obtaining a complete The final burning data.
  • the burning request includes the data start bit and the data length of the burning data in the storage mapping table
  • the step S203 specifically includes:
  • M is the data start bit
  • N is the data length, starting from M, scan each bit in the range of M+N-1 in turn; when scanning to M+A bits is
  • the target bit is marked, calculate the number X of marked bits between the first bit and M+A bits in the storage mapping table, and then query the X+1th valid data from the storage area according to the number X , and read the X+1th valid data, and then write the X+1th valid data to the cache unit corresponding to the M+A bit; when the currently scanned bit is not marked, jump Pass the current bit and start to confirm whether the next bit is marked. After confirming the last bit, get the final programming data.
  • the access data table between the target valid data and cache units.
  • Step S204 Burn the final programming data into the chip.
  • step S204 specifically includes:
  • the final programming data is sequentially programmed according to the smallest programming unit.
  • the data corresponding to the programming unit is valid data or default data. data.
  • the current programming unit is burned to the corresponding position on the chip, and then the next programming unit is programmed.
  • the current programming unit is directly skipped and the programming is not performed, thereby saving the programming time and improving the programming efficiency.
  • the data burning method of the second embodiment of the present invention reads the valid data based on the storage mapping table and the burning request input by the user after receiving the valid data and the storage mapping table, and writes the valid data into the corresponding In the cache unit, the complete programming data is obtained, and then burned to the chip according to the complete programming data.
  • the storage area on the burning terminal stores the effective data in the burning data, which greatly reduces the occupied storage space, thus reducing the hardware requirements.
  • FIG. 6 shows a schematic diagram of the functional modules of the data burning device according to the first embodiment of the present invention.
  • the data burning device 60 includes a dividing module 61 , a scanning module 62 and a data delivery module 63 .
  • the dividing module 61 is used to divide the pre-acquired programming data into at least one programming unit according to the preset chip minimum programming unit size, and each programming unit corresponds to one bit;
  • the scanning module 62 is used to scan the data corresponding to each bit in turn, and when the data corresponding to the bit is valid data, mark the bit to obtain the storage mapping table;
  • the data sending module 63 is used to sequentially extract the valid data corresponding to the marked bits, and send the storage mapping table and valid data to the programming terminal, so that the programming terminal can use the valid data set and the storage table to perform programming.
  • FIG. 7 shows a schematic diagram of functional modules of a data burning device according to a second embodiment of the present invention.
  • the data burning device 70 includes a receiving module 71 , a building module 72 , a reading module 73 and a burning module 74 .
  • the receiving module 71 is used to receive the valid data and the storage mapping table sent by the data parsing end, and store the valid data in the storage area in sequence;
  • the construction module 72 is configured to construct a cache area corresponding to the area to be written into the chip when receiving a burning request input by the user, the cache area includes a plurality of cache units, and each cache unit corresponds to a bit of the storage mapping table;
  • the reading module 73 is used to read the valid data corresponding to the marked bit in the storage mapping table in the storage area, and store the valid data to the cache unit corresponding to the marked bit to obtain the final burning data;
  • the burning module 74 is used for burning the final burning data into the chip.
  • the burning request includes the data start bit and the data length of the burning data in the storage mapping table; the reading module 73 executes reading the effective data corresponding to the bit marked in the storage mapping table in the reading storage area, and
  • the operation of storing the valid data into the buffer unit corresponding to the marked bit to obtain the final burning data can also be: sequentially judge whether each bit in the data length range starting from the data start bit in the storage mapping table is Marked target bits; if so, calculate the number of marked bits between the target bit and the first bit of the storage mapping table, and confirm from the storage area that the target corresponding to the target bit is valid according to the number of marked bits
  • Data read the target valid data, and write the target valid data into the cache unit corresponding to the target bit to obtain the final programming data.
  • each bit in the data length range is a marked target bit starting from the data start bit in the storage mapping table, it is also used for: if the bit is not marked, then Skip bits and check if the next bit is marked.
  • the reading module 73 after the reading module 73 obtains the final programming data, it is further configured to: record the access data table between the target valid data and the cache unit.
  • the burning module 74 performs the operation of burning the final burning data into the chip, and may also be: when burning the final burning data into the chip, it is judged whether the data stored in the current burning unit is valid data ; If yes, burn the current programming unit to the corresponding position on the chip, and then burn the next programming unit until the last programming unit; if not, skip the current programming unit and burn the next one Programming units until the last programming unit.
  • each embodiment in this specification is described in a progressive manner, and each embodiment focuses on the differences from other embodiments.
  • the same and similar parts in each embodiment refer to each other, that is, Can.
  • the description is relatively simple, and for related parts, please refer to part of the description of the method embodiments.
  • FIG. 8 is a schematic structural diagram of a terminal according to an embodiment of the present invention.
  • the terminal 80 includes a processor 81 and a memory 82 coupled to the processor 81.
  • Program instructions are stored in the memory 82.
  • the processor 81 executes any of the above implementations. The steps of the data burning method described in the example.
  • the processor 81 may also be referred to as a CPU (Central Processing Unit, central processing unit).
  • the processor 81 may be an integrated circuit chip with signal processing capability.
  • the processor 81 can also be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components .
  • DSP digital signal processor
  • ASIC application-specific integrated circuit
  • FPGA field programmable gate array
  • a general-purpose processor may be a microprocessor, or the processor may be any conventional processor, and the like.
  • FIG. 9 is a schematic structural diagram of a storage medium according to an embodiment of the present invention.
  • the storage medium in the embodiment of the present invention stores a program file 91 capable of realizing all the above-mentioned methods, wherein the program file 91 can be stored in the above-mentioned storage medium in the form of a software product, and includes several instructions to make a computer device (which can It is a personal computer, a server, or a network device, etc.) or a processor (processor) that executes all or part of the steps of the methods described in the various embodiments of the present application.
  • a computer device which can It is a personal computer, a server, or a network device, etc.
  • processor processor
  • the aforementioned storage media include: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disc, etc., which can store program codes. , or terminal devices such as computers, servers, mobile phones, and tablets.
  • the disclosed terminal, device and method may be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components can be combined or integrated. to another system, or some features may be ignored, or not implemented.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, each unit may exist separately physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units. The above is only the implementation mode of this application, and does not limit the scope of patents of this application. Any equivalent structure or equivalent process transformation made by using the contents of this application specification and drawings, or directly or indirectly used in other related technical fields, All are included in the scope of patent protection of the present application in the same way.
  • connection it may be a fixed connection or a detachable connection, or integrated; it may be a mechanical connection or an electrical connection; it may be a direct connection or an indirect connection through an intermediary , or it can be the internal communication of two elements or the interaction relationship between two elements. Therefore, unless otherwise clearly defined in this specification, those skilled in the art can understand the specific meanings of the above terms in the present invention according to specific situations.
  • first or second used in this specification to refer to numbers or ordinal numbers are used for descriptive purposes only, and should not be interpreted as express or implied relative importance or implied indications The number of technical characteristics. Thus, a feature defined as “first” or “second” may explicitly or implicitly include at least one of such features. In the description of this specification, “plurality” means at least two, such as two, three or more, etc., unless otherwise specifically defined.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Read Only Memory (AREA)

Abstract

A data burning method and apparatus, a terminal, and a storage medium. The method comprises: dividing pre-acquired burning data into at least one burning unit according to a preset chip minimum burning unit size for storage, each burning unit corresponding to one bit (S101); scanning the data corresponding to each bit in sequence, and when the data corresponding to the bit is valid data, marking the bit to obtain a storage mapping table (S102); and extracting the valid data corresponding to the marked bits in sequence, and sending the storage mapping table and the valid data to a burning terminal, so that the burning terminal performs burning by using a valid data set and the storage table (S103). According to the method, after burning data is split into minimum burning units, only minimum burning units are extracted and transmitted to a burning terminal, so that the situation that burning data is too large and occupies a large amount of memory is avoided, and hardware requirements for a burning terminal are reduced.

Description

数据烧录方法、装置、终端及存储介质Data burning method, device, terminal and storage medium 技术领域technical field
本申请涉及芯片烧录技术领域,特别是涉及一种数据烧录方法、装置、终端及存储介质。The present application relates to the technical field of chip programming, in particular to a data programming method, device, terminal and storage medium.
背景技术Background technique
烧录是指将软件程序写入芯片或是单片机。目前的芯片烧录方案主要分为两种,其中一种是:将烧录档案直接存储至烧录设备中,由烧录设备直接解析烧录档案得到烧录数据,再进行烧录,该方案可以达到存储空间最小化,但是解析过程需要由烧录设备自身执行,对烧录设备硬件要求较高,并且,部分烧录设备在烧录时,需要以最小单元为写入单元进行写入,且写入的位置为最小单元的整数倍,例如eMMC烧录,需要以512字节为单元进行写入,而且芯片的写入地址要为512字节的整数倍,这样会使得每次读取缓存区域的数据后均需要进行数据的补齐和地址的对齐,导致烧录数据读取效率低下;另一种方案是通过在计算机终端上写入与芯片待写入区域对等大小的缓存,计算机终端解析烧录档案后将其存储至缓存,然后将缓存中的烧录数据全部传输至烧录设备中,该种方式不存在方案一中的数据补齐和地址对齐的问题,但是,其对烧录设备的缓存空间大小有严格要求,必须要大于芯片的待写入区域的大小,导致硬件成本上升。Burning refers to writing the software program into the chip or microcontroller. The current chip programming scheme is mainly divided into two types, one of which is: directly store the programming file in the programming device, and the programming device directly parses the programming file to obtain the programming data, and then performs programming. The storage space can be minimized, but the parsing process needs to be performed by the burning device itself, which has high requirements on the hardware of the burning device, and some burning devices need to use the smallest unit as the writing unit to write when burning. And the writing position is an integer multiple of the smallest unit. For example, eMMC programming needs to be written in units of 512 bytes, and the write address of the chip must be an integer multiple of 512 bytes. This will make each read After the data in the cache area needs to be filled with data and aligned with the address, resulting in low reading efficiency of the programming data; another solution is to write a cache of the same size as the area to be written in the chip on the computer terminal, The computer terminal parses the burning file and stores it in the cache, and then transfers all the burning data in the cache to the burning device. This method does not have the problems of data completion and address alignment in solution 1, but other There are strict requirements on the size of the buffer space of the programming device, which must be larger than the size of the area to be written in the chip, resulting in an increase in hardware costs.
发明内容Contents of the invention
本申请提供一种数据烧录方法、装置、终端及存储介质,以解决现有的芯片烧录方案对烧录设备硬件要求过高的问题。The present application provides a data programming method, device, terminal and storage medium to solve the problem that the existing chip programming scheme has too high requirements on the hardware of the programming equipment.
为了解决上述问题,本申请采用的一个技术方案是:提供一种数据烧录方法,其应用于数据解析端;方法包括:将预先获取到的烧录数据按预设的芯片最小烧录单元大小划分为至少一个烧录单元进行存储,每个烧录 单元对应一个比特;依次扫描每个比特对应的数据,且当比特对应的数据是有效数据时,标记比特,得到存储映射表;依次提取被标记的比特对应的有效数据,并将存储映射表和有效数据发送至烧录终端,以供烧录终端利用有效数据集和存储表进行烧录。In order to solve the above problems, a technical solution adopted by this application is: provide a data programming method, which is applied to the data analysis end; It is divided into at least one burning unit for storage, and each burning unit corresponds to a bit; the data corresponding to each bit is scanned in turn, and when the data corresponding to the bit is valid data, the bit is marked to obtain the storage mapping table; The marked bits correspond to valid data, and send the storage mapping table and the valid data to the programming terminal, so that the programming terminal can use the valid data set and the storage table to perform programming.
为了解决上述问题,本申请采用的另一个技术方案是:提供一种数据烧录方法,其应用于烧录终端;方法包括:接收数据解析端发送的有效数据和存储映射表,并将有效数据依次存储至存储区;接收到用户输入的烧录请求时,构建与芯片待写入区域对应的缓存区,缓存区包括多个缓存单元,每个缓存单元对应存储映射表的一个比特;读取存储区中与存储映射表中被标记的比特对应的有效数据,并将有效数据存储至与被标记的比特对应的缓存单元,得到最终烧录数据;将最终烧录数据烧录至芯片中。In order to solve the above problems, another technical solution adopted by this application is to provide a data burning method, which is applied to the burning terminal; Store in the storage area in turn; when receiving the burning request input by the user, build a cache area corresponding to the area to be written in the chip, the cache area includes multiple cache units, and each cache unit corresponds to a bit of the storage mapping table; read valid data corresponding to the marked bits in the storage mapping table in the storage area, and storing the valid data into the cache unit corresponding to the marked bits to obtain final programming data; and burning the final programming data into the chip.
作为本申请的进一步改进,烧录请求包括烧录数据在存储映射表中的数据起始位和数据长度;读取存储区中与存储映射表中被标记的比特对应的有效数据,并将有效数据存储至与被标记的比特对应的缓存单元,得到最终烧录数据,包括:依次判断存储映射表中从数据起始位开始,数据长度范围内的每个比特是否为被标记的目标比特;若是,则计算目标比特与存储映射表的首个比特之间被标记的比特的个数,并根据被标记的比特的个数从存储区确认与目标比特对应的目标有效数据;读取目标有效数据,并将目标有效数据写入与目标比特对应的缓存单元,得到最终烧录数据。As a further improvement of the present application, the burning request includes the data start bit and data length of the burning data in the storage mapping table; The data is stored in the buffer unit corresponding to the marked bit, and the final burning data is obtained, including: sequentially judging whether each bit in the data length range starting from the data start bit in the storage mapping table is the marked target bit; If so, calculate the number of marked bits between the target bit and the first bit of the storage mapping table, and confirm the target valid data corresponding to the target bit from the storage area according to the number of marked bits; data, and write the target valid data into the cache unit corresponding to the target bit to obtain the final programming data.
作为本申请的进一步改进,依次判断存储映射表中从数据起始位开始,数据长度范围内的每个比特是否为被标记的目标比特之后,还包括:若否,则跳过比特并确认下一个比特是否被标记。As a further improvement of the present application, after sequentially judging whether each bit in the storage mapping table starting from the data start bit and within the data length range is the marked target bit, it also includes: if not, skip the bit and confirm the next Whether a bit is marked.
作为本申请的进一步改进,得到最终烧录数据之后,还包括:记录目标有效数据与缓存单元之间的访问数据表。As a further improvement of the present application, after obtaining the final programming data, it further includes: recording the access data table between the target valid data and the cache unit.
作为本申请的进一步改进,将最终烧录数据烧录至芯片中,包括:在将最终烧录数据烧录至芯片时,判断当前烧录单元存储的数据是否为有效数据;若是,则将当前烧录单元烧录至芯片上对应的位置,再烧录下一个烧录单元,直至最后一个烧录单元;若否,则跳过当前烧录单元,并烧录下一个烧录单元,直至最后一个烧录单元。As a further improvement of the present application, burning the final programming data into the chip includes: when burning the final programming data into the chip, judging whether the data stored in the current programming unit is valid data; The burning unit burns to the corresponding position on the chip, and then burns the next burning unit until the last burning unit; if not, skips the current burning unit and burns the next burning unit until the last A burning unit.
为了解决上述问题,本申请采用的又一个技术方案是:提供一种数据烧录装置,其包括:划分模块,用于将预先获取到的烧录数据按预设的芯片最小烧录单元大小划分为至少一个烧录单元,每个烧录单元对应一个比特;扫描模块,用于依次扫描每个比特对应的数据,且当比特对应的数据是有效数据时,标记比特,得到存储映射表;数据下发模块,用于依次提取被标记的比特对应的有效数据,并将存储映射表和有效数据发送至烧录终端,以供烧录终端利用有效数据集和存储表进行烧录。In order to solve the above problems, another technical solution adopted by the present application is to provide a data programming device, which includes: a division module for dividing the pre-acquired programming data according to the preset minimum chip programming unit size It is at least one burning unit, and each burning unit corresponds to one bit; the scanning module is used to sequentially scan the data corresponding to each bit, and when the data corresponding to the bit is valid data, mark the bit to obtain the storage mapping table; the data The sending module is used to sequentially extract the valid data corresponding to the marked bits, and send the storage mapping table and valid data to the programming terminal, so that the programming terminal can use the valid data set and the storage table to perform programming.
为了解决上述问题,本申请采用的再一个技术方案是:提供一种数据烧录装置,其包括:接收模块,用于接收数据解析端发送的有效数据和存储映射表,并将有效数据依次存储至存储区;构建模块,用于接收到用户输入的烧录请求时,构建与芯片待写入区域对应的缓存区,缓存区包括多个缓存单元,每个缓存单元对应存储映射表的一个比特;读取模块,用于读取存储区中与存储映射表中被标记的比特对应的有效数据,并将有效数据存储至与被标记的比特对应的缓存单元,得到最终烧录数据;烧录模块,用于将最终烧录数据烧录至芯片中。In order to solve the above problems, another technical solution adopted by the present application is to provide a data burning device, which includes: a receiving module, which is used to receive the valid data and the storage mapping table sent by the data analysis end, and store the valid data in sequence to the storage area; a building module, used to construct a buffer area corresponding to the area to be written into the chip when receiving a burning request input by the user. The buffer area includes multiple cache units, and each cache unit corresponds to a bit of the storage mapping table ; The reading module is used to read the valid data corresponding to the marked bit in the storage mapping table in the storage area, and store the valid data to the buffer unit corresponding to the marked bit to obtain the final burning data; burning Module, used to burn the final programming data into the chip.
为了解决上述问题,本申请采用的再一个技术方案是:提供一种终端,终端包括处理器、与处理器耦接的存储器,存储器中存储有程序指令,程序指令被处理器执行时,使得处理器执行如上述中任一项的数据烧录方法的步骤。In order to solve the above problems, another technical solution adopted by this application is to provide a terminal. The terminal includes a processor and a memory coupled to the processor. Program instructions are stored in the memory. When the program instructions are executed by the processor, the processing The device executes the steps of any one of the above-mentioned data burning methods.
为了解决上述问题,本申请采用的再一个技术方案是:提供一种存储介质,存储有能够实现如上述中任一项的数据烧录方法的程序文件。In order to solve the above problems, another technical solution adopted by the present application is to provide a storage medium storing program files capable of implementing any one of the above data burning methods.
本申请的有益效果是:本申请的数据烧录方法通过在数据解析端解析烧录档案得到烧录数据后,将烧录数据按芯片最小烧录单元要求划分为多个烧录单元进行存储,每个烧录单元对应一个比特,然后按照顺序逐个识别每个比特中存储的数据是否为有效数据,若是,则标记该比特,直至最后一个比特被识别完成之后,得到存储映射表,然后将存储映射表和被标记的比特对应的有效数据发送至烧录终端以对芯片进行烧录,其通过仅发送有效数据至烧录终端进行存储,而不是整个烧录数据,从而降低了对烧录终端硬件的要求,使得较小缓存空间的烧录设备也能够完成对芯片的烧 录。The beneficial effects of the present application are: the data burning method of the present application obtains the burning data by parsing the burning file at the data analysis end, and divides the burning data into a plurality of burning units according to the minimum burning unit requirements of the chip for storage, Each burning unit corresponds to one bit, and then identify whether the data stored in each bit is valid data one by one in order, and if so, mark the bit until the last bit is identified, and then obtain the storage mapping table, and then store The valid data corresponding to the mapping table and the marked bits are sent to the programming terminal to program the chip. It only sends valid data to the programming terminal for storage instead of the entire programming data, thus reducing the need for the programming terminal. Due to the hardware requirements, the programming device with a small buffer space can also complete the programming of the chip.
附图说明Description of drawings
通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:The above and other objects, features and advantages of exemplary embodiments of the present disclosure will become readily understood by reading the following detailed description with reference to the accompanying drawings. In the drawings, several embodiments of the present disclosure are shown by way of illustration and not limitation, and the same or corresponding reference numerals indicate the same or corresponding parts, wherein:
图1是本发明数据烧录系统实施例的结构示意图;Fig. 1 is a schematic structural view of an embodiment of the data burning system of the present invention;
图2是本发明数据烧录方法第一实施例的流程图;Fig. 2 is the flowchart of the first embodiment of the data burning method of the present invention;
图3是本发明烧录数据烧录单元标记的示意图;Fig. 3 is a schematic diagram of the burn data burn unit mark of the present invention;
图4是本发明数据烧录方法第二实施例的流程图;Fig. 4 is the flowchart of the second embodiment of the data burning method of the present invention;
图5是本发明有效数据读取的示意图;Fig. 5 is a schematic diagram of effective data reading in the present invention;
图6是本发明数据烧录装置第一实施例的功能模块示意图;6 is a schematic diagram of the functional modules of the first embodiment of the data burning device of the present invention;
图7是本发明数据烧录装置第二实施例的功能模块示意图;7 is a schematic diagram of functional modules of the second embodiment of the data burning device of the present invention;
图8是本发明终端的结构示意图;FIG. 8 is a schematic structural diagram of a terminal of the present invention;
图9是本发明存储介质的结构示意图。Fig. 9 is a schematic structural diagram of a storage medium of the present invention.
具体实施方式Detailed ways
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。The following will clearly and completely describe the technical solutions in the embodiments of the present disclosure with reference to the accompanying drawings in the embodiments of the present disclosure. Apparently, the described embodiments are part of the embodiments of the present disclosure, not all of them. Based on the embodiments in the present disclosure, all other embodiments obtained by those skilled in the art without making creative efforts belong to the protection scope of the present disclosure.
下面结合附图来详细描述本公开的具体实施方式。Specific embodiments of the present disclosure will be described in detail below in conjunction with the accompanying drawings.
图1是本发明实施例的数据烧录系统的结构示意图。如图1所示,该数据烧录系统1包括数据解析端10和烧录终端11,其中,数据解析端10与烧录终端11通信连接,数据解析端10包括解析模块100、缓存模块101和传输模块102,用户输入的解析档案包括多种格式,解析模块100用于解析用户输入的烧录档案得到烧录数据,并存储至缓存模块101,传输模块102用于对缓存模块101中的烧录数据按预设的芯片的最小烧录单元进 行扫描,得到存储有有效数据的多个烧录单元和存储映射表,再将多个烧录单元和存储映射表发送至烧录终端11;烧录终端11包括缓存和读取模块111、存储模块112和烧录模块113,缓存和读取模块111用于接收数据解析端10传输的多个烧录单元和存储映射表,再将多个烧录单元依次存储至存储模块112,当需要烧录芯片时,烧录模块113结合用户输入的烧录请求和存储映射表从存储模块112中读取烧录数据,再根据烧录数据烧录芯片。FIG. 1 is a schematic structural diagram of a data burning system according to an embodiment of the present invention. As shown in Figure 1, the data burning system 1 comprises a data analyzing terminal 10 and a burning terminal 11, wherein the data analyzing terminal 10 is connected to the burning terminal 11 in communication, and the data analyzing terminal 10 comprises an analyzing module 100, a cache module 101 and Transmission module 102, the analysis file input by the user includes multiple formats, the analysis module 100 is used to analyze the burning file input by the user to obtain the burning data, and store it in the cache module 101, and the transmission module 102 is used for the burning in the cache module 101 The recording data is scanned according to the minimum programming unit of the preset chip, and multiple programming units and storage mapping tables with valid data are obtained, and then the multiple programming units and storage mapping tables are sent to the programming terminal 11; The recording terminal 11 includes a buffering and reading module 111, a storage module 112 and a burning module 113. The buffering and reading module 111 is used to receive a plurality of burning units and storage mapping tables transmitted by the data analysis terminal 10, and then convert a plurality of burning units into The recording units are sequentially stored in the storage module 112. When the chip needs to be programmed, the programming module 113 reads the programming data from the storage module 112 in combination with the programming request input by the user and the storage mapping table, and then programs the chip according to the programming data. .
图2是本发明第一实施例的数据烧录方法的流程示意图。需注意的是,若有实质上相同的结果,本发明的方法并不以图2所示的流程顺序为限。需要说明的是,该数据烧录方法应用于数据解析端,如图2所示,该数据烧录方法包括步骤:FIG. 2 is a schematic flowchart of a data burning method according to a first embodiment of the present invention. It should be noted that the method of the present invention is not limited to the flow sequence shown in FIG. 2 if substantially the same result is obtained. It should be noted that the data burning method is applied to the data analysis end, as shown in Figure 2, the data burning method includes steps:
步骤S101:将预先获取到的烧录数据按预设的芯片最小烧录单元大小划分为至少一个烧录单元进行存储,每个烧录单元对应一个比特。Step S101: Divide the pre-acquired programming data into at least one programming unit according to the preset minimum chip programming unit size for storage, and each programming unit corresponds to one bit.
在步骤S101中,数据解析端在解析数据档案得到烧录数据后,将烧录数据存储至预先构建的解析端缓存区域,该解析端缓存区域与芯片允许写入区域大小对等,具体通过烧录数据总大小和最小烧录单元计算存储烧录数据所需的字节数,计算公式为:In step S101, after analyzing the data file and obtaining the programming data, the data analysis terminal stores the programming data in the pre-built buffer area of the analysis terminal, which is equal in size to the allowable write-in area of the chip. The total size of the recorded data and the minimum programming unit are used to calculate the number of bytes required to store the programmed data. The calculation formula is:
Figure PCTCN2021124813-appb-000001
Figure PCTCN2021124813-appb-000001
其中,BitMapBytes为字节数,DevSize为烧录数据总大小,SectorSize为最小烧录单元,该最小烧录单元可从芯片手册获取,或者是由用户自行设定,Ceiling是指向上取整,例如,当括号内的计算结果为1.2时,向上取整得到最终结果为2。Among them, BitMapBytes is the number of bytes, DevSize is the total size of the programming data, SectorSize is the minimum programming unit, the minimum programming unit can be obtained from the chip manual, or set by the user, Ceiling refers to rounding up, for example , when the calculation result in brackets is 1.2, round up to get the final result of 2.
具体地,一个字节包括8个比特,假设烧录数据总大小为127M,最小烧录单元为1M,代入上述公式计算:
Figure PCTCN2021124813-appb-000002
即需要16个字节存储烧录数据,即构建16个字节大小的解析端缓存区域。
Specifically, a byte includes 8 bits, assuming that the total size of the programming data is 127M, and the minimum programming unit is 1M, substitute the above formula for calculation:
Figure PCTCN2021124813-appb-000002
That is to say, 16 bytes are needed to store the programming data, that is, to build a 16-byte parser cache area.
在将烧录数据存储至解析端缓存区域后,根据最小烧录单元将烧录数据划分为至少一个烧录单元,例如,烧录数据总大小为127M,最小烧录单元为1M时,则划分为127个烧录单元,每个烧录单元对应一个比特。After storing the programming data in the cache area of the analysis end, divide the programming data into at least one programming unit according to the minimum programming unit, for example, when the total size of the programming data is 127M and the minimum programming unit is 1M, then divide There are 127 programming units, and each programming unit corresponds to one bit.
步骤S102:依次扫描每个比特对应的数据,且当比特对应的数据是有 效数据时,标记比特,得到存储映射表。Step S102: Scan the data corresponding to each bit in turn, and when the data corresponding to the bit is valid data, mark the bit to obtain the storage mapping table.
需要理解的是,烧录数据被划分为多个烧录单元,每个烧录单元对应一个比特,而多个比特中可能会有很多空白值数据。因此,在步骤S102中,请一并参阅图3,依次扫描烧录数据中的每个比特所对应的数据,判断每个比特对应的数据是初始的默认值还是有效数据,若是初始默认值(图中空白区块),则不标记对应的比特,若是有效数据(图中阴影区块),则标记对应的比特,从而得到记录有各个被标记的比特的存储映射表。It should be understood that the programming data is divided into multiple programming units, and each programming unit corresponds to one bit, and there may be a lot of blank value data in the multiple bits. Therefore, in step S102, please refer to FIG. 3 together, scan the data corresponding to each bit in the programming data in turn, and judge whether the data corresponding to each bit is the initial default value or valid data, if the initial default value ( If it is a blank block in the figure), the corresponding bit is not marked, and if it is valid data (shaded block in the figure), the corresponding bit is marked, so as to obtain a storage mapping table in which each marked bit is recorded.
步骤S103:依次提取被标记的比特对应的有效数据,并将存储映射表和有效数据发送至烧录终端,以供烧录终端利用有效数据集和存储表进行烧录。Step S103: sequentially extract valid data corresponding to the marked bits, and send the storage mapping table and the valid data to the programming terminal, so that the programming terminal can use the valid data set and the storage table for programming.
在步骤S103中,根据存储映射表,依次遍历解析端缓存区域的每个比特,当存储映射表中记录的当前比特对应的数据为默认值时,跳过该比特,当记录的当前比特对应的数据为有效数据时,提取该有效数据,从而根据存储映射表依次提取出所有有效数据,再将所有有效数据和存储映射表发送至烧录终端,以供烧录终端利用有效数据集和存储表进行烧录。In step S103, according to the storage mapping table, each bit of the cache area of the analysis end is traversed in turn. When the data corresponding to the current bit recorded in the storage mapping table is the default value, this bit is skipped. When the data is valid data, the valid data is extracted, and all valid data are sequentially extracted according to the storage mapping table, and then all valid data and the storage mapping table are sent to the programming terminal, so that the programming terminal can use the valid data set and storage table to burn.
本发明第一实施例的数据烧录方法通过在数据解析端解析烧录档案得到烧录数据后,将烧录数据按芯片最小烧录单元要求划分为多个烧录单元进行存储,每个烧录单元对应一个比特,然后按照顺序逐个识别每个比特中存储的数据是否为有效数据,若是,则标记该比特,直至最后一个比特被识别完成之后,得到存储映射表,然后将存储映射表和被标记的比特对应的有效数据发送至烧录终端以对芯片进行烧录,其通过仅发送有效数据至烧录终端进行存储,而不是整个烧录数据,从而降低了对烧录终端硬件的要求,使得较小缓存空间的烧录设备也能够完成对芯片的烧录。In the data programming method of the first embodiment of the present invention, after the programming data is obtained by analyzing the programming file at the data analysis terminal, the programming data is divided into multiple programming units according to the minimum programming unit requirements of the chip for storage. The recording unit corresponds to a bit, and then identify whether the data stored in each bit is valid data one by one in order, and if so, mark the bit until the last bit is identified, obtain the storage mapping table, and then store the mapping table and The valid data corresponding to the marked bits is sent to the programming terminal to program the chip, which reduces the requirements for the programming terminal hardware by only sending valid data to the programming terminal for storage instead of the entire programming data , so that the programming device with a small buffer space can also complete the programming of the chip.
图4是本发明第二实施例的数据烧录方法的流程示意图。需注意的是,若有实质上相同的结果,本发明的方法并不以图4所示的流程顺序为限。需要说明的是,该数据烧录方法应用于烧录终端,如图4所示,该数据烧录方法包括步骤:FIG. 4 is a schematic flowchart of a data burning method according to a second embodiment of the present invention. It should be noted that, if substantially the same result is obtained, the method of the present invention is not limited to the flow sequence shown in FIG. 4 . It should be noted that the data burning method is applied to the burning terminal, as shown in Figure 4, the data burning method includes steps:
步骤S201:接收数据解析端发送的有效数据和存储映射表,并将有效数据依次存储至存储区。Step S201: Receive the valid data and the storage mapping table sent by the data analysis end, and store the valid data in the storage area in sequence.
需要说明的是,烧录终端包括数据存储模块,该数据存储模块可以为烧录终端的DDR内存,也可以时候外部Flash,本实施例不做限制。It should be noted that the programming terminal includes a data storage module, and the data storage module may be a DDR memory of the programming terminal or an external Flash, which is not limited in this embodiment.
步骤S202:接收到用户输入的烧录请求时,构建与芯片待写入区域对应的缓存区,缓存区包括多个缓存单元,每个缓存单元对应存储映射表的一个比特。Step S202: When a programming request input by the user is received, a buffer area corresponding to the area to be written in the chip is constructed. The buffer area includes a plurality of buffer units, and each buffer unit corresponds to a bit of the storage mapping table.
在步骤S202中,在接收到用户输入的烧录请求后,结合存储映射表构建与芯片待写入区域对应的缓存区,缓存区的每个缓存单元对应存储映射表的一个比特。In step S202, after receiving the programming request input by the user, a buffer area corresponding to the area to be written in the chip is constructed in combination with the storage mapping table, and each buffer unit in the buffer area corresponds to a bit of the storage mapping table.
步骤S203:读取存储区中与存储映射表中被标记的比特对应的有效数据,并将有效数据存储至与被标记的比特对应的缓存单元,得到最终烧录数据。Step S203: Read the valid data corresponding to the marked bits in the storage mapping table in the storage area, and store the valid data in the cache unit corresponding to the marked bits to obtain the final programming data.
在步骤S203中,结合存储映射表,从存储区中读取存储的有效数据,再按照有效数据对应的比特在存储映射表中的位置,将有效数据填入至对应的缓存单元,从而得到完整的最终烧录数据。In step S203, combined with the storage mapping table, the stored valid data is read from the storage area, and then according to the position of the bit corresponding to the valid data in the storage mapping table, the valid data is filled into the corresponding cache unit, thereby obtaining a complete The final burning data.
需要说明的是,烧录请求包括烧录数据在存储映射表中的数据起始位和数据长度,该步骤S203具体包括:It should be noted that the burning request includes the data start bit and the data length of the burning data in the storage mapping table, and the step S203 specifically includes:
1、依次判断存储映射表中从数据起始位开始,数据长度范围内的每个比特是否为被标记的目标比特。1. In order to determine whether each bit in the storage mapping table starting from the data start bit and within the data length range is a marked target bit.
2、若是,则计算目标比特与存储映射表的首个比特之间被标记的比特的个数,并根据被标记的比特的个数从存储区确认与目标比特对应的目标有效数据。2. If yes, calculate the number of marked bits between the target bit and the first bit of the storage mapping table, and confirm the target valid data corresponding to the target bit from the storage area according to the number of marked bits.
3、读取目标有效数据,并将目标有效数据写入与目标比特对应的缓存单元,得到最终烧录数据。3. Read the target valid data, and write the target valid data into the cache unit corresponding to the target bit, to obtain the final programming data.
4、若否,则跳过比特并确认下一个比特是否被标记。4. If not, skip the bit and check if the next bit is marked.
具体地,请一并参阅图5,假设M是数据起始位,N为数据长度,从M开始,依次扫描M+N-1范围内的每个比特;当扫描到M+A个比特为被标记的目标比特时,计算存储映射表中,首个比特至M+A个比特之间被标记的比特的个数X,再根据该个数X从存储区查询第X+1个有效数据,并读取该第X+1个有效数据,再将该第X+1个有效数据写入至与第M+A 个比特对应的缓存单元;在当前扫描的比特未被标记时,则跳过当前比特并开始确认下一个比特是否被标记,在确认完最后一个比特后,得到最终烧录数据。Specifically, please refer to Figure 5 together, assuming that M is the data start bit, N is the data length, starting from M, scan each bit in the range of M+N-1 in turn; when scanning to M+A bits is When the target bit is marked, calculate the number X of marked bits between the first bit and M+A bits in the storage mapping table, and then query the X+1th valid data from the storage area according to the number X , and read the X+1th valid data, and then write the X+1th valid data to the cache unit corresponding to the M+A bit; when the currently scanned bit is not marked, jump Pass the current bit and start to confirm whether the next bit is marked. After confirming the last bit, get the final programming data.
进一步的,在批量烧录芯片时,为了避免频繁计算有效数据与缓存单元的对应关系,在得到最终烧录数据后,还包括:记录目标有效数据与缓存单元之间的访问数据表。Further, in order to avoid frequently calculating the corresponding relationship between valid data and cache units when programming chips in batches, after obtaining the final programming data, it also includes: recording the access data table between the target valid data and cache units.
具体地,通过记录目标有效数据与缓存单元之间的访问数据表,当再次烧录相同类型的芯片时,按照该访问数据表直接从存储区读取有效数据,并再次进行烧录,而不再需要重复计算目标有效数据和缓存单元支架内的对应关系。Specifically, by recording the access data table between the target valid data and the cache unit, when programming the same type of chip again, read the valid data directly from the storage area according to the access data table, and perform programming again without It is then necessary to repeatedly calculate the corresponding relationship between the target valid data and the cache unit bracket.
步骤S204:将最终烧录数据烧录至芯片中。Step S204: Burn the final programming data into the chip.
进一步的,为了提升芯片烧录效率,步骤S204具体包括:Further, in order to improve chip programming efficiency, step S204 specifically includes:
1、在将最终烧录数据烧录至芯片时,判断当前烧录单元存储的数据是否为有效数据。1. When burning the final programming data to the chip, judge whether the data stored in the current programming unit is valid data.
具体地,在得到最终烧录数据后,将最终烧录数据按照最小烧录单元依次进行烧录,在烧录每个烧录单元时,首先判断该烧录单元对应的数据是有效数据还是默认数据。Specifically, after the final programming data is obtained, the final programming data is sequentially programmed according to the smallest programming unit. When programming each programming unit, it is first judged whether the data corresponding to the programming unit is valid data or default data. data.
2、若是,则将当前烧录单元烧录至芯片上对应的位置,再烧录下一个烧录单元,直至最后一个烧录单元。2. If yes, burn the current programming unit to the corresponding position on the chip, and then burn the next programming unit until the last programming unit.
具体地,在当前烧录单元对应的数据是有效数据时,则将当前烧录单元烧纸至芯片上对应的位置,再烧录下一个烧录单元。Specifically, when the data corresponding to the current programming unit is valid data, the current programming unit is burned to the corresponding position on the chip, and then the next programming unit is programmed.
3、若否,则跳过当前烧录单元,并烧录下一个烧录单元,直至最后一个烧录单元。3. If not, skip the current burning unit, and burn the next burning unit until the last burning unit.
具体地,在当前烧录单元对应的数据是默认数据时,则直接跳过该当前烧录单元,不进行烧录,从而节省烧录时间,提升烧录效率。Specifically, when the data corresponding to the current programming unit is the default data, the current programming unit is directly skipped and the programming is not performed, thereby saving the programming time and improving the programming efficiency.
本发明第二实施例的数据烧录方法通过在接收到有效数据和存储映射表之后,基于存储映射表和用户输入的烧录请求读取有效数据,并将有效数据写入缓存区中对应的缓存单元中,从而得到完整烧录数据,再根据完整烧录数据烧录至芯片,烧录终端上存储区存储的是烧录数据中的有效 数据,大大减少了所占用的存储空间,从而降低了对硬件的要求。The data burning method of the second embodiment of the present invention reads the valid data based on the storage mapping table and the burning request input by the user after receiving the valid data and the storage mapping table, and writes the valid data into the corresponding In the cache unit, the complete programming data is obtained, and then burned to the chip according to the complete programming data. The storage area on the burning terminal stores the effective data in the burning data, which greatly reduces the occupied storage space, thus reducing the hardware requirements.
图6展示了本发明第一实施例的数据烧录装置的功能模块示意图。如图6所示,该数据烧录装置60包括划分模块61、扫描模块62和数据下发模块63。FIG. 6 shows a schematic diagram of the functional modules of the data burning device according to the first embodiment of the present invention. As shown in FIG. 6 , the data burning device 60 includes a dividing module 61 , a scanning module 62 and a data delivery module 63 .
划分模块61,用于将预先获取到的烧录数据按预设的芯片最小烧录单元大小划分为至少一个烧录单元,每个烧录单元对应一个比特;The dividing module 61 is used to divide the pre-acquired programming data into at least one programming unit according to the preset chip minimum programming unit size, and each programming unit corresponds to one bit;
扫描模块62,用于依次扫描每个比特对应的数据,且当比特对应的数据是有效数据时,标记比特,得到存储映射表;The scanning module 62 is used to scan the data corresponding to each bit in turn, and when the data corresponding to the bit is valid data, mark the bit to obtain the storage mapping table;
数据下发模块63,用于依次提取被标记的比特对应的有效数据,并将存储映射表和有效数据发送至烧录终端,以供烧录终端利用有效数据集和存储表进行烧录。The data sending module 63 is used to sequentially extract the valid data corresponding to the marked bits, and send the storage mapping table and valid data to the programming terminal, so that the programming terminal can use the valid data set and the storage table to perform programming.
图7展示了本发明第二实施例的数据烧录装置的功能模块示意图。如图7所示,该数据烧录装置70包括接收模块71、构建模块72、读取模块73和烧录模块74。FIG. 7 shows a schematic diagram of functional modules of a data burning device according to a second embodiment of the present invention. As shown in FIG. 7 , the data burning device 70 includes a receiving module 71 , a building module 72 , a reading module 73 and a burning module 74 .
接收模块71,用于接收数据解析端发送的有效数据和存储映射表,并将有效数据依次存储至存储区;The receiving module 71 is used to receive the valid data and the storage mapping table sent by the data parsing end, and store the valid data in the storage area in sequence;
构建模块72,用于接收到用户输入的烧录请求时,构建与芯片待写入区域对应的缓存区,缓存区包括多个缓存单元,每个缓存单元对应存储映射表的一个比特;The construction module 72 is configured to construct a cache area corresponding to the area to be written into the chip when receiving a burning request input by the user, the cache area includes a plurality of cache units, and each cache unit corresponds to a bit of the storage mapping table;
读取模块73,用于读取存储区中与存储映射表中被标记的比特对应的有效数据,并将有效数据存储至与被标记的比特对应的缓存单元,得到最终烧录数据;The reading module 73 is used to read the valid data corresponding to the marked bit in the storage mapping table in the storage area, and store the valid data to the cache unit corresponding to the marked bit to obtain the final burning data;
烧录模块74,用于将最终烧录数据烧录至芯片中。The burning module 74 is used for burning the final burning data into the chip.
可选地,烧录请求包括烧录数据在存储映射表中的数据起始位和数据长度;读取模块73执行读取存储区中与存储映射表中被标记的比特对应的有效数据,并将有效数据存储至与被标记的比特对应的缓存单元,得到最终烧录数据的操作,还可以为:依次判断存储映射表中从数据起始位开始,数据长度范围内的每个比特是否为被标记的目标比特;若是,则计算目标比特与存储映射表的首个比特之间被标记的比特的个数,并根据被标 记的比特的个数从存储区确认与目标比特对应的目标有效数据;读取目标有效数据,并将目标有效数据写入与目标比特对应的缓存单元,得到最终烧录数据。Optionally, the burning request includes the data start bit and the data length of the burning data in the storage mapping table; the reading module 73 executes reading the effective data corresponding to the bit marked in the storage mapping table in the reading storage area, and The operation of storing the valid data into the buffer unit corresponding to the marked bit to obtain the final burning data can also be: sequentially judge whether each bit in the data length range starting from the data start bit in the storage mapping table is Marked target bits; if so, calculate the number of marked bits between the target bit and the first bit of the storage mapping table, and confirm from the storage area that the target corresponding to the target bit is valid according to the number of marked bits Data: read the target valid data, and write the target valid data into the cache unit corresponding to the target bit to obtain the final programming data.
可选地,读取模块73执行依次判断存储映射表中从数据起始位开始,数据长度范围内的每个比特是否为被标记的目标比特之后,还用于:若比特未被标记,则跳过比特并确认下一个比特是否被标记。Optionally, after the reading module 73 executes sequentially judging whether each bit in the data length range is a marked target bit starting from the data start bit in the storage mapping table, it is also used for: if the bit is not marked, then Skip bits and check if the next bit is marked.
可选地,读取模块73得到最终烧录数据之后,还用于:记录目标有效数据与缓存单元之间的访问数据表。Optionally, after the reading module 73 obtains the final programming data, it is further configured to: record the access data table between the target valid data and the cache unit.
可选地,烧录模块74执行将最终烧录数据烧录至芯片中的操作,还可以为:在将最终烧录数据烧录至芯片时,判断当前烧录单元存储的数据是否为有效数据;若是,则将当前烧录单元烧录至芯片上对应的位置,再烧录下一个烧录单元,直至最后一个烧录单元;若否,则跳过当前烧录单元,并烧录下一个烧录单元,直至最后一个烧录单元。Optionally, the burning module 74 performs the operation of burning the final burning data into the chip, and may also be: when burning the final burning data into the chip, it is judged whether the data stored in the current burning unit is valid data ; If yes, burn the current programming unit to the corresponding position on the chip, and then burn the next programming unit until the last programming unit; if not, skip the current programming unit and burn the next one Programming units until the last programming unit.
关于上述实施例数据烧录装置中各模块实现技术方案的其他细节,可参见上述实施例中的数据烧录方法中的描述,此处不再赘述。For other details of implementing the technical solution of each module in the data burning device of the above embodiment, please refer to the description of the data burning method in the above embodiment, which will not be repeated here.
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。It should be noted that each embodiment in this specification is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. For the same and similar parts in each embodiment, refer to each other, that is, Can. As for the device-type embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and for related parts, please refer to part of the description of the method embodiments.
请参阅图8,图8为本发明实施例的终端的结构示意图。如图8所示,该终端80包括处理器81及和处理器81耦接的存储器82,存储器82中存储有程序指令,程序指令被处理器81执行时,使得处理器81执行上述任一实施例所述的数据烧录方法的步骤。Please refer to FIG. 8 , which is a schematic structural diagram of a terminal according to an embodiment of the present invention. As shown in FIG. 8 , the terminal 80 includes a processor 81 and a memory 82 coupled to the processor 81. Program instructions are stored in the memory 82. When the program instructions are executed by the processor 81, the processor 81 executes any of the above implementations. The steps of the data burning method described in the example.
其中,处理器81还可以称为CPU(Central Processing Unit,中央处理单元)。处理器81可能是一种集成电路芯片,具有信号的处理能力。处理器81还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可 以是任何常规的处理器等。Wherein, the processor 81 may also be referred to as a CPU (Central Processing Unit, central processing unit). The processor 81 may be an integrated circuit chip with signal processing capability. The processor 81 can also be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components . A general-purpose processor may be a microprocessor, or the processor may be any conventional processor, and the like.
参阅图9,图9为本发明实施例的存储介质的结构示意图。本发明实施例的存储介质存储有能够实现上述所有方法的程序文件91,其中,该程序文件91可以以软件产品的形式存储在上述存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。Referring to FIG. 9 , FIG. 9 is a schematic structural diagram of a storage medium according to an embodiment of the present invention. The storage medium in the embodiment of the present invention stores a program file 91 capable of realizing all the above-mentioned methods, wherein the program file 91 can be stored in the above-mentioned storage medium in the form of a software product, and includes several instructions to make a computer device (which can It is a personal computer, a server, or a network device, etc.) or a processor (processor) that executes all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage media include: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disc, etc., which can store program codes. , or terminal devices such as computers, servers, mobile phones, and tablets.
在本申请所提供的几个实施例中,应该理解到,所揭露的终端,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in this application, it should be understood that the disclosed terminal, device and method may be implemented in other ways. For example, the device embodiments described above are only illustrative. For example, the division of units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be combined or integrated. to another system, or some features may be ignored, or not implemented. In another point, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。以上仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, each unit may exist separately physically, or two or more units may be integrated into one unit. The above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units. The above is only the implementation mode of this application, and does not limit the scope of patents of this application. Any equivalent structure or equivalent process transformation made by using the contents of this application specification and drawings, or directly or indirectly used in other related technical fields, All are included in the scope of patent protection of the present application in the same way.
在本说明书的上述描述中,除非另有明确的规定和限定,术语“固定”、“安装”、“相连”或“连接”等术语应该做广义的理解。例如,就术语“连接”来说,其可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,或者可以是两个元件内部的连通或两个元件的相互作用关系。 因此,除非本说明书另有明确的限定,本领域技术人员可以根据具体情况理解上述术语在本发明中的具体含义。In the above descriptions of this specification, unless otherwise clearly specified and limited, terms such as "fixed", "installed", "connected" or "connected" should be interpreted in a broad sense. For example, as far as the term "connection" is concerned, it may be a fixed connection or a detachable connection, or integrated; it may be a mechanical connection or an electrical connection; it may be a direct connection or an indirect connection through an intermediary , or it can be the internal communication of two elements or the interaction relationship between two elements. Therefore, unless otherwise clearly defined in this specification, those skilled in the art can understand the specific meanings of the above terms in the present invention according to specific situations.
根据本说明书的上述描述,本领域技术人员还可以理解如下使用的术语,例如“上”、“下”、“前”、“后”、“左”、“右”、“长度”、“宽度”、“厚度”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“轴向”、“径向”、“周向”、“中心”、“纵向”、“横向”、“顺时针”或“逆时针”等指示方位或位置关系的术语是基于本说明书的附图所示的方位或位置关系的,其仅是为了便于阐述本发明的方案和简化描述的目的,而不是明示或暗示所涉及的装置或元件必须要具有所述特定的方位、以特定的方位来构造和进行操作,因此上述的方位或位置关系术语不能被理解或解释为对本发明方案的限制。According to the above description of this specification, those skilled in the art can also understand the terms used as follows, such as "upper", "lower", "front", "rear", "left", "right", "length", "width" ", "Thickness", "Vertical", "Horizontal", "Top", "Bottom", "Inner", "Outer", "Axial", "Radial", "Circumferential", "Center", " Terms indicating orientation or positional relationship, such as "longitudinal", "transverse", "clockwise" or "counterclockwise", are based on the orientation or positional relationship shown in the drawings of this specification, which are only for the convenience of explaining the solution of the present invention and simplify the description, rather than express or imply that the device or element involved must have the specific orientation, be constructed and operate in a specific orientation, so the above orientation or positional relationship terms cannot be understood or interpreted as Limitations on the Protocols of the Invention.
另外,本说明书中所使用的术语“第一”或“第二”等用于指代编号或序数的术语仅用于描述目的,而不能理解为明示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”或“第二”的特征可以明示或者隐含地包括至少一个该特征。在本说明书的描述中,“多个”的含义是至少两个,例如两个,三个或更多个等,除非另有明确具体的限定。In addition, terms such as "first" or "second" used in this specification to refer to numbers or ordinal numbers are used for descriptive purposes only, and should not be interpreted as express or implied relative importance or implied indications The number of technical characteristics. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of such features. In the description of this specification, "plurality" means at least two, such as two, three or more, etc., unless otherwise specifically defined.
虽然本说明书已经示出和描述了本发明的多个实施例,但对于本领域技术人员显而易见的是,这样的实施例只是以示例的方式提供的。本领域技术人员会在不偏离本发明思想和精神的情况下想到许多更改、改变和替代的方式。应当理解的是在实践本发明的过程中,可以采用对本文所描述的本发明实施例的各种替代方案。所附权利要求书旨在限定本发明的保护范围,并因此覆盖这些权利要求范围内的模块组成、等同或替代方案。While various embodiments of the invention have been illustrated and described, it will be obvious to those skilled in the art that such embodiments are provided by way of example only. Many modifications, changes and substitutions will occur to those skilled in the art without departing from the idea and spirit of the present invention. It should be understood that various alternatives to the embodiments of the invention described herein may be employed in practicing the invention. It is intended that the appended claims define the scope of the invention and therefore cover modular compositions, equivalents or alternatives within the scope of these claims.

Claims (10)

  1. 一种数据烧录方法,其特征在于,其应用于数据解析端;所述方法包括:A data burning method is characterized in that it is applied to a data analysis end; the method includes:
    将预先获取到的烧录数据按预设的芯片最小烧录单元大小划分为至少一个烧录单元进行存储,每个烧录单元对应一个比特;Divide the pre-acquired programming data into at least one programming unit according to the preset chip minimum programming unit size for storage, and each programming unit corresponds to one bit;
    依次扫描每个所述比特对应的数据,且当所述比特对应的数据是有效数据时,标记所述比特,得到存储映射表;Scanning the data corresponding to each bit in turn, and when the data corresponding to the bit is valid data, marking the bit to obtain a storage mapping table;
    依次提取被标记的比特对应的有效数据,并将所述存储映射表和所述有效数据发送至烧录终端,以供所述烧录终端利用所述有效数据集和所述存储表进行烧录。Sequentially extract the valid data corresponding to the marked bits, and send the storage mapping table and the valid data to the burning terminal, so that the burning terminal can use the valid data set and the storage table to burn .
  2. 一种数据烧录方法,其特征在于,其应用于烧录终端;所述方法包括:A data burning method is characterized in that it is applied to a burning terminal; the method comprises:
    接收数据解析端发送的有效数据和存储映射表,并将所述有效数据依次存储至存储区;receiving the valid data and the storage mapping table sent by the data parsing end, and storing the valid data in the storage area in sequence;
    接收到用户输入的烧录请求时,构建与芯片待写入区域对应的缓存区,所述缓存区包括多个缓存单元,每个缓存单元对应所述存储映射表的一个比特;When a programming request input by the user is received, a buffer area corresponding to the area to be written into the chip is constructed, the buffer area includes a plurality of buffer units, and each buffer unit corresponds to a bit of the storage mapping table;
    读取所述存储区中与所述存储映射表中被标记的比特对应的有效数据,并将所述有效数据存储至与所述被标记的比特对应的所述缓存单元,得到最终烧录数据;reading valid data in the storage area corresponding to the marked bits in the storage mapping table, and storing the valid data in the buffer unit corresponding to the marked bits to obtain final programming data ;
    将所述最终烧录数据烧录至芯片中。Burn the final programming data into the chip.
  3. 根据权利要求2所述的数据烧录方法,其特征在于,所述烧录请求包括烧录数据在所述存储映射表中的数据起始位和数据长度;The data burning method according to claim 2, wherein the burning request includes a data start bit and a data length of the burning data in the storage mapping table;
    所述读取所述存储区中与所述存储映射表中被标记的比特对应的有效数据,并将所述有效数据存储至与所述被标记的比特对应的所述缓存单元,得到最终烧录数据,包括:Reading the valid data in the storage area corresponding to the marked bit in the storage mapping table, and storing the valid data in the cache unit corresponding to the marked bit, to obtain the final burned record data, including:
    依次判断所述存储映射表中从所述数据起始位开始,所述数据长度范围内的每个比特是否为被标记的目标比特;Sequentially judge whether each bit within the data length range is a marked target bit starting from the data start bit in the storage mapping table;
    若是,则计算所述目标比特与所述存储映射表的首个比特之间被标记的比特的个数,并根据所述被标记的比特的个数从所述存储区确认与所述目标比特对应的目标有效数据;If so, calculate the number of marked bits between the target bit and the first bit of the storage mapping table, and confirm the target bit from the storage area according to the number of marked bits Corresponding target valid data;
    读取所述目标有效数据,并将所述目标有效数据写入与所述目标比特对应的缓存单元,得到最终烧录数据。reading the target valid data, and writing the target valid data into a buffer unit corresponding to the target bit to obtain final programming data.
  4. 根据权利要求3所述的数据烧录方法,其特征在于,所述依次判断所述存储映射表中从所述数据起始位开始,所述数据长度范围内的每个比特是否为被标记的目标比特之后,还包括:The data burning method according to claim 3, characterized in that the sequentially judging whether each bit in the data length range is marked starting from the data start bit in the storage mapping table After the target bit, also include:
    若否,则跳过所述比特并确认下一个比特是否被标记。If not, skip the bit and check if the next bit is marked.
  5. 根据权利要求3所述的数据烧录方法,其特征在于,所述得到最终烧录数据之后,还包括:The data burning method according to claim 3, characterized in that, after said obtaining the final burning data, further comprising:
    记录所述目标有效数据与所述缓存单元之间的访问数据表。Record the access data table between the target valid data and the cache unit.
  6. 根据权利要求2所述的数据烧录方法,其特征在于,所述将所述最终烧录数据烧录至芯片中,包括:The data burning method according to claim 2, wherein said burning said final burning data into the chip comprises:
    在将所述最终烧录数据烧录至所述芯片时,判断当前烧录单元存储的数据是否为有效数据;When burning the final programming data to the chip, it is judged whether the data stored in the current programming unit is valid data;
    若是,则将所述当前烧录单元烧录至所述芯片上对应的位置,再烧录下一个烧录单元,直至最后一个烧录单元;If yes, then burn the current programming unit to the corresponding position on the chip, and then burn the next programming unit until the last programming unit;
    若否,则跳过所述当前烧录单元,并烧录下一个烧录单元,直至最后一个烧录单元。If not, skip the current burning unit, and burn the next burning unit until the last burning unit.
  7. 一种数据烧录装置,其特征在于,其包括:A data burning device is characterized in that it comprises:
    划分模块,用于将预先获取到的烧录数据按预设的芯片最小烧录单元大小划分为至少一个烧录单元,每个烧录单元对应一个比特;The dividing module is used to divide the pre-acquired programming data into at least one programming unit according to the preset minimum programming unit size of the chip, and each programming unit corresponds to one bit;
    扫描模块,用于依次扫描每个所述比特对应的数据,且当所述比特对应的数据是有效数据时,标记所述比特,得到存储映射表;A scanning module, configured to sequentially scan the data corresponding to each bit, and when the data corresponding to the bit is valid data, mark the bit to obtain a storage mapping table;
    数据下发模块,用于依次提取被标记的比特对应的有效数据,并将所述存储映射表和所述有效数据发送至烧录终端,以供所述烧录终端利用所述有效数据集和所述存储表进行烧录。The data sending module is used to sequentially extract the valid data corresponding to the marked bits, and send the storage mapping table and the valid data to the burning terminal, so that the burning terminal can use the valid data set and The storage table is programmed.
  8. 一种数据烧录装置,其特征在于,其包括:A data burning device is characterized in that it comprises:
    接收模块,用于接收数据解析端发送的有效数据和存储映射表,并将所述有效数据依次存储至存储区;The receiving module is used to receive the valid data and the storage mapping table sent by the data parsing end, and store the valid data in the storage area in sequence;
    构建模块,用于接收到用户输入的烧录请求时,构建与芯片待写入区域对应的缓存区,所述缓存区包括多个缓存单元,每个缓存单元对应所述存储映射表的一个比特;A construction module, configured to construct a cache area corresponding to the area to be written into the chip when receiving a burning request input by the user, the cache area includes a plurality of cache units, and each cache unit corresponds to a bit of the storage mapping table ;
    读取模块,用于读取所述存储区中与所述存储映射表中被标记的比特对应的有效数据,并将所述有效数据存储至与所述被标记的比特对应的所述缓存单元,得到最终烧录数据;A reading module, configured to read valid data in the storage area corresponding to the marked bits in the storage mapping table, and store the valid data in the cache unit corresponding to the marked bits , to get the final programming data;
    烧录模块,用于将所述最终烧录数据烧录至芯片中。The burning module is used for burning the final burning data into the chip.
  9. 一种终端,其特征在于,所述终端包括处理器、与所述处理器耦接的存储器,所述存储器中存储有程序指令,所述程序指令被所述处理器执行时,使得所述处理器执行如权利要求1-6中任一项权利要求所述的数据烧录方法的步骤。A terminal, characterized in that the terminal includes a processor and a memory coupled to the processor, and program instructions are stored in the memory, and when the program instructions are executed by the processor, the processing The device executes the steps of the data burning method according to any one of claims 1-6.
  10. 一种存储介质,其特征在于,存储有能够实现如权利要求1-6中任一项所述的数据烧录方法的程序文件。A storage medium, characterized in that it stores a program file capable of realizing the data burning method according to any one of claims 1-6.
PCT/CN2021/124813 2021-06-06 2021-10-20 Data burning method and apparatus, terminal, and storage medium WO2022257319A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110628217.7A CN113312065B (en) 2021-06-06 2021-06-06 Data burning method, device, terminal and storage medium
CN202110628217.7 2021-06-06

Publications (1)

Publication Number Publication Date
WO2022257319A1 true WO2022257319A1 (en) 2022-12-15

Family

ID=77377431

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/124813 WO2022257319A1 (en) 2021-06-06 2021-10-20 Data burning method and apparatus, terminal, and storage medium

Country Status (2)

Country Link
CN (1) CN113312065B (en)
WO (1) WO2022257319A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117075924A (en) * 2023-08-15 2023-11-17 杭州凡诺电子有限公司 Chip ID processing method and electronic equipment

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113312065B (en) * 2021-06-06 2022-10-21 深圳市昂科技术有限公司 Data burning method, device, terminal and storage medium
CN114356806B (en) * 2021-12-31 2024-04-16 深圳宏芯宇电子股份有限公司 Fast card opening method, apparatus and computer readable storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100287330A1 (en) * 2009-05-06 2010-11-11 A-Data Technology Co., Ltd. Method for writing data into flash memory
CN103324503A (en) * 2013-05-29 2013-09-25 京东方科技集团股份有限公司 Data programming system and method
CN106293841A (en) * 2016-08-11 2017-01-04 青岛海信移动通信技术股份有限公司 A kind of method and apparatus of burning data
CN106708416A (en) * 2015-11-13 2017-05-24 群联电子股份有限公司 Data reconstruction method and system, and memory control circuit unit
CN111625184A (en) * 2020-04-20 2020-09-04 珠海妙存科技有限公司 Flash memory data burning method and system
CN113312065A (en) * 2021-06-06 2021-08-27 深圳市昂科技术有限公司 Data burning method, device, terminal and storage medium

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101567217A (en) * 2008-04-23 2009-10-28 中兴通讯股份有限公司 Flash memory safely writing method and data writing method
JP5058060B2 (en) * 2008-04-28 2012-10-24 株式会社東芝 Data storage device and adjacent track rewrite processing method.
CN205282100U (en) * 2015-12-29 2016-06-01 深圳市博巨兴实业发展有限公司 Microcontroller
CN106933603B (en) * 2015-12-29 2024-03-05 深圳市博巨兴微电子科技有限公司 Chip burning method, device and microcontroller
CN109840218B (en) * 2017-11-24 2023-08-01 深圳大心电子科技有限公司 Effective data management method and storage controller
CN109753770A (en) * 2019-01-07 2019-05-14 北京地平线机器人技术研发有限公司 Determine method and device, method for burn-recording and device, the electronic equipment of burning data
CN111142886A (en) * 2019-12-25 2020-05-12 宁波奥克斯电气股份有限公司 Data programming method and related device
CN112612486B (en) * 2020-12-28 2021-05-14 湖北芯擎科技有限公司 Memory burning method and device and chip to be burned

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100287330A1 (en) * 2009-05-06 2010-11-11 A-Data Technology Co., Ltd. Method for writing data into flash memory
CN103324503A (en) * 2013-05-29 2013-09-25 京东方科技集团股份有限公司 Data programming system and method
CN106708416A (en) * 2015-11-13 2017-05-24 群联电子股份有限公司 Data reconstruction method and system, and memory control circuit unit
CN106293841A (en) * 2016-08-11 2017-01-04 青岛海信移动通信技术股份有限公司 A kind of method and apparatus of burning data
CN111625184A (en) * 2020-04-20 2020-09-04 珠海妙存科技有限公司 Flash memory data burning method and system
CN113312065A (en) * 2021-06-06 2021-08-27 深圳市昂科技术有限公司 Data burning method, device, terminal and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117075924A (en) * 2023-08-15 2023-11-17 杭州凡诺电子有限公司 Chip ID processing method and electronic equipment
CN117075924B (en) * 2023-08-15 2024-03-19 杭州凡诺电子有限公司 Chip ID processing method and electronic equipment

Also Published As

Publication number Publication date
CN113312065B (en) 2022-10-21
CN113312065A (en) 2021-08-27

Similar Documents

Publication Publication Date Title
WO2022257319A1 (en) Data burning method and apparatus, terminal, and storage medium
US8838894B2 (en) Storing row-major data with an affinity for columns
WO2016107272A1 (en) Solid state disk storage device, and data accessing method for solid state disk storage device
US10437481B2 (en) Data access method and related apparatus and system
WO2022143540A1 (en) Block chain index storage method and apparatus, computer device and medium
WO2010051717A1 (en) A method for managing a memory device and thereof memory device
WO2018041074A1 (en) Method, apparatus, and system for accessing memory device
US10929346B2 (en) Systems and methods for storing large files using file allocation table based file systems
WO2023155531A1 (en) Data read-write method and apparatus and related device
US6571362B1 (en) Method and system of reformatting data blocks for storage as larger size data blocks
US11657011B2 (en) Avalon-to-Axi4 bus conversion method
CN115617878B (en) Data query method, system, device, equipment and computer storage medium
US10574271B2 (en) Data storage system and associated method for saving storage space and eliminating data errors
WO2021120952A1 (en) Column-oriented storage method, apparatus and device, and computer-readable storage medium
CN110888843A (en) Cross-host sparse file copying method, device, equipment and storage medium
CN111045604B (en) Small file read-write acceleration method and device based on NVRAM
TWI762275B (en) Method for performing access management of memory device with aid of dedicated bit information, memory device, electronic device, controller of memory device, and host device
TW202232310A (en) Dynamic metadata relocation in memory
TWI407310B (en) Data storage device and data access method
CN110187837B (en) File access method, device and file system
CN106293542B (en) Method and device for decompressing file
US20230176733A1 (en) Data storage device and data storage system
CN112486861B (en) Solid state disk mapping table data query method and device, computer equipment and storage medium
TW200537497A (en) Silicon storage media and controller thereof, controlling method thereof, and data frame based storage media
EP4040279A1 (en) Method and apparatus for accessing solid state disk

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21944818

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE