本发明涉及异构计算板卡,特别是一种基于异构计算板卡的fpga协商加载方法。
背景技术:
1、异构计算有高性能计算能力、扩展性好和计算资源利用率高等巨大优势,成为很多领域的研究热点。在板卡计算中应用中最为广泛的就是cpu+fpga+存储的异构架构或直接采用含arm处理器的fpga与fpga进行互联,这样的架构易于实现且开发灵活。
2、目前异构计算下的fpga以cpu软件启动阶段根据固化的配置文件来加载存储芯片的fpga流文件方式为主,一旦更换了光模块或者,需要手动更换固化的配置文件并重新启动,这样使得调试效率低下,同时在产品阶段,操作繁琐且容易出错。
技术实现思路
1、针对现有技术中存在的问题,本发明提供了一种通过软件和硬件的配合,自动灵活的加载与配置fpga,提高调试效率以及产品灵活度的基于异构计算板卡的fpga协商加载方法。
2、本发明的目的通过以下技术方案实现。
3、一种基于异构计算板卡的fpga协商加载方法,在所述异构计算板卡增加一组外部拨码;所述外部拨码组合映射fpga加载模式;cpu软件系统读取外部拨码以及光模块速率信息;多一个拨码用来设置是否光模块匹配;cpu软件系统后台实时监控拨码与光模块是否与当前fpga加载相一致;
4、所述异构计算板卡上的外部拨码方式来映射多个fpga组合,并提供接口给cpu软件系统读取;
5、外部拨码匹配和光模块匹配设置:预留一个拨码用来设置是拨码匹配还是光模块匹配,若设置拨码匹配,则按照拨码组合进行对应的fpga加载,用于调试阶段;若设置光模块匹配外部拨码映射失效,只按照光模块速率进行对应的fpga加载,用于产品阶段。
6、所述cpu软件系统实时匹配光模块与拨码组合,若检测到当前fpga与光模块速率与拨码映射设置不匹配时,通过cpu软件系统进行硬重启之后重新进行fpga的协商。
7、所述异构计算板卡提供接口给cpu软件进行整板的硬重启。
8、所述cpu软件系统执行以下步骤:
9、1)启动cpu软件系统,读取拨码值,之后执行步骤2);
10、2)当光模块匹配,则读取光模块信息,根据光模块信息加载与配置fpga,之后执行步骤3),否则执行步骤8);
11、3)读取拨码值,之后执行步骤4);
12、4)当光模块匹配,则执行步骤5),否则执行步骤11);
13、5)读取光模块信息,之后执行步骤6);
14、6)当光模块速率与当前fpga加载相一致,则执行步骤7),否则返回步骤1);
15、7)等待10s后返回步骤3);
16、8)根据拨码值加载与配置fpga,之后执行步骤9);
17、9)读取拨码值,之后执行步骤10);
18、10)当光模块匹配,则执行步骤5),否则执行步骤11);
19、11)当拨码映射与当前fpga加载相一致,则执行步骤12),否则执行步骤1);
20、12)等待10s后返回步骤9)。
21、所述光模块使用向下兼容速率的光模块,同时支持10g速率和25g速率的sfp28,在光模块优先下匹配高速率,当切换为拨码优先时,自主匹配速率。
22、相比于现有技术,本发明的优点在于:
23、1、本发明通过拨码的方式来更改fpga流文件,操作简单易实现,减少了现有方案重新固化配置文件繁琐操作。
24、2、本发明在光模块优先下cpu软件根据光模块信息以自协商的方式来加载正确的fpga,无需人为操作。
25、3、本发明可以人为切换光模块优先与拨码优先,减少了调试阶段繁琐的操作,提高了产品的灵活度。
1.一种基于异构计算板卡的fpga协商加载方法,其特征在于在所述异构计算板卡增加一组外部拨码;所述外部拨码组合映射fpga加载模式;cpu软件系统读取外部拨码以及光模块速率信息;多一个拨码用来设置是否光模块匹配;cpu软件系统后台实时监控拨码与光模块是否与当前fpga加载相一致;
2.根据权利要求1所述的一种基于异构计算板卡的fpga协商加载方法,其特征在于:所述cpu软件系统实时匹配光模块与拨码组合,若检测到当前fpga与光模块速率与拨码映射设置不匹配时,通过cpu软件系统进行硬重启之后重新进行fpga的协商。
3.根据权利要求2所述的一种基于异构计算板卡的fpga协商加载方法,其特征在于:所述异构计算板卡提供接口给cpu软件进行整板的硬重启。
4.根据权利要求2所述的一种基于异构计算板卡的fpga协商加载方法,其特征在于:所述cpu软件系统执行以下步骤:
5.根据权利要求1-4任意一项所述的一种基于异构计算板卡的fpga协商加载方法,其特征在于:所述光模块使用向下兼容速率的光模块,同时支持10g速率和25g速率的sfp28,在光模块优先下匹配高速率,当切换为拨码优先时,自主匹配速率。