WO2016090822A1 - 对固件进行升级的方法及装置 - Google Patents

对固件进行升级的方法及装置 Download PDF

Info

Publication number
WO2016090822A1
WO2016090822A1 PCT/CN2015/077855 CN2015077855W WO2016090822A1 WO 2016090822 A1 WO2016090822 A1 WO 2016090822A1 CN 2015077855 W CN2015077855 W CN 2015077855W WO 2016090822 A1 WO2016090822 A1 WO 2016090822A1
Authority
WO
WIPO (PCT)
Prior art keywords
chip
firmware
partition
downloading
upgraded
Prior art date
Application number
PCT/CN2015/077855
Other languages
English (en)
French (fr)
Inventor
孟德国
刘鑫
侯恩星
Original Assignee
小米科技有限责任公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 小米科技有限责任公司 filed Critical 小米科技有限责任公司
Priority to BR112015020272A priority Critical patent/BR112015020272A2/pt
Priority to RU2015131124A priority patent/RU2633151C2/ru
Priority to MX2015010881A priority patent/MX354477B/es
Priority to KR1020157016306A priority patent/KR20160084304A/ko
Priority to JP2016563234A priority patent/JP6259122B2/ja
Priority to US14/841,911 priority patent/US9886264B2/en
Publication of WO2016090822A1 publication Critical patent/WO2016090822A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Definitions

  • the present disclosure relates to the field of electronic technologies, and in particular, to a method and apparatus for upgrading firmware.
  • Firmware upgrade refers to refreshing the embedded firmware of the embedded Micro Control Unit (MCU) to improve the function of the smart device and enhance the stability of the smart device.
  • MCU embedded Micro Control Unit
  • Non-MCU chips such as Wireless Fidelity (WIFI) chips, Bluetooth chips, etc. .
  • WIFI Wireless Fidelity
  • embodiments of the present disclosure provide a method and apparatus for upgrading firmware to improve security during a firmware upgrade process.
  • a method of upgrading firmware comprising:
  • the method may further include:
  • the second partition is set as a first partition for downloading firmware of the second chip.
  • the identifying the first partition of the firmware of the second chip for downloading the firmware of the second chip may include:
  • the method may further include:
  • the new firmware of the first chip is downloaded to the first partition, the new firmware of the first chip is verified.
  • an apparatus for upgrading firmware comprising:
  • An identification module configured to identify a first partition of the firmware of the second chip for downloading the firmware of the second chip when determining that the firmware of the first chip needs to be upgraded
  • a first downloading module configured to download new firmware of the first chip to the first partition identified by the identification module
  • a copy module configured to copy the new firmware of the first chip downloaded by the first download module from the first partition to an effective area in the first chip.
  • the apparatus may further include:
  • a second downloading module configured to download new firmware of the second chip to the first partition when determining that the firmware of the second chip needs to be upgraded
  • An activation module configured to activate the first partition into an original for storing the second chip after the second download module downloads new firmware of the second chip to the first partition a second partition with firmware
  • a setting module configured to, after the activation module activates the first partition as the second partition, set the second partition as a first partition for downloading firmware of the second chip.
  • the identification module may include:
  • an identification submodule configured to identify, by the partition information acquired by the obtaining submodule, a first partition in the flash memory of the second chip for downloading firmware of the second chip.
  • the apparatus may further include:
  • the verification module is configured to verify the new firmware of the first chip after the first download module downloads the new firmware of the first chip to the first partition.
  • an apparatus for upgrading firmware comprising:
  • a memory for storing processor executable instructions
  • processor is configured to:
  • the technical solution provided by the embodiment of the present disclosure may include the following beneficial effects: the security of the firmware upgrade of the chip is improved by first determining that the firmware of the first chip needs to be upgraded, avoiding conflicts occurring when upgrading firmware of multiple chips at the same time. By downloading the new firmware of the first chip to the first partition in the flash memory of the second chip, the new firmware of the first chip is copied from the first partition to the effective position in the first chip, thereby implementing Two chip flash to the first The chip's new firmware is upgraded, eliminating the need for additional control logic during the upgrade process, saving resources for smart devices.
  • FIG. 1 is a flow chart of a method of upgrading firmware, according to an exemplary embodiment.
  • FIG. 2 is a flow chart of a method of upgrading firmware according to an exemplary embodiment.
  • FIG. 3 is a flowchart of a method of upgrading firmware according to an exemplary embodiment.
  • FIG. 4A is a schematic diagram showing a partition of an MCU chip according to an exemplary embodiment.
  • FIG. 4B is a schematic diagram of a partitioning of a firmware upgrade of an MCU chip, according to an exemplary embodiment.
  • FIG. 4C is a second schematic diagram of a partitioning of a firmware upgrade of a WIFI chip according to an exemplary embodiment.
  • FIG. 4D is a third schematic diagram of a partitioning of a firmware upgrade of a WIFI chip according to an exemplary embodiment.
  • FIG. 4E is a fourth schematic diagram of a partitioning of a firmware upgrade of a WIFI chip according to an exemplary embodiment.
  • FIG. 5 is a block diagram of an apparatus for upgrading firmware, according to an exemplary embodiment.
  • FIG. 6 is a block diagram of another apparatus for upgrading firmware according to an exemplary embodiment.
  • FIG. 7 is a block diagram of an apparatus suitable for upgrading firmware, according to an exemplary embodiment.
  • FIG. 1 is a flowchart of a method for upgrading firmware according to an exemplary embodiment, where the method for upgrading firmware may be applied to a smart device (eg, smart socket, smart TV, smart air conditioner, etc.), as shown in FIG.
  • a smart device eg, smart socket, smart TV, smart air conditioner, etc.
  • the method for upgrading the firmware includes the following steps S101 to S103:
  • step S101 when it is determined that the firmware of the first chip needs to be upgraded, the first partition of the firmware of the second chip for downloading the firmware of the second chip is identified.
  • the firmware of the first chip needs to be upgraded by means of remote control, and the firmware of the first chip needs to be upgraded by triggering a button on the smart device.
  • the first chip is a non-MCU chip such as a Bluetooth chip or a WIFI chip
  • the second chip may be an MCU chip or an MCU-like chip
  • the first partition may be a backup area in the flash memory in the MCU chip.
  • the first chip may be an MCU chip
  • the second chip is a non-MCU chip such as a Bluetooth chip or a WIFI chip.
  • the first embodiment and the second chip are not in the embodiment of the present disclosure. The specific name is limited, and one of the first chip and the second chip is provided with a flash memory.
  • step S102 the new firmware of the first chip is downloaded to the first partition.
  • the firmware of the first chip can be downloaded to the first partition via the internetwork.
  • step S103 the new firmware of the first chip is copied from the first partition to the active area in the first chip.
  • the active area of the first chip may be determined based on the type of firmware.
  • the firmware of the first chip needs to be upgraded, avoiding conflicts when upgrading firmware of multiple chips at the same time, improving the security of the firmware during firmware upgrade;
  • the firmware is downloaded to the first partition in the flash memory of the second chip, and the new firmware of the first chip is copied from the first partition to the effective position in the first chip, and the flash memory of the second chip is implemented by the second chip.
  • the new firmware is upgraded, eliminating the need for additional control logic during the upgrade process, saving resources on smart devices.
  • the method for upgrading the firmware may further include:
  • the second partition is set as a first partition for downloading firmware of the second chip.
  • step S101 may further include:
  • the first partition of the firmware for downloading the second chip in the flash memory of the second chip is identified by the partition information.
  • the method for upgrading the firmware may further include:
  • the new firmware of the first chip is downloaded to the first partition, the new firmware of the first chip is verified.
  • the foregoing method provided by the embodiments of the present disclosure can avoid conflicts when upgrading firmware of multiple chips at the same time, improve security during firmware upgrade of the chip, and avoid using additional control logic during the upgrade process. , saving resources of smart devices.
  • FIG. 2 is a flowchart of a method for upgrading firmware according to an exemplary embodiment of the present invention
  • the present embodiment utilizes the foregoing method provided by the embodiment of the present disclosure, using a second chip as an MCU chip, and passing through the MCU chip.
  • the firmware is upgraded as an example for exemplary illustration, as shown in Figure 2, including the following steps:
  • step S201 when it is determined that the firmware of the second chip needs to be upgraded, the partition information of the second chip is acquired.
  • the firmware to be upgraded may be determined to be an MCU chip by means of remote control, or the firmware to be upgraded may be determined as an MCU chip by triggering a button on the smart device.
  • the partition information of the second chip indicates the area where the first partition and the second partition in the flash memory are located.
  • step S202 the first partition of the firmware for downloading the second chip in the flash memory of the second chip is identified by the partition information.
  • the first partition is, for example, a backup area of a flash memory.
  • step S203 after the new firmware of the first chip is downloaded to the first partition, the new firmware for the first chip Check it out.
  • the new firmware of the first chip may be verified by a Cyclic Redundancy Check (CRC), or the new firmware may be verified by the format information of the new firmware.
  • CRC Cyclic Redundancy Check
  • step S204 the new firmware of the second chip is downloaded to the first partition.
  • step S205 the first partition is activated into a second partition for storing the original firmware of the second chip.
  • the second partition is, for example, an active area of a flash memory for storing the original firmware of the MCU chip.
  • step S206 the second partition is set as the first partition for downloading the firmware of the second chip.
  • the second chip is taken as an example of the MCU chip.
  • the firmware that needs to be upgraded by the MCU chip is downloaded to the backup area, the backup area is set as the active area, and the second partition where the original firmware is located is set.
  • the firmware of the MCU chip is upgraded without occupying other resources of the smart device, thereby avoiding the use of additional control logic and saving resources of the smart device.
  • FIG. 3 is a flowchart of a method for upgrading firmware according to an exemplary embodiment.
  • This embodiment uses the foregoing method provided by an embodiment of the present disclosure to upgrade an firmware in an MCU chip on a smart device.
  • the firmware in the non-MCU chip for example, the WIFI chip, the Bluetooth chip, and the like
  • FIG. 3 the following steps are included:
  • step S301 when it is determined that the firmware of the second chip needs to be upgraded, the partition information of the second chip is acquired.
  • the firmware of the MCU chip needs to be upgraded by remote control, and the firmware of the MCU chip needs to be upgraded by triggering the button on the smart device.
  • the partition information of the second chip indicates the area where the first partition and the second partition in the flash memory are located.
  • step S302 the first partition of the firmware for downloading the second chip in the flash memory of the second chip is identified by the partition information.
  • step S303 the new firmware of the second chip is downloaded to the first partition.
  • step S304 after the new firmware of the second chip is downloaded to the first partition, the new firmware of the second chip is verified.
  • step S305 the first partition is activated into a second partition for storing the original firmware of the second chip.
  • step S306 the second partition is set as the first partition for downloading the firmware of the second chip.
  • Step S307 when it is determined that the firmware to be upgraded is the first chip, the new firmware of the first chip is downloaded to the first partition.
  • the first chip is a WIFI chip
  • the first partition in the flash memory of the MCU is the original second partition in the flash memory
  • the first partition is set as a backup area through step S305.
  • step S308 the new firmware of the first chip is copied from the first partition to the active area in the first chip.
  • the firmware in the first chip and the firmware in the second chip are upgraded as an example, and the backup area is set as an active area by downloading the firmware that the MCU needs to be upgraded to the backup area, and Set the second partition where the original firmware is located as the backup area, then download the firmware that needs to be upgraded from the WIFI chip to the backup area, and then copy the firmware that needs to be upgraded from the WIFI chip to the effective area in the WIFI chip to avoid simultaneous MCU chips.
  • the conflict between the firmware and the firmware of the WIFI chip is upgraded, and the security of the firmware upgrade of the MCU chip and the WIFI chip is improved; by downloading the new firmware of the WIFI chip to the first partition of the flash memory of the MCU chip, The new firmware of the WIFI chip is copied from the backup area to the effective position in the WIFI chip, and the new firmware of the WIFI chip is upgraded by the flash memory of the MCU chip, and the additional control logic is avoided during the upgrade process, saving the intelligence.
  • the resources of the device can also be a Bluetooth chip.
  • the process of upgrading the firmware in the Bluetooth chip can be referred to the above description, and will not be described in detail herein.
  • the firmware upgrade process of the embodiment of the present disclosure is exemplarily described below with reference to FIG. 4A to FIG. 4E .
  • the embodiment of the present disclosure is exemplified by using the first chip as the WIFI chip and the second chip as the MCU chip as an example. It is understood that, for a chip in which a flash memory exists in a smart device, a technical solution for upgrading other firmware that needs to be upgraded through different partitions in the flash memory can be understood as a technical solution of the embodiment of the present disclosure.
  • firmwares in the smart device may be upgraded according to the above-mentioned steps of upgrading the firmware according to the order of the instructions received by the smart device. Examples are as follows:
  • the smart device 40 includes an MCU chip 41 and a WIFI chip 42, wherein the flash memory in the MCU chip 41 includes a first partition 411 and a second partition 412, and the first partition 411 is used to download the MCU chip 41.
  • the second partition 412 is used to store the original firmware of the MCU chip, and the image is more vivid.
  • the first partition 411 may be referred to as a backup area in the flash memory of the MCU chip
  • the second partition 412 may be referred to as a flash memory in the MCU chip. Active area.
  • both the MCU chip 41 and the WIFI chip 42 require a firmware upgrade.
  • the smart device can download the new firmware of the MCU chip 41 into the first partition 411 by remote downloading.
  • the new firmware of the MCU chip 41 can be verified to ensure that the new firmware of the MCU chip 41 is activated, and the second partition 412 of the region where the new firmware of the MCU chip 41 is located is activated.
  • the area where the original firmware of the MCU chip 41 is located is set as the first partition (that is, the backup area).
  • the smart device downloads the new firmware of the WIFI chip 42 to the first partition of the MCU chip by remote downloading.
  • FIG. 4E after the new firmware verification of the WIFI chip 42 is completed, the new firmware of the WIFI chip 42 is copied into the WIFI chip, and the original firmware of the WIFI 42 is overwritten, and the smart device is restarted. Firmware upgrade for smart devices.
  • FIG. 5 is a block diagram of an apparatus for upgrading firmware according to an exemplary embodiment, as shown in FIG.
  • the device for upgrading may include:
  • the identification module 51 is configured to identify a first partition of the firmware of the second chip for downloading the firmware of the second chip when determining that the firmware of the first chip needs to be upgraded;
  • the first downloading module 52 is configured to download the new firmware of the first chip to the first partition to which the identification module identifies 51;
  • the copy module 53 is configured to copy the new firmware of the first chip downloaded by the first download module 52 from the first partition to the effective area in the first chip.
  • the apparatus may further include:
  • the second downloading module 54 is configured to download the new firmware of the second chip to the first partition identified by the identification module 51 when determining that the firmware of the second chip needs to be upgraded;
  • the activation module 55 is configured to activate the first partition into a second partition for storing the original firmware of the second chip after the second download module 54 downloads the new firmware of the second chip to the first partition;
  • the setting module 56 is configured to, after the activation module 55 activates the first partition to the second partition, set the second partition as a first partition for downloading firmware of the second chip, when the firmware of the first chip is needed,
  • the identification module 51 is capable of identifying a first partition of the firmware of the second chip for downloading the firmware of the second chip.
  • the identification module 51 can include:
  • the obtaining submodule 511 is configured to acquire partition information of the second chip
  • the identification sub-module 512 is configured to identify the first partition of the firmware of the second chip for downloading the firmware of the second chip by acquiring the partition information acquired by the sub-module 511.
  • the apparatus may further include:
  • the verification module 57 is configured to verify the new firmware of the first chip after the first download module 52 downloads the new firmware of the first chip to the first partition.
  • FIG. 7 is a block diagram of an apparatus suitable for upgrading firmware, according to an exemplary embodiment.
  • device 700 can be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a gaming console, a tablet device, a medical device, a fitness device, a personal digital assistant, a smart home device, and the like.
  • apparatus 700 can include one or more of the following components: processing component 702, memory 704, power component 706, multimedia component 708, audio component 710, input/output (I/O) interface 712, sensor component 714, And a communication component 716.
  • Processing component 702 typically controls the overall operation of device 700, such as operations associated with display, telephone calls, data communications, camera operations, and recording operations.
  • Processing component 702 can include one or more processors 720 to execute instructions to perform all or part of the steps described above.
  • processing component 702 can include one or more modules to facilitate interaction between component 702 and other components.
  • processing component 702 can include a multimedia module to facilitate interaction between multimedia component 707 and processing component 702.
  • Memory 704 is configured to store various types of data to support operation at device 700. Examples of such data include instructions for any application or method operating on device 700, contact data, phone book data, messages, pictures, videos, and the like. Memory 704 can be implemented by any type of volatile or non-volatile storage device, or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read only memory (EEPROM), erasable Programmable Read Only Memory (EPROM), Programmable Read Only Memory (PROM), Read Only Memory (ROM), Magnetic Memory, Flash Memory, Disk or Optical Disk.
  • SRAM static random access memory
  • EEPROM electrically erasable programmable read only memory
  • EPROM erasable Programmable Read Only Memory
  • PROM Programmable Read Only Memory
  • ROM Read Only Memory
  • Magnetic Memory Flash Memory
  • Disk Disk or Optical Disk.
  • Power component 706 provides power to various components of device 700.
  • Power component 706 can include a power management system, one or more power sources, and other components associated with generating, managing, and distributing power for device 700.
  • the multimedia component 708 includes a screen between the device 700 and the user that provides an output interface.
  • the screen can include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen can be implemented as a touch screen to receive input signals from the user.
  • the touch panel includes one or more touch sensors to sense touches, slides, and gestures on the touch panel. The touch sensor may sense not only the boundary of the touch or sliding action, but also the duration and pressure associated with the touch or slide operation.
  • the multimedia component 708 includes a front camera and/or a rear camera. When the device 700 is in an operation mode, such as a shooting mode or a video mode, the front camera and/or the rear camera can receive external multimedia data. Each front and rear camera can be a fixed optical lens system or have focal length and optical zoom capabilities.
  • the audio component 710 is configured to output and/or input an audio signal.
  • audio component 710 includes a microphone (MIC) that is configured to receive an external audio signal when device 700 is in an operational mode, such as a call mode, a recording mode, and a voice recognition mode.
  • the received audio signal may be further stored in memory 704 or transmitted via communication component 716.
  • audio component 710 also includes a speaker for outputting an audio signal.
  • the I/O interface 712 provides an interface between the processing component 702 and the peripheral interface module, which may be a keyboard, a click wheel, a button, or the like. These buttons may include, but are not limited to, a home button, a volume button, a start button, and a lock button.
  • Sensor assembly 714 includes one or more sensors for providing device 700 with various aspects of status assessment.
  • sensor component 714 can detect an open/closed state of device 700, a relative positioning of components, such as the display and keypad of device 700, and sensor component 714 can also detect a change in position of one component of device 700 or device 700. The presence or absence of user contact with device 700, device 700 orientation or acceleration/deceleration, and temperature variation of device 700.
  • Sensor assembly 714 can include a proximity sensor configured to detect the presence of nearby objects without any physical contact.
  • Sensor component 714 can also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications.
  • the sensor component 714 can also include an acceleration sensor, a gyro sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
  • Communication component 716 is configured to facilitate wired or wireless communication between device 700 and other devices.
  • the device 700 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, or a combination thereof.
  • communication component 716 receives a broadcast signal or broadcast associated message from an external broadcast management system via a broadcast channel. interest.
  • the communication component 716 also includes a near field communication (NFC) module to facilitate short range communication.
  • NFC near field communication
  • the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
  • RFID radio frequency identification
  • IrDA infrared data association
  • UWB ultra-wideband
  • Bluetooth Bluetooth
  • apparatus 700 may be implemented by one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable A gate array (FPGA), controller, microcontroller, microprocessor, or other electronic component implementation for performing the above methods.
  • ASICs application specific integrated circuits
  • DSPs digital signal processors
  • DSPDs digital signal processing devices
  • PLDs programmable logic devices
  • FPGA field programmable A gate array
  • controller microcontroller, microprocessor, or other electronic component implementation for performing the above methods.
  • non-transitory computer readable storage medium comprising instructions, such as a memory 704 comprising instructions executable by processor 720 of apparatus 700 to perform the above method.
  • the non-transitory computer readable storage medium may be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, and an optical data storage device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)

Abstract

本公开是关于一种对固件进行升级的方法及装置,用以提高固件升级过程中的安全性。所述方法包括:在确定第一芯片的固件需要升级时,识别第二芯片的闪存中的用于下载所述第二芯片的固件的第一分区;将所述第一芯片的新的固件下载到所述第一分区;将所述第一芯片的新的固件从所述第一分区拷贝到所述第一芯片中的有效区域。本公开技术方案可以避免同时对多个芯片的固件进行升级时出现的冲突,提高了芯片的固件升级时的安全性,在升级过程中避免采用额外的控制逻辑,节约智能设备的资源。

Description

对固件进行升级的方法及装置
本申请基于申请号为201410751727.3、申请日为2014年12月09日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。
技术领域
本公开涉及电子技术领域,尤其涉及一种对固件进行升级的方法及装置。
背景技术
固件升级是指对嵌入式微控制单元(Micro Control Unit,简称为MCU)的内嵌固件进行刷新,以此完善智能设备的功能,增强智能设备的稳定性。在较为复杂的智能设备中,会存在多个MCU或者MCU类的芯片以及非MCU芯片均需要对固件进行升级的情形,非MCU芯片例如无线保真(WirelessFidelity,简称为WIFI)芯片、蓝牙芯片等。在对多个固件升级时,如果对多个固件各自进行固件升级,容易造成资源浪费。
发明内容
为克服相关技术中存在的问题,本公开实施例提供一种对固件进行升级的方法及装置,用以提高固件升级过程中的安全性。
根据本公开实施例的第一方面,提供一种对固件进行升级的方法,包括:
在确定第一芯片的固件需要升级时,识别第二芯片的闪存中的用于下载所述第二芯片的固件的第一分区;
将所述第一芯片的新的固件下载到所述第一分区;
将所述第一芯片的新的固件从所述第一分区拷贝到所述第一芯片中的有效区域。
在一实施例中,所述方法还可包括:
在确定所述第二芯片的固件需要升级时,将所述第二芯片的新的固件下载到所述第一分区;
将所述第一分区激活成用于存储所述第二芯片的原有固件的第二分区;
将所述第二分区设置为用于下载所述第二芯片的固件的第一分区。
在一实施例中,所述识别第二芯片的闪存中的用于下载所述第二芯片的固件的第一分区,可包括:
获取第二芯片的分区信息;
通过所述分区信息识别所述第二芯片的闪存中的用于下载所述第二芯片的固件的第一分区。
在一实施例中,所述方法还可包括:
在所述第一芯片的新的固件下载到所述第一分区后,对所述第一芯片的新的固件进行校验。
根据本公开实施例的第二方面,提供一种对固件进行升级的装置,包括:
识别模块,被配置为在确定第一芯片的固件需要升级时,识别第二芯片的闪存中的用于下载所述第二芯片的固件的第一分区;
第一下载模块,被配置为将所述第一芯片的新的固件下载到所述识别模块识别到的所述第一分区;
拷贝模块,被配置为将所述第一下载模块下载得到的所述第一芯片的新的固件从所述第一分区拷贝到所述第一芯片中的有效区域。
在一实施例中,所述装置还可包括:
第二下载模块,被配置为在确定所述第二芯片的固件需要升级时,将所述第二芯片的新的固件下载到所述第一分区;
激活模块,被配置为在所述第二下载模块将所述第二芯片的新的固件下载到所述第一分区后,将所述第一分区激活成用于存储所述第二芯片的原有固件的第二分区;
设置模块,被配置为在所述激活模块将所述第一分区激活为所述第二分区后,将所述第二分区设置为用于下载所述第二芯片的固件的第一分区。
在一实施例中,所述识别模块可包括:
获取子模块,被配置为获取第二芯片的分区信息;
识别子模块,被配置为通过所述获取子模块获取到的所述分区信息识别所述第二芯片的闪存中的用于下载所述第二芯片的固件的第一分区。
在一实施例中,所述装置还可包括:
校验模块,被配置为在所述第一下载模块将所述第一芯片的新的固件下载到所述第一分区后,对所述第一芯片的新的固件进行校验。
根据本公开实施例的第三方面,提供一种对固件进行升级的装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
在确定第一芯片的固件需要升级时,识别第二芯片的闪存中的用于下载所述第二芯片的固件的第一分区;
将所述第一芯片的新的固件下载到所述第一分区;
将所述第一芯片的新的固件从所述第一分区拷贝到所述第一芯片中的有效区域。
本公开的实施例提供的技术方案可以包括以下有益效果:通过先确定第一芯片的固件需要升级,避免同时对多个芯片的固件进行升级时出现的冲突,提高了芯片的固件升级时的安全性;通过将第一芯片的新的固件下载到第二芯片的闪存中的第一分区,经第一芯片的新的固件从第一分区拷贝到第一芯片中的有效位置,实现了借助第二芯片的闪存对第一 芯片的新的固件进行升级,在升级过程中避免了采用额外的控制逻辑,节约了智能设备的资源。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的对固件进行升级的方法的流程图。
图2是根据一示例性实施例一示出的对固件进行升级的方法的流程图。
图3是根据一示例性实施例二示出的对固件进行升级的方法的流程图。
图4A是根据一示例性实施例示出的MCU芯片的分区示意图。
图4B是根据一示例性实施例示出的对MCU芯片进行固件升级的分区示意图之一。
图4C是根据一示例性实施例示出的对WIFI芯片进行固件升级的分区示意图之二。
图4D是根据一示例性实施例示出的对WIFI芯片进行固件升级的分区示意图之三。
图4E是根据一示例性实施例示出的对WIFI芯片进行固件升级的分区示意图之四。
图5是根据一示例性实施例示出的对固件进行升级的装置的框图。
图6是根据一示例性实施例示出的另一对固件进行升级的装置的框图。
图7是根据一示例性实施例示出的一种适用于对固件进行升级的装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的对固件进行升级的方法的流程图,该对固件进行升级的方法可以应用在智能设备(例如:智能插座、智能电视、智能空调等)上,如图1所示,该对固件进行升级的方法包括以下步骤S101至S103:
在步骤S101中,在确定第一芯片的固件需要升级时,识别第二芯片的闪存中的用于下载第二芯片的固件的第一分区。
在一实施例中,可以通过远程控制的方式确定第一芯片的固件需要升级,也可以在智能设备上以触发按键的方式确定第一芯片的固件需要升级。在一实施例中,例如,第一芯片为蓝牙芯片、WIFI芯片等非MCU芯片,第二芯片可以为MCU芯片或者类MCU芯片,第一分区可以为MCU芯片中的闪存中的备份区,可替换地,第一芯片可以为MCU芯片,第二芯片为蓝牙芯片、WIFI芯片等非MCU芯片,本公开实施例不对第一芯片与第二芯片 的具体名称进行限制,第一芯片与第二芯片中有一个芯片设置有闪存即可。
在步骤S102中,将第一芯片的新的固件下载到第一分区。
在一实施例中,可以通过互联网络将第一芯片的固件下载到第一分区。
在步骤S103中,将第一芯片的新的固件从第一分区拷贝到第一芯片中的有效区域。
在一实施例中,第一芯片的有效区域可以根据固件的类型来确定。
在本实施例中,通过先确定第一芯片的固件需要升级,避免同时对多个芯片的固件进行升级时出现的冲突,提高了芯片在固件升级时的安全性;通过将第一芯片的新的固件下载到第二芯片的闪存中的第一分区,经第一芯片的新的固件从第一分区拷贝到第一芯片中的有效位置,实现了借助第二芯片的闪存对第一芯片的新的固件进行升级,在升级过程中避免了采用额外的控制逻辑,节约了智能设备的资源。
在一实施例中,对固件进行升级的方法还可以包括:
在确定第二芯片的固件需要升级时,将第二芯片的新的固件下载到第一分区;
将第一分区激活成用于存储第二芯片的原有固件的第二分区;
将第二分区设置为用于下载第二芯片的固件的第一分区。
在一实施例中,步骤S101还可以包括:
获取第二芯片的分区信息;
通过分区信息识别第二芯片的闪存中的用于下载第二芯片的固件的第一分区。
在一实施例中,对固件进行升级的方法还可以包括:
在第一芯片的新的固件下载到第一分区后,对第一芯片的新的固件进行校验。
具体如何对智能设备上的固件进行升级的,请参考后续实施例。
至此,本公开实施例提供的上述方法,可以避免同时对多个芯片的固件进行升级时出现的冲突,提高了芯片的固件升级时的安全性,在升级过程中还可以避免采用额外的控制逻辑,节约了智能设备的资源。
下面以具体实施例来说明本公开实施例提供的技术方案。
图2是根据一示例性实施例一示出的对固件进行升级的方法的流程图;本实施例利用本公开实施例提供的上述方法,以第二芯片为MCU芯片,并通过对MCU芯片中的固件进行升级为例进行示例性说明,如图2所示,包括如下步骤:
在步骤S201中,在确定第二芯片的固件需要升级时,获取第二芯片的分区信息。
在一实施例中,与上述步骤S101中的描述相似,可以通过远程控制的方式确定需要升级的固件为MCU芯片,也可以在智能设备上以触发按键的方式确定需要升级的固件为MCU芯片。第二芯片的分区信息表明了闪存中的第一分区与第二分区所在的区域。
在步骤S202中,通过分区信息识别第二芯片的闪存中的用于下载第二芯片的固件的第一分区。
在一实施例中,第一分区例如为闪存的备份区。
在步骤S203中,在第一芯片的新的固件下载到第一分区后,对第一芯片的新的固件 进行校验。
在一实施例中,可以通过循环冗余校验码(Cyclic Redundancy Check,简称为CRC)对第一芯片的新的固件进行校验,也可以通过新的固件的格式信息对新的固件进行校验,通过对第一芯片的新的固件进行校验,可以确保新的固件是正常的,从而确保固件升级的可靠性。
在步骤S204中,将第二芯片的新的固件下载到第一分区。
在步骤S205中,将第一分区激活成用于存储第二芯片的原有固件的第二分区。
在一实施例中,第二分区例如为闪存的活跃区,该活跃区用于存储MCU芯片的原有固件。
在步骤S206中,将第二分区设置为用于下载第二芯片的固件的第一分区。
本实施例中,以第二芯片为MCU芯片为例进行示例性说明,通过将MCU芯片需要升级的固件下载到备份区,将备份区设置为活跃区,并将原有固件所在的第二分区设置为备份区,实现了在不占用智能设备的其它资源的基础上对MCU芯片的固件进行了升级,避免了采用额外的控制逻辑,节约了智能设备的资源。
图3是根据一示例性实施例二示出的对固件进行升级的方法的流程图;本实施例利用本公开实施例提供的上述方法,以先对智能设备上的MCU芯片中的固件进行升级,然后再对非MCU芯片(例如,WIFI芯片、蓝牙芯片等等)中的固件进行升级为例进行示例性说明,如图3所示,包括如下步骤:
在步骤S301中,在确定第二芯片的固件需要升级时,获取第二芯片的分区信息。
在一实施例中,与上述步骤S101中的描述相似,可以通过远程控制的方式确定MCU芯片的固件需要升级,也可以在智能设备上以触发按键的方式确定MCU芯片的固件需要升级。第二芯片的分区信息表明了闪存中的第一分区与第二分区所在的区域。
在步骤S302中,通过分区信息识别第二芯片的闪存中的用于下载第二芯片的固件的第一分区。
在步骤S303中,将第二芯片的新的固件下载到第一分区。
在步骤S304中,在第二芯片的新的固件下载到第一分区后,对第二芯片的新的固件进行校验。
在步骤S305中,将第一分区激活成用于存储第二芯片的原有固件的第二分区。
在步骤S306中,将第二分区设置为用于下载第二芯片的固件的第一分区。
上述步骤S301至步骤S306的描述,可以参见上述步骤S201至步骤S206的描述,在此不再详述。
步骤S307,在确定需要升级的固件为第一芯片时,将第一芯片的新的固件下载到第一分区。
在一实施例中,例如,第一芯片为WIFI芯片,MCU的闪存中的第一分区为闪存中原来的第二分区,该第一分区经过步骤S305设置后成备份区。
在步骤S308中,将第一芯片的新的固件从第一分区拷贝到第一芯片中的有效区域。
本实施例中,以对第一芯片中的固件与第二芯片中的固件进行升级为例进行示例性说明,通过将MCU需要升级的固件下载到备份区,将备份区设置为活跃区,并将原有固件所在的第二分区设置为备份区,然后将WIFI芯片需要升级的固件下载到备份区,再将WIFI芯片需要升价的固件拷贝到WIFI芯片中的有效区域,避免同时对MCU芯片的固件与WIFI芯片的固件进行升级时出现的冲突,提高了MCU芯片与WIFI芯片的固件升级时的安全性;通过将WIFI芯片的新的固件下载到MCU芯片的闪存中的第一分区,经WIFI芯片的新的固件从备份区拷贝到WIFI芯片中的有效位置,实现了借助MCU芯片的闪存对WIFI芯片的新的固件进行升级,在升级过程中避免了采用额外的控制逻辑,节约了智能设备的资源。可替换地,WIFI芯片还可以为蓝牙芯片,对蓝牙芯片中的固件进行升级的过程可以参考上述描述,在此不再详述。
下面通过图4A至图4E对本公开实施例的固件升级过程进行示例性说明,本公开实施例以第一芯片为WIFI芯片,第二芯片为MCU芯片为例进行示例性说明,本领域技术人员可以理解的是,对于智能设备中存在闪存的芯片,通过闪存中的不同分区对其它需要升级的固件进行升级的技术方案,均可以理解为本公开实施例的技术方案。
当两个或两个以上的芯片的固件均需要进行升级时,可以根据智能设备接收到的指令的先后顺序,按照上述对固件进行升级的方法对智能设备中的多个固件升级。举例如下:
如图4A所示,当智能设备40中包括MCU芯片41和WIFI芯片42,其中,MCU芯片41中的闪存包括第一分区411与第二分区412,第一分区411用于下载MCU芯片41的固件,第二分区412用于存储MCU芯片的原有固件,更形象的表述,第一分区411可以称为MCU芯片的闪存中的备份区,第二分区412可以称为MCU芯片的闪存中的活跃区。
在一实施例中,MCU芯片41和WIFI芯片42均需要进行固件升级。如图4B所示,智能设备可以通过远程下载的方式将MCU芯片41的新的固件下载到第一分区411中。如图4C所示,可以对MCU芯片41的新的固件进行校验,从而确保MCU芯片41的新的固件无问题后将MCU芯片41的新的固件的所在区域第二分区412激活为活跃区,将MCU芯片41原有的固件所在的区设置为第一分区(也即备份区)。
如图4D所示,智能设备通过远程下载的方式将WIFI芯片42的新的固件下载到MCU芯片的第一分区。如图4E所示,在对WIFI芯片42的新的固件校验完毕后,将WIFI芯片42的新的固件拷贝到WIFI芯片中,并覆盖WIFI42的原有固件,重新启动智能设备,即可完成智能设备的固件升级。
通过上述过程的描述,可以很清楚地理解本公开实施例对固件进行升级的过程,本领域技术人员可以理解的是,上述过程仅为一个示例性说明并不能形成对本公开实施例的限制。
图5是根据一示例性实施例示出的对固件进行升级的装置的框图,如图5所示,对固 件进行升级的装置可包括:
识别模块51,被配置为在确定第一芯片的固件需要升级时,识别第二芯片的闪存中的用于下载第二芯片的固件的第一分区;
第一下载模块52,被配置为将第一芯片的新的固件下载到识别模块识51别到的第一分区;
拷贝模块53,被配置为将第一下载模块52下载得到的第一芯片的新的固件从第一分区拷贝到第一芯片中的有效区域。
如图6所示,装置还可包括:
第二下载模块54,被配置为在确定第二芯片的固件需要升级时,将第二芯片的新的固件下载到识别模块51识别到的第一分区;
激活模块55,被配置为在第二下载模块54将第二芯片的新的固件下载到第一分区后,将第一分区激活成用于存储第二芯片的原有固件的第二分区;
设置模块56,被配置为在激活模块55将第一分区激活为第二分区后,将第二分区设置为用于下载第二芯片的固件的第一分区,在需要第一芯片的固件时,识别模块51能够识别到第二芯片的闪存中的用于下载第二芯片的固件的第一分区。
在一实施例中,识别模块51可包括:
获取子模块511,被配置为获取第二芯片的分区信息;
识别子模块512,被配置为通过获取子模块511获取到的分区信息识别第二芯片的闪存中的用于下载第二芯片的固件的第一分区。
在一实施例中,装置还可包括:
校验模块57,被配置为在第一下载模块52将第一芯片的新的固件下载到第一分区后,对第一芯片的新的固件进行校验。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图7是根据一示例性实施例示出的一种适用于对固件进行升级的装置的框图。例如,装置700可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理,智能家居设备等。
参照图7,装置700可以包括以下一个或多个组件:处理组件702,存储器704,电源组件706,多媒体组件708,音频组件710,输入/输出(I/O)的接口712,传感器组件714,以及通信组件716。
处理组件702通常控制装置700的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件702可以包括一个或多个处理器720来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件702可以包括一个或多个模块,便于处理组件702和其他组件之间的交互。例如,处理部件702可以包括多媒体模块,以方便多媒体组件707和处理组件702之间的交互。
存储器704被配置为存储各种类型的数据以支持在设备700的操作。这些数据的示例包括用于在装置700上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器704可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电力组件706为装置700的各种组件提供电力。电力组件706可以包括电源管理系统,一个或多个电源,及其他与为装置700生成、管理和分配电力相关联的组件。
多媒体组件708包括在所述装置700和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件708包括一个前置摄像头和/或后置摄像头。当设备700处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件710被配置为输出和/或输入音频信号。例如,音频组件710包括一个麦克风(MIC),当装置700处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器704或经由通信组件716发送。在一些实施例中,音频组件710还包括一个扬声器,用于输出音频信号。
I/O接口712为处理组件702和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件714包括一个或多个传感器,用于为装置700提供各个方面的状态评估。例如,传感器组件714可以检测到设备700的打开/关闭状态,组件的相对定位,例如所述组件为装置700的显示器和小键盘,传感器组件714还可以检测装置700或装置700一个组件的位置改变,用户与装置700接触的存在或不存在,装置700方位或加速/减速和装置700的温度变化。传感器组件714可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件714还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件714还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件716被配置为便于装置700和其他设备之间有线或无线方式的通信。装置700可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件716经由广播信道接收来自外部广播管理系统的广播信号或广播相关信 息。在一个示例性实施例中,所述通信组件716还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置700可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器704,上述指令可由装置700的处理器720执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (9)

  1. 一种对固件进行升级的方法,应用在智能设备上,其特征在于,所述方法包括:
    在确定第一芯片的固件需要升级时,识别第二芯片的闪存中的用于下载所述第二芯片的固件的第一分区;
    将所述第一芯片的新的固件下载到所述第一分区;
    将所述第一芯片的新的固件从所述第一分区拷贝到所述第一芯片中的有效区域。
  2. 如权利要求1所述的方法,其特征在于,所述方法还包括:
    在确定所述第二芯片的固件需要升级时,将所述第二芯片的新的固件下载到所述第一分区;
    将所述第一分区激活成用于存储所述第二芯片的原有固件的第二分区;
    将所述第二分区设置为用于下载所述第二芯片的固件的第一分区。
  3. 如权利要求1所述的方法,其特征在于,所述识别第二芯片的闪存中的用于下载所述第二芯片的固件的第一分区,包括:
    获取第二芯片的分区信息;
    通过所述分区信息识别所述第二芯片的闪存中的用于下载所述第二芯片的固件的第一分区。
  4. 如权利要求1所述的方法,其特征在于,所述方法还包括:
    在所述第一芯片的新的固件下载到所述第一分区后,对所述第一芯片的新的固件进行校验。
  5. 一种对固件进行升级的装置,应用在智能设备上,其特征在于,所述装置包括:
    识别模块,被配置为在确定第一芯片的固件需要升级时,识别第二芯片的闪存中的用于下载所述第二芯片的固件的第一分区;
    第一下载模块,被配置为将所述第一芯片的新的固件下载到所述识别模块识别到的所述第一分区;
    拷贝模块,被配置为将所述第一下载模块下载得到的所述第一芯片的新的固件从所述第一分区拷贝到所述第一芯片中的有效区域。
  6. 如权利要求5所述的装置,其特征在于,所述装置还包括:
    第二下载模块,被配置为在确定所述第二芯片的固件需要升级时,将所述第二芯片的新的固件下载到所述识别模块识别到的所述第一分区;
    激活模块,被配置为在所述第二下载模块将所述第二芯片的新的固件下载到所述第一分区后,将所述第一分区激活成用于存储所述第二芯片的原有固件的第二分区;
    设置模块,被配置为在所述激活模块将所述第一分区激活为所述第二分区后,将所述第二分区设置为用于下载所述第二芯片的固件的第一分区。
  7. 如权利要求5所述的装置,其特征在于,所述识别模块包括:
    获取子模块,被配置为获取第二芯片的分区信息;
    识别子模块,被配置为通过所述获取子模块获取到的所述分区信息识别所述第二芯片的闪存中的用于下载所述第二芯片的固件的第一分区。
  8. 如权利要求5所述的装置,其特征在于,所述装置还包括:
    校验模块,被配置为在所述第一下载模块将所述第一芯片的新的固件下载到所述第一分区后,对所述第一芯片的新的固件进行校验。
  9. 一种对固件进行升级的装置,其特征在于,所述装置包括:
    处理器;
    用于存储处理器可执行指令的存储器;
    其中,所述处理器被配置为:
    在确定第一芯片的固件需要升级时,识别第二芯片的闪存中的用于下载所述第二芯片的固件的第一分区;
    将所述第一芯片的新的固件下载到所述第一分区;
    将所述第一芯片的新的固件从所述第一分区拷贝到所述第一芯片中的有效区域。
PCT/CN2015/077855 2014-12-09 2015-04-29 对固件进行升级的方法及装置 WO2016090822A1 (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
BR112015020272A BR112015020272A2 (pt) 2014-12-09 2015-04-29 método e dispositivo para atualização de firmware
RU2015131124A RU2633151C2 (ru) 2014-12-09 2015-04-29 Способ и устройство для обновления микропрограммного обеспечения
MX2015010881A MX354477B (es) 2014-12-09 2015-04-29 Método y dispositivo para actualizar firmware.
KR1020157016306A KR20160084304A (ko) 2014-12-09 2015-04-29 펌웨어 업그레이드 방법, 장치, 프로그램 및 저장매체
JP2016563234A JP6259122B2 (ja) 2014-12-09 2015-04-29 ファームウェアアップグレード方法、装置、プログラム及び記録媒体
US14/841,911 US9886264B2 (en) 2014-12-09 2015-09-01 Method and device for upgrading firmware

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410751727.3A CN104484200B (zh) 2014-12-09 2014-12-09 对固件进行升级的方法及装置
CN201410751727.3 2014-12-09

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/841,911 Continuation US9886264B2 (en) 2014-12-09 2015-09-01 Method and device for upgrading firmware

Publications (1)

Publication Number Publication Date
WO2016090822A1 true WO2016090822A1 (zh) 2016-06-16

Family

ID=52758744

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/077855 WO2016090822A1 (zh) 2014-12-09 2015-04-29 对固件进行升级的方法及装置

Country Status (7)

Country Link
JP (1) JP6259122B2 (zh)
KR (1) KR20160084304A (zh)
CN (1) CN104484200B (zh)
BR (1) BR112015020272A2 (zh)
MX (1) MX354477B (zh)
RU (1) RU2633151C2 (zh)
WO (1) WO2016090822A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114138694A (zh) * 2021-11-29 2022-03-04 杭州迪普科技股份有限公司 下载接口模块、芯片烧录方法及装置
CN114661368A (zh) * 2022-05-19 2022-06-24 中昊芯英(杭州)科技有限公司 一种芯片及其启动方法

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9886264B2 (en) 2014-12-09 2018-02-06 Xiaomi Inc. Method and device for upgrading firmware
CN104484200B (zh) * 2014-12-09 2018-05-25 小米科技有限责任公司 对固件进行升级的方法及装置
CN105022690A (zh) * 2015-07-14 2015-11-04 四川长虹电器股份有限公司 一种空调测试方法及功能测试系统
CN105117251A (zh) * 2015-08-25 2015-12-02 浪潮电子信息产业股份有限公司 一种外挂芯片式远程刷新电源firmware的设计方法
CN105554306B (zh) * 2016-01-27 2019-05-31 努比亚技术有限公司 移动终端及其双芯片系统升级方法
CN105577940B (zh) * 2016-01-27 2019-05-31 努比亚技术有限公司 移动终端及系统升级方法
CN105577450A (zh) * 2016-01-27 2016-05-11 努比亚技术有限公司 系统升级装置和方法
CN106843958A (zh) * 2017-01-18 2017-06-13 成都黑盒子电子技术有限公司 一种嵌入式固件升级方法
CN107748665A (zh) * 2017-09-06 2018-03-02 中国航空工业集团公司西安飞行自动控制研究所 一种适用于水下惯导设备的软件升级方法
CN107608705A (zh) * 2017-09-29 2018-01-19 深圳市瑞科慧联科技有限公司 一种无线wifi视频设备及其固件升级方法
CN107992322B (zh) * 2017-12-04 2021-06-04 上海无线电设备研究所 一种雷达信号处理机dsp代码自更新方法
US11210084B2 (en) * 2018-03-09 2021-12-28 Samsung Electronics Co., Ltd. Integrated single FPGA and solid state disk controller
CN109002317B (zh) * 2018-06-27 2022-01-18 上海有个机器人有限公司 一种pcba固件升级方法及系统、pcba
CN110175042A (zh) * 2019-06-04 2019-08-27 深圳云里物里科技股份有限公司 一种固件升级方法、装置及其相关设备
KR20210101690A (ko) 2020-02-10 2021-08-19 삼성전자주식회사 전자 장치 및 전자 장치의 초기화 방법
KR102520452B1 (ko) * 2021-05-24 2023-04-12 주식회사 아이자랩 경사지 붕괴위험 예측용 계측기의 무선 원격 펌웨어 업데이트 방법
CN113204364A (zh) * 2021-05-28 2021-08-03 广州众诺电子技术有限公司 一种芯片固件升级方法、装置、电子设备及存储介质
CN113434184A (zh) * 2021-06-30 2021-09-24 浙江大华技术股份有限公司 设备升级方法、装置、存储介质及电子装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100313191A1 (en) * 2009-06-05 2010-12-09 Dell Products L.P. System and Method for Modifying Firmware
CN102945174A (zh) * 2012-11-08 2013-02-27 大连捷成实业发展有限公司 通过接着片外Flash实现单片机程序升级的方法
CN103116502A (zh) * 2011-11-17 2013-05-22 国家纳米技术与工程研究院 一种利用主备版本备份实现升级的方法
CN104484200A (zh) * 2014-12-09 2015-04-01 小米科技有限责任公司 对固件进行升级的方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2357382A1 (en) * 2001-09-17 2003-03-17 Soma Networks, Inc. Software update method, apparatus and system
CN100472442C (zh) * 2006-03-02 2009-03-25 中兴通讯股份有限公司 一种对固件程序进行在线升级的装置及其方法
KR101417759B1 (ko) * 2006-06-19 2014-07-14 삼성전자주식회사 시스템 정보 갱신 장치 및 방법
KR101426710B1 (ko) * 2006-07-14 2014-09-23 삼성전자주식회사 휴대단말기의 버전정보 갱신 장치 및 방법
JP2008104036A (ja) * 2006-10-20 2008-05-01 Sumitomo Electric Ind Ltd 通信装置
CN100589078C (zh) * 2007-08-21 2010-02-10 中兴通讯股份有限公司 多核终端的固件升级方法
US8812746B2 (en) * 2010-12-16 2014-08-19 Intel Corporation Dynamically configurable device host controller
WO2013101068A1 (en) * 2011-12-29 2013-07-04 Intel Corporation Short circuit of probes in a chain
CN102662706A (zh) * 2012-04-01 2012-09-12 西安合众思壮导航技术有限公司 一种远程可靠升级xip 芯片软件的方法
CN102722390B (zh) * 2012-06-05 2015-04-15 上海联影医疗科技有限公司 多处理器共用flash的装置及固件程序加载与升级方法
US8972970B2 (en) * 2012-07-02 2015-03-03 Taiwan Gomet Technology Co. Ltd. Firmware overwriting method in paired use wireless microphone and receiver
JP6175788B2 (ja) * 2013-02-11 2017-08-09 住友電気工業株式会社 マイクロプログラムを更新可能な電子機器
JP6070360B2 (ja) * 2013-03-29 2017-02-01 沖電気工業株式会社 情報処理装置およびその処理方法
CN103810004B (zh) * 2013-11-22 2017-03-22 小米科技有限责任公司 嵌入式系统升级的方法、装置及设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100313191A1 (en) * 2009-06-05 2010-12-09 Dell Products L.P. System and Method for Modifying Firmware
CN103116502A (zh) * 2011-11-17 2013-05-22 国家纳米技术与工程研究院 一种利用主备版本备份实现升级的方法
CN102945174A (zh) * 2012-11-08 2013-02-27 大连捷成实业发展有限公司 通过接着片外Flash实现单片机程序升级的方法
CN104484200A (zh) * 2014-12-09 2015-04-01 小米科技有限责任公司 对固件进行升级的方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114138694A (zh) * 2021-11-29 2022-03-04 杭州迪普科技股份有限公司 下载接口模块、芯片烧录方法及装置
CN114661368A (zh) * 2022-05-19 2022-06-24 中昊芯英(杭州)科技有限公司 一种芯片及其启动方法

Also Published As

Publication number Publication date
MX354477B (es) 2018-03-07
EP3032412A1 (en) 2016-06-15
JP6259122B2 (ja) 2018-01-10
RU2633151C2 (ru) 2017-10-11
JP2017505966A (ja) 2017-02-23
BR112015020272A2 (pt) 2017-07-18
CN104484200B (zh) 2018-05-25
RU2015131124A (ru) 2017-06-07
CN104484200A (zh) 2015-04-01
MX2015010881A (es) 2016-08-02
KR20160084304A (ko) 2016-07-13

Similar Documents

Publication Publication Date Title
WO2016090822A1 (zh) 对固件进行升级的方法及装置
US9886264B2 (en) Method and device for upgrading firmware
WO2016155233A1 (zh) 智能场景删除方法和装置
WO2017035990A1 (zh) 安装智能设备的插件的方法和装置
WO2016011743A1 (zh) 节省存储空间的方法和装置
US10425403B2 (en) Method and device for accessing smart camera
WO2016029685A1 (zh) 一种路由器管理应用与路由器固件的兼容方法和装置
RU2641257C2 (ru) Способ и аппаратура для управления устройствами
WO2017035994A1 (zh) 外接设备的连接方法及装置
WO2016188060A1 (zh) 应用程序安装包的处理方法及装置
EP3076745B1 (en) Methods and apparatuses for controlling wireless access point
CN109669730B (zh) 一种进程保活方法、装置、电子设备及介质
WO2017036018A1 (zh) 指纹识别方法、装置及移动终端
WO2016150104A1 (zh) 应用主题的加载方法及装置
EP2924552A1 (en) Method and mobile terminal for executing user instructions
EP3133806A1 (en) Method and device for generating panorama
US20160123622A1 (en) Air purification notification method and apparatus, user equipment and system
CN107463372B (zh) 一种数据驱动的页面更新方法和装置
WO2016095452A1 (zh) 固件刷新方法及装置
WO2018072193A1 (zh) 控制应用自启动的方法及装置
RU2632396C2 (ru) Способ и устройство для управления подключаемым модулем маршрутизатора
WO2017045301A1 (zh) 应用安装方法、装置及智能设备
CN107733674B (zh) 组件升级方法及终端
EP3328066B1 (en) Electronic device and method for autofocusing
US10572308B2 (en) Method and apparatus for monitoring virtual document object model

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 20157016306

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2016563234

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: MX/A/2015/010881

Country of ref document: MX

ENP Entry into the national phase

Ref document number: 2015131124

Country of ref document: RU

Kind code of ref document: A

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112015020272

Country of ref document: BR

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

Ref document number: 15868157

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 112015020272

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20150824

122 Ep: pct application non-entry in european phase

Ref document number: 15868157

Country of ref document: EP

Kind code of ref document: A1