Open In App
Related Articles

Programmable Logic Array

Improve Article
Save Article
Like Article

Programmable Logic Array(PLA) is a fixed architecture logic device with programmable AND gates followed by programmable OR gates. PLA is basically a type of programmable logic device used to build a reconfigurable digital circuit. PLDs have an undefined function at the time of manufacturing, but they are programmed before being made into use. PLA is a combination of memory and logic.

Comparison with other Programmable Logic Devices:

  • PLA has a programmable AND gate array and programmable OR gate array.
  • PAL has a programmable AND gate array but a fixed OR gate array.
  • ROM has a fixed AND gate array but programmable OR gate array.

PLA is similar to a ROM in concept; however, it does not provide full decoding of variables and does not generate all minterms as in the ROM. Though its name consists of the word “programmable”, it does not require any type of programming like in C and C++. 

Basic block diagram for PLA: 

Following Truth table will be helpful in understanding function on no of inputs: 

F1 = AB'C' + ABC' + ABC 
on simplifying we get : F1 = AB + AC' 
F2 = A'BC + AB'C + ABC 
on simplifying we get: F2 = BC + AC 

For the realization of the above function following circuit diagram will be used. 

PLA is used for the implementation of various combinational circuits using a buffer, AND gate, and OR gate. In PLA, all the minterms are not realized but only required minterms are implemented. As PLA has a programmable AND gate array and a programmable OR gate array, it provides more flexibility but the disadvantage is, it is not easy to use. 

The operation of a PLA can be summarized in three steps:

1. Programming: The user defines the logic function to be implemented by the PLA by programming the input and output configurations into the device.
2. Product term generation: The inputs are applied to the AND gate array to produce a set of product terms.
3. Sum term generation: The product terms are then applied to the OR gate array to generate the final output.

PLAs are often used in digital systems as they are versatile and allow complex functions to be implemented easily. They are particularly useful for implementing Boolean expressions with many variables as the arrays of AND gates and OR gates can be configured to handle large numbers of inputs.


  • PLA is used to provide control over datapath.
  • PLA is used as a counter.
  • PLA is used as a decoder.
  • PLA is used as a BUS interface in programmed I/O.
Last Updated : 09 May, 2023
Like Article
Save Article
Similar Reads