1500円の ZYNQ 基板を買ってみた (EBAZ4205, ANTMINER)


激安 ZYNQ 基板の紹介

Aliexpress で、"ZYNQ7010" で検索すると、2 種類の基板が見つかります。

・EBAZ4205 (1500円~)
・ANTMINER (3000円~)

どちらも、マイニング装置の廃基板らしく、安価に販売されています。

(2021.4.6 追記)
"ZYNQ7010" だと4千円代しか出てこなくなりましたが、"EBAZ4205" で検索すると、まだ安いものが見つかります。

両方とも購入してみました。
どちらも中古基板で、埃がついたまま送られてきました。

必要なものを用意して、動かしてみます。

野良リソース探索

ali の販売ページで、回路図がありそうな事が書かれていたのですが、付いてこなかったので探します。

EBAZ4205

翼比特E9+ の制御基板だったようです。

回路図、基板情報など(中国語)
https://github.com/Leungfung/ebaz4205_hw

hello world するまで解説(中国語)
https://hhuysqt.github.io/zynq1/

回路図、基板情報など(英語)
https://github.com/xjtuecho/EBAZ4205/tree/d41c46c1b50a12b513990dcb102a621e5fdcfe08

wiki(英語)
https://github.com/xjtuecho/EBAZ4205/wiki

ベアメタルプログラミング(中国語)
https://www.jianshu.com/p/b83c663ecaaa

子基板コネクタ (2.0mm 2X10P ライトアングル)
https://ja.aliexpress.com/item/4001286548060.html?spm=a2g11.12010615.8148356.3.39da5ca8uV5lRb

ANTMINER

ANTMINER S9 の制御基板だったようです。

回路図とサンプルプロジェクト
https://github.com/KarolNi/S9miner_sample

J1-J5, J9 追加実装用の拡張コネクタ (2.0mm 2x9P ストレート)
https://ja.aliexpress.com/item/4000571174481.html?spm=a2g0s.9042311.0.0.2c784c4dzoaTVu

子基板コネクタ (2.0mm 2X9P ストレート)
https://ja.aliexpress.com/item/1005001625202221.html?spm=a2g0s.9042311.0.0.2c784c4dzoaTVu

動作確認

どちらも、電源は 6pin の PCIe グラボ用電源コネクタ(DC +12V)から供給します。
ヨドバシで Ainex PX-005B を買ってきました。

不要側コネクタは切り取って、延長して実験用電源へ接続します。

EBAZ4205

電源を通すため、はんだ面の D24 をショートしてやる必要があります。
ついでに、J7 にピンヘッダを実装します。
SD カードソケットは、まだつけなくてもよいです。

J7 がシリアルコンソール用の UART です。
USB-UART 基板と接続して、Tera Term を起動します。

https://github.com/xjtuecho/EBAZ4205
の情報に沿って操作します。

基板に電源を入れると、Tera Term に起動ログが流れていきます。

linux のログイン待ちになりますが、パスワードが不明なので入れません。
再起動して、u-boot 起動直後に "d" を押して、u-boot シェルで操作します。
解説された手順に沿って root のパスワードを変更します。

setenv nandboot "echo Copying Linux from NAND flash to RAM... && nand info && run nandroot;nand read 0x100000 0x2220000 0x300000 && fpga loadb 0 0x100000 0x300000 && nand read ${kernel_load_address} 0x300000 ${kernel_size} && nand read ${devicetree_load_address} 0x800000 ${devicetree_size}"
run nandboot
setenv bootargs 'console=ttyPS0,115200 root=/dev/mtdblock6 rootfstype=jffs2 noinitrd rw rootwait reboot=cold,hard emergency init=/bin/sh'
bootm ${kernel_load_address} - ${devicetree_load_address} init=/bin/sh
passwd

再起動後、変更したパスワードで root ログインしてマイナーのスクリプトを止めて、さらに再起動。

mv /etc/rcS.d/S95cgminer.sh /etc/rcS.d/K95cgminer.sh
reboot

あとは好きなように動かせます。

eth0 は、デフォルトでは有効にならないので、

root@zedboard-zynq7:~# ethtool -s eth0 speed 100 duplex full autoneg off
root@zedboard-zynq7:~# ifconfig eth0 192.168.1.25 up

とかで使えます。
dhcp でもいけるはず。

電源電圧は、12V から下げていって、5V でも動きました。
コンソール表示して何もしていないときで、+5V 260mA ほどでした。
5V 1A もあれば十分かと思います。

ANTMINER

こちらはそのままで動かせます。

J12 に USB-UART 基板を接続して、Tera Term を起動します。

基板に電源を入れると、Tera Term に起動ログが流れていきます。
基板上の LED がめちゃくちゃ眩しいので、マステで覆いました。

linux が起動したら、

user: root
pass: admin

でログインできます。
こちらは eth0 も動作します。(DHCP)

マイナーの動作を止める方法は解説が無く、よくわかりません。
linux に詳しい人なら、見ればすぐわかるかと。

電源電圧は、5V でも動きました。
コンソール表示して何もしていないときで、+5V 370mA 程度のようです。
DDR3 が 2 つ乗っていますので、EBAZ4205 より消費電力は大きくなります。
こちらも、5V 1A もあれば十分かと思います。

まとめ

超激安 ZYNQ 基板 2 種類、ジャンクですがどちらも動きました。
JTAG のピンを植えれば、Vivado からも普通に使えます。

子基板の作成を検討していますが、EBAZ4205 の方が遊べそうです。
どちらかを買うなら、EBAZ4205 が良いと思います。安いし。