多重处理器装置及其固件更新的方法

文档序号:6338035阅读:245来源:国知局
专利名称:多重处理器装置及其固件更新的方法
技术领域
本发明涉及固件更新技术,尤其涉及一种多重处理器装置的固件更新方法。
背景技术
一般采用多重处理器架构的装置,为了达成多个处理器的分工作业,通常使用功能各异的多个处理器。例如多重处理器装置可能包含应用于处理网络封包的网络处理器以及应用于处理数字信号的数字信号处理器等,其多个处理器的功能不同,但运作时具有相依性。功能不同的处理器进行更新所需的固件必然有所不同。若于下载复合式固件更新档案后,再逐一对需要升级的处理器进行固件更新,则多重处理器装置的固件更新所需时间将受处理器数目的影响。当装置中所含处理器的数目越多,装置完成固件更新所花费的时间也就越长。

发明内容
有鉴于此,需提供一种多重处理器装置的固件更新方法,可以有效缩短多重处理器装置完成固件更新所需的时间。本发明提供一种固件更新的方法,执行于具有第一处理器以及第二处理器的一装置中,所述方法包括所述第一处理器接收一更新固件的标头;剖析所述标头以取得所述第一处理器用的第一固件图像文件于所述更新固件中的偏移量、长度与校验和以及所述第二处理器用的第二固件图像文件于所述更新固件中的偏移量、长度与校验和;判断所述第二处理器是否需要固件更新;其中若所述第二处理器需要固件更新,则传送一固件更新的通知与所述第二固件图像文件于所述更新固件中的偏移量、长度与校验和给所述第二处理器;以及判断所述第一处理器是否需要固件更新;其中若所述第一处理器需要固件更新, 利用所述第一固件图像文件于所述更新固件中的偏移量及长度以下载所述第一固件图像文件。优选地,所述方法还包括所述第二处理器响应所述第一处理器所传送之所述固件更新的通知,利用所接受到的所述第二固件图像文件于所述更新固件中的偏移量及长度以下载所述第二固件图像文件;以及利用所接收到的所述第二固件图像文件的校验和以验证所下载的所述第二固件图像文件的完整性。优选地,所述方法还包括所述第一处理器利用取得的所述第一固件图像文件的校验和以验证所下载的所述第一固件图像文件的完整性。优选地,所述标头还包括所述第一固件图像文件的版本与所述第二固件图像文件的版本。优选地,所述方法还包括所述第一处理器根据所述第一固件图像文件的版本判断该第一处理器是否需要固件更新;以及根据该第二固件图像文件的版本判断该第二处理器是否需要固件更新。本发明实施方式中的多重处理器装置包括第一处理器以及第二处理器。该第一处理器用于接收更新固件的标头并剖析该标头,以取得该第一处理器用的第一固件图像文件于该更新固件中的偏移量、长度与校验和以及该第二处理器用的第二固件图像文件于该更新固件中的偏移量、长度与校验和,并判断该第二处理器是否需要固件更新。若该第二处理器需要固件更新,该第一处理器则传送固件更新的通知与该第二固件图像文件于该更新固件中的偏移量、长度与校验和给该第二处理器。该第一处理器还判断该第一处理器是否需要固件更新。若该第一处理器需要固件更新,利用该第一固件图像文件于该更新固件中的偏移量及长度以下载该第一固件图像文件。
优选地,该第二处理器响应该第一处理器所传送之该固件更新的通知,利用所接受到的该第二固件图像文件于该更新固件中的偏移量及长度以下载该第二固件图像文件; 以及利用所接收到的该第二固件图像文件的校验和以验证所下载的该第二固件图像文件的完整性。
优选地,该第一处理器利用取得的该第一固件图像文件的校验和以验证所下载的该第一固件图像文件的完整性。
优选地,该标头还包括该第一固件图像文件的版本与该第二固件图像文件的版本。
优选地,该第一处理器根据该第一固件图像文件的版本判断该第一处理器是否需要固件更新;以及根据该第二固件图像文件的版本判断该第二处理器是否需要固件更新。
上述多重处理器装置及其固件更新的方法,使得多重处理器同步进行固件更新, 以有效缩短多重处理器装置进行固件更新所需耗费的时间。


图1所示为本发明一实施方式中多重处理器装置的示意图。
图2所示为本发明一实施方式中复合固件更新档案的示意图。
图3所示为本发明一实施方式中复合固件更新档案之标头格式的示意图。
图4所示为本发明一实施方式中固件更新方法的流程图。
主要元件符号说明
多重处理器装置100
处理器110、120
通信接口130
内存140
复合式固件更新档案200
标头210
标头版本211
标头长度212
档案版本213
制造商代码214
产品型号215
产品名称216
图像文件个数217
图像文件类型218、223图像文件版本219、2 图像文件校验和220、225图像文件长度221、2 图像文件偏移量222、227固件图像文件洸0、沘0
具体实施例方式请参阅图1,所示为本发明一实施方式中多重处理器装置100的示意图。在本实施方式中,该多重处理器装置100包括第一处理器110、第二处理器120、通信接口 130以及内存140。在具体应用中,上述多重处理器装置100可包括二个以上的处理器,上述多重处理器装置100的固件更新可以是针对上述多重处理器装置100中的全部处理器,或其中单数处理器,例如上述第一处理器110或是上述第二处理器120,或全部处理器的子集合进行固件更新。上述第一处理器110及上述第二处理器120可以是集成处理器核心、内存、定时器、输入/输出接口于单一芯片的微控制器,或是通用型的微处理器等。在本实施方式中,上述第一处理器110可为上述多重处理器装置100的主要处理器,上述第二处理器120为从属处理器。第一处理器110可通过上述多重处理器装置100中的通信总线传递信息,协调与上述第二处理器120间的运作,包含更新固件的版本。例如上述第一处理器110与上述第二处理器120可分别支持不同的功能,执行不同的计算器可读取指令集。上述固件指的是上述多重处理器装置100中可程序化的内容,例如固件可包含单一或多个处理器的机器码或者可程序化之逻辑设备的设定等,上述多重处理器装置100 的用户可以通过对固件的更新提升该多重处理器装置100的效能及可靠性。在本实施方式中,上述内存140包含非挥发性储存媒介,例如电子可擦除可程序化只读存储器(Electrically Erasable Programmable Read only Memory,EEPROM)、闪存或静态随机存取内存(Static Random Access Memory, SRAM)等,用于储存固件或其它数据。上述通信接口 130包含无线或有线通信接口,用于下载固件。例如该通信接口 130可为射频收发器,上述第一处理器110通过该射频收发器与一主机系统建立无线传输频道, 以取得固件更新档案。请参阅图2,所示为本发明一实施方式中复合式固件更新档案200的示意图。在本实施方式中,复合式固件更新档案200包含标头210、固件图像文件沈0以及固件图像文件280等字段。该标头210用于表示上述复合式固件更新档案200的相关信息,上述固件图像文件沈0以及上述固件图像文件280为多重处理器的个别固件图像文件,例如上述固件图像文件260为上述第一处理器110的固件图像文件,上述固件图像文件观0为上述第二处理器120的固件图像文件。在其它实施方式中,上述复合式固件更新档案包含上述标头210以及单一或多个固件图像文件。请参阅图3,所示为本发明一实施方式中该复合式固件更新档案200的上述标头 210格式的示意图。在本实施方式中,该标头210包含标头版本211、标头长度212、档案版本213、制造商代码214、产品型号215、产品名称216、图像文件个数217、图像文件类型 218、图像文件版本219、图像文件校验和220、图像文件长度221、图像文件偏移量222、图像文件类型223、图像文件版本224、图像文件校验和225、图像文件长度226以及图像文件偏移量227等字段,该等字段长度为固定位长度。上述标头版本211用于表示该标头210的版本信息,藉由版本信息可推知上述标头210格式的字段组成,例如上述第一处理器110通过上述通信接口 130下载上述复合式固件更新档案200之上述标头210,并取得上述标头版本211所表示的版本信息后,决定上述标头210之其余字段的语法分析方式。上述标头长度212用于表示该标头210的总长度,组成上述标头210的各字段长度虽为固定的位长度, 但因上述标头210包含单一或多个固件图像文件(如上述固件图像文件沈0、固件图像文件 280的其中一个或多个个)的相关信息,故上述标头210的总长度会因该复合式固件更新档案200包含的固件图像文件(如上述固件图像文件沈0、固件图像文件280的其中一个或多个)之数目不同而有所不同。上述档案版本213用于表示该复合式固件更新档案200的版本信息,该版本信息为二进制值,如上述第一处理器110取得该版本信息后,可以比较目前的固件版本与取得的固件版本决定是否进行上述多重处理器装置100的固件更新。上述制造商代码214用于表示原始制造商的唯一标识符。上述产品型号215用于表示上述多重处理器装置100的唯一标识符。上述产品名称216用于简短描述上述多重处理器装置100。 上述第一处理器110取得上述制造商代码214、上述产品型号215以及上述产品名称216等信息后,可用该等信息验证所取得的上述复合式固件更新档案200是否为上述多重处理器装置100进行固件更新所需的档案。在本实施方式中,上述图像文件个数217用于表示该上述复合式固件更新档案200所包含的固件图像文件个数,例如该图像文件个数217的数值为2表示上述复合式固件更新档案200包含2个固件图像文件分别为固件图像文件260 以及固件图像文件观0。在本实施方式中,上述图像文件类型218、上述图像文件版本219、 上述图像文件校验和220、上述图像文件长度221以及上述图像文件偏移量222用于表示上述固件图像文件260的相关信息,上述图像文件类型223、图像文件版本224、上述图像文件校验和225、上述图像文件长度226以及上述图像文件偏移量227用于表示上述固件图像文件观0的相关信息。其中,上述图像文件类型218、图像文件类型223分别用于表示上述固件图像文件260、固件图像文件观0的类型信息,上述图像文件版本219、图像文件版本2M分别用于表示上述固件图像文件沈0、固件图像文件观0的版本信息,上述第一处理器110或第二处理器120可以通过取得个别固件图像文件沈0、固件图像文件观0的类型信息以及版本信息判断是否须进行固件更新。上述图像文件校验和220及图像文件校验和 225分别用于表示上述固件图像文件260及固件图像文件观0的循环冗余检查(Cyclical Redundancy Check, CRC)校验和,该校验和信息可以用来检测数据于传输过程中是否发生错误。例如上述第一处理器110于接收上述固件图像文件260后,于进行固件更新之前,可以通过CRC计算得到一校验和,将该校验和与上述图像文件校验和220字段的数值进行比对,以确认上述固件图像文件260的完整性;上述第二处理器120于接收上述固件图像文件 280后,于进行固件更新之前,可以通过CRC计算得到一校验和,将该校验和与上述图像文件校验和225字段的数值进行比对,以确认上述固件图像文件观0的完整性。上述图像文件长度221及图像文件长度2 分别用于表示上述固件图像文件260及固件图像文件280 的图像文件长度,上述图像文件偏移量222及图像文件偏移量227分别用于表示上述固件图像文件260及固件图像文件280于该复合式固件更新档案200中的起始位置。上述第一处理器110可以通过上述图像文件长度221以及上述图像文件偏移量222的字段信息,取得该复合式固件更新档案200所包含的上述固件图像文件沈0。上述第二处理器120可以通过上述图像文件长度226以及上述图像文件偏移量227的字段信息,取得该复合式固件更新档案200所包含的上述固件图像文件观0。请参阅图4,所示为本发明一实施方式中固件更新方法的流程图。于步骤S410,上述多重处理器装置100的主要处理器(如上述第一处理器110)通过上述通信接口 130与一远程的主机系统建立有线或无线的网络通信连接从该主机系统接收到上述复合式固件更新档案200的该标头210。于步骤S420,该主要处理器通过剖析该标头210取得相关信息,如标头相关信息以及固件图像文件相关信息等。于步骤S430,该主要处理器取得上述复合式固件更新档案200所包含的个别固件图像文件(如固件图像文件沈0、固件图像文件 280)之相关信息。例如该主要处理器通过上述标头210包含的上述图像文件个数217之数值,可得知上述复合式固件更新档案200包含的固件图像文件个数。于步骤S440,该主要处理器根据上述步骤S430所取得上述图像文件个数217之数值、上述图像文件类型223以及上述图像文件版本2M等字段信息,以判断附属处理器(如上述第二处理器120)是否需要进行固件更新。若该主要处理器比对上述图像文件类型223 以及上述图像文件版本2M等字段信息与储存于上述内存140之该附属处理器的目前固件相关信息,判断上述主机系统所维护的上述复合式固件更新档案200包含的上述固件图像文件观0为更新版本,则判断该附属处理器需进行固件更新,执行步骤S450,由该主要处理器传递相关信息通知该附属处理器进行固件更新,前述相关信息包含该主要处理器于上述步骤S430所取得的固件图像文件相关信息。该主要处理器于通知该附属处理器之后,不必等待该附属处理器的任何响应,接着执行步骤S460,续行判断该主要处理器是否需要进行固件更新。若于步骤S440中,该主要处理器判断该附属处理器不需进行固件更新,同样接着执行步骤S460,该主要处理器根据上述步骤S430所取得上述图像文件类型218以及上述图像文件版本219等字段信息,以判断该主要处理器是否需要进行固件更新。若该主要处理器比对上述图像文件类型218以及上述图像文件版本219等字段信息与储存于上述内存140之该主要处理器的目前固件相关信息,判断上述主机系统所维护的上述复合式固件更新档案200包含的上述固件图像文件沈0为更新版本,则判断该主要处理器需进行固件更新,接着执行步骤S470。于步骤S470,该主要处理器根据上述步骤 S430所取得的上述图像文件长度221以及上述图像文件偏移量222等信息,从上述主机系统接收上述固件图像文件沈0。于步骤S480,该主要处理器根据上述步骤S430所取得的上述图像文件校验和220验证所接收到的上述固件图像文件沈0的完整性。于步骤S490,该主要处理器将已验证无误的上述固件图像文件260储存于上述内存140,以完成固件更新。于步骤S451,该附属处理器收到该主要处理器所传送的固件更新通知与相关信息后,根据所取得的上述图像文件长度2 以及上述图像文件偏移量227等信息,从上述主机系统接收上述固件图像文件观0。于步骤S452,该附属处理器根据该主要处理器所传送的上述图像文件校验和225验证所接收到的上述固件图像文件观0的完整性。于步骤S453, 该附属处理器将已验证无误的上述固件图像文件280储存于上述内存140,以完成固件更新。总结来说,本发明所提出的上述固件更新方法,适用于各种具多重处理器架构的装置,由多重处理器之其中一个处理器先行取得固件更新档案的相关信息,再通知多重处CN 102541571 A理器之其它处理器进行同步的固件更新,以缩短多重处理器装置进行固件更新所需耗费的时间。
权利要求
1.一种固件更新的方法,执行于具有第一处理器以及第二处理器的装置中,其特征在于,所述方法包括所述第一处理器接收更新固件的标头;剖析所述标头以取得所述第一处理器用的第一固件图像文件于所述更新固件中的偏移量、长度与校验和以及所述第二处理器用的第二固件图像文件于所述更新固件中的偏移量、长度与校验和;判断所述第二处理器是否需要固件更新;其中若所述第二处理器需要固件更新,则传送固件更新的通知与所述第二固件图像文件于所述更新固件中的偏移量、长度与校验和给所述第二处理器以完成固件更新;以及判断所述第一处理器是否需要固件更新;其中若所述第一处理器需要固件更新,利用所述第一固件图像文件于所述更新固件中的偏移量及长度以下载所述第一固件图像文件以完成固件更新。
2.如权利要求1所述之固件更新的方法,其特征在于,所述方法还包括所述第二处理器响应所述第一处理器所传送之所述固件更新的通知,利用所接受到的所述第二固件图像文件于所述更新固件中的偏移量及长度以下载所述第二固件图像文件; 以及利用所接收到的所述第二固件图像文件的校验和以验证所下载的所述第二固件图像文件的完整性。
3.如权利要求1所述之固件更新的方法,其特征在于,所述方法还包括所述第一处理器利用取得的所述第一固件图像文件的校验和以验证所下载的所述第一固件图像文件的完整性。
4.如权利要求1所述之固件更新的方法,其特征在于,所述标头还包括所述第一固件图像文件的版本与所述第二固件图像文件的版本。
5.如权利要求4所述之固件更新的方法,其特征在于,更包括所述第一处理器根据所述第一固件图像文件的版本判断所述第一处理器是否需要固件更新;以及根据所述第二固件图像文件的版本判断所述第二处理器是否需要固件更新。
6.一种多重处理器装置,其特征在于,包括第一处理器;以及第二处理器;其中所述第一处理器用于接收更新固件的标头并剖析所述标头,以取得所述第一处理器用的第一固件图像文件于所述更新固件中的偏移量、长度与校验和以及所述第二处理器用的第二固件图像文件于所述更新固件中的偏移量、长度与校验和;判断所述第二处理器是否需要固件更新;其中若所述第二处理器需要固件更新,则传送一固件更新的通知与所述第二固件图像文件于所述更新固件中的偏移量、长度与校验和给所述第二处理器以完成固件更新;以及判断所述第一处理器是否需要固件更新;其中若所述第一处理器需要固件更新,利用所述第一固件图像文件于所述更新固件中的偏移量及长度以下载所述第一固件图像文件以完成固件更新。
7.如权利要求6所述之多重处理器装置,其特征在于,所述第二处理器响应所述第一处理器所传送之所述固件更新的通知,利用所接受到的所述第二固件图像文件于所述更新固件中的偏移量及长度以下载所述第二固件图像文件;以及利用所接收到的所述第二固件图像文件的校验和以验证所下载的所述第二固件图像文件的完整性。
8.如权利要求6所述之多重处理器装置,其特征在于,所述第一处理器利用取得的所述第一固件图像文件的校验和以验证所下载的所述第一固件图像文件的完整性。
9.如权利要求6所述之多重处理器装置,其特征在于,所述标头还包括所述第一固件图像文件的版本与所述第二固件图像文件的版本。
10.如权利要求9所述之多重处理器装置,其特征在于,所述第一处理器根据所述第一固件图像文件的版本判断所述第一处理器是否需要固件更新;以及根据所述第二固件图像文件的版本判断所述第二处理器是否需要固件更新。
全文摘要
一种固件更新的方法,执行于多重处理器装置中。所述多重处理器装置包括至少第一处理器及第二处理器。所述方法包含第一处理器接收固件更新档案的标头,以及剖析所述标头取得多重处理器的固件图像文件之相关信息。如果所述第一处理器判断第二处理器需要固件更新,则通知所述第二处理器并传送相关的固件图像文件信息给所述第二处理器。所述第一处理器可以接着更新其固件图像文件而不必等待所述第二处理器之固件图像文件更新完成。本发明还提供一种执行上述方法的多重处理器装置。本发明之固件更新方法,可以有效缩短多重处理器装置完成固件更新所需的时间。
文档编号G06F9/445GK102541571SQ20101057932
公开日2012年7月4日 申请日期2010年12月8日 优先权日2010年12月8日
发明者郑淑敏 申请人:国基电子(上海)有限公司, 鸿海精密工业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1