[发明专利]一种PCIE设备中FPGA功能动态重构的方法及系统有效
申请号: | 201911078289.8 | 申请日: | 2019-11-06 |
公开(公告)号: | CN110888834B | 公开(公告)日: | 2022-05-31 |
发明(设计)人: | 刘四超;李杨;伍力伟;詹鹏;吴志兵;邓超;周确;张念;裴涛;龚智;张琼宇 | 申请(专利权)人: | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) |
主分类号: | G06F15/78 | 分类号: | G06F15/78 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 陈玉婷 |
地址: | 430205 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 pcie 设备 fpga 功能 动态 方法 系统 | ||
1.一种PCIE设备中FPGA功能动态重构的方法,其特征在于,包括:
待PCIE设备上电后,加载所述PCIE设备的第一业务功能对应的第一FPGA逻辑文件,与宿主机建立首次链接,所述第一FPGA逻辑文件包含第一逻辑目标码;
若所述宿主机加载所述PCIE设备的第二业务功能时,通知所述PCIE设备的微处理器选取所述第二业务功能对应的第二FPGA逻辑文件,所述第二FPGA逻辑文件包含第二逻辑目标码,使用所述第二逻辑目标码对FPGA进行全局动态重构;
待所述全局动态重构完成后,宿主机和PCIE设备均无需重启,与所述宿主机建立二次链接,所述宿主机完成对所述第二业务功能的调用;
所述与宿主机建立首次链接,具体包括:
由所述FPGA内置的flash芯片加载所述第一FPGA逻辑文件,所述第一FPGA逻辑文件包含PCIE接口IP核;
通过所述PCIE接口IP核扫描RC控制器下的所述PCIE设备,为所述PCIE设备分配总线资源,建立所述首次链接,并记录所述PCIE设备的总线信息;
待所述首次链接完成,通过驱动程序将所述PCIE设备的BAR空间寄存器的完整内容记录至系统全局变量;
所述宿主机使用Windows操作系统或使用Linux操作系统;
当所述宿主机使用Windows操作系统时,所述与所述宿主机建立二次链接,所述宿主机完成对所述第二业务功能的调用,具体包括:
待所述全局动态重构完成后,调用所述Windows操作系统的API接口获取所述宿主机的全部设备信息;
调用Windows操作系统接口枚举设备信息,通过总线信息号获取PCIE设备句柄;
通过所述PCIE设备句柄实现对所述PCIE设备的停用控制和启用控制,并通过所述系统全局变量重新加载所述驱动程序,对所述BAR空间寄存器进行重新配置;
待所述PCIE设备重新启用后,所述宿主机完成对所述第二业务功能的调用;
当所述宿主机使用Linux操作系统时,所述与所述宿主机建立二次链接,所述宿主机完成对所述第二业务功能的调用,具体包括:
待所述全局动态重构完成后,遍历sysfs文件子系统,通过总线信息号获取PCIE设备文件路径;
通过所述PCIE设备文件路径中的卸载命令对所述PCIE设备进行卸载;
重新扫描所述总线信息号,并通过所述系统全局变量重新加载所述驱动程序,对所述BAR空间寄存器进行重新配置;
待所述PCIE设备重新启用后,所述宿主机完成对所述第二业务功能的调用。
2.根据权利要求1所述的PCIE设备中FPGA功能动态重构的方法,其特征在于,所述使用所述第二逻辑目标码对FPGA进行全局动态重构,之前还包括:
通知所述宿主机停止对所述PCIE设备的全部功能调用,并中断与所述PCIE设备的通信。
3.根据权利要求1所述的PCIE设备中FPGA功能动态重构的方法,其特征在于,所述全局动态重构,具体包括:
由所述微处理器配置所述FPGA,使所述FPGA被动加载所述第二逻辑目标码,所述第二逻辑目标码包含所述PCIE接口IP核;
通过所述第二逻辑目标码查找到所述第二FPGA逻辑文件,由所述第二FPGA逻辑文件执行所述全局动态重构。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所),未经武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所)许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911078289.8/1.html,转载请声明来源钻瓜专利网。