I bought a Xilinx Spartan 3 Starter kit awhile back for about $100. Great bargain! This board has an FPGA that can hold 10s of thousands of logic gates. Why use FPGAs instead of microcontrollers? FPGAs are real hardware. Say you design 10 PWM outputs in hardware. Then all 10 run at the same time. In a microcontroller, you have to do a few instructions for one PWM and then a few for the other… and so on (or at least, some variation thereof). So even a fast processor quickly gets divided down. Another way to look at it is that if you have a processor running at 10MHz in a loop with 10 instructions, you are effectively operating at 1MHz! With an FPGA everything happens in hardware all at the same time.
I have a custom CPU I designed working pretty well on the board. I’ll occasionaly share a little about some projects I’ve done with the board here on HotSolder.