Author

Topic: FPGA -- DIY @ Low Cost (Read 8488 times)

legendary
Activity: 1270
Merit: 1000
May 04, 2012, 06:18:36 AM
#34
While you could try your luck with a 2 layer board, it should be clever to use a 4 layer design with massive power and ground planes and a lot of vias. If you look at the the thread by eldentyrell where he started with a board  using conventional capacitors he got problems when the design used higher  gate count and or frequencies.  Its not only a matter of ohmic resistance but also the inductance of the power and ground connections.
It could even worth a consideration to make a design that uses additional blocking caps 'under' the BGA and leave them unpopulated if testing shows they can left out.
hero member
Activity: 924
Merit: 506
May 04, 2012, 05:46:14 AM
#33
There aren't many pins used for communication. Usually 2 for actual job/share transfer and 4 for JTAG or some other means of bitstream upload.
The vast majority of pins is for the three required power supply rails, one of which is carrying like 10 amps of current any may not have more than very few milliohms of series resistance. I'd think there are like 100 power supply balls total on that package.

From that, I would think there is no need for a multi-layer PCB to support a FPGA chip like the Spartan 6x150. Is that an accurate notion?
hero member
Activity: 504
Merit: 500
FPGA Mining LLC
May 04, 2012, 05:02:54 AM
#32
There aren't many pins used for communication. Usually 2 for actual job/share transfer and 4 for JTAG or some other means of bitstream upload.
The vast majority of pins is for the three required power supply rails, one of which is carrying like 10 amps of current any may not have more than very few milliohms of series resistance. I'd think there are like 100 power supply balls total on that package.
hero member
Activity: 924
Merit: 506
May 04, 2012, 04:47:10 AM
#31
rph's boards are all custom and professionally produced. In fact, I'm pretty sure he ended up having the FPGAs soldered by a shop as well, but did the first ones himself by hand for prototyping (although I could be wrong about that). There is definitely an advantage to having them done by someone with the right tools. It costs money, but how much does your time cost? Not to mention the FPGAs that don't survive.

In my experience, DIY is not about saving money. In fact, most of my weekend projects have been a huge money sink. Smiley That's not to say it isn't fun and educational, though!

Admittedly, there is an element of fun involved, even in the prospect of considering DIY...and a dash of frustration...or maybe better stated, a cup of frustration.  Wink

I was looking at the images of the X6500 board here: http://fpgamining.com/products/x6500-rev3
How many pins or balls or whatever are actually connected & used outside of the FPGA chip? It looks like only a few capacitors on the underside are used to connect some balls or pins, and a few traces on the top surface are used. Am I missing a lot of connectivity that is happening in middle layers?

I am curious about how many pins are utilized for the input and output to the chip in normal operation. I don't see why all the dozens of pins or balls need to used on the chip during mining. Seems just a single data input, a clock, VCC, common and a single output are enough. Unless of course you have many inputs/outputs that go to or come from different/parallel 'threads' for lack of a better term.

||bit.out
hero member
Activity: 720
Merit: 525
May 04, 2012, 02:44:31 AM
#30
If you wanted to build like rph's wouldn't it make sense just to pool some funds and have a batch of daughter boards made with the fpgas correctly soldered to them?  Leave the DIY to the board that the daughter boards mount onto.

Yes. However, the main purposes here is to minimize all costs where possible. Also, if I really want to optimize, I need to be exposed to as much of the FPGA circuitry as possible.

About the miniature board that has the pads that he soldered the FPGA chip to. It has pins on the outer edge to plug the mini-FPGA board to the slightly larger board. Do you think the solder balls are all accounted for by a pin? (i.e. one for one.)
Is that mating pair a product of Xylinx? Can those boards be made using a regular DIY etching process? If it requires multiple layers, then I don't see how it could be practically done....but to be thorough, I prefer to ask anyway.

rph's boards are all custom and professionally produced. In fact, I'm pretty sure he ended up having the FPGAs soldered by a shop as well, but did the first ones himself by hand for prototyping (although I could be wrong about that). There is definitely an advantage to having them done by someone with the right tools. It costs money, but how much does your time cost? Not to mention the FPGAs that don't survive.

In my experience, DIY is not about saving money. In fact, most of my weekend projects have been a huge money sink. Smiley That's not to say it isn't fun and educational, though!
hero member
Activity: 924
Merit: 506
May 04, 2012, 02:33:22 AM
#29
Interested.
How about we create a fund to pay for research or pledge to a developer?
I'm in 10BTC for the start.

Sounds good in concept if we were to set a ~1MH/$ goal, and require proof that it would work.
hero member
Activity: 924
Merit: 506
May 04, 2012, 02:20:21 AM
#28
If you wanted to build like rph's wouldn't it make sense just to pool some funds and have a batch of daughter boards made with the fpgas correctly soldered to them?  Leave the DIY to the board that the daughter boards mount onto.

Yes. However, the main purposes here is to minimize all costs where possible. Also, if I really want to optimize, I need to be exposed to as much of the FPGA circuitry as possible.

About the miniature board that has the pads that he soldered the FPGA chip to. It has pins on the outer edge to plug the mini-FPGA board to the slightly larger board. Do you think the solder balls are all accounted for by a pin? (i.e. one for one.)
Is that mating pair a product of Xylinx? Can those boards be made using a regular DIY etching process? If it requires multiple layers, then I don't see how it could be practically done....but to be thorough, I prefer to ask anyway.
donator
Activity: 490
Merit: 500
May 03, 2012, 06:42:48 PM
#27
If you wanted to build like rph's wouldn't it make sense just to pool some funds and have a batch of daughter boards made with the fpgas correctly soldered to them?  Leave the DIY to the board that the daughter boards mount onto.
legendary
Activity: 1274
Merit: 1004
May 03, 2012, 05:30:19 PM
#26
It mounts to an array of holes that match the balls on the chip. It requires a bit of skill, and if you screw up you can potentially lose the chip. That is bad when each chip costs more than the rest of the parts combined.

It doesn't really mount on an array of holes, they're just exposed copper pads on the PCB. The only thing keeping the chip centered on the PCB is inertia and the surface tension of the liquid solder. It sticks to the balls and pads and tends to suck the chip into the right position if it's slightly off-center.

Still, if you're serious about doing more than a couple of these, I'd seriously recommend spending the $100 to get a stencil made. It will make applying the paste so much easier. I have a LPKF Protoflow S, and even with that I hate doing too much SMT work without a stencil just because it's so much of a PITA to apply the solder paste. With one, a simple board like rph's would take 10 minutes to apply paste, populate and stick in the oven. It does a lot nicer job with getting a consistent amount of paste as well, so you're much less likely to run into issues of shorts between pins.
rjk
sr. member
Activity: 448
Merit: 250
1ngldh
May 03, 2012, 05:01:12 PM
#25
You just can't solder a ball grid array by hand.

Thank you for your response. I can see how that would be impossible by hand.

What does the chip mount to exactly? I like how in RPH's thread [see below] he has his chip mounted to a tiny board which then mounts to a larger board. This seems like a good approach in the event an FPGA needs to be replaced.

One of the reasons I see this whole thing as a possible for DIY, is just reading RPH's thread where he used a skillet or something. See here: https://bitcointalksearch.org/topic/ultra-low-cost-diy-fpga-miner-175mhs-1mh-44891
If he can do it, why not anyone? Despite the chances of losing a chip here or there, I think such a process could be fine tuned to be overall successful & repeatable.

What he has there in that thread is [seems] very elegant and simple. Though, I am uncertain about what happens under the FPGA... Is a multilayer PCB required for our purposes? (i.e. btc mining)

||bit.out

It mounts to an array of holes that match the balls on the chip. It requires a bit of skill, and if you screw up you can potentially lose the chip. That is bad when each chip costs more than the rest of the parts combined.
hero member
Activity: 924
Merit: 506
May 03, 2012, 04:54:41 PM
#24
You just can't solder a ball grid array by hand.

Thank you for your response. I can see how that would be impossible by hand.

What does the chip mount to exactly? I like how in RPH's thread [see below] he has his chip mounted to a tiny board which then mounts to a larger board. This seems like a good approach in the event an FPGA needs to be replaced.

One of the reasons I see this whole thing as a possible for DIY, is just reading RPH's thread where he used a skillet or something. See here: https://bitcointalksearch.org/topic/ultra-low-cost-diy-fpga-miner-175mhs-1mh-44891
If he can do it, why not anyone? Despite the chances of losing a chip here or there, I think such a process could be fine tuned to be overall successful & repeatable.

What he has there in that thread is [seems] very elegant and simple. Though, I am uncertain about what happens under the FPGA... Is a multilayer PCB required for our purposes? (i.e. btc mining)

||bit.out
legendary
Activity: 1274
Merit: 1004
May 03, 2012, 04:42:33 PM
#23
Not to derail this, since 1) More competition is better and 2) I love DIY, but this would be a challenging board to DIY. Surface mount components like resistors and caps aren't tough, but even with a reflow oven doing the BGA FPGA would be difficult without a stencil. Even if you got the process down well enough that you weren't wasting any, after you add up the cost of the LX150s, the PCBs and all the other components, it would be really difficult to save any money vs something like the proposed 4xLX150 @ $640. If you're ordering singles that would be what you'd pay just for FPGAs at Digikey.

Great idea for a project, but just be aware this might not save much money.

Thanks none-the-less for your thoughts. BTW: Where do you find a proposed 4xLX150 option?

https://bitcointalksearch.org/topic/cairnsmore1-quad-xc6slx150-board-78239

The biggest issue any of these projects is going to have is getting the volume needed for good discounts. Without volume pricing, everything doubles in cost.
hero member
Activity: 504
Merit: 500
FPGA Mining LLC
May 03, 2012, 04:41:11 PM
#22
You just can't solder a ball grid array by hand.
hero member
Activity: 924
Merit: 506
May 03, 2012, 04:22:06 PM
#21
Not to derail this, since 1) More competition is better and 2) I love DIY, but this would be a challenging board to DIY. Surface mount components like resistors and caps aren't tough, but even with a reflow oven doing the BGA FPGA would be difficult without a stencil. Even if you got the process down well enough that you weren't wasting any, after you add up the cost of the LX150s, the PCBs and all the other components, it would be really difficult to save any money vs something like the proposed 4xLX150 @ $640. If you're ordering singles that would be what you'd pay just for FPGAs at Digikey.

Great idea for a project, but just be aware this might not save much money.

Thanks none-the-less for your thoughts.

Where do you find a proposed 4xLX150 option? I found one posting, but it seems to be a time limited offering proposed. I think selling at manufacturing cost for a short term.

I'm not fully aware of the requirements to mount an FPGA chip. Just that it has a lot of pins to solder to the board. Could you explain in layman terms what you mean when you say "but even with a reflow oven doing the BGA FPGA would be difficult without a stencil"?

||bit.out
legendary
Activity: 1274
Merit: 1004
May 03, 2012, 04:02:20 PM
#20
Not to derail this, since 1) More competition is better and 2) I love DIY, but this would be a challenging board to DIY. Surface mount components like resistors and caps aren't tough, but even with a reflow oven doing the BGA FPGA would be difficult without a stencil. Even if you got the process down well enough that you weren't wasting any, after you add up the cost of the LX150s, the PCBs and all the other components, it would be really difficult to save any money vs something like the proposed 4xLX150 @ $640. If you're ordering singles that would be what you'd pay just for FPGAs at Digikey.

Great idea for a project, but just be aware this might not save much money.
donator
Activity: 588
Merit: 500
May 03, 2012, 03:29:36 PM
#19
Interested.
How about we create a fund to pay for research or pledge to a developer?
I'm in 10BTC for the start.
legendary
Activity: 1270
Merit: 1000
May 03, 2012, 12:19:25 PM
#18
No sorry, no link. I think it was in the first posting of one of the threads started by ztex but since he  did edits several times this offer was edited away. But of course you could ask him if he would still be intrested.
hero member
Activity: 924
Merit: 506
May 03, 2012, 08:03:12 AM
#17
There was a license production program by ztex  with (as far i remember) $189$/board @ 100 pieces and 179 $/board @ 250 pieces estimated cost including fees and prefabricated  pcbs. Makes  it really sense to  home-assemble  boards if it cost in small series maybe 5$ per board?

Was this essentially a kit one could use to make an FPGA miner board? Do you have any links?

If it is a kit, then it seems this would yield at least a very competitive MH/$ option (assuming 150MH/s per board) compared to other retail boards (excluding BFL).

||bit.out
legendary
Activity: 1270
Merit: 1000
May 03, 2012, 07:13:02 AM
#16
There was a license production program by ztex  with (as far i remember) $189$/board @ 100 pieces and 179 $/board @ 250 pieces estimated cost including fees and prefabricated  pcbs. Makes  it really sense to  home-assemble  boards if it cost in small series maybe 5$ per board?
hero member
Activity: 924
Merit: 506
May 03, 2012, 03:23:28 AM
#15
Is not easy to do this lol.
I can easily make a board but what's impossible is coding it to work properly. I don't even know how bitcoin works. I think miner "decrypt" the string and returns it's value, but how do the miner "decrypt" these strings?

Thanks.

Miners SHA256 hash a string until the hash is lower than a target value. You can read a fairly accessible article on it here.

Thanks for the link BinaryMage.
hero member
Activity: 924
Merit: 506
May 03, 2012, 03:22:20 AM
#14
Is not easy to do this lol.
I can easily make a board but what's impossible is coding it to work properly. I don't even know how bitcoin works. I think miner "decrypt" the string and returns it's value, but how do the miner "decrypt" these strings?

Thanks.

From my limited knowledge on this topic, I expect the hardest part to be getting the prices down. Granted, part of that would be in optimizing FPGA code. But getting the code initially may be as easy as using what has already been developed for open use (if any). There is an open Python code I think that you can analyze to see how the algorithm is used. But I would personally start with some block diagram level stuff first. I've yet to find any such diagrams though.

My thinking is that any low cost DIY will [probably] incorporate Spartan 6s150 chips. However, I don't want to be tunnel visioned and/or dogmatic about that idea. Also, I'd like to take time to think outside the chip  Undecided  It may be that the best low cost solution would require buying more parts than a minimalist board. Perhaps, any ASICS to do the SHA256 hashing? Maybe, use the FPGA's to do whatever else needs to be done.

Brainstorm:
From some cursory reading, I would expect any dedicated SHA256 ASICs to do the hashing part of the overall algorithm about 3 to 4 times faster than an FPGA (i.e. pound for pound). If a such a dedicated ASIC could be used for this, then for each hashing routine the ASIC would perform, let's say we can free up say three hashing routines from the FPGA. And I anticipate this to be a large part of the FPGA code. Anyway, the FPGA would use any such free space to process output from (or for) the ASIC as needed.
From there, figure out the right ratio of FPGA's to ASIC's to utilize every ounce of logic circuitry. This MIGHT work to increase MH/$ (MH => MH/s) if the ASIC work:cost alone would translate into a higher MH/$ value.

Another thought might be to consider how a GPU can work with FPGA's.

...

Back to 'normal' thinking:
Anyone got any idea on what a minimalist board might cost? Assume the FPGA can be programmed to achieve about 150Mh/s. Already we are at a disadvantage in MH/$. Such a chip might cost about $170 (not sure if that is accurate). Anyway, if that is the case, you start out with 150MH/s/$170 or  .88MH/s ... not counting the printed circuit board and any minor components (capacitors, resistors, connectors).  Just from that alone, I would decide to go with whoever is the bext retail FPGA. But I wouldn't want to give up so easily.


||bit.out
hero member
Activity: 560
Merit: 500
Ad astra.
May 02, 2012, 09:34:05 PM
#13
Is not easy to do this lol.
I can easily make a board but what's impossible is coding it to work properly. I don't even know how bitcoin works. I think miner "decrypt" the string and returns it's value, but how do the miner "decrypt" these strings?

Thanks.

Miners SHA256 hash a string until the hash is lower than a target value. You can read a fairly accessible article on it here.
sr. member
Activity: 283
Merit: 250
Making a better tomorrow, tomorrow.
May 02, 2012, 08:37:17 PM
#12
Both these threads have gone a little quite but there's some info in there. One of the projects has a Dropbox.

https://bitcointalksearch.org/topic/modular-fpga-miner-hardware-design-development-22426
https://bitcointalk.org/index.php?topic=9047.560
sr. member
Activity: 423
Merit: 250
May 02, 2012, 06:36:21 PM
#11
Is not easy to do this lol.
I can easily make a board but what's impossible is coding it to work properly. I don't even know how bitcoin works. I think miner "decrypt" the string and returns it's value, but how do the miner "decrypt" these strings?

Thanks.
rjk
sr. member
Activity: 448
Merit: 250
1ngldh
May 02, 2012, 06:32:33 PM
#10
Reflow soldering without the right components is very easy to mess up and get wrong. I don't think there would be many users that would be successful with a kit. I don't think it would be possible to create a board that isn't reflow soldered.

Thanks for your thoughts.

For DIY, what would you suggest to accommodate this problem? A premounted FPGA chip on a daughter board? Akin to one RPH seemed to use here: https://bitcointalksearch.org/topic/ultra-low-cost-diy-fpga-miner-175mhs-1mh-44891

BTW: RPH seemed to pull off something like that at his home: https://bitcointalksearch.org/topic/m.536983

Thoughts?
On the usual boards, many other components are SMT as well, and I have no idea whether they could be redesigned with through-hole parts. My guess is that they probably could, and the daughterboard idea might work, but I don't know how well it would work in practice.
hero member
Activity: 924
Merit: 506
May 02, 2012, 06:23:05 PM
#9
Reflow soldering without the right components is very easy to mess up and get wrong. I don't think there would be many users that would be successful with a kit. I don't think it would be possible to create a board that isn't reflow soldered.

Thanks for your thoughts.

For DIY, what would you suggest to accommodate this problem? A premounted FPGA chip on a daughter board? Akin to one RPH seemed to use here: https://bitcointalksearch.org/topic/ultra-low-cost-diy-fpga-miner-175mhs-1mh-44891

BTW: RPH seemed to pull off something like that at his home: https://bitcointalksearch.org/topic/m.536983

Thoughts?
rjk
sr. member
Activity: 448
Merit: 250
1ngldh
May 02, 2012, 06:12:17 PM
#8
Reflow soldering without the right components is very easy to mess up and get wrong. I don't think there would be many users that would be successful with a kit. I don't think it would be possible to create a board that isn't reflow soldered.
hero member
Activity: 924
Merit: 506
May 02, 2012, 06:08:00 PM
#7
Yep,all we need is the board design & a parts list Cry

Something simple,maybe around 200+ mh/s.

And it must be low cost, i.e. it must be competitive with two of the top three FPGA boards in MHash/$.
Otherwise, it's just fiscal sense to just do the retail option. BFL, ZTEX, et. al.

I think DIY would have the advantage, since you automatically cut out the profit aspect. However, there are some disadvantages of DIY  -- e.g. individuals have a higher hurdle to receive any bulk discounts (which might be able to be met by pooling DIY'ers purchases), or any special or costly equipment needs.
hero member
Activity: 924
Merit: 506
May 02, 2012, 06:01:27 PM
#6
Someone really needs to release a board design and sell plain pcbs. As soon as you can just buy a board and your own components and then solder it all together, this becomes far more feasible for the DIY hobbyist.  Especially with something like rph's approach where you could buy the fpga already soldered on a daughter board.

That sounds good too. Though, I'm even curious about the potential for a DIY PCB. What necessary PCB complexity is there to accommodate to an FPGA chip. One thread I read seemed to indicate a 4 layer PCB would be a minimum. If-so, then yeah, I don't see that happening easily in a DIY venue. Which would mean having the PCB made professionally. But that may be the one thing that needs to be bought in bulk. And if it is as simple as RPH's boards seem, then it shouldn't be that costly at all.

BTW: I am pretty sure RPH soldered his own FPGA to a BGA board. That was part of his excitement in using a skillet or hot-plate to do so. It appears this is the BGA board he used:
http://www.xilinx.com/support/documentation/package_specs/fg484.pdf

So, a professional outside PCB source seems to have been his approach as well. There may not be any practical alternative for DIY.


||bit.out

 
legendary
Activity: 2212
Merit: 1001
May 02, 2012, 05:47:25 PM
#5
Yep,all we need is the board design & a parts list Cry

Something simple,maybe around 200+ mh/s.

I have a guy that can assemble boards in his home  Grin

I would be willing to kick some BTC towards this IF it'll work.
donator
Activity: 490
Merit: 500
May 02, 2012, 05:32:02 PM
#4
Someone really needs to release a board design and sell plain pcbs. As soon as you can just buy a board and your own components and then solder it all together, this becomes far more feasible for the DIY hobbyist.  Especially with something like rph's approach where you could buy the fpga already soldered on a daughter board.
hero member
Activity: 924
Merit: 506
May 02, 2012, 11:46:10 AM
#3
I'm glad to see some initial interest in this. Though, it isn't much of a surprise having seen the other DIY FPGA threads.

I'd personally like to bypass all the fun of designing one, and use someone else's already made DIY plans. My expertise is as an electronics technician, not an engineer. In the meantime, I might go with Butterfly Labs products.

....

There are good ideas already posted and well commented, but nothing finalized. I personally like the thread started by RPH here: https://bitcointalksearch.org/topic/ultra-low-cost-diy-fpga-miner-175mhs-1mh-44891

RPH's o/p reads "Ultra-Low-Cost DIY FPGA Miner - 175MH/s @ $1/MH". i.e. 1MH/$

If his design path actually would yield 1MH/$, then that DIY approach seems quite worthwhile...b/c BFL Singles is the best at about 1.38MHash/$. The next best two found here (https://en.bitcoin.it/wiki/Mining_hardware_comparison#FPGA_Devices) are 0.82-0.5 MH/$ made by ZTEX (but the best rate there requires a bulk purchase), and the very comparable 'X6500 Rev 3' at .71MH/$.

So, 1MH/$ seems very nice for DIY...even considering some of the new stuff that seems ready to come out. Furthermore, the MHash/$ might possibly be improved more with some creative thought.


Any thoughts?

Maybe go to this thread for some other insights to consider:

"Minimalist Spartan6-LX150 board"
https://bitcointalksearch.org/topic/m.543312

...

I'll see what kind of responses we get, and if anyone wants to contribute, I can certainly think of plenty of questions to ask.

||bit out.



legendary
Activity: 938
Merit: 1000
What's a GPU?
May 02, 2012, 10:44:04 AM
#2
I'm really interested in helping out with something like this. I would be doing as much learning as contributing, but this would be really fun.

I haven't seen anything successful from those threads either; let's be the first!
hero member
Activity: 924
Merit: 506
May 02, 2012, 10:26:35 AM
#1
Using retail or bulk-purchased components: Has anyone here developed any actual low cost do-it-yourself FPGA boards that have competitive or better-than competitive hash/$ rates?
If-so: Is that person willing to share or sell the design plan?

I've seen a few threads attempt to tackle this topic, but I have yet to see anything actually come from them. It seems the thread authors drop out or decide to develop the idea for their own use after some progress.

If not: Is anyone here willing to collaborate on developing such a board? And not just an FPGA board that will hash, it MUST be competitive in price...if this is even possible. It seems, so far, the best hash/$ rate is BFL's products. But if a board could be developed to be at least as good as the next best hash/$ rates, it might be worth it. Especially considering the slow product shipping time of Butterfly Labs.
Jump to: