【深入解析】蚂蚁矿机S19 Pro

蚂蚁矿机S19 Pro已面世数月,相信业内矿工们对这款矿机的基本参数、运行情况有了一定的了解。今天小蚁邀请到了蚂蚁培训学院的讲师王工,带大家深入矿机,一窥S19 Pro的内部构造,并为大家讲解一些运算板常见的不良现象及处理方法。
小蚁:下面有请王工——
王工:大家好!我是蚂蚁培训学院的讲师王工,先为大家介绍一下S19 Pro的整机架构。

S19 Pro整机主要由3个运算板、1个控制板、APW12电源、4个散热风扇组成,如图下图所示:

蚂蚁学院讲师王工:接下来我们再来看看S19 Pro内部运算板的工作结构。

S19 Pro运算板由 114颗芯片组成,分为38组(域),每组由3颗IC组成;S19 Pro芯片工作电压为0.32V;第38、37、36、35、34、33、32组(共7组)由升压电路Q9输出的20V给LDO供电输出1.8V,第31组-第1组由VDD 12.6V经LDO提供1.8V,每往后退一个域电压都减少 0.32V。

所有0.8V都由本域的1.8V经LDO输出提供 ,如下图所示:

小蚁:能为大家分享一些S19 Pro运算板常见不良现象的处理方法吗?
蚂蚁学院讲师王工:好的。事实上经测试,在官方建议的环境条件下,S19 Pro能耗比、稳定性等运行情况都表现十分优良。如若运算板产生不良,那最常见的现象有报0、报数、算力低等,遇到这些情况我们可以这样处理——
1
测试治具液晶显示“ASIC NG:(0)”时,先测量域总电压及升压电路20V正常后,再使用短路探针将第1颗和第2颗芯片中间的RO测试点和1V8测试点短路,然后运行找芯片程序。看串口log,如果此时还是找到0颗芯片,那么将会是以下几种情况之一:
(1)用万用表量下1V8、0V8测试点的电压是否为1.8V、0.8V,如果不是那可能是该域的1.8V、0.8V LDO电路有异常,或者是这个域的两颗ASIC芯片没焊好,大多数是0.8V、1.8V贴片滤波电容短路引起的(量测PCBA正反面相关的贴片滤波电容阻值);
(2)检测U2&U3&U4的电路是否异常,如电阻虚焊等;
(3)用万用表测量R232或R233的阻值,看是否在1欧姆以内,并且读数不会乱跳。如果不是,请更换这两个电阻;
(4)检测第一颗芯片是否有引脚没焊好(维修发现过,从侧面看引脚有锡,但是拆下芯片发现引脚根本没沾锡的情况)。
2
如果在步骤1中,能找到1颗芯片,那说明第1颗芯片和之前的电路都是好的,用类似的方式,排查后面的芯片。如,将第38颗和第39颗之间的1V8测试点和RO测点短路,如果log能找到38颗芯片,则前38颗芯片没有问题;如果还是找到0颗芯片,就先排查该1V8是否正常,正常就是38颗之后的芯片有问题。继续用二分法排查,直至找到有问题的芯片。假设第N颗芯片有问题,那么将第N-1颗和N颗芯片间的1V8和RO短路时,能找到N-1颗芯片,但是将第N和N+1颗芯片间的1V8和RO短路时,就找不全芯片。
3
测试治具液晶显示“ASIC 113:(报113)”时,说明运算板在115200波特率可以检到114颗芯片,但在12M波特率时只找到了113颗芯片,有一颗芯片在12M波特率时没有找到。
维修方法:使用二分法,通过短路探针,将第38颗和第39颗之间的1V8测试点和RO测点短路,如果log能找到38颗芯片,则前38颗芯片没有问题;如果短路47颗,log报46颗,说明第47颗芯片检不到,外观检查没有问题,一般更换第47颗芯片即可。

4
测试治具液晶显示“ASIC NG:(X,固定报某一颗芯片)”时,分以下两种情况:
(1)第一种情况;测试时间和OK的板子基本一样长(通常每次测试X的值不会变)(测试时间是指从按下开始测试按钮到液晶显示“ASIC NG:(X)”这个结果的时间)。
这种情况大概率是因为第X颗芯片的前后CLK,CI,BO串阻焊接异常导致的,所以重点查看这6个电阻就行。小概率是因为第X-1,X,X+1这三颗芯片中有芯片的如下引脚焊接异常导致:

(2)第二种情况;测试时间比OK的板子长了差不多一倍(有时每次测试X值还会变,而且有时X=0);此时通常log有如下信息(其中红色数字不一定是13,看排线接的治具是哪个座子);在测试时,假设异常位置的前面所有域的域电压几乎都小于0.3V,而后面域的域电压几乎都高于0.34V。
这种情况是因为芯片没焊好导致的,通常是1.8V,0.8V,RXT,CLK没焊好。建议直接量域电压来定位是在哪个域出问题。在步骤1中使用的1V8和RO短路的方式同样可以定位出异常的位置。

(3)目前维修经验发现的大多数是信号之间微短路(0-几百欧姆),是芯片引脚阻值偏小造成,可以先通过热风枪加焊后看是否OK。
5
而如若遇到单板算力低,这里有一个方便快速定位维修的方法分享给大家——即通过Putty软件登入IP观察这片板的域工作电压和NONCE返回是否正常,并根据Putty的log信息进行维修。

[使用方法]
tail -f /tmp/nonce.log  ——NONCE打印命令  
tail -f /tmp/adc.log  ——域电压打印命令         
具体操作如下:
(1)打开输入有问题的那台机器的IP点击OPEN

(2)输入用户名和密码及测试命令就可以看到NONCE返回状况和电压域的状况,如果NONCE和域电压有异常的情况,就可以根据打印的异常芯片进行测量和维修。

蚂蚁学院讲师王工:最后再给大家分享一个维修流程,希望对大家进行矿机维修时的思路提供帮助:

蚂蚁学院讲师王工:今天在这里仅简单介绍S19 Pro运算板部分不良的处理方法。如果大家想了解更多S19 Pro及其他机型的维修指导,欢迎报名参加我们蚂蚁培训学院的维修培训课程!