Understanding FPGA programming: an ASIC lesson in electronics

Many mechanical engineering companies are at last waking up to the benefits of FPGA design, which impacts on every area of our lives from airport baggage handling conveyors to recycling system developments for RoHS/REACH compliance.

An FPGA, or Field Programmable Gate Array is a form of embedded firmware utilising advanced, high speed PCB design. However, first let’s talk about gate arrays in general. Gate arrays are central to Application Specific Integrated Circuit, or ASIC design. With no particular function of their own, they are prefabricated silicon chip circuits into which transistors, logic gates and other active components are placed, the whole being manufactured on a wafer.

Going back one step further, a logic gate is a component which performs a logical operation resulting in a single logic output i.e. decision. It can have one or more inputs. Usually implemented electronically via a diode or resistor, it can also be created in other ways, e.g. electromagnetic relays, fluids or even by mechanical means. Logic gates generally work on a “neither/or” (NOR) or “not/and” (NAND) principle, familiar to anyone who knows a bit about the brand of math called Boolean Logic.

The gate array is then made into an active integrated circuit, or programmable logic device, (PLD) with a specific function. This is achieved via a metal layer added towards the end of manufacture, which interconnects, or integrates, the individual components on the master slice, allowing the PLD to be programmed as desired.

If you prefer to leave the practical work to someone else, we at Enventure Technologies are specialists in FPGA programming and high speed PCB design.

Contact Us