Preface
Programmable logic devices (PLDs) are devided into 3 basic architecture types, SPLD, CPLD and FPGA.
At the first glance it seems to be very confusing, cause of the vast amount of names like GAL, PLA, EPLD ... and so on.
The reason therefore was the fast progress in history of programmable logic devices and the naming strategy of the PLD-vendors.
The first kind of programmable logic was an standard EPROM used as a Look-Up-Table (LUT).
The EPROM address-port was used for the input signals and the EPROM data-port forced the output-signals.
Signetics Corporation developed in 1975 a programmable device called "Field Programmable Logic Array" (FPLA) for glue-logic replacement.
But both devices (EPROM and FPLA) have a common difference to a real programmable logic device, and that is the missing sequential logic, like a flip-flop, to create synchronous designs or statemachines.