CN113296705A - 一种Filecoin中并行计算PoseidonHash的架构系统 - Google Patents

一种Filecoin中并行计算PoseidonHash的架构系统 Download PDF

Info

Publication number
CN113296705A
CN113296705A CN202110584953.7A CN202110584953A CN113296705A CN 113296705 A CN113296705 A CN 113296705A CN 202110584953 A CN202110584953 A CN 202110584953A CN 113296705 A CN113296705 A CN 113296705A
Authority
CN
China
Prior art keywords
circuit
hash
data stream
data
computing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110584953.7A
Other languages
English (en)
Other versions
CN113296705B (zh
Inventor
俞萍初
吕家力
张尧
曹玉龙
景博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chunxiao Hangzhou Education Technology Development Co ltd
Firefly Technology Holdings Ltd
Original Assignee
Zhejiang Firefly Blockchain Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Firefly Blockchain Technology Co ltd filed Critical Zhejiang Firefly Blockchain Technology Co ltd
Priority to CN202110584953.7A priority Critical patent/CN113296705B/zh
Publication of CN113296705A publication Critical patent/CN113296705A/zh
Application granted granted Critical
Publication of CN113296705B publication Critical patent/CN113296705B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种Filecoin中并行计算Poseidon Hash的架构系统,包括控制器、存储器、高速接口电路、控制接口电路、哈希‑11计算电路、编码模块电路、第一流切换电路、第二流切换电路、哈希‑8计算电路、数据排队电路,哈希‑11计算电路、编码模块电路都通过数据排队电路与高速接口电路,哈希‑11计算电路、编码模块电路、高速接口电路都通过第一流切换电路与哈希‑8计算电路连接,哈希‑8计算电路通过第二流切换电路与高速接口电路连接,哈希‑11计算电路、编码模块电路都连接高速接口电路,高速接口电路、控制器都与存储器相连,本发明计算速度快,耗时短,功耗低,实现电路简单。

Description

一种Filecoin中并行计算PoseidonHash的架构系统
技术领域
本发明涉及Filecoin中并行计算Poseidon Hash的架构系统。
背景技术
Filecoin是一个存储文件的对等网络,具有内置的经济激励机制,可确保随着时间的推移可靠地存储文件。
在Filecoin中,用户付费将其文件存储在存储矿工上。存储矿工是负责存储文件并证明其已随时间正确存储文件的计算机。任何想要存储其文件或希望因存储其它用户的文件而获得报酬的人都可以加入Filecoin。可用存储空间以及存储空间的价格不受任何一家公司的控制。相反,Filecoin促进了开放市场来存储和检索任何人都可以参与的文件。
Filecoin中挖矿算法分为两个阶段,前期的数据封装打包和后期的证明阶段。而前期的数据封装打包数据量大,提取哈希值时对算力要求高,运算时间长。现阶段主要用GPU对poseidon hash算法进行加速,但GPU功耗高,运行不稳定,维护成本高,因此提出了本发明的加速电路。
发明内容
本发明的目的是克服现有技术中的不足,提供一种Filecoin中并行计算PoseidonHash的架构系统。
为了达到上述目的,本发明是通过以下技术方案实现的:
一种Filecoin中并行计算Poseidon Hash的架构系统,包括控制器、存储器、高速接口电路、控制接口电路、哈希-11计算电路、编码模块电路、第一流切换电路、第二流切换电路、哈希-8计算电路、数据排队电路,所述哈希-11计算电路、编码模块电路都通过所述数据排队电路与高速接口电路连接,所述哈希-11计算电路、编码模块电路、高速接口电路都通过第一流切换电路与哈希-8计算电路连接,所述哈希-8计算电路通过第二流切换电路与高速接口电路连接,所述哈希-11计算电路、编码模块电路都连接高速接口电路,所述高速接口电路、控制器都与存储器相连,所述控制器通过控制接口电路与高速接口电路相连。
作为优选,存储器是一种大容量高速的存储器。
作为优选,高速接口电路通过控制接口电路接受控制器的命令,使得所述高速接口电路从存储器读取的数据流c发送给第一流切换电路,同时所述高速接口电路从存储器读取的数据流ab发送给数据排队电路,所述数据流ab是以12个256位整数为单位的数据流,所述数据流c是以8个256位整数为单位的数据流。
作为优选,所述数据排队电路用于将数据流ab发送给哈希-11计算电路和编码模块电路,然后哈希-11计算电路从数据流ab中以每12个256位整数为单位取出11个256位整数进行poseidon hash计算得到1个256位整数数据,计算完毕得到n个256位整数数据的数据流A,从而从哈希-11计算电路输出数据流A,与此同时,编码模块电路从数据流ab中以每12个256位整数为单位取出2个256位整数进行模加计算得到1个256位整数数据,计算完毕得到n个256位整数数据的数据流B,从而从编码模块电路输出数据流B。
作为优选,哈希-11计算电路将数据流A同时发送给第一流切换电路和高速接口电路,所述编码模块电路将数据流B同时发送给第一流切换电路和高速接口电路,然后高速接口电路将数据流A、数据流B发送给存储器进行存储。
作为优选,所述第一流切换电路将数据流A、数据流B、数据流c都添加id号,所述id号用来区分是哪个接口流入的数据,并把id号随同数据流A、数据流B、数据流c一起传给哈希-8计算电路
作为优选,所述哈希-8计算电路分别将数据流A、数据流B、数据流c中每8个256位整数数据为单位进行poseidon hash计算得到1个256位整数数据,所述数据流A通过哈希-8计算电路计算得到数据流D,所述数据流B通过哈希-8计算电路计算得到数据流E,所述数据流c通过哈希-8计算电路计算得到数据流C。
作为优选,哈希-8计算电路将数据流D、数据流E、数据流C连同id号传送给第二流切换电路,然后第二流切换电路将数据流D、数据流E、数据流C根据id号对应的传送给高速接口电路,同时删除数据流中的id号,然后高速接口电路将数据流D、数据流E、数据流C发送给给存储器进行存储。
作为优选,哈希-8计算电路、哈希-11计算电路都以流水线的方式工作。
作为优选,模加计算为(x+y)mod p,所述x、y为数据流ab提取要参加编码计算的2个256位整数数据,所述p为一个质数常量。例如p为:0x73eda753299d7d483339d80809a1d80553bda402fffe5bfeffffffff00000001
本发明的有益效果如下:本发明的哈希-11计算电路计算量最大,因此该电路为满负载工作,经过哈希-11计算电路后输入给哈希-8计算电路的计算数据量减为原来的1/11,因此哈希-8计算电路的初始计算量相对于哈希-11小很多,哈希-8计算电路每计算完一层,数据量就减小7/8,以此类推,哈希-8计算电路的整体负载是很小的,因此通过对哈希-8计算电路的分时复用,达到并行的目标的同时,让实现电路变的简单,功耗更底。且本发明的哈希-8计算电路、哈希-11计算电路都以流水线的方式工作,因此本发明计算速度快,耗时短,功耗低,实现电路简单。
附图说明
图1为本发明的系统框图;
图2为本发明的工作模式切换图。
具体实施方式
下面结合说明书附图对本发明的技术方案作进一步说明:
如图1所示,一种Filecoin中并行计算Poseidon Hash的架构系统,包括控制器1、存储器2、高速接口电路3、控制接口电路4、哈希-11计算电路5、编码模块电路6、第一流切换电路7、第二流切换电路8、哈希-8计算电路9、数据排队电路10,所述哈希-11计算电路5、编码模块电路6都通过所述数据排队电路10与高速接口电路3连接,所述哈希-11计算电路5、编码模块电路6、高速接口电路3都通过第一流切换电路7与哈希-8计算电路9连接,所述哈希-8计算电路9通过第二流切换电路8与高速接口电路3连接,所述哈希-11计算电路5、编码模块电路6都连接高速接口电路3,所述高速接口电路3、控制器1都与存储器2相连,所述控制器1通过控制接口电路4与高速接口电路3相连。高速接口电路3、控制接口电路4、哈希-11计算电路5、编码模块电路6、第一流切换电路7、第二流切换电路8、哈希-8计算电路9、数据排队电路10都是数字电路。
如图1所示,存储器2是一种大容量高速的存储器2。
如图1所示,高速接口电路3通过控制接口电路4接受控制器1的命令,使得所述高速接口电路3从存储器2读取的数据流c发送给第一流切换电路7,同时所述高速接口电路3从存储器2读取的数据流ab发送给数据排队电路10。数据流ab是以12个256位整数为单位的数据流,所述数据流c是以8个256位整数为单位的数据流。
如图1所示,所述数据排队电路10用于将数据流ab发送给哈希-11计算电路5和编码模块电路6,然后哈希-11计算电路5从数据流ab中以每12个256位整数为单位取出11个256位整数进行poseidon hash计算得到1个256位整数数据,计算完毕得到n个256位整数数据的数据流A,从而从哈希-11计算电路5输出数据流A,与此同时,编码模块电路6从数据流ab中以每12个256位整数为单位取出2个256位整数进行模加计算得到1个256位整数数据,计算完毕得到n个256位整数数据的数据流B,从而从编码模块电路6输出数据流B。哈希-11计算电路5的输入接口是数据流的形式输入,输出也是数据流的形式输出,哈希-11计算电路5的输入同输出的数据数比为11:1。数据流ab中每12个256位整数中的一个整数既要进行poseidon hash计算又要进行模加计算。
如图1所示,哈希-11计算电路5将数据流A同时发送给第一流切换电路7和高速接口电路3,所述编码模块电路6将数据流B同时发送给第一流切换电路7和高速接口电路3,然后高速接口电路3将数据流A、数据流B发送给存储器2进行存储。
如图1所示,第一流切换电路7将数据流A、数据流B、数据流c都添加id号,所述id号用来区分是哪个接口流入的数据,并把id号随同数据流A、数据流B、数据流c一起传给哈希-8计算电路9。
如图1所示,哈希-8计算电路9分别将数据流A、数据流B、数据流c中每8个256位整数数据为单位进行一次poseidon hash计算得到1个256位整数数据,哈希-8计算电路的输入接口是数据流的形式输入,哈希-8计算电路的输出也是数据流的形式输出,哈希-8计算电路的输入同输出的数据数比为8:1。所述数据流A通过哈希-8计算电路9计算得到数据流D,所述数据流B通过哈希-8计算电路9计算得到数据流E,所述数据流c通过哈希-8计算电路9计算得到数据流C。
如图1所示,哈希-8计算电路9将数据流D、数据流E、数据流C连同id号传送给第二流切换电路8,然后第二流切换电路8将数据流D、数据流E、数据流C根据id号对应的传送给高速接口电路3,同时删除数据流中的id号,然后高速接口电路3将数据流D、数据流E、数据流C发送给存储器2进行存储。
第一流切换电路和所述的第二流切换电路都用于切换数据流,第一流切换电路和所述的第二流切换电路所切换的数据流是以8个256位整数数据为单位组成的数据包的数据流,在切换时以8个256位整数数据为单位进行切换。
哈希-11计算电路的计算原理:从数据流ab中12个256位整数单位数据包中取出11个256位整数,按一定的次序排好,从而得到11个256位整数数据的完整数据包,哈希-11计算电路将11个256位整数数据的完整数据包自动添加一个256位整数数据的常量组成一个12个256位整数数据的新数据包,并进行poseidon hash计算,其结果输出一个12个256位整数数据的数据包,取这个结果数据包的第二个的256位整数数据,并输出这个256位整数数据。所述一个256位整数数据的常量用16进制表示,例如:0x7FF。
哈希-8计算电路的计算原理:所述哈希-8计算电路流入的是以8个256位整数数据组成的数据包的数据流,当得到8个256位整数数据的完整数据包后,自动添加一个256位整数的常量,组成9个256位整数数据的新数据包,并进行poseidon hash计算,其结果输出9个256位整数数据的数据包,取这个结果数据包的第二个256位整数数据,并输出这个256位整数数据。这里的256位整数的常量用16进制表示,例如:0xFF如图1所示,模加计算为(x+y)mod p,所述x、y为数据流ab提取要参加编码计算的2个256位整数数据,所述p为一个大质数常量。例如p为0x73eda753299d7d483339d80809 a1d80553bda402fffe5bfeffffffff00000001。
如图2所示,本发明的工作模式为空闲模式、工作模式一、工作模式二、工作模式三,这四种工作模式,空闲模式则是本系统不工作。
工作模式一包括以下步骤:
步骤1:工作模式一开始;
步骤2:控制器把12层数据分批加载到存储器;
步骤3:控制器通过控制接口电路初始化高速接口电路,并启动高速接口电路从存储器读取数据数据流ab,数据流ab是12层输入数据中读取组成的以12个256位整数为数据包的数据流,数据流ab的个数记为12*n;
步骤4:高速接口电路将数据流ab传送给数据排队电路;
步骤5:哈希-11计算电路、编码电路并行工作,哈希-11计算电路、编码电路接收数据排队电路发送来的数据流ab;
步骤6:哈希-11计算电路从数据流ab中以每12个256位整数为单位取出11个256位整数进行poseidon hash计算得到1个256位整数数据,计算完毕得到n个256位整数数据的数据流A,从而从哈希-11计算电路5输出数据流A;与此同时编码模块电路6从数据流ab中以每12个256位整数为单位取出2个256位整数进行模加计算得到1个256位整数数据,计算完毕得到n个256位整数数据的数据流B,从而从编码模块电路6输出数据流B;
步骤7:哈希-11计算电路将数据流A传送给高速接口电路和第一流切换电路,编码模块电路将数据流B传送给高速接口电路和第一流切换电路;
步骤8:高速接口电路将数据流A、数据流B发送给存储器进行存储,第一流切换电路接收到数据流A、数据流B,与此同时将数据流A、数据流B都添加各自的id号,所述id号用来区分是哪个接口流入的数据,并把id号随同数据流A、数据流B一起传给哈希-8计算电路;
步骤9:所述数据流A通过哈希-8计算电路计算得到数据流D,所述数据流B通过哈希-8计算电路计算得到数据流E;
步骤10:第二流切换电路接收哈希-8计算电路发送来的数据流D、数据流E、id号,并将数据流D、数据流E根据id号对应的传送给高速接口电路,同时删除数据流中的id号,然后高速接口电路将数据流D、数据流E发送给存储器进行存储;
步骤11:退出
本发明经过哈希-8计算电路计算,8个256位整数数据进,出一个256位整数数据的结果数据。
工作模式二包括以下步骤:
步骤1:工作模式二开始;
步骤2:开始第一流程和第二流程,第一流程和第二流程同时进行;
步骤3:结束。
第一流程为:
步骤S1:控制器把12层数据分批加载到存储器;
步骤S2:控制器通过控制接口电路初始化高速接口电路,并启动高速接口电路从存储器读取数据数据流ab,数据流ab是12层输入数据中读取组成的以12个256位整数为数据包的数据流,数据流ab的个数记为12*n;
步骤S3:高速接口电路将数据流ab传送给数据排队电路;
步骤S4:哈希-11计算电路、编码电路并行工作,哈希-11计算电路、编码电路接收数据排队电路发送来的数据流ab;
步骤S5:哈希-11计算电路从数据流ab中以每12个256位整数为单位取出11个256位整数进行poseidon hash计算得到1个256位整数数据,计算完毕得到n个256位整数数据的数据流A,从而从哈希-11计算电路5输出数据流A;与此同时编码模块电路6从数据流ab中以每12个256位整数为单位取出2个256位整数进行模加计算得到1个256位整数数据,计算完毕得到n个256位整数数据的数据流B,从而从编码模块电路6输出数据流B;
步骤S6:哈希-11计算电路将数据流A传送给高速接口电路和第一流切换电路,编码模块电路将数据流B传送给高速接口电路和第一流切换电路;
步骤S7:高速接口电路将数据流A、数据流B发送给存储器进行存储,第一流切换电路接收到数据流A、数据流B,与此同时将数据流A、数据流B都添加各自的id号,所述id号用来区分是哪个接口流入的数据,并把id号随同数据流A、数据流B一起传给哈希-8计算电路;
步骤S8:所述数据流A通过哈希-8计算电路计算得到数据流D,所述数据流B通过哈希-8计算电路计算得到数据流E;
步骤S9:第二流切换电路接收哈希-8计算电路传来的数据流D、数据流E、id号,并将数据流D、数据流E根据id号对应的传送给高速接口电路,同时删除数据流中的id号,然后高速接口电路将数据流D、数据流E发送给存储器进行存储。
步骤S10:退出。
第二流程为:
步骤A1:把先前哈希-8计算电路计算结果数据加载到存储器的相应的存储空间;
步骤A2:控制器通过控制接口电路初始化高速接口电路,并启动高速接口E电路从存储器读取数据数据流c,数据流c是以8个256位整数为单位的数据流,数据流c的个数为n,n为8的倍数,数据流c就是先前哈希-8计算电路计算结果数据;
步骤A3:高速接口电路将数据流c发送给第一流切换电路,第一流切换电路接收到数据流c,与此同时将数据流c添加id号,所述id号用来区分是哪个接口流入的数据,并把id号随同数据流c一起传给哈希-8计算电路;
步骤A4:数据流c通过哈希-8计算电路计算得到数据流C;
步骤A5:第二流切换电路接收哈希-8计算电路传来的数据流C,将数据流C根据id号对应的传送给高速接口电路,同时删除数据流中的id号,然后高速接口电路将数据流C发送给存储器进行存储。
步骤A6:控制器判断n/8是否是1,若是,则跳到步骤A7,否则跳到步骤A1,并且n=n/8;
步骤A7:退出。
工作模式三同工作模式二中的第二流程是一样的。
工作模式三包括以下步骤:
步骤1:工作模式三开始;
步骤2:把先前哈希-8计算电路计算结果数据加载到存储器的相应的存储空间;
步骤3:控制器通过控制接口电路初始化高速接口电路,并启动高速接口电路从存储器读取数据数据流c,数据流c是以8个256位整数为单位的数据流,数据流c的个数为n,n为8的倍数;数据流c就是先前哈希-8计算电路计算结果数据;
步骤4:高速接口电路将数据流c发送给第一流切换电路,第一流切换电路接收到数据流c,与此同时将数据流c添加id号,所述id号用来区分是哪个接口流入的数据,并把id号随同数据流c一起传给哈希-8计算电路;
步骤5:数据流c通过哈希-8计算电路计算得到数据流C;
步骤6:第二流切换电路接收哈希-8计算电路传来的数据流C,将数据流C根据id号对应的传送给高速接口电路,同时删除数据流中的id号,然后高速接口电路将数据流C发送给存储器进行存储。
步骤7:控制器判断n/8是否是1,若是,则跳到步骤8,否则跳到步骤2并且n=n/8;
步骤8:退出。
工作模式三同工作模式二中的第二流程是一样的。
本发明的哈希-11计算电路计算量最大,因此该电路为满负载工作,经过哈希-11计算电路后输入给哈希-8计算电路的计算数据量减为原来的1/11,因此哈希-8计算电路的初始计算量相对于哈希-11小很多,哈希-8计算电路每计算完一层,数据量就减小7/8,以此类推,哈希-8计算电路的整体负载是很小的,因此通过对哈希-8计算电路的分时复用,达到并行的目标的同时,让实现电路变的简单,功耗更底。且本发明的哈希-8计算电路、哈希-11计算电路都以流水线的方式工作,因此本发明计算速度快,耗时短,功耗低,实现电路简单。
需要注意的是,以上列举的仅是本发明的一种具体实施例。显然,本发明不限于以上实施例,还可以有许多变形,总之,本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发的保护范围。

Claims (10)

1.一种Filecoin中并行计算Poseidon Hash的架构系统,其特征在于,包括控制器(1)、存储器(2)、高速接口电路(3)、控制接口电路(4)、哈希-11计算电路(5)、编码模块电路(6)、第一流切换电路(7)、第二流切换电路(8)、哈希-8计算电路(9)、数据排队电路(10),所述哈希-11计算电路(5)、编码模块电路(6)都通过所述数据排队电路(10)与高速接口电路(3)连接,所述哈希-11计算电路(5)、编码模块电路(6)、高速接口电路(3)都通过第一流切换电路(7)与哈希-8计算电路(9)连接,所述哈希-8计算电路(9)通过第二流切换电路(8)与高速接口电路(3)连接,所述哈希-11计算电路(5)、编码模块电路(6)都连接高速接口电路(3),所述高速接口电路(3)、控制器(1)都与存储器(2)相连,所述控制器(1)通过控制接口电路(4)与高速接口电路(3)相连。
2.根据权利要求1所述一种Filecoin中并行计算Poseidon Hash的架构系统,其特征在于,所述存储器(2)是一种大容量高速的存储器(2)。
3.根据权利要求1所述一种Filecoin中并行计算Poseidon Hash的架构系统,其特征在于,所述高速接口电路(3)通过控制接口电路(4)接受控制器(1)的命令,使得所述高速接口电路(3)从存储器(2)读取的数据流c发送给第一流切换电路(7),同时所述高速接口电路(3)从存储器(2)读取的数据流ab发送给数据排队电路(10),所述数据流ab是以12个256位整数为单位的数据流,所述数据流c是以8个256位整数为单位的数据流。
4.根据权利要求3所述一种Filecoin中并行计算Poseidon Hash的架构系统,其特征在于,所述数据排队电路(10)用于将数据流ab发送给哈希-11计算电路(5)和编码模块电路(6),然后哈希-11计算电路(5)从数据流ab中以每12个256位整数为单位取出11个256位整数进行poseidon hash计算得到1个256位整数数据,计算完毕得到n个256位整数数据的数据流A,从而从哈希-11计算电路(5)输出数据流A,与此同时,编码模块电路(6)从数据流ab中以每12个256位整数为单位取出2个256位整数进行模加计算得到1个256位整数数据,计算完毕得到n个256位整数数据的数据流B,从而从编码模块电路(6)输出数据流B。
5.根据权利要求4所述一种Filecoin中并行计算Poseidon Hash的架构系统,其特征在于,所述哈希-11计算电路(5)将数据流A同时发送给第一流切换电路(7)和高速接口电路(3),所述编码模块电路(6)将数据流B同时发送给第一流切换电路(7)和高速接口电路(3),然后高速接口电路(3)将数据流A、数据流B发送给存储器(2)进行存储。
6.根据权利要求5所述一种Filecoin中并行计算Poseidon Hash的架构系统,其特征在于,所述第一流切换电路(7)将数据流A、数据流B、数据流c都添加id号,所述id号用来区分是哪个接口流入的数据,并把id号随同数据流A、数据流B、数据流c一起传给哈希-8计算电路(9)。
7.根据权利要求6所述一种Filecoin中并行计算Poseidon Hash的架构系统,其特征在于,所述哈希-8计算电路(9)分别将数据流A、数据流B、数据流c中每8个256位整数数据为单位进行poseidon hash计算得到1个256位整数数据,所述数据流A通过哈希-8计算电路(9)计算得到数据流D,所述数据流B通过哈希-8计算电路(9)计算得到数据流E,所述数据流c通过哈希-8计算电路(9)计算得到数据流C。
8.根据权利要求7所述一种Filecoin中并行计算Poseidon Hash的架构系统,其特征在于,所述哈希-8计算电路(9)将数据流D、数据流E、数据流C连同id号传送给第二流切换电路(8),然后第二流切换电路(8)将数据流D、数据流E、数据流C根据id号对应的传送给高速接口电路(3),同时删除数据流中的id号,然后高速接口电路(3)将数据流D、数据流E、数据流C发送给给存储器(2)进行存储。
9.根据权利要求1所述一种Filecoin中并行计算Poseidon Hash的架构系统,其特征在于,所述哈希-8计算电路(9)、哈希-11计算电路(5)都以流水线的方式工作。
10.根据权利要求4所述一种Filecoin中并行计算Poseidon Hash的架构系统,其特征在于,所述模加计算为(x+y)mod p,所述x、y为数据流ab提取要参加编码计算的2个256位整数数据,所述x、y都小于p,所述p为一个质数常量。
CN202110584953.7A 2021-05-27 2021-05-27 一种Filecoin中并行计算Poseidon Hash的架构系统 Active CN113296705B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110584953.7A CN113296705B (zh) 2021-05-27 2021-05-27 一种Filecoin中并行计算Poseidon Hash的架构系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110584953.7A CN113296705B (zh) 2021-05-27 2021-05-27 一种Filecoin中并行计算Poseidon Hash的架构系统

Publications (2)

Publication Number Publication Date
CN113296705A true CN113296705A (zh) 2021-08-24
CN113296705B CN113296705B (zh) 2022-09-27

Family

ID=77325565

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110584953.7A Active CN113296705B (zh) 2021-05-27 2021-05-27 一种Filecoin中并行计算Poseidon Hash的架构系统

Country Status (1)

Country Link
CN (1) CN113296705B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114745099A (zh) * 2022-04-19 2022-07-12 麦田云网(杭州)信息技术有限公司 一种基于FPGA的poseidon哈希算法的优化方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040143710A1 (en) * 2002-12-02 2004-07-22 Walmsley Simon Robert Cache updating method and apparatus
EP2469424A1 (en) * 2010-12-23 2012-06-27 Sap Ag Hash-join in parallel computation environments
CN102811169A (zh) * 2012-07-24 2012-12-05 成都卫士通信息产业股份有限公司 采用哈希算法进行多核并行处理的vpn实现方法及系统
CN105245327A (zh) * 2015-08-21 2016-01-13 北京比特大陆科技有限公司 比特币工作量证明哈希计算芯片优化的方法、装置和电路
CN107666387A (zh) * 2016-07-27 2018-02-06 北京计算机技术及应用研究所 低功耗并行哈希计算电路
CN108777612A (zh) * 2018-05-18 2018-11-09 中科声龙科技发展(北京)有限公司 一种工作量证明运算芯片核心计算部件的优化方法和电路
CN110109898A (zh) * 2019-04-23 2019-08-09 山东超越数控电子股份有限公司 基于fpga片内bram的哈希连接加速方法及系统
CN111159074A (zh) * 2019-12-31 2020-05-15 山东超越数控电子股份有限公司 一种基于FPGA的超大规模数据hash运算加速卡
CN112787799A (zh) * 2020-12-30 2021-05-11 浙江萤火虫区块链科技有限公司 一种Poseidon Hash算法实现电路及其实现方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040143710A1 (en) * 2002-12-02 2004-07-22 Walmsley Simon Robert Cache updating method and apparatus
EP2469424A1 (en) * 2010-12-23 2012-06-27 Sap Ag Hash-join in parallel computation environments
CN102811169A (zh) * 2012-07-24 2012-12-05 成都卫士通信息产业股份有限公司 采用哈希算法进行多核并行处理的vpn实现方法及系统
CN105245327A (zh) * 2015-08-21 2016-01-13 北京比特大陆科技有限公司 比特币工作量证明哈希计算芯片优化的方法、装置和电路
CN107666387A (zh) * 2016-07-27 2018-02-06 北京计算机技术及应用研究所 低功耗并行哈希计算电路
CN108777612A (zh) * 2018-05-18 2018-11-09 中科声龙科技发展(北京)有限公司 一种工作量证明运算芯片核心计算部件的优化方法和电路
CN110109898A (zh) * 2019-04-23 2019-08-09 山东超越数控电子股份有限公司 基于fpga片内bram的哈希连接加速方法及系统
CN111159074A (zh) * 2019-12-31 2020-05-15 山东超越数控电子股份有限公司 一种基于FPGA的超大规模数据hash运算加速卡
CN112787799A (zh) * 2020-12-30 2021-05-11 浙江萤火虫区块链科技有限公司 一种Poseidon Hash算法实现电路及其实现方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114745099A (zh) * 2022-04-19 2022-07-12 麦田云网(杭州)信息技术有限公司 一种基于FPGA的poseidon哈希算法的优化方法

Also Published As

Publication number Publication date
CN113296705B (zh) 2022-09-27

Similar Documents

Publication Publication Date Title
CN113296705B (zh) 一种Filecoin中并行计算Poseidon Hash的架构系统
CN1735013B (zh) 用于执行md5摘要的设备和方法
CN104038232B (zh) 基于二次异或运算的测试数据压缩与解压缩方法
CN111612622B (zh) 用于执行散列算法的电路和方法
CN113612609B (zh) 一种Fruit-80超轻量级加密算法的硬件实现装置及方法
Zong et al. Towards key-recovery-attack friendly distinguishers: application to GIFT-128
CN115756391A (zh) 用于实现非对称算法rsa模幂计算的硬件电路及方法
CN109086871A (zh) 神经网络的训练方法、装置、电子设备和计算机可读介质
CN112367158A (zh) 一种加速sm3算法的方法、处理器、芯片及电子设备
CN108959128A (zh) Crypt-SHA512加密算法的加速装置与方法
JPS5864844A (ja) 同期検出方式
CN113885831A (zh) 基于混合数据输入的存算一体电路、芯片及计算装置
CN107612891B (zh) 一种数据压缩加密电路
US20010015923A1 (en) Data transfer technique
CN116318660A (zh) 一种消息扩展与压缩方法及相关装置
USRE45300E1 (en) Context-adaptive variable length coder with simultaneous storage of incoming data and generation of syntax elements
JP2010107947A (ja) Shaアルゴリズム基盤のメッセージスケジュール演算方法、メッセージ圧縮演算方法及びこれを行う暗号装置
CN213518334U (zh) 执行哈希算法的电路、计算芯片和加密货币矿机
KR20150078866A (ko) 데이터 처리 장치 및 데이터 처리 방법
CN103377690A (zh) 数据发送、接收装置、用于数据传输的系统和方法
KR20070077743A (ko) 데이터 전송 장치 및 방법
CN105281890B (zh) 一种折叠结构的sm3杂凑密码压缩运算电路
US20240004649A1 (en) Method and apparatus for compressing vector data, method and apparatus for decompressing vector data, and device
CN113162629B (zh) 一种支持多码长多码率共模的多核极化码编码器
CN109978160B (zh) 人工智能处理器的配置装置、方法及相关产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: Room 2409, 24 / F, Huachuang building, 511 Jianye Road, Binjiang District, Hangzhou, Zhejiang 310000

Patentee after: Firefly Technology Holdings Ltd.

Address before: Room 2409, 24 / F, Huachuang building, 511 Jianye Road, Binjiang District, Hangzhou, Zhejiang 310000

Patentee before: Zhejiang firefly blockchain Technology Co.,Ltd.

CP01 Change in the name or title of a patent holder
TR01 Transfer of patent right

Effective date of registration: 20230414

Address after: Room 201664, 20/F, Yandafang Wenyuan Building, 426 Binwen Road, Puyan Street, Binjiang District, Hangzhou City, Zhejiang Province, 310000

Patentee after: Chunxiao (Hangzhou) Education Technology Development Co.,Ltd.

Address before: Room 2409, 24 / F, Huachuang building, 511 Jianye Road, Binjiang District, Hangzhou, Zhejiang 310000

Patentee before: Firefly Technology Holdings Ltd.

TR01 Transfer of patent right