【技术实现步骤摘要】
多节点多通道高速并行处理方法及系统
本专利技术涉及计算机
,具体涉及一种多节点多通道高速并行处理方法及系统。
技术介绍
FPGA(Field-ProgrammableGateArray),即现场可编程门阵列,它是在PAL(ProgrammableArrayLogic)可编程阵列逻辑、GAL(GenericArrayLogic)通用阵列逻辑、CPLD(ComplexProgrammableLogicDevice)复杂可编程逻辑器件等可编程器件的基础上进一步发展的产物。它是作为专用集成电路领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。当前,加密卡的主要控制功能被集成在FPGA中实现,当主机上的数据需要送到加密卡上加解密时,一般会有多种加解密算法的使用需求,包括对称的和非对称的。如果要把这些需要加解密处理的数据都放在一个通道收发时,一旦数据量变大,则单通道模式容易造成数据拥塞的现象。另外,如果有大量的某任务数据占据数据流的前端,则只有将该任务数据完成后,才能传输其它 ...
【技术保护点】
1.一种多节点多通道高速并行处理方法,其特征在于,包括以下步骤:/n基于待处理数据包的任务需求从多个虚拟通道选定一个虚拟通道作为目标虚拟通道,基于所述目标虚拟通道确定相应的主机正向缓冲区以及相应的主机反向缓冲区作为目标缓冲区;其中,同一虚拟通道的主机正向缓冲区中的多个正向内存节点与主机反向缓冲区中的多个反向内存节点一一对应,且多个正向内存节点分别用于缓存待处理数据包以供FPGA芯片读取,多个反向内存节点分别用于接收经由FPGA芯片处理过的完成数据包;/n从目标缓冲区中,为待处理数据包分配所需的正向内存节点和反向内存节点,主机向m个正向内存节点中的分配的正向内存节点写入待处理 ...
【技术特征摘要】
1.一种多节点多通道高速并行处理方法,其特征在于,包括以下步骤:
基于待处理数据包的任务需求从多个虚拟通道选定一个虚拟通道作为目标虚拟通道,基于所述目标虚拟通道确定相应的主机正向缓冲区以及相应的主机反向缓冲区作为目标缓冲区;其中,同一虚拟通道的主机正向缓冲区中的多个正向内存节点与主机反向缓冲区中的多个反向内存节点一一对应,且多个正向内存节点分别用于缓存待处理数据包以供FPGA芯片读取,多个反向内存节点分别用于接收经由FPGA芯片处理过的完成数据包;
从目标缓冲区中,为待处理数据包分配所需的正向内存节点和反向内存节点,主机向m个正向内存节点中的分配的正向内存节点写入待处理数据包,并向相应的命令字FIFO写一个命令字;当正向DMA模块轮询到该命令字FIFO时,正向DMA模块基于命令字信息确定出分配的正向内存节点的地址信息和待处理数据包的长度,并将待处理数据包传输给算法模块;
所述算法模块接收到待处理数据包并进行运算处理,得到对应的完成数据包,并向相应的状态字FIFO写一个状态字;当反向DMA模块轮询到该状态字FIFO时,反向DMA模块基于状态字信息确定出分配的反向内存节点的地址信息和完成数据包的长度,并将完成数据包写入分配的反向内存节点中。
2.根据权利要求1所述的多节点多通道高速并行处理方法,其特征在于,从目标缓冲区中,为待处理数据包分配所需的正向内存节点和反向内存节点时,执行:读取某个应用主体的待处理数据包长度,判断待处理数据包长度是否小于等于一个正向内存节点的存储量;
若待处理数据包长度小于等于一个正向内存节点的存储量,则基于待处理数据包生成第一申请请求;所述主机根据所述第一申请请求为该待处理数据包分配一个正向内存节点和一个反向内存节点;
若待处理数据包长度大于正向内存节点的存储量,则将该待处理数据划分为一组有序的待处理子数据包,并基于该待处理子数据包生成第二申请请求;所述主机根据第二申请请求,为该待处理数据包分配一组有序的正向内存节点和反向内存节点。
3.根据权利要求2所述的多节点多通道高速并行处理方法,其特征在于,该应用主体分别向一组有序的正向内存节点写入对应的待处理子数据包;正向DMA模块基于命令字FIFO中的命令字信息确定包长度大小以及对应的正向内存节点,然后读取各个正向内存节点的待处理子数据包,并传输给算法模块;所述算法模块接收到一组有序的待处理子数据包并进行并行运算处理,得到对应的完成子数据包;所述反向DMA模块在基于状态字FIFO中的状态字信息确定出确定包长度大小以及对应的反向内存节点后,将长度确定的各个完成子数据包分别写入对应的反向内存节点以重组出一组有序的完成数据包。
4.根据权利要求1所述的多节点多通道高速并行处理方法,其特征在于,从目标缓冲区中,为待处理数据包分配所需的正向内存节点和反向内存节点时,执行:读取某个应用主体的待处理数据包长度,基于待处理数据包长度与预设比例关系,推算出完成数据包长度,并判断推算出的完成数据包长度是否小于等于一个反向内存节点的存储量;
若推算出的完成数据包长度小于等于一个反向内存节点的存储量,则基于推算出的完成数据包长度生成第三申请请求;所述主机根据所述第三申请请求为该待处理数据包分配一个正向内存节点和一个反向内存节点;
若推算出的完成数据包长度大于一个反向内存节点的存储量,则基于推算出的完成数据包长度生成第四申请请求;所述主机根据所述第四申请请求为该待处理数据包分配分配一组有序的正向内存节点和反向内存节点。
5.根据权利要求1所述的多节点多通道高速并行处理方法,其特征在于,从目标缓冲区中,为待处理数据包分配所需的正向内存节点和反向内存节点时,执行:
当同一时间段内...
【专利技术属性】
技术研发人员:吴世勇,苏庆会,李银龙,王凯霖,王斌,冯驰,王中原,卫志刚,徐诺,姬少锋,
申请(专利权)人:郑州信大捷安信息技术股份有限公司,
类型:发明
国别省市:河南;41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。