CN103677862A - Epld程序的升级方法及装置 - Google Patents
Epld程序的升级方法及装置 Download PDFInfo
- Publication number
- CN103677862A CN103677862A CN201210323396.4A CN201210323396A CN103677862A CN 103677862 A CN103677862 A CN 103677862A CN 201210323396 A CN201210323396 A CN 201210323396A CN 103677862 A CN103677862 A CN 103677862A
- Authority
- CN
- China
- Prior art keywords
- program
- upgraded
- epld
- storage area
- version
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种EPLD程序的升级方法及装置,其中,该方法包括:在EPLD的存储器中除EPLD初始程序的第一存储区域之外的第二存储区域写入待升级程序;从第二存储区域加载待升级程序。通过本发明,提高了EPLD在线升级的可靠性,降低了EPLD升级的成本,进而提高了EPLD的可维护性。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种EPLD程序的升级方法及装置。
背景技术
在通信领域中的很多嵌入式装置或设备以及系统都使用了编程灵活、开发工具先进、设计制造成本低、开发周期短的可擦除可编程逻辑器件(Erasable Programmable Logic Device,简称为EPLD)。图1是相关技术中的嵌入式系统的示意图,在图1所示的系统中,EPLD自带一个存储器,用以存储EPLD出产时结烧的初始程序。
一般情况下,EPLD器件的软件程序在出厂的时候进行烧结,在使用过程中基本不会对软件程序进行改动。但是,在某些情况下需要对EPLD的软件进行升级,例如,由设计失误或者进行EPLD软件功能升级,而对EPLD的软件升级的过程较为繁琐。在相关技术中,存在以下几种的对EPLD软件程序升级的方法。
第一,使用联合测试行动组织(Joint Test Action Group,简称为JTGA)烧结线缆进行软件程序的升级。该方法装置设备的应用软件程序简单,不需提供在线升级功能。然而,该升级方法升级不便捷,升级人员必须到现场使用烧结线缆对装置设备进行操作,可维护性差同时增加了装置设备的升级成本。
第二,通过中央处理器(Central Processing Unit,简称为CPU)的输出/输出接口(Input/Output,简称为I/O)模拟联合测试行动组织JTAG的下载信号,将预先编译好的可擦除编程逻辑器件EPLD程序文件通过文件传输协议下载到系统的闪存(Flash EEPROMMemory,简称为FLASH)中,然后通过CPU读取存储于FLASH中的EPLD文件,将其复制到系统随机存取存储器(Random Access Memory,简称为RAM)中,通过JTAG总线将EPLD文件下载到EPLD中。将该方法使用于EPLD的在线升级,在一定程度上降低了设备装置升级维护的成本。但是,模拟JTGA过程复杂,并且没有考虑升级过程中的异常情况,例如,在线升级过程中出现断电、设备复位等情况,一旦在用模拟JTGA升级EPLD软件程序的过程中出现上述异常,导致嵌入式系统瘫痪,无可避免的要使用到JTGA烧结电缆。
第三,将EPLD加载到备份区,然后将备份区的内容加载到工作区,在判断加载完成的情况下,从工作区开始运行,完成在线升级。该方法在提高便捷性的同时,在一定程度上提高升级的可靠性。然而,在不同区域之间的拷贝操作降低了性能,增加了拷贝错误风险。同时,没有考虑文件本身出错的情况。
综上所述,在相关技术中,EPLD软件程序升级方法存在操作成本高、维护不便以及可靠性差等问题。
发明内容
针对相关技术中EPLD软件程序升级操作成本高、维护不便以及可靠性差的问题,本发明提供了一种EPLD程序的升级方法及装置,以至少解决上述问题。
根据本发明的一个方面,提供了一种EPLD程序的升级方法,包括:在可擦除可编程逻辑器件EPLD的存储器中除EPLD初始程序的第一存储区域之外的第二存储区域写入待升级程序;从所述第二存储区域加载所述待升级程序。
优选地,在EPLD的存储器中除EPLD初始程序的存储区域之外的第二存储区域写入待升级程序,包括:清除程序写入成功标示;将所述待升级程序写入所述第二存储区域;所述待升级的程序写入成功的情况下,写入程序写入成功标示。
优选地,在写入程序写入成功标示之前,还包括:判断所述第二存储区域中的程序与所述待升级程序是否一致;如果是,则确定已正确写入的所述待升级程序。
优选地,从所述第二存储区域加载所述待升级程序,包括:比较所述初始程序与所述待升级程序的版本;在所述待升级程序的版本高于所述初始程序的版本时,从所述第二存储区域加载所述待升级程序。
优选地,比较所述初始程序与所述待升级程序的版本之前,还包括:从所述第一存储区域加载所述待升级程序。
优选地,从所述第二存储区域加载所述待升级程序,包括:判断当前加载是否成功;如果否,判断当前加载次数是否大于预设加载次数,如果否,则重新加载所述待升级程序,直到加载成功或者加载次数超过所述预设加载次数。
根据本发明的另一方面,提供了一种EPLD程序的升级装置,包括:写入模块,用于在可擦除可编程逻辑器件EPLD的存储器中除EPLD初始程序的第一存储区域之外的第二存储区域写入待升级程序;加载模块,用于从所述第二存储区域加载所述待升级程序。
优选地,所述写入模块包括:清除单元,用于清除程序写入成功标示;第一写入单元,用于将所述待升级程序写入所述第二存储区域;第二写入单元,用于在所述待升级程序写入成功的情况下,写入程序写入成功标示。
优选地,所述加载模块包括:比较单元,用于比较所述初始程序与所述待升级程序的版本;加载单元,用于在所述待升级程序的版本高于所述初始程序的版本时,从所述第二存储区域加载所述待升级程序。
优选地,所述加载单元,还用于在比较所述初始程序与所述待升级程序的版本之前,从所述第一存储区域加载所述待升级程序。
根据本发明的又一方面,提供了一种EPLD程序的升级装置,包括:第一存储装置,用于存储EPLD的初始程序;第二存储装置,用于存储EPLD的待升级程序。
优选地,上述装置还包括:第三存储装置,用于存储EPLD程序的升级标识数据。
优选地,所述第一存储装置和所述第二存储装置及第三存储装置为所述EPLD的同一存储器中不同的存储区域。
通过本发明,在EPLD的存储器中除EPLD初始程序的存储区域之外的第二存储区域写入待升级程序,从第二存储区域加载待升级程序,提高了EPLD在线升级的可靠性,降低了EPLD升级的成本,进而提高了EPLD的可维护性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是相关技术中的嵌入式系统的示意图;
图2是根据本发明是实施例的EPLD程序的升级装置的结构框图一;
图3是根据本发明实施例优选的EPLD程序的升级装置的结构框图;
图4是根据本发明实施例优选的嵌入式系统的示意图;
图5是根据本发明实施例的EPLD程序的升级装置的结构框图二;
图6是根据本发明实施例优选的写入模块的结构框图;
图7是根据本发明实施例优选的加载模块的结构框图;
图8是根据本发明实施例的EPLD程序的升级方法的流程图;
图9是根据本发明实施例的嵌入式装置启动的流程图;
图10是根据本发明实施例的将待升级的EPLD程序写入第二存储装置的方法的流程图;
图11是根据本发明实施例的EPLD上电时加载EPLD程序的方法的流程图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
根据本发明实施例,提供了一种EPLD程序的升级装置,至少可以提高EPLD程序升级的便捷性和可靠性。
图2是根据本发明是实施例的EPLD程序的升级装置的结构框图一,如图2所示,本发明实施例的EPLD主要包括:第一存储装置10和第二存储装置20。其中,第一存储装置10,用于存储EPLD的初始程序;第二存储装置20,用于存储EPLD的待升级程序。
在本发明实施例的一个优选实施方式中,第一存储装置10和第二存储装置20为EPLD的同一存储器中不同的存储区域。优选地,EPLD的存储器可以是FLASH。
图3是根据本发明实施例优选的EPLD程序的升级装置的结构框图,在如图3所示的EPLD程序的升级装置中,该EPLD程序的升级装置还可以包括:第三存储装置30,用于存储EPLD程序的升级标识数据。优选地,第三存储装置30还可以用于存储EPLD的用户数据,例如,EPLD程序的本版信息等。优选地,第一存储装置10和第二存储装置20以及第三存储装置30可以为EPLD的同一存储器中不同的存储区域。
图4是根据本发明实施例优选的嵌入式系统的示意图,在如图4所示的系统中,EPLD自带一个FLASH存储器,该存储器可以包括:第一存储区域(AREA1)、第二存储区域(AREA2)和用户数据区域。其中,第一存储区域即第一存储装置10,用于存储EPLD出产时烧结的初始程序;第二存储区域即第二存储装置20,用于存储EPLD带升级程序;用户数据区即第三存储装置30,用于存储用户数据,用户数据可以包括升级标识信息和待升级程序的版本信息。
在需要对EPLD的程序升级时,嵌入式系统可以通过系统的中CPU将EPLD的待升级程序写入第二存储装置20或第二存储区域,EPLD上电后,从第二存储装置20或第二存储区域加载待升级程序。
通过本发明实施例,在EPLD程序的升级装置设置第一存储装置10和第二存储装置20,第一存储装置10用于存储EPLD的初始程序,第二存储装置20用于存储EPLD的待升级程序。使得需要对EPLD的程序进行升级时,将EPLD的待升级程序写入第二存储装置20,EPLD上电时可以从第二存储装置20中加载升级后的程序,提高了EPLD在线升级的可靠性,降低了EPLD升级的成本,提高了EPLD的可维护性,并且,在第二存储装置20中存储待升级程序,即使待升级程序写入失败,也不会导致初始程序被损坏,提高了EPLD程序的升级的稳定性。
根据本发明实施例,还提供了一种EPLD程序的升级装置,用以实现将EPLD的待升级程序写入第二存储装置20或第二存储区域,并在加载EPLD程序时,从第二存储装置20或第二存储区域记载待升级程序。在本发明实施例中,以第一存储装置10和第二存储装置20为EPLD的同一存储器中不同的存储区域为例,对本发明实施例提供的EPLD程序的升级装置进行描述。
图5是根据本发明实施例的EPLD程序的升级装置的结构框图二,如图5所示,该装置主要包括:写入模块40和加载模块50。其中,写入模块40,用于在EPLD的存储器中除EPLD初始程序的第一存储区域之外的第二存储区域写入待升级程序;加载模块50,与写入模块40相耦合,用于从第二存储区域加载待升级程序。
通过本发明实施例,写入模块40在EPLD的存储器中除EPLD初始程序的存储区域之外的第二存储区域写入待升级程序,并由加载模块50从第二存储区域加载待升级程序,提高了EPLD在线升级的可靠性,降低了EPLD升级的成本,提高了EPLD的可维护性。
图6是根据本发明实施例优选的写入模块的结构框图,如图6所示,写入模块40可以包括:清除单元402,用于清除程序写入成功标示;第一写入单元404,与清除单元402相耦合,用于将待升级程序写入第二存储区域;第二写入单元406,与第一写入单元404相耦合,用于在待升级程序写入成功的情况下,写入程序写入成功标示。通过本优选实施方式,避免了待升级程序写入失败,而程序写入成功标示有效,导致在加载程序时EPLD程序加载失败。
在实际应用中,程序写入成功标示可以存储在用户数据存储区域,写入待升级程序时,清除单元402清除用户数据存储区域中存储的程序写入成功标示,并在写成程序成功后,在用户数据存储区域写入程序写入成功标示。
在本发明实施例的一个优选实施方式中,在第二写入单元406写入程序写入成功标示之前,还可以判断第二存储区域中的程序与待升级程序是否一致,如果是,则确定已正确写入的待升级程序,此时,第二写入单元406可以写入程序写入成功标示。同时,在实际应用中,第一写入单元404或第二写入单元406还用于写入待升级程序的版本信息,优选地,第一写入单元404或第二写入单元406用于将待升级程序的版本信息写入用户数据存储区域。
图7是根据本发明实施例优选的加载模块的结构框图,如图7所示,加载模块50可以包括:比较单元502,用于比较初始程序与待升级程序的版本;加载单元504,与比较单元502相耦合,用于在待升级程序的版本高于初始程序的版本时,从第二存储区域加载待升级程序。
在实际应用中,加载单元504还用于在待升级程序的版本低于初始程序的版本时,加载EPLD的初始程序。
优选地,加载单元504,还用于在比较初始程序与待升级程序的版本之前,从第一存储区域加载待升级程序。也就是说,EPLD可以先加载初始程序,在运行初始程序时,触发比较单元502比较初始程序与待升级程序的版本,加载单元504在待升级程序的版本高于初始程序的版本时,从第二存储区域加载待升级程序。
在本发明实施例的一个优选实施方式中,加载单元504还用于在从第二存储区域加载待升级程序时,判断当前加载是否成功;如果否,则判断当前加载次数是否大于预设加载次数,如果否,则重新加载待升级程序,直到加载成功或者加载次数超过预设加载次数。
根据本发明实施例,还提供了一种EPLD程序的升级方法,用以在本发明实施例提供的EPLD及其程序的升级装置中实现EPLD程序的升级。
图8是根据本发明实施例的EPLD程序的升级方法的流程图,如图8所示,该方法主要包括步骤S802至步骤S804。
步骤S802,在EPLD的存储器中除EPLD初始程序的第一存储区域之外的第二存储区域写入待升级程序。
步骤S804,从第二存储区域加载待升级程序。
通过本发明实施例,在EPLD的存储器中除EPLD初始程序的存储区域之外的第二存储区域写入待升级程序,从第二存储区域加载待升级程序,实现了方便快捷地对EPLD进行升级,并且,初始程序和待升级程序存储在不同的存储区域,即使在待升级程序写入失败的情况下,也不会损坏EPLD的初始程序;同时,从第二存储区域加载待升级程序,可以避免相关技术中,将待升级程序拷贝到初始程序的存储区域时产生程序损坏的问题,提高了EPLD程序升级的可靠性,提高了EPLD的可维护性。此外,采用本发明实施例的方法,避免了使用烧结进行EPLD程序的升级,降低了EPLD程序升级的成本。
在本发明实施例的一个优选实施方式中,在EPLD的存储器中除EPLD初始程序的存储区域之外的第二存储区域写入待升级程序时,可以清除程序写入成功标示,将待升级程序写入第二存储区域,并在待升级的程序写入成功的情况下,写入程序写入成功标示。在实际应用中,程序写入成功标示可以存储在用户数据存储区域。通过本优选实施方式,在写入待升级程序前,清除程序写入成功标示,避免了因程序写入失败,程序写入成功标示有效,而导致EPLD在加载程序时,加载写入失败的待升级程序,提高了EPLD程序升级的可靠性。
进一步的,在写入程序写入成功标示之前,还可以确定是否已正确写入待升级程序,如果已正确写入待升级程序,则可以写入程序写入成功标示,否则,写入程序写入失败标示。在本发明实施例的一个优选实施方式中,确定是否已正确写入待升级程序时,可以判断第二存储区域中的程序与待升级程序是否一致;如果是,则确定已正确写入的待升级程序。例如,在待升级程序写入完成后,可以读取第二存储区域中的程序,将读取到的程序与写入前的待升级程序进行比较,判断是否一致,如果是,则确定已正确写入待升级程序,否则,待升级程序写入不正确。
在实际应用中,如果EPLD的存储器设置了写保护,那么在写入待升级程序之前还需要关闭写保护,以完成将待升级程序写入第二存储区域。并且,在待升级程序正确写入后,为了避免意外写入内容损坏待升级程序,在完成写入操作后,应该打开EPLD的存储器的写保护。
在本发明实施例的一个优选实施方式中,从第二存储区域加载待升级程序时,可以比较初始程序与待升级程序的版本,在待升级程序的版本高于初始程序的版本时,从第二存储区域加载待升级程序。优选地,可以在用户数据存储区域写入初始程序和待升级程序的版本信息,当然,也可以将版本信息写入其他存储区域。
优选地,在比较初始程序与待升级程序的版本之前,可以先从第一存储区域加载待升级程序。也就是说,EPLD可以先加载初始程序,在运行初始程序时,比较初始程序与待升级程序的版本,在待升级程序的版本高于初始程序的版本的情况下,从第二存储区域加载待升级程序。
进一步的,在本发明实施例的一个优选实施方式中,从第二存储区域加载待升级程序时,可以判断当前加载是否成功,如果否,判断当前加载次数是否大于预设加载次数,如果否,则重新加载待升级程序,直到加载成功或者加载次数超过预设加载次数。通过本优选实施方式,在记载待升级升序时,如果加载不成功,则进行多次加载尝试,这样操作可以避免在升级程序写入成功,而且在确认正确写入情况下,由于EPLD程序本身不可运行导致加载后不可运行的问题,提高了EPLD程序加载的可靠性。
下面以如图4所示的嵌入式系统为例,对本发明实施例的上述方法进行具体描述。
在图4中的EPLD中,EPLD自带闪存,该闪存区分为两个区域,AREA1(第一存储区域)和AREA2(第二存储区域),EPLD分别可以从这两个区域进行启动,进而允许CPU读取BootFlash(存放Boot程序的非易失性存储器)内容,启动BootLoader(CPU上电开始时运行的程序)程序,引导操作系统。为了EPLD实现升级的可靠性,充分利用两个区域的巧妙跳转进行升级和保护,从而达到可靠升级的目的。
图9是根据本发明实施例的EPLD启动的流程图,如图9所示,EPLD在上电后,加载EPLD程序,在本发明实施例中,EPLD可以从两个存储区域加载版本高的程序,程序加载完成后,运行引导程序(BootLoader)。
在本发明实施例中,将出厂版本烧入AREA1。将要升级的EPLD程序通过CPU写入AREA2,并将待升级程序的版本号写入用户数据区。待升级程序写入AREA2后,将程序写入成功标示写入用户数据区,然后CPU执行复位操作。EPLD重新启动,读取当前的运行的EPLD程序的版本信息。比较保存在用户数据区的版本信息、加载次数和当前的版本信息确定是否加载AREA2的程序。如果是,则加载AREA2的程序,并修改相关用户数据区的数据信息。如果否,则不尝试加载,即运行AREA1中的程序,即EPLD原始的程序。程序加载完成后,运行BootFlash的启动引导程序。
图10示出了在AREA2中写入待升级升序的流程,图11示出了EPLD加载AREA1和AREA2中的程序的流程,下面结合图10和图11对本发明实施例的EPLD在线升级的方法进行详细描述。
图10是根据本发明实施例的将待升级的EPLD程序写入第二存储装置的方法的流程图,如图10所示,该方法包括步骤S1002至步骤S1020:
步骤S1002,关闭闪存写保护;
步骤S1004,清除程序写入成功标示,以避免在升级过程中出现问题,EPLD还继续加载AREA2的程序;
步骤S1006,将待升级EPLD程序写入AREA2;
步骤S1008,判断程序写入是否成功,如果是,执行步骤S1010,否则,执行步骤S1020;
步骤S1010,在写入程序成功的情况下,将AREA2的内容与写入前的程序进行比较,避免在写入闪存过程中出现错误;
步骤S1012,判断AREA2的内容与写入前的程序是否一致,如果是,进入步骤S1014,否则,进入步骤S1020;
步骤S1014,写入待升级程序版本号;
步骤S1016,写入程序写入成功标示;
步骤S1018,打开闪存写保护,避免意外改写,结束;
步骤S10120,返回错误,结束。
图11是根据本发明实施例的EPLD上电时加载EPLD程序的方法的流程图,如图11所示,该方法包括步骤S1102至步骤S1022:
步骤S1102,EPLD加载AREA1的程序版本;
步骤S1104,EPLD读当前版本的版本号R1;
步骤S1106,EPLD从闪存中读取保存于闪存的待升级的程序版本号R2;
步骤S1108,判断R1是否小于R2,如果是,进入步骤S1110,否则,程序为版本为当前最新,不需要升级操作,进入步骤S1120;
步骤S1110,EPLD读取曾经尝试加载AREA2的次数T(默认值为0);
步骤S1112,判断T是否小于设置的最大尝试次数Total,如果是,进入步骤S1114,否则,从当前R1版本EPLD启动,进入步骤S1120;
步骤S1114,将计数次数做加1操作;
步骤S1116,尝试加载AREA2程序;
步骤S1118,判断是否加载成功,如果是,进入步骤S1120,否则,返回步骤S1110;
步骤S1120,清除曾经尝试次数;
步骤S1122,运行BootLoader。
通过本发明实施例,可以完成EPLD程序的在线升级,如果在升级过程中出现掉电,设备装置复位和升级程序本身不可用等情况,也可以从AREA1启动,不会导致设备装置瘫痪的情况,极大地提高了整个装置设备升级的安全性和可维护性,降低了设备维护成本。
从以上的描述中,可以看出,本发明实现了如下技术效果:通过在EPLD的存储器中除EPLD初始程序的第一存储区域之外的第二存储区域写入待升级程序,从第二存储区域加载待升级程序,实现了方便快捷地对EPLD进行升级,并且,初始程序和待升级程序存储在不同的存储区域,即使在待升级程序写入失败的情况下,也不会损坏EPLD的初始程序;同时,从第二存储区域加载待升级程序,可以避免相关技术中,将待升级程序拷贝到初始程序的存储区域时产生程序损坏的问题,提高了EPLD程序升级的可靠性,提高了EPLD的可维护性。此外,采用本发明实施例的方法,避免了使用烧结线缆进行EPLD程序的升级,降低了EPLD程序升级的成本。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (13)
1.一种EPLD程序的升级方法,其特征在于,包括:
在可擦除可编程逻辑器件EPLD的存储器中除EPLD初始程序的第一存储区域之外的第二存储区域写入待升级程序;
从所述第二存储区域加载所述待升级程序。
2.根据权利要求1所述的方法,其特征在于,在EPLD的存储器中除EPLD初始程序的存储区域之外的第二存储区域写入待升级程序,包括:
清除程序写入成功标示;
将所述待升级程序写入所述第二存储区域;
所述待升级的程序写入成功的情况下,写入程序写入成功标示。
3.根据权利要求2所述的方法,其特征在于,在写入程序写入成功标示之前,还包括:
判断所述第二存储区域中的程序与所述待升级程序是否一致;
如果是,则确定已正确写入的所述待升级程序。
4.根据权利要求1所述的方法,其特征在于,从所述第二存储区域加载所述待升级程序,
包括:
比较所述初始程序与所述待升级程序的版本;
在所述待升级程序的版本高于所述初始程序的版本时,从所述第二存储区域加载所述待升级程序。
5.根据权利要求4所述的方法,其特征在于,比较所述初始程序与所述待升级程序的版本之前,还包括:
从所述第一存储区域加载所述待升级程序。
6.根据权利要求1至5中任一项所述的方法,其特征在于,从所述第二存储区域加载所述待升级程序,包括:
判断当前加载是否成功;
如果否,判断当前加载次数是否大于预设加载次数,如果否,则重新加载所述待升级程序,直到加载成功或者加载次数超过所述预设加载次数。
7.一种EPLD程序的升级装置,其特征在于,包括:
写入模块,用于在可擦除可编程逻辑器件EPLD的存储器中除EPLD初始程序的第一存储区域之外的第二存储区域写入待升级程序;
加载模块,用于从所述第二存储区域加载所述待升级程序。
8.根据权利要求7所述的装置,其特征在于,所述写入模块包括:
清除单元,用于清除程序写入成功标示;
第一写入单元,用于将所述待升级程序写入所述第二存储区域;
第二写入单元,用于在所述待升级程序写入成功的情况下,写入程序写入成功标示。
9.根据权利要求7或8所述的装置,其特征在于,所述加载模块包括:
比较单元,用于比较所述初始程序与所述待升级程序的版本;
加载单元,用于在所述待升级程序的版本高于所述初始程序的版本时,从所述第二存储区域加载所述待升级程序。
10.根据权利要求9所述的装置,其特征在于,所述加载单元,还用于在比较所述初始程序与所述待升级程序的版本之前,从所述第一存储区域加载所述待升级程序。
11.一种可擦除可编程逻辑器件EPLD程序的升级装置,其特征在于,包括:
第一存储装置,用于存储EPLD的初始程序;
第二存储装置,用于存储EPLD的待升级程序。
12.根据权利要求11所述的装置,其特征在于,还包括:
第三存储装置,用于存储EPLD程序的升级标识数据。
13.根据权利要求12所述的装置,其特征在于,所述第一存储装置和所述第二存储装置及所述第三存储装置为所述EPLD的同一存储器中不同的存储区域。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210323396.4A CN103677862A (zh) | 2012-09-04 | 2012-09-04 | Epld程序的升级方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210323396.4A CN103677862A (zh) | 2012-09-04 | 2012-09-04 | Epld程序的升级方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103677862A true CN103677862A (zh) | 2014-03-26 |
Family
ID=50315528
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210323396.4A Pending CN103677862A (zh) | 2012-09-04 | 2012-09-04 | Epld程序的升级方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103677862A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104679556A (zh) * | 2015-02-06 | 2015-06-03 | 深圳市硅格半导体有限公司 | 应用程序烧录方法及系统 |
CN105653313A (zh) * | 2015-12-14 | 2016-06-08 | 重庆川仪自动化股份有限公司 | 一种程序更新方法及装置 |
CN105808283A (zh) * | 2014-12-31 | 2016-07-27 | 海洋王照明科技股份有限公司 | 一种适用于智能照明设备的程序更新方法及装置 |
CN106598586A (zh) * | 2016-12-08 | 2017-04-26 | 上海贝岭股份有限公司 | 用于mcu芯片的程序升级方法 |
CN106874032A (zh) * | 2017-01-04 | 2017-06-20 | 青岛海信宽带多媒体技术有限公司 | 光模块固件升级的方法、装置及光模块 |
CN108255504A (zh) * | 2016-12-27 | 2018-07-06 | 纬颖科技服务股份有限公司 | 在一储存系统中更新软件的方法及储存系统 |
CN108418707A (zh) * | 2018-01-31 | 2018-08-17 | 武汉虹信通信技术有限责任公司 | 通信系统中双cpld互相在线备份升级方法及业务单板 |
CN112083941A (zh) * | 2020-08-12 | 2020-12-15 | 国电南瑞科技股份有限公司 | 一种动态加载的安全稳定控制策略更新方法及系统 |
CN112394965A (zh) * | 2019-08-13 | 2021-02-23 | 比亚迪股份有限公司 | 电池管理系统升级和运行方法,控制器,电池管理系统及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101169728A (zh) * | 2007-11-22 | 2008-04-30 | 中兴通讯股份有限公司 | 双引导启动装置及方法 |
US7772881B1 (en) * | 2006-09-29 | 2010-08-10 | Altera Corporation | Method and apparatus for in-system programmability |
CN101807149A (zh) * | 2009-02-18 | 2010-08-18 | 联咏科技股份有限公司 | 可安全复原的固件更新方法及其嵌入式电子装置 |
-
2012
- 2012-09-04 CN CN201210323396.4A patent/CN103677862A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7772881B1 (en) * | 2006-09-29 | 2010-08-10 | Altera Corporation | Method and apparatus for in-system programmability |
CN101169728A (zh) * | 2007-11-22 | 2008-04-30 | 中兴通讯股份有限公司 | 双引导启动装置及方法 |
CN101807149A (zh) * | 2009-02-18 | 2010-08-18 | 联咏科技股份有限公司 | 可安全复原的固件更新方法及其嵌入式电子装置 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105808283A (zh) * | 2014-12-31 | 2016-07-27 | 海洋王照明科技股份有限公司 | 一种适用于智能照明设备的程序更新方法及装置 |
CN104679556A (zh) * | 2015-02-06 | 2015-06-03 | 深圳市硅格半导体有限公司 | 应用程序烧录方法及系统 |
CN105653313A (zh) * | 2015-12-14 | 2016-06-08 | 重庆川仪自动化股份有限公司 | 一种程序更新方法及装置 |
CN106598586A (zh) * | 2016-12-08 | 2017-04-26 | 上海贝岭股份有限公司 | 用于mcu芯片的程序升级方法 |
CN108255504A (zh) * | 2016-12-27 | 2018-07-06 | 纬颖科技服务股份有限公司 | 在一储存系统中更新软件的方法及储存系统 |
CN106874032A (zh) * | 2017-01-04 | 2017-06-20 | 青岛海信宽带多媒体技术有限公司 | 光模块固件升级的方法、装置及光模块 |
CN108418707A (zh) * | 2018-01-31 | 2018-08-17 | 武汉虹信通信技术有限责任公司 | 通信系统中双cpld互相在线备份升级方法及业务单板 |
CN108418707B (zh) * | 2018-01-31 | 2020-12-01 | 武汉虹信科技发展有限责任公司 | 通信系统中双cpld互相在线备份升级方法及业务单板 |
CN112394965A (zh) * | 2019-08-13 | 2021-02-23 | 比亚迪股份有限公司 | 电池管理系统升级和运行方法,控制器,电池管理系统及存储介质 |
CN112083941A (zh) * | 2020-08-12 | 2020-12-15 | 国电南瑞科技股份有限公司 | 一种动态加载的安全稳定控制策略更新方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103677862A (zh) | Epld程序的升级方法及装置 | |
CN103299276B (zh) | 嵌入式装置的软件更新过程 | |
CN102270144B (zh) | 嵌入式网络设备及其更新固件的方法 | |
CN102385535B (zh) | 处理从非易失性存储器进行设备引导期间的错误 | |
CN105511911B (zh) | 系统固件升级包的生成方法及装置 | |
CN102622280A (zh) | 一种基于双文件系统的软件版本升级的控制方法及装置 | |
EP2329366B1 (en) | Performing a pre-update on a non volatile memory | |
CN110096300B (zh) | 一种fpga程序文件备份管理系统、运行方法及升级方法 | |
CN103902399B (zh) | 软件系统修复处理方法及装置 | |
CN102360304A (zh) | 嵌入式微处理器系统及其固件更新方法 | |
CN101923473A (zh) | 嵌入式电子装置及更新其固件的方法 | |
CN102063317A (zh) | 一种嵌入式设备重新烧写应用程序的方法及系统 | |
CN100456244C (zh) | 基于USB Host的引导、升级和维护的仪器及其方法 | |
CN108170456B (zh) | 电子设备的固件升级方法及装置 | |
CN105677409B (zh) | 一种系统升级方法及装置 | |
CN103559098A (zh) | 智能卡测试号码控制方法、装置及系统 | |
CN108304140B (zh) | 闪存数据管理方法、装置及微控制器 | |
CN103488516A (zh) | 一种系统修复方法及电子设备 | |
US8689207B2 (en) | Performing an in-place update of an operating storage device | |
CN112565891B (zh) | 基于智能电视不同存储器件的密钥烧录和密钥匹配方法 | |
CN104636574A (zh) | 终端设备升级方法及终端设备 | |
CN105975300A (zh) | 系统升级方法和装置 | |
CN114996717A (zh) | 一种防止误擦除的升级程序设计方法 | |
CN109117190A (zh) | 系统启动方法及装置 | |
CN113535468A (zh) | Dsp芯片的启动方法和启动装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140326 |
|
RJ01 | Rejection of invention patent application after publication |