Professional Documents
Culture Documents
Pal Unit 6 PDF
Pal Unit 6 PDF
Prof. Xi Zhang
ECE Dept, TAMU, 333N WERC
http://www.ece.tamu.edu/~xizhang/ECEN248
Programmable logic device (PLD)
A PLD is a general-purpose chip for
implementing logic circuit.
It contains a collection of logic circuit
elements that can be customized in different
ways.
A PLD can be viewed as a “black box” that
contains logic gates and programmable switches.
The programmable switches allow the logic
gates inside the PLD to be connected together
to implement logic circuits.
Programmable logic device as a black box
Logic gates
Inputs and Outputs
(logic variables) programmable (logic functions)
switches
Input Æ Buffer/inverters P1
Æ And plane Æ OR plane
Æ Output AND plane OR plane
Pk
f1 fm
Figure 3.25. General structure of a PLA.
Gate-level diagram of a PLA
x1 x2 x3
Output of And plane:
Programmable
connections P1 = x1x 2
P1 OR plane
P2 = x1x3
P2 P3 = x1x 2 x3
P4 = x1x3
P3
Output of OR plane:
P4
f1 = x1x 2 + x1x3 + x1x 2 x3
P1 = x1x 2
OR plane
P1 P2 = x1x3
P2 P3 = x1x 2 x3
P3 P4 = x1x3
Output of OR plane:
P4
f 2 = x1x 2 + x1x 2 x3
P3
f2
P4
OR plane
AND plane
Figure 3.28. An example of a PLA.
Comparison between PLA and PAL
Comparison between PLA and PAL
Drawbacks of PLA
PLA were hard to be implemented
PLA reduced the speed performance of circuits.
Advantage of PAL
Simple to manufacturers
Less expensive
Better performance
Disadvantage of PAL
Not flexible as compared PLA, because OR
plane is fixed.
Complex Programmable Logic Device (CPLDs)
I/O block
I/O block
PAL-like PAL-like
block block
Interconnection wires
I/O block
I/O block
PAL-like PAL-like
block block
0/1
0/1
f
0/1
cells 0/1
x2
x1 x2 x1
f1
1
0 0 1
0 1 0 0
f1
1 0 0 0
1 1 1 1
x2
(b) f 1 = x 1 x 2 + x 1 x 2
(c) Storage cell contents in the LUT
0/1
0/1
0/1
0/1
f
0/1
0/1
0/1
0/1
x3
This section
includes 3
x1 lookup tables.
Using the 3
lookup tables,
x1 0 x2 0
0 f1 1 f2
x2 x2
0
1
x3
0
0
we implement
output function
f.
f1 = x1x 2
f1 0 f 2 = x 2 x3
1 f
1
f2
1
f = f1 + f 2
Figure 3.39. A section example of a programmed FPGA.