比特币挖矿——控制器与矿机

时间:2024-04-13 19:45:10

1. 介绍

只要把矿机插电、插网, 开启电源,它就可以24小时源源不断的生产虚拟货币。听起来热血沸腾吧!下面就来看看矿机怎么连网和挖矿的.矿机有很多种,有的集成很多显卡.有的看起来像台电脑,有的像个U盘.

比特币挖矿——控制器与矿机
图片.png

无论哪种矿机,至少都包含连网和计算两个部分.连网部分负责收发计算数据和证明挖矿者身份,计算部分负责具体的挖矿.这里我们来考虑最常见的一个控制板带多个矿机,连接他人矿池的情况.矿工只在设置的时候需要电脑或者手机连接到控制器的web界面,其余时候只要启动控制板和矿机即可挖矿(有些矿机和控制板是一体的)。当然这里指的是连他人的矿池,如果自己做矿池,矿池也是需要机器的.

2. 控制器(与网络相连部分)

下面以树莓派控制板为例分析,控制内部如何运作,以及如何与上下层交互。一般树莓派都自带再dhcp客户端,连上网线就能自动获取IP地址,其上运行一个WebServer,外加miner-web工具,即可支持矿机的Web设置界面。矿工通过路由器看找到分给控制器的IP地址,然后用http连接的方式来设置它,此时需要设置矿池的具体信息,以及钱包的地址,地址从矿池得到。通过usb连接的矿机(可通过hub连多台),直接映射成/dev下的设备,树莓派上运行的挖矿程序miner控制设备完成具体计算,miner的参数通过web设置得到。如果没有控制器,用电脑也可以完成上述工作,只是像树莓派这种微型电脑功耗低,出售者又已把挖矿等相关功能做好,相对省时,省力,省电.控制器的核心就是miner程序,也可以在电脑上运行minerd控制矿机,如果还没买矿机,也可以用电脑上的CPU/GPU挖,只是算力有限挖不出来。不过用该方法,在搭建矿池时,就可以用一台机器来模拟矿池整个运行逻辑。下面介绍几种常用的挖矿工具:

1) cpuminer(可以云端模拟,不需要gpu,矿机等设备)

[plain] view plain copy
  1. $ git clone https://github.com/pooler/cpuminer.git  
  2. $ cd cpuminer/  
  3. $ ./autogen.sh  
  4. $ ./configure  
  5. $ make;make install  
  6. $ minerd --url=矿池地址 --user=用户名 --pass=密码  

2) cpu/gpuminer(需要矿机,无法在云端测试)

[plain] view plain copy
  1. $ apt-get install cgminer  
  2. $ cgminer -o 矿坑地址 -u 用户名 -p 密码  

3) bfgminer(需要矿机,无法在云端测试)
[plain] view plain copy
  1. $ apt-get install bfgminer  
  2. $ bfgminer  

不指定参数,也可以找到本机上开启的矿池,并搜索与本机相连的矿机硬件.

3. 矿机(计算部分)

早期使用电脑挖矿,现在都是专用矿机:显卡,FPGA(现场可编程门阵列)、ASIC(专用集成电路)矿机的面世,使算力级别大幅提升、计算时间减小。

比特币挖矿——控制器与矿机
图片.png

1) 显卡

显卡的组件模块是乘法器、加法器。可并行计算,但是功耗大。

2) FPGA矿机

FPGA(Field-Programmable Gate Array)现场可编程门阵列。它是一系列通过可编程互连的可编程模块。FPGA犹如乐高,其灵活性高,可根据实际应用的需求,构建所需的硬件组件。但是乐高本身就是一种浪费:其功耗性能比,可变布线资源、多余的逻辑资源,其实都是浪费。虽然比显卡省电,但效果不如显卡,只是过渡时期的产品。

3) ASIC矿机

ASIC(ApplicationSpecific Integrated Circuits)是为专门目的而设计的集成电路.它不能修改,所以前期开发周期长,成本高。像蚂蚁矿机,烤猫矿机都是ASIC矿机。ASIC的能效也是最高的,现在卖的矿机基本都是这种.