开源FPGA比特比挖矿


应用于FPGA的挖矿代码,没记错应该是Altera公司de DE2板子。
资源截图
代码片段和文件信息
#!/usr/bin/env python

# by teknohog

# Python wrapper for Xilinx Serial Miner

user = “teknohog.spartan“
password = “nexys2“
host = “api2.bitcoin.cz“
http_port = “8332“

serial_port = “/dev/ttyS0“

askrate = 5

###############################################################################

from jsonrpc import ServiceProxy
from time import ctime sleep time
from serial import Serial
from threading import Thread Event
from Queue import Queue

def stats(count starttime):
    # 2**32 hashes per share (difficulty 1)
    mhshare = 4294.967296

    s = sum(count)
    tdelta = time() - starttime
    rate = s * mhshare / tdelta

    # This is only a rough estimate of the true hash rate
    # particularly when the number of events is low. However since
    # the events follow a Poisson distribution we can estimate the
    # standard deviation (sqrt(n) for n events). Thus we get some idea
    # on how rough an estimate this is.

    # s should always be positive when this function is called but
    # checking for robustness anyway
    if s > 0:
        stddev = rate / s**0.5
    else:
        stddev = 0

    return “[%i accepted %i failed %.2f +/- %.2f Mhash/s]“ % (count[0] count[1] rate stddev)

class Reader(Thread):
    def __init__(self):
        Thread.__init__(self)

        self.daemon = True

        # flush the input buffer
        ser.read(1000)

    def run(self):
        while True:
            nonce = ser.read(4)

            if len(nonce) == 4:
                # Keep this order because writer.block will be
                # updated due to the golden event.
                submitter = Submitter(writer.block nonce)
                submitter.start()
                golden.set()


class Writer(Thread):
    def __init__(self):
        Thread.__init__(self)

        # Keep something sensible available while waiting for the
        # first getwork
        self.block = “0“ * 256
        self.midstate = “0“ * 64

        self.daemon = True

    def run(self):
        while True:
            try:
                work = bitcoin.getwork()
                self.block = work[‘data‘]
                self.midstate = work[‘midstate‘]
            except:
                print(“RPC getwork error“)
                # In this case keep crunching with the old data. It will get 
                # stale at some point but it‘s better than doing nothing.

            # Just a reminder of how Python slices work in reverse
            #rdata = self.block.decode(‘hex‘)[::-1]
            #rdata2 = rdata[32:64]
            rdata2 = self.block.decode(‘hex‘)[95:63:-1]

            rmid = self.midstate.decode(‘hex‘)[::-1]
            
            payload = rmid + rdata2
            
            ser.write(payload)
            
            result = golden.wait(askrate)

            if result:
                golden.clear()

class Submitter(Thread):
    def __init__(self block nonce):
        Thread.__init__(self)

        self.block = block
        self.nonce = 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    .......       224  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-master.gitignore

    .......       815  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masteroardsDE2_115DE2_115.qsf

    .......       832  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masteroardsDE2_115DE2_115.sdc

    .......        25  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masteroardsREADME.md

    .......      1099  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-mastercorescrccrc32.v

    .......       783  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-mastercorescrccrc32_tb.v

    .......        63  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-mastercorescrcsimulate.sh

    .......      3766  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-mastercorescyclone_iv_pllhashing_pll.v

    .......        33  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-mastercoresREADME.md

    .......       117  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-mastercoresunoptimizedREADME.md

    .......      1666  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-mastercoresunoptimizedsha-256-functions.v

    .......      5140  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-mastercoresunoptimizedsha256_transform.v

    .......      4855  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-mastercoresunoptimized_virtual_wire_top.v

    .......      1856  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-mastercoresvirtual_wirevirtual_wire.v

    .......     35147  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterLICENSE.txt

    .......      1292  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojects3C120_uart_comm_Test3C120_uart_comm_Test.qpf

    .......     11773  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojects3C120_uart_comm_Test3C120_uart_comm_Test.qsf

    .......       106  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojects3C120_uart_comm_Testconstraints3C120.sdc

    .......       337  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojects3C120_uart_comm_Testhdl3C120_uart_comm_Test.v

    .......     16055  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojects3C120_uart_comm_Testhdlmain_pll.v

    .......        77  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojects3C120_uart_comm_TestREADME.md

    .......     83008  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojects3C120_uart_comm_Teststp1.stp

    .......        14  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojects3C120_uart_comm_Testworking.gitignore

    .......      1248  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojectsBeMicrofpgaminer.qpf

    .......      4606  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojectsBeMicrofpgaminer.qsf

    .......       797  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojectsBeMicrofpgaminer.sdc

    .......       235  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojectsBeMicroREADME.md

    .......      5034  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojectsBeMicrosrcfpgaminer_top.v

    .......      1248  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojectsDE2_115_makomk_modfpgaminer.qpf

    .......      4469  2013-07-17 23:10  Open-Source-FPGA-Bitcoin-Miner-masterprojectsDE2_115_makomk_modfpgaminer.qsf

............此处省略859个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)