9月底,
我们推出了专门为比特币网络中的SHA256挖掘开发
的新ASIC芯片。 今天我们将告诉您里面的东西。
图片:Bitfury Group关于比特币挖矿的几句话
挖矿的目的是保护区块链网络。 矿工使用其硬件来解决复杂的计算问题,这些问题可确保网络中交易的完整性并消除
双重支出攻击 。 与此并行,采矿是一种生成加密货币的机制,矿工将获得这种奖励(现在-每块
12.5比特币 )。
所讨论的计算任务与匹配块中事务的哈希的选择有关。 期望值是基于前一个块的哈希,一个随机数(称为“随机数”)以及过去十分钟内交易哈希的总和形成的。 在这种情况下,必须满足两个条件:哈希必须符合声明的挖掘复杂性,并且开头必须严格定义为零。 为了评估复杂度
,使用了改进的泰勒级数展开式。
比特币区块链中的哈希值是使用SHA256算法计算的。 它包括64次迭代,在此期间,使用移位操作和“模2加法”将事务位“混合”在块中。 应用SHA256函数的结果被认为是不可逆的,因此,目标哈希是通过蛮力找到的。
我们更详细地介绍了采矿和采矿池,区块链网络的参与者团结在一起以加快区块的决策速度。
以前,CPU和GPU用于对随机数和哈希进行排序,但是随着时间的推移,由于挖掘的复杂性不断提高(其变化取决于比特币网络中所有参与者的总计算能力),因此需要设计专用的
ASIC 。
我们在Bitfury也在开发这种解决方案。 总体而言,我们创建了五代采矿芯片,而在9月,我们展示了第六代 -我们正在谈论的是专门为解决SHA256哈希量身定制的ASIC Clarke。
克拉克怎么样
Clarke采用14纳米工艺技术制造,并以6x6 mm
FC- LGA 35L尺寸实现。 第二种情况是板上电源电路的布线效率更高。 该芯片每秒可解决120 GB的数据,但是
它可以根据矿工目前的需求(更高的哈希率或更低的功耗)
来调整性能。 特别是,由于0.3伏足以为芯片供电,因此可以实现55 mJ /千兆赫的能效系数。 Clarke结构如下所示:
时钟发生器 它为芯片设置时钟。
电压等级 :VSS = 0,VDD = 1。
串行控制接口通过串行总线连接到外部控制器。 看起来像是
SPI总线,带有MOSI和MISO数据传输触点(用于将数据从主机传输到从机,反之亦然),通过SDATA线连接。
该接口负责传输命令。 以下是其中的一些内容:任务写入以写入新任务,强制任务切换以强制缓冲区切换,读取随机数以读取随机数值等。所有命令都有一个模板,并且包含代码,长度,数据字段,芯片状态字节,来自缓冲区的数据随机数和校验和。
校验和是字节的算术和,从零开始。
例如,命令04 03 03 8c 18 00的校验和将等于AE。随机控制系统。 根据掩码控制哈希计算过程。 掩码“位于”任务缓冲区中,用于设置计算范围。 它定义了随机数的位,这些位在搜索新值时将保持不变。
任务缓冲区。 需要计算哈希值(其长度为20个双字)。 共有两个缓冲区,使您可以在任务之间快速切换。 当第一个缓冲区忙于哈希解决方案时,第二个缓冲区则为以下计算写入数据。
8154环形哈希内核。 他们使用SHA256对偶算法。
Nonce缓冲区。 这是一个12个双字的环形缓冲区,其中写入了哈希决策。
例如,我们给出了在哈希计算中发生的芯片中交换数据的过程(在下面的扰流器中):
芯片数据交换(英文)//将时钟发生器编程为值0x20并且预分频器= 1(禁用)发送:0803038c1800
接收:f0b200b2
//将随机数掩码设置为0x00000000
发送:200300000000修订:f0230023
//强制任务切换发送:020000
建议:f0020002
//发送任务
Wi 0 = CD3F992C 1 = 037F8197 2 = A58E091A
MS0 A = 0CAD7CD1 B = CBE38FD9 C = D14DC164 D = F90EB10B E = 819621CF F = 358D45CD G = 8C14CAE3 H = 538EF887 MS3 A = 5FF18CDD B = 8CDA24A4 C = 180266F9 D = 0CAD7CA196FB = 36CD7CA9B6 F NONCE = D5D0E8B9
发送:_014fa607d67b614925737be76bce53a41ba12b3c8b659f27ef6726be6049f924522d2b3c8b659c78616c779 a13c81a609
35067953386a9d52b3d0f24a3b0a607d67bb2a8cc5326708e0ef55b267700000000 Recv:0fb200b2
//强制任务切换
发送:020000
修订:0f020002
//读取随机数缓冲区
发送:040000接收:_0f04000000000000000000000000000000000000000000000000000000000000000000003ffffffc7f7a42132ffffffc 1ffffffc0001ffbf8c
先进先出[0] = aaaaaaaa
先进先出[1] = aaaaaaaa
先进先出[2] = aaaaaaaa
先进先出[3] = aaaaaaaa
先进先出[4] = aaaaaaaa
先进先出[5] = aaaaaaaa
先进先出[6] = aaaaaaaa
先进先出[7] = 3ffffffc
FIFO [8] = d5d0e8b9 <-随机数
FIFO [9] = 2ffffffc <-任务切换标记
FIFO [A] = 1ffffffc <-任务切换标记
FIFO [B] = aaab5515
芯片将在哪里使用
现在,我们正在自己的采矿服务器和
BlockBox的移动数据中心中安装新设备。 我们还正在修改加拿大,冰岛,乔治亚州和挪威的比特币农场(
今年年初启动 )。
Clarke芯片将作为商业产品提供。 特别是,它们带有为大型组织设计的
Bitfury Tardis矿工 。 在Tardis中,可安装5-8个板,每秒可计算80太赫兹。 该矿机可以升级-将来,安装在矿机中的ASIC Clarke将被新芯片取代。
这是我们介绍新芯片概念的简短视频: