Professional Documents
Culture Documents
Logic gates
Inputs and Outputs
(logic variables) programmable (logic functions)
switches
Input buffers
¡ The connections in and
inverters
the AND plane are
programmable x1 x1 xn xn
P1
¡ The connections in
the OR plane are AND plane OR plane
programmable Pk
f1 fm
Programmable
connections
f1 = x1x2+x1x3'+x1'x2'x3 OR plane
P1
f2 = x1x2+x1'x2'x3+x1x3
P2
P3
P4
AND plane
f1 f2
OR plane
f1 = x1x2+x1x3'+x1'x2'x3
P1
f2 = x1x2+x1'x2'x3+x1x3
P2
P3
P4
Input buffers
¡ The connections in and fixed connections
inverters
the AND plane are
programmable x1 x1 xn xn
P1
¡ The connections in
the OR plane are AND plane OR plane
NOT programmable Pk
f1 fm
f1 = x1x2x3'+x1'x2x3
f2 = x1'x2'+x1x2x3 P1
f1
P2
P3
f2
P4
AND plane
Select
Enable
OR gate from PAL 0
f1
1
D Q
Flip-flop
Clock
Sel = 0
En = 0
0
1
h
D Q
Sel = 0
Clock En = 1
0
g
1
D Q
Select
Clock
0
f
1
D Q
Clock
2-to-4 decoder
a0
a1
d3 d2 d1 d0
d
boar
it
circu
d
r i nte
P
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
¡ Includes macrocells
n Usually about 16 each
PAL-like block
¡ Fixed OR planes
n OR gates have fan-in
between 5-20 PAL-like block
DQ
¡ XOR gates provide
negation ability DQ
PAL-like block
0 1
0
f
D Q
I/O block
interconnection
switch
I/O block
I/O block
logic block
I/O block
x1 x2 f
0 0 1 f = x1'x2' + x1x2, or using Shannon's expansion:
0 1 0
1 0 0
1 1 1
x1
1
0
f
0
1
x2
n f1 = x1x2
n f2 = x2'x3 x1
n f = f1 + f2 x1 0 x2 0
0 f1 1 f2
0 0
x2 x2 x3
1 0
f1 0
1 f
1
f2
1
x1
x1 0 x4 0 x3 0
0 A 0 C 1 E
x6 x6 1 x5 0 C 1
1
0 1
x2
x2 0 A 0 D 0
0 B 1 D 0 f
x7 x7 0 1
B 1
0
E 1
1
x1 f2
x2
x3
f1
x1 f2
x2
x3
f1
¡ f1 = x2x3' + x1x3
black à bottom
layer channels
Full custom
VLSI design
ASICs
Speed / Density /
Complexity / Likely
Market Volume CPLDs
FPGAs
PLDs