Ch. 4.2

advertisement
SYEN 3330
Digital Systems
Chapter 4 – Part 2
SYEN 3330 Digital Systems
Jung H. Kim 1
Overview of Chapter 4 – Part 2
• Programmable Logic Technologies
•
•
•
•
•
Introduction
Read-Only Memory
Programmable Logic Array
Programmable Array Logic
VLSI Programmable Logic
SYEN 3330 Digital Systems
Chapter 4-2
Page 2
Programmable Logic
IC C ost D ilem m a:
 IC logic circu it d en sity in creases exp on en tially w ith tim e.
 T h e m ore IC s you m ak e, th e ch eap er th ey get.
 C om p lex logic IC s h ave very sp ecific fu n ction s (so you m ak e
few er).
Q u estion : H ow d o I m ak e very h igh volu m e p arts th at are
very d en se?
A n sw er #1: Y ou m ak e m icrop rocessors or IC s (lik e
au tom ob ile ign ition con trollers) th at h ave very large volu m e.
OR
A n sw er #2: Y ou m ak e p rogram m ab le p arts.
SYEN 3330 Digital Systems
Chapter 4-2
Page 3
Programmable Part Types
 S em icon d u ctor m an u factu rers h ave d evelop ed several typ es of
regu lar p rogram m ab le logic elem en ts. T h ree im p ortan t on es
are:
1. R ead O n ly M em ory (R O M ) -- a fixed array of A N D gates an d a
p rogram m ab le array of O R gates.
2. P rogram m ab le A rray L ogic (P A L ) -- a p rogram m ab le array of
A N D gates feed in g a fixed array of O R gates.
3. P rogram m ab le L ogic A rray (P L A ) -- a p rogram m ab le array of
A N D gates feed in g a p rogram m ab le array of O R gates.
 A ll of th e ab ove u se regu lar stru ctu res of logic elem en ts th at
can b e th ou gh t of as a " m em ory array" . T h ere are also
p rogram m ab le d evices th at look m ore lik e p rogram m ab le
logic cells w ith p rogram m ab le in tercon n ect.
SYEN 3330 Digital Systems
Chapter 4-2
Page 4
Programming Devices
 D evices m ay b e:
1. P erm an en tly p rogram m ed at th e tim e of IC m an u factu re,
2. P rogram m ed at th e tim e of u se (b oard level
m an u factu rin g), or
3. D yn am ically re-p rogram m ed d u rin g u se.
 P erm a n en t p ro g ra m m in g tech n iq u es d o n e a t th e tim e o f
m a n u fa ctu re in clu d e fin a l lev el in terco n n ect a d d itio n v ia
m eta liza tio n o r d ev ice a ltera tio n th ro u g h la ser o r e -b ea m
p ro g ra m m in g
 U se tim e p ro g ra m m in g tech n iq u es in clu d e sh o rtin g d io d es,
b lo w in g fu ses, sh o rtin g d ev ices, a n d d u m p in g ch a rg e in to
w ells.
 D y n a m ica lly rep ro g ra m m ed d ev ices ca n b e b u lk era sed
a n d rep ro g ra m m ed , o r in crem en ta lly era sed a n d
rep ro g ra m m ed .
SYEN 3330 Digital Systems
Chapter 4-2
Page 5
Read Only Memory
 Read Only Memories (ROM) or Programmable Read
Only Memories (PROM) have:
1. N input lines,
2. M output lines, and
3. 2N decoded minterms.
 The N input lines are connected to a fixed decoder AND array of
2N lines. Each line represents a minterm of N variables. Thus
there are 2N decoded minterms.
 Each of the M outputs lines are connected to an OR gate which has
a programmable number of input connections. Any (or all) of the
minterms may be ORed together for each of the M output lines.
 A program map for a PROM (or ROM)
LOOKS LIKE A MULTIPLE OUTPUT FUNCTION TABLE.
SYEN 3330 Digital Systems
Chapter 4-2
Page 6
Read Only Memories (Continued)
 E xam p le: A 8 X 4 R O M (N
= 3 in p u t lin es, M = 4
ou tp u t lin es)
 T h e fixed " A N D " array is
a d ecod er w ith 3 in p u t b its
to on e-of-8 m in term ou tp u t A
B
lin es.
 T h e p rogram m ab le " O R "
array is sh ow n as a " W ire O R " fu n ction . A " D ot" in
th e array corresp on d s to
in clu d in g th at m in term .
SYEN 3330 Digital Systems
C
A2
A1
A0
D7
D6
D5
D4
D3
D2
D1
D0
F0
F1
Chapter 4-2
F2
F3
Page 7
Read Only Memories (Continued)
 T h e 32 X 8 R O M exam p le
corresp on d s to th e
m u ltip le ou tp u t tru th
tab le:
 T h e " in tern a l
o rg a n iza tio n " o f th e
m em o ry a rra y o ften d o es
n o t m a tch th e " lo g ica l
o rg a n iza tio n " .
Input
ABC
000
001
010
011
100
101
110
111
Output
F0 F1 F2 F3
1 1 0 1
0 0 0 0
1 0 0 1
0 0 1 0
0 0 0 0
1 0 1 0
0 0 0 1
0 1 0 0
 F or exam p le, on e m an u factu re sells an N = 13 (in p u ts
d ecod ed to 8192 m in term s) b y M = 8 (ou tp u ts) P R O M
th at is in tern ally organ ized as a 128 row s b y 512
colu m n s b it array. A n ou tp u t M U X selects a grou p
of 8 b its.
SYEN 3330 Digital Systems
Chapter 4-2
Page 8
Programmable Array Logic (PAL)
 P A L d evices are closely related to th e R O M in th at th e d evice is
organ ized as a regu lar array of p rogram m ab le elem en ts.
 T h e P A L h as a p rogram m ab le set of A N D term s, com b in ed w ith a
lim ited n u m b er of fixed O R term s.
 W h ere th e R O M array is gu aran teed to im p lem en t an y fu n ction of
N in p u ts, th e P A L m ay ru n ou t of O R term s. T h u s, it m ay b e very
im p ortan t to m in im ize th e n u m b er of O R term s in ord er to u se a
PAL.
 A n oth er d ifferen ce is th at a R O M d oes n ot easily allow m u lti -level
im p lem en tation s. T h e d esign e r m u st u se sep arate R O M s for
m u ltip le levels. T h e P A L allow s ou tp u ts from O R term s to b e u sed
as in p u ts to A N D term s, m ak in g m u lti-level d esign easy.
SYEN 3330 Digital Systems
Chapter 4-2
Page 9
Programmable Array Logic (Cont.)
In1
 E xam p le: 4 In p u t,
3 O u tp u t P A L
w ith fixed , 3 -in p u t
O R term s an d
In2
p rogram m ab le
p olarity ou tp u ts.
Out1
"0"
Out2
In3
"0"
 T h is d evice is
u n p rogram m ed .
Out3
"0"
In4
SYEN 3330 Digital Systems
Chapter 4-2
Page 10
Programmable Array Logic (Cont.)
 An "X" at a cross line
includes that variable in
the AND term. An "X"
in an AND gate removes
that term. An "X" at
the EXOR forms a
"TRUE" term, else the
output is complemented.
Thus we have:
Out1 =
(In1In2'In3 + In1')'
In1
Out1
In2
"0"
Out2
In3
"0"
Out3
"0"
In4
 Note that Out1 leaves the PAL in COMPLEMENT
form, since the EXOR is tied to one. Out2 is shown in
"TRUE" form.
SYEN 3330 Digital Systems
Chapter 4-2
Page 11
Programmable Array Logic (Cont.)
 W h at are th e
In1
eq u ation s for th e
oth er term s?
Out1
In2
"0"
Out2
In3
"0"
Out3
"0"
In4
SYEN 3330 Digital Systems
Chapter 4-2
Page 12
Programmable Logic Array (PLA)
 The last type of programmable logic element we will
discuss is the PLA which has a programmable array of
AND and OR terms.
 A PLA typically has a large number of inputs and outputs
and can be used to implement equations that are
impractical for a ROM (because of the number of inputs
required).
 Generally the product terms limit the application of a
PLA. Use minimization techniques to reduce the number
of product terms in an implementation if it is to fit in a
PLA.
 T h e p rogram for a PL A is very sim ilar to th e
con n ection array for a m u ltip le ou tp u t B oolean
fu n ction , su ch as th at gen erated b y C A FE .
SYEN 3330 Digital Systems
Chapter 4-2
Page 13
PLA Implementation
 F or th e P A L
im p lem en tation , w e
also u se th e
m in im ized eq u ation s:
 IN T (1) = w + x
IN T (0) = x'y+ x'z+ w x
 T ry you r h an d at
p rogram m in g it!
SYEN 3330 Digital Systems
w
x
y
z
I1
Chapter 4-2
I0
Page 14
PLA Implementation (Continued)
 H ere is an
im p lem en tation :
IN T (1) = w + x
IN T (0) = x'y+ x'z+ w x
 Is it correct?
w
SYEN 3330 Digital Systems
x
y
z
I1
Chapter 4-2
I0
Page 15
Summary of Programmable Logic

C h a ra cteristics
 D ev ice
 D ev ice U ses 
T yp e
ROM
PAL
PLA
Type
ROM
PAL
PLA
AND terms
2N Fixed terms
Programmable
Programmable
OR terms
Programmable
Fixed
Programmable
U ses
S in gle level, S O P , m u ltip le ou tp u t fu n ction s.
D irectly im p lem en ts fu n ction tab les.
T w o or m ore level S O P im p lem en tation s w ith
ou tp u t p olarity ad ju st. C an 't im p lem en t all
fu n ction s d u e to lim ited O R term s.
T w o or m ore level S O P . L im ited A N D an d O R
term s can lim it ap p licab ility.
SYEN 3330 Digital Systems
Chapter 4-2
Page 16
ROM, PAL, PLA Examples
 R E C A L L : S q u are R oot of a N u m b er (IN T )
INT(0)
y
1
1
INT(1)
y
1
1
1
1
1
x
1
w
1
1
 Im p lem en tation s
D evice
L ogic
MUX
D ecod er
1
RND
RND(0)
Y es
Y es (3)1
Y es (2)
SYEN 3330 Digital Systems
1
x
1
1
w
1
1
1
1
1
1
1
1
1
z
z
IN T
IN T (1) = w + x
y
IN T (0) = x'y+ x'z+ w x
y
RND(1)
Y es
1
Y es (2)
Y
1 es(2)
1
1
x
1
1
Chapter 4-2
1
1
Page 17
x
ROM, PAL, PLA Implementations
D evice
RND
IN T
ROM
PA L
16x2
M ayb e
N ote 1
Y es
16x3
Y es
PLA
Y es
N ote 1: " O R " term s m igh t
lim it ap p lication .
SYEN 3330 Digital Systems
Fu n ction T ab le
(for referen ce)
N UM
IN T
N UM
IN T
0000
00
1000
10
0001
01
1001
11
0010
01
1010
11
0011
01
1011
11
0100
10
1100
11
0101
10
1101
11
0110
10
1110
11
0111
10
1111
11
Chapter 4-2
Page 18
ROM Implementation
 T h is im p lem en ta tio n
is triv ia l -- th e
fu n ctio n ta b le serv es
a s th e fu se m a p . A
1 6 w o rd b y 2 b it p ro m
is n eed ed (w e w ill u se
a 16x4 PR O M as
sh o w n ):
 T ry p rogram m in g it
you rself first.
SYEN 3330 Digital Systems
Chapter 4-2
Page 19
ROM Implementation (Continued)
 H ere is th e so lu tio n
(ch eck it a g a in s th e
fu n ctio n ta b le). (D O T
m ea n s a co n n ectio n
ex ists).
N UM
IN T
N UM
IN T
0000
00
1000
10
0001
01
1001
11
0010
01
1010
11
0011
01
1011
11
0100
10
1100
11
0101
10
1101
11
0110
10
1110
11
0111
10
1111
SYEN 3330 Digital Systems
11
w
x
y
z
I1
Chapter 4-2
I0
Page 20
PAL Implementation
 F or th e P A L
w
im p lem en tation , w e
go b ack to th e
m in im ized eq u ation s:
INT(0)
x
IN T (1) = w + x
IN T (0) = x'y+ x'z+ w x
"0"
INT(1)
 T ry y o u r h a n d a t
y
p ro g ra m m in g it!
"0"
Out3
"0"
z
SYEN 3330 Digital Systems
Chapter 4-2
Page 21
PAL Implementation (Continued)
 H ere's an
w
im p lem en tation :
IN T (1) = w + x
IN T (0) =
x'y+ x'z+ w x
INT(0)
x
"0"
INT(1)
 Is it correct?
y
"0"
Out3
"0"
z
SYEN 3330 Digital Systems
Chapter 4-2
Page 22
PLA Implementation
 F or th e P A L
im p lem en tation , w e
also u se th e
m in im ized eq u ation s:
 IN T (1) = w + x
IN T (0) = x'y+ x'z+ w x
 T ry you r h an d at
p rogram m in g it!
SYEN 3330 Digital Systems
w
x
y
z
I1
Chapter 4-2
I0
Page 23
PLA Implementation (Continued)
 H ere is an
im p lem en tation :
IN T (1) = w + x
IN T (0) = x'y+ x'z+ w x
 Is it correct?
w
SYEN 3330 Digital Systems
x
y
z
I1
Chapter 4-2
I0
Page 24
Download