主页 > imtoken钱包地址 > 基于FPGA的比特币矿机架构设计探索.doc

基于FPGA的比特币矿机架构设计探索.doc

imtoken钱包地址 2023-03-02 07:56:25

文档简介:Exploration of Architecture Design of FPGA-based Bitcoin Mining Machine.docExploration of Architecture Design of FPGA-Based Bitcoin Mining Machine 高杰 深圳图灵科技控股集团 摘要:ASIC是内部用来高效执行某项任务的特定应用,虽然成本很高一些特定任务的专用硬件远低于比特币,它可以以降低系统的灵活性和难以适应协议的变化为代价获得出色的哈希速度。 与ASIC类似,FPGA也可以作为高效的矿机系统,同时成本较低。 与ASIC相比,FPGA更加灵活,能够适应比特币协议的变化。 为此,本文对其基于Xilinx Zynq-7000的架构设计进行了相关研究和分析。 关键词:比特币; FPGA; 矿机; 比特币是一种虚拟货币,比特币挖矿系统是通过计算机硬件对比特币网络进行数学运算的过程,提供服务的矿工可以获得奖励,因为网络奖励是根据矿工完成的任务计算的矿工们,挖矿的竞争非常激烈。 比特币挖矿起步于 CPU 或 GPU 等低成本硬件,但随着比特币的普及,挖矿过程发生了重大变化。 今天,挖矿活动转移到现场可编程门阵列,哈希速度可以通过优化来实现。 这种模式的挖矿效率非常高。 1. 总体架构设计思路 如果需要一个可行的比特币节点和高效灵活的矿机来实现一个完整的挖矿系统,那么就需要一个强大的FPGA芯片来满足灵活性和性能的要求。

在一个完整的片上系统中,需要一个优化的核心来运行所有比特币任务,包括网络维护和交易处理。 能够满足这个硬件条件的是ZedBoard开发板上的Zynq-7020o系统,内部有两个ARM Cortex-A9处理器和多个Artix-7FPGA逻辑单元,还内置了512MB DDR3内存比特币挖矿机多采用计算机,可以进行更快的SoC设计。 ZedBoard还有一个用于大容量存储的SD卡槽,有助于后续更新。 ZedBoard实现的SoC比特币框架由host、repeater、driver等模块组成,可以通过原始比特币客户端作为宿主的非图形界面与比特币网络进行交互。 简单来说,比特币挖矿过程概括为一个SHA-256过程和一个比较器的组合。 SHA-256进程负责对区块头信息进行二次处理,然后与比特币网络的扩容目标进行比较。 二、框架结构的详细设计 (1)深度挖掘核心。 根据美国SHA-256计划,采用高层次综合开发挖矿内核,利用VivadoHLS的快速测试能力,完成任意原型的挖矿内核布局,再通过简单的单进程系统,可以实现复杂的工艺系统。 SHA-256经过64次移位、加法、异或运算后得到一个32字节的哈希值。 此时使用8个4字节的寄存器保存每次迭代结果,最后将四个寄存器连接起来得到一个具体的哈希值。

如果输入数据小于62字节,则进行补充,第64字节用于存放输入数据的长度。 通过 VivadoHLS比特币挖矿机多采用计算机,SHA-256 是一个简单的 for 循环操作。 一个数组保存每次迭代需要的数据,另一个数组保存其后续迭代的临时值,通过8个变量保存每次迭代的结果。 对于通过单个 SHA-256 处理模块开发的三个原型中的第一个,这是所有内核中最慢的,因为没有使用流水线。 第二个原型是一个内置的三个独立的 SHA-256 进程模块串联获得。 此配置第一个过程处理数据头信息的前 64 个字节以允许静态输入。 第二个进程负责处理数据头剩余的 16 个字节加上填充数据所需的 48 个字节。 第三个进程负责处理前两个进程得到的哈希值结构。 它使用两个SHA-256进程模块,同时充分利用比特币挖矿社区和内部挖矿进程使用的比特币数据头信息。 特征。 (-) ISE的发展。比特币挖矿在0到232-1之间