In: Computer Science
Why are FPGAs used over other programmable Devices such as the GAL chip?
//I will try to answer this question in perspective of FPGA and GAL chip since they are explicitly mentioned in the question.
the generic array logic device, or GAL has the same logical properties as the PAL (Programmable Array Logic) but can be erased and reprogrammed. The GAL is very useful in the prototyping stage of a design when any bugs in the logic can be corrected by reprogramming. GALs are programmed and reprogrammed using a PAL programmer, or by using the in-circuit programming technique on supporting chips.
On the other hand, FPGA (Field Programmable Gate Array) is based on gate array technology. FPGAs use a grid of logic gates, and once stored, the data doesn't change, similar to that of an ordinary gate array. The term "field-programmable" means the device is programmed by the customer, not the manufacturer.
The difference between FPGAs and CPLDs (like GAL) are as follows:-
1. FPGAs are internally based on look-up tables (LUTs) whereas CPLDs form the logic functions with sea-of-gates (e.g. sum of products).
2. CPLDs are meant for simpler designs while FPGAs are meant for more complex designs. Hence we can also use FPGAs for most of the CPLDs purposes which is why they are used in abundance.
3. One of the biggest selling points of FPGAs is that they can be programmed and reprogrammed to the required functionality even after manufacturing. This adds to their universality.