CN112799696B - Firmware upgrading method and related equipment - Google Patents

Firmware upgrading method and related equipment Download PDF

Info

Publication number
CN112799696B
CN112799696B CN202110004296.4A CN202110004296A CN112799696B CN 112799696 B CN112799696 B CN 112799696B CN 202110004296 A CN202110004296 A CN 202110004296A CN 112799696 B CN112799696 B CN 112799696B
Authority
CN
China
Prior art keywords
time
firmware
bluetooth
storage space
space
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
CN202110004296.4A
Other languages
Chinese (zh)
Other versions
CN112799696A (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.)
Spreadtrum Communications Shanghai Co Ltd
Original Assignee
Spreadtrum Communications Shanghai Co 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 Spreadtrum Communications Shanghai Co Ltd filed Critical Spreadtrum Communications Shanghai Co Ltd
Priority to CN202110004296.4A priority Critical patent/CN112799696B/en
Publication of CN112799696A publication Critical patent/CN112799696A/en
Priority to PCT/CN2021/140018 priority patent/WO2022143295A1/en
Application granted granted Critical
Publication of CN112799696B publication Critical patent/CN112799696B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

The present invention relates to the field of bluetooth technologies, and in particular, to a firmware upgrading method and related devices. The method comprises the following steps: determining a first storage space according to the description information of the first firmware; performing an erasing operation on the first storage space during a first idle time of Bluetooth transmission; and writing an update packet of the first firmware into the first storage space during a second idle time of the Bluetooth transmission, wherein the update packet of the first firmware is from the first Bluetooth device. According to the scheme of the embodiment of the invention, the firmware upgrading code can be stored in the preset memory so as to save the system RAM resource; the erasing operation is performed on the storage space in advance, so that the transmission time of the firmware data packet can be saved; further, the erasing operation and the writing operation are performed at the idle time of the bluetooth transmission, so that not only can the power consumption of the bluetooth be reduced, but also the stability of the bluetooth connection between the devices can be improved.

Description

Firmware upgrading method and related equipment
Technical Field
The present invention relates to the field of bluetooth technologies, and in particular, to a firmware upgrading method and related devices.
Background
Bluetooth OTA (Over-the-Air Technology), which is a Technology for upgrading firmware in a device by using a bluetooth method. The current bluetooth-based process for upgrading firmware in a device mainly comprises: the Bluetooth slave device starts the OTA code and acquires a data packet of the new firmware version from the Bluetooth master device. The OTA code in the bluetooth slave device is usually integrated in a RAM (Random Access Memory), which occupies more RAM resources of the system. And after receiving the firmware data packet sent by the Bluetooth master device, the Bluetooth slave device writes the firmware data into a storage space for storing the firmware data packet by adopting a mode of erasing and writing at the same time. This mode, not only the time that not only occupies is longer, often need close bluetooth transceiver interruption moreover, arouses the bluetooth to cut off and connect easily, influences the stability that bluetooth master device and bluetooth slave unit are connected.
Disclosure of Invention
In view of this, embodiments of the present invention provide a firmware upgrading method and related apparatus, where firmware upgrading codes in a first firmware may be stored in a preset memory, so as to save system RAM resources; according to the scheme, the erasing operation is performed on the storage space for storing the firmware data packet in advance, the writing operation can be directly performed after the firmware data packet is obtained, and the transmission time of the firmware data packet is saved; furthermore, the erasing operation and the writing operation are executed in the idle time of Bluetooth transmission, so that the Bluetooth power consumption can be reduced, the Bluetooth receiving and sending interruption does not need to be closed, and the stability of Bluetooth connection between the devices is improved.
In a first aspect, an embodiment of the present invention provides a firmware upgrading method, including: determining a first storage space according to description information of first firmware, wherein part or all codes of the first firmware are stored in a preset memory, and the first storage space is located in the preset memory; performing an erasing operation on the first storage space during a first idle time of Bluetooth transmission; and writing an update packet of the first firmware into the first storage space during a second idle time of the Bluetooth transmission, wherein the update packet is from the first Bluetooth device. Optionally, the preset memory may be a Flash memory (Flash) memory. In one example, the preset memory may be a NOR Flash memory. Alternatively, the first idle time may include a plurality of sub-idle times, and the erase operation is performed once per sub-idle time. Alternatively, the second idle time may include a plurality of sub-idle times, and the write operation is performed once in each sub-idle time. Optionally, the sub idle time may refer to an idle time between two adjacent transceiving interruption nodes.
The description information of the first firmware is sent to the second Bluetooth device when the first Bluetooth device determines to upgrade the first firmware in the second Bluetooth device.
Optionally, the description information of the first firmware includes: the size of the first firmware, the starting address of the first memory space, and the running address of the code. In some embodiments, the description information of the first firmware includes a size of the first firmware. The second bluetooth device may autonomously determine the first storage space according to the size of the first firmware. Optionally, the description information of the first firmware may include a size of the first firmware and an address of the first storage space, and the address may be a start address of the first storage space. The second bluetooth device may dynamically determine the first memory space according to the size of the first firmware and the address of the first memory space. Of course, the first storage space may be a fixed space in the preset memory. The running address of the code is used for determining the running address of the updated first firmware.
Optionally, during a first idle time of the bluetooth transmission, performing an erasing operation on the first storage space, including: according to the size of the first storage space, executing M times of erasing operations on the first storage space, wherein each time of erasing operation is executed in the idle time of Bluetooth transmission, the erasing space of each time of erasing operation is integral multiple of unit space, and M is more than or equal to 1; if the residual space to be erased after the M-1 th erasing operation is executed is smaller than the size of one unit space, complementing the space to be erased into one unit space and executing the M-th erasing operation. The way of complementing the space to be erased into one unit space may be to complement the space to be erased into one unit space by extending according to physical characteristics of the corresponding memory.
Optionally, the performing the Q-th erase operation of the M times on the first storage space includes: determining the erasing time required by the Q-th erasing operation; determining a first time from a current time to a next transceiving interruption node; if the difference value between the first time and the erasing time is in a first value range, executing the erasing operation for the Q time at the first time; otherwise, triggering the adjustment of the Bluetooth connection parameters.
Optionally, the method further includes: after the Bluetooth connection parameters are adjusted, when the difference value between the second time from the current time to the next transceiving interrupt node and the erasing time is determined to be in a first value range, the Q-th erasing operation is executed at the second time.
Optionally, the update package of the first firmware is divided into a plurality of sub-update packages, and the first sub-update package is any one sub-update package of the first firmware; wherein writing the first sub-update package to the first storage space comprises: determining a write time required to write the first sub-update package to the first storage space; determining a third time from the current time to a next transceiving interruption node; if the difference value between the third time and the writing time is in a second value range, writing the first sub-update package into the first storage space at the third time; otherwise, triggering the adjustment of the Bluetooth connection parameters.
Optionally, the method further includes: after the Bluetooth connection parameters are adjusted, when the difference value between the fourth time from the current time to the next transceiving interrupt node and the writing time is determined to be in the second value range, the first sub update package is written into the first storage space at the fourth time.
Optionally, the triggering of the adjustment of the bluetooth connection parameter includes: if the difference between the third time and the writing time is smaller than the minimum boundary value of the second value range, determining whether the difference between the idle time and the writing time corresponding to the subsequent N transceiving interruption nodes is smaller than the minimum boundary value; if so, an adjustment to increase the Bluetooth connection parameters is triggered.
Optionally, after writing the update package of the first firmware into the first storage space, the method further includes: when the first firmware is restarted, copying the update package code of the first firmware to the running address of the code and running.
In a second aspect, an embodiment of the present invention provides a firmware upgrading apparatus, including: the preset storage module is used for storing part or all codes of the first firmware and providing a first storage space; the firmware upgrading code corresponding to the first firmware comprises the following functional modules: the determining module is used for determining the first storage space according to the description information of the first firmware; the erasing module is used for executing erasing operation on the first storage space in the first idle time of Bluetooth transmission; and the updating package of the first firmware is written into the first storage space during the second idle time of the Bluetooth transmission; and the Bluetooth receiving and sending module is used for receiving the update packet from the first Bluetooth equipment.
In a third aspect, an embodiment of the present invention provides a bluetooth chip, including: a processor for executing computer program instructions stored in a memory, wherein the computer program instructions, when executed by the processor, trigger the bluetooth chip to perform the method of the first aspect or any of the embodiments of the first aspect.
In a fourth aspect, an embodiment of the present invention provides an electronic device, including: at least one processor; and at least one memory communicatively coupled to the processor, wherein: the memory stores program instructions executable by the processor, the processor invoking the program instructions to be able to perform the manner of any of the embodiments of the first aspect or the first aspect described above.
In a fifth aspect, an embodiment of the present invention provides a computer-readable storage medium, where the computer-readable storage medium includes a stored program, and when the program runs, a device in which the computer-readable storage medium is located is controlled to execute the manner in the first aspect or any embodiment of the first aspect.
In the scheme of the embodiment of the invention, the OTA code of the first firmware can be partially or completely stored in the preset memory, and the preset memory does not need to be a RAM memory, so that the RAM resource of the system is saved; according to the scheme, the erasing operation is performed on the storage space for storing the firmware data packet in advance, the writing operation can be directly performed after the firmware data packet is obtained, and the transmission time of the firmware data packet is saved; furthermore, the erasing operation and the writing operation are executed in the idle time of Bluetooth transmission, so that the Bluetooth power consumption can be reduced, the Bluetooth receiving and sending interruption is not required to be closed, data can be normally received and sent between the devices, and the stability of Bluetooth connection between the devices is improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and those skilled in the art can also obtain other drawings according to the drawings without creative efforts.
Fig. 1 is a schematic structural diagram of a bluetooth system according to an embodiment of the present invention;
fig. 2 is a schematic diagram of a bluetooth transmission time node according to an embodiment of the present invention;
fig. 3 is a flowchart of a firmware upgrading method according to an embodiment of the present invention;
FIG. 4-a is a flow chart of another firmware upgrade method provided by an embodiment of the invention;
FIG. 4-b is a flow chart for performing an erase operation based on one of the implementations provided in FIG. 4-a;
FIG. 4-c is a flow chart for performing a write operation based on one of the implementations provided in FIG. 4-a;
fig. 5 is a schematic structural diagram of a firmware upgrading apparatus according to an embodiment of the present invention;
fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Fig. 1 is a schematic structural diagram of a bluetooth system according to an embodiment of the present invention. As shown in fig. 1, the system includes: a first bluetooth device and a second bluetooth device. The first bluetooth device can be used as a bluetooth master device, and the second bluetooth device can be used as a bluetooth slave device. The first Bluetooth device establishes a Bluetooth connection with the second Bluetooth device. The first bluetooth device may obtain a new version of the first firmware. The second bluetooth device is provided with an old version of the first firmware. When the first Bluetooth device determines that the first firmware of the second Bluetooth device needs to be upgraded, the first Bluetooth device sends a related data packet of the first firmware to the second Bluetooth device. As shown in fig. 2, in the bluetooth communication mechanism, a transceiver interrupt node (corresponding to the interrupt node in fig. 2) is determined between bluetooth devices based on bluetooth connection parameters, and the time of two adjacent transceiver interrupt nodes can be divided into an active time and an idle time. The working time can be divided into time for hardware starting, code calling and the like and data transceiving time. Optionally, the embodiment of the present invention focuses on the data transceiving time during the working time. And during the data transceiving time, the first Bluetooth device and the second Bluetooth device can perform data interaction. For example, the first bluetooth device and the second bluetooth device can receive and transmit valid data during data receiving and transmitting time; and if no valid data exists between the first Bluetooth device and the second Bluetooth device, the heartbeat data can be transmitted and received. In idle time, the first bluetooth device and the second bluetooth device enter a sleep state. As can be seen from fig. 2, the lengths of time occupied by the working time between two adjacent transceiving interrupt nodes are different, and the lengths of time occupied by the corresponding idle time are also different.
The first bluetooth device and the second bluetooth device may be electronic devices such as a mobile phone, a tablet computer, a camera, a wearable device, a vehicle-mounted device, a building device, an intelligent home device, an Augmented Reality (AR)/Virtual Reality (VR) device, and the embodiment of the present application does not limit the specific type of the electronic device.
Fig. 3 is a flowchart of a firmware upgrading method according to an embodiment of the present invention. The execution subject of the method shown in fig. 3 may be the second bluetooth device described above. The firmware upgrading method can be applied to a low-power Bluetooth transmission scheme and can also be applied to a traditional Bluetooth transmission scheme. Optionally, part or all of the code of the first firmware in the embodiment of the present invention may be stored in the preset memory. Accordingly, part or all of the firmware upgrade code included in the first firmware is stored in the preset memory. For example, the firmware upgrade code includes a code for writing an update package of the first firmware into the first storage space, and the partial code may be stored in the RAM or the ROM memory, and the other firmware upgrade codes are stored in the preset memory. Of course, the firmware upgrade code placed in the preset memory, the RAM or the ROM memory may be adjusted according to actual needs, and this is not illustrated here. The preset memory may be a Flash memory. In one example, the preset memory may be a NOR Flash memory. The method comprises the following processing steps:
101, determining a first storage space according to the description information of the first firmware. The first firmware is firmware which needs to be updated in the second Bluetooth device. The first firmware may be any one of the firmware in the second bluetooth device. The second bluetooth device may acquire the description information of the first firmware by acquiring from a firmware server, acquiring according to an input of a user, or acquiring from the first bluetooth device. Optionally, the manner in which the second bluetooth device acquires the description information of the first firmware from the first bluetooth device may include: after the second bluetooth device establishes a connection with the first bluetooth device, the first bluetooth device may read information such as the version of the first firmware and/or the version of the firmware bin file existing in the second bluetooth device. And the first Bluetooth equipment determines that the existing first firmware in the second Bluetooth equipment needs to be upgraded according to the read information such as the version of the first firmware and/or the version of the firmware bin file. At this time, the first bluetooth device may transmit description information of the first firmware to the second bluetooth device. It should be noted that, in step 101, the description information of the first firmware is description information of a new version of the first firmware. Optionally, the description information of the first firmware may include: the size of the first firmware, the starting address of the first memory space, and the running address of the code. In some embodiments, the description information of the first firmware includes a size of the first firmware. The second bluetooth device may autonomously determine the first storage space according to the size of the first firmware. Optionally, the description information of the first firmware may include a size of the first firmware and an address of the first storage space, and the address may be a start address of the first storage space. The second bluetooth device may dynamically determine the first memory space according to the size of the first firmware and the address of the first memory space. Of course, the first storage space may be a fixed space in the preset memory. The running address of the code is used for determining the running address of the updated first firmware.
After the second bluetooth device determines to update the first firmware, the first storage space may be determined according to the description information of the first firmware. Optionally, the second bluetooth device may determine the first storage space in a preset memory, such as the above-mentioned Flash memory. The first storage space is used for storing the updated package of the upgraded first firmware.
102, during the first idle time of the bluetooth transmission, an erasing operation is performed on the first storage space. Unlike the related art, the way firmware data is written to the memory space while erasing. In the embodiment of the invention, after the first storage space is determined, the erasing operation is performed on the first storage space in the first idle time of the Bluetooth transmission. Wherein, during a first idle time of a bluetooth transmission, performing an erase operation on the first storage space may include: and performing M times of erasing operation on the first storage space according to the size of the first storage space, wherein each time of erasing operation is performed in the idle time of Bluetooth transmission, the space erased by each time of erasing operation is integral multiple of the unit space, and M is more than or equal to 1.
And if the residual space to be erased after the M-1 erasing operation is executed is smaller than the size of one unit space, complementing the space to be erased into one unit space and executing the M erasing operation. The space to be erased is made up to a unit space by extending and making up according to the physical characteristics of the corresponding memory.
In some embodiments, M is equal to 1 if the first storage space is less than or equal to one unit space. I.e. one erase operation is performed on the first memory space. If the first storage space is less than one unit space, the first storage space needs to be complemented to one unit space, and then the erasing operation is executed. The erasing time of the one-time erasing operation corresponds to a unit time, and the unit time is the time required for erasing a unit space. Wherein the unit time is determined based on a physical characteristic of a preset memory. For example, when the preset memory is a Flash memory, the unit time is determined based on physical characteristics of the Flash memory.
In some embodiments, if the first storage space is greater than one unit space, M is greater than 1, i.e., at least two erase operations are performed on the first storage space. The erase space of each erase operation is an integer multiple of the unit space. The erasing time of each erasing operation is determined according to the number of the unit spaces erased. For example, the Q-th erase operation corresponds to one unit space, and the Q-th erase operation corresponds to one unit time. If the Q-th erase operation corresponds to two unit spaces, the Q-th erase operation corresponds to two unit times. Wherein, for the last erasing operation, if the unit space is less than one, the first storage space needs to be complemented to one unit space to perform the erasing operation.
In some embodiments, the unit space may include a plurality of unit spaces of different sizes. When the Q-th erasing operation is executed, firstly, whether the remaining space to be erased is larger than or equal to the first unit space is determined, if the space to be erased is larger than or equal to the first unit space, the Q-th erasing is carried out on one first unit space, and the first unit space is the unit space corresponding to the Q-1-th erasing operation. If the remaining space to be erased is smaller than the first unit space, it is further determined whether the remaining space to be erased is greater than or equal to a second unit space, which is smaller than the first unit space, \8230, until the comparison reaches the smallest unit space. If the remaining space to be erased is less than or equal to the minimum unit space, the Q-th erase operation is the last erase operation. Optionally, the unit time corresponding to each unit space with different sizes may be the same or different. In the embodiment of the invention, the unit time corresponding to each unit space with different sizes is the same. Therefore, when the first storage space is erased, the first storage space is erased based on the larger unit space, and if the larger unit space is not enough, the second storage space is erased according to the smaller unit space, so that the erasing efficiency is improved, and the erasing time is saved. And for the last erasing operation, if the residual space to be erased corresponding to the last erasing operation is less than one unit space, complementing the residual space to be erased to be one unit space. Alternatively, the complement may be based on the smallest unit space.
And 103, writing an update packet of the first firmware into the first storage space during a second idle time of the Bluetooth transmission, wherein the update packet of the first firmware comes from the first Bluetooth device.
In this embodiment of the present invention, after the second bluetooth device erases the first storage space, the second bluetooth device may notify the first bluetooth device to send the update packet of the first firmware at the following data transceiving time. And the first Bluetooth device sends the update package of the first firmware to the second Bluetooth device according to the notification information. Optionally, the update package of the first firmware may be divided into a plurality of sub-update packages. Each sub-update packet may be sent to the second bluetooth device, respectively. For example, the first bluetooth device sends one sub-update packet to the second bluetooth device at a time. And after the second Bluetooth device writes the sub-update package into the first storage space, receiving and writing the next sub-update package. Of course, the receiving and sending quantity and the writing time of the sub-update package between the first bluetooth device and the second bluetooth device can be adjusted according to actual needs. For convenience of description, any one of the sub update packages of the first firmware is referred to as a first sub update package.
And after receiving the first sub-update packet, the second Bluetooth device writes the first sub-update packet into the first storage space in an idle time of Bluetooth transmission. The idle time may be an idle time after the second bluetooth device receives the first sub-update packet and before a next transceiving interrupt node. For example, the current time is t 3 The arrival time of the next transceiving interruption node is t 4 Then the second bluetooth device may be at t 4 -t 3 The first sub update package is written into the first storage space.
According to the firmware upgrading method, the OTA codes can be partially or completely stored in the preset memory, and the preset memory does not need to be a RAM memory, so that the system RAM resources are saved; according to the scheme, the erasing operation is performed on the storage space for storing the firmware data packet in advance, the writing operation can be directly performed after the firmware data packet is obtained, and the transmission time of the firmware data packet is saved; furthermore, the erasing operation and the writing operation are executed in the idle time of Bluetooth transmission, so that the Bluetooth power consumption can be reduced, the Bluetooth receiving and sending interruption is not required to be closed, data can be normally received and sent between the Bluetooth devices, and the stability of Bluetooth connection between the devices is improved.
Fig. 4-a is a flowchart of another firmware upgrading method according to an embodiment of the present invention. As shown in fig. 4-a, the processing steps of the method include:
201, when a first bluetooth device determines that a first firmware in a second bluetooth device needs to be upgraded, sending description information of the first firmware to the second bluetooth device. The description information of the first firmware includes a size of the first firmware, a start address of the first memory space, and an operation address of the code. The size of the first firmware is the size of the new version of the first firmware.
202, the second bluetooth device determines the first storage space according to the size of the first firmware and the starting address of the first storage space. Alternatively, the second bluetooth device may determine the first memory space in the NOR FLASH.
And 203, the second Bluetooth device executes M times of erasing operations on the first storage space according to the size of the first storage space, wherein each time of erasing operation is executed in the idle time of Bluetooth transmission, the space erased by each time of erasing operation is integral multiple of the unit space, and M is larger than or equal to 1.
And if the residual space to be erased after the M-1 th erasing operation is executed is smaller than the size of one unit space, complementing the space to be erased into one unit space and executing the M-th erasing operation.
In this embodiment of the present invention, the performing the Q-th erase operation of M times on the first storage space may specifically include, as shown in fig. 4-b:
2031, determining the erase time required for the Q-th erase operation. Q is 1, 2, 8230, 8230and M. The erasing time is an integral multiple of a unit time, and the unit time is determined according to the physical characteristics of a preset storage space. In some embodiments, the first storage space supports an erase operation in units of a first unit space and a second unit space. The first unit space is larger than the second unit space. And if the residual space to be erased corresponding to the Q-th erasing operation is larger than or equal to one first unit space, erasing one first unit space for the Q-th erasing operation, wherein the erasing time corresponds to the unit time required by one first unit space. And if the residual space to be erased corresponding to the Q-th erasing operation is smaller than a first unit space and is larger than or equal to a second unit space, erasing a second unit space for the Q-th time, wherein the erasing time corresponds to the unit time required by the second unit space. And if the residual space to be erased corresponding to the Q-th erasing operation is smaller than a second unit space, the Q-th erasing operation is the last erasing operation, the residual space to be erased is complemented into a second unit space, the erasing operation is executed, and the erasing time corresponds to unit time needed by the second unit space. Optionally, the unit time required by the first unit space and the unit time required by the second unit space may be the same or different, and may be determined according to the physical characteristics of Flash. For example, in a Flash memory, it is supported that the erasing operation is performed in units of 64K and 4K. Assume that the first memory space is 70k in size, which contains one 64k space, 1 4k spaces and the remaining 12 k space. One 64k space corresponds to a unit erase time of a, one 4k space corresponds to a unit erase time of b, and the remaining 12 k space is complemented to a 4k space. The actually erased space is 64k +4k, and the erasing time is a +2b. The values of a and b can be determined according to the physical characteristics of Flash. Optionally, a and b may have the same value. The erasing time required by the first storage space can be reduced as much as possible based on the mode.
2032, a first time from the current time to the next transceiving interruption node is determined. Wherein the first time corresponds to an idle time of a bluetooth transmission.
2033, if the difference between the first time and the erase time is within the first value range, step 2034 is executed, and if not, step 2035 is executed. Wherein, the difference between the first time and the erasing time is not in the first value range and comprises: the difference between the first time and the erasing time is smaller than the minimum boundary value of the first value range, or the difference between the first time and the erasing time is larger than the maximum boundary value of the first value range. The minimum boundary value and the maximum boundary value define a first range.
2034, the Q-th erase operation is performed at the first time.
2035, triggering the adjustment of the bluetooth connection parameters. Wherein, the triggering the adjustment of the bluetooth connection parameter may be to adjust the bluetooth connection parameter through the underlying hardware. Optionally, the first firmware in the second bluetooth device sends the first information for adjusting the bluetooth connection parameter to the underlying hardware. Alternatively, the first firmware may be an upgrade program of the first firmware. And the bottom hardware in the second Bluetooth device adjusts the Bluetooth connection parameters according to the first information, and after the Bluetooth connection parameters are confirmed by the bottom hardware of the first Bluetooth device, the bottom hardware of the second Bluetooth device sends the adjusted Bluetooth connection parameters to the first firmware on the upper layer of the second Bluetooth device.
And if the difference value obtained by subtracting the erasing time from the first time is smaller than the minimum boundary value of the first value range, increasing the Bluetooth connection parameter. And if the difference value obtained by subtracting the erasing time from the first time is larger than the maximum boundary value of the first value range, reducing the Bluetooth connection parameters.
2036 and after adjusting the bluetooth connection parameters, when determining that the difference between the second time from the current time to the next node where the transmission and reception are interrupted and the erasing time is within the first value range, executing the Q-th erasing operation at the second time.
After the erasing operation is performed for M times, the second bluetooth device may notify the first bluetooth device to send the update package of the first firmware after the first storage space is completely erased. Optionally, the second bluetooth device may adjust the bluetooth connection parameter again before notifying the first bluetooth device to send the update packet of the first firmware, where the adjustment may be to reduce the bluetooth connection parameter to reduce an interval between two adjacent transceiver interrupt nodes, so that the corresponding idle time during subsequent writing is more matched with the size of the update packet. Of course, the second bluetooth device may also notify the first bluetooth device to send the update packet of the first firmware without adjusting the bluetooth connection parameter after the first storage space is erased.
And 204, the second Bluetooth device respectively receives each sub-update packet of the first firmware and respectively writes each sub-update packet into the first storage space during the idle time of Bluetooth transmission. In a manner of writing the first sub-update package into the first storage space, the first sub-update package is any one of the sub-update packages, as shown in fig. 4-c, and the method includes:
2041, the second bluetooth device determines a write time required to write the first sub-update packet to the first memory space.
2042, the second bluetooth device determines a third time (corresponding to T3 in the figure) from the current time to the next transceiving interrupt node.
2043, the second bluetooth device determines whether the difference between the third time and the write-in time is in the second value range, and if so, executes step 2044; if false, go to step 2045.
Wherein, the difference between the third time and the writing time not in the second value range includes: the difference of the third time minus the writing time is smaller than the minimum boundary value of the second value range, or the difference of the third time minus the writing time is larger than the maximum boundary value of the second value range. And the minimum boundary value and the maximum boundary value define a value range as a second value range.
For example, the current time is t 3 The arrival time of the next receiving and dispatching interruption node is t 4 Then the third time is t 4 -t 3 . If t is 4 -t 3 The difference of the writing time is in the second range, which shows that the writing operation of the first sub-update package can be performed more efficiently in the third time. But if t is 4 -t 3 The difference between the write times is greater than the maximum boundary value of the second value range, which indicates that the idle time from the current time to the next transceiving interruption node is much greater than the write time, which may cause unnecessary waiting, and therefore the idle time may be reduced by adjusting the bluetooth connection parameter to improve the transmission efficiency of the first firmware. If t is 4 -t 3 The difference value of the write-in time is smaller than the minimum boundary value of the second value range, which indicates that the idle time under the current bluetooth connection parameter is difficult to complete the write-in operation, and the idle time needs to be adjusted by adjusting the bluetooth connection parameterThe time increases to improve the stability of the first firmware transfer.
2044, the second Bluetooth device writes the first sub-update packet into the first memory space at the third time.
2045, the second bluetooth device triggers an adjustment of the bluetooth connection parameters. When the difference between the third time and the write-in time is smaller than the minimum boundary value of the second value range, the second bluetooth device determines whether the difference between the idle time and the write-in time corresponding to the subsequent N transceiving interruption nodes is smaller than the minimum boundary value of the second value range, and if so, the adjustment of increasing the bluetooth connection parameters is triggered.
In the embodiment of the present invention, if the difference between the third time and the write time is smaller than the minimum boundary value of the second value range, the difference may be caused by a large amount of occupied code operation time and data transceiving time. Therefore, whether the idle time corresponding to the subsequent N receiving and transmitting interruption nodes can meet the difference value requirement can be continuously determined, and if the difference value between the idle time and the writing time between the xth interruption receiving and transmitting node and the xth-1 interruption receiving and transmitting node is in the second value range, the first sub-updating packet is written into the first storage space in the idle time. Wherein, N can be set according to actual needs, and for example, can be set to 3,4,5 or other possible numbers. And x is one value in N. If the difference values of the idle time and the write-in time corresponding to the subsequent N receiving and transmitting interruption nodes are smaller than the minimum boundary value of the second value range, the corresponding idle time can meet the write-in requirement by adjusting the Bluetooth connection parameters. Through this mode, can reduce the adjustment to bluetooth connection parameter, guarantee the stability of bluetooth connection.
2046, after the bluetooth connection parameter is adjusted, when it is determined that a difference between a fourth time from a current time to a next transceiving interrupt node and the writing time is within the second value range, writing the first sub update packet into the first storage space at the fourth time.
In this embodiment, the first sub-update package is any one of the sub-update packages of the new version firmware. The writing mode of each sub-update package into the first storage space is the same, and is not described again.
After the second bluetooth device writes all the sub-update packets of the first firmware into the first storage space, the method further comprises: when the first firmware is restarted, copying the update package code of the first firmware to the running address of the code and running.
In the embodiment of the invention, according to the size of the new firmware version, the erasing operation can be performed on the storage space in advance, the erasing time in the firmware upgrading process is reduced, and the stability of connection between a system and Bluetooth is improved. Furthermore, the firmware upgrading code of the embodiment of the invention can be directly stored in the NOR FLASH to run, thereby saving the RAM resource of the system. Furthermore, the scheme executes the erasing operation of the storage space and the writing operation of the firmware upgrading data in the idle time of Bluetooth transmission, so that the utilization rate of the processor can be improved, and the firmware upgrading speed is increased. In addition, the scheme can dynamically adjust the Bluetooth connection parameters according to the time required by executing the erasing operation and the time required by executing the writing operation, and can improve the efficiency and the stability of the transmission of the first firmware updating packet. Furthermore, the estimation upgrading process does not need to close Bluetooth transmission interruption, can normally receive and transmit Bluetooth data, and ensures the stability of Bluetooth connection between devices. Of course, a flash suspend/resume mechanism may also be supported during the firmware upgrade phase, as well as support that may be interrupted by other interrupts.
Corresponding to the firmware upgrading method, the embodiment of the invention also provides a firmware upgrading device. Those skilled in the art will appreciate that these firmware upgrade means may be constructed using commercially available hardware components configured by the steps taught by the present solution.
As shown in fig. 5, the firmware upgrade apparatus includes: the system comprises a preset storage module, a first storage module and a second storage module, wherein the preset storage module is used for storing part or all codes of first firmware and providing a first storage space; as shown in fig. 5, the corresponding firmware upgrade code in the first firmware includes the following functional modules:
a determining module 301, configured to determine a first storage space according to description information of the first firmware; the erasing module 302 is configured to perform an erasing operation on the first storage space during a first idle time of bluetooth transmission; writing the updating packet of the first firmware into the first storage space during the second idle time of Bluetooth transmission; the bluetooth transceiver module 303 is configured to receive an update packet of the first firmware from the first bluetooth device.
The firmware upgrading device of the embodiment of the invention can execute the method of the embodiment shown in fig. 3-4. For parts of the present embodiment not described in detail, reference may be made to the relevant description of the embodiments shown in fig. 3-4. The implementation process and technical effect of the technical solution refer to the descriptions in the embodiments shown in fig. 3 to fig. 4, and are not described herein again.
It should be understood that the division of the modules of the firmware upgrading apparatus shown in fig. 5 is only a logical division, and all or part of the actual implementation may be integrated into one physical entity or may be physically separated. And these modules can all be implemented in the form of software invoked by a processing element; or can be implemented in the form of hardware; and part of the modules can be realized in the form of calling by the processing element in software, and part of the modules can be realized in the form of hardware. For example, the erasing module may be a separately established processing element, or may be integrated into a chip of the electronic device. Other modules are implemented similarly. In addition, all or part of the modules can be integrated together or can be independently realized. In implementation, each step of the above method or each module above may be implemented by an integrated logic circuit of hardware in a processor element or an instruction in the form of software.
For example, the above modules may be one or more integrated circuits configured to implement the above methods, such as: one or more Application Specific Integrated Circuits (ASICs), one or more microprocessors (DSPs), one or more Field Programmable Gate Arrays (FPGAs), etc. For another example, these modules may be integrated together and implemented in the form of a System-On-a-Chip (SOC).
An embodiment of the present invention further provides a bluetooth chip, including: and a processor for executing the computer program instructions stored in the memory, wherein when the computer program instructions are executed by the processor, the bluetooth chip is triggered to execute the firmware upgrade method. Optionally, the memory may include a Flash memory, and the Flash memory is used for storing part or all of the code of the first firmware. In one example, the Flash memory may be a NOR Flash memory.
Fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present invention. The electronic device shown in fig. 6 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present specification. As shown in fig. 6, the electronic device is in the form of a general purpose computing device. Components of the electronic device may include, but are not limited to: one or more processors 410, a communication interface 420, a memory 430, and a communication bus 440 that connects the various system components (including the memory 430, the communication interface 420, and the processors 410). The communication interface 420 may be coupled to other electronic devices or other components, for example, the communication interface 420 may communicate with other bluetooth devices.
Specifically, in an embodiment of the present application, a processor of the electronic device may be an on-chip device SOC, and the processor may include a Central Processing Unit (CPU), and may further include other types of processors.
Specifically, in an embodiment of the present application, the processors may include, for example, a CPU, a DSP, a microcontroller, or a digital Signal processor, and may further include a GPU, an embedded Neural-Network Processor (NPU), and an Image Signal Processing (ISP), and the processors may further include necessary hardware accelerators or logic Processing hardware circuits, such as an ASIC, or one or more integrated circuits for controlling the execution of the program according to the present application. Further, the processor may have the functionality to operate one or more software programs, which may be stored in the storage medium.
Communication bus 440 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. By way of example, such architectures include, but are not limited to, industry Standard Architecture (ISA) bus, micro Channel Architecture (MAC) bus, enhanced ISA bus, video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus.
Electronic devices typically include a variety of computer system readable media. Such media may be any available media that is accessible by the electronic device and includes both volatile and nonvolatile media, removable and non-removable media.
Memory 430 may include computer system readable media in the form of volatile Memory, such as Random Access Memory (RAM) and/or cache Memory. The electronic device may further include other removable/non-removable, volatile/nonvolatile computer system storage media. Optionally, the memory 430 may include a Flash memory for storing part or all of the code of the firmware. And part or all of the firmware upgrading codes in the firmware codes are stored in a Flash memory. The firmware upgrade method of the embodiments of the present specification is performed when firmware upgrade code is called by the processor 410. Optionally, the memory 430 may include a RAM memory, and the RAM memory may be used to cooperate with the Flash memory to execute the firmware upgrade method according to the embodiment of the present invention. For example, when a packet of the first firmware sent by the first bluetooth device is received through the communication interface 420, the packet may be buffered in the RAM and then written from the RAM to the Flash memory.
Embodiments of the present invention provide a computer-readable storage medium, which stores computer instructions, where the computer instructions cause the computer to execute the method provided by the embodiments shown in fig. 3 to 4 in this specification.
The computer-readable storage medium described above may take any combination of one or more computer-readable media. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a Read Only Memory (ROM), a Flash Memory, an Erasable Programmable Read Only Memory (EPROM), or a Flash Memory, an optical fiber, a portable compact disc Read Only Memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
The foregoing description has been directed to specific embodiments of this disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
In the description of the specification, reference to the description of "one embodiment," "some embodiments," "an example," "a specific example," or "some examples" or the like means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the specification. In this specification, the schematic representations of the terms used above are not necessarily intended to refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Moreover, various embodiments or examples and features of various embodiments or examples described in this specification can be combined and combined by one skilled in the art without being mutually inconsistent.
Furthermore, the terms "first", "second" and "first" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or to implicitly indicate the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of the feature. In the description of this specification, "plurality" means at least two, e.g., two, three, etc., unless explicitly specified otherwise.
Any process or method descriptions in flow charts or otherwise described herein may be understood as representing modules, segments, or portions of code which include one or more executable instructions for implementing steps of a custom logic function or process, and alternate implementations are included within the scope of the preferred embodiment of the present description in which functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art of the embodiments of the present description.
The word "if," as used herein, may be interpreted as "at \8230; \8230when" or "when 8230; \823030when" or "in response to a determination" or "in response to a detection", depending on the context. Similarly, the phrases "if determined" or "if detected (a stated condition or event)" may be interpreted as "when determined" or "in response to a determination" or "when detected (a stated condition or event)" or "in response to a detection (a stated condition or event)", depending on the context.
In the several embodiments provided in this specification, it should be understood that the disclosed system, apparatus, and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and there may be other divisions in actual implementation, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
In addition, functional units in the embodiments of the present description may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, or in a form of hardware plus a software functional unit.
The above description is only a preferred embodiment of the present disclosure, and should not be taken as limiting the present disclosure, and any modifications, equivalents, improvements, etc. made within the spirit and principle of the present disclosure should be included in the scope of the present disclosure.

Claims (12)

1. A method of firmware upgrade, the method comprising:
determining a first storage space according to description information of first firmware, wherein part or all codes of the first firmware are stored in a preset memory, and the first storage space is located in the preset memory;
performing an erasing operation on the first storage space during a first idle time of Bluetooth transmission;
writing an update packet of the first firmware into the first storage space at a second idle time of Bluetooth transmission, wherein the update packet is from a first Bluetooth device;
performing an erase operation on the first storage space during a first idle time of a bluetooth transmission, comprising:
according to the size of the first storage space, executing M times of erasing operations on the first storage space, wherein each time of erasing operation is executed in the idle time of Bluetooth transmission, the erasing space of each time of erasing operation is integral multiple of unit space, and M is more than or equal to 1;
if the residual space to be erased after the M-1 th erasing operation is executed is smaller than the size of one unit space, complementing the space to be erased into one unit space and executing the M-th erasing operation;
performing a Q-th erase operation of the M times on the first memory space, including:
determining the erasing time required by the Q erasing operation;
determining a first time from a current time to a next transceiving interruption node;
if the difference value between the first time and the erasing time is in a first value range, executing the erasing operation for the Q time at the first time; otherwise, triggering the adjustment of the Bluetooth connection parameters.
2. The method of claim 1, wherein the description information of the first firmware is sent to the second Bluetooth device when the first Bluetooth device determines to upgrade the first firmware in the second Bluetooth device.
3. The method according to claim 1 or 2, wherein the description information of the first firmware includes: the size of the first firmware, the starting address of the first memory space, and the running address of the code.
4. The method of claim 1, further comprising:
after the Bluetooth connection parameters are adjusted, when the difference value between the second time from the current time to the next transceiving interrupt node and the erasing time is determined to be in a first value range, the Q-th erasing operation is executed at the second time.
5. The method according to claim 1, wherein the update package of the first firmware is divided into a plurality of sub-update packages, and the first sub-update package is any one sub-update package of the first firmware; wherein writing the first sub-update package to the first storage space comprises:
determining a write time required to write the first sub-update package to the first storage space;
determining a third time from the current time to a next transceiving interruption node;
if the difference value between the third time and the writing time is in a second value range, writing the first sub-update package into the first storage space at the third time; otherwise, triggering the adjustment of the Bluetooth connection parameters.
6. The method of claim 5, further comprising:
after the Bluetooth connection parameters are adjusted, when the difference value between the fourth time from the current time to the next transceiving interrupt node and the writing time is determined to be in the second value range, the first sub-update package is written into the first storage space at the fourth time.
7. The method of claim 6, wherein triggering the adjustment of the Bluetooth connection parameters comprises:
if the difference between the third time and the writing time is smaller than the minimum boundary value of the second value range, determining whether the difference between the idle time and the writing time corresponding to the subsequent N transceiving interruption nodes is smaller than the minimum boundary value;
if so, an adjustment to increase the Bluetooth connection parameters is triggered.
8. The method of claim 1, wherein after writing the update package of the first firmware to the first storage space, the method further comprises:
when the first firmware is restarted, copying the updating packet code of the first firmware to the running address of the code and running.
9. A firmware upgrade apparatus, comprising:
the preset storage module is used for storing part or all codes of the first firmware and providing a first storage space; the firmware upgrading code corresponding to the first firmware comprises the following functional modules:
the determining module is used for determining the first storage space according to the description information of the first firmware;
the erasing module is used for executing erasing operation on the first storage space in the first idle time of Bluetooth transmission; and the updating package of the first firmware is written into the first storage space during the second idle time of the Bluetooth transmission; wherein, in a first idle time of the bluetooth transmission, performing an erasing operation on the first storage space includes: according to the size of the first storage space, executing M times of erasing operations on the first storage space, wherein each time of erasing operation is executed in the idle time of Bluetooth transmission, the space erased by each time of erasing operation is integral multiple of a unit space, and M is more than or equal to 1; if the residual space to be erased after the M-1 th erasing operation is executed is smaller than the size of one unit space, complementing the space to be erased into one unit space and executing the M-th erasing operation; wherein performing the Q-th erase operation of the M times on the first storage space comprises: determining the erasing time required by the Q-th erasing operation; determining a first time from a current time to a next transceiving interruption node; if the difference value between the first time and the erasing time is in a first value range, executing the erasing operation for the Q time at the first time; otherwise, triggering the adjustment of the Bluetooth connection parameters;
and the Bluetooth receiving and sending module is used for receiving the update packet from the first Bluetooth equipment.
10. A Bluetooth chip, comprising:
a processor for executing computer program instructions stored in a memory, wherein the computer program instructions, when executed by the processor, trigger the bluetooth chip to perform the method of any of claims 1 to 8.
11. An electronic device, comprising:
at least one processor; and
at least one memory communicatively coupled to the processor, wherein:
the memory stores program instructions executable by the processor, the processor invoking the program instructions to perform the method of any of claims 1 to 8.
12. A computer-readable storage medium, comprising a stored program, wherein the program, when executed, controls an apparatus in which the computer-readable storage medium is located to perform the method of any of claims 1-8.
CN202110004296.4A 2021-01-04 2021-01-04 Firmware upgrading method and related equipment Active CN112799696B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110004296.4A CN112799696B (en) 2021-01-04 2021-01-04 Firmware upgrading method and related equipment
PCT/CN2021/140018 WO2022143295A1 (en) 2021-01-04 2021-12-21 Method for upgrading firmware, and related device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110004296.4A CN112799696B (en) 2021-01-04 2021-01-04 Firmware upgrading method and related equipment

Publications (2)

Publication Number Publication Date
CN112799696A CN112799696A (en) 2021-05-14
CN112799696B true CN112799696B (en) 2023-02-28

Family

ID=75807991

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110004296.4A Active CN112799696B (en) 2021-01-04 2021-01-04 Firmware upgrading method and related equipment

Country Status (2)

Country Link
CN (1) CN112799696B (en)
WO (1) WO2022143295A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112799696B (en) * 2021-01-04 2023-02-28 展讯通信(上海)有限公司 Firmware upgrading method and related equipment
CN114422994A (en) * 2022-03-29 2022-04-29 龙旗电子(惠州)有限公司 Firmware upgrading method and device, electronic equipment and storage medium
CN117202143A (en) * 2022-12-20 2023-12-08 荣耀终端有限公司 Connection parameter updating method, bluetooth device and readable storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107085525A (en) * 2017-03-17 2017-08-22 深圳市战音科技有限公司 Method for upgrading software and device based on Bluetooth electronic devices
CN109542495A (en) * 2018-11-12 2019-03-29 青岛海信电器股份有限公司 A kind of method for upgrading software and device

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7039796B2 (en) * 2002-06-04 2006-05-02 Hewlett-Packard Development Company, L.P. Method and system of locating a position in memory at which to store incoming firmware image
US7509121B2 (en) * 2005-04-18 2009-03-24 Terax Communication Technologies Inc. Method of updating firmware using object push profile in the bluetooth object exchange protocol
CN102279712A (en) * 2011-08-10 2011-12-14 北京百度网讯科技有限公司 Storage control method, system and device applied to network storage system
US9116774B2 (en) * 2013-05-14 2015-08-25 Sandisk Technologies Inc. Firmware updates for multiple product configurations
CN107402776A (en) * 2016-05-20 2017-11-28 南京阿波罗机器人科技有限公司 A kind of mobile phone wireless upgrading stm32 singlechip controller firmware methods based on bluetooth 4
CN110187899A (en) * 2019-06-04 2019-08-30 深圳云里物里科技股份有限公司 A kind of firmware programming method, apparatus and its relevant device
CN112799696B (en) * 2021-01-04 2023-02-28 展讯通信(上海)有限公司 Firmware upgrading method and related equipment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107085525A (en) * 2017-03-17 2017-08-22 深圳市战音科技有限公司 Method for upgrading software and device based on Bluetooth electronic devices
CN109542495A (en) * 2018-11-12 2019-03-29 青岛海信电器股份有限公司 A kind of method for upgrading software and device

Also Published As

Publication number Publication date
CN112799696A (en) 2021-05-14
WO2022143295A1 (en) 2022-07-07

Similar Documents

Publication Publication Date Title
CN112799696B (en) Firmware upgrading method and related equipment
KR102148948B1 (en) Multi tasking method of electronic apparatus and electronic apparatus thereof
KR102245247B1 (en) GPU remote communication using triggered actions
US20190228217A1 (en) Method, apparatus and device for waking up voice interaction function based on gesture, and computer readable medium
WO2018082570A1 (en) I/o request scheduling method and device
US10846124B2 (en) Communication method, apparatus and system for virtual machine and host machine
KR101702698B1 (en) Adaptive process importance
CN110300328B (en) Video playing control method and device and readable storage medium
US20140282507A1 (en) Systems and methods of using a hypervisor with guest operating systems and virtual processors
US10402222B2 (en) Task migration method and apparatus
JP2017538212A (en) Improved function callback mechanism between central processing unit (CPU) and auxiliary processor
WO2013154541A1 (en) Remote direct memory access with reduced latency
US20230221784A1 (en) System and method for power state enforced subscription management
WO2019128571A1 (en) Resource management method and device, mobile terminal, as well as computer readable storage medium
CN114691300A (en) Hot migration method of virtual machine instance
US11222119B2 (en) Technologies for secure and efficient native code invocation for firmware services
WO2017206901A1 (en) Process control method and related device
KR102255361B1 (en) Method and electronic device for processing intent
US10042856B2 (en) Method and electronic device for processing data
CN114153621A (en) System process regulation and control method and device, electronic equipment and readable storage medium
WO2021018052A1 (en) Garbage collection method and apparatus
US11221875B2 (en) Cooperative scheduling of virtual machines
US10545562B2 (en) Electronic device and method for operating the same
CN110023907B (en) Processing method and device
CN112463028B (en) I/O processing method, system, equipment and computer readable storage medium

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