CN111752584B - Firmware upgrading method, device, electronic equipment and computer readable storage medium - Google Patents

Firmware upgrading method, device, electronic equipment and computer readable storage medium Download PDF

Info

Publication number
CN111752584B
CN111752584B CN202010528598.7A CN202010528598A CN111752584B CN 111752584 B CN111752584 B CN 111752584B CN 202010528598 A CN202010528598 A CN 202010528598A CN 111752584 B CN111752584 B CN 111752584B
Authority
CN
China
Prior art keywords
information
firmware
upgraded
component
cache area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010528598.7A
Other languages
Chinese (zh)
Other versions
CN111752584A (en
Inventor
李志杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN202010528598.7A priority Critical patent/CN111752584B/en
Publication of CN111752584A publication Critical patent/CN111752584A/en
Application granted granted Critical
Publication of CN111752584B publication Critical patent/CN111752584B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The application provides a firmware upgrading method, a device, electronic equipment and a computer readable storage medium, wherein a processor sends current firmware information to a part to be upgraded, so that the part to be upgraded can write the current firmware information into a cache area; further, the processor instructs the part to be upgraded to execute verification operation on the information in the cache area, and a first verification result returned by the part to be upgraded is obtained; then, based on the first check result, determining whether the information in the cache area is the same as the current firmware information; and if the information in the cache area is the same as the current firmware information, sending a firmware upgrading instruction to the part to be upgraded. By adopting the method, the efficiency and the reliability of firmware upgrading can be improved.

Description

Firmware upgrading method, device, electronic equipment and computer readable storage medium
Technical Field
The present application relates to the field of mobile terminals, and in particular, to a firmware upgrade method, apparatus, electronic device, and computer readable storage medium.
Background
With the continuous development of charging technology in the mobile phone industry, the larger the charging power is, the faster the charging speed is, and the higher the demand for a fast charging microprocessor (Microcontroller Unit, abbreviated as MCU) in the mobile phone is. In order to adapt to the development of the charging technology, a new fast charging MCU is generated. Compared with the traditional quick-charge MCU, the novel MCU has stronger logic operation function, can integrate functions of sampling and the like, and is widely applied to mobile phones. The fast-charging MCU is empty when leaving the factory, so that the fast-charging firmware array stored at the AP end is required to be downloaded to a storage area of the fast-charging MCU through a mobile phone application processor (Application Processor, AP for short), and then the fast-charging MCU is required to be updated when the fast-charging logic requirement is changed.
In the prior art, when firmware upgrade is performed for the fast-charging MCU through the mobile phone AP end, after the fast-charging MCU stores firmware information provided by the mobile phone AP end into a storage area of the fast-charging MCU, the mobile phone AP end needs to read out the information stored in the fast-charging MCU and then perform cyclic redundancy check (Cyclic Redundancy Check, CRC for short) check, and after the CRC check passes, the firmware upgrade of the fast-charging MCU is completed.
But the firmware upgrade method is inefficient.
Disclosure of Invention
The embodiment of the application provides a firmware upgrading method, a device, electronic equipment and a computer readable storage medium, which can improve the firmware upgrading efficiency of a quick-charge MCU.
In a first aspect, a firmware upgrade method includes:
Transmitting the current firmware information to the part to be upgraded; the current firmware information is used for writing the current firmware information into the cache area by the component to be upgraded;
instructing the part to be upgraded to execute verification operation on the information in the cache area, and obtaining a first verification result returned by the part to be upgraded;
determining whether the information in the cache area is the same as the current firmware information or not based on the first check result;
and if the information in the cache area is the same as the current firmware information, sending a firmware upgrading instruction to the part to be upgraded.
In a second aspect, a firmware upgrade apparatus includes:
The sending module is used for sending the current firmware information to the part to be upgraded; the current firmware information is used for writing the current firmware information into the cache area by the component to be upgraded;
the indicating module is used for indicating the part to be upgraded to execute the verification operation on the information in the cache area and obtaining a first verification result returned by the part to be upgraded;
The determining module is used for determining whether the information in the cache area is the same as the current firmware information or not based on the first checking result;
And the upgrading module is used for sending a firmware upgrading instruction to the part to be upgraded when the information in the cache area is the same as the current firmware information.
In a third aspect, an electronic device includes a memory and a processor, the memory storing a computer program that when executed by the processor causes the processor to perform the steps of:
Transmitting the current firmware information to the part to be upgraded; the current firmware information is used for writing the current firmware information into the cache area by the component to be upgraded;
instructing the part to be upgraded to execute verification operation on the information in the cache area, and obtaining a first verification result returned by the part to be upgraded;
determining whether the information in the cache area is the same as the current firmware information or not based on the first check result;
and if the information in the cache area is the same as the current firmware information, sending a firmware upgrading instruction to the part to be upgraded.
In a fourth aspect, a computer readable storage medium having stored thereon a computer program which when executed by a processor performs the steps of:
Transmitting the current firmware information to the part to be upgraded; the current firmware information is used for writing the current firmware information into the cache area by the component to be upgraded;
instructing the part to be upgraded to execute verification operation on the information in the cache area, and obtaining a first verification result returned by the part to be upgraded;
determining whether the information in the cache area is the same as the current firmware information or not based on the first check result;
and if the information in the cache area is the same as the current firmware information, sending a firmware upgrading instruction to the part to be upgraded.
According to the firmware upgrading method, the device, the electronic equipment and the computer readable storage medium, the processor sends the current firmware information to the part to be upgraded, so that the part to be upgraded can write the current firmware information into the cache area; further, the processor instructs the part to be upgraded to execute verification operation on the information in the cache area, and a first verification result returned by the part to be upgraded is obtained; then, based on the first check result, determining whether the information in the cache area is the same as the current firmware information; and if the information in the cache area is the same as the current firmware information, sending a firmware upgrading instruction to the part to be upgraded. Because the part to be upgraded performs verification operation on the information in the cache area, the processor is not required to read the information in the cache area and then perform verification, the reading operation time in firmware upgrading is shortened, and the firmware upgrading efficiency is improved; further, as the component to be upgraded returns the first check result, the processor can determine whether the information in the buffer area is the same as the current firmware information or not, but not by the component to be upgraded, so that inaccurate confirmation result obtained due to data transmission errors is avoided, and the reliability of the firmware upgrading process is improved.
Drawings
In order to more clearly illustrate the embodiments of the application or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described, it being obvious that the drawings in the following description are only some embodiments of the application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is an application environment diagram of a firmware upgrade method in one embodiment;
FIG. 2 is a flow chart of a firmware upgrade method in one embodiment;
FIG. 3 is a flow chart of a firmware upgrade method in another embodiment;
FIG. 4 is a flow chart of a firmware upgrade method in another embodiment;
FIG. 5 is a flow chart of a firmware upgrade method in another embodiment;
FIG. 6 is a flow chart of a firmware upgrade method in another embodiment;
FIG. 7 is a flow chart of a firmware upgrade method in another embodiment;
FIG. 8 is a block diagram of a firmware upgrade apparatus in one embodiment;
FIG. 9 is a block diagram of a firmware upgrade apparatus according to another embodiment;
FIG. 10 is a block diagram of a firmware upgrade apparatus according to another embodiment;
FIG. 11 is a block diagram of a firmware upgrade apparatus according to another embodiment;
FIG. 12 is a block diagram of a firmware upgrade apparatus according to another embodiment;
FIG. 13 is a block diagram of a firmware upgrade apparatus according to another embodiment;
FIG. 14 is a block diagram of a firmware upgrade apparatus according to another embodiment;
FIG. 15 is a block diagram of a firmware upgrade apparatus according to another embodiment;
fig. 16 is a schematic structural diagram of an electronic device in one embodiment.
Detailed Description
The present application will be described in further detail with reference to the drawings and examples, in order to make the objects, technical solutions and advantages of the present application more apparent. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the application.
FIG. 1 is a schematic diagram of an application environment of a firmware upgrade method in one embodiment. As shown in fig. 1, the application environment includes an electronic device 100, which may be a wireless terminal, which may be a device that provides voice and/or other business data connectivity to a user, a handheld device with wireless connectivity, or other processing device connected to a wireless modem. The wireless terminal may be a mobile terminal such as a cellular phone and a computer having a mobile terminal, for example, may be portable, pocket-sized, hand-held, a mobile device built in or on-board the computer, etc. The electronic device 100 includes a processor 110 and a component 120, where the processor 101 may be a mobile phone AP, and the component 110 may be a mobile phone fast charging MCU, or other types of components such as a storage component, which is not limited herein. Processor 110 is coupled to component 120 for implementing firmware upgrades for component 120.
FIG. 2 is a flow chart of a firmware upgrade method in one embodiment. The firmware upgrade method in this embodiment is described taking the processor running in fig. 1 as an example. As shown in fig. 2, the firmware upgrade method:
S101, transmitting current firmware information to a part to be upgraded; the current firmware information is used for writing the current firmware information into the cache area by the component to be upgraded.
The component to be upgraded can be an MCU in the electronic equipment, such as a quick-charging MCU in a mobile phone; the component to be upgraded may also be a storage component, a display component, etc. in the electronic device, which is not limited herein. The component to be upgraded may be disposed inside the electronic device, or may be an external component connected to the electronic device body through a wire or wirelessly, for example, a display connected to a host computer, a mouse, an optical disc drive, or a positioning device disposed inside the electronic device, and the type and the manner of the component are not limited herein.
The firmware information refers to software in the component, which is used as the bottommost working in the component, for example, in a fast charging MCU in a mobile phone, and the firmware is a code for controlling charging logic. In general, when the device leaves the factory, the memory of the component may be blank, and does not contain any firmware information, and the firmware information needs to be written into the component through a specific program; in addition, in the case where firmware information in a component needs to be updated, new firmware information needs to be written into the component by a specific program to replace the old version of firmware information.
Specifically, when the processor upgrades the firmware information of the component, the processor may first send the current firmware information to the component to be upgraded. When the processor sends the current firmware information to the component to be upgraded, the current firmware information stored in the electronic device can be directly sent to the component to be upgraded, or a storage address of the current firmware information can be sent to the component to be upgraded, and the component to be upgraded is instructed to download the current firmware information from the storage address, and the sending mode is not limited herein.
The processor may send the current firmware information to the component to be upgraded through one transmission, or may send the current firmware information to the component to be upgraded in multiple times, which is not limited herein.
In addition, when the processor sends the current firmware information to the component to be upgraded, the current firmware information can be sent through an I2C bus connected between the processor and the component to be upgraded, or the information can be transferred through a register of the component to be upgraded, which is not limited herein.
After the component to be upgraded acquires the current firmware information, the current firmware information can be written into a cache area of the component to be upgraded, the component to be upgraded can write the current firmware information into the cache area one by one, and a plurality of bytes can be cached at a time according to the processing capacity of the component to be upgraded; the above-mentioned cache method is not limited herein.
S102, indicating the part to be upgraded to execute verification operation on the information in the cache area, and obtaining a first verification result returned by the part to be upgraded.
Specifically, the processor may instruct the component to be upgraded to perform a check operation on the information in the cache area, and the processor may instruct the component to be upgraded to perform a check operation multiple times, for example, perform a check once after the component to be upgraded caches a part of the information, and perform multiple check operations in the caching process; in addition, the processor can also execute one check on the information in the cache area after the part to be upgraded finishes caching; the above indication mode is not limited herein.
The processor may instruct the component to be upgraded to verify part of the information in the cache area, or instruct the component to be upgraded to verify all of the information in the cache area, which is not limited herein.
The processor can indicate information such as a mode of checking operation when the part to be upgraded is indicated to perform the checking operation on the information in the cache area, so that the part to be upgraded can perform the checking operation according to the indicated information; in addition, the processor can also send a verification trigger instruction to the part to be upgraded, and after the part to be upgraded acquires the verification trigger instruction, the information in the cache area is verified according to a preset verification rule; the types of the above indications are not limited herein.
The checking operation is used for checking the integrity of the information in the cache area, and the situation that the information written into the cache area by the part to be upgraded is different from the current checking information due to data transmission errors is avoided. The above-mentioned check operation may be parity check or MD5 check, and the type of the above-mentioned check operation is not limited here.
After the part to be upgraded completes the verification operation according to the instruction of the processor, a first verification result can be returned to the processor, wherein the first verification result can be a verification code obtained after the part to be upgraded performs verification calculation on the information in the cache area.
S103, based on the first check result, determining whether the information in the cache area is identical with the current firmware information.
After the processor obtains the first verification result returned by the component to be upgraded, the processor can compare the obtained verification result with the first verification result to determine whether the information in the cache area is the same as the current firmware information. Specifically, the processor may obtain the verification result before sending the current firmware information, or may perform the verification operation after receiving the first verification result, which is not limited herein.
Optionally, the processor may perform the same verification operation on the current firmware information after receiving the first verification result, to obtain a second verification result; if the first check result is the same as the second check result, the information in the cache area is determined to be the same as the current firmware information.
And S104, if the information in the cache area is the same as the current firmware information, sending a firmware upgrading instruction to the part to be upgraded.
On the basis of the above steps, if the information in the buffer area is the same as the current firmware information, the processor may determine that the current firmware information sent to the component to be upgraded is normally transmitted, and may instruct the component to be upgraded to perform firmware upgrade.
If the first checking result is different from the second checking result, the information in the cache area of the part to be upgraded is determined to be different from the current firmware information, so that the current firmware upgrading failure can be determined, or the current firmware information can be sent to the part to be upgraded again, so that the part to be upgraded writes the current firmware information into the cache area again.
After the component to be upgraded receives the firmware upgrading instruction, the current firmware information in the buffer area can be programmed into the storage area of the firmware information, and the historical firmware information in the component to be upgraded can be replaced to finish firmware upgrading.
According to the firmware upgrading method, the processor sends the current firmware information to the part to be upgraded, so that the part to be upgraded can write the current firmware information into the cache area; further, the processor instructs the part to be upgraded to execute verification operation on the information in the cache area, and a first verification result returned by the part to be upgraded is obtained; then, based on the first check result, determining whether the information in the cache area is the same as the current firmware information; and if the information in the cache area is the same as the current firmware information, sending a firmware upgrading instruction to the part to be upgraded. Because the part to be upgraded performs verification operation on the information in the cache area, the processor is not required to read the information in the cache area and then perform verification, the reading operation time in firmware upgrading is shortened, and the firmware upgrading efficiency is improved; further, as the component to be upgraded returns the first check result, the processor can determine whether the information in the buffer area is the same as the current firmware information or not, but not by the component to be upgraded, so that inaccurate confirmation result obtained due to data transmission errors is avoided, and the reliability of the firmware upgrading process is improved.
Fig. 3 is a flow chart of a firmware upgrading method in an embodiment, where the embodiment relates to a manner in which a processor instructs a component to be upgraded to perform a verification operation on information in a cache area, and on the basis of the embodiment, as shown in fig. 3, the step S102 includes:
S201, based on the writing state information returned by the part to be upgraded, determining whether the part to be upgraded has completed writing operation of the current firmware information.
The writing state information may indicate whether all writing of the current firmware information is completed, or whether each piece of information in the current firmware information is completed, and the processor may determine whether firmware information which is not completed is present based on the writing completion state of each piece of information; the instruction method of the firmware information is not limited herein. For example, the component to be upgraded may write the writing state information into the state register, and when bit1 in the state register is 1, it may indicate that writing of the current firmware information is completed; in addition, the bit1 being 1 may also indicate that writing of the part of the currently cached firmware information is completed, and when the bits 1 continuously returned by the part to be upgraded are all 1, after the sending of the current firmware information is completed, the processor may determine that the part to be upgraded has completed writing of the current part information.
And S202, if so, indicating the to-be-upgraded component to execute verification operation on the information in the cache area.
After determining that the component to be upgraded has completed the write operation of the current firmware information, the processor may instruct the component to be upgraded to perform a check operation on the information in the cache region.
Optionally, the current firmware information includes at least one firmware single page information; the processor may instruct the component to be upgraded to perform a cyclic redundancy CRC check on a preset number of firmware single page information in the cache region.
Specifically, the processor may send a check instruction to the component to be upgraded, so that the component to be upgraded may perform CRC check on the first several pages of firmware single page information in the cache area according to a preset rule, and may also perform CRC check on the second several pages of firmware single page information in the cache area, where the instruction manner is not limited herein.
Optionally, the processor may write the page index of the firmware single page information to be verified into the control register of the component to be upgraded; the page index is used for indicating the part to be upgraded to carry out CRC (cyclic redundancy check) on the firmware single page information corresponding to the page index, and returning a first check result and check state information.
Specifically, the page index may be a continuous page or a discrete page, which is not limited herein. For example, the processor may instruct the component to be upgraded to verify the firmware single page information of page 1, may instruct the component to be upgraded to verify the firmware single page information of pages 3 to 7, and may instruct the component to be upgraded to verify pages 1 and 3 respectively.
The control register of the to-be-upgraded component may include a plurality of control sub-registers, the processor may write the page index into the control sub-registers for CRC check, for example, write the number of pages a required to be CRC checked into the reg_crc_len register, and the to-be-upgraded component may perform CRC calculation on the firmware single page information from page 1 to page a to obtain the CRC check code.
After the part to be upgraded completes the verification operation based on the indication, a first verification result can be returned to the processor, and the value of the state register is maintained according to the return state of the first verification result. Further, the processor may read the verification status information in the status register of the part to be upgraded every first preset time period; and if the verification state information characterizes the completion of the calculation of the first verification information, reading a first verification result in a data register of the part to be upgraded. The first preset duration may be 5ms or 10ms, which is not limited herein; the above-mentioned verification status information may be used to indicate whether the component to be upgraded has completed the calculation of the first verification result, and written into the data register, and may be represented by 1 bit or may be represented by a plurality of bits, which is not limited herein. The check state information may be that the bit 1 indicates that the first check result is calculated, or that the bit 0 indicates that the first check result is calculated, which is not limited herein.
For example, the unit to be upgraded may set the bit3 of the status register to 0 during the calculation of the CRC check, and set the bit3 of the status register to 1 after the CRC check is completed and the first check result is written into the data register reg_crc. The processor may read the value of the status register reg_state once every 5ms after sending the check indication, and if bit3 is 0, the value of reg_state is read again every 5ms, and if bit3 is 1, it indicates that the first check result has been calculated, and the first check result may be read from the reg_crc. If the processor reads the status register multiple times, each of which characterizes the first verification result, still in the calculation, the processor may stop reading the status register and stop the firmware upgrade process after a second preset time period, for example, 20 ms.
According to the firmware upgrading method, after the part to be upgraded finishes the writing operation of the current firmware information, the processor instructs the part to be upgraded to execute the verification operation, so that the part to be upgraded can finish the verification of the information in the cache area through one operation, the verification times are reduced, and the firmware upgrading efficiency is improved; further, the processor instructs the part to be upgraded to perform cyclic redundancy CRC (cyclic redundancy check) on the preset number of firmware single page information in the cache area, so that the part to be upgraded does not need to perform check calculation on all information in the cache area, the data volume of the check calculation is reduced, and the firmware upgrading efficiency is further improved.
Fig. 4 is a flow chart of a firmware upgrade method in an embodiment, which relates to a manner in which a processor sends current firmware information, based on the above embodiment, as shown in fig. 4, the above S101 includes:
S301, paging processing is carried out on the current firmware information according to the preset byte number, and at least one piece of firmware single page information is obtained.
Specifically, the preset bytes may be 128 bytes, 256 bytes, or more bytes, which is not limited herein. After the processor performs paging processing on the current firmware information according to the preset byte number, the processor can obtain the firmware single page information with the byte number being the preset byte number.
S302, respectively sending the firmware single page information to the parts to be upgraded.
Based on the above steps, the processor may send the firmware single page information to the component to be upgraded, and the manner in which the processor sends the firmware single page information to the component to be upgraded is similar to that in S101, which is not described herein.
In one transmission mode, the processor can write the firmware single page information into a data register of the part to be upgraded; then, writing a write operation instruction into a control register of the part to be upgraded; the write operation instruction is used for instructing the component to be upgraded to write the firmware single page information in the data register into the cache area. Wherein, the write operation instruction may be an instruction identifier, for example, denoted by 0x 60.
For example, when the processor sends the nth page of firmware single page information to the part to be upgraded, 256 bytes of the firmware single page information of the page may be written into the DATA register reg_data of the part to be upgraded, and then the write operation instruction 0x60 is written into the control register. The part to be upgraded can execute writing operation to 256 bytes in the data register according to the information in the data register and the control register, and write the firmware single page information into the cache area.
The to-be-upgraded component can return writing state information to the processor in the process of writing the firmware single-page information into the cache area, so that the processor can determine whether the to-be-upgraded component completes the caching operation of the firmware single-page information, and after detecting that the caching of the firmware single-page information is completed, the processor sends next firmware single-page information to the to-be-upgraded component. The writing state information may indicate the writing state of the firmware single page information by one bit, or may indicate the writing state by a plurality of bits, which is not limited herein.
For example, the unit to be upgraded may set bit0 of the status register reg_state to 1 during execution of the write operation, and set bit0 of the status register reg_state to 0 after completion of the write operation of the firmware single page information. The processor can determine whether the part to be upgraded has completed writing operation of the firmware single page information according to the value of the status register, can read the value of bit0 of the status register REG_STATE, and if bit0 is bit 1, the value of the bit is continuously read at intervals of a third preset duration (for example, 10 ms); if the read bit0 is 1, it is determined that writing of the firmware single page information is completed, and if the bit0 of the REG_STATE is 1 after multiple times of reading, for example, after exceeding a fourth preset duration (for example, 400 ms), it is determined that writing of the part to be upgraded fails. Further, the processor may send the firmware single page information to the component to be upgraded again, or may stop the firmware upgrade process.
Optionally, the processor writes the firmware single page information into the data register, and simultaneously writes the page index corresponding to the firmware single page information into the data register of the component to be upgraded. For example, when the processor sends page 5 firmware single page information, page index 5 may be written to the data register of the part to be upgraded. Specifically, the processor may write the firmware single page information and the corresponding page index into the same data register, or may write the firmware single page information and the corresponding page index into different data sub-registers, for example, two adjacent data sub-registers. For example, the processor may write 256 bytes of firmware single page information to one of the data subregisters and then write the page index to the other data subregister in 4 bytes.
When the part to be upgraded writes the firmware single-page information in the data register into the cache area, the storage position of the firmware single-page information in the cache area can be determined according to the page index. For example, the continuous storage space sram is used in the cache area to receive the firmware single page information, then the MTP memory address space is determined according to the page index corresponding to the firmware single page information, the page index is equivalent to the offset address, and when the 5 th page of firmware single page information is cached, the address of the firmware single page information in the MTP memory address space is: MTP start address +256 x 5.
According to the firmware upgrading method, the processor performs paging processing on the current firmware information, so that single-page information of each page of firmware can be respectively sent to the parts to be upgraded, the parts to be upgraded do not need to cache the information one by one, but can process the information with the preset byte number at one time, the information sending efficiency is improved, and the firmware upgrading efficiency is improved; further, the processor can determine the single-page writing state of each piece of firmware single-page information, so that the firmware single-page information of one page can be retransmitted after the transmission failure of the firmware single-page information of the other page, instead of retransmitting the current firmware information after all the current firmware information is transmitted, and the firmware upgrading efficiency is further improved.
Fig. 5 is a flow chart of a firmware upgrading method in an embodiment, where the embodiment relates to a manner in which a processor determines whether to perform firmware upgrading on a component to be upgraded, and based on the embodiment, as shown in fig. 5, before S101, the method further includes:
S401, acquiring version numbers of the historical firmware information stored in the parts to be upgraded.
In particular, the processor may determine whether to perform a firmware upgrade for the component to be upgraded by comparing the version numbers. The processor can acquire the version number of the historical firmware information stored in the part to be upgraded, and the part to be upgraded can be instructed to write the version number into the register through a version number reading instruction; the version number may also be queried in the historical firmware information by reading the historical firmware information, which is not limited herein.
Optionally, the version number of the historical firmware information is located at a preset position in the historical firmware information; the historical firmware information comprises at least one historical firmware single page information; the processor can acquire a target page index of the single-page information of the historical firmware where the version number is located, and then write the target page index and a reading operation instruction into a control register of the component; the reading operation instruction is used for indicating the part to be upgraded to return the historical firmware single page information corresponding to the target page index; and reading the version number of the historical firmware information from the historical firmware single page information corresponding to the target page index based on the preset position.
The version number of the history firmware information may be located on the first page of the history firmware information, or may be located on any page of the history firmware information, which is not limited herein. Optionally, the version number of the history firmware information is located at the last ten bytes in the last page of the history firmware information.
When the processor acquires the target page index of the single page information of the historical firmware where the version number is, the processor can determine the target page corresponding to the version number according to a preset rule, so that, for example, the page where the version number is stored in the processor; or the processor may receive, through the target page index reading instruction, the target page index sent by the component to be upgraded, which is not limited herein. Optionally, when the version number is located at a preset position in the last page of the historical firmware information, the processor may read the total number of pages of the historical firmware information stored in the status register of the component to be upgraded; the page number of the most significant page of the history firmware information is then determined as the target page index based on the total number of pages. For example, one of the data registers of the part to be upgraded may store the total PAGE number of the history firmware information, which may be reg_num_page, and the processor may learn the total PAGE number M of the history firmware information by reading the value of the data register, and then determine that the version number of the history firmware information is on the M-th PAGE of the history firmware information.
After the processor acquires the target page index, the processor can read the historical firmware single page information corresponding to the target page index. Specifically, the processor may write the target page index to the control register and the read operation instruction to the control register. The target page index and read operation instructions described above may be located in different control sub-registers. For example, the processor writes a target page index into the control sub-register 0x20 and then writes the read operation instruction 0x70 into the control sub-register 0x90 so that the part to be upgraded can write the historical firmware single page information corresponding to the target page index into the DATA register reg_data in the memory area and set the value of the status register according to the single page writing status.
Further, the processor may determine whether writing of the historical firmware single page information is completed according to the value in the status register, for example, the processor may continuously read the value of bit0 in the status register, if bit0 is 1, identify that the part to be upgraded is being written, and if bit0 is 0, indicate that writing of the historical firmware single page information is completed. If bit0 is always 1 for a period of time (e.g., 10 ms), the processor may consider the history firmware single page information writing failed and stop the firmware upgrade. After the writing of the single-page writing state information characterizing the historical firmware single-page information is completed, the processor may read the historical firmware single-page information in the data register, and then read the version number of the historical firmware information at a preset position, for example, the last ten bytes, in the historical firmware single-page information. In addition, when the part to be upgraded writes the single page information of the historical firmware, page numbers corresponding to the single page information of the historical firmware can be written into the data register at the same time, and the processor can read only the version numbers in the single page information of the historical firmware with the preset byte number. For example, the DATA register reg_data includes 256 bytes of historical firmware single page information and 4 bytes of page number information, and the processor can read the last ten bytes of the 256 bytes to obtain the version number.
And S402, when the version number of the historical firmware information is lower than that of the current firmware information, determining to upgrade the firmware information in the part to be upgraded.
When the version number of the historical firmware information is lower than the version number of the current firmware information, the processor may determine to perform firmware upgrade on the component to be upgraded. When the version number of the historical firmware information is greater than or equal to the version number of the current firmware information, the processor may determine that no firmware upgrade is required for the component.
According to the firmware upgrading method, the processor compares the version number of the historical firmware information with the version number of the current firmware information by acquiring the version number of the historical firmware information existing in the part to be upgraded to determine whether to upgrade the firmware of the part, and does not need to compare the current firmware information with the historical firmware information to determine, so that the comparison data volume is reduced, and the firmware upgrading efficiency is improved; furthermore, as the version number of the historical firmware information is located at the preset position, the processor can directly and quickly read the information at the position to obtain the version number, and the firmware upgrading efficiency is further improved.
In one embodiment, after determining to upgrade the component to be upgraded, the processor may enter the firmware upgrade mode by controlling a pin level of the component to be upgraded on the basis of the above embodiments.
After determining to upgrade the component to be upgraded, the processor can forcedly reset the component to be upgraded in a hardware reset mode before sending current firmware information to the component to be upgraded. The processor can control the pin level of the part to be upgraded so that the part to be upgraded is forcedly reset and enters a firmware upgrading mode. The control mode of the pin level is related to the pin definition of the component to be upgraded. For example, for a fast-charging MCU, the processor may pull the MCU's reset gpio pin high while pulling the clock pin low and holding for more than two seconds, then the MCU may enter a firmware upgrade mode and begin executing the firmware upgrade procedure.
According to the firmware upgrading method, the processor enables the part to be upgraded to enter the firmware upgrading mode in a pin level control mode, and compared with entering soft reset in an instruction mode, the firmware upgrading method can avoid failure of entering the upgrading mode caused by error in instruction sending, and enables firmware upgrading flow to be more stable.
In one embodiment, based on the above embodiment, a firmware upgrade method is provided, which can be applied to firmware upgrade of a fast-charging MCU by a mobile phone AP, as shown in fig. 6, and includes the following steps:
s501, reading the total page number of the historical firmware information stored in the status register of the part to be upgraded.
S502, determining the page number of the most page of the history firmware information as a target page number index based on the total page number.
S503, the target page index and the read operation instruction are written into the control register of the component.
S504, based on the preset position, reading the version number of the historical firmware information from the historical firmware single page information corresponding to the target page index.
S505, determining whether the version number of the historical firmware information is lower than the version number of the current firmware information, if so, executing S506, and if not, exiting the firmware upgrading process.
S506, entering a firmware upgrading mode by controlling the pin level of the component to be upgraded.
S507, paging the current firmware information according to the preset byte number to obtain at least one firmware single page information.
S508, repeatedly executing the single-page writing operation until the single-page information of each firmware is respectively sent to the parts to be upgraded.
S509, determining whether the part to be upgraded completes the writing operation of the current firmware information based on the writing state information returned by the part to be upgraded; if yes, then S510 is performed.
S510, writing the page index of the single-page information of the firmware to be verified into a control register of the component to be upgraded.
S511, reading check state information in a state register of the part to be upgraded every first preset time interval.
S512, determining whether the first check information is calculated according to the check state information, if yes, executing S513; if S513 is performed.
S513, whether the time length for reading the verification state information is longer than a second preset time length or not, if yes, exiting the firmware upgrading process, and if not, returning to S511.
S514, the same checking operation is carried out on the current firmware information, and a second checking result is obtained.
S515, determining whether the first checking result is the same as the second checking result, if so, executing S515, and if not, exiting the firmware upgrading process.
S516, a firmware upgrading instruction is sent to the part to be upgraded.
As shown in fig. 7, the single page write operation may include:
s601, writing the single-page information of the firmware into a data register of the part to be upgraded.
S602, writing page index corresponding to the firmware single page information into a data register of the part to be upgraded.
S603, writing a write operation instruction into a control register of the part to be upgraded.
S604, reading single page writing state information in a state register of a part to be upgraded every third preset time interval;
s605, determining whether the part to be upgraded has completed writing operation of the firmware single page information according to the single page writing state information; if yes, finishing writing the firmware single page information; if not, executing S606;
s606, whether the time for reading the single page writing state information is longer than a fourth preset time, if so, exiting the single page writing operation flow, and if not, returning to S604.
The firmware upgrading method has similar implementation principle and technical effects to those of the above embodiment, and will not be described herein.
It should be understood that, although the steps in the flowcharts of fig. 2-7 are shown in order as indicated by the arrows, these steps are not necessarily performed in order as indicated by the arrows. The steps are not strictly limited to the order of execution unless explicitly recited herein, and the steps may be executed in other orders. Moreover, at least some of the steps in fig. 2-7 may include multiple sub-steps or stages that are not necessarily performed at the same time, but may be performed at different times, nor does the order in which the sub-steps or stages are performed necessarily occur in sequence, but may be performed alternately or alternately with at least a portion of the sub-steps or stages of other steps or other steps.
Fig. 8 is a block diagram of a firmware upgrade apparatus of an embodiment. As shown in fig. 8, the above-mentioned apparatus includes:
A transmitting module 10, configured to transmit current firmware information to a component to be upgraded; the current firmware information is used for writing the current firmware information into the cache area by the component to be upgraded;
The indicating module 20 is configured to instruct the component to be upgraded to perform a verification operation on the information in the cache area, and obtain a first verification result returned by the component to be upgraded;
a determining module 30, configured to determine, based on the first check result, whether the information in the cache area is the same as the current firmware information;
And the upgrading module 40 is used for sending a firmware upgrading instruction to the component to be upgraded when the information in the cache area is the same as the current firmware information.
In one embodiment, on the basis of the above embodiment, as shown in fig. 9, the above indication module 20 includes:
A determining unit 201, configured to determine, based on the write status information returned by the component to be upgraded, whether the component to be upgraded has completed the write operation of the current firmware information;
An indicating unit 202, configured to instruct the component to be upgraded to perform a verification operation on the information in the cache area when the component to be upgraded has completed the write operation of the current firmware information.
In one embodiment, on the basis of the foregoing embodiment, the current firmware information includes at least one firmware single page information, and the foregoing instruction unit 202 is specifically configured to: and indicating the to-be-upgraded part to perform cyclic redundancy CRC (cyclic redundancy check) on the preset number of firmware single page information in the cache area.
In one embodiment, based on the above embodiment, the indication unit 202 is specifically configured to: writing page index of the single-page information of the firmware to be verified into a control register of the part to be upgraded; the page index is used for indicating the part to be upgraded to carry out CRC (cyclic redundancy check) on the firmware single page information corresponding to the page index, and returning a first check result and check state information.
In one embodiment, on the basis of the above embodiment, as shown in fig. 10, the above indication module 20 includes:
a first reading unit 203, configured to read verification status information in a status register of a component to be upgraded at intervals of a first preset duration;
and the second reading unit 204 is configured to read the first verification result in the data register of the component to be upgraded when the verification state information characterizes the calculation of the first verification information.
In one embodiment, on the basis of the above embodiment, as shown in fig. 11, the above determining module 30 includes:
A verification unit 301, configured to perform the same verification operation on the current firmware information, and obtain a second verification result;
and a comparing unit 302, configured to determine that the information in the cache area is the same as the current firmware information when the first check result is the same as the second check result.
In one embodiment, on the basis of the above embodiment, as shown in fig. 12, the above transmission module 10 includes:
the paging unit 101 is configured to perform paging processing on current firmware information according to a preset byte number, so as to obtain at least one firmware single page information;
And the sending unit 102 is used for respectively sending the firmware single-page information to the parts to be upgraded.
In one embodiment, on the basis of the above embodiment, the sending unit 102 is specifically configured to: writing the single-page information of the firmware into a data register of the part to be upgraded; writing a write operation instruction into a control register of the part to be upgraded; the write operation instruction is used for instructing the component to be upgraded to write the firmware single page information in the data register into the cache area.
In one embodiment, on the basis of the above embodiment, the sending unit 102 is further configured to: and writing the page index corresponding to the firmware single page information into a data register of the part to be upgraded.
In one embodiment, on the basis of the foregoing embodiment, as shown in fig. 13, the apparatus further includes an obtaining module 50, configured to: acquiring version numbers of the historical firmware information stored in the part to be upgraded; and when the version number of the historical firmware information is lower than that of the current firmware information, determining to upgrade the firmware information in the part to be upgraded.
In one embodiment, based on the above embodiment, as shown in fig. 14, the version number is located at a preset position in the firmware information, and the obtaining module 50 includes:
an obtaining unit 501, configured to obtain a target page index of single page information of historical firmware where a version number is located;
A writing unit 502 for writing a target page index and a read operation instruction into a control register of the unit; the reading operation instruction is used for indicating the part to be upgraded to return the historical firmware single page information corresponding to the target page index;
The third reading unit 503 is configured to read, based on a preset position, a version number of the historical firmware information from the historical firmware single page information corresponding to the target page index.
In one embodiment, on the basis of the above embodiment, the obtaining unit 501 is specifically configured to: taking the total page number of the historical firmware information stored in the status register of the part to be upgraded; determining the page number of the most-available page of the historical firmware information as a target page number index based on the total page number; the version number is located at a preset location in the last page of the history firmware information.
In one embodiment, on the basis of the above embodiment, as shown in fig. 15, the apparatus further includes a control module 60, configured to: and entering a firmware upgrading mode by controlling the pin level of the component to be upgraded.
The firmware upgrading device provided in this embodiment has similar implementation principles and technical effects to those of the above method embodiment, and will not be described herein.
The division of the modules in the firmware upgrade apparatus is only used for illustration, and in other embodiments, the firmware upgrade apparatus may be divided into different modules as needed to complete all or part of the functions of the firmware upgrade apparatus.
For specific limitations of the firmware upgrade apparatus, reference may be made to the above limitation of the firmware upgrade method, and no further description is given here. The respective modules in the firmware upgrade apparatus described above may be implemented in whole or in part by software, hardware, and combinations thereof. The above modules may be embedded in hardware or may be independent of a processor in the computer device, or may be stored in software in a memory in the computer device, so that the processor may call and execute operations corresponding to the above modules.
Fig. 16 is a schematic diagram showing an internal structure of the electronic device in one embodiment. As shown in fig. 16, the electronic device includes a processor and a memory connected through a system bus. Wherein the processor is configured to provide computing and control capabilities to support operation of the entire electronic device. The memory may include a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The computer program is executable by a processor for implementing a firmware upgrade method provided by the following embodiments. The internal memory provides a cached operating environment for operating system computer programs in the non-volatile storage medium. The electronic device may be any terminal device such as a mobile phone, a tablet computer, a PDA (Personal digital assistant), a POS (Point of Sales), a car-mounted computer, and a wearable device.
It will be appreciated by those skilled in the art that the structure shown in fig. 16 is merely a block diagram of a portion of the structure associated with the present inventive arrangements and is not limiting of the electronic device to which the present inventive arrangements are applied, and that a particular electronic device may include more or fewer components than shown, or may combine certain components, or have a different arrangement of components.
In one embodiment, there is provided an electronic device including a memory and a processor, the memory storing a computer program, the processor implementing the steps of the firmware upgrade method described above when executing the computer program, including:
Transmitting the current firmware information to the part to be upgraded; the current firmware information is used for writing the current firmware information into the cache area by the component to be upgraded;
instructing the part to be upgraded to execute verification operation on the information in the cache area, and obtaining a first verification result returned by the part to be upgraded;
determining whether the information in the cache area is the same as the current firmware information or not based on the first check result;
and if the information in the cache area is the same as the current firmware information, sending a firmware upgrading instruction to the part to be upgraded.
The implementation principle and technical effects of the electronic device provided in this embodiment are similar to those of the foregoing method embodiment, and are not described herein again.
The implementation of each module in the firmware upgrade apparatus provided in the embodiment of the present application may be in the form of a computer program. The computer program may run on a terminal or a server. Program modules of the computer program may be stored in the memory of the electronic device. Which when executed by a processor, performs the steps of the method described in the embodiments of the application.
The embodiment of the application also provides a computer readable storage medium. One or more non-transitory computer-readable storage media containing computer-executable instructions that, when executed by one or more processors, cause the processors to perform steps of the firmware upgrade method described above when executing a computer program, comprising:
Transmitting the current firmware information to the part to be upgraded; the current firmware information is used for writing the current firmware information into the cache area by the component to be upgraded;
instructing the part to be upgraded to execute verification operation on the information in the cache area, and obtaining a first verification result returned by the part to be upgraded;
determining whether the information in the cache area is the same as the current firmware information or not based on the first check result;
and if the information in the cache area is the same as the current firmware information, sending a firmware upgrading instruction to the part to be upgraded.
The computer readable storage medium provided in this embodiment has similar principles and technical effects to those of the above method embodiment, and will not be described herein.
A computer program product containing instructions that, when run on a computer, cause the computer to perform a firmware upgrade method.
Any reference to memory, storage, database, or other medium used in the present application may include non-volatile and/or volatile memory. The nonvolatile memory can include Read Only Memory (ROM), programmable ROM (PROM), electrically Programmable ROM (EPROM), electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM), which acts as external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms such as Static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link (SYNCHLINK) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
The foregoing examples illustrate only a few embodiments of the application and are described in detail herein without thereby limiting the scope of the application. It should be noted that it will be apparent to those skilled in the art that several variations and modifications can be made without departing from the spirit of the application, which are all within the scope of the application. Accordingly, the scope of protection of the present application is to be determined by the appended claims.

Claims (15)

1. A firmware upgrade method, comprising:
Paging current firmware information according to a preset byte number to obtain at least one piece of firmware single page information, and respectively sending the firmware single page information to a part to be upgraded; the current firmware information is used for the to-be-upgraded component to write the current firmware information into a cache area; the current firmware information refers to software in the component, which acts as the bottommost work in the component;
The to-be-upgraded component is instructed to execute verification operation on the information in the cache area, and a first verification result returned by the to-be-upgraded component is obtained;
Determining whether the information in the cache area is identical to the current firmware information or not based on the first check result;
and if the information in the cache area is the same as the current firmware information, sending a firmware upgrading instruction to the component to be upgraded, wherein the firmware upgrading instruction is used for indicating the component to be upgraded to write the current firmware information in the cache area into a storage area of the firmware information.
2. The firmware upgrade method of claim 1, wherein the instructing the component to be upgraded to perform a verification operation on the information in the cache area comprises:
determining whether the part to be upgraded completes the writing operation of the current firmware information based on writing state information returned by the part to be upgraded;
if yes, the to-be-upgraded component is instructed to execute verification operation on the information in the cache area.
3. The firmware upgrade method of claim 2, wherein the current firmware information includes at least one firmware single page information; the instructing the component to be upgraded to perform a verification operation on the information in the cache area includes:
And indicating the to-be-upgraded component to perform cyclic redundancy CRC (cyclic redundancy check) on the preset number of firmware single page information in the cache area.
4. A firmware upgrade method according to claim 3, wherein the instructing the component to be upgraded to perform CRC check on the preset number of firmware single page information in the cache area includes:
Writing page index of the single-page information of the firmware to be verified into a control register of the component to be upgraded; the page index is used for indicating the part to be upgraded to carry out CRC (cyclic redundancy check) on the firmware single page information corresponding to the page index, and returning a first check result and check state information.
5. The firmware upgrade method of claim 4, wherein the obtaining the first verification result returned by the component to be upgraded comprises:
Reading check state information in a state register of the part to be upgraded at each interval for a first preset time length;
and if the verification state information characterizes the completion of the calculation of the first verification information, reading a first verification result in a data register of the component to be upgraded.
6. The firmware upgrade method according to any one of claims 1-5, wherein the determining whether information in the cache area is the same as the current firmware information based on the first check result comprises:
the same verification operation is carried out on the current firmware information, and a second verification result is obtained;
And if the first check result is the same as the second check result, determining that the information in the cache area is the same as the current firmware information.
7. The firmware upgrade method according to any one of claims 1-5, wherein said sending the firmware single page information to the component to be upgraded includes:
writing the firmware single page information into a data register of the part to be upgraded;
Writing a write operation instruction into a control register of the component to be upgraded; the write operation instruction is used for instructing the to-be-upgraded component to write the firmware single page information in the data register into the cache area.
8. The firmware upgrade method of claim 7, wherein the method further comprises:
And writing the page index corresponding to the firmware single page information into a data register of the part to be upgraded.
9. The firmware upgrade method according to any one of claims 1-5, wherein before said sending the firmware single page information to the component to be upgraded, further comprising:
acquiring version numbers of the historical firmware information stored in the part to be upgraded;
And when the version number of the historical firmware information is lower than the version number of the current firmware information, determining to upgrade the firmware information in the to-be-upgraded component.
10. The firmware upgrade method according to claim 9, wherein the version number is located at a preset position in firmware information; the historical firmware information comprises at least one historical firmware single page information; the obtaining the version number of the stored historical firmware information in the part to be upgraded comprises the following steps:
Acquiring a target page index of the single page information of the historical firmware where the version number is;
Writing the target page index and a reading operation instruction into a control register of the part to be upgraded; the reading operation instruction is used for indicating the part to be upgraded to return the historical firmware single page information corresponding to the target page index;
And reading the version number of the historical firmware information from the historical firmware single page information corresponding to the target page index based on the preset position.
11. The firmware upgrade method of claim 10, wherein the obtaining the target page index of the historical firmware single page information where the version number is located includes:
reading the total page number of the historical firmware information stored in the status register of the part to be upgraded;
Determining a page number of a last page of the history firmware information as the target page number index based on the total page number; the version number is located at a preset position in the last page of the historical firmware information.
12. The firmware upgrade method according to any one of claims 1-5, wherein before said sending the firmware single page information to the component to be upgraded, further comprising:
And entering a firmware upgrading mode by controlling the pin level of the component to be upgraded.
13. A firmware upgrade apparatus, comprising:
The sending module is used for carrying out paging processing on the current firmware information according to the preset byte number to obtain at least one piece of firmware single page information, and respectively sending the firmware single page information to the part to be upgraded; the current firmware information is used for the to-be-upgraded component to write the current firmware information into a cache area; the current firmware information refers to software in the component, which acts as the bottommost work in the component;
The indicating module is used for indicating the to-be-upgraded component to execute a verification operation on the information in the cache area and obtaining a first verification result returned by the to-be-upgraded component;
A determining module, configured to determine, based on the first check result, whether information in the cache area is the same as the current firmware information;
And the upgrading module is used for sending a firmware upgrading instruction to the component to be upgraded when the information in the cache area is the same as the current firmware information, wherein the firmware upgrading instruction is used for indicating the component to be upgraded to write the current firmware information in the cache area into a storage area of the firmware information.
14. An electronic device comprising a memory and a processor, wherein the memory stores a computer program that, when executed by the processor, causes the processor to perform the steps of the firmware upgrade method of any one of claims 1 to 12.
15. A computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when being executed by a processor, implements the steps of the firmware upgrade method according to any one of claims 1 to 12.
CN202010528598.7A 2020-06-11 2020-06-11 Firmware upgrading method, device, electronic equipment and computer readable storage medium Active CN111752584B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010528598.7A CN111752584B (en) 2020-06-11 2020-06-11 Firmware upgrading method, device, electronic equipment and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010528598.7A CN111752584B (en) 2020-06-11 2020-06-11 Firmware upgrading method, device, electronic equipment and computer readable storage medium

Publications (2)

Publication Number Publication Date
CN111752584A CN111752584A (en) 2020-10-09
CN111752584B true CN111752584B (en) 2024-05-24

Family

ID=72676012

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010528598.7A Active CN111752584B (en) 2020-06-11 2020-06-11 Firmware upgrading method, device, electronic equipment and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN111752584B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112214235A (en) * 2020-10-23 2021-01-12 Oppo广东移动通信有限公司 Method and device for upgrading quick-charging firmware, mobile terminal and storage medium
CN112579128B (en) * 2020-12-23 2023-05-09 恒为科技(上海)股份有限公司 Data processing method, upper computer, singlechip and system
CN113608771A (en) * 2021-06-20 2021-11-05 山东云海国创云计算装备产业创新中心有限公司 Method, device and equipment for quickly programming FPGA firmware and readable medium
CN117453261A (en) * 2023-11-10 2024-01-26 珠海科创储能科技有限公司 Upgrade data verification method of equipment, storage medium and electronic equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2007202583A1 (en) * 2006-06-06 2007-12-20 Mackay, Julie Michelle A system, method and software application for managing meta-language documents
CN107832074A (en) * 2017-11-28 2018-03-23 福州瑞芯微电子股份有限公司 A kind of intelligent sound box data updating method and device
CN110389778A (en) * 2019-07-19 2019-10-29 苏州浪潮智能科技有限公司 A kind of isomery accelerates the MCU firmware upgrade method and relevant apparatus of platform
CN111095200A (en) * 2018-08-23 2020-05-01 深圳市汇顶科技股份有限公司 Method, device and equipment for safely upgrading embedded program and storage medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2007202583A1 (en) * 2006-06-06 2007-12-20 Mackay, Julie Michelle A system, method and software application for managing meta-language documents
CN107832074A (en) * 2017-11-28 2018-03-23 福州瑞芯微电子股份有限公司 A kind of intelligent sound box data updating method and device
CN111095200A (en) * 2018-08-23 2020-05-01 深圳市汇顶科技股份有限公司 Method, device and equipment for safely upgrading embedded program and storage medium
CN110389778A (en) * 2019-07-19 2019-10-29 苏州浪潮智能科技有限公司 A kind of isomery accelerates the MCU firmware upgrade method and relevant apparatus of platform

Also Published As

Publication number Publication date
CN111752584A (en) 2020-10-09

Similar Documents

Publication Publication Date Title
CN111752584B (en) Firmware upgrading method, device, electronic equipment and computer readable storage medium
CN111752583B (en) Firmware upgrading method, device, electronic equipment and computer readable storage medium
US9110786B2 (en) Read operation prior to retrieval of scatter gather list
JP5399626B2 (en) Method and apparatus for storing page data
US11152954B2 (en) Decoding method and storage controller
US9667074B2 (en) Apparatus and method for updating remote standalone firmware
KR101471262B1 (en) Copyback optimization for memory system
US9792072B2 (en) Embedded multimedia card (eMMC), host controlling eMMC, and method operating eMMC system
CN110059032B (en) Memory interface and memory controller having the same
US8392794B2 (en) Non-volatile memory device and data processing method thereof
US9766880B2 (en) Electronic device and method for firmware updating thereof
US20150278014A1 (en) Apparatus and method for detecting and correcting read disturb errors on a flash memory
US20230057089A1 (en) Upgrade method, computer system, and remote upgrade device implementing efficient remote upgrade
KR20160128903A (en) Storage device controller for reducing memory channel traffic and storage device including the same
US10025706B2 (en) Control device, storage device, and storage control method
CN113360161A (en) Resource upgrading method and related product
US7990774B2 (en) Communication device and method for erasing data from a communication device
CN114760276B (en) Method and device for downloading data and secure element
EP3223153A1 (en) Method of updating program code and electronic device using the same
US20150012688A1 (en) Computer system and operating method thereof
CN110008059B (en) Data updating method and device for nonvolatile storage medium and storage medium
US9223649B2 (en) System and method of sending correction data to a buffer of a non-volatile memory
CN110554928B (en) Nonvolatile semiconductor memory parameter power-on reading method and device
JP5666273B2 (en) Data storage device and data storage method
US10379875B2 (en) Solid state storage device and program loading method thereof

Legal Events

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