JP2017505966A - ファームウェアアップグレード方法、装置、プログラム及び記録媒体 - Google Patents

ファームウェアアップグレード方法、装置、プログラム及び記録媒体 Download PDF

Info

Publication number
JP2017505966A
JP2017505966A JP2016563234A JP2016563234A JP2017505966A JP 2017505966 A JP2017505966 A JP 2017505966A JP 2016563234 A JP2016563234 A JP 2016563234A JP 2016563234 A JP2016563234 A JP 2016563234A JP 2017505966 A JP2017505966 A JP 2017505966A
Authority
JP
Japan
Prior art keywords
chip
firmware
partition
downloading
new
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.)
Granted
Application number
JP2016563234A
Other languages
English (en)
Other versions
JP6259122B2 (ja
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.)
Xiaomi Inc
Original Assignee
Xiaomi Inc
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 Xiaomi Inc filed Critical Xiaomi Inc
Publication of JP2017505966A publication Critical patent/JP2017505966A/ja
Application granted granted Critical
Publication of JP6259122B2 publication Critical patent/JP6259122B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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

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

本発明は、ファームウェアをアップグレードする過程の安全性を高めるための、ファームウェアアップグレード方法及び装置に関する。この方法は、第1チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップのフラッシュメモリ中の第2チップのファームウェアをダウンロードするための第1パーティションを認識するステップと、第1チップの新しいファームウェアを第1パーティションにダウンロードするステップと、第1チップの新しいファームウェアを第1パーティションから第1チップ中の有効領域にコピーするステップと、を含む。本発明の構成によると、複数のチップのファームウェアを同時にアップグレードする場合に発生する競合を避けることができ、チップのファームウェアをアップグレードするときの安全性を向上し、アップグレードする過程において追加の制御ロジックの利用を避けて、スマートデバイスのリソースを節約した。【選択図】図1

Description

相互参照
本願は、出願番号がCN201410751727.3であり、出願日が2014年12月09日である中国特許出願に基づき優先権を主張し、当該中国特許出願のすべての内容を本願に援用する。
本発明は、電子技術分野に関し、特に、ファームウェアアップグレード方法及び装置に関する。
ファームウェアアップグレードとは、エンベデッドマイクロコントロールユニット(Micro Control Unit、MCUと略称する)のエンベデッドファームウェアをアップデートすることにより、スマートデバイスの機能を改善し、スマートデバイスの安定性を高めることを意味する。より複雑なスマートデバイスは、複数のMCU、又は、MCU型のチップ及び非MCU型のチップに対して、ファームウェアをアップグレードする必要がある場合が存在する。ここで、非MCU型チップは、例えば、ワイヤレス・フィディリティー(Wireless Fidelity、WIFIと略称する)チップ、ブルートゥースチップ等である。複数のファームウェアをアップグレードする際に、複数のファームウェアに対してそれぞれファームウェアアップグレードをすると、リソースの無駄遣いになり易い。
本発明は、従来技術での技術問題を解決するために、ファームウェアをアップグレードする過程の安全性を高めるための、ファームウェアアップグレード方法及び装置を提供する。
本発明の実施例の第1の態様によると、ファームウェアアップグレード方法を提供する。
当該方法は、
第1チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するステップと、
前記第1チップの新しいファームウェアを前記第1パーティションにダウンロードするステップと、
前記第1チップの新しいファームウェアを前記第1パーティションから前記第1チップ中の有効領域にコピーするステップと、を含む。
一実施例において、前記方法は、
前記第2チップのファームウェアをアップグレードする必要があると特定された場合に、前記第2チップの新しいファームウェアを前記第1パーティションにダウンロードするステップと、
前記第1パーティションを、前記第2チップの既存のファームウェアを記憶するための第2パーティションにアクティブ化するステップと、
前記第2パーティションを、前記第2チップのファームウェアをダウンロードするための第1パーティションとして設定するステップと、をさらに含む。
一実施例において、前記第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するステップは、
第2チップのパーティション情報を取得するステップと、
前記パーティション情報に基づいて、前記第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するステップと、を含む。
一実施例において、前記方法は、
前記第1チップの新しいファームウェアを前記第1パーティションにダウンロードした後に、前記第1チップの新しいファームウェアをチェックするステップ、をさらに含む。
本発明の実施例の第2の態様によると、ファームウェアアップグレード装置を提供する。
当該装置は、
第1チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するための認識モジュールと、
前記第1チップの新しいファームウェアを、前記認識モジュールにより認識された前記第1パーティションにダウンロードするための第1ダウンロードモジュールと、
前記第1ダウンロードモジュールによりダウンロードして得られた前記第1チップの新しいファームウェアを、前記第1パーティションから前記第1チップ中の有効領域にコピーするためのコピーモジュールと、を含む。
一実施例において、前記装置は、
前記第2チップのファームウェアをアップグレードする必要があると特定された場合に、前記第2チップの新しいファームウェアを前記第1パーティションにダウンロードするための第2ダウンロードモジュールと、
前記第2ダウンロードモジュールにより前記第2チップの新しいファームウェアを前記第1パーティションにダウンロードした後に、前記第1パーティションを、前記第2チップの既存のファームウェアを記憶するための第2パーティションにアクティブ化するためのアクティブモジュールと、
前記アクティブモジュールにより前記第1パーティションを前記第2パーティションにアクティブ化した後に、前記第2パーティションを、前記第2チップのファームウェアをダウンロードするための第1パーティションとして設定するための設定モジュールと、をさらに含む。
一実施例において、前記認識モジュールは、
第2チップのパーティション情報を取得するための取得サブモジュールと、
前記取得サブモジュールにより取得した前記パーティション情報に基づいて、前記第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するための認識サブモジュールと、を含む。
一実施例において、前記装置は、
前記第1ダウンロードモジュールにより前記第1チップの新しいファームウェアを前記第1パーティションにダウンロードした後に、前記第1チップの新しいファームウェアをチェックするためのチェックモジュール、をさらに含む。
本発明の実施例の第3の態様によると、ファームウェアアップグレード装置を提供する。
当該装置は、
プロセッサと、
前記プロセッサが実行可能な命令を記憶するためのメモリと
を備え、
前記プロセッサは、
第1チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識し、
前記第1チップの新しいファームウェアを前記第1パーティションにダウンロードし、
前記第1チップの新しいファームウェアを前記第1パーティションから前記第1チップ中の有効領域にコピーするように構成される。
本発明の実施例により提供する構成は、以下のような有益な効果を有する。
まず、第1チップのファームウェアをアップグレードする必要があるかを特定することにより、複数のチップのファームウェアを同時にアップグレードするときに発生する競合を避けて、チップのファームウェアをアップグレードするときの安全性を向上し、第1チップの新しいファームウェアを第2チップのフラッシュメモリ中の第1パーティションにダウンロードして、第1チップの新しいファームウェアを第1パーティションから第1チップ中の有効位置にコピーすることにより、第2チップのフラッシュメモリを用いて、第1チップの新しいファームウェアのアップグレードを実現して、アップグレードする過程で追加の制御ロジックの利用を避け、スマートデバイスのリソースを節約する。
以上の統括的な記述と以下の詳細な記述は、単に例示的なものであり、本発明を制限するものではないと理解するべきである。
以下の図面は、明細書の一部分として明細書全体を構成することにより、本発明に合致する実施例を例示するとともに、本発明の原理を解釈するためのものである。
例示的な実施例に係るファームウェアアップグレード方法を示すフローチャートである。 例示的な実施例1に係るファームウェアアップグレード方法を示すフローチャートである。 例示的な実施例2に係るファームウェアアップグレード方法を示すフローチャートである。 例示的な実施例に係るMCUチップのパーティションを示す模式図である。 例示的な実施例に係るMCUチップに対してファームウェアアップグレードするときのパーティションを示す模式図のその1である。 例示的な実施例に係るWIFIチップに対してファームウェアアップグレードするときのパーティションを示す模式図のその2である。 例示的な実施例に係るWIFIチップに対してファームウェアアップグレードするときのパーティションを示す模式図のその3である。 例示的な実施例に係るWIFIチップに対してファームウェアアップグレードするときのパーティションを示す模式図のその4である。 例示的な実施例に係るファームウェアアップグレード装置を示すブロック図である。 例示的な実施例に係る他のファームウェアアップグレード装置を示すブロック図である。 例示的な実施例に係るファームウェアのアップグレードに適用される装置を示すブロック図である。
ここで、例示的な実施例を詳細に説明する。また、説明中の例は、図面に示している。以下の記述において、図面を説明する際に特に説明しない場合、異なる図面中の同一の符号は、同一または同様の要素を意味する。以下の例示的な実施例において記述する実施方法は、本発明に合致するすべての実施方法を代表しない。逆に、それらは、添付の特許請求の範囲において詳細に記述された、本発明の幾つかの態様と合致する装置及び方法の例に過ぎない。
図1は、例示的な実施例に係るファームウェアアップグレード方法を示すフローチャートである。当該ファームウェアアップグレード方法は、スマートデバイス(例えば、スマートソケット、スマートテレビ、スマートエアコンなど)に適用されてもよい。図1に示したように、当該ファームウェアアップグレード方法は、以下のステップS101〜S103を含む。
ステップS101において、第1チップのファームウェアをアップグレードする必要があると特定された場合、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識する。
一実施例において、遠隔制御の方法によって、第1チップのファームウェアをアップグレードする必要があると特定してもよく、スマートデバイスにおいてボタンをトリガする方法によって、第1チップのファームウェアをアップグレードする必要があることを特定してもよい。一実施例において、例えば、第1チップは、ブルートゥースチップ、WIFIチップなどの非MCUチップであり、第2チップは、MCUチップまたはMCUに類似するチップであり、第1パーティションは、MCUチップのフラッシュメモリ中のバックアップ領域であってもよい。或いは、第1チップは、MCUチップであり、第2チップは、ブルートゥースチップ、WIFIチップ等の非MCUチップでもよい。本発明の実施例は、第1チップと第2チップとの具体的な名称に対して制限しない。第1チップ及び第2チップの中の1つのチップ内に、フラッシュメモリが設定されてあればよい。
ステップS102において、第1チップの新しいファームウェアを第1パーティションにダウンロードする。
一実施例において、ネットワークを介して、第1チップのファームウェアを第1パーティションにダウンロードしてもよい。
ステップS103において、第1チップの新しいファームウェアを第1パーティションから第1チップ中の有効領域にコピーする。
一実施例において、第1チップの有効領域は、ファームウェアのタイプによって特定されてもよい。
本実施例において、まず、第1チップのファームウェアをアップグレードする必要があるかを特定することにより、複数のチップのファームウェアを同時にアップグレードするときに発生する競合を避けて、チップのファームウェアをアップグレードするときの安全性を向上し、第1チップの新しいファームウェアを第2チップのフラッシュメモリ中の第1パーティションにダウンロードして、第1チップの新しいファームウェアを第1パーティションから第1チップ中の有効位置にコピーすることにより、第2チップのフラッシュメモリを用いて、第1チップの新しいファームウェアのアップグレードを実現して、アップグレードする過程で追加の制御ロジックの利用を避け、スマートデバイスのリソースを節約した。
一実施例において、ファームウェアアップグレード方法は、
第2チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップの新しいファームウェアを第1パーティションにダウンロードするステップと、
第1パーティションを、第2チップの既存のファームウェアを記憶するための第2パーティションに、アクティブ化するステップと、
第2パーティションを、第2チップのファームウェアをダウンロードするための第1パーティションとして設定するステップと、をさらに含んでもよい。
一実施例において、ステップS101は、
第2チップのパーティション情報を取得するステップと、
パーティション情報に基づいて、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識するステップと、をさらに含んでもよい。
一実施例において、ファームウェアアップグレード方法は、
第1チップの新しいファームウェアを、第1パーティションにダウンロードした後に、第1チップの新しいファームウェアをチェックするステップ、をさらに含んでもよい。
スマートデバイス上のファームウェアを、具体的に、どのようにアップグレードするかは、以下の実施例を参考にすること。
以上の本発明の実施例によって提供する上記方法によると、複数のチップのファームウェアを同時にアップグレードをするときに発生する競合を避けることができて、チップのファームウェアをアップグレードするときの安全性を向上し、アップグレードする過程で追加の制御ロジックの利用を避けることもでき、スマートデバイスのリソースを節約した。
次に、具体的な実施例によって、本発明の実施例により提供された構成を説明する。
図2は、例示的な実施例1に係るファームウェアアップグレード方法を示すフローチャートである。本実施例は、本発明の実施例により提供された上記の方法を利用して、第2チップがMCUチップであり、また、MCUチップ中のファームウェアに対してアップグレードする例を挙げて、例示的に説明する。図2に示したように、以下のステップを含む。
ステップS201において、第2チップのファームウェアをアップグレードする必要があると特定された場合、第2チップのパーティション情報を取得する。
一実施例において、上記のステップS101に対する説明と類似する。遠隔制御の方法によって、アップグレードする必要があるファームウェアはMCUチップであることを特定してもよく、スマートデバイスにおいてボタンをトリガする方法により、アップグレードする必要があるファームウェアはMCUチップであることを特定してもよい。第2チップのパーティション情報は、フラッシュメモリ中の第1パーティションと第2パーティションとがそれぞれ位置する領域を示した。
ステップS202において、パーティション情報に基づいて、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識する。
一実施例において、第1パーティションは、例えば、フラッシュメモリ中のバックアップ領域である。
ステップS203において、第1チップの新しいファームウェアを第1パーティションにダウンロードした後に、第1チップの新しいファームウェアをチェックする。
一実施例において、巡回冗長検査コード(Cyclic Redundancy Check、CRCと略称する)により、第1チップの新しいファームウェアをチェックしてもよく、新しいファームウェアのフォーマット情報によって新しいファームウェアをチェックしてもよい。第1チップの新しいファームウェアをチェックすることにより、新しいファームウェアが正常であることを確保し、それによりファームウェアアップグレードの信頼性を確保する。
ステップS204において、第2チップの新しいファームウェアを、第1パーティションにダウンロードする。
ステップS205において、第1パーティションを、第2チップの既存のファームウェアを記憶するための第2パーティションに、アクティブ化する。
一実施例において、第2パーティションは、例えば、フラッシュメモリのアクティブ領域であり、当該アクティブ領域はMCUチップの既存のファームウェアを記憶するためのものである。
ステップS206において、第2パーティションを、第2チップのファームウェアをダウンロードするための第1パーティションとして設定する。
本実施例において、第2チップがMCUチップである例を挙げて例示的に説明した。MCUチップ中のアップグレードする必要があるファームウェアをバックアップ領域にダウンロードし、バックアップ領域をアクティブ領域として設定し、また、既存のファームウェアが位置する第2パーティションをバックアップ領域として設定することにより、スマートデバイスの他のリソースを占用しない上、MCUチップのファームウェアに対してアップグレードすることを実現して、追加の制御ロジックの利用を避けて、スマートデバイスのリソースを節約した。
図3は、例示的な実施例2に係るファームウェアアップグレード方法を示すフローチャートである。本実施例は、本発明の実施例によって提供する上記方法を利用して、まず、スマートデバイスのMCUチップ中のファームウェアをアップグレードしてから、再び、非MCUチップ(例えば、WIFIチップ、ブルートゥースチップ等)中のファームウェアをアップグレードする例を挙げて、例示的に説明する。図3に示したように、以下のステップを含む。
ステップS301において、第2チップのファームウェアをアップグレードする必要があると特定された場合、第2チップのパーティション情報を取得する。
一実施例において、上記のステップS101における説明と類似する。遠隔制御の方法によって、MCUチップのファームウェアをアップグレードする必要があることを特定してもよく、スマートデバイスにおいてボタンをトリガする方法によって、MCUチップのファームウェアをアップグレードする必要があることを特定してもよい。第2チップのパーティション情報は、フラッシュメモリ中の第1パーティションと第2パーティションとがそれぞれ位置する領域を示した。
ステップS302において、パーティション情報に基づいて、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識する。
ステップS303において、第2チップの新しいファームウェアを第1パーティションにダウンロードする。
ステップS304において、第2チップの新しいファームウェアを第1パーティションにダウンロードした後に、第2チップの新しいファームウェアをチェックする。
ステップS305において、第1パーティションを、第2チップの既存のファームウェアを記憶するための第2パーティションに、アクティブ化する。
ステップS306において、第2パーティションを、第2チップのファームウェアをダウンロードするための第1パーティションとして設定する。
上記ステップS301〜ステップS306の説明は、上記のステップS201〜ステップS206の説明を参照してもよく、その説明は省略することにする。
ステップS307において、アップグレードする必要があるファームウェアが第1チップであるとして特定された場合、第1チップの新しいファームウェアを第1パーティションにダウンロードする。
一実施例において、例えば、第1チップは、WIFIチップであり、MCUのフラッシュメモリ中の第1パーティションは、フラッシュメモリにおける元の第2パーティションであり、当該第1パーティションは、ステップS305の設定によりバックアップ領域になる。
ステップS308において、第1チップの新しいファームウェアを第1パーティションから第1チップ中の有効領域にコピーする。
本実施例においては、第1チップ中のファームウェア及び第2チップ中のファームウェアをアップグレードする例を挙げて、例示的に説明した。MCUのアップグレードに必要な新しいファームウェアをバックアップ領域にダウンロードし、バックアップ領域をアクティブ領域に設定し、また、既存のファームウェアが位置する第2パーティションをバックアップ領域に設定し、そして、WIFIチップのアップグレードに必要な新しいファームウェアをバックアップ領域にダウンロードし、また、WIFIチップのアップグレードに必要な新しいファームウェアをWIFIチップ中の有効領域にコピーすることにより、MCUチップのファームウェアとWIFIチップのファームウェアを同時にアップグレードする場合に発生する競合を避け、MCUチップ及びWIFIチップをファームウェアアップグレードする過程の安全性を向上し、WIFIチップの新しいファームウェアをMCUチップのフラッシュメモリ中の第1パーティションにダウンロードすることにより、WIFIチップの新しいファームウェアをバックアップ領域からWIFIチップ中の有効位置にコピーし、MCUチップのフラッシュメモリを用いてWIFIチップの新しいファームウェアへのアップグレードを実現して、アップグレードする過程で追加の制御ロジックの利用を避け、スマートデバイスのリソースを節約した。或いは、WIFIチップは、ブルートゥースチップであってもよく、ブルートゥースチップ中のファームウェアをアップグレードする過程は、上記の説明を参照してもよく、その説明は省略することにする。
次に、図4A〜図4Eを参照して、本発明の実施例のファームウェアアップグレードの過程を例示的に説明する。本発明の実施例は、第1チップがWIFIチップであり、第2チップがMCUチップである例を挙げて、例示的に説明する。当業者は、スマートデバイス中のフラッシュメモリを有するチップに対して、フラッシュメモリ中の互いに異なるパーティションを用いて、他のアップグレードする必要があるファームウェアをアップグレードする構成は、いずれも本発明の実施例の構成として理解してもよいことを理解すべきである。
2つ又は2つ以上のチップのファームウェアをアップグレードする必要がある場合に、スマートデバイスが受信したインストラクションの順序に従って、上記ファームウェアアップグレード方法によって、スマートデバイス中の複数のファームウェアをアップグレードしてもよい。次のような例を挙げる。
図4Aのように、スマートデバイス40はMCUチップ41及びWIFIチップ42を含み、そのうち、MCUチップ41中のフラッシュメモリは第1パーティション411及び第2パーティション412を含み、第1パーティション411はMCUチップ41のファームウェアをダウンロードするために用いられ、第2パーティション412はMCUチップの既存のファームウェアを記憶するために用いられる。よりイメージ化した説明は、第1パーティション411は、MCUチップのフラッシュメモリ中のバックアップ領域と呼ばれてもよく、第2パーティション412は、MCUチップのフラッシュメモリ中のアクティブ領域と呼ばれてもよい。
一実施例において、MCUチップ41及びWIFIチップ42は、いずれもファームウェアアップグレードする必要がある。図4Bに示したように、スマートデバイスは、遠隔ダウンロードの方法によって、MCUチップ41の新しいファームウェアを第1パーティション411にダウンロードしてもよい。図4Cに示したように、MCUチップ41の新しいファームウェアをチェックしてもよく、これにより、MCUチップ41の新しいファームウェアに問題がないことが確保された後、MCUチップ41の新しいファームウェアが位置する領域である第2パーティション412を、アクティブ領域にアクティブし、MCUチップ41の既存のファームウェアが位置する領域を、第1パーティション(即ち、バックアップ領域である)として設定する。
図4Dに示したように、スマートデバイスは、遠隔ダウンロードの方法によって、WIFIチップ42の新しいファームウェアを、MCUチップの第1パーティションにダウンロードする。図4Eに示したように、WIFIチップ42の新しいファームウェアに対するチェックが終了した後に、WIFIチップ42の新しいファームウェアをWIFIチップにコピーし、また、WIFI42の既存のファームウェアをカバーして、スマートデバイスを再起動すれば、スマートデバイスのファームウェアアップグレードは完成される。
上記の過程の説明により、本発明の実施例に係るファームウェアをアップグレードする過程を明確に理解することができる。当業者は、上記の過程は単に例示的な説明であり、本発明の実施例を制限するものではないことを理解すべきである。
図5は、例示的な実施例に係るファームウェアアップグレード装置を示すブロック図である。図5に示したように、ファームウェアアップグレード装置は、
第1チップのファームウェアをアップグレードする必要があると特定された場合、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識するための認識モジュール51と、
第1チップの新しいファームウェアを、認識モジュール51により認識された第1パーティションにダウンロードするための第1ダウンロードモジュール52と、
第1ダウンロードモジュール52によりダウンロードして得られた第1チップの新しいファームウェアを、第1パーティションから第1チップ中の有効領域にコピーするためのコピーモジュール53と、を含んでもよい。
図6に示したように、装置は、
第2チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップの新しいファームウェアを、認識モジュール51により認識された第1パーティションにダウンロードするための第2ダウンロードモジュール54と、
第2ダウンロードモジュール54により第2チップの新しいファームウェアを第1パーティションにダウンロードした後に、第1パーティションを、第2チップの既存のファームウェアを記憶するための第2パーティションに、アクティブ化するためのアクティブモジュール55と、
アクティブモジュール55により第1パーティションを第2パーティションにアクティブ化した後に、第2パーティションを、第2チップのファームウェアをダウンロードするための第1パーティションとして設定するための設定モジュール56と、をさらに含んでもよい。第1チップのファームウェアを必要する場合に、認識モジュール51は、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識することができる。
一実施例において、認識モジュール51は、
第2チップのパーティション情報を取得するための取得サブモジュール511と、
取得サブモジュール511により取得したパーティション情報に基づいて、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識するための認識サブモジュール512と、を含んでもよい。
一実施例において、装置は、
第1ダウンロードモジュール52により第1チップの新しいファームウェアを第1パーティションにダウンロードした後に、第1チップの新しいファームウェアをチェックするためのチェックモジュール57、をさらに含んでもよい。
上記の実施例の装置について、その各モジュールが実行する操作の具体的な形態は既に当該方法に関する実施例において詳細に説明したため、ここでは詳細に説明しない。
図7は、例示的な実施例に係るファームウェアをアップグレードするために適用される装置を示すブロック図である。例えば、装置700は、携帯電話、コンピュータ、デジタル放送端末、メッセージ送受信デバイス、ゲームコンソール、タブレットデバイス、医療機器、フィットネス機器、パーソナルデジタルアシスタント等であってもよい。
図7を参照して、装置700は、プロセスアセンブリ702、メモリ704、電源アセンブリ706、マルチメディアアセンブリ708、オーディオアセンブリ710、入出力(I/O)インターフェイス712、センサアセンブリ714、及び通信アセンブリ716のような一つ以上のアセンブリを含んでよい。
プロセスアセンブリ702は、一般的には装置700の全体の動作を制御するものであり、例えば、表示、電話呼び出し、データ通信、カメラ動作、及び記録動作と関連する動作を制御する。プロセスアセンブリ702は、一つ以上のプロセッサ720を含み、これらによって命令を実行することにより、上記の方法の全部、或いは一部のステップを実現するようにしてもよい。なお、プロセスアセンブリ702は、一つ以上のモジュールを含み、これらによってプロセスアセンブリ702と他のアセンブリの間のインタラクションを容易にするようにしてもよい。例えば、プロセスアセンブリ702は、マルチメディアモジュールを含み、これらによってマルチメディアアセンブリ708とプロセスアセンブリ702の間のインタラクションを容易にするようにしてもよい。
メモリ704は、各種類のデータを記憶することにより装置700の動作を支援するように構成される。これらのデータの例は、装置700において動作するいずれのアプリケーションプログラム又は方法の命令、連絡対象データ、電話帳データ、メッセージ、画像、ビデオ等を含む。メモリ704は、いずれの種類の揮発性メモリ、不揮発性メモリ記憶デバイスまたはそれらの組み合わせによって実現されてもよく、例えば、SRAM(Static Random Access Memory)、EEPROM(Electrically Erasable Programmable Read−Only Memory)、EPROM(Erasable Programmable Read Only Memory)、PROM(Programmable ROM)、ROM(Read Only Member)、磁気メモリ、フラッシュメモリ、磁気ディスク、或いは光ディスクである。
電源アセンブリ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のON/OFF状態、装置700のディスプレイとキーパッドのようなアセンブリの相対的な位置決めを検出できる。また、例えば、センサアセンブリ714は、装置700、或いは装置700の一つのアセンブリの位置変更、ユーザと装置700とが接触しているか否か、装置700の方位、又は加速/減速、装置700の温度の変化を検出できる。センサアセンブリ714は、何れの物理的接触がない状態にて付近の物体の存在を検出するための近接センサを含んでもよい。センサアセンブリ714は、撮影アプリケーションに適用するため、CMOS、又はCCD画像センサのような光センサを含んでもよい。上記の実施例において、当該センサアセンブリ714は、加速度センサ、ジャイロスコープセンサ、磁気センサ、圧力センサ、及び温度センサをさらに含んでもよい。
通信アセンブリ716は、装置700と他の機器の間に有線、又は利便性のよい形態の通信を提供する。装置700は、例えばWiFi(登録商標)、2G、3G、或いはこれらの組み合わせのような、通信規格に基づいた無線ネットワークに接続されてもよい。一つの例示的な実施例において、通信アセンブリ716は、放送チャンネルを介して外部の放送管理システムからの放送信号、又は放送に関連する情報を受信する。一つの例示的な実施例において、前記通信アセンブリ716は、近距離無線通信(NFC)モジュールをさらに含むことにより、近距離通信を可能にする。例えば、NFCモジュールは、RFID(Radio Frequency IDentification)技術、IrDA(Infrared Data Association)技術、UWB(Ultra Wide Band)技術、BT(Bluetooth(登録商標))技術、その他の技術に基づいて実現できる。
例示的な実施例において、装置700は、一つ以上のASIC(Application Specific Integrated Circuit)、DSP(Digital Signal Processor)、DSPD(Digital Signal Processing Device)、PLD(Programmable Logic Device)、FPGA(Field−Programmable Gate Array)、コントローラ、マイクロコントローラ、マイクロプロセッサ、または他の電子部品によって実現されるものであり、上記方法を実行する。
例示的な実施例において、さらに、命令を含むコンピュータ読取り可能な非一時的な記録媒体、例えば命令を含むメモリ704を提供しており、装置700のプロセッサ720により上記命令を実行して上記方法を実現する。例えば、前記コンピュータ読取り可能な非一時的な記録媒体は、ROM、RAM、CD‐ROM、磁気テープ、フロッピーディスク(登録商標)、光データ記憶デバイス等である。
当業者は、明細書を検討して本発明を実施した後、本発明の他の実施例を容易に考え出すことができる。本願は、本発明のいずれの変形、用途、又は適応的な変更をカバーすることを意図しており、これらの変形、用途、又は適応的な変更は、本発明の一般的な原理に従い、また、本発明は公開していない当該技術分野の公知の知識又は通常の技術手段を含む。明細書と実施例は単に例示として考慮され、本発明の本当の範囲と趣旨は以下の特許請求の範囲に記載される。
本発明は上記に記述され、また図面に示された厳密な構成に限定されず、その範囲を逸脱しない限り多様な置換えと変更を行うことができると理解されるべきである。本発明の範囲は添付の特許請求の範囲のみにより限定される。
相互参照
本願は、出願番号がCN201410751727.3であり、出願日が2014年12月09日である中国特許出願に基づき優先権を主張し、当該中国特許出願のすべての内容を本願に援用する。
本発明は、電子技術分野に関し、特に、ファームウェアアップグレード方法、装置、プログラム及び記録媒体に関する。
ファームウェアアップグレードとは、エンベデッドマイクロコントロールユニット(Micro Control Unit、MCUと略称する)のエンベデッドファームウェアをアップデートすることにより、スマートデバイスの機能を改善し、スマートデバイスの安定性を高めることを意味する。より複雑なスマートデバイスは、複数のMCU、又は、MCU型のチップ及び非MCU型のチップに対して、ファームウェアをアップグレードする必要がある場合が存在する。ここで、非MCU型チップは、例えば、ワイヤレス・フィディリティー(Wireless Fidelity、WIFIと略称する)チップ、ブルートゥースチップ等である。複数のファームウェアをアップグレードする際に、複数のファームウェアに対してそれぞれファームウェアアップグレードをすると、リソースの無駄遣いになり易い。
本発明は、従来技術での技術問題を解決するために、ファームウェアをアップグレードする過程の安全性を高めるための、ファームウェアアップグレード方法、装置、プログラム及び記録媒体を提供する。
本発明の実施例の第1の態様によると、ファームウェアアップグレード方法を提供する。
当該方法は、
第1チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するステップと、
前記第1チップの新しいファームウェアを前記第1パーティションにダウンロードするステップと、
前記第1チップの新しいファームウェアを前記第1パーティションから前記第1チップ中の有効領域にコピーするステップと、を含む。
一実施例において、前記方法は、
前記第2チップのファームウェアをアップグレードする必要があると特定された場合に、前記第2チップの新しいファームウェアを前記第1パーティションにダウンロードするステップと、
前記第1パーティションを、前記第2チップの既存のファームウェアを記憶するための第2パーティションにアクティブ化するステップと、
前記第2パーティションを、前記第2チップのファームウェアをダウンロードするための第1パーティションとして設定するステップと、をさらに含む。
一実施例において、前記第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するステップは、
第2チップのパーティション情報を取得するステップと、
前記パーティション情報に基づいて、前記第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するステップと、を含む。
一実施例において、前記方法は、
前記第1チップの新しいファームウェアを前記第1パーティションにダウンロードした後に、前記第1チップの新しいファームウェアをチェックするステップ、をさらに含む。
本発明の実施例の第2の態様によると、ファームウェアアップグレード装置を提供する。
当該装置は、
第1チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するための認識モジュールと、
前記第1チップの新しいファームウェアを、前記認識モジュールにより認識された前記第1パーティションにダウンロードするための第1ダウンロードモジュールと、
前記第1ダウンロードモジュールによりダウンロードして得られた前記第1チップの新しいファームウェアを、前記第1パーティションから前記第1チップ中の有効領域にコピーするためのコピーモジュールと、を含む。
一実施例において、前記装置は、
前記第2チップのファームウェアをアップグレードする必要があると特定された場合に、前記第2チップの新しいファームウェアを前記第1パーティションにダウンロードするための第2ダウンロードモジュールと、
前記第2ダウンロードモジュールにより前記第2チップの新しいファームウェアを前記第1パーティションにダウンロードした後に、前記第1パーティションを、前記第2チップの既存のファームウェアを記憶するための第2パーティションにアクティブ化するためのアクティブモジュールと、
前記アクティブモジュールにより前記第1パーティションを前記第2パーティションにアクティブ化した後に、前記第2パーティションを、前記第2チップのファームウェアをダウンロードするための第1パーティションとして設定するための設定モジュールと、をさらに含む。
一実施例において、前記認識モジュールは、
第2チップのパーティション情報を取得するための取得サブモジュールと、
前記取得サブモジュールにより取得した前記パーティション情報に基づいて、前記第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するための認識サブモジュールと、を含む。
一実施例において、前記装置は、
前記第1ダウンロードモジュールにより前記第1チップの新しいファームウェアを前記第1パーティションにダウンロードした後に、前記第1チップの新しいファームウェアをチェックするためのチェックモジュール、をさらに含む。
本発明の実施例の第3の態様によると、ファームウェアアップグレード装置を提供する。
当該装置は、
プロセッサと、
前記プロセッサが実行可能な命令を記憶するためのメモリと
を備え、
前記プロセッサは、
第1チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識し、
前記第1チップの新しいファームウェアを前記第1パーティションにダウンロードし、
前記第1チップの新しいファームウェアを前記第1パーティションから前記第1チップ中の有効領域にコピーするように構成される。
本発明の実施例の第4の態様によると、プログラムを提供し、当該プログラムは、プロセッサに実行されることにより、上記のファームウェアアップグレード方法を実現する。
本発明の実施例の第5の態様によると、記録媒体を提供し、当該記録媒体には、上記プログラムが記録されている。
本発明の実施例により提供する構成は、以下のような有益な効果を有する。
まず、第1チップのファームウェアをアップグレードする必要があるかを特定することにより、複数のチップのファームウェアを同時にアップグレードするときに発生する競合を避けて、チップのファームウェアをアップグレードするときの安全性を向上し、第1チップの新しいファームウェアを第2チップのフラッシュメモリ中の第1パーティションにダウンロードして、第1チップの新しいファームウェアを第1パーティションから第1チップ中の有効位置にコピーすることにより、第2チップのフラッシュメモリを用いて、第1チップの新しいファームウェアのアップグレードを実現して、アップグレードする過程で追加の制御ロジックの利用を避け、スマートデバイスのリソースを節約する。
以上の統括的な記述と以下の詳細な記述は、単に例示的なものであり、本発明を制限するものではないと理解するべきである。
以下の図面は、明細書の一部分として明細書全体を構成することにより、本発明に合致する実施例を例示するとともに、本発明の原理を解釈するためのものである。
例示的な実施例に係るファームウェアアップグレード方法を示すフローチャートである。 例示的な実施例1に係るファームウェアアップグレード方法を示すフローチャートである。 例示的な実施例2に係るファームウェアアップグレード方法を示すフローチャートである。 例示的な実施例に係るMCUチップのパーティションを示す模式図である。 例示的な実施例に係るMCUチップに対してファームウェアアップグレードするときのパーティションを示す模式図のその1である。 例示的な実施例に係るWIFIチップに対してファームウェアアップグレードするときのパーティションを示す模式図のその2である。 例示的な実施例に係るWIFIチップに対してファームウェアアップグレードするときのパーティションを示す模式図のその3である。 例示的な実施例に係るWIFIチップに対してファームウェアアップグレードするときのパーティションを示す模式図のその4である。 例示的な実施例に係るファームウェアアップグレード装置を示すブロック図である。 例示的な実施例に係る他のファームウェアアップグレード装置を示すブロック図である。 例示的な実施例に係るファームウェアのアップグレードに適用される装置を示すブロック図である。
ここで、例示的な実施例を詳細に説明する。また、説明中の例は、図面に示している。以下の記述において、図面を説明する際に特に説明しない場合、異なる図面中の同一の符号は、同一または同様の要素を意味する。以下の例示的な実施例において記述する実施方法は、本発明に合致するすべての実施方法を代表しない。逆に、それらは、添付の特許請求の範囲において詳細に記述された、本発明の幾つかの態様と合致する装置及び方法の例に過ぎない。
図1は、例示的な実施例に係るファームウェアアップグレード方法を示すフローチャートである。当該ファームウェアアップグレード方法は、スマートデバイス(例えば、スマートソケット、スマートテレビ、スマートエアコンなど)に適用されてもよい。図1に示したように、当該ファームウェアアップグレード方法は、以下のステップS101〜S103を含む。
ステップS101において、第1チップのファームウェアをアップグレードする必要があると特定された場合、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識する。
一実施例において、遠隔制御の方法によって、第1チップのファームウェアをアップグレードする必要があると特定してもよく、スマートデバイスにおいてボタンをトリガする方法によって、第1チップのファームウェアをアップグレードする必要があることを特定してもよい。一実施例において、例えば、第1チップは、ブルートゥースチップ、WIFIチップなどの非MCUチップであり、第2チップは、MCUチップまたはMCUに類似するチップであり、第1パーティションは、MCUチップのフラッシュメモリ中のバックアップ領域であってもよい。或いは、第1チップは、MCUチップであり、第2チップは、ブルートゥースチップ、WIFIチップ等の非MCUチップでもよい。本発明の実施例は、第1チップと第2チップとの具体的な名称に対して制限しない。第1チップ及び第2チップの中の1つのチップ内に、フラッシュメモリが設定されてあればよい。
ステップS102において、第1チップの新しいファームウェアを第1パーティションにダウンロードする。
一実施例において、ネットワークを介して、第1チップのファームウェアを第1パーティションにダウンロードしてもよい。
ステップS103において、第1チップの新しいファームウェアを第1パーティションから第1チップ中の有効領域にコピーする。
一実施例において、第1チップの有効領域は、ファームウェアのタイプによって特定されてもよい。
本実施例において、まず、第1チップのファームウェアをアップグレードする必要があるかを特定することにより、複数のチップのファームウェアを同時にアップグレードするときに発生する競合を避けて、チップのファームウェアをアップグレードするときの安全性を向上し、第1チップの新しいファームウェアを第2チップのフラッシュメモリ中の第1パーティションにダウンロードして、第1チップの新しいファームウェアを第1パーティションから第1チップ中の有効位置にコピーすることにより、第2チップのフラッシュメモリを用いて、第1チップの新しいファームウェアのアップグレードを実現して、アップグレードする過程で追加の制御ロジックの利用を避け、スマートデバイスのリソースを節約した。
一実施例において、ファームウェアアップグレード方法は、
第2チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップの新しいファームウェアを第1パーティションにダウンロードするステップと、
第1パーティションを、第2チップの既存のファームウェアを記憶するための第2パーティションに、アクティブ化するステップと、
第2パーティションを、第2チップのファームウェアをダウンロードするための第1パーティションとして設定するステップと、をさらに含んでもよい。
一実施例において、ステップS101は、
第2チップのパーティション情報を取得するステップと、
パーティション情報に基づいて、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識するステップと、をさらに含んでもよい。
一実施例において、ファームウェアアップグレード方法は、
第1チップの新しいファームウェアを、第1パーティションにダウンロードした後に、第1チップの新しいファームウェアをチェックするステップ、をさらに含んでもよい。
スマートデバイス上のファームウェアを、具体的に、どのようにアップグレードするかは、以下の実施例を参考にすること。
以上の本発明の実施例によって提供する上記方法によると、複数のチップのファームウェアを同時にアップグレードをするときに発生する競合を避けることができて、チップのファームウェアをアップグレードするときの安全性を向上し、アップグレードする過程で追加の制御ロジックの利用を避けることもでき、スマートデバイスのリソースを節約した。
次に、具体的な実施例によって、本発明の実施例により提供された構成を説明する。
図2は、例示的な実施例1に係るファームウェアアップグレード方法を示すフローチャートである。本実施例は、本発明の実施例により提供された上記の方法を利用して、第2チップがMCUチップであり、また、MCUチップ中のファームウェアに対してアップグレードする例を挙げて、例示的に説明する。図2に示したように、以下のステップを含む。
ステップS201において、第2チップのファームウェアをアップグレードする必要があると特定された場合、第2チップのパーティション情報を取得する。
一実施例において、上記のステップS101に対する説明と類似する。遠隔制御の方法によって、アップグレードする必要があるファームウェアはMCUチップであることを特定してもよく、スマートデバイスにおいてボタンをトリガする方法により、アップグレードする必要があるファームウェアはMCUチップであることを特定してもよい。第2チップのパーティション情報は、フラッシュメモリ中の第1パーティションと第2パーティションとがそれぞれ位置する領域を示した。
ステップS202において、パーティション情報に基づいて、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識する。
一実施例において、第1パーティションは、例えば、フラッシュメモリ中のバックアップ領域である。
ステップS203において、第1チップの新しいファームウェアを第1パーティションにダウンロードした後に、第1チップの新しいファームウェアをチェックする。
一実施例において、巡回冗長検査コード(Cyclic Redundancy Check、CRCと略称する)により、第1チップの新しいファームウェアをチェックしてもよく、新しいファームウェアのフォーマット情報によって新しいファームウェアをチェックしてもよい。第1チップの新しいファームウェアをチェックすることにより、新しいファームウェアが正常であることを確保し、それによりファームウェアアップグレードの信頼性を確保する。
ステップS204において、第2チップの新しいファームウェアを、第1パーティションにダウンロードする。
ステップS205において、第1パーティションを、第2チップの既存のファームウェアを記憶するための第2パーティションに、アクティブ化する。
一実施例において、第2パーティションは、例えば、フラッシュメモリのアクティブ領域であり、当該アクティブ領域はMCUチップの既存のファームウェアを記憶するためのものである。
ステップS206において、第2パーティションを、第2チップのファームウェアをダウンロードするための第1パーティションとして設定する。
本実施例において、第2チップがMCUチップである例を挙げて例示的に説明した。MCUチップ中のアップグレードする必要があるファームウェアをバックアップ領域にダウンロードし、バックアップ領域をアクティブ領域として設定し、また、既存のファームウェアが位置する第2パーティションをバックアップ領域として設定することにより、スマートデバイスの他のリソースを占用しない上、MCUチップのファームウェアに対してアップグレードすることを実現して、追加の制御ロジックの利用を避けて、スマートデバイスのリソースを節約した。
図3は、例示的な実施例2に係るファームウェアアップグレード方法を示すフローチャートである。本実施例は、本発明の実施例によって提供する上記方法を利用して、まず、スマートデバイスのMCUチップ中のファームウェアをアップグレードしてから、再び、非MCUチップ(例えば、WIFIチップ、ブルートゥースチップ等)中のファームウェアをアップグレードする例を挙げて、例示的に説明する。図3に示したように、以下のステップを含む。
ステップS301において、第2チップのファームウェアをアップグレードする必要があると特定された場合、第2チップのパーティション情報を取得する。
一実施例において、上記のステップS101における説明と類似する。遠隔制御の方法によって、MCUチップのファームウェアをアップグレードする必要があることを特定してもよく、スマートデバイスにおいてボタンをトリガする方法によって、MCUチップのファームウェアをアップグレードする必要があることを特定してもよい。第2チップのパーティション情報は、フラッシュメモリ中の第1パーティションと第2パーティションとがそれぞれ位置する領域を示した。
ステップS302において、パーティション情報に基づいて、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識する。
ステップS303において、第2チップの新しいファームウェアを第1パーティションにダウンロードする。
ステップS304において、第2チップの新しいファームウェアを第1パーティションにダウンロードした後に、第2チップの新しいファームウェアをチェックする。
ステップS305において、第1パーティションを、第2チップの既存のファームウェアを記憶するための第2パーティションに、アクティブ化する。
ステップS306において、第2パーティションを、第2チップのファームウェアをダウンロードするための第1パーティションとして設定する。
上記ステップS301〜ステップS306の説明は、上記のステップS201〜ステップS206の説明を参照してもよく、その説明は省略することにする。
ステップS307において、アップグレードする必要があるファームウェアが第1チップであるとして特定された場合、第1チップの新しいファームウェアを第1パーティションにダウンロードする。
一実施例において、例えば、第1チップは、WIFIチップであり、MCUのフラッシュメモリ中の第1パーティションは、フラッシュメモリにおける元の第2パーティションであり、当該第1パーティションは、ステップS305の設定によりバックアップ領域になる。
ステップS308において、第1チップの新しいファームウェアを第1パーティションから第1チップ中の有効領域にコピーする。
本実施例においては、第1チップ中のファームウェア及び第2チップ中のファームウェアをアップグレードする例を挙げて、例示的に説明した。MCUのアップグレードに必要な新しいファームウェアをバックアップ領域にダウンロードし、バックアップ領域をアクティブ領域に設定し、また、既存のファームウェアが位置する第2パーティションをバックアップ領域に設定し、そして、WIFIチップのアップグレードに必要な新しいファームウェアをバックアップ領域にダウンロードし、また、WIFIチップのアップグレードに必要な新しいファームウェアをWIFIチップ中の有効領域にコピーすることにより、MCUチップのファームウェアとWIFIチップのファームウェアを同時にアップグレードする場合に発生する競合を避け、MCUチップ及びWIFIチップをファームウェアアップグレードする過程の安全性を向上し、WIFIチップの新しいファームウェアをMCUチップのフラッシュメモリ中の第1パーティションにダウンロードすることにより、WIFIチップの新しいファームウェアをバックアップ領域からWIFIチップ中の有効位置にコピーし、MCUチップのフラッシュメモリを用いてWIFIチップの新しいファームウェアへのアップグレードを実現して、アップグレードする過程で追加の制御ロジックの利用を避け、スマートデバイスのリソースを節約した。或いは、WIFIチップは、ブルートゥースチップであってもよく、ブルートゥースチップ中のファームウェアをアップグレードする過程は、上記の説明を参照してもよく、その説明は省略することにする。
次に、図4A〜図4Eを参照して、本発明の実施例のファームウェアアップグレードの過程を例示的に説明する。本発明の実施例は、第1チップがWIFIチップであり、第2チップがMCUチップである例を挙げて、例示的に説明する。当業者は、スマートデバイス中のフラッシュメモリを有するチップに対して、フラッシュメモリ中の互いに異なるパーティションを用いて、他のアップグレードする必要があるファームウェアをアップグレードする構成は、いずれも本発明の実施例の構成として理解してもよいことを理解すべきである。
2つ又は2つ以上のチップのファームウェアをアップグレードする必要がある場合に、スマートデバイスが受信したインストラクションの順序に従って、上記ファームウェアアップグレード方法によって、スマートデバイス中の複数のファームウェアをアップグレードしてもよい。次のような例を挙げる。
図4Aのように、スマートデバイス40はMCUチップ41及びWIFIチップ42を含み、そのうち、MCUチップ41中のフラッシュメモリは第1パーティション411及び第2パーティション412を含み、第1パーティション411はMCUチップ41のファームウェアをダウンロードするために用いられ、第2パーティション412はMCUチップの既存のファームウェアを記憶するために用いられる。よりイメージ化した説明は、第1パーティション411は、MCUチップのフラッシュメモリ中のバックアップ領域と呼ばれてもよく、第2パーティション412は、MCUチップのフラッシュメモリ中のアクティブ領域と呼ばれてもよい。
一実施例において、MCUチップ41及びWIFIチップ42は、いずれもファームウェアアップグレードする必要がある。図4Bに示したように、スマートデバイスは、遠隔ダウンロードの方法によって、MCUチップ41の新しいファームウェアを第1パーティション411にダウンロードしてもよい。図4Cに示したように、MCUチップ41の新しいファームウェアをチェックしてもよく、これにより、MCUチップ41の新しいファームウェアに問題がないことが確保された後、MCUチップ41の新しいファームウェアが位置する領域である第2パーティション412を、アクティブ領域にアクティブし、MCUチップ41の既存のファームウェアが位置する領域を、第1パーティション(即ち、バックアップ領域である)として設定する。
図4Dに示したように、スマートデバイスは、遠隔ダウンロードの方法によって、WIFIチップ42の新しいファームウェアを、MCUチップの第1パーティションにダウンロードする。図4Eに示したように、WIFIチップ42の新しいファームウェアに対するチェックが終了した後に、WIFIチップ42の新しいファームウェアをWIFIチップにコピーし、また、WIFI42の既存のファームウェアをカバーして、スマートデバイスを再起動すれば、スマートデバイスのファームウェアアップグレードは完成される。
上記の過程の説明により、本発明の実施例に係るファームウェアをアップグレードする過程を明確に理解することができる。当業者は、上記の過程は単に例示的な説明であり、本発明の実施例を制限するものではないことを理解すべきである。
図5は、例示的な実施例に係るファームウェアアップグレード装置を示すブロック図である。図5に示したように、ファームウェアアップグレード装置は、
第1チップのファームウェアをアップグレードする必要があると特定された場合、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識するための認識モジュール51と、
第1チップの新しいファームウェアを、認識モジュール51により認識された第1パーティションにダウンロードするための第1ダウンロードモジュール52と、
第1ダウンロードモジュール52によりダウンロードして得られた第1チップの新しいファームウェアを、第1パーティションから第1チップ中の有効領域にコピーするためのコピーモジュール53と、を含んでもよい。
図6に示したように、装置は、
第2チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップの新しいファームウェアを、認識モジュール51により認識された第1パーティションにダウンロードするための第2ダウンロードモジュール54と、
第2ダウンロードモジュール54により第2チップの新しいファームウェアを第1パーティションにダウンロードした後に、第1パーティションを、第2チップの既存のファームウェアを記憶するための第2パーティションに、アクティブ化するためのアクティブモジュール55と、
アクティブモジュール55により第1パーティションを第2パーティションにアクティブ化した後に、第2パーティションを、第2チップのファームウェアをダウンロードするための第1パーティションとして設定するための設定モジュール56と、をさらに含んでもよい。第1チップのファームウェアを必要する場合に、認識モジュール51は、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識することができる。
一実施例において、認識モジュール51は、
第2チップのパーティション情報を取得するための取得サブモジュール511と、
取得サブモジュール511により取得したパーティション情報に基づいて、第2チップのフラッシュメモリ中の、第2チップのファームウェアをダウンロードするための第1パーティションを認識するための認識サブモジュール512と、を含んでもよい。
一実施例において、装置は、
第1ダウンロードモジュール52により第1チップの新しいファームウェアを第1パーティションにダウンロードした後に、第1チップの新しいファームウェアをチェックするためのチェックモジュール57、をさらに含んでもよい。
上記の実施例の装置について、その各モジュールが実行する操作の具体的な形態は既に当該方法に関する実施例において詳細に説明したため、ここでは詳細に説明しない。
図7は、例示的な実施例に係るファームウェアをアップグレードするために適用される装置を示すブロック図である。例えば、装置700は、携帯電話、コンピュータ、デジタル放送端末、メッセージ送受信デバイス、ゲームコンソール、タブレットデバイス、医療機器、フィットネス機器、パーソナルデジタルアシスタント等であってもよい。
図7を参照して、装置700は、プロセスアセンブリ702、メモリ704、電源アセンブリ706、マルチメディアアセンブリ708、オーディオアセンブリ710、入出力(I/O)インターフェイス712、センサアセンブリ714、及び通信アセンブリ716のような一つ以上のアセンブリを含んでよい。
プロセスアセンブリ702は、一般的には装置700の全体の動作を制御するものであり、例えば、表示、電話呼び出し、データ通信、カメラ動作、及び記録動作と関連する動作を制御する。プロセスアセンブリ702は、一つ以上のプロセッサ720を含み、これらによって命令を実行することにより、上記の方法の全部、或いは一部のステップを実現するようにしてもよい。なお、プロセスアセンブリ702は、一つ以上のモジュールを含み、これらによってプロセスアセンブリ702と他のアセンブリの間のインタラクションを容易にするようにしてもよい。例えば、プロセスアセンブリ702は、マルチメディアモジュールを含み、これらによってマルチメディアアセンブリ708とプロセスアセンブリ702の間のインタラクションを容易にするようにしてもよい。
メモリ704は、各種類のデータを記憶することにより装置700の動作を支援するように構成される。これらのデータの例は、装置700において動作するいずれのアプリケーションプログラム又は方法の命令、連絡対象データ、電話帳データ、メッセージ、画像、ビデオ等を含む。メモリ704は、いずれの種類の揮発性メモリ、不揮発性メモリ記憶デバイスまたはそれらの組み合わせによって実現されてもよく、例えば、SRAM(Static Random Access Memory)、EEPROM(Electrically Erasable Programmable Read−Only Memory)、EPROM(Erasable Programmable Read Only Memory)、PROM(Programmable ROM)、ROM(Read Only Member)、磁気メモリ、フラッシュメモリ、磁気ディスク、或いは光ディスクである。
電源アセンブリ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のON/OFF状態、装置700のディスプレイとキーパッドのようなアセンブリの相対的な位置決めを検出できる。また、例えば、センサアセンブリ714は、装置700、或いは装置700の一つのアセンブリの位置変更、ユーザと装置700とが接触しているか否か、装置700の方位、又は加速/減速、装置700の温度の変化を検出できる。センサアセンブリ714は、何れの物理的接触がない状態にて付近の物体の存在を検出するための近接センサを含んでもよい。センサアセンブリ714は、撮影アプリケーションに適用するため、CMOS、又はCCD画像センサのような光センサを含んでもよい。上記の実施例において、当該センサアセンブリ714は、加速度センサ、ジャイロスコープセンサ、磁気センサ、圧力センサ、及び温度センサをさらに含んでもよい。
通信アセンブリ716は、装置700と他の機器の間に有線、又は利便性のよい形態の通信を提供する。装置700は、例えばWiFi(登録商標)、2G、3G、或いはこれらの組み合わせのような、通信規格に基づいた無線ネットワークに接続されてもよい。一つの例示的な実施例において、通信アセンブリ716は、放送チャンネルを介して外部の放送管理システムからの放送信号、又は放送に関連する情報を受信する。一つの例示的な実施例において、前記通信アセンブリ716は、近距離無線通信(NFC)モジュールをさらに含むことにより、近距離通信を可能にする。例えば、NFCモジュールは、RFID(Radio Frequency IDentification)技術、IrDA(Infrared Data Association)技術、UWB(Ultra Wide Band)技術、BT(Bluetooth(登録商標))技術、その他の技術に基づいて実現できる。
例示的な実施例において、装置700は、一つ以上のASIC(Application Specific Integrated Circuit)、DSP(Digital Signal Processor)、DSPD(Digital Signal Processing Device)、PLD(Programmable Logic Device)、FPGA(Field−Programmable Gate Array)、コントローラ、マイクロコントローラ、マイクロプロセッサ、または他の電子部品によって実現されるものであり、上記方法を実行する。
例示的な実施例において、さらに、命令を含むコンピュータ読取り可能な非一時的な記録媒体、例えば命令を含むメモリ704を提供しており、装置700のプロセッサ720により上記命令を実行して上記方法を実現する。例えば、前記コンピュータ読取り可能な非一時的な記録媒体は、ROM、RAM、CD‐ROM、磁気テープ、フロッピーディスク(登録商標)、光データ記憶デバイス等である。
当業者は、明細書を検討して本発明を実施した後、本発明の他の実施例を容易に考え出すことができる。本願は、本発明のいずれの変形、用途、又は適応的な変更をカバーすることを意図しており、これらの変形、用途、又は適応的な変更は、本発明の一般的な原理に従い、また、本発明は公開していない当該技術分野の公知の知識又は通常の技術手段を含む。明細書と実施例は単に例示として考慮され、本発明の本当の範囲と趣旨は以下の特許請求の範囲に記載される。
本発明は上記に記述され、また図面に示された厳密な構成に限定されず、その範囲を逸脱しない限り多様な置換えと変更を行うことができると理解されるべきである。本発明の範囲は添付の特許請求の範囲のみにより限定される。

Claims (9)

  1. スマートデバイスに適用されるファームウェアアップグレード方法であって、
    第1チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するステップと、
    前記第1チップの新しいファームウェアを前記第1パーティションにダウンロードするステップと、
    前記第1チップの新しいファームウェアを前記第1パーティションから前記第1チップ中の有効領域にコピーするステップと、
    を含むことを特徴とするファームウェアアップグレード方法。
  2. 前記第2チップのファームウェアをアップグレードする必要があると特定された場合に、前記第2チップの新しいファームウェアを前記第1パーティションにダウンロードするステップと、
    前記第1パーティションを、前記第2チップの既存のファームウェアを記憶するための第2パーティションにアクティブ化するステップと、
    前記第2パーティションを、前記第2チップのファームウェアをダウンロードするための第1パーティションとして設定するステップと、
    をさらに含むことを特徴とする請求項1に記載のファームウェアアップグレード方法。
  3. 前記第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するステップは、
    第2チップのパーティション情報を取得するステップと、
    前記パーティション情報に基づいて、前記第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するステップと、
    を含むことを特徴とする請求項1に記載のファームウェアアップグレード方法。
  4. 前記第1チップの新しいファームウェアを前記第1パーティションにダウンロードした後に、前記第1チップの新しいファームウェアをチェックするステップ、
    をさらに含むことを特徴とする請求項1に記載のファームウェアアップグレード方法。
  5. スマートデバイスに適用されるファームウェアアップグレード装置であって、
    第1チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するための認識モジュールと、
    前記第1チップの新しいファームウェアを、前記認識モジュールにより認識された前記第1パーティションにダウンロードするための第1ダウンロードモジュールと、
    前記第1ダウンロードモジュールによりダウンロードして得られた前記第1チップの新しいファームウェアを、前記第1パーティションから前記第1チップ中の有効領域にコピーするためのコピーモジュールと、
    を含むことを特徴とするファームウェアアップグレード装置。
  6. 前記第2チップのファームウェアをアップグレードする必要があると特定された場合に、前記第2チップの新しいファームウェアを、前記認識モジュールにより認識された前記第1パーティションにダウンロードするための第2ダウンロードモジュールと、
    前記第2ダウンロードモジュールにより前記第2チップの新しいファームウェアを前記第1パーティションにダウンロードした後に、前記第1パーティションを、前記第2チップの既存のファームウェアを記憶するための第2パーティションにアクティブ化するためのアクティブモジュールと、
    前記アクティブモジュールにより前記第1パーティションを前記第2パーティションにアクティブ化した後に、前記第2パーティションを、前記第2チップのファームウェアをダウンロードするための第1パーティションとして設定するための設定モジュールと、
    をさらに含むことを特徴とする請求項5に記載のファームウェアアップグレード装置。
  7. 前記認識モジュールは、
    第2チップのパーティション情報を取得するための取得サブモジュールと、
    前記取得サブモジュールにより取得した前記パーティション情報に基づいて、前記第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識するための認識サブモジュールと、
    を含むことを特徴とする請求項5に記載のファームウェアアップグレード装置。
  8. 前記第1ダウンロードモジュールにより前記第1チップの新しいファームウェアを前記第1パーティションにダウンロードした後に、前記第1チップの新しいファームウェアをチェックするためのチェックモジュール、
    をさらに含むことを特徴とする請求項5に記載のファームウェアアップグレード装置。
  9. プロセッサと、
    前記プロセッサが実行可能な命令を記憶するためのメモリと
    を備え、
    前記プロセッサは、
    第1チップのファームウェアをアップグレードする必要があると特定された場合に、第2チップのフラッシュメモリ中の前記第2チップのファームウェアをダウンロードするための第1パーティションを認識し、
    前記第1チップの新しいファームウェアを前記第1パーティションにダウンロードし、
    前記第1チップの新しいファームウェアを前記第1パーティションから前記第1チップ中の有効領域にコピーする
    ように構成されることを特徴とするファームウェアアップグレード装置。
JP2016563234A 2014-12-09 2015-04-29 ファームウェアアップグレード方法、装置、プログラム及び記録媒体 Active JP6259122B2 (ja)

Applications Claiming Priority (3)

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

Publications (2)

Publication Number Publication Date
JP2017505966A true JP2017505966A (ja) 2017-02-23
JP6259122B2 JP6259122B2 (ja) 2018-01-10

Family

ID=52758744

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016563234A Active JP6259122B2 (ja) 2014-12-09 2015-04-29 ファームウェアアップグレード方法、装置、プログラム及び記録媒体

Country Status (8)

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

Families Citing this family (24)

* 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 小米科技有限责任公司 对固件进行升级的方法及装置
US10581755B2 (en) 2015-04-03 2020-03-03 Nicira, Inc. Provisioning network services in a software defined data center
CN105022690A (zh) * 2015-07-14 2015-11-04 四川长虹电器股份有限公司 一种空调测试方法及功能测试***
CN105117251A (zh) * 2015-08-25 2015-12-02 浪潮电子信息产业股份有限公司 一种外挂芯片式远程刷新电源firmware的设计方法
CN105577450A (zh) * 2016-01-27 2016-05-11 努比亚技术有限公司 ***升级装置和方法
CN105577940B (zh) * 2016-01-27 2019-05-31 努比亚技术有限公司 移动终端及***升级方法
CN105554306B (zh) * 2016-01-27 2019-05-31 努比亚技术有限公司 移动终端及其双芯片***升级方法
US10242197B2 (en) * 2016-09-23 2019-03-26 Intel Corporation Methods and apparatus to use a security coprocessor for firmware protection
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 삼성전자주식회사 전자 장치 및 전자 장치의 초기화 방법
EP3937044A1 (en) * 2020-07-06 2022-01-12 Thales DIS France SA Method for managing a biometric smart card
US11343227B2 (en) 2020-09-28 2022-05-24 Vmware, Inc. Application deployment in multi-site virtualization infrastructure
KR102520452B1 (ko) * 2021-05-24 2023-04-12 주식회사 아이자랩 경사지 붕괴위험 예측용 계측기의 무선 원격 펌웨어 업데이트 방법
CN113204364A (zh) * 2021-05-28 2021-08-03 广州众诺电子技术有限公司 一种芯片固件升级方法、装置、电子设备及存储介质
CN113434184A (zh) * 2021-06-30 2021-09-24 浙江大华技术股份有限公司 设备升级方法、装置、存储介质及电子装置
CN114138694A (zh) * 2021-11-29 2022-03-04 杭州迪普科技股份有限公司 下载接口模块、芯片烧录方法及装置
CN114661368B (zh) * 2022-05-19 2022-09-06 中昊芯英(杭州)科技有限公司 一种芯片及其启动方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008104036A (ja) * 2006-10-20 2008-05-01 Sumitomo Electric Ind Ltd 通信装置
JP2014153964A (ja) * 2013-02-11 2014-08-25 Sumitomo Electric Ind Ltd マイクロプログラムを更新可能な電子機器
JP2014194682A (ja) * 2013-03-29 2014-10-09 Oki Electric Ind Co Ltd 情報処理装置およびその処理方法

Family Cites Families (15)

* 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 中兴通讯股份有限公司 一种对固件程序进行在线升级的装置及其方法
RU2388045C2 (ru) * 2006-06-19 2010-04-27 Самсунг Электроникс Ко., Лтд. Система и способ обновления программы для переносного устройства с поддержкой ота
KR101426710B1 (ko) * 2006-07-14 2014-09-23 삼성전자주식회사 휴대단말기의 버전정보 갱신 장치 및 방법
CN100589078C (zh) * 2007-08-21 2010-02-10 中兴通讯股份有限公司 多核终端的固件升级方法
US8429640B2 (en) * 2009-06-05 2013-04-23 Dell Products L.P. System and method for modifying firmware
US8812746B2 (en) * 2010-12-16 2014-08-19 Intel Corporation Dynamically configurable device host controller
CN103116502A (zh) * 2011-11-17 2013-05-22 国家纳米技术与工程研究院 一种利用主备版本备份实现升级的方法
US9201792B2 (en) * 2011-12-29 2015-12-01 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
CN102945174A (zh) * 2012-11-08 2013-02-27 大连捷成实业发展有限公司 通过接着片外Flash实现单片机程序升级的方法
CN103810004B (zh) * 2013-11-22 2017-03-22 小米科技有限责任公司 嵌入式***升级的方法、装置及设备
CN104484200B (zh) * 2014-12-09 2018-05-25 小米科技有限责任公司 对固件进行升级的方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008104036A (ja) * 2006-10-20 2008-05-01 Sumitomo Electric Ind Ltd 通信装置
JP2014153964A (ja) * 2013-02-11 2014-08-25 Sumitomo Electric Ind Ltd マイクロプログラムを更新可能な電子機器
JP2014194682A (ja) * 2013-03-29 2014-10-09 Oki Electric Ind Co Ltd 情報処理装置およびその処理方法

Also Published As

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

Similar Documents

Publication Publication Date Title
JP6259122B2 (ja) ファームウェアアップグレード方法、装置、プログラム及び記録媒体
US9886264B2 (en) Method and device for upgrading firmware
JP6096992B2 (ja) 記憶空間を節約するための方法、装置、プログラム及び記憶媒体
JP6072362B2 (ja) アプリケーションプログラムの処理方法、装置、プログラム及び記憶媒体
EP2991275B1 (en) Making router management application compatible with router firmware
JP6189000B2 (ja) アプリケーションのインストールパッケージの処理方法、装置、プログラム及び記録媒体
RU2641257C2 (ru) Способ и аппаратура для управления устройствами
US20170237930A1 (en) Method of controlling the sharing of videos and electronic device adapted thereto
EP3287866A1 (en) Electronic device and method of providing image acquired by image sensor to application
JP2017530493A (ja) 外付け機器の接続方法および装置、プログラム及び記録媒体
US9820145B2 (en) Registration setting supporting method and electronic device
KR102193704B1 (ko) 전자 장치의 락 스크린 디스플레이 방법 및 그 전자 장치
CN109582400B (zh) 程序调用方法及装置
EP2924552A1 (en) Method and mobile terminal for executing user instructions
JP6491237B2 (ja) タッチスクリーンのポイント報告を処理するための方法、装置、プログラム、及び記録媒体
EP3073371A1 (en) Method and device for loading theme application
CN109117144B (zh) 页面处理方法、装置、终端及存储介质
JP2016538675A (ja) メモリ最適化方法、装置、プログラム、及び記録媒体
CN107463372B (zh) 一种数据驱动的页面更新方法和装置
JP6349040B2 (ja) リマインド方法およびその装置、プログラム及び記録媒体
US20170075671A1 (en) Method and apparatus for installing application and smart device using the same
CN107733674B (zh) 组件升级方法及终端
EP3328066B1 (en) Electronic device and method for autofocusing
KR102115263B1 (ko) 전자장치 및 전자장치의 사용자 입력 처리 방법
CN107291394B (zh) 存储空间预留方法及装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170403

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170824

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171121

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171207

R150 Certificate of patent or registration of utility model

Ref document number: 6259122

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250