Programmable logic array
A programmable logic array (PLA) is a kind of programmable logic device used to implement combinational logic circuits. The PLA has a set of programmable AND gate planes, which link to a set of programmable OR gate planes, which can then be conditionally complemented to produce an output. This layout allows for a large number of logic functions to be synthesized in the sum of products (and sometimes product of sums) canonical forms.
Contents |
History
In 1970, Texas Instruments developed a mask-programmable IC based on the IBM read-only associative memory or ROAM. This device, the TMS2000, was programmed by altering the metal layer during the production of the IC. The TMS2000 had up to 17 inputs and 18 outputs with 8 JK flip flop for memory. TI coined the term Programmable Logic Array for this device.[1]
Why PLA over Read-only memory
A combinational circuit Combinational logic may occasionally have don't-care conditions. When implemented with a Read-only memory , a don't care condition becomes an address input that will never occur. The words at the don't care address need not be programmed and may be left in their original state(all 0's or all 1's ). The result is not all the bit patterns available in Read-only memory are used which may be considered a waste of available component[2]
Applications
One application of a PLA is to implement the control over a datapath. It defines various states in an instruction set, and produces the next state (by conditional branching). [eg. if the machine is in state 2, and will go to state 4 if the instruction contains an immediate field; then the PLA should define the actions of the control in state 2, will set the next state to be 4 if the instruction contains an immediate field, and will define the actions of the control in state 4]. Programmable logic arrays should correspond to a state diagram for the system.
Other commonly used programmable logic devices are PAL, CPLD and FPGA.
Note that the use of the word "programmable" does not indicate that all PLAs are field-programmable; in fact many are mask-programmed during manufacture in the same manner as a mask ROM. This is particularly true of PLAs that are embedded in more complex and numerous integrated circuits such as microprocessors. PLAs that can be programmed after manufacture are called FPGA (Field-programmable gate array), or less frequently FPLA (Field-programmable logic array).
The Commodore 64 home computer released in 1982 used a "906114-01 PLA" to handle system signals.[3]
See also
External links
- ^ Andres, Kent (October 1970). A Texas Instruments Application Report: MOS programmable logic arrays.. Texas Instruments. Bulletin CA-158.
- ^ http://books.google.com/books?id=PqLaakCibvQC&lpg=PP1&pg=PA189#v=onepage&q&f=false
- ^ arcadecomponents.com - Commodore 906114-01 64 PLA IC