[发明专利]一种数据流控制方法和装置有效
申请号: | 201711281661.6 | 申请日: | 2017-12-07 |
公开(公告)号: | CN108255590B | 公开(公告)日: | 2021-07-30 |
发明(设计)人: | 黄理洪;杨作兴;韦建利;蔡清华;张宏 | 申请(专利权)人: | 深圳比特微电子科技有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 孟旸;王丽琴 |
地址: | 518057 广东省深圳市高*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据流 控制 方法 装置 | ||
本发明公开了一种数据流控制方法和装置。本发明技术方案主要包括:获取任务数据;将所述任务数据转换为符合计算格式的多个子任务数据;将所述多个子任务数据缓存于环形缓冲区;按照预定的时序,从所述环形缓冲区中获取子任务数据并转发至计算装置进行任务计算。本发明技术方案能够保证计算装置始终能够从缓存中获得子任务数据进行计算,从而能够充分发挥计算装置的算力。缓存采用环形缓冲设计,可避免线程之间的锁竞争问题,避免向计算装置分发子任务数据的中断。由于可以采用总线结构实现本发明的技术方案,因此,可以降低挖矿硬件成本,并同样能够向算力板提供优秀的任务数据发送时序。
技术领域
本发明涉及数据分发处理技术,特别涉及一种可应用于虚拟货币矿机的数据流控制方法和装置。
背景技术
虚拟货币矿机主要由控制板和算力板构成。其中,控制板的作用是从虚拟货币矿池中抓取任务数据,对任务进行必要的HASH运算,以将所抓取的任务数据拆分或者转换成各个算力板能够处理的子任务数据,然后把子任务数据按照严格的时序要求发送给各个算力板处理,再从各个算力板读取运算结果,把符合要求的结果递交给矿池。矿池会根据矿机递交结果的数量发放虚拟货币奖励。如果在控制板侧,任务数据不能按照严格的时序要求定时发送到算力板,则不能充分地发挥出算力板的运算性能,影响矿机的实际算力。
目前的主流矿机方案采用一个控制板带三个算力板。而控制板的主流方案是采用Xilinx公司的FPGA Zynq-7000。基于FPGA硬件的良好性能,使得该方案具有能够将任务按严格的时序(通过FPGA的硬件描述语言实现)送给算力板的优点,但是该方案的成本过高,而且货源不稳定。面对日益增长的挖矿难度和算力提升需求,该方案显然并不具备成本优势。
发明内容
有鉴于此,本发明提供一种数据流控制方法和装置,以替代现有的FPGA方案的算力板,降低挖矿硬件成本,并向算力板提供优秀的任务数据发送时序。
本申请的技术方案是这样实现的:
一种数据流控制方法,包括:
获取任务数据;
将所述任务数据转换为符合计算格式的多个子任务数据;
将所述多个子任务数据缓存于环形缓冲区;
从所述环形缓冲区中获取子任务数据并转发至计算装置进行任务计算。
进一步,将所述多个子任务数据缓存于环形缓冲区的速度大于从所述环形缓冲区中获取子任务数据的速度。
进一步,按照预定的时序,从所述环形缓冲区中定时获取所述子任务数据并转发至计算装置。
进一步,所述任务数据为从虚拟货币矿池获取的任务数据;
所述计算装置为算力板。
一种数据流控制装置,包括:
获取任务数据,将所述任务数据转换为符合计算格式的多个子任务数据,并将所述多个子任务数据缓存于环形缓冲区的数据分配单元;
连接于所述数据分配单元以提供所述环形缓冲区的内存单元;以及,
连接于所述内存单元以从所述环形缓冲区中获取子任务数据并分别转发至至少一个计算装置进行任务计算的至少一个数据转发单元。
进一步,所述环形缓冲区为至少一个,并且,所述环形缓冲区与数据转发单元为一一对应关系,每个所述数据转发单元只从与其对应的环形缓冲区中获取子任务数据。
进一步,所述数据分配单元、内存单元和数据转发单元通过总线相互连接;
所述数据流控制装置还包括连接于所述总线的网络连接端口和连接于计算装置的数据分发端口。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳比特微电子科技有限公司,未经深圳比特微电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711281661.6/2.html,转载请声明来源钻瓜专利网。