A read-only device that is a generalized combinational circuit and may include a sequential circuit. By means of connections on a semiconductor device, the PLA usually provides a ‘programmable’ sum of products function that feeds an output register, and sometimes an internal register. When the internal register is used to provide part of the input variables, the PLA is a sequential circuit; otherwise it is a combinational circuit.
The product terms in the function can be thought of as representing values that are to be acted upon when they occur; thus the PLA is a form of fixed associative memory or a specialized table lookup device adapted to the situation when the truth table has sparse entries.
Since the PLA is made specific only by the interconnections, it represents a general-purpose building block that requires changes in only one or two steps of the production process to provide different functionality. PLAs can be programmed at the time of manufacture; alternatively they may be programmed by the user, and are then called field-programmable. See also programmable device.