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.