CN110427205A - 韧体的更新方法及装置 - Google Patents
韧体的更新方法及装置 Download PDFInfo
- Publication number
- CN110427205A CN110427205A CN201910560960.6A CN201910560960A CN110427205A CN 110427205 A CN110427205 A CN 110427205A CN 201910560960 A CN201910560960 A CN 201910560960A CN 110427205 A CN110427205 A CN 110427205A
- Authority
- CN
- China
- Prior art keywords
- hardware device
- firmware
- latch
- interfaces
- update
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供了一种韧体的更新方法,包括:获取硬件装置的韧体更新数据;根据所述韧体更新数据,更新所述硬件装置的韧体;将所述硬件装置的所有I/O接口进行锁存;启动所述硬件装置更新后的韧体;解除对所述硬件装置的所有I/O接口的锁存。通过利用韧体更新数据对硬件装置的韧体进行更新后,便将硬件装置的所有I/O接口进行锁存,使得硬件装置不再能输出控制指令,从而控制系统断电。在完成启动更新后的韧体之后,才解除对硬件装置的所有I/O接口的锁存,恢复硬件装置的正常运作。从而实现了在不断电的情况下,完成对硬件装置的整个更新过程。本发明还提供了一种与韧体的更新方法相对应的韧体的更新装置。
Description
技术领域
本发明涉及数据更新技术领域,特别涉及一种韧体的更新方法及装置。
背景技术
韧体又称韧件或固件,是一种嵌入在电脑的硬件装置中的软体。通常位于硬件装置的闪存、电子可擦可编程只读存储器(Electrically Erasable Programmable readonly memory,EEPROM)或者可编程只读存储器(Programmable read-only memory,PROM)中。并且,用户可以根据自己的实际需求对硬件装置的韧体进行更新。
在对韧体进行更新时,在先将硬件装置所存储的韧体进行更新后,硬件装置需要进行断电再重启,以启用更新后的韧体,才最终完成韧体的更新。因此,硬件装置会通过I/O接口输入控制指令,将其所在的整个系统进行断电再上电重启,在重启时硬件装置就会启动新的韧体,即加载新的韧体,从而启用新的韧体,最终完成对韧体的更新。
但是,在系统的前期测试阶段,通常需要经更新系统的硬件装置的韧体,来测试系统的功能。一直对系统进行断电再上电,会浪费大量的时间,从而降低系统的开发效率。并且,若用户使用系统的过程中,对系统进行断电,则会终止系统正在运行的任务,从而影响用户的使用。所以,如何在不断电的情况对韧体进行更换,显得尤为重要。
发明内容
基于上述现有技术的不足,本发明提供了一种韧体的更新方法及装置,以解决在韧体更新过程中需要对系统进行断电再重启,从而造成时间的浪费以及影响用户正常使用的问题。
为了实现上述目的,本发明提供了以下技术方案:
本发明第一方面提供了一种韧体的更新方法,其特征在于,包括:
获取硬件装置的韧体更新数据;
根据所述韧体更新数据,更新所述硬件装置的韧体;
将所述硬件装置的所有I/O接口进行锁存;
启动所述硬件装置更新后的韧体;
解除对所述硬件装置的所有I/O接口的锁存。
可选地,在上述的韧体的更新方法中,所述根据所述韧体更新数据,更新所述硬件装置的韧体,包括:
将所述韧体更新数据写入所述硬件装置的可程式化只读内存中,替换所述硬件装置的可程式化只读内存中的韧体。
可选地,在上述的韧体的更新方法中,所述将所述硬件装置的所有I/O接口进行锁存之前,还包括:
判断是否完成对所述硬件装置的韧体的更新;
若判断出已完成对所述硬件装置的韧体的更新,则执行所述将所述硬件装置的所有I/O接口进行锁存。
可选地,在上述的韧体的更新方法中,所述将所述硬件装置的所有I/O接口进行锁存,包括:
启动所述硬件装置中内置的I/O接口逻辑锁功能,并执行锁存程序以利用所述I/O接口逻辑锁功能将所述硬件装置的所有I/O接口进行锁存;其中,所述锁存程序为预先配置的,用于应用所述I/O接口逻辑锁功能的程序。
可选地,在上述的韧体的更新方法中,所述解除对所述硬件装置的所有I/O接口的锁存,包括:
执行锁存程序以利用所述I/O接口逻辑锁功能解除对所述硬件装置的所有I/O接口的锁存。
本发明第二方面提供了一种韧体的更新装置,包括:
获取单元,用于获取硬件装置的韧体更新数据;
更新单元,用于根据所述韧体更新数据,更新所述硬件装置的韧体;
锁存单元,用于将所述硬件装置的所有I/O接口进行锁存;
启动单元,用于启动所述硬件装置更新后的韧体;
解除单元,用于解除对所述硬件装置的所有I/O接口的锁存。
可选地,在上述的韧体的更新装置中,所述更新单元,包括:
更新子单元,将所述韧体更新数据写入所述硬件装置的可程式化只读内存中,替换所述硬件装置的可程式化只读内存中的韧体。
可选地,在上述的韧体的更新装置中,所述韧体的更新装置,还包括:
判断单元,用于判断是否完成对所述硬件装置的韧体的更新;其中,若所述判断单元判断出已完成对所述硬件装置的韧体的更新,则所述锁存单元将所述硬件装置的所有I/O接口进行锁存。
可选地,在上述的韧体的更新装置中,所述锁存单元,包括:
锁存子单元,用于启动所述硬件装置中内置的I/O接口逻辑锁功能,并执行锁存程序以利用所述I/O接口逻辑锁功能将所述硬件装置的所有进行锁存;其中,所述锁存程序为预先配置的,用于应用所述I/O接口的逻辑锁功能的程序。
可选地,在上述的韧体的更新装置中,所述解除单元,包括:
解除子单元,用于执行锁存程序以利用所述I/O接口逻辑锁功能解除对所述硬件装置的所有I/O接口的锁存。
本发明提供的一种韧体的更新方法及装置,通过获取硬件装置的韧体更新数据,并根据所述韧体更新数据,更新所述硬件装置的韧体后,然后便将所述硬件装置的所有I/O接口进行锁存。从而使得硬件装置无法通过I/O接口输入控制指令,也就无法控制系统进行断电。在启动所述硬件装置更新后的韧体,即加载所述更新后的韧体后,才解除对所述硬件装置的所有I/O接口的锁存,恢复硬件装置的正常使用。从而实现了在不断电的情况下,完成对硬件装置的整个更新过程。避免了因为系统断电造成的时间浪费以及影响用户正常使用的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种韧体的更新方法的流程示意图;
图2为一种复杂可编程逻辑器件韧体更新的结构示意图;
图3为本发明另一实施例提供的一种韧体的更新方法的流程示意图;
图4为本发明实施例提供的一种韧体的更新装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明实施例提供了一种韧体的更新方法,如图1所示的,包括:
S101、获取硬件装置的韧体更新数据。
需要说明的是,韧体又称韧件或固件,是一种嵌入在电脑的硬件装置中的软体,通常存储于硬件装置的闪存、EEPROM或PROM中。也可以简单的理解为一种嵌入在电能的硬件装置中的程序或软件,可用于实现驱动、控制等功能,通常担任着一个系统中的最基础、最底层的工作。而所述硬件装置的韧体更新数据可以理解为,用于对硬件装置内的韧体进行部分更新的数据或者是用于更换硬件装置内的整个韧体的一个新的韧体。
所述硬件装置则指的是承载所述韧体的硬件。但所述硬件装置区别于存储器,硬件装置除了存储有韧体外,还需要基于所承载的韧体来实现相应的功能。例如,用于控制、监视或者辅助操作机器和设备的各种嵌入式的硬件装置,都会基于所承载的韧体进行工作。并且,对于一些硬件装置,其除了韧体以外没有其它软件组成,因此该硬件装置所承载的韧体更是决定着该硬件装置仅有的功能及性能。
还需要说明的是,本发明实施例主要针对的是嵌入式的硬件装置来说明。嵌入式的硬件装置通常都将韧体储存在内部的可程式化只读内存中,例如EEPROM、PROM等。当电源开启之后,可程式化只读内存中的韧体将被加载到随机存取存储器(RandomAccessMemory,RAM)中,供用户执行。例如,复杂可编程逻辑器件(ComplexProgrammable LogicDevice,CPLD)。
对于不同的韧体,可以实现不同的功能,所以用户可以根据自己的需求,更新硬件装置中的韧体,从而实现相应的功能。具体的,韧体更新数据可由开发人员根据需求预先开发,并进行存储。所以,可以直接从存储器或相应的文档中获取硬件装置的韧体更新数据。
S102、根据所述韧体更新数据,更新所述硬件装置的韧体。
需要说明的是,本步骤中更新所述硬件装置的韧体指的是更新存储在硬件装置的可程式化只读内存中的韧体,但还未启动更新后的韧体,即还未将新的韧体加载到RAM中。所以,此时更新后的韧体还不能被应用,因此在执行步骤S102后,还并未完成对所述硬件装置的韧体的整个更新过程。
对硬件装置的韧体进行更新可以是利用更新数据是对韧体进行更改,但通常对硬件装置的韧体进行更新采用的方式是:将一个新的韧体替换掉原先的韧体。所以,本发明实施例中,根据所述韧体更新数据,更新所述硬件装置的韧体具体可以是:利用烧录器将韧体更新数据烧入硬件装置的可程式化只读内存中,从而替换掉预先存储在硬件装置的可程式化只读内存中的韧体。当然,可以是针对硬件装置,通过硬件装置相应的更新治具将韧体更新数据写入到硬件装置的可程式化只读内存中,实现对所述硬件装置的韧体的更换。
例如,如图2所示,对于CPLD,其在更新韧体时,可以利用CPLD的更新治具,将韧体更新数据通过I2C总线写入到CPLD的快闪只读存储器(FlashROM)中,从而实现对CPLD的韧体的更新,在启动韧体时,再将韧体从快闪只读存储器加载到RAM中,从而实现韧体的启动。
需要说明的是,在执行步骤S102完成对硬件装置的可程式化只读内存中的韧体的更新后,执行步骤S103。
S103、将所述硬件装置的所有I/O接口进行锁存。
需要说明的是,本发明实施例中,硬件装置通过I/O接口传输数据。并且,硬件装置可以通过I/O接口输出控制指令,控制硬件装置所在的系统的电源。在现有技术中,由于,硬件装置在每次电源开启之后,会重新将可程式化只读内存中的韧体加载到RAM中,从而供用户执行。所以,硬件装置在完成对可程序化制度内存中的韧体的更新后,将会通过I/O接口输出控制指令,将硬件装置所在的整个系统进行断电,然后再上电进行重启。从而在重启时将可程式化只读内存中的更新后的韧体加载到RAM中,供用户执行,最终完成对韧体的更新。
但是,在系统的开发阶段需要更新硬件装置的韧体,所以需要经常的对整个系统进行断电再上电进行重启,这无疑会浪费大量的时间,从而降低了系统的开发效率。并且,系统除了需要更新韧体的硬件装置外,还可能包括有其他硬件,将系统进行断电的,必定会影响其他硬件的运转,从而影响系统正在执行的动作。例如,用户在正常的使用系统,进行数据读取或写入数据时,此时将系统进行断电,用户读取数据或写入数据的操作将会被中断,用户需要在系统重启后,重新进行数据读取或写入数据,给用户带来不必要的麻烦。
因此,为了避免在完成对硬件装置的可程式化只读内存中的韧体的更新后,硬件装置通过I/O接口输出控制指令,控制系统断电。所以,需要在更新完可程式化只读内存中的韧体后,将硬件装置的所有的I/O接口进行锁存。这样硬件装置就无法再通过I/O接口输出控制指令,进行系统断电了。其中,将硬件装置的所有的I/O接口进行锁存,具体可以是将所有的I/O接口电平进行保持,即将I/O接口的电平保持在当前状态,不能再变化,从而无法再进行数据传输。这不仅避免了系统断电,还避免在启动韧体时,数据输入硬件装置中,可能对韧体的启动造成的影响。
需要说明的是,在执行步骤S103将所述硬件装置所有的I/O接口都进行锁存后,执行步骤S104。
S104、启动所述更新后的韧体。
在将硬件装置所有的I/O接口进行锁存后,硬件装置由于已经无法输出控制指令,控制系统断电,所以此时可以启动更新后的韧体,不用担心出现断电。
需要说明的是,更新后的韧体指的将韧体更新数据写入硬件装置,对硬件装置的韧体更新后,硬件装置中的韧体。
具体的,启动更新后的韧体,就是将硬件装置的可程式化只读内存中的更新后的韧体加载到RAM中。由于,硬件装置没有断电,所以硬件装置内部可以正常运行,只是无法输入和输出数据。此时,通过硬件装置的相应的逻辑程序去加载可程式化只读内存中韧体到RAM中,从而启动更新后的韧体。例如,在将CPLD的所有的I/O接口进行锁存后,CPLD会运作内部的相应逻辑将其内部的快闪只读存储器(Flash ROM)中的更新后的韧体,加载到RAM中,替换了RAM中原先的韧体,从而实现对更新后的韧体的更新。
还需要说明的是,在执行步骤S104完成对整个更新后的韧体的启动后,执行步骤S105。
S105、解除对所述硬件装置的所有I/O接口的锁存。
由于,先前为了避免系统断电,将硬件装置的所有的I/O接口都进行锁存,所以硬件装置与外部进行数据,所以硬件装置无法被正常使用。又因为在启动更新后的韧体后,硬件装置将不需要再进行断电重启,所以此时应该解除对硬件装置所有的I/O接口的锁存,以将硬件装置恢复正常。
具体的,解除对硬件装置的所有I/O接口的电平的保持,从而使得硬件装置又可以同I/O接口与外部进行数据传输。此时,硬件装置中更新后的韧体才处于可被应用的状态,从而才最终完成了对硬件装置的韧体的更新全过程。
本发明实施例提供的韧体的更新方法,通过获取硬件装置的韧体更新数据,并根据所述韧体更新数据,更新所述硬件装置的韧体后,然后将所述硬件装置的所有I/O接口进行锁存。从而使得硬件装置无法通过I/O接口输入控制指令,也就无法控制系统进行断电。在启动所述硬件装置更新后的韧体,即加载所述更新后的韧体后,才解除对所述硬件装置的所有I/O接口的锁存,恢复硬件装置的正常使用。从而实现了在不断电的情况下,完成对硬件装置的整个更新过程。避免了因为系统断电造成的时间浪费以及影响用户正常使用的问题。
本发明的另一实施例提供了一种韧体更新的方法,如图3所示,包括:
S301、获取硬件装置的韧体更新数据。
其中,所述硬件装置的韧体更新数据可以理解为,用于对硬件装置内的韧体进行部分更新的数据或者是用于更换硬件装置内的韧体的一个新的韧体。
具体的,步骤S301的具体实现过程可参见上述方法实施例中的步骤S101,此处不再赘述。
S302、将所述韧体更新数据写入所述硬件装置的可程式化只读内存中,替换所述硬件装置的可程式化只读内存中的韧体。
需要说明的是,硬件装置的韧体存储于硬件装置内部的可程式化只读内存中,例如EEPROM、PROM等。在每次启动硬件装置时,硬件装置都需要将韧体从可程式化只读内存中加载到硬件装置的RAM中,从而启动韧体。所以,对硬件装置的韧体进行更新,就需要更新硬件装置的可程式化只读内存中的韧体。
具体的,本发明实施例中可以通过烧录器或者硬件装置的更新治具,将韧体更新数据写入硬件装置的可程式化只读内存中,替换掉硬件装置的可程式化只读内存中的韧体。
S303、判断是否完成对所述硬件装置的韧体的更新。
需要说明的是,本步骤判断是否完成对所述硬件装置的韧体的更新,具体指的是:判断执行步骤S302是否完成对硬件装置的可程式化只读内存中的韧体的更新。也就是判断是否已经将韧体更新数据全部写入到硬件装置的可程式化只读内存中。
由于,在完成对硬件装置的程式化只读内存中的韧体的更新后,硬件装置将通过I/O接口输出控制指令,从而控制系统断电再重启。所以,需要及时将I/O接口进行锁存,所以可以实时地判断是否完成了对所述硬件装置的程式化只读内存中的韧体的更新,并在判读出已完成对所述硬件装置的韧体的更新,执行步骤S304将硬件装置所有的I/O接口进行锁存。
S304、启动所述硬件装置中内置的I/O接口逻辑锁功能,并执行锁存程序以利用所述I/O接口的逻辑锁功能将将所述硬件装置的所有进行锁存。
其中,所述锁存程序为预先配置的,用于应用所述I/O接口逻辑锁功能的程序。
需要说明的是,为了能满足不同用户的需求,现在许多的硬件装置,本身都内置有I/O接口逻辑锁(I/O logic lock)功能,用户可根据自己的需求,选择启用硬件装置内的I/O接口逻辑锁功能,对硬件装置的I/O接口进行锁存以及解除对硬件装置的I/O接口的锁存。当然,用户可以不启用硬件装置内的I/O接口的逻辑锁功能。例如,CPLD通常都会内置有I/O接口逻辑锁功能,用户可以通过在CPLD中写入相应的逻辑关系,从而通过该逻辑关系来应用内置的I/O接口逻辑锁功能将CPLD的I/O接口进行锁存。也可以理解为预先设计相应的程序,然后通过该程序来应用CPLD的I/O接口逻辑锁功能,例如什么时候开始锁存I/O接口,什么时候解除对I/O接口的锁存等。
具体的,本步骤中先启动硬件装置中内置的I/O接口逻辑锁功能,然后再启动更新后的韧体之前,通过执行预先配置的程序将硬件装置的所有的I/O接口进行锁存,避免硬件装置输出控制指令,造成系统断电。
S305、启动所述更新后的韧体。
具体的,将硬件装置的韧体更新数据写入硬件装置的可程式化只读内存中,得到更新后的韧体。将硬件装置的可程式化只读内存中的更新后的韧体,加载到RAM中,从而启动更新后的韧体,供用户执行。
需要说明的是,步骤S305的具体实现过程可参见上述方法实施例中的步骤S104.,此处不再赘述。
S306、执行锁存程序以利用所述I/O接口逻辑锁功能解除对所述硬件装置的所有I/O接口的锁存。
在完全启动更新后的韧体后,硬件装置就不再需要进行断电重启来启动韧体,此为了能恢复硬件装置,将更新后的韧体提供给用户执行。此时,需要解除对硬件装置的所有I/O接口的锁存,恢复硬件装置正常的数据传输。
具体的,I/O接口逻辑锁功能不仅能进行I/O接口的锁存,还能相应的解除对I/O接口的锁存。所以,锁存程序也可以设计成可以利用I/O接口逻辑锁功能进行I/O接口的锁存,也可以利用I/O接口逻辑锁功能解除对I/O接口的锁存。从而,可以通过执行锁存程序来利用所述I/O接口逻辑锁功能解除对硬件装置的所有I/O接口的锁存。
本发明实施例提供的一种韧体的更新方法,通过获取硬件装置的韧体更新数据,并将所述韧体更新数据写入所述硬件装置的可程式化只读内存中,替换所述硬件装置的可程式化只读内存中的韧体,实现对韧体的更换。然后通过利用硬件装置内置的I/O接口逻辑锁功能将所述硬件装置的所有I/O接口进行锁存。从而使得硬件装置无法通过I/O接口输入控制指令,也就无法控制系统进行断电。在启动所述硬件装置更新后的韧体,即加载所述更新后的韧体后,才再次利用硬件装置的I/O接口逻辑锁功能解除对所述硬件装置的所有I/O接口的锁存,恢复硬件装置的正常使用。从而实现了在不断电的情况下,完成对硬件装置的整个更新过程。避免了因为系统断电造成的时间浪费以及影响用户正常使用的问题。
本发明另一实施例提供了一种韧体的更新装置,如图4,包括:
获取单元401,用于获取硬件装置的韧体更新数据。
其中,所述硬件装置的韧体更新数据可以理解为,用于对硬件装置内的韧体进行部分更新的数据或者是用于更换硬件装置内的韧体的一个新的韧体。
具体的,获取单元401的具体工作工程可参见上述方法实施例中的步骤S101,此处不在赘述。
更新单元402,用于根据所述韧体更新数据,更新所述硬件装置的韧体。
具体的,更新单元402的具体工作工程可参见上述方法实施例中的步骤S102,此处不在赘述。
锁存单元403,用于将所述硬件装置的所有I/O接口进行锁存。
具体的,锁存单元403的具体工作工程可参见上述方法实施例中的步骤S103,此处不在赘述。
启动单元404,用于启动所述更新后的韧体。
具体的,启动单元404的具体工作工程可参见上述方法实施例中的步骤S104,此处不在赘述。
解除单元405,用于解除对所述硬件装置的所有I/O接口的锁存。
具体的,解除单元405的具体工作工程可参见上述方法实施例中的步骤S105,此处不在赘述。
本发明实施例提供的一种韧体的更新装置,通过获取单元获取硬件装置的韧体更新数据,并由更新单元根据所述韧体更新数据,更新所述硬件装置的韧体后,然后便通过锁存单元将所述硬件装置的所有I/O接口进行锁存。从而使得硬件装置无法通过I/O接口输入控制指令,也就无法控制系统进行断电。在启动所述硬件装置更新后的韧体,即加载所述更新后的韧体后,才通过解除单元解除对所述硬件装置的所有I/O接口的锁存,恢复硬件装置的正常使用。从而实现了在不断电的情况下,完成对硬件装置的整个更新过程。避免了因为系统断电造成的时间浪费以及影响用户正常使用的问题。
可选地,本发明的另一实施例中,更新单元,包括:
更新子单元,将所述韧体更新数据写入所述硬件装置的可程式化只读内存中,替换所述硬件装置的可程式化只读内存中的韧体。
具体的,更新子单元的具体工作工程可参见上述方法实施例中的步骤S302,此处不在赘述。
可选地,本发明的另一实施例中,韧体的更新装置,还包括:
判断单元,用于判断是否完成对所述硬件装置的韧体的更新。
其中,若所述判断单元判断出已完成对所述硬件装置的韧体的更新,则所述锁存单元将所述硬件装置的所有I/O接口进行锁存。
具体的,判断单元的具体工作工程可参见上述方法实施例中的步骤S303,此处不在赘述。
可选地,本发明的另一实施例中,锁存单元,包括:
锁存子单元,用于启动所述硬件装置中内置的I/O接口逻辑锁功能,并执行锁存程序以利用所述I/O接口逻辑锁功能将所述硬件装置的所有进行锁存。
其中,所述锁存程序为预先配置的,用于应用所述I/O接口的逻辑锁功能的程序。
具体的,锁存子单元的具体工作工程可参见上述方法实施例中的步骤S304,此处不在赘述。
可选地,本发明的另一实施例中,解除单元,包括:
解除子单元,用于执行锁存程序以利用所述I/O接口逻辑锁功能解除对所述硬件装置的所有I/O接口的锁存。
具体的,解除子单元的具体工作工程可参见上述方法实施例中的步骤S306,此处不在赘述。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种韧体的更新方法,其特征在于,包括:
获取硬件装置的韧体更新数据;
根据所述韧体更新数据,更新所述硬件装置的韧体;
将所述硬件装置的所有I/O接口进行锁存;
启动所述硬件装置更新后的韧体;
解除对所述硬件装置的所有I/O接口的锁存。
2.根据权利要求1所述的方法,其特征在于,所述根据所述韧体更新数据,更新所述硬件装置的韧体,包括:
将所述韧体更新数据写入所述硬件装置的可程式化只读内存中,替换所述硬件装置的可程式化只读内存中的韧体。
3.根据权利要求1所述的方法,其特征在于,所述将所述硬件装置的所有I/O接口进行锁存之前,还包括:
判断是否完成对所述硬件装置的韧体的更新;
若判断出已完成对所述硬件装置的韧体的更新,则执行所述将所述硬件装置的所有I/O接口进行锁存。
4.根据权利要求1所述的方法,其特征在于,所述将所述硬件装置的所有I/O接口进行锁存,包括:
启动所述硬件装置中内置的I/O接口逻辑锁功能,并执行锁存程序以利用所述I/O接口逻辑锁功能将所述硬件装置的所有I/O接口进行锁存;其中,所述锁存程序为预先配置的,用于应用所述I/O接口逻辑锁功能的程序。
5.根据权利要求4所述的方法,其特征在于,所述解除对所述硬件装置的所有I/O接口的锁存,包括:
执行锁存程序以利用所述I/O接口逻辑锁功能解除对所述硬件装置的所有I/O接口的锁存。
6.一种韧体的更新装置,其特征在于,包括:
获取单元,用于获取硬件装置的韧体更新数据;
更新单元,用于根据所述韧体更新数据,更新所述硬件装置的韧体;
锁存单元,用于将所述硬件装置的所有I/O接口进行锁存;
启动单元,用于启动所述硬件装置更新后的韧体;
解除单元,用于解除对所述硬件装置的所有I/O接口的锁存。
7.根据权利要求6所述的装置,其特征在于,所述更新单元,包括:
更新子单元,将所述韧体更新数据写入所述硬件装置的可程式化只读内存中,替换所述硬件装置的可程式化只读内存中的韧体。
8.根据权利要求7所述的装置,其特征在于,还包括:
判断单元,用于判断是否完成对所述硬件装置的韧体的更新;其中,若所述判断单元判断出已完成对所述硬件装置的韧体的更新,则所述锁存单元将所述硬件装置的所有I/O接口进行锁存。
9.根据权利要求6所述的装置,其特征在于,所述锁存单元,包括:
锁存子单元,用于启动所述硬件装置中内置的I/O接口逻辑锁功能,并执行锁存程序以利用所述I/O接口逻辑锁功能将所述硬件装置的所有进行锁存;其中,所述锁存程序为预先配置的,用于应用所述I/O接口的逻辑锁功能的程序。
10.根据权利要去9所述的装置,其特征在于,所述解除单元,包括:
解除子单元,用于执行锁存程序以利用所述I/O接口逻辑锁功能解除对所述硬件装置的所有I/O接口的锁存。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910560960.6A CN110427205A (zh) | 2019-06-26 | 2019-06-26 | 韧体的更新方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910560960.6A CN110427205A (zh) | 2019-06-26 | 2019-06-26 | 韧体的更新方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110427205A true CN110427205A (zh) | 2019-11-08 |
Family
ID=68409564
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910560960.6A Withdrawn CN110427205A (zh) | 2019-06-26 | 2019-06-26 | 韧体的更新方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110427205A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113703816A (zh) * | 2020-05-19 | 2021-11-26 | 佛山市顺德区顺达电脑厂有限公司 | 服务器装置及其避免韧体无法再次更新之方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101211263A (zh) * | 2006-12-29 | 2008-07-02 | 佛山市顺德区顺达电脑厂有限公司 | 远程更新韧体的系统及其方法 |
CN103514002A (zh) * | 2012-06-26 | 2014-01-15 | 冠捷投资有限公司 | 具有韧体更新功能的电子装置及韧体更新方法 |
CN109086634A (zh) * | 2018-07-25 | 2018-12-25 | 浪潮(北京)电子信息产业有限公司 | 一种bmc芯片管理方法、系统及bmc芯片和存储介质 |
-
2019
- 2019-06-26 CN CN201910560960.6A patent/CN110427205A/zh not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101211263A (zh) * | 2006-12-29 | 2008-07-02 | 佛山市顺德区顺达电脑厂有限公司 | 远程更新韧体的系统及其方法 |
CN103514002A (zh) * | 2012-06-26 | 2014-01-15 | 冠捷投资有限公司 | 具有韧体更新功能的电子装置及韧体更新方法 |
CN109086634A (zh) * | 2018-07-25 | 2018-12-25 | 浪潮(北京)电子信息产业有限公司 | 一种bmc芯片管理方法、系统及bmc芯片和存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113703816A (zh) * | 2020-05-19 | 2021-11-26 | 佛山市顺德区顺达电脑厂有限公司 | 服务器装置及其避免韧体无法再次更新之方法 |
CN113703816B (zh) * | 2020-05-19 | 2023-06-06 | 佛山市顺德区顺达电脑厂有限公司 | 服务器装置及其避免韧体无法再次更新之方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102609286B (zh) | 一种基于处理器控制的fpga配置程序远程更新系统及其方法 | |
CN101030140A (zh) | 一种对固件程序进行在线升级的装置及其方法 | |
EP4239469A2 (en) | Gateway device, firmware update method, and control program | |
CN104850762B (zh) | 防止计算机的动作不良的方法、计算机程序以及计算机 | |
CN102236621B (zh) | 计算机接口信息配置系统及方法 | |
CN102221864B (zh) | 计算机及其计算机开机启动管理系统和方法 | |
CN111694760B (zh) | 服务器系统、快闪存储器模块及更新固件映像文件的方法 | |
JP3629517B2 (ja) | 情報処理装置のブートデバイス切替方法。 | |
CN106055066B (zh) | 计算机启动控制装置及计算机的启动方法 | |
JP5144409B2 (ja) | インバータ制御システム,インバータ装置の周辺機器 | |
CN106406955A (zh) | RSU设备bootloader程序升级的方法、装置 | |
CN110427205A (zh) | 韧体的更新方法及装置 | |
CN107566169A (zh) | 一种基于openwrt的固件升级方法及路由器 | |
KR20020026814A (ko) | 컴퓨터 시스템의 중지 및 재개 동작을 위한 방법 및 장치 | |
CN109324918A (zh) | 应用程序异常的处理方法及装置、终端及存储介质 | |
CN109766113B (zh) | 一种固态硬盘控制器的固件更新方法及装置 | |
CN111480142A (zh) | 在运行期间对软件密集型系统的无缝和安全升级 | |
JP5350723B2 (ja) | インバータ装置 | |
US11552621B2 (en) | Processing system, related integrated circuit and method | |
CN104182256A (zh) | 一种嵌入式设备程序更新方法 | |
JP5126686B2 (ja) | 情報処理装置、情報処理装置の動作方法及びそのプログラム | |
CN105183580A (zh) | 一种引导程序的存储方法、故障恢复方法及设备 | |
JP4279593B2 (ja) | エレベーターの制御装置 | |
CN107341024A (zh) | 系统升级方法和系统升级装置 | |
JP6922237B2 (ja) | プログラマブルコントローラの製造方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20191108 |