Quote Originally Posted by asimov_18 View Post
The purpose of FPGA is just that of a programmable device something that can be achived with a Uc. Uc have been around for a long time and lot of stuff is there on the net , forums and stuff. So people are naturlly inclided to them. To be honest the only advantage I see in FPGA is the execution speed compared to a program running on a Uc. Most uc come in dip packages which can be hand soldered who has the time money and resources for smd soldering and equipment when DIP packages re there. So WHY GO FOR FPGA!!!!
FPGAs offer unparalleled flexibility for robotics applications. For instance, they are perfect for custom high-speed designs, like image processing directly from a camera. Good luck using a microcontroller for that! Or suppose you need to control a dozen or more servos, but your microcontroller only has 8 hardware PWM channels. On an FPGA, you can easily create additional hardware peripherals (like PWM, UART, I2C, etc.) as necessary!

My friend and I wanted to integrate an FPGA into a small project. The two main vendors (Xilinx and Altera) don't have FPGAs in a DIP package, and FPGAs need a lot of extra support circuitry to operate (1.2v and 3.3v power supplies, bypass capacitors, configuration flash). So my friend and I decided to make our own FPGA DIP module that contains an FPGA with all the support circuitry, for hobbyists trying to integrate an FPGA into their own designs! Check it out here: http://micro-nova.com/mercury

Our Mercury module packs a Spartan-3A in an easy-to-use, breadboard-friendly DIP package. Perfect for integrating into a small robot! It also has extra circuitry for 5V-tolerant I/O (most FPGAs are limited to 3.3V), and adds an 8-channel ADC for analog sensors. It has a flash chip to store the FPGA configuration, and is USB programmable.