算法可扩展的区块链计算系统技术方案

技术编号:37042128 阅读:14 留言:0更新日期:2023-03-29 19:21
一种算法可扩展的区块链计算系统,包括:主控模块,用于从矿池获取原始数据,将所述原始数据拆分成多个子数据,并将所述多个子数据发送给计算模块;获取每个计算模块的计算结果,并进行验证,若验证成功,则将计算结果发送给所述矿池;多个计算模块,用于获取相应的目标子数据,根据预设算法对所述目标子数据进行计算,将计算结果返回给所述主控模块;其中,所述计算模块包括设置有所述预设算法的FPGA芯片,所述FPGA芯片在工作时例化为多个微处理器核,以执行所述预设算法进行计算。本发明专利技术可以对每个计算模块上的算法进行扩展定制,并且缩短了开发周期,节约了折旧成本,同时,提高了算力,增加了客户收益。增加了客户收益。增加了客户收益。

【技术实现步骤摘要】
算法可扩展的区块链计算系统


[0001]本专利技术属于区块链
,尤其涉及一种算法可扩展的区块链计算系统。

技术介绍

[0002]区块链技术,从广义上讲,其是利用块链式数据结构验证与存储数据,利用分布式节点共识算法生成和更新数据,利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约,编程和操作数据的全新的分布式基础架构与计算范式。其中最核心的部分为共识机制,它是所有记账节点之间怎么达成共识,去认定一个记录的有效性,这既是认定的手段,也是防止篡改的手段。而工作量证明(POW)方式,是当前业内公认的优秀的共识机制。
[0003]基于POW机制,企业为了参与到区块链的浪潮中,一种方式是开发出各种基于相应算法的高性能运算芯片,但可惜的是这些芯片只是基于某种单一加密算法而进行工作的(电路固化了算法),不能对算法进行修改、扩展,且开发周期较长,一般需要3

6个月,然而某些区块链社区往往会不定期地修改共识机制(算法发生变化);另一种方式是采用显卡的GPU执行算法,这种方式虽然可以对算法进行扩展,但是GPU的算力往往不高,导致效率较低。

技术实现思路

[0004]基于此,针对上述技术问题,提供一种算法可扩展的区块链计算系统。
[0005]本专利技术采用的技术方案如下:
[0006]一种算法可扩展的区块链计算系统,其特征在于,包括:
[0007]主控模块,用于从矿池获取原始数据,将所述原始数据拆分成多个子数据,并将所述多个子数据发送给计算模块;获取每个计算模块的计算结果,并进行验证,若验证成功,则将计算结果发送给所述矿池;
[0008]多个计算模块,用于获取相应的目标子数据,根据预设算法对所述目标子数据进行计算,将计算结果返回给所述主控模块;
[0009]其中,所述计算模块包括设置有所述预设算法的FPGA芯片,所述FPGA芯片在工作时例化为多个微处理器核,以执行所述预设算法进行计算。
[0010]本专利技术的计算模块在FPGA芯片上设置算法,因此算法可以根据需要进行修改,从而实现算法的扩展,解决了现有计算芯片不能对算法进行修改、扩展的问题,工作时,FPGA芯片121例化为多个微处理器核(核1

核n),通过该多个微处理器核执行预设算法进行计算,与现有技术中由显卡GPU执行算法相比,算力强、效率高,此外,在执行计算任务时,将原始数据拆分成多个子数据,分别由不同的计算模块对目标子数据进行计算,进一步提高了效率。
附图说明
[0011]下面结合附图和具体实施方式对本专利技术进行详细说明:
[0012]图1为本专利技术实施例提供的一种算法可扩展的区块链计算系统的结构示意图;
[0013]图2为本专利技术实施例的主控模块所执行流程的示意图;
[0014]图3为本专利技术实施例的计算模块所执行流程的示意图。
具体实施方式
[0015]以下将结合说明书附图对本专利技术的实施方式予以说明。需要说明的是,本说明书中所涉及的实施方式不是穷尽的,不代表本专利技术的唯一实施方式。以下相应的实施例只是为了清楚的说明本专利技术专利的
技术实现思路
,并非对其实施方式的限定。对于该领域的普通技术人员来说,在该实施例说明的基础上还可以做出不同形式的变化和改动,凡是属于本专利技术的技术构思和
技术实现思路
并且显而易见的变化或变动也在本专利技术的保护范围之内。
[0016]如图1所示,本专利技术实施例提供一种算法可扩展的区块链计算系统,包括主控模块110以及多个计算模块120。
[0017]在本实施例中,基于SPI总线,多个计算模块120依次串联,构成菊花链结构,首个计算模块120与主控模块110连接。
[0018]计算模块120包括FPGA(field program gate way,现场可编程的门阵列)芯片121以及与FPGA芯片121连接的存储器122。
[0019]FPGA芯片121具有预设算法,需要指出的是,由于算法设置在FPGA芯片上,故算法可以根据需要进行修改,从而实现算法的扩展,工作时,FPGA芯片121例化为多个微处理器核(核1

核n),通过该多个微处理器核执行预设算法进行计算,算力强、效率高。
[0020]存储器122用于存储与预设算法对应的随机数据,该算法在执行过程中,需要从存储器122中读取随机数据,当然,有些算法并不需要读取随机数据,故在该类场景中,存储器122也可以省略。
[0021]在本实施例中,存储器122采用DDR内存,进一步提高了效率。
[0022]如图2所示,主控模块110用于执行以下流程:
[0023]S101、通过stratrum协议与矿池2交互,从矿池2获取原始数据,将原始数据拆分成多个子数据,并将多个子数据发送给计算模块120:
[0024]将多个子数据下发给首个计算模块。
[0025]为了便于计算模块120确定目标子数据,在将原始数据拆分成多个子数据后,可以为每个子数据设置标识,如ID号等等。
[0026]S102、获取每个计算模块120的计算结果,并进行验证,若验证成功,则将计算结果发送给矿池2,从而获得收益。
[0027]其中,获取计算结果的具体过程如下:
[0028]向首个计算模块下发查询命令;
[0029]获取首个计算模块返回的查询命令,从查询命令中获取每个计算模块的计算结果。
[0030]如图3所示,多个计算模块120用于执行以下流程:
[0031]S201、获取相应的目标子数据:
[0032]每个计算模块120依次接收上级下发的多个子数据,每个计算模块120接收到上级下发的多个子数据后,从多个子数据中确定并获取对应的目标子数据,并将多个子数据下发给下级。
[0033]其中,计算模块120可以根据每个子数据的标识确定目标子数据。
[0034]S202、根据预设算法对目标子数据进行计算;
[0035]S203、将计算结果返回给主控模块110:
[0036]每个计算模块120依次接收上级下发的查询命令,每个计算模块接收到上级下发的查询命令后,将计算结果加入查询命令,并将查询命令下发给下级,最后一个计算模块将计算结果加入查询命令后,从最后一个计算模块开始各计算模块依次将查询命令返回给上级。
[0037]由上可知,本实施例系统的计算模块在FPGA芯片上设置算法,因此算法可以根据需要进行修改,从而实现算法的扩展,解决了现有计算芯片不能对算法进行修改、扩展的问题,工作时,FPGA芯片121例化为多个微处理器核(核1

核n),通过该多个微处理器核执行预设算法进行计算,与现有技术中由显卡GPU执行算法相比,算力强、效率高,此外,在执行计算任务时,将原始数据拆分成多个子数据,分别由不同的计算模块对目标子数据进行计算,进一步提高了效率。
[0038]综上,本专利技术可以对每个计算模块上的算法进行扩展定制,并且缩短了开发周本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种算法可扩展的区块链计算系统,其特征在于,包括:主控模块,用于从矿池获取原始数据,将所述原始数据拆分成多个子数据,并将所述多个子数据发送给计算模块;获取每个计算模块的计算结果,并进行验证,若验证成功,则将计算结果发送给所述矿池;多个计算模块,用于获取相应的目标子数据,根据预设算法对所述目标子数据进行计算,将计算结果返回给所述主控模块;其中,所述计算模块包括设置有所述预设算法的FPGA芯片,所述FPGA芯片在工作时例化为多个微处理器核,以执行所述预设算法进行计算。2.根据权利要求1所述的一种算法可扩展的区块链计算系统,其特征在于,所述多个计算模块依次串联,构成菊花链结构,首个计算模块与所述主控模块连接。3.根据权利要求2所述的一种算法可扩展的区块链计算系统,其特征在于,所述计算模块还包括用于存储与所述预设算法对应的随机数据的存储器。4.根据权利要求2或3所述的一种算法可扩展的区块链计算系统,其特征在于,所述将所述多个子数据发送给计算模块,进一步包括:将所述多个子数据下发给所述首个计算模块。5.根据权利要求4所述...

【专利技术属性】
技术研发人员:孙伟
申请(专利权)人:上海聪链信息科技有限公司
类型:发明
国别省市:

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

1