CN118113321A - Fpga设备升级方法、电子设备和计算机可读存储介质 - Google Patents
Fpga设备升级方法、电子设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN118113321A CN118113321A CN202311580656.0A CN202311580656A CN118113321A CN 118113321 A CN118113321 A CN 118113321A CN 202311580656 A CN202311580656 A CN 202311580656A CN 118113321 A CN118113321 A CN 118113321A
- Authority
- CN
- China
- Prior art keywords
- upgrade
- upper computer
- data
- fpga
- response
- 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
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000012795 verification Methods 0.000 claims abstract description 49
- 230000004044 response Effects 0.000 claims abstract description 37
- 238000004590 computer program Methods 0.000 claims description 7
- 238000012544 monitoring process Methods 0.000 claims description 4
- 230000006854 communication Effects 0.000 description 13
- 230000008569 process Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Stored Programmes (AREA)
Abstract
本申请涉及一种FPGA设备升级方法、电子设备和计算机可读存储介质,其中,该方法应用于FPGA设备,FPGA设备与上位机配合,FPGA设备升级方法包括:接收上位机发送的升级请求,对升级请求的数据包进行解析和校验,向上位机发送第一校验结果;接收上位机响应于第一校验结果所发送的升级固件数据,对升级固件数据进行解析和校验,并向上位机发送第二校验结果,且响应于校验成功,将解析后的升级固件数据存储在FLASH中,形成升级固件;接收上位机响应于第二校验结果所发送的升级包结束信息,对升级包结束信息进行解析,对升级包结束信息和升级固件进行校验,向上位机发送第三校验结果,响应于对升级包结束信息和升级固件校验成功,完成升级。
Description
技术领域
本申请涉及FPGA设备领域,特别是涉及FPGA设备升级方法、电子设备和计算机可读存储介质。
背景技术
现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)广泛应用于机器视觉领域,尤其是用于工业相机的主控制器。在发现产品固件存在缺陷或者功能升级时,必须对其进行非拆盖的固件更新升级,FPGA的固件存储于FLASH中。
目前的FPGA设备升级方法,主要通过上位机计算机的串口或者网口与FPGA连接,通过上位机请求升级,FPGA对FLASH的应用固件区域进行擦除,擦除完成后,由上位机将升级包传输至FPGA,完成升级。
现有的FPGA设备升级方法,一旦通信过程中出现问题,可能会影响升级包,FPGA设备直接使用有问题的升级数据包进行升级,可能会导致升级失败,甚至造成FPGA设备功能失效,严重影响系统的稳定性。因此现有技术在FPGA设备升级时的安全性和稳定性不高。
发明内容
本申请实施例提供了一种FPGA设备升级方法、电子设备和计算机可读存储介质,以至少解决相关技术中FPGA设备升级时的安全性和稳定性不高的问题。
第一方面,本申请实施例提供了一种FPGA设备升级方法,应用于FPGA设备,所述FPGA设备与上位机配合,其特征在于,包括:
接收上位机发送的升级请求,对所述升级请求的数据包进行解析和校验,向所述上位机发送第一校验结果;
接收所述上位机响应于所述第一校验结果所发送的升级固件数据,对所述升级固件数据进行解析和校验,并向所述上位机发送第二校验结果,且响应于校验成功,将解析后的升级固件数据存储在FLASH中,形成升级固件;
接收所述上位机响应于所述第二校验结果所发送的升级包结束信息,对所述升级包结束信息进行解析,对所述升级包结束信息和所述升级固件进行校验,向所述上位机发送第三校验结果,响应于对所述升级包结束信息和所述升级固件校验成功,完成升级。
在一实施例中,所述接收所述上位机响应于所述第一校验结果所发送的升级固件数据,对所述升级固件数据进行解析和校验,并向所述上位机发送第二校验结果,包括:
顺次接收被拆分为预设长度的升级固件数据,所述预设长度等于第二阈值;
对当前接收到的所述升级固件数据进行解析,对解析后的升级固件数据进行校验,响应于校验成功且所述升级固件数据的长度不超过第二阈值,则判断为校验成功,并向所述上位机发送当前检验的第二检验结果。
在一实施例中,所述响应于校验成功,将解析后的升级固件数据存储在FLASH中,形成升级固件,包括:
响应于当前接收到的所述升级固件数据校验成功,对FLASH存储空间进行擦除得到设定容量目标存储区域;
将所述升级固件数据存储在所述目标存储区域。
在一实施例中,所述接收所述上位机响应于所述第二校验结果所发送的升级包结束信息,包括:
接收所述上位机响应于所有所述升级固件数据均校验成功所发送的升级包结束信息。
在一实施例中,所述接收上位机发送的升级请求,对所述升级请求的数据包进行解析和校验,包括:
对所述升级请求的数据包进行解析,对解析后的数据包进行校验,响应于校验成功且所述升级请求的数据包长度不超过第一阈值,则判断为校验成功。
在一实施例中,所述接收所述上位机响应于所述第二校验结果所发送的升级包结束信息,对所述升级包结束信息进行解析,对所述升级包结束信息和所述升级固件进行校验,包括:
对所述升级包结束信息进行解析,获取解析后的升级包结束信息中的第一校验码;
计算所述升级固件数据的第二校验码,判断所述第一校验码和第二校验码是否相等,若相等,则校验成功。
在一实施例中,所述方法还包括:
对于任意一次检验,响应于校验失败,则所述FPGA设备进入监听状态,继续等待所述上位机发送升级请求。
在一实施例中,所述响应于对所述升级包结束信息和所述升级固件校验成功,完成升级,包括:
响应于对所述升级包结束信息和所述升级固件校验成功,则所述FPGA设备进入正常启动状态,启动所述升级固件,完成升级。
第二方面,本申请实施例提供了一种电子设备,包括存储器、处理器,以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的FPGA设备升级方法。
第三方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如第一方面所述的FPGA设备升级方法。
本申请实施例提供的FPGA设备升级方法、电子设备和计算机可读存储介质至少具有以下技术效果。
本申请在FPGA设备升级过程中对所接收的每一条通信数据进行解析、校验和反馈,以保证通信过程中的数据安全性和完整性。并且对存储在FLASH中的升级固件进行校验,保证了升级固件的完整性。避免了升级过程中因升级固件的数据问题而导致升级失败甚至影响FPGA设备的问题,保证FPGA设备升级时的稳定性和安全性。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据一示例性实施例示出的FPGA设备升级方法的流程图;
图2是根据一示例性实施例示出的协议组成的框图;
图3为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
第一方面,本申请实施例提供了一种FPGA设备升级方法,方法应用于FPGA设备,FPGA设备与上位机配合。
可选地,FPGA设备为以FPGA芯片作为主控制器的设备,广泛应用于通信行业的基站、国防军工行业、工业机床、工业相机和医疗器械等设备。上位机一般为台式计算机和笔记本电脑等主控计算机。FPGA设备和上位机的通信接口包括通信串口和网口等,FPGA设备和上位机通过通信协议进行数据传输以保证数据传输过程中的数据安全性,本申请使用的通信协议为应答式通信协议。
图1是根据一示例性实施例示出的FPGA设备升级方法的流程图,如图1所示,FPGA设备升级方法包括:
步骤S101,接收上位机发送的升级请求,对升级请求的数据包进行解析和校验,向上位机发送第一校验结果。
可选地,FPGA设备和上位机的所有通信数据均采用主从协议,图2是根据一示例性实施例示出的协议组成的框图,如图2所示,协议的组成均包括固定帧头、命令类型、包长、数据包、校验字和固定帧尾。其中,固定帧头和帧尾,方便对数据包定位;校验字为根据校验算法计算出的升级请求的校验字,用于验证数据包的完整性。可选地,可将步骤S101中的升级请求的协议组成设定为:命令类型为0,包长为4,数据包的4个字节为升级固件的总长度。第一校验结果被以升级请求返回的形式发送至上位机,升级请求返回的协议组成可设定为:命令类型为1,包长为1,数据包为1个字节,其中数据包用于存储第一校验结果,例如0表示成功,1表示失败。
在一个示例中,步骤S101包括:对升级请求的数据包进行解析,对解析后的数据包进行校验,响应于校验成功且升级请求的数据包长度不超过第一阈值,则判断为校验成功。
可选地,通过通信协议解析对升级请求的数据包进行解析,对解析后的数据包进行校验,判断解析后的数据包中升级固件的总长度是否大于第一阈值,若对升级固件的数据包校验成功且升级固件的总长度不超过第一阈值,则可确定第一校验结果为成功。可选地,可采用整数加法校验和、循环冗余校验CRC32(Cyclic Redundancy Check,CRC)和异或校验等校验方法。第一阈值可根据具体应用场景进行设定,
通过主从应答式协议对所接收的数据包进行解析和校验,并且判断升级固件的总长度是否大于FLASH存储空间。以此方式,保证数据传输的安全性,并且有利于保证FPGA设备升级的稳定性。
继续参照图1,在步骤S101之后执行步骤S102,具体如下:
步骤S102,接收上位机响应于第一校验结果所发送的升级固件数据,对升级固件数据进行解析和校验,并向上位机发送第二校验结果,且响应于校验成功,将解析后的升级固件数据存储在FLASH中,形成升级固件。
可选地,参照图2,可将升级固件数据的协议组成设定为:命令类型为2,包长为拆包大小N,数据包N个字节。第二校验结果被以升级固件数据返回的形式发送至上位机,升级固件数据返回的协议组成可设定为:命令类型为3,包长为1,数据包为1个字节,其中数据包用于存储第二校验结果,例如0表示成功,1表示失败。其中N一般根据具体应用情况进行设定,例如1024、4096等。
在一个示例中,步骤S102包括:
步骤S1021,顺次接收被拆分为预设长度的升级固件数据,预设长度等于第二阈值。
步骤S1022,对当前接收到的升级固件数据进行解析,对解析后的升级固件数据进行校验,响应于校验成功且升级固件数据的长度不超过第二阈值,则判断为校验成功,并向上位机发送当前检验的第二检验结果。
可选地,由于设备内存的限制,一般会对升级固件数据的数据包进行拆分,将其拆分为预设长度,若最后一个数据包的包长不足预设长度,则按照实际包长进行组包和发送。预设长度可根据具体设备参数进行参照设置,一般为4096字节。FPGA设备不断接收经过拆分的的升级固件数据,对当前接收的升级固件数据进行解析,并对解析后的升级固件数据进行校验,若校验成功并且升级固件长度不超过预设长度,则判断为校验成功。
以此方式,避免升级固件数据传输过程中数据丢失或者被恶意篡改等情况发生后,后续直接使用有问题的升级固件数据进行升级导致,导致的升级失败甚至影响FPGA设备的问题,保证FPGA设备所接收到的升级固件数据的完整性和安全性。
在一个示例中,步骤S102中响应于校验成功,将解析后的升级固件数据存储在FLASH中,形成升级固件,包括:
响应于当前接收到的升级固件数据校验成功,对FLASH存储空间进行擦除得到设定容量目标存储区域,将升级固件数据存储在目标存储区域。
可选地,在接收到的升级固件数据的过程中,一边按页擦除FLASH存储空间,一边存储升级固件数据。具体来说,对当前升级固件数据进行解析和校验,若校验成功并且升级固件长度不超过预设长度,则擦除设定容量的FLASH存储空间,并且将当前升级固件数据存储在FLASH芯片中。以此方式,提高升级固件数据的写入速度,提高后续FPGA设备升级的效率。
步骤S103,接收上位机响应于第二校验结果所发送的升级包结束信息,对升级包结束信息进行解析,对升级包结束信息和升级固件进行校验,向上位机发送第三校验结果,响应于对升级包结束信息和升级固件校验成功,完成升级。
可选地,参照图2,可将升级包结束信息的协议组成设定为:命令类型为4,包长为拆包大小4,数据包的4个字节为根据完整升级固件数据计算得到的校验字。第三校验结果被以升级包结束信息返回的形式发送至上位机,升级包结束信息返回的协议组成可设定为:命令类型为5,包长为1,数据包为1个字节,其中数据包用于存储第三校验结果,例如0表示成功,1表示失败。
在一个示例中,步骤S103包括:接收上位机响应于所有升级固件数据均校验成功所发送的升级包结束信息。可选地,上位机在接收到被拆分的所有升级固件数据均被解析和验证成功的信息后,才会向所述FPGA设备发送升级包结束信息。以此方式,保证FPGA设备所接收的升级固件数据的安全性和完整性。
在一个示例中,步骤S103中接收上位机响应于第二校验结果所发送的升级包结束信息,对升级包结束信息进行解析,对升级包结束信息和升级固件进行校验,包括:
对升级包结束信息进行解析,获取解析后的升级包结束信息中的第一校验码。计算升级固件数据的第二校验码,判断第一校验码和第二校验码是否相等,若相等,则校验成功。
可选地,对升级包结束信息进行双重校验。具体包括:对升级包结束信息进行解析和校验,验证升级包结束信息自身的完整性;获取解析后的升级包结束信息中的第一校验码,计算升级固件数据的第二校验码,判断第一校验码和第二校验码是否相等,如果相等,则表明FLASH中存储升级固件与上位机所发送的升级固件数据一致,可以判定为校验成功。其中第一校验码为根据完整升级固件数据计算得到的校验字。
以此方式,既保证了数据传输和交互过程中的数据的安全性和完整性,又对升级固件进行校验,保证了升级固件的完整性。避免了升级过程中因升级固件的数据问题而导致升级失败甚至影响FPGA设备的问题,保证FPGA设备升级时的稳定性和安全性。
在一个示例中,步骤S103中包括:响应于对升级包结束信息和升级固件校验成功,则FPGA设备进入正常启动状态,启动升级固件,完成升级。可选地,若对FLASH中存储升级固件校验成功,表明FLASH中存储升级固件与上位机所发送的升级固件数据一致,此时FPGA设备可启动升级固件,完成升级。
在一个示例中,FPGA设备升级方法还包括:对于任意一次检验,响应于校验失败,则FPGA设备进入监听状态,继续等待上位机发送升级请求。可选地,一旦出现校验失败的情况,则表明数据在交互和传输过程中出现了差错,包括数据丢失、数据被篡改、存储空间不足等问题。此时,则退出升级状态,改为监听状态,继续等待上位机发送升级请求以重新进入升级状态。以此方式,保证FPGA设备成功升级,提高FPGA设备升级过程的稳定性。
综上所述,本申请在FPGA设备升级过程中使用主从应答式通信协议,对每一条通信数据进行校验和反馈,以保证通信过程中的数据安全性和完整性。并且对升级固件进行校验,保证了升级固件的完整性。避免了升级过程中因升级固件的数据问题而导致升级失败甚至影响FPGA设备的问题,保证FPGA设备升级时的稳定性和安全性。
第二方面,本申请实施例提供了一种电子设备,图3为本申请实施例提供的一种电子设备的结构示意图。所述电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面提供的FPGA设备升级方法,图3显示的电子设备60仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
电子设备60可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备60的组件可以包括但不限于:上述至少一个处理器61、上述至少一个存储器62、连接不同系统组件(包括存储器62和处理器61)的总线63。
总线63包括数据总线、地址总线和控制总线。
存储器62可以包括易失性存储器,例如随机存取存储器(RAM)621和/或高速缓存存储器622,还可以进一步包括只读存储器(ROM)623。
存储器62还可以包括具有一组(至少一个)程序模块624的程序/实用工具625,这样的程序模块624包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
处理器61通过运行存储在存储器62中的计算机程序,从而执行各种功能应用以及数据处理,例如本申请第一方面的FPGA设备升级方法。
电子设备60也可以与一个或多个外部设备64(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口65进行。并且,模型生成的设备60还可以通过网络适配器66与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器66通过总线63与模型生成的设备60的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的设备60使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
第三方面,本申请实施例提供了一种计算机可读存储介质,其上存储有程序,所述程序被处理器执行时,实现如第一方面中提供的FPGA设备升级方法。
其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行实现第一方面提供的FPGA设备升级方法的步骤。
其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种FPGA设备升级方法,应用于FPGA设备,所述FPGA设备与上位机配合,其特征在于,包括:
接收上位机发送的升级请求,对所述升级请求的数据包进行解析和校验,向所述上位机发送第一校验结果;
接收所述上位机响应于所述第一校验结果所发送的升级固件数据,对所述升级固件数据进行解析和校验,并向所述上位机发送第二校验结果,且响应于校验成功,将解析后的升级固件数据存储在FLASH中,形成升级固件;
接收所述上位机响应于所述第二校验结果所发送的升级包结束信息,对所述升级包结束信息进行解析,对所述升级包结束信息和所述升级固件进行校验,向所述上位机发送第三校验结果,响应于对所述升级包结束信息和所述升级固件校验成功,完成升级。
2.根据权利要求1所述的FPGA设备升级方法,其特征在于,所述接收所述上位机响应于所述第一校验结果所发送的升级固件数据,对所述升级固件数据进行解析和校验,并向所述上位机发送第二校验结果,包括:
顺次接收被拆分为预设长度的升级固件数据,所述预设长度等于第二阈值;
对当前接收到的所述升级固件数据进行解析,对解析后的升级固件数据进行校验,响应于校验成功且所述升级固件数据的长度不超过第二阈值,则判断为校验成功,并向所述上位机发送当前检验的第二检验结果。
3.根据权利要求2所述的FPGA设备升级方法,其特征在于,所述响应于校验成功,将解析后的升级固件数据存储在FLASH中,形成升级固件,包括:
响应于当前接收到的所述升级固件数据校验成功,对FLASH存储空间进行擦除得到设定容量目标存储区域;
将所述升级固件数据存储在所述目标存储区域。
4.根据权利要求2所述的FPGA设备升级方法,其特征在于,所述接收所述上位机响应于所述第二校验结果所发送的升级包结束信息,包括:
接收所述上位机响应于所有所述升级固件数据均校验成功所发送的升级包结束信息。
5.根据权利要求1所述的FPGA设备升级方法,其特征在于,所述接收上位机发送的升级请求,对所述升级请求的数据包进行解析和校验,包括:
对所述升级请求的数据包进行解析,对解析后的数据包进行校验,响应于校验成功且所述升级请求的数据包长度不超过第一阈值,则判断为校验成功。
6.根据权利要求1所述的FPGA设备升级方法,其特征在于,所述接收所述上位机响应于所述第二校验结果所发送的升级包结束信息,对所述升级包结束信息进行解析,对所述升级包结束信息和所述升级固件进行校验,包括:
对所述升级包结束信息进行解析,获取解析后的升级包结束信息中的第一校验码;
计算所述升级固件数据的第二校验码,判断所述第一校验码和第二校验码是否相等,若相等,则校验成功。
7.根据权利要求1所述的FPGA设备升级方法,其特征在于,所述方法还包括:
对于任意一次检验,响应于校验失败,则所述FPGA设备进入监听状态,继续等待所述上位机发送升级请求。
8.根据权利要求6所述的FPGA设备升级方法,其特征在于,所述响应于对所述升级包结束信息和所述升级固件校验成功,完成升级,包括:
响应于对所述升级包结束信息和所述升级固件校验成功,则所述FPGA设备进入正常启动状态,启动所述升级固件,完成升级。
9.一种电子设备,其特征在于,包括
存储器,
处理器,以及
存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至8中任一项所述的FPGA设备升级方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至8中任一项所述的FPGA设备升级方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311580656.0A CN118113321A (zh) | 2023-11-23 | 2023-11-23 | Fpga设备升级方法、电子设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311580656.0A CN118113321A (zh) | 2023-11-23 | 2023-11-23 | Fpga设备升级方法、电子设备和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118113321A true CN118113321A (zh) | 2024-05-31 |
Family
ID=91211083
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311580656.0A Pending CN118113321A (zh) | 2023-11-23 | 2023-11-23 | Fpga设备升级方法、电子设备和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118113321A (zh) |
-
2023
- 2023-11-23 CN CN202311580656.0A patent/CN118113321A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8095753B1 (en) | System and method for adding a disk to a cluster as a shared resource | |
WO2021174828A1 (zh) | 数据处理方法、装置、计算机系统及可读存储介质 | |
CN108509215B (zh) | 一种系统软件的更换方法、装置、终端设备及存储介质 | |
CN111813428A (zh) | 终端固件的升级方法、装置、电子设备及存储介质 | |
WO2020192343A1 (zh) | 基于硬件的端对端数据保护方法、装置及计算机设备 | |
CN111930489B (zh) | 一种任务调度方法、装置、设备及存储介质 | |
CN110389772B (zh) | 双核mcu应用程序升级方法 | |
CN112558875A (zh) | 数据校验方法、装置、电子设备及存储介质 | |
CN112416408A (zh) | 固件升级方法、装置、设备及计算机可读存储介质 | |
CN113672270A (zh) | 升级方法,计算机系统和远端升级设备 | |
US7308601B2 (en) | Program, method and apparatus for disk array control | |
CN117573181A (zh) | 配电终端升级方法、装置、存储介质及电子设备 | |
WO2024108940A1 (zh) | 一种性能监管方法、装置、系统、设备和介质 | |
US7293139B2 (en) | Disk array system generating a data guarantee code on data transferring | |
CN111857545B (zh) | 一种读写锁冲突判断方法、系统、设备及计算机介质 | |
CN110134423B (zh) | 固件的更新方法、装置及计算机可读存储介质 | |
CN112286565A (zh) | 一种基于存储容器的嵌入式系统差分升级方法 | |
CN118113321A (zh) | Fpga设备升级方法、电子设备和计算机可读存储介质 | |
CN115658404A (zh) | 一种测试方法及系统 | |
CN116521062A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN115129509B (zh) | 一种数据传输方法、装置、介质 | |
CN116521081A (zh) | 组板载独立磁盘冗余阵列的方法、装置、设备及存储介质 | |
CN112912841A (zh) | 硬件升级方法、装置、设备和存储介质 | |
CN105354107A (zh) | NOR Flash的数据传输方法及系统 | |
CN111399759B (zh) | 读数据、写数据的方法、以及对象文件系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |