CN100456246C - 一种固件程序升级的方法与装置 - Google Patents
一种固件程序升级的方法与装置 Download PDFInfo
- Publication number
- CN100456246C CN100456246C CNB200710062962XA CN200710062962A CN100456246C CN 100456246 C CN100456246 C CN 100456246C CN B200710062962X A CNB200710062962X A CN B200710062962XA CN 200710062962 A CN200710062962 A CN 200710062962A CN 100456246 C CN100456246 C CN 100456246C
- Authority
- CN
- China
- Prior art keywords
- firmware
- new firmware
- new
- control program
- old
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Abstract
本发明提供了一种固件程序升级的方法与装置,该固件升级的装置设置在待升级的设备中,具体包括:固件下载处理模块、新固件有效性检测模块和加载处理模块。通过固件下载处理模块将下载后的新固件与旧固件同时保留在闪存Flash中,当新同件经过新固件有效性检测模块判断正确后,则通过加载处理模块从新固件中加载主控程序,否则从旧固件中加载主控程序,从而实现新旧固件的切换。有效地避免因固件升级失败,而导致设备产生不可恢复性的损坏;同时,在固件在升级过程中,可以保持设备的正常工作状态,只有在新旧固件的切换过程中需要短暂中断服务。
Description
技术领域
本发明涉及数据通信领域和工业控制领域,尤其涉及一种固件程序升级的方法与装置。
背景技术
固件(Firmware)是具有软件功能的硬件,在早期这种硬件一般都是存有软件的EROM或EPROM(电可擦除可编程只读存储器)等,通常这些硬件内所保存的程序是无法被用户直接读出或修改的,并且终端用户很难或者不可能改变固件,一般情况下也是没有必要对固件进行升级操作的,即使在固件内发现了严重的错误(Bug)也必须由专业人员带着写好程序的EPROM把原来机器上的EPROM更换下来。
由于目前集成电路的进步,设备的固件都采用闪存(Flash Memory简称:Flash)为载体,并且Flash支持引导装入程序功能,同时大多数Flash还支持固件的升级,因此,升级固件也变得越来越简单,即当设备的环境发生变化或需要在设备中添加新功能时,可对Flash的内容进行编程(或称为:烧写),也就是在必要时通过重新对Flash的内容进行烧写,而达到升级固件的目的。
为了在出厂后仍有可能对设备进行软件更新,以使设备获得增强的功能,或者为了通过升级固件解决一些设备的Bug及兼容性问题,在路由器、防火墙、工业控制等设备和系统中广泛采用Flash作为固件控制程序(简称:固件)存储的介质。当需要对设备的固件升级时,也就是需要重新烧写设备的固件时,通常采用以下几种方法:
方法一、该方法为采用JTAG(Joint Test Action Group,是一种国际标准测试协议)等接口的离线升级固件的方法:首先在固件的升级过程中需要暂停设备的正常工作,然后通过JTAG等接口对Flash的内容进行重新烧写并且写入新固件,或者更换已经烧写好新固件的Flash,最后再恢复设备的正常工作。
该方法的缺点是:首先固件在升级过程中需要中断设备的正常工作,并且在升级过程中需要操作人员的现场操作以及使用专门的工具;其次,由于在Flash中只保存一份固件程序,当固件在升级失败时必须将Flash送厂修复。
方法二、该方法采用启动引导程序控制的离线升级方法:首先把设备的控制程序分成启动引导程序和主控程序两部分,当设备通电后,启动引导程序首先运行,然后通过检测主控程序的有效性并判断是否需要升级主控程序,如果需要升级主控程序,则通过设备的串口或网口等通信接口下载新的固件,并烧写到Flash中。
该方法的缺点是:在固件的升级过程中需要暂停设备的正常工作,同时由于引导程序功能一般比较简单,无法采用比较复杂的通信接口或通信协议来获取新的固件,所以该方法的应用范围通常也仅限于设备的本地升级,并且在升级过程中也需要操作人员的现场操作;同样,在该方法中由于在Flash中只保存一份固件程序,当固件在升级失败时必须将Flash送厂修复。
方法三、该方法采用主控程序控制的升级方法:首先在设备的正常工作状态下,由主控制程序通过设备的串口或网口等通信接口下载新的固件并烧写到Flash中,当设备重新启动后则加载新的固件。
该方法的优点是:用户可以利用主控程序提供的通信接口和通信协议支持,采用比较复杂的方法下载新的固件,已达到设备远程升级的目的。
而该方法的缺点是:设备在升级过程中如果由于不正常的结束,包括切断电源、网络连线中断(或无法连线)、伺服器停止运行等原因导致固件升级失败,由于这种不正常的结束容易破坏设备原有的固件即旧固件,从而导致设备无法正常的工作。
针对该方法的缺点,可以采取相应的改进措施,即可以先把新固件下载到设备的内存中,也就是同时保留新旧固件,当新固件下载完成后执行新固件的正确性校验步骤,来判断新固件在下载过程中是否出错,新固件的正确性校验成功后,再把新固件烧写到Flash中。采用这种方法可以有效避免新固件在传输过程中产生的差错,但是在新固件的烧写过程中也要确保设备不能掉电,并且必须保证新固件在加载后能够正常运行,否则仍然会导致设备在升级后无法正常工作,并只能采用其他的升级或维修的方法对设备的固件进行恢复,给用户的使用带来不便。
在无人值守的机房、监测站等应用场合,当需要对设备进行更新升级时,为了防止在更新过程中的不正常结束,即为了防止因不正常结束而造成的设备无法正常工作,甚至导致设备必须送厂重新烧写固件的情况,必须保证设备在升级过程中的可靠。而以上所述的三种方法均难以彻底避免因固件升级失败而引起设备的故障。
发明内容
鉴于上述现有技术所存在的问题,本发明的目的是提供一种固件程序升级的方法与装置,采用将下载的新固件和旧固件同时保留在闪存Flash中,并且对下载的新固件的有效性进行的检测,当检测到新固件不能正确工作时可以恢复到旧固件中工作,即可以实现新旧固件的切换,从而有效地避免因固件升级失败,而导致设备产生不可恢复性的损坏;同时,在升级过程中,可以保持设备的正常工作状态,只有在新旧固件的切换过程中需要短暂中断服务。
本发明的目的是通过以下技术方案实现的:
一种固件程序升级的方法,包括:
A、待升级的设备下载新固件,同时保留待升级的设备中的旧固件;
B、待升级的设备通过计算新固件的校验和来判断新固件是否正确,如果是,设置下载的新固件正确的系统标记,否则,重新下载新固件,直至下载获得正确的新固件或符合预定的停止条件;
并对下载新固件的有效性进行检测,具体是根据所述系统标记判断下载的新固件是否有效,若所述系统标记记录下载的新固件正确,则确定下载的新固件有效;
当检测到新固件有效时,从新固件中加载主控程序,否则,从旧固件中加载主控程序。
所述方法还包括:在新固件下载完成后,将新固件根据预先确定的用于存放新固件的地址存放于闪存Flash中;
且所述步骤B还包括:根据新、旧固件所在的地址信息选择新固件或旧固件进行主控程序的加载。
所述计算新固件的校验和判断的方法为采用循环冗余校验CRC、信息一摘要算法MD5算法。
所述步骤B具体包括:
B1、引导程序运行;
B2、检测下载的新固件,若检测到有新固件,执行步骤B3,否则执行步骤B5;
B3、检测下载的新固件的有效性,若新固件有效,执行步骤B4,否则执行步骤B5;
B4、从新固件中加载主控程序,判断主控程序是否加载成功,若加载成功,表示从新固件中加载主控程序,否则执行步骤B5;
B5、从旧固件中加载主控程序。
所述步骤B4还包括:当本次从新固件中加载主控程序失败后,判断从新固件中加载主控程序失败的次数是否符合预定的次数,若符合,则执行步骤B5,否则,执行重新从新固件中加载主控程序。
所述判断从新固件中加载主控程序是否正确的处理包括:在设备中设置硬件看门狗,通过与硬件看门狗之间的定时信息交互判定所述主控程序加载是否成功。
一种固件升级的装置,设置在待升级的设备中,包括:
固件下载处理模块,用于待升级的设备下载新固件,并且保留新旧固件;同时根据下载新固件是否正确的信息设置系统标记,所述系统标记用于记录下载的新固件是否正确;
新固件有效性检测模块,用于实现对下载新固件的有效性是否正确的检测;具体是根据所述系统标记来判断下载的新固件是否有效,若所述系统标记记录下载的新固件正确,则确定下载的新固件有效;
加载处理模块,用于根据新固件有效性检测模块的检测结果,若检测到新固件有效,则从新固件中加载主控程序,否则,从旧固件中加载主控程序。
所述固件升级的装置还包括:
新固件及旧固件地址信息存储模块,用于保存新固件及旧固件存储于Flash中的地址信息,并用于提供给固件下载处理模块,以保存下载的新固件地址,还用于提供给加载处理模块,以定位到所述新固件或旧固件进行主程序的加载处理。
所述加载处理模块具体包括:
新固件加载次数判别处理子模块,用于判断从新固件加载失败的次数,并在确定超过预定的次数后,触发旧固件加载处理的子模块;
新固件加载处理子模块,用于根据新固件有效性检测模块的触发,选择从新固件进行主程序的加载处理;
旧固件加载处理子模块,用于根据新固件有效性检测模块的触发,选择从旧固件进行主程序的加载处理。
所述新固件加载处理子模块为一硬件看门狗电路,用于判断从新固件中加载主控程序是否成功。
由上述本发明提供的技术方案可以看出,在本发明中采用将下载的新固件和旧固件同时保留在Flash中,并且对下载的新固件进行有效性判断,当判断新固件有效时,从新固件加载主控程序,否则,从旧固件中加载主控程序,从而实现了新旧固件的故障切换,有效地避免因固件升级过程失败而导致的设备产生不可恢复性的损坏;其次,保证在固件升级过程中不中断设备的正常工作,对业务造成较小的影响;最后,由于可以利用主控程序的通信接口和通信协议来支持设备获取新的固件,从而实现了设备的远程升级功能。这种固件升级方法对可靠性要求高的无人值守机房、工业控制设备等场合具有重要的实用意义。
附图说明
图1所示为本发明新固件下载流程图;
图2所示为本发明新固件有效性检测和切换流程图;
图3所示为本发明固件升级装置的结构示意图。
具体实施方式
本发明所述的一种固件程序升级的方法,其具体实施方式可分为新固件下载与新固件有效性检测和切换两个过程描述,如图1所示为新固件下载流程为:
首先,定义系统标记F,长度为2个字节,各个位表示的含义如下:
表1、系统标记F的位定义
固件索引(I);表示为新旧固件在Flash中的地址;
保留(R):表示为系统标记F中保留位;
失败计数(CNT):表示为新固件加载主控程序的失败次数。
步骤11、主程序运行;
设备正常启动后主程序正常工作;
步骤12、下载新固件;
通过设备的串口或网口等方式获取得到新的固件,新旧固件同时存放在Flash中已设置好的地址中;
在本发明中定义固件存放的地址为ADDR1和ADDR2,新固件和旧固件的地址分别是ADDR1和ADDR2中的一个,由固件索引(I)确定。
表2、固件加载地址
I | 当前固件加载地址 |
0 | ADDR1 |
1 | ADDR2 |
步骤13、判断新固件是否正确,若是执行步骤14,否则执行步骤16;
为了避免新固件在下载中因传输等原因出错,需要通过计算新固件的校验和等方式判断新固件是否正确,计算校验和判断的方法可以采用CRC(Cyclic Redundancy Check,中文名:循环冗余校验)、MD5(Message-Digest algorithm 5,中文名:信息-摘要算法)等算法;
步骤14、设置系统标记F;
如果下载的新固件正确,设置系统标记F={~I,R,0xFE},指示新固件已经准备好,同时,系统标记可能采用不同的长度和分配方式;
步骤15、重新启动系统;
根据用户的命令或者设置,设置完固件更新标记后,重新启动系统;
步骤16、判断是否重新下载,若是执行步骤12,否则执行步骤17;
如果重新下载新固件的次数超过设定值时,可以根据用户的命令或者设置重新下载新固件;
步骤17、升级失败;
如果通过步骤16判断出不重新下载新固件,则根据用户的命令或者设置放弃固件升级操作。
当新固件下载完毕并且通过了新固件正确性判定,则应该重新启动设备以加载新的固件程序。这时,应该对新固件的有效性进行判断,并且当检测出新固件无效后,仍可以切换回旧固件。具体流程如下所述:
如图2所示新固件有效性检测和切换流程为:
步骤21、设备启动;
待升级设备通电或者设备重新启动;
步骤22、引导程序运行;
首先设备引导程序开始运行,完成软、硬件初始化,启动硬件看门狗;
步骤23、判定是否检测到新固件,若是执行步骤24,否则执行步骤31;
如果系统标记F的失败计数CNT=0xFF,表示在固件更新操作过程中发生了硬件错误,同样可以当作检测到新固件处理,或者如果系统标记F的失败计数CNTI=0,也表示检测到新固件,则可以从新固件中加载主控程序,否则表示没有检测到新固件,则应该从旧固件中加载主控程序;
步骤24、更新标记;
如果检测到新固件,则更新失败计数标记CNT=CNT<<1,系统标记F的其它位保持不变;
步骤25、检测新固件是否无效;如果是执行步骤30,否则执行步骤26;
如果失败计数CNT=0x80,表示已经尝试了加载7次新固件,都是加载失败,因此判定新固件无效;
步骤26、从新固件中加载主控程序;
尝试从新固件中加载主控程序,新固件的加载地址由表2确定;
步骤27、判断主控程序加载是否成功;如果是执行步骤28,否则执行步骤24;
判断主控程序加载是否成功,需要借助设置在设备中硬件看门狗来完成,如果新的主控程序正确执行,控制程序定时写入控制字(称为:喂狗),喂狗的间隔时间小于T时,判定主控程序加载成功;如果新的主控程序无法正确执行,则将由于在T时间间隔内没有喂狗,则硬件看门狗触发一个系统复位信号,使系统重新启动,判定主控程序加载失败:
定义硬件看门狗的超时时间为T。
步骤28、清除标记;
当从新固件中加载主控程序成功后,自动清除失败计数CNT,即设置为CNT=0,表示新固件通过有效性验证;
步骤29、升级完成;
固件升级成功,新固件生效;
步骤30、设置失效标记;
由于新固件无效,设置系统标记为F={~I,R,0x00},表示切换回旧固件;
步骤31、从旧固件中加载主控程序;
从旧固件中加载主控程序,旧固件的加载地址由表2确定;
步骤32、升级失败或无升级操作;
没有检测到新固件或者新固件被判定为无效,升级操作没有完成。
本发明所述的固件升级的装置的具体实施方式如图3所示,该固件升级的装置设置在待升级的设备中,具体包括:固件下载处理模块、新固件有效性检测模块、加载处理模块和新固件及旧固件地址信息存储模块,其中:
固件下载处理模块,包括系统标记设置子模块。用于待升级的设备下载新固件,并且同时保留新旧固件。其中:
系统标记设置子模块,用于根据下载新固件是否正确的信息设置所述系统标记,该系统标记用于记录下载的新固件是否正确。
新固件有效性检测模块,包括有效性识别子模块。用于实现对下载新固件的有效性是否正确的检测。其中:
有效性识别子模块,用于根据所述系统标记设置子模块设置的系统标记对下载的新固件的有效性进行检测识别。
加载处理模块,包括新固件加载次数判别处理子模块、新固件加载处理子模块和旧固件加载处理子模块。用于根据新固件有效性检测模块的检测结果,若检测到新固件有效,则从新固件中加载主控程序,否则,从旧固件中加载主控程序。其中:
新固件加载次数判别处理子模块,用于判断从新固件加载失败的次数,并在确定超过预定的次数后,触发旧固件加载处理的子模块;
新固件加载处理子模块,用于根据新固件有效性检测模块的触发,选择从新固件进行主程序的加载处理;
旧固件加载处理子模块,用于根据新固件有效性检测模块的触发,选择从旧固件进行主程序的加载处理。
新固件及旧固件地址信息存储模块,用于保存新固件及旧固件存储于Flash中的地址信息,并用于提供给固件下载处理模块,以保存下载的新固件地址,还用于提供给加载处理模块,以定位到所述新固件或旧固件进行主程序的加载处理。
在本发明中使用硬件看门狗电路,作为加载处理模块中的新固件加载处理子模块,同样可以用于判断从新固件中加载主控程序是否成功。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (7)
1、一种固件程序升级的方法,其特征在于,包括:
A、待升级的设备下载新固件,同时保留待升级的设备中的旧固件;
B、待升级的设备通过计算新固件的校验和来判断新固件是否正确,如果是,设置下载的新固件正确的系统标记,否则,重新下载新固件,直至下载获得正确的新固件或符合预定的停止条件;
并对下载新固件的有效性进行检测,具体是根据所述系统标记判断下载的新固件是否有效,若所述系统标记记录下载的新固件正确,则确定下载的新固件有效;
当检测到新固件有效时,从新固件中加载主控程序,否则,从旧固件中加载主控程序。
2、根据权利要求1所述的一种固件程序升级的方法,其特征在于,所述方法还包括:在新固件下载完成后,将新固件根据预先确定的用于存放新固件的地址存放于闪存Flash中;
且所述步骤B还包括:根据新、旧固件所在的地址信息选择新固件或旧固件进行主控程序的加载。
3、根据权利要求1或2所述的一种固件程序升级的方法,其特征在于,所述步骤B具体包括:
B1、引导程序运行;
B2、检测下载的新固件,若检测到有新固件,执行步骤B3,否则执行步骤B5;
B3、检测下载的新固件的有效性,若新固件有效,执行步骤B4,否则执行步骤B5;
B4、从新固件中加载主控程序,判断主控程序是否加载成功,若加载成功,表示从新固件中加载主控程序,否则执行步骤B5;
B5、从旧固件中加载主控程序。
4、根据权利要求3所述的一种固件程序升级的方法,其特征在于,所述步骤B4还包括:当本次从新固件中加载主控程序失败后,判断从新固件中加载主控程序失败的次数是否符合预定的次数,若符合,则执行步骤B5,否则,执行重新从新固件中加载主控程序。
5、一种固件升级的装置,设置在待升级的设备中,其特征在于,包括:
固件下载处理模块,用于待升级的设备下载新固件,并且保留新旧固件;同时根据下载新固件是否正确的信息设置系统标记,所述系统标记用于记录下载的新固件是否正确;
新固件有效性检测模块,用于实现对下载新固件的有效性是否正确的检测;具体是根据所述系统标记来判断下载的新固件是否有效,若所述系统标记记录下载的新固件正确,则确定下载的新固件有效;
加载处理模块,用于根据新固件有效性检测模块的检测结果,若检测到新固件有效,则从新固件中加载主控程序,否则,从旧固件中加载主控程序。
6、根据权利要求5所述的一种固件升级的装置,其特征在于,所述固件升级的装置还包括:
新固件及旧固件地址信息存储模块,用于保存新固件及旧固件存储于Flash中的地址信息,并用于提供给固件下载处理模块,以保存下载的新固件地址,还用于提供给加载处理模块,以定位到所述新固件或旧固件进行主程序的加载处理。
7、根据权利要求5或6所述的一种固件升级的装置,其特征在于,所述加载处理模块具体包括:
新固件加载次数判别处理子模块,用于判断从新固件加载失败的次数,并在确定超过预定的次数后,触发旧固件加载处理的子模块;
新固件加载处理子模块,用于根据新固件有效性检测模块的触发,选择从新固件进行主程序的加载处理;
旧固件加载处理子模块,用于根据新固件有效性检测模块的触发,选择从旧固件进行主程序的加载处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200710062962XA CN100456246C (zh) | 2007-01-23 | 2007-01-23 | 一种固件程序升级的方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200710062962XA CN100456246C (zh) | 2007-01-23 | 2007-01-23 | 一种固件程序升级的方法与装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101004691A CN101004691A (zh) | 2007-07-25 |
CN100456246C true CN100456246C (zh) | 2009-01-28 |
Family
ID=38703860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB200710062962XA Active CN100456246C (zh) | 2007-01-23 | 2007-01-23 | 一种固件程序升级的方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100456246C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980164A (zh) * | 2010-11-16 | 2011-02-23 | 北京航天测控技术开发公司 | 一种lxi仪器的固件升级方法及装置 |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101807149B (zh) * | 2009-02-18 | 2013-08-21 | 联咏科技股份有限公司 | 可安全复原的固件更新方法及其嵌入式电子装置 |
CN101854442B (zh) * | 2009-04-01 | 2013-06-05 | 鸿富锦精密工业(深圳)有限公司 | 网络设备及其固件更新方法 |
CN101834976B (zh) * | 2009-10-20 | 2012-01-25 | 福建新大陆通信科技股份有限公司 | 使用3段式引导升级启动技术的机顶盒启动和升级方法 |
US8893112B2 (en) * | 2009-12-21 | 2014-11-18 | Intel Corporation | Providing software distribution and update services regardless of the state or physical location of an end point machine |
CN102104750B (zh) * | 2009-12-22 | 2015-02-11 | 康佳集团股份有限公司 | 一种网络电视自动升级的方法 |
CN102455915A (zh) * | 2010-10-18 | 2012-05-16 | 卓望数码技术(深圳)有限公司 | 一种分布式系统的自动化配置方法及服务器 |
KR101360705B1 (ko) * | 2011-09-22 | 2014-02-07 | 기아자동차주식회사 | 차량 업그레이드 시스템 및 그 방법 |
CN102426529A (zh) * | 2011-10-26 | 2012-04-25 | 中兴通讯股份有限公司 | 固件更新的方法、装置及系统 |
CN102722384A (zh) * | 2012-05-25 | 2012-10-10 | 深圳市共进电子股份有限公司 | 一种光模块固件在线升级的方法及升级系统 |
CN102945177B (zh) * | 2012-11-16 | 2015-09-02 | 深圳市汇川控制技术有限公司 | Plc固件升级系统及方法 |
CN103365693A (zh) * | 2013-07-26 | 2013-10-23 | 浪潮电子信息产业股份有限公司 | 一种基于硬件侦测的固件自动选择实现方法 |
CN103488494A (zh) * | 2013-08-12 | 2014-01-01 | 浪潮电子信息产业股份有限公司 | 一种刀片服务器多固件同步更新升级方法 |
WO2015088544A1 (en) * | 2013-12-13 | 2015-06-18 | Razer (Asia-Pacific) Pte. Ltd. | Devices, updaters, methods for controlling a device, and methods for controlling an updater |
CN104281479B (zh) * | 2014-10-31 | 2019-01-08 | 深圳市大疆创新科技有限公司 | 一种固件升级方法及装置 |
CN104469409A (zh) * | 2014-11-28 | 2015-03-25 | 四川长虹电器股份有限公司 | 智能电视软件差分升级的自动化测试方法 |
CN104503786B (zh) | 2014-12-15 | 2020-10-16 | 小米科技有限责任公司 | 固件刷新方法及装置 |
CN104618888B (zh) * | 2014-12-24 | 2018-04-06 | 惠州Tcl移动通信有限公司 | 一种移动终端nfc芯片固件更新系统及方法 |
CN104765628A (zh) * | 2015-03-10 | 2015-07-08 | 惠州Tcl移动通信有限公司 | 一种移动终端更新触摸屏固件的方法及系统 |
CN104965730B (zh) * | 2015-06-02 | 2018-09-04 | 广东欧珀移动通信有限公司 | 一种版本升级方法及系统 |
CN104978223B (zh) * | 2015-07-02 | 2018-03-30 | 上海市共进通信技术有限公司 | 实现Web方式升级设备固件的方法 |
CN105242940A (zh) * | 2015-09-14 | 2016-01-13 | 浪潮集团有限公司 | 一种集中固件更新方法 |
EP3220262B1 (en) * | 2016-03-15 | 2018-06-13 | Axis AB | Device which is operable during firmware upgrade |
CN107515799A (zh) * | 2016-06-16 | 2017-12-26 | 上海奕瑞光电子科技有限公司 | 一种平板探测器的固件加载方法 |
CN106372538A (zh) * | 2016-08-30 | 2017-02-01 | 苏州国芯科技有限公司 | 一种基于SoC芯片的固件保护方法 |
CN108108174A (zh) * | 2016-11-24 | 2018-06-01 | 青岛海信宽带多媒体技术有限公司 | 光模块及其固件升级的方法 |
CN107820603A (zh) * | 2016-12-30 | 2018-03-20 | 深圳配天智能技术研究院有限公司 | 一种固件更新方法及控制器 |
CN107168734A (zh) * | 2017-04-27 | 2017-09-15 | 纳瓦电子(上海)有限公司 | 一种嵌入式系统升级备份方法 |
CN107273139A (zh) * | 2017-07-05 | 2017-10-20 | 努比亚技术有限公司 | 一种系统更新方法、设备及计算机可读存储介质 |
CN109002317B (zh) * | 2018-06-27 | 2022-01-18 | 上海有个机器人有限公司 | 一种pcba固件升级方法及系统、pcba |
CN109240721A (zh) * | 2018-08-24 | 2019-01-18 | 江苏恒宝智能系统技术有限公司 | 一种mcu在线升级的方法 |
CN109992517B (zh) * | 2019-04-03 | 2023-12-26 | 昆仑太科(北京)技术股份有限公司 | 基于uefi的固件模块调试方法和系统 |
CN110427201A (zh) * | 2019-07-25 | 2019-11-08 | 金卡智能集团股份有限公司 | 一种nb模组升级方法、装置、设备及存储介质 |
CN111666094B (zh) * | 2020-06-04 | 2024-04-05 | 深圳市稳先微电子有限公司 | 一种实时固件升级系统与方法 |
CN111966970B (zh) | 2020-07-31 | 2021-05-07 | 深圳比特微电子科技有限公司 | 防止数字货币矿机固件回退的方法、装置和数字货币矿机 |
CN112181466B (zh) * | 2020-09-08 | 2024-04-16 | 深聪半导体(江苏)有限公司 | 一种语音空调固件云端升级方法及系统 |
CN113190252A (zh) * | 2021-05-14 | 2021-07-30 | 广州国联通信有限公司 | 一种基于列车广播系统的远程在线固件更新方法及装置 |
CN113535255A (zh) * | 2021-06-07 | 2021-10-22 | 山东泰物信息技术有限公司 | 一种基于国密算法异步更新嵌入式linux固件的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000330779A (ja) * | 1999-05-18 | 2000-11-30 | Nec Corp | ファームウエアプログラム遠隔更新システム及び方法 |
CN1560739A (zh) * | 2004-03-02 | 2005-01-05 | 威盛电子股份有限公司 | 使用存储卡更新固件的方法与装置 |
CN1567199A (zh) * | 2003-06-16 | 2005-01-19 | 纬创资通股份有限公司 | 交叉式固件升级方法 |
-
2007
- 2007-01-23 CN CNB200710062962XA patent/CN100456246C/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000330779A (ja) * | 1999-05-18 | 2000-11-30 | Nec Corp | ファームウエアプログラム遠隔更新システム及び方法 |
CN1567199A (zh) * | 2003-06-16 | 2005-01-19 | 纬创资通股份有限公司 | 交叉式固件升级方法 |
CN1560739A (zh) * | 2004-03-02 | 2005-01-05 | 威盛电子股份有限公司 | 使用存储卡更新固件的方法与装置 |
Non-Patent Citations (2)
Title |
---|
嵌入式设备中可下载固件设计. 杜春雷,向勇,史美林.计算机工程与设计,第25卷第5期. 2004 |
嵌入式设备中可下载固件设计. 杜春雷,向勇,史美林.计算机工程与设计,第25卷第5期. 2004 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980164A (zh) * | 2010-11-16 | 2011-02-23 | 北京航天测控技术开发公司 | 一种lxi仪器的固件升级方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101004691A (zh) | 2007-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100456246C (zh) | 一种固件程序升级的方法与装置 | |
US7991988B2 (en) | Communication device and firmware update method thereof | |
CN107608706B (zh) | 一种基于功能模块的应用程序自动热更新方法 | |
CN102298545B (zh) | 一种系统启动引导处理方法及装置 | |
CN103299276B (zh) | 嵌入式装置的软件更新过程 | |
CN102339227A (zh) | 多固件嵌入式系统及其固件更新方法 | |
US7941658B2 (en) | Computer system and method for updating program code | |
CN109032632B (zh) | 一种fota升级方法、无线通信终端及存储介质 | |
CN101719072A (zh) | 嵌入式终端设备软件升级方法及升级装置 | |
CN101364193A (zh) | 自动恢复bios的方法以及使用该方法的电脑与系统 | |
CN101373433A (zh) | 更新bios的方法以及使用该方法的电脑与系统 | |
CN106775674B (zh) | 一种基于通用引导加载程序的设备及其启动方法 | |
CN103970564A (zh) | 嵌入式操作系统自动修复升级功能的方法及其系统 | |
CN112015447B (zh) | 电子设备的系统更新方法及装置、电子设备及存储介质 | |
CN111767172A (zh) | 一种基于看门狗及bootloader的机顶盒自修复办法 | |
CN108920168B (zh) | 支持多个同类ECU同时升级且具防程序不匹配功能的Bootloader方法 | |
CN100395713C (zh) | 自动修复基本输入输出系统元件的方法与模块 | |
CN108170456B (zh) | 电子设备的固件升级方法及装置 | |
JP2002543521A (ja) | 自動的にモジュールをコンピュータシステムに再び組み込む方法および装置 | |
JP2005284902A (ja) | 端末装置、その制御方法及び制御プログラム、ホスト装置、その制御方法及び制御プログラム、遠隔更新システム、方法及びプログラム | |
CN114356658A (zh) | 固件升级异常的处理方法、计算机设备以及可读存储介质 | |
CN106325912B (zh) | 嵌入式操作系统的启动方法及装置 | |
CN107015827B (zh) | 嵌入式系统及其自动运行第三方扩展程序的方法 | |
JP4715552B2 (ja) | 障害検出方式 | |
CN114006901A (zh) | 一种嵌入式网络设备免拆机盖固件升级方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee |
Owner name: BEIJING INHAND NETWORKS TECHNOLOGY CO., LTD. Free format text: FORMER NAME: YINGHANTONG NETWORK TECH CO., LTD., BEIJING |
|
CP03 | Change of name, title or address |
Address after: 100102 Beijing city Chaoyang District Wangjing Lize Park No. 101 in eleven on the west side of 101 Patentee after: BEIJING INHAND NETWORK TECHNOLOGY CO., LTD. Address before: 100085, A, building three, building 9, Wah Wah Street, 3rd Street, Beijing, Haidian District Patentee before: Yinghantong Network Tech Co., Ltd., Beijing |