
Field programmable gate arrays (FPGA)
Most products nowadays have microprocessors in them. They are inexpensive and flexible but sometimes are not quite up to the required functionality. Perhaps some tasks are too intense or frequent. You might then consider using a field programmable gate array FPGA to augment or even replace the processor.
An FPGA is a general purpose chip which allows you to implement arbitrary logic functionality. Circuits which are traditionally implemented as combinations of discrete logic chips can be packed into one FPGA. Configuring the logic is done after the circuit board is manufactured and populated.
FPGAs are really good at parallel processing. Just about any logic circuit can be implemented independently of any other circuit in the chip. All of these functions will perform their tasks in a timely manner no matter what the other circuits are up to. They are also really fast. Each parallel circuit can respond sometimes in tens of nanoseconds whereas a microprocessor often takes microseconds or even milliseconds. Calculation times can be decreased sometimes by many orders of magnitude.
On the other hand, if the FPGA does not fully replace the microprocessor, then you have to manage more design documentation and product configuration. They are often slow to boot up and they come in chip packages with vast numbers of pins, causing circuit boards to be complex and the manufacturing tolerances to be tight. They often require multiple voltage sources and sometimes high power as well and on top of all that they can be expensive.
Nevertheless, FPGAs significantly expand your design possibilities. With proper consideration they could be just the ticket to an awesome product.
Kenneth MacCallum, PEng, is a former Principal Engineering Physicist at StarFish Medical. He works on Medical Device Development and loves motors, engines and trains as well as the batteries that power them. View his work in our Case Studies.
Image: wikipedia