Post
Topic
Board 挖矿
Topic OP
贝壳ASIC芯片cgminer驱动及验证
by
binarier
on 13/10/2013, 16:01:32 UTC


贝壳芯片对应的cgminer版本可以在 https://github.com/binarier/cgminer 看到。

这是原版cgminer的fork,加入了我们的driver-clam,可以在configure时使用--enable-clam激活。

我们公布驱动源码,一方面是cgminer的GPLv3的license要求,另一方面我们也希望尽早和各位矿友交流,看看还有什么要改进的地方。

如果你手头正好有KC705评估板,那可以刷我们的固件来先行尝试一下贝壳芯片的驱动,更欢迎给我们提出改进的方案。
我们的验证方案是两块FPGA块,按双FPGA双核来设计的。

两块板的bitstream可以下载:http://www.clambtc.com/talk/final.dual.100M.rar

http://www.clambtc.com/talk/aa001.png

如上图所示,贝壳芯片以串口协议链式部署,每个芯片分别有上行和下行的7PIN端口。其中第一片的上行端口中的串行部分与主机通过usb-uart-bridge连接,最后一片的信号部分自行回路。

http://www.clambtc.com/talk/aa002.png

在我们的FPGA板上,由于KC705没有提供外接的GPIO pin,所以板间互联的7跟信号线需要借用KC705上的LCD面板连接器,要把LCD面板拆了。LCD的接口通过一片8位双向电平转换器,把1.5V转成3.3V,与FPGA的引脚相连,所以我们可以直接使用这正好7根引脚,如下图所示:
http://www.clambtc.com/talk/aa003.png

把两块板对位的七根PIN使用飞线连接起来,就形成了我们的双芯片互联验证模型,如下图所示:。

http://www.clambtc.com/talk/aa004.jpg
http://www.clambtc.com/talk/aa005.jpg


把第一块板的串口线连接到主机,等linux系统认到usb-uart设备,默认情况下会生成一个/dev/ttyUSB0设备,视linux系统的不同,注意设备的权限。

进入编译好的cgminer目录,使用下面的命令启动。这里我们指定了每芯片最多检测2个核心以节约启动时间,芯片数目可以自动检测。

http://www.clambtc.com/talk/aa006.png

正常运行时的状态:

http://www.clambtc.com/talk/aa007.jpg