11 PLDs
11 PLDs
W X Y Z
CSE370, Lecture 11 7 CSE370, Lecture 11 8
Example: Wire a PAL Compare implementations
Minimized functions: PLA:
W = A + BC + BD No shared logic terms in this example
X = BC' 10 decoded functions (10 AND gates)
Y =B+C
Z = A'B'C'D + BCD
PAL:
+ AD' + B'CD’ Z requires 4 product terms
16 decoded functions (16 AND gates)
6 unused AND gates
What do we do with the
unused AND gates? This decoder is a poor candidate for PLAs/PALs
10 of 16 possible inputs are decoded
No sharing among AND terms
Better option?
Yes — a ROM
PLAs/PALs
A B C F0 F1 F2 F3 Benefits
0 0 0 0 0 1 0 ROM
You specify whether
Logic minimization reduces size
0 0 1 1 1 1 0 8 words x 4 bits/word to store 1 or 0 in each
0 1 0 0 1 0 0 location in the ROM Limitations
0 1 1 0 0 0 1 PAL OR-plane has hard-wired fan-in
1 0 0 1 0 1 1
1 0 1 1 0 0 0
1 1 0 0 0 0 1 A B C F0 F1 F2 F3 Another answer: Field programmable gate arrays
1 1 1 0 1 0 0 address outputs Learn about in 467
c0
2:1 Tristate Mux module muxtri (In1,In2,Sel,OUT); c5 c1
input In1,In2,Sel;
c6
output OUT; c4 c2
In1 OUT tri OUT; c3
bufif1 (OUT,In1,Sel); c0 c1 c2 c3 c4 c5 c6
bufif0 (OUT,In2,Sel);
endmodule
In2 BCD to 7–segment
control-signal
decoder
Sel
A B C D
CSE370, Lecture 11 15 CSE370, Lecture 11 16
Formalize the problem Sum-of-products implementation
15 unique product terms if we minimize individually
Truth table A B C D C0 C1 C2 C3 C4 C5 C6
Many don’t cares 0 0 0 0 1 1 1 1 1 1 0
A A A A A
0 0 0 1 0 1 1 0 0 0 0
Choose implementation 0 0 1 0 1 1 0 1 1 0 1 1 0 X 1 1 1 X 1 1 1 X 1 1 0 X 1 1 0 X 1
0 1 X 1 1 0 X 1 1 1 X 1 0 1 X 0 0 0 X 0
target 0 0 1 1 1 1 1 1 0 0 1 D D D D D
0 1 0 0 0 1 1 0 0 1 1 C 1 1 X X C 1 1 X X C 1 1 X X C 1 0 X X C 0 0 X X
If ROM, we are done 1 1 X X 1 0 X X 0 1 X X 1 1 X X 1 1 X X
0 1 0 1 1 0 1 1 0 1 1
Don't cares imply PAL/PLA 0 1 1 0 1 0 1 1 1 1 1 B B B B B
may be good choice 0 1 1 1 1 1 1 0 0 0 0 A A
C0 = A + B D + C + B' D'
1 0 0 0 1 1 1 1 1 1 1 1 1 X 1 0 1 X 1
Implement design 1 0 0 1 1 1 1 0 0 1 1 0 1 X 1 0 1 X 1
C1 = C' D' + C D + B'
D D C2 = B + C' + D
Minimize the logic 1 0 1 – – – – – – – – C 0 0 X X C 1 0 X X C3 = B' D' + C D' + B C' D + B' C
Map into PAL/PLA 1 1 – – – – – – – – – 0 1 X X 1 1 X X C4 = B' D' + C D'
B B C5 = A + C' D' + B D' + B C'
C6 = A + C D' + B C' + B' C
Enable Enable
CSE370, Lecture 11 27