I know CPUs and GPUs can't really compete with ASICs anymore but what about FPGAs? Are they still reasonable? Anyone have a ballpark idea of what kind of Gh/s (or Mh/s) has been done with something like a Spartan 6?
First a bit of perspective on FPGA mining.
Around 2011 some miners started switching from GPUs to FPGAs, (Field Programmable Gate Arrays), after the first implementation of Bitcoin mining came out in Verilog, (a hardware design language that’s used to program FPGAs).
The general rationale behind FPGAs is to try to get as close as possible to the performance of custom hardware while also allowing the owner of the card to customize it or reconfigure it "in the field".
By contrast, custom hardware chips are designed in a factory and do the same thing forever. FPGAs offer better performance than graphics cards, particularly on “bit fiddling” operations which are trivial to specify on an FPGA.
Cooling is also easier with FPGAs and, unlike GPUs, you can theoretically use nearly all of the transistors on the card for mining. Like with GPUs, you can pack many FPGAs together and drive them from one central unit, which is exactly what people began to do.
Overall, it was possible to build a big array of FPGAs more neatly and cleanly than you could with graphics cards. Using an FPGA with a careful implementation, you might get up to a GH/s, or one billion hashes per second.
This is certainly a large performance gain over CPUs and GPUs, but even if you had a hundred 141 boards together, each with a 1 GH/s throughput, it would still take you longer than 50 years on average to find a Bitcoin block at the current difficulty level.
Despite the performance gain, the days of FPGA mining were quite limited. Firstly, they were being driven harder for Bitcoin mining — by being on all the time and overclocked — than consumer grade FPGAs were really designed for. Because of this, many people saw errors and malfunctions in their FPGAs as they were mining. It also turned out to be difficult to optimize the 32‐bit addition step which is critical in doing SHA‐256. FPGAs are also less accessible‐you can't buy them at most stores and there are fewer people who know how to program and set up an FPGA than a GPU. Most importantly though, even though FPGAs improved performance the cost‐per‐performance was only marginally improved over GPUs. This made FPGA mining was a rather short‐lived phenomenon. Whereas GPU mining dominated for about a year or so, the days of FPGA mining were far more limited — lasting only a few months before custom ASICs arrived.
However- the cycle repeats itself.
It’s worth noting that several smaller altcoins have indeed used a different puzzle than SHA‐256, but have seen a similar trajectory in mining as Bitcoin.
For ASICs there is still a long lead time between designing a chip and shipping it, so if a new altcoin uses an new puzzle (even just a modified version of SHA‐256), this will buy some time in which ASICs are not yet available. Typically, mining will proceed just at Bitcoin did from CPUs to GPUs and/or FPGAs to ASICs (if the altcoin is very successful, like LiteCoin). Personally I'm quite interested in Zcash.
Much of the content for this answer was drawn from this excellent resource.