Saturday, June 26, 2010

FPGA vs Microcontroller in a control system

Microcontrollers, including DSP (Digital Signal Processors), are widely used in digital system applications. However, the hardware architecture of these devices is not flexible like having a fixed on-chip memory, limited number of peripherals, fixed data-widths, and so on. Besides, commercial processors may not have the required hardware features. Some hardware features can be emulated via an elegant software algorithm, but that can lead to performance bottlenecks. There are two solutions to this problem: (a) factory design an ASIC (Application Specific IC) or (b) use an FPD (Field Programmable Device) as a reconfigurable solution. Option (a) is economically viable only for large volume production, leaving the second option as the best alternative, for a low volume solution. Many different types of FPDs are in the market. An FPGA is the most advanced type of FPD and offers a very high logic capacity.