Bitcoin Forum
April 28, 2024, 06:22:06 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 [3] 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 »
  Print  
Author Topic: Official Open Source FPGA Bitcoin Miner (Last Update: April 14th, 2013)  (Read 432889 times)
jasonk
Full Member
***
Offline Offline

Activity: 168
Merit: 100


View Profile
May 21, 2011, 10:46:55 PM
 #41

Are there other dev boards that have more FPGA's per board that would make things more cost effective?  $300 for 50M hashes is steep.  If one could get a board for $500 with 10 FPGA's on it, that would be more worth it.
1714285326
Hero Member
*
Offline Offline

Posts: 1714285326

View Profile Personal Message (Offline)

Ignore
1714285326
Reply with quote  #2

1714285326
Report to moderator
1714285326
Hero Member
*
Offline Offline

Posts: 1714285326

View Profile Personal Message (Offline)

Ignore
1714285326
Reply with quote  #2

1714285326
Report to moderator
1714285326
Hero Member
*
Offline Offline

Posts: 1714285326

View Profile Personal Message (Offline)

Ignore
1714285326
Reply with quote  #2

1714285326
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
k
Sr. Member
****
Offline Offline

Activity: 451
Merit: 250


View Profile
May 21, 2011, 11:00:33 PM
 #42

This breaks my heart, open source FPGA mining code, yet the hardware is prohibitively expensive for the performance that it gives. For $600 I can buy nearly 4 5870s!


nowadays FPGA's had small density/per case[read small chips, less switches in package], made on obsolete waffer[0.13 in "best case" more usually 0.35], mean work on laughable frequencies and produced in small quatities primarily to IC designers, supers manufacturers and gov'ts.
when/if market grow up and/or someone invest in it[without which its unlikely happen], something may change.

I hope that happens, or it could also be the case that video cards will just get more and more powerful and they'll always dominate FPGAs. Where FPGA excell is at performance per watt, but not per $...if video cards double or triple their hashing performance but remain within the same thermal (PCIE 2.0 spec) envelope then GPU mining will still have a future.

Let's just hope that future ATI cards will remain excellent performers in doing straight integer work. But I have some doubs though as games are more floating point heavy and naturally graphics card manufacturers are going to optimize their architecture to perform better while gaming, not mining.

Imagine though if ATI caught wind of this whole mining phenomenon and they'd produce a Cayman core optimized for hashing!


was thinking about this and about how much mining hardware is being added continually to the network and would it be on a GPU manufacturers radar.

based on the numbers I have seen ~620000 Mhash/s was added over the period of the last difficulty increase. I think that took ~9 days. With some very rough top of the head numbers, that's ~1000 AMD cards (just assuming an average of 620 Mhash/card here for round numbers) say in 9 days. If that was constant it would imply ~40000 new AMD cards/year. How many sales would that translate into for AMD? A large % would probably have been cards people already owned.

But the rate of increase in the network strength has been increasing exponentially.


If the rate of increase continues on this trend it's not hard seeing the #cards needed to maintain the network strength being significant and starting to have an impact on graphics card sales sales numbers. I found this article from a Google search saying the Q1 sales #'s for add-in-boards were ~19m and games enthusiasts constitute ~9m sales/year of graphics cards http://jonpeddie.com/publications/add-in-board-report/ Just a few more doublings of the network hash rate (not long on the current trajectory) and the numbers of cards/year approaches a significant % of graphics card sales.

It'll be interesting to see if the incredible growth in everything bitcoin continues on its current explosive path.
But who knows and by then perhaps FPGAs will have over and we'll be discussing the imminent arrival of custom made ASICs.
Sorry for going way off topic - moderators feel free to move this post if you want.





eturnerx
Member
**
Offline Offline

Activity: 84
Merit: 10


View Profile
May 21, 2011, 11:02:12 PM
 #43

There must be cheaper and simpler boards with the same or equivalent FPGA. If you buy this board just for mining, all those nice I/O ports and displays are going to waste.
I saw some cheap boards that were basically RS232+PMOD+FPGA boards - just trying to find them again. Add another $25 for an Ethernet PMOD and you've got a standalone miner. You could probably chain a few of them together to use just the one Ethernet PMOD.
I think the closest thing I've seen to what you guys want is: http://www.copacobana.org/ - it basically nothing but the minimum to run a butt load of FPGAs. Economies of scale much?
I think one of the things that'll drive FPGAs to better economies per MHash/s is good PCB design. You're right - once the design is proven in a development board it makes more sense to invest in custom PCBs for mass rollout.
allinvain
Legendary
*
Offline Offline

Activity: 3080
Merit: 1080



View Profile WWW
May 22, 2011, 12:38:36 AM
 #44

Off topic perhaps, but I'm wondering if ATI hasn't already built a mining farm of their own.

bulanula
Hero Member
*****
Offline Offline

Activity: 518
Merit: 500



View Profile
May 22, 2011, 02:21:38 AM
 #45

Off topic perhaps, but I'm wondering if ATI hasn't already built a mining farm of their own.

Lol they have Smiley
allinvain
Legendary
*
Offline Offline

Activity: 3080
Merit: 1080



View Profile WWW
May 22, 2011, 03:46:44 AM
 #46

Off topic perhaps, but I'm wondering if ATI hasn't already built a mining farm of their own.

Lol they have Smiley


Whaaaat?  Shocked Can you post some proof plz.

nathanrees19
Full Member
***
Offline Offline

Activity: 196
Merit: 100



View Profile
May 22, 2011, 11:36:35 AM
 #47

Quote
A Spartan 3E 250K has 5508 logic cells. If I understand correctly, this is not enough for a design that needs 90K LUTs, though I'm still learning about all of this.
I'll try to put my serial design online as well. That fits into 3K or 4K I think, although it's obviously much slower (64 cycles per hash). It's a nice toy for people to play with if they have smaller boards.

That would be very much appreciated. Many low-end boards could fit half a dozen of these, and you could pack some into the remaining space on a higher end board to approach 95-100% LUT utilisation.
nelisky
Legendary
*
Offline Offline

Activity: 1540
Merit: 1001


View Profile
May 22, 2011, 12:17:53 PM
 #48

I did not look at the code but maybe you can clarify to me how this particular approach scales;

Say I use one of these http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&CategoryNo=138&No=501 instead, what kind of performance could one expect? I'm assuming you can easily put multiple fully unrolled code paths for parallel execution.

How would one scale this to multiple FPGAs? Some communication between devices would be needed, or will there be a full TCPIP stack communitcation with bitcoin on each one?

I guess my confusion comes from my PC coding mindset. In the GPU implementation we just create the "unit" calculator and the GPU knows nothing about communicating to and from the bitcoin protocol, it just has an algorithm and a memory space to work with. In the FPGA though, you have to implement something to comunicate with bitcoind and, if using multiple devices, communicate with each one of them, right?

Sorry for the dense questions, just trying to understand this.
nathanrees19
Full Member
***
Offline Offline

Activity: 196
Merit: 100



View Profile
May 22, 2011, 12:47:55 PM
 #49

I did not look at the code but maybe you can clarify to me how this particular approach scales;

It should scale linearly.

How would one scale this to multiple FPGAs? Some communication between devices would be needed, or will there be a full TCPIP stack communitcation with bitcoin on each one?

There are many approaches. You could have one master block (with a basic TCP/IP stack) that distributes the work amongst all the other FPGAs if you wanted to eliminate the PC entirely.

I guess my confusion comes from my PC coding mindset. In the GPU implementation we just create the "unit" calculator and the GPU knows nothing about communicating to and from the bitcoin protocol, it just has an algorithm and a memory space to work with.

If I'm correctly understanding the current implementation, that's pretty much what it does. A script running on a PC handles the communication, and hands the work to the FPGA over the USB interface.
Tukotih
Member
**
Offline Offline

Activity: 70
Merit: 10


View Profile
May 22, 2011, 05:55:42 PM
 #50

Off topic perhaps, but I'm wondering if ATI hasn't already built a mining farm of their own.

Lol they have Smiley


Whaaaat?  Shocked Can you post some proof plz.

Lol, I think he is joking.

The funny thing is that they could just sell them off later as a retail "brand new" GPU. They are already testing every device carefully so why not test them with some bitcoin mining? I believe that would be insanely profitable for them. I mean, how many 6990's do you think they test every hour right now? The tests might be quick, expensive and advanced though...

Donations always appreciated: 1GkRu9rZxk5iMRzsrcZxZ3BUHV1SWNZ9RB
IMPORTANT! Switch from deepbit: http://forum.bitcoin.org/index.php?topic=8653.0
fpgaminer (OP)
Hero Member
*****
Offline Offline

Activity: 560
Merit: 517



View Profile WWW
May 23, 2011, 05:29:36 AM
 #51

Quote
I did not look at the code but maybe you can clarify to me how this particular approach scales;
As mentioned, it scales linearly, but only in integer multiples. So an 80K device can get 80MH/s. A 160K device can get 160MH/s. A 240K device can get 240MH/s. But no in-between. At least, not without a different design.

Note that, the design in the repo is not optimized and so uses something like 90K LEs. An optimized design fitting into at least 80K will be released once I've finished it.

Quote
Say I use one of these http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&CategoryNo=138&No=501 instead, what kind of performance could one expect? I'm assuming you can easily put multiple fully unrolled code paths for parallel execution.
Correct. The EP4SGX230 flavor would get at least 160MH/s. The EP4SGX530 would get at least 480 MH/s.

I say "at least" because as far as I understand the Stratix series of devices have better timing than the Cyclone series, and so will support a much faster clock. If they are, for example, twice as fast then you can expect 960MH/s out of the EP4SGX530. However, I don't know for sure what clock rate they can achieve with the mining core.

Quote
In the FPGA though, you have to implement something to comunicate with bitcoind and, if using multiple devices, communicate with each one of them, right?
The FPGA requires a controller, and so is really just a dumb processor like the GPU. It performs the hashing algorithm, and that's about it. Like a GPU, there is a small memory space inside the FPGA that a controller must write the work to (through some external interface like SPI), and a memory space where results (valid hashes) must be read from.

The controller gives the FPGA a 256-bit Midstate, and 512-bit Data (which are acquired through a getwork request from bitcoind or a mining pool). The FPGA then proceeds to process all 2^32 variations and return any nonces that result in a valid hash. In that sense, it's exactly like a GPU where you give it data, and tell it to run 2^32 instances of the kernel.

The controller can be anything. A microcontroller like an Arduino, a microprocessor like an ARM, or even an entire PC like the one you're reading this post on Tongue

Quote
How would one scale this to multiple FPGAs? Some communication between devices would be needed, or will there be a full TCPIP stack communitcation with bitcoin on each one?
As said there are many approaches. One approach is to have the controller make a getwork request for each FPGA, so each FPGA gets its own data to work on and cycle through 2^32 times. This has the benefit of scaling easily, and not requiring traces on the board between the FPGAs (which would need to support high frequency data transfers). The FPGAs can just be put on a single bus, like I2C or SPI, and controlled by a single microcontroller or microprocessor (possibly embedded in one of the FPGAs).

mimarob
Full Member
***
Offline Offline

Activity: 354
Merit: 103



View Profile
May 23, 2011, 08:21:34 AM
 #52

Great!

Now there is a reference implementation, so I don't have to threaten people with my crappy fpga code anymore!

interfect
Full Member
***
Offline Offline

Activity: 141
Merit: 100


View Profile
May 23, 2011, 08:27:36 AM
 #53

I'd like to second the request for the small, slow version. I have access to a bunch of DE2 boards (not DE2-115s), which have Cyclone IIs with (I think) 33000 LUs on them. Something that would fit on those would be nice to have, just so I have an excuse to play with them.

On a related note, anyone know how to restore the firmware on a DE2 board?  Roll Eyes
r2k-in-the-vortex
Newbie
*
Offline Offline

Activity: 19
Merit: 0


View Profile
May 23, 2011, 02:21:27 PM
 #54

Hi

i have also been wanting to get into fpga development for ages and this bitcoin mining idea made the final push to aquiring an fpga dev board, will get get my basys2 pcb with spartan 3e 250k gate device on thursday.
ofcourse i cant put fully pipelined implementation in it as its about 3X larger than the fpga would fit but i imagine i could fit a looped implementation into it easily

so thanks for releasing the code it will be a good reference

i dont know if i'll get to the actual implementation working on it but among other projects this will certainly be one idea i'll try
nelisky
Legendary
*
Offline Offline

Activity: 1540
Merit: 1001


View Profile
May 23, 2011, 02:25:53 PM
 #55

So before I decide to go fpga happy and shell out a few grand, any advice on Altera vs Xilinx vs whoever else? And what numbers / features should one look at in the specs when deciding what to get? LUT count is obvious, but what else?
r2k-in-the-vortex
Newbie
*
Offline Offline

Activity: 19
Merit: 0


View Profile
May 23, 2011, 02:54:04 PM
 #56

i wouldnt reccommend buying fpga board if you only want to mine bitcoins but if you want to learn fpga development i guess you would already know what you want
also pretty decent programming skills and good understanding of electronics are a prequisite
nelisky
Legendary
*
Offline Offline

Activity: 1540
Merit: 1001


View Profile
May 23, 2011, 03:14:42 PM
 #57

i wouldnt reccommend buying fpga board if you only want to mine bitcoins but if you want to learn fpga development i guess you would already know what you want
also pretty decent programming skills and good understanding of electronics are a prequisite

You almost nailed it. I have the coding skills and I do a lot of embedded development, mostly with PICs but also H8 and the like. I never used FPGAs before and I've been waiting for an excuse for a long time now, so bitcoins might very well be it.

I have a pretty simple understanding of electronics, but I do have people Wink So if I had to jump out of a dev board I could, and in fact would have all the expertise and industrial equipment available to me to do a full hardware implementation from scratch, but that obviously comes with an extra cost.

So, yeah, I *should* already know the answer to these questions if I had done my homework, but it's hard to keep up with everything and the bitcoin community has been the most helpful I've ever met... ever!
bulanula
Hero Member
*****
Offline Offline

Activity: 518
Merit: 500



View Profile
May 23, 2011, 05:39:58 PM
 #58

Off topic perhaps, but I'm wondering if ATI hasn't already built a mining farm of their own.

Lol they have Smiley


Whaaaat?  Shocked Can you post some proof plz.

Lol, I think he is joking.

The funny thing is that they could just sell them off later as a retail "brand new" GPU. They are already testing every device carefully so why not test them with some bitcoin mining? I believe that would be insanely profitable for them. I mean, how many 6990's do you think they test every hour right now? The tests might be quick, expensive and advanced though...

Not joking. Insider knowledge Smiley

They are planning custom mining card. Stop buying 5870s and wait for this around Q4 2011.

No proof / numbers / prices because its under NDA.
ArtForz
Sr. Member
****
Offline Offline

Activity: 406
Merit: 257


View Profile
May 23, 2011, 07:48:26 PM
 #59

Not joking. Insider knowledge Smiley

They are planning custom mining card. Stop buying 5870s and wait for this around Q4 2011.

No proof / numbers / prices because its under NDA.
Get the salt shaker ready. And check his post history Wink

bitcoin: 1Fb77Xq5ePFER8GtKRn2KDbDTVpJKfKmpz
i0coin: jNdvyvd6v6gV3kVJLD7HsB5ZwHyHwAkfdw
bulanula
Hero Member
*****
Offline Offline

Activity: 518
Merit: 500



View Profile
May 23, 2011, 11:12:17 PM
 #60

Not joking. Insider knowledge Smiley

They are planning custom mining card. Stop buying 5870s and wait for this around Q4 2011.

No proof / numbers / prices because its under NDA.
Get the salt shaker ready. And check his post history Wink

ArtForz, scared that your proprietary ASIC design you refuse to share with everyone on here will be unable to keep up to AMD/ATI mass produced cards Huh

Pages: « 1 2 [3] 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!