System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及fpga设备领域,特别是涉及fpga设备升级方法、电子设备和计算机可读存储介质。
技术介绍
1、现场可编程逻辑门阵列(field programmable gate array,fpga)广泛应用于机器视觉领域,尤其是用于工业相机的主控制器。在发现产品固件存在缺陷或者功能升级时,必须对其进行非拆盖的固件更新升级,fpga的固件存储于flash中。
2、目前的fpga设备升级方法,主要通过上位机计算机的串口或者网口与fpga连接,通过上位机请求升级,fpga对flash的应用固件区域进行擦除,擦除完成后,由上位机将升级包传输至fpga,完成升级。
3、现有的fpga设备升级方法,一旦通信过程中出现问题,可能会影响升级包,fpga设备直接使用有问题的升级数据包进行升级,可能会导致升级失败,甚至造成fpga设备功能失效,严重影响系统的稳定性。因此现有技术在fpga设备升级时的安全性和稳定性不高。
技术实现思路
1、本申请实施例提供了一种fpga设备升级方法、电子设备和计算机可读存储介质,以至少解决相关技术中fpga设备升级时的安全性和稳定性不高的问题。
2、第一方面,本申请实施例提供了一种fpga设备升级方法,应用于fpga设备,所述fpga设备与上位机配合,其特征在于,包括:
3、接收上位机发送的升级请求,对所述升级请求的数据包进行解析和校验,向所述上位机发送第一校验结果;
4、接收所述上位机响应于所述第一校验结果所
5、接收所述上位机响应于所述第二校验结果所发送的升级包结束信息,对所述升级包结束信息进行解析,对所述升级包结束信息和所述升级固件进行校验,向所述上位机发送第三校验结果,响应于对所述升级包结束信息和所述升级固件校验成功,完成升级。
6、在一实施例中,所述接收所述上位机响应于所述第一校验结果所发送的升级固件数据,对所述升级固件数据进行解析和校验,并向所述上位机发送第二校验结果,包括:
7、顺次接收被拆分为预设长度的升级固件数据,所述预设长度等于第二阈值;
8、对当前接收到的所述升级固件数据进行解析,对解析后的升级固件数据进行校验,响应于校验成功且所述升级固件数据的长度不超过第二阈值,则判断为校验成功,并向所述上位机发送当前检验的第二检验结果。
9、在一实施例中,所述响应于校验成功,将解析后的升级固件数据存储在flash中,形成升级固件,包括:
10、响应于当前接收到的所述升级固件数据校验成功,对flash存储空间进行擦除得到设定容量目标存储区域;
11、将所述升级固件数据存储在所述目标存储区域。
12、在一实施例中,所述接收所述上位机响应于所述第二校验结果所发送的升级包结束信息,包括:
13、接收所述上位机响应于所有所述升级固件数据均校验成功所发送的升级包结束信息。
14、在一实施例中,所述接收上位机发送的升级请求,对所述升级请求的数据包进行解析和校验,包括:
15、对所述升级请求的数据包进行解析,对解析后的数据包进行校验,响应于校验成功且所述升级请求的数据包长度不超过第一阈值,则判断为校验成功。
16、在一实施例中,所述接收所述上位机响应于所述第二校验结果所发送的升级包结束信息,对所述升级包结束信息进行解析,对所述升级包结束信息和所述升级固件进行校验,包括:
17、对所述升级包结束信息进行解析,获取解析后的升级包结束信息中的第一校验码;
18、计算所述升级固件数据的第二校验码,判断所述第一校验码和第二校验码是否相等,若相等,则校验成功。
19、在一实施例中,所述方法还包括:
20、对于任意一次检验,响应于校验失败,则所述fpga设备进入监听状态,继续等待所述上位机发送升级请求。
21、在一实施例中,所述响应于对所述升级包结束信息和所述升级固件校验成功,完成升级,包括:
22、响应于对所述升级包结束信息和所述升级固件校验成功,则所述fpga设备进入正常启动状态,启动所述升级固件,完成升级。
23、第二方面,本申请实施例提供了一种电子设备,包括存储器、处理器,以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的fpga设备升级方法。
24、第三方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如第一方面所述的fpga设备升级方法。
25、本申请实施例提供的fpga设备升级方法、电子设备和计算机可读存储介质至少具有以下技术效果。
26、本申请在fpga设备升级过程中对所接收的每一条通信数据进行解析、校验和反馈,以保证通信过程中的数据安全性和完整性。并且对存储在flash中的升级固件进行校验,保证了升级固件的完整性。避免了升级过程中因升级固件的数据问题而导致升级失败甚至影响fpga设备的问题,保证fpga设备升级时的稳定性和安全性。
27、本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
本文档来自技高网...【技术保护点】
1.一种FPGA设备升级方法,应用于FPGA设备,所述FPGA设备与上位机配合,其特征在于,包括:
2.根据权利要求1所述的FPGA设备升级方法,其特征在于,所述接收所述上位机响应于所述第一校验结果所发送的升级固件数据,对所述升级固件数据进行解析和校验,并向所述上位机发送第二校验结果,包括:
3.根据权利要求2所述的FPGA设备升级方法,其特征在于,所述响应于校验成功,将解析后的升级固件数据存储在FLASH中,形成升级固件,包括:
4.根据权利要求2所述的FPGA设备升级方法,其特征在于,所述接收所述上位机响应于所述第二校验结果所发送的升级包结束信息,包括:
5.根据权利要求1所述的FPGA设备升级方法,其特征在于,所述接收上位机发送的升级请求,对所述升级请求的数据包进行解析和校验,包括:
6.根据权利要求1所述的FPGA设备升级方法,其特征在于,所述接收所述上位机响应于所述第二校验结果所发送的升级包结束信息,对所述升级包结束信息进行解析,对所述升级包结束信息和所述升级固件进行校验,包括:
7.根据权利要求1
8.根据权利要求6所述的FPGA设备升级方法,其特征在于,所述响应于对所述升级包结束信息和所述升级固件校验成功,完成升级,包括:
9.一种电子设备,其特征在于,包括
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至8中任一项所述的FPGA设备升级方法。
...【技术特征摘要】
1.一种fpga设备升级方法,应用于fpga设备,所述fpga设备与上位机配合,其特征在于,包括:
2.根据权利要求1所述的fpga设备升级方法,其特征在于,所述接收所述上位机响应于所述第一校验结果所发送的升级固件数据,对所述升级固件数据进行解析和校验,并向所述上位机发送第二校验结果,包括:
3.根据权利要求2所述的fpga设备升级方法,其特征在于,所述响应于校验成功,将解析后的升级固件数据存储在flash中,形成升级固件,包括:
4.根据权利要求2所述的fpga设备升级方法,其特征在于,所述接收所述上位机响应于所述第二校验结果所发送的升级包结束信息,包括:
5.根据权利要求1所述的fpga设备升级方法,其特征在于,所述接收上位机发送的升级请...
【专利技术属性】
技术研发人员:丁丁,刘刚,李金鹏,
申请(专利权)人:杭州灵西机器人智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。