一种FPGA并行阵列模块及其计算方法技术

技术编号:15638018 阅读:68 留言:0更新日期:2017-06-15 12:04
本发明专利技术公开一种FPGA并行阵列模块,其连接至上位机,其包括依次设置的对外通信层、任务切分层和计算层;对外通信层用于与上位机进行通讯,其设有ARM主控模块,ARM主控模块用于实现软件自定义功能调用;ARM主控模块用于实现Linux软件流程,其设有接口模块,对外通信层通过接口模块连接至上位机,且ARM主控模块与接口模块之间设有破解模块;任务切分层用于对任务进行切分并均衡调度,任务均分层设有多个FPGA二级主控模块,FPGA二级主控模块用于进行复杂计算;计算层设有多个ASIC模块,ASIC模块用于进行简单计算;每个FPGA二级主控模块连接至多个ASIC模块。本发明专利技术采用独立的FPGA二级主控模块,合理分配资源,达到真正的FPGA并行计算,将FPGA的效能发挥到极致,提高了计算能力。

【技术实现步骤摘要】
一种FPGA并行阵列模块及其计算方法
本专利技术涉及FPGA阵列计算领域,尤其涉及一种FPGA并行阵列模块及其计算方法。
技术介绍
目前的FPGA都是采用单板插接在PC主板上的方式进行单独计算,不能有效进行并行计算,而现有的高性能技术主要有GPU,单板FPGA,GPU能耗很高,而且受主板插槽的限制,在商用领域很难有太多GPU实现并行计算,FPGA能耗低,但目前使用FPGA实现计算时,都是采用PCIE插槽的方式,普通主板也不能并行使用太多FPGA,故不能满足高效计算的需求。综上,有必要设计一种FPGA并行阵列模块及其计算方法来弥补上述缺陷。
技术实现思路
本专利技术提出一种FPGA并行阵列模块及其计算方法,其解决了现有技术中计算能力低的缺陷。本专利技术采用多个独立的FPGA二级主控模块,并行多个ASIC模块,合理调度分配资源,达到真正的FPGA并行计算,将FPGA的效能发挥到极致,极大提高了计算能力。本专利技术的技术方案是这样实现的:本专利技术公开一种FPGA并行阵列模块,其连接至上位机,其包括依次设置的对外通信层、任务切分层和计算层;对外通信层、任务切分层、计算层均设有电源模块和散热模块;对外通信层用于与上位机进行通讯,对外通信层设有ARM主控模块,ARM主控模块用于实现软件自定义功能调用;ARM主控模块用于实现Linux软件流程,其设有接口模块,对外通信层通过接口模块连接至上位机,且ARM主控模块与接口模块之间设有破解模块;破解模块用于封装组织FPGA阵列,调度FPGA资源进行密钥计算,计算出正确的密钥;任务切分层用于对任务进行切分并均衡调度,任务均分层设有多个FPGA二级主控模块,FPGA二级主控模块用于进行复杂计算;计算层设有多个ASIC模块,ASIC模块用于进行简单计算;每个FPGA二级主控模块连接至多个ASIC模块;电源模块用于给ARM主控模块、FPGA二级主控模块、ASIC模块提供工作电源;散热模块用于给ARM主控模块、FPGA二级主控模块、ASIC模块散热。其中,任务切分层进一步设有预设功能模块,其用于提前将复杂计算和简单计算进行设定;多个FPGA二级主控模块上设有第一计算功能识别模块,多个ASIC模块上设有第二计算功能识别模块,预设功能模块与第一计算功能识别模块、第二计算功能识别模块均连接。其中,第一计算功能识别模块用于识别计算任务中的复杂计算,并将其与预设功能模块中定义的复杂计算进行比对;第二计算功能识别模块用于识别计算任务中的简单计算,并将其与预设功能模块中定义的简单计算进行比对。其中,对外通信层进一步设有存储模块,存储模块用于数据存储。其中,接口模块采用TCP/IP接口方式分别连接至上位机和ARM通信模块。其中,FPGA二级主控模块设有十个、二十个、四十个或八十个。其中,每个FPGA二级主控模块连接至十个ASIC模块或十二个ASIC模块。其中,散热模块设有多个对称设置的散热风扇,且多个散热风扇均连接至电源模块,相对设置的两个散热风扇形成对流。本专利技术还公开一种FPGA并行阵列模块的计算方法,其包括如下步骤:(S01)上位机将计算任务通过接口模块输送至ARM主控模块;(S02)ARM主控模块针对计算任务,进行软件自定义功能调用后,将计算任务输送至多个FPGA二级主控模块;(S03)多个FPGA二级主控模块对计算任务进行切分,均衡完成其中的复杂计算,将简单计算输送至多个ASIC模块,同时将计算结果反馈至ARM主控模块;(S04)ASIC模块完成简单计算,并将计算结果反馈至ARM主控模块;(S05)ARM主控模块将步骤(S03)和步骤(S04)反馈的计算结果输送至上位机。其中,步骤(S03)中,FPGA二级主控模块判断复杂计算和简单计算的方法为:(S31)通过预设功能模块提前将简单计算和复杂计算进行定义;(S32)通过第一计算功能识别模块识别出计算任务中的复杂计算,并与预设功能模块中定义的复杂计算进行比对,将计算任务中与预设功能模块中定义的复杂计算相匹配的计算任务分配至多个FPGA二级主控模块,FPGA二级主控模块对该复杂计算进行计算,同时将未识别和未匹配成功的计算任务分配至多个ASIC模块;(S33)通过第二计算功能识别模块识别步骤(32)分配过来的计算任务,将简单计算识别出来,并将其与预设功能模块中的简单计算进行比对,将计算任务中与预设功能模块中定义的简单计算相匹配的计算任务分配至多个ASIC模块,ASIC模块对该简单计算进行计算,同时将未识别和未匹配成功的计算任务反馈至FPGA二级主控模块;(S34)FPGA二级主控模块对步骤(S33)反馈过来的计算任务进行计算。与现有技术相比,本专利技术具有如下优点:本专利技术采用FPGA进行计算,能耗要显著低于GPU;其实行TCP/IP接口方式,当扩充多个模块时,直接插接路由器即可,不受物理接口数量的限制;且本专利技术采用单独物理模块,加装合理布局的散热模块,保证散热不影响器件性能。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术FPGA并行阵列模块的示意图。图2为本专利技术FPGA并行阵列模块的分解示意图。图3为本专利技术电源模块的电路示意图。图4为本专利技术散热模块的电路示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。为了有助于和澄清随后的实施例的描述,在对本专利技术的具体实施方式进行详细说明之前,对部分术语进行解释,下列的解释应用于本说明书以及权利要求书。本专利技术中出现的FPGA是Field-ProgrammableGateArray的缩写,其中文意思是现场可编程门阵列,是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点;本专利技术中出现的ASIC是ApplicationSpecificIntegratedCircuit的英文缩写,在集成电路界被认为是一种为专门目的而设计的集成电路。本专利技术中出现的ARM是AdvancedRISCMachines的缩写。其它英文词语均为代码,不代表其它任何意义。参照图1至图4,作为优选的实施方式,本专利技术公开一种FPGA并行阵列模块,其连接至上位机,其包括依次设置的对外通信层、任务切分层和计算层;对外通信层、任务切分层、计算层均设有电源模块和散热模块;对外通信层用于与上位机进行通讯,对外通信层设有ARM主控模块,ARM主控模块用于实现软件自定义功能调用;ARM主控模块用于实现Linux软件流程,其设有接口模块,对外通信层通过接口模块连接至上位机,且ARM主控模块与接口模块之间设有破解模块;破解模块用于封装组织FPGA阵列,调度FPGA资源进行密钥计算,计算出正确的密钥;任务切分层用于对任务进行切分并均衡调度,任务均分层设有多个本文档来自技高网...
一种FPGA并行阵列模块及其计算方法

【技术保护点】
一种FPGA并行阵列模块,其连接至上位机,其特征在于,其包括依次设置的对外通信层、任务切分层和计算层;对外通信层、任务切分层、计算层均设有电源模块和散热模块;对外通信层用于与上位机进行通讯,对外通信层设有ARM主控模块,ARM主控模块用于实现软件自定义功能调用;ARM主控模块用于实现Linux软件流程,其设有接口模块,对外通信层通过接口模块连接至上位机,且ARM主控模块与接口模块之间设有破解模块;破解模块用于封装组织FPGA阵列,调度FPGA资源进行密钥计算,计算出正确的密钥;任务切分层用于对任务进行切分并均衡调度,任务均分层设有多个FPGA二级主控模块,FPGA二级主控模块用于进行复杂计算;计算层设有多个ASIC模块,ASIC模块用于进行简单计算;每个FPGA二级主控模块连接至多个ASIC模块;电源模块用于给ARM主控模块、FPGA二级主控模块、ASIC模块提供工作电源;散热模块用于给ARM主控模块、FPGA二级主控模块、ASIC模块散热。

【技术特征摘要】
1.一种FPGA并行阵列模块,其连接至上位机,其特征在于,其包括依次设置的对外通信层、任务切分层和计算层;对外通信层、任务切分层、计算层均设有电源模块和散热模块;对外通信层用于与上位机进行通讯,对外通信层设有ARM主控模块,ARM主控模块用于实现软件自定义功能调用;ARM主控模块用于实现Linux软件流程,其设有接口模块,对外通信层通过接口模块连接至上位机,且ARM主控模块与接口模块之间设有破解模块;破解模块用于封装组织FPGA阵列,调度FPGA资源进行密钥计算,计算出正确的密钥;任务切分层用于对任务进行切分并均衡调度,任务均分层设有多个FPGA二级主控模块,FPGA二级主控模块用于进行复杂计算;计算层设有多个ASIC模块,ASIC模块用于进行简单计算;每个FPGA二级主控模块连接至多个ASIC模块;电源模块用于给ARM主控模块、FPGA二级主控模块、ASIC模块提供工作电源;散热模块用于给ARM主控模块、FPGA二级主控模块、ASIC模块散热。2.如权利要求1所述的FPGA并行阵列模块,其特征在于,任务切分层进一步设有预设功能模块,其用于提前将复杂计算和简单计算进行设定;多个FPGA二级主控模块上设有第一计算功能识别模块,多个ASIC模块上设有第二计算功能识别模块,预设功能模块与第一计算功能识别模块、第二计算功能识别模块均连接。3.如权利要求2所述的FPGA并行阵列模块,其特征在于,第一计算功能识别模块用于识别计算任务中的复杂计算,并将其与预设功能模块中定义的复杂计算进行比对;第二计算功能识别模块用于识别计算任务中的简单计算,并将其与预设功能模块中定义的简单计算进行比对。4.如权利要求3所述的FPGA并行阵列模块,其特征在于,对外通信层进一步设有存储模块,存储模块用于数据存储。5.如权利要求1-4中任一项所述的FPGA并行阵列模块,其特征在于,接口模块采用TCP/IP接口方式分别连接至上位机和ARM通信模块。6.如权利要求5所述的FPGA并行阵列模块,其特征在于,FPGA二级主控模块设有十个、二十个、四...

【专利技术属性】
技术研发人员:朱勇杰伯桂增招继恩姚永深黄敏侯邦恩
申请(专利权)人:杰创智能科技股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1