本发明涉及芯片,尤其涉及一种大规模集群fpga通信方法、电子设备和介质。
背景技术:
1、在芯片开发的过程中,需要在芯片流片前对芯片进行fpga原型验证,fpga原型验证用于验证芯片功能。对于大型和超大型的芯片设计,需要采用大规模集群fpga原型验证系统进行fpga原型验证。大规模集群fpga原型验证系统对集群fpga原型验证系统的fpga数量要求是巨大的,如何实现用于芯片原型验证的大规模集群fpga的互联以及超大集群fpga之间的通信成为亟待解决的技术问题。
技术实现思路
1、本发明目的在于,提供一种超大规模集群fpga通信方法、电子设备和介质,能够快速准确为实现超大规模集群fpga的通信。
2、根据本发明第一方面,提供了一种超大规模集群fpga通信方法,所述超大集群fpga包括p个互联的第一fpga{f1,f2,…,fp,…,fp},其中,fp为第p个第一fpga,p的取值范围为1到p,第一fpga包括交换模块和m个第一端口,何两个第一端口能够通过所述交换模块进行通信,每一第一端口能够级联一个第一fpga,每一fp至少能够通过一个第一端口与{f1,f2,…,fp,…,fp}中除fp之外的其他任意一个第一fpga通信,每一第一端口设置有对应的pcl编码,pcl编码包括第一端口所在的第一fpga编号p、第一端口直接连接的第一fpga编号c和第一端口连接的最远第一fpga的编号l;
3、所述方法包括:
4、步骤d1、待处理fpga获取基于预设的协议结构生成的通信指令,待处理fpga为{f1,f2,…,fp,…,fp}中的其中一个第一fpga,预设的协议结构包括{b1,b2,b5},其中,b1为操作类型标识,b1=1表示读指令,b1=2表示读回复指令,b1=3表示写指令,b2为目标第一fpga编号,b5为目标地址和目标数据;
5、步骤d2、判断待处理fpga中是否存在满足b2≥c且b≤l的第一端口,若存在,则执行步骤d3,否则,判断是否满足b2等于待处理fpga的p,若满足,则将当前待处理fpga确定为第一目标通信fpga,执行步骤d5,否则,判断是否满足b2小于待处理fpga的p,或者满足b2大于待处理fpga的l且b2并不等于待处理fpga的p,若满足,则执行步骤d4;
6、步骤d3、将所述通信指令发送给该第一端口所连接的第一fpga,并将该第一端口所连接的第一fpga更新为待处理fpga,返回执行步骤d2;
7、步骤d4、将所述通信指令发送给待处理fpga的父第一fpga,并将待处理fpga的父第一fpga更新为待处理fpga,返回执行步骤d2;
8、步骤d5、基于所述第一目标通信fpga执行所述通信指令。
9、根据本发明第二方面,提供一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行本发明第一方面所述的方法。
10、根据本发明第三方面,提供一种计算机可读存储介质,存储有计算机可执行指令,所述计算机指令用于执行本发明第一方面所述的方法。
11、本发明与现有技术相比具有明显的优点和有益效果。借由上述技术方案,本发明提供的一种大规模集群fpga通信方法、电子设备和介质可达到相当的技术进步性及实用性,并具有产业上的广泛利用价值,其至少具有以下有益效果:
12、本发明在每一第一端口设置pcl编码,基于预设的协议结构生成的通信指令,基于通信指令和pcl编码快速确定下一接收通信指令的待处理fpga,直至找到第一目标通信fpga,基于第一目标通信fpga执行通信指令,能够快速准确为实现超大规模集群fpga的通信。
1.一种超大规模集群fpga通信方法,其特征在于,
2.根据权利要求1所述的方法,其特征在于,
3.根据权利要求1所述的方法,其特征在于,
4.根据权利要求3所述的方法,其特征在于,
5.根据权利要求4所述的方法,其特征在于,
6.根据权利要求4所述的方法,其特征在于,
7.根据权利要求3所述的方法,其特征在于,
8.一种电子设备,其特征在于,包括:
9.一种计算机可读存储介质,其特征在于,存储有计算机可执行指令,所述计算机可执行指令用于执行前述权利要求1-7中任一项所述的方法。