Designing your own FPGA or ASIC to mine for Bitcoins
…is not a great idea
Sorry to burst your bubble in the first sentence. Maybe you think that you can use your hot Digital Design skills to program your sweet Xilinx Spartan 6 development board to make you tens of thousands of dollars. Well get that idea out of your head now, it’s not happening. Still reading? I’ll elaborate.
Bit coins (bitcoins) are an interesting beast. They are specifically designed to become exponentially more difficult to get the more people are out there trying to get them. If you’re reading this, sadly you’re too late to the party. There are so many people who have custom hardware specifically designed to find bitcoins that your little FPGA development board doesn’t stand a chance. You might make a few dollars, but if you are pursuing it for anything other than educational reasons, you should not waste your time.
The reason for this is that there are already pieces of hardware on the market for anyone to purchase. This hardware can find bitcoins hundreds of times faster than you can. And they’re expensive. These all use ASICs (Application Specific Integrated Circuits) to mine. ASICs are always going to be faster than an FPGA you design. This is because the ASICs are packed full of logic that is specific to mining bitcoins. Additionally, since they are designed for one purpose only, they can run their clocks much faster than your FPGA can. Also, ASICs are very expensive to develop (in the hundreds of thousands of dollars). This is why the companies who sell these can charge so much for them.
All pieces of your computer can be used to mine for bitcoins. When bitcoins were new, people used their CPUs. Eventually someone realized you could use your graphics card (GPU) to do some of the work. After that people built FPGAs whose sole purpose was to make money. And today there are over a dozen different ASIC based bitcoin mining machines that will blow the others out of the water. Bitcoin mining is measured in Mega-hashes per second (Mhash/s). In order to make $10 at today’s rate of ~$120/bitcoin, you would need to use your Spartan 6 development board for about eight months. Oh and that doesn’t include the cost of electricity. Check a good bitcoin mining calculator if you want to check the results for today’s rates.
The table below compares a few of bitcoin mining options:
Type | Product | Mhash/s | Price |
---|---|---|---|
CPU | Intel Core i7 | ~20 | $150 |
GPU | Nvidia GTX670 | 112 | $300 |
FPGA | Spartan-6 Dev Kit | 100 | $995 |
ASIC | Avalon ASIC 2 | 82,000 | $1,499 |
As you can see from the selections above, if you aren’t using the ASIC method of hunting down bitcoins, you’re going significantly slower than everyone else. So I’m sorry to bust your bubble, but don’t bother finding your own bitcoins.
Damn, 120 per Bitcoin, when was this article written?
Yeah this is a fun one to go back to every now and then. If only I *had* bought some bitcoin back then… instead of writing this article… sigh.
It would be interesting to know if FPGA’s have closed the gap to ASICs and cost comparison in 2023. Like the Xilinx Varium C1100 FPGA.
oh, sweet memories, when one coin was 200 euro… not so long ago. and in last times, some overthetop fpgas apeared – fk33 and bc1525 for example. and now after c1100, another bad boy in town – osprey e300, cheaper and many times profitable than some greencolored overpriced gpu. allthis possible after the fundamental union of amd with xilinx. now, sky is the limit.
What if the mining algorithm is sha256() directly instead of sha256(sha256()) ? Then Bitcoin ᴀꜱɪᴄs are non compatible and everyone uses ɢᴘᴜs again !
In theory, I could earn a lot of money by renting ꜰᴘɢᴀs but while designing sha256 is simple designing efficient sha256 isn’t : https://bitcointalk.org/index.php?topic=5494325.0 (maybe why ɢᴘᴜ on such algorithm are still actual since 2018 ?)
can you help me about this ?