固件更新装置和方法

文档序号:6458184阅读:157来源:国知局
专利名称:固件更新装置和方法
技术领域
本发明是有关于电子装置的固件,尤指一种用于电子装置的固件更新装置 和方法。
背景技术
固件(firmware)是许多电子装置运作时需要执行的程序, 一般皆存于电子装 置内部的特定储存装置。而为了解决电子装置运作上所产生的问题、更改电子 装置的硬件设定或是提供新的功能等等,厂商会提供新版本的固件程序码,以 供更新。
然而, 一般电子装置在进行固件更新时,是将新版本的固件程序码写入该 特定储存装置,以取代旧版本程序码。此时,若旧版本的固件程序码并未备份 且新版本的固件程序码有问题(例如,在写入过程中出错),往往会造成电子装置 运作上的问题,甚至故障,而造成使用者的不便。

发明内容
有鉴于此,本发明的一目的,在于提供一种固件更新装置及方法,以提供 可靠的电子装置固件更新方式,提升使用时的便利性。
本发明揭露一种固件更新装置,可用于一电子装置。该固件更新装置包含 第一储存单元,用以储存该电子装置的固件的第一程序码;第二储存单元,用 以储存该固件的第二程序码;检查单元,耦接至第二储存单元,用以检查该第 二程序码是否有效;以及微控制单元(MCU),耦接至第一储存单元、第二储存 单元及检查单元,用以在电子装置启动时,启动检查单元的运作,并依据该第 二程序码是否有效,决定是否执行该第二程序码。
本发明另揭露一种固件更新方法,可用于一电子装置。该电子装置的固件 的第一程序码是储存于该电子装置的第一储存单元。该固件更新方法包含将 该固件的第二程序码储存至电子装置的第二储存单元;重新启动电子装置;启动对第二储存单元中的第二程序码的有效性检查;执行该有效性检查,以判断 第二储存单元中的第二程序码是否有效;以及依据该有效性检查的结果,决定 是否执行该第二储存单元中的第二程序码。
因此通过前述固件更新装置和更新方法, 一方面可检查是否有有效的更新 程序码可用,另一方面在没有有效的更新程序码可用时(如因固件更新失败所 致),仍可继续使用可靠的既有程序码,来维持电子装置的正常运作。相较于先 前技术,本发明的固件更新装置和方法可提供更可靠的固件更新方式。避免了 因固件更新失败而导致的电子装置无法工作,使用户使用更加安全、可靠,也 更方便。


图1是本发明的固件更新装置的一较佳实施例的方块图; 图2是本发明的固件更新方法的一较佳实施例的流程图。
附图标记"^兌明
l-电子装置;10-固件更新装置;ll-第一储存单元;12-第二储存单元;13-检查单元;14-微控制单元;20~25-固件更新方法的一较佳实施例的流程。
具体实施例方式
图1是本发明的固件更新装置的一较佳实施例的方块图,其中,固件更新 装置IO是用于电子装置1中,且包含一第一储存单元11、 一第二储存单元12、 一检查单元13及一微控制单元(MCU)14。电子装置1可为一显示装置,如监视 器、电视或数字相框等。第一储存单元ll储存电子装置1的固件的一既有程序 码,第二储存单元12则储存该固件的一更新程序码。换言之,该固件的不同版 本的程序码是分别储存在不同的储存单元中。第一储存单元11与第二储存单元 12可为一快闪存储器(flash memory)或电可擦除可编程只读存储器 (Electrically Erasable Programmable Read-Only Memory,简称EEPROM)。检查单 元13耦接至第二储存单元12,可检查第二储存单元12所存的更新程序码是否 有效。检查单元13使用何种方式来检查,本发明并无限制,因此不影响本发明 的范围。在一实施中,检查单元13是执行一循环冗余校验(Cyclic Redundancy Check,简称CRC)演算法,以检查更新程序码是否有效;在另一实施例中,检 查单元13执行一总和校验(checksum)演算法,以检查更新程序码是否有效。循环冗余校验演算法与总和校验(checksum)演算法是本发明所属技术领域中具通 常知识者所现有,此处不多赘述。微控制单元14是耦接至第一储存单元11、第 二储存单元12及检查单元13,可执行固件的既有程序码或是更新程序码,以控 制电子装置1的运作。
在图1的较佳实施例中,该既有程序码是可靠的固件程序码版本,在电子 装置1出厂前即写入第一储存单元11中,以确保电子装置1的运作正常,之后, 第一储存单元11中所存的既有程序码不作任何更动;电子装置l出厂后,若有
任何新版本的更新程序码,则写入第二储存单元12,由检查单元13来检查其是 否有效,微控制单元14再依据检查结果决定是否执行。至于如何将更新程序码 写入第二储存单元12,本发明并无限制,因此不影响本发明的范围。
固件更新装置10的运作过程如下,在电子装置1启动或重新启动(restart) 后,微控制单元14先执行第一储存单元11中的既有程序码,该既有程序码在 其开头的部分会指示微控制单元14去启动检查单元13,以检查第二储存单元 12是否储存了有效的更新程序码。接着,检查单元13执行检查,并回报微控制 单元14检查结果。当检查结果显示第二储存单元12并没有储存有效的更新程 序码时,微控制单元14继续执行该既有程序码,而忽略第二储存单元12;当检 查结果显示第二储存单元12储存了有效的更新程序码时,微控制单元14开始 执行该更新程序码以控制电子装置1的运作,而不继续执行该既有程序码。
换言之,每当电子装置1启动或重新启动时,微控制单元14会先执行既有 程序码的一部份(如开头的部分),以启动对第二储存单元12的检查。若第二储 存单元12储存了有效的更新程序码,则微控制单元14便开始执行更新程序码, 而不需再执行既有程序码;若第二储存单元12未储存有效的更新程序码,则微 控制单元14继续执行既有程序码。由于既有程序码是可靠的固件版本,能确保 电子装置l的运作正常,因此通过前述固件更新装置10的运作方式, 一方面可 检查是否有有效的更新程序码可用,另一方面在没有有效的更新程序码可用时 (如因固件更新失败所致),仍可继续使用可靠的既有程序码,来维持电子装置1 的正常运作。相较于先前技术,本发明的固件更新装置IO可提供更可靠的固件 更新方式。
图2是本发明的固件更新方法的一较佳实施例的流程图;该固件更新方法 是用于一电子装置,如监视器、电视或数字相框等显示装置。该电子装置具有 第一储存单元与第二储存单元,分别用来储存不同版本的固件程序码。其中,第一储存单元是储存固件的第一程序码。如图2所示,该固件更新方法包含下列步骤
步骤20:将固件的第二程序码储存至电子装置的第二储存单元;步骤21:重新启动电子装置;
步骤22:执行第一程序码,以启动对第二储存单元中的第二程序码的有效性检查;
步骤23:执行该有效性检查,以判断第二储存单元中的第二程序码是否有效,若是则跳至步骤25,否则继续步骤24;
步骤24:不执行第二程序码,继续执行第一程序码;步骤25:执行笫二程序码,停止执行第一程序码。
在步骤23中,该有效性检查是依据一循环冗余检验演算法或总和校验演算法,以判断第二程序码是否有效。在一实施例中,步骤22是执行第一程序码的一部份,以启动对第二储存单元中的第二程序码的有效性检查。
以上对本发明的描述是说明性的,而非限制性的,本专业技术人员理解,在权利要求限定的精神与范围之内可对其进行许多修改、变化或等效,但是它们都将落入本发明的保护范围内。
权利要求
1.一种固件更新装置,是用于一电子装置,其特征在于,该固件更新装置包含一第一储存单元,用以储存该电子装置的一固件的第一程序码;一第二储存单元,用以储存该固件的第二程序码;一检查单元,耦接至该第二储存单元,用以检查该第二程序码是否有效;以及一微控制单元,耦接至该第一储存单元、该第二储存单元及该检查单元,用以在该电子装置启动时,启动该检查单元的运作,并依据该第二程序码是否有效,决定是否执行该第二程序码。
2. 根据权利要求1所述的固件更新装置,其特征在于,该第一程序码为一 既有程序码,而该第二程序码为一更新程序码。
3. 根据权利要求1所述的固件更新装置,其特征在于,该微控制单元是执 行该第一程序码,以启动该检查单元的运作。
4. 根据权利要求3所述的固件更新装置,其特征在于,该微控制单元是执 行该第 一程序码的一部份,以启动该检查单元的运作。
5. 根据权利要求1所述的固件更新装置,其特征在于,当该第二程序码无 效时,该4故控制单元继续执行该第一程序码,而不执行该第二程序码。
6. 根据权利要求1所述的固件更新装置,其特征在于,当该第二程序码有 效时,该微控制单元开始执行该第二程序码,而停止执行该第一程序码。
7. 根据权利要求1所述的固件更新装置,其特征在于,该检查单元执行一 循环冗余校验(CRC)演算法或一总和校验(checksum)演算法,以检查该第二程序 码是否有效。
8. 根据权利要求1所述的固件更新装置,其特征在于,该电子装置是一显 示装置。
9. 根据权利要求8所述的固件更新装置,其特征在于,该显示装置是一监 视器、电视或数字相框。
10. —种固件更新方法,是用于一电子装置,该电子装置的一固件的一第一 程序码是储存于该电子装置的一第一储存单元,该固件更新方法包含将该固件的第二程序码储存至该电子装置的第二储存单元;重新启动该电子装置;启动对该第二储存单元中的该第二程序码的有效性检查; 执行该有效性检查,以判断该第二储存单元中的该第二程序码是否有效;以及依据该有效性检查的结果,决定是否执行该第二储存单元中的该第二程序码。
11. 根据权利要求IO所述的固件更新方法,其特征在于,该有效性检查是 通过执行该第一程序码而启动。
12. 根据权利要求11所述的固件更新方法,其特征在于,该有效性检查是 通过执行该第 一程序码的 一部份而启动。
13. 根据权利要求10所述的固件更新方法,其特征在于,当该有效性检查 的结果显示该第二程序码无效时,不执行该第二程序码,继续执行该第一程序 码。
14. 根据权利要求10所述的固件更新方法,其特征在于,当该有效性检查 的结果显示该第二程序码有效时,执行该第二程序码,停止执行该第一程序码。
15. 根据权利要求10所述的固件更新方法,其特征在于,该有效性检查是 依据一循环冗余校验演算法或一总和校验演算法,以判断该第二程序码是否有 效。
16. 根据权利要求IO所述的固件更新方法,其特征在于,该电子装置是一 显示装置。
17. 根据权利要求16所述的固件更新方法,其特征在于,该显示装置是一 监#见器、电^f见或数字相框。
全文摘要
一种固件更新装置和方法,用以提供可靠的电子装置固件更新方式,提升使用的便利性。该固件更新装置包含第一储存单元、第二储存单元、检查单元及微控制单元(MCU)。第一储存单元及第二储存单元分别储存电子装置的固件的第一程序码及第二程序码。检查单元用以检查该第二程序码是否有效。微控制单元用以在电子装置启动时,启动检查单元的运作,并依据该第二程序码是否有效,决定是否执行该第二程序码。本发明的固件更新装置及方法避免了因固件更新失败而导致的电子装置无法工作,使用户使用更加安全、可靠,也更方便。
文档编号G06F11/14GK101526908SQ20081000838
公开日2009年9月9日 申请日期2008年3月6日 优先权日2008年3月6日
发明者李志杰, 苏肇平, 黄名宏 申请人:晨星半导体股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1