System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及网络功能测试,特别是涉及一种基于fpga的多应用切换方法、装置、设备和介质。
技术介绍
1、现场可编程门阵列(field-programmable gate array,fpga)以其电路设计可重构性特点被广泛应用在各个行业,一般将编译工程生成的.rpd或.jic文件烧写至fpga外挂连接的非易失性内存(flash),上电后flash内的文件加载到fpga内从而实现某些具体功能。针对一些高端仪器仪表,其具有多个复杂功能,每个flash文件内烧录一个具体的功能,一般通过fpga外部连接多个flash芯片并结合具体的片选电路,通过片选电路实现不同flash内的功能。
2、目前虽然可以通过fpga外部片选电路连接多个flash芯片,但该方法增加flash芯片的数量。在所需实现的具体功能较多时,需要增加较多数量的flash芯片,不仅成本高,电路设计也相对复杂,在电路设计时可能无法一次完全实现该功能,往往需要多次反复调试电路才能实现。
3、可见,如何降低硬件成本以及电路设计复杂性,是本领域技术人员需要解决的问题。
技术实现思路
1、本申请实施例的目的是提供一种基于fpga的多应用切换方法、装置、设备和介质,可以降低硬件成本以及电路设计复杂性。
2、为解决上述技术问题,本申请实施例提供一种基于fpga的多应用切换方法,包括:
3、将多个应用程序对应的编译文件合并生成烧录文件,并将所述烧录文件存储至统一的内存芯片;其中,所述烧录文件中记录
4、在接收到切换映像指令的情况下,从所述切换映像指令中解析出目标起始地址和使能信号;
5、在所述使能信号为切换映像使能的情况下,按照fpga自带的驱动处理器的数据格式要求,将所述切换映像指令的指令信息写入所述驱动处理器,并将所述目标起始地址写入所述驱动处理器的先入先出队列,以便于基于所述驱动处理器以及与所述驱动处理器连接的安全设备管理器实现应用程序的切换;
6、根据获取的启动地址读取指令,读取响应数据;
7、在所述响应数据中携带的应用程序的起始地址与所述目标起始地址匹配的情况下,加载所述内存芯片中与所述目标起始地址匹配的烧录文件,以执行所述应用程序对应的测试功能。
8、一方面,所述在所述使能信号为切换映像使能的情况下,按照fpga自带的驱动处理器的数据格式要求,将所述切换映像指令的指令信息写入所述驱动处理器包括:
9、判断所述使能信号的格式是否与设定的切换映像使能信号的格式相同;
10、在所述使能信号的格式与设定的切换映像使能信号的格式相同的情况下,按照所述驱动处理器的写入命令标头的格式,将所述切换映像指令的指令长度和指令类型填充至所述写入命名标头的相应位置。
11、一方面,所述将所述目标起始地址写入所述驱动处理器的先入先出队列包括:
12、将包含所述目标起始地址的低32位的数据包写入所述驱动处理器的先入先出队列;
13、判断所述目标起始地址的长度是否高于32位;
14、在所述目标起始地址的长度高于32位的情况下,将包含所述目标起始地址的高32位的数据包写入所述驱动处理器的先入先出队列;
15、在所述目标起始地址的长度不高于32位的情况下,将所述目标起始地址的高32位设置为0写入所述驱动处理器的先入先出队列。
16、一方面,在所述根据获取的启动地址读取指令,读取响应数据之前,还包括:
17、在执行映像切换后,开启计时;
18、在计时时间达到设定时间阈值的情况下,执行所述根据获取的启动地址读取指令,读取响应数据的步骤。
19、一方面,所述根据获取的启动地址读取指令,读取响应数据包括:
20、按照所述驱动处理器的数据格式要求,将所述启动地址读取指令的指令信息写入所述驱动处理器,以便于所述驱动处理器读取响应数据,并将所述响应数据中携带的应用程序的起始地址存入设定的寄存器中。
21、一方面,还包括:
22、在所述响应数据中携带的应用程序的起始地址与所述目标起始地址不匹配的情况下,展示应用程序切换失败的提示信息。
23、一方面,还包括:
24、在获取到新的应用程序添加指令的情况下,将所述新的应用程序对应的编译文件与历史应用程序对应的编译文件合并生成新的烧录文件,并将所述新的烧录文件替换原本的烧录文件。
25、本申请实施例还提供了一种基于fpga的多应用切换装置,包括生成单元、存储单元、解析单元、指令信息写入单元、地址写入单元、读取单元和加载单元;
26、所述生成单元,用于将多个应用程序对应的编译文件合并生成烧录文件;
27、所述存储单元,用于将所述烧录文件存储至统一的内存芯片;其中,所述烧录文件中记录了各所述应用程序所对应的起始地址和内存使用页;
28、所述解析单元,用于在接收到切换映像指令的情况下,从所述切换映像指令中解析出目标起始地址和使能信号;
29、所述指令信息写入单元,用于在所述使能信号为切换映像使能的情况下,按照fpga自带的驱动处理器的数据格式要求,将所述切换映像指令的指令信息写入所述驱动处理器;
30、所述地址写入单元,用于将所述目标起始地址写入所述驱动处理器的先入先出队列,以便于基于所述驱动处理器以及与所述驱动处理器连接的安全设备管理器实现应用程序的切换;
31、所述读取单元,用于根据获取的启动地址读取指令,读取响应数据;
32、所述加载单元,用于在所述响应数据中携带的应用程序的起始地址与所述目标起始地址匹配的情况下,加载所述内存芯片中与所述目标起始地址匹配的烧录文件,以执行所述应用程序对应的测试功能。
33、一方面,所述指令信息写入单元包括判断子单元和填充子单元;
34、所述判断子单元,用于判断所述使能信号的格式是否与设定的切换映像使能信号的格式相同;
35、所述填充子单元,用于在所述使能信号的格式与设定的切换映像使能信号的格式相同的情况下,按照所述驱动处理器的写入命令标头的格式,将所述切换映像指令的指令长度和指令类型填充至所述写入命名标头的相应位置。
36、一方面,所述地址写入单元用于将包含所述目标起始地址的低32位的数据包写入所述驱动处理器的先入先出队列;判断所述目标起始地址的长度是否高于32位;在所述目标起始地址的长度高于32位的情况下,将包含所述目标起始地址的高32位的数据包写入所述驱动处理器的先入先出队列;在所述目标起始地址的长度不高于32位的情况下,将所述目标起始地址的高32位设置为0写入所述驱动处理器的先入先出队列。
37、一方面,还包括计时单元;
38、所述计时单元,用于在执行映像切换后,开启计时;在计时时间达到设定时间阈值的情况下,触发所述读取单本文档来自技高网...
【技术保护点】
1.一种基于FPGA的多应用切换方法,其特征在于,包括:
2.根据权利要求1所述的基于FPGA的多应用切换方法,其特征在于,所述在所述使能信号为切换映像使能的情况下,按照FPGA自带的驱动处理器的数据格式要求,将所述切换映像指令的指令信息写入所述驱动处理器包括:
3.根据权利要求2所述的基于FPGA的多应用切换方法,其特征在于,所述将所述目标起始地址写入所述驱动处理器的先入先出队列包括:
4.根据权利要求1所述的基于FPGA的多应用切换方法,其特征在于,在所述根据获取的启动地址读取指令,读取响应数据之前,还包括:
5.根据权利要求1所述的基于FPGA的多应用切换方法,其特征在于,所述根据获取的启动地址读取指令,读取响应数据包括:
6.根据权利要求1所述的基于FPGA的多应用切换方法,其特征在于,还包括:
7.根据权利要求1所述的基于FPGA的多应用切换方法,其特征在于,还包括:
8.一种基于FPGA的多应用切换装置,其特征在于,包括生成单元、存储单元、解析单元、指令信息写入单元、地址写入单元、读取
9.一种基于FPGA的多应用切换设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任意一项所述基于FPGA的多应用切换方法的步骤。
...【技术特征摘要】
1.一种基于fpga的多应用切换方法,其特征在于,包括:
2.根据权利要求1所述的基于fpga的多应用切换方法,其特征在于,所述在所述使能信号为切换映像使能的情况下,按照fpga自带的驱动处理器的数据格式要求,将所述切换映像指令的指令信息写入所述驱动处理器包括:
3.根据权利要求2所述的基于fpga的多应用切换方法,其特征在于,所述将所述目标起始地址写入所述驱动处理器的先入先出队列包括:
4.根据权利要求1所述的基于fpga的多应用切换方法,其特征在于,在所述根据获取的启动地址读取指令,读取响应数据之前,还包括:
5.根据权利要求1所述的基于fpga的多应用切换方法,其特征在于,所述...
【专利技术属性】
技术研发人员:王茂庆,廉哲,彭兴贵,邵毅男,
申请(专利权)人:苏州联讯仪器股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。