In a market, you can find a bunch of programmable logic devices – PLD. They can be small scale integrated – SSI, medium-scale integrated- MSI, mask programmed gate array – MPGA (MPGD – masked programmable logic devices). Now the most popular are FPGA (Field Programmable Gate Arrays).
What is the difference between FPGA and MPGA? MPGA is hard-coded during manufacturing and cannot be erased or reprogrammed, while FPGA is programmable – usually EEPROM or SDRAM.
Of course, there are other differences between FPGA and MPGA. One of them is speed. MPGA usually is faster as MPGA needs fewer elements to form a logic gate while FPGA needs additional elements to enable programmability – this adds additional resistances and capacitances in circuits. But today’s technology allows reaching significant speeds with FPGAs too.
Another difference may be integration. As we mentioned, MPGA requires fewer elements to form one logical gate; they can contain more logical gates. Still, again the area of the chip is also limited by PIN- this difference becomes meaningless.
The main criteria of choosing MPGA or FPGA would be:
- Ability to modify;
If we need to prototype a project, you will choose FPGA as it allows reprogramming multiple times. When you release your design to mass production-wise choice, use MPGA as it costs less because of mass programmability, speed, and simpler technology.
Two types of PGA are FPGAs and Complex Programmable Logic Devices – CPLDs. FPGA offers the highest amount of logic density, the most features, and the highest performance.
The largest FPGA now shipping, part of the Xilinx Virtex line of devices, provides eight million “system gates” (the relative density of logic). These advanced devices also offer features such as built-in hardwired processors (such as the IBM Power PC), substantial amounts of memory, clock management systems, and support for many of the latest, very fast device-to-device signaling technologies. CPLDs, offer much smaller amounts of logic gates- up to about 10,000 gates.
But CPLDs have predictable timing characteristics and are ideal for critical control applications. CPLDs require less power and are inexpensive comparing to FPGA, making them ideal for cost-sensitive, battery-operated, portable applications such as mobile phones and digital handheld assistants. CPLD programmable logic devices usually are EPROM or EEPROM based.