Professional Documents
Culture Documents
• X-input variable
• y- secondary variable
• Y- excitation variable
• O- output variables
3
Programmable Logic Devices
• Programming- inserting bits into hardware configuration
• Combination of AND & OR logic
• PROM
• Fixed AND, programmable OR
5
Programmable Logic Devices
ROM
• Fuse at intersection or crosspoint
Truth table
6
Programmable Logic Devices
ROM
• Question: 3 bit number as input, output is square of the number
Truth table
• Solution Input Output
• 3 bits input, A2 A1 A0 O5 O4 O3 O2 O1 O0
A
d
X
• maximum 7, 0 0 0 0 0 0 0 0 0 X
3x8
• square of 7-49 0 0 1 0 0 0 0 0 1 decoder X
X X
• requires 6 bits 0 1 0 0 0 0 1 0 0 X X X
X X
• 3 bit input, 6 bit output 0 1 1 0 0 1 0 0 1 X X X
1 0 0 0 1 0 0 0 0
• Decoder: 3 x 8
1 0 1 0 1 1 0 0 1
• 8 x 6 selectable crosspoints
1 1 0 1 0 0 1 0 0 O
1 1 1 1 0 1 0 0 1
7
Programmable Logic Devices
ROM
• For given input only one decoder output X A’B’C’
A
• Multiple functions using single ROM X
X
A’B’C
A’BC’
B 3x8 A’BC
• F1= Σm(0,1,3)=A’B’C’+A’B’C+A’BC decoder
X X
X AB’C’
• F2= Σm(2,3,4,5)=A’BC’+A’BC+AB’C’+AB’C C X AB’C
ABC’
• 3 Inputs, 2 Outputs ABC
8
Programmable Logic Devices
ROM
• Mask programming-
• Manufacturer makes masks for a given combinational logic
• Only for mass production
• PROM-
• All fuse intact-
• No connection- blown using high-voltage pulse
• Used Only once
• EPROM
• Erasable PROM- reset using ultraviolet radiation
• EEPROM
• Electrically EPROM
• Reset using electrical signal 9
Programmable Logic Devices
PLA • F1=A’B’+A’C
• Programmable AND & OR • F2= A’B+AB’
• ROM- implement truth table • 3 inputs, 4 products term, 2 output
• PLA- implement SOP A A’ B B’ C C’
• Product terms using AND array, sum using OR
A’B’
• F1= Σm(0,1,3)=A’B’C’+A’B’C+A’BC X X X
• F2= Σm(2,3,4,5)=A’BC’+A’BC+AB’C’+AB’C X X
A’C
X
PLA
PAL
13
Programmable Logic Devices
CPLD
• Complex Programmable logic devices
• Instead of single PLA or PAL
• Combination of many PLA or PAL
• Manufacturer specific
14
Programmable Logic Devices
FPGA
• Field programmable gate array
• Programmable at user location
• Uses RAM
• To store- lookup table(LUT)
15
Hazards
• Momentary Unexpected transitions- glitch
• Glitch create- hazard
Hazard
Static Dynamic
Static-0 Static-1
• Static hazard- transition has no effect on steady state output
• Static-0 output should be 0, momentary goes to 1
• Static 1 output should be 1, momentary goes to 0
• Dynamic- one input transition result in 3 or more transitions in output
16
Hazards
Causes of hazard
• Propagation delay
• Different path lengths
• Assumption: only one input, others assumed constant
1 C
1 10
G1
01 G2
0 1
1
101 G3
0
G4
1 0
17
Hazards
• Can be identified from k-map
A BC
00 01 11 10
0 1
1 1 1 1
• F=A’B’D+A’BC+ABD
• Hazard will be present as not all adjacent ones are covered
• F=A’B’D+A’BC+ABD+A’CD+BCD
19
Hazards
• Design hazard free circuit for
• F=πM(0,1,4,5,6,7,9,14,15)
AB CD 00 01 11 10
00 0 0 • F’=(A’C’+BC+B’C’D)’
01 0 0 0 0 • Reduction all zero’s covered
11 0 0 • Hazard- all adjacent zeros covered-no
10 0 • F’=(A’C’+BC+B’C’D+A’BD)’
20
Hazards
21
Asynchronous sequential logic circuits
• X-input variable
• y- secondary variable
• Y- excitation variable
• O- output variables
22
Asynchronous sequential logic circuits
Characteristics
• Only one input is allowed to change at a instant
• 2 or more input variable change prohibited
• yi= Yi circuit is stable
• Input given- yi ≠ Yi ; for time of propagation delay; circuit is unstable
• After delay- circuit is stable
• One input change at a instant in stable state- Fundamental mode
• Transition table- same as state table
• Flow table- states as letters
• Primitive flow table- only one stable state for input combination
23
Asynchronous sequential logic circuits
• AND gate- output is feedback with delay as input
• Truth table- from k-map
• Encircled- stable state, x=X
• arrow - state change
x A 0 1
0 0 0
1 0 1
24
Asynchronous sequential logic circuits
25
Asynchronous sequential logic circuits
K map for output 1 (Eq 1) K map for output 2 (Eq 2)
Design
y1y2 x 0 1 y1y2 x 0 1
Y1=x.y1+x’.y2
00 0 0 00 0 1
Y2=x.y1’ +x’.y2
01 1 0 01 1 1
11 1 1 11 1 0
10 0 1 10 0 0
• Design a gated latch with 2 inputs load and data with 1 output O.
When load = 1, accepts the value of D, when load=0 retains the value.
• 2 input, 1 secondary variable, 1 output L L’ D D’
s LD s LD O
00 01 11 10 O 00 01 11 10 O
0 0 0 1 0 0
a a a b a 0
1 1 1 1 0 1
b b b b a 1
29
Asynchronous sequential logic circuits
• Design asynchronous sequential circuit has 2 input A,B and 1 output Q. When
A=0, then Q=0. First change in B that accurs when A=1 cause Q=1. Q will
00
remain in 1 until A returns to 0. 01
Q AB 01
00 01 11 10 out a/0 b/0
00
a a b x c 0
10 00 11 01
b a b d x 0 01
c/0 d/0
A c x e c 0
a 10
11
d b d e 0 10 11
B x
e/1
e x b e e 1
Q
11
Flow table 10
Timing diagram Trantition diagram
30
Asynchronous sequential logic circuits
d,x
• State reduction b
c,x d:d
• Implication table c b,x c:cd
e,x b: bcd
a,x a:bcd (ab)(ac)=ab
d
Q AB e,x
00 01 11 10 out e P: (ab) (c) (d) (e)
a a b x c 0 a b c d
implication table
b a b d x 0
Q AB
00 01 11 10 out
c a x e c 0
a a a x c 0
d x b d e 0
c a x e c 0
e x b e e 1
d x a d e 0 Reduced Flow table
Flow table a e 1
e x e
31
Asynchronous sequential logic circuits
State assignment
4 states – 2 variables for
K-map for p (first variables from K-map for Q (second variables
state, Q, P
state assignment table) from state assignment table)
pQ AB pQ AB pQ AB
00 01 11 10 00 01 11 10 00 01 11 10
00 01 00 0 0 0 0 0 0 1 0
00 00 00 00
00 01 11 01 X 0 0 1 X 0 1 1
01 x 01
10 x 01 11 11 1 X 0 1 0 X 1 1
11 11
00 x x x 10 0 x x x 0 X x X
10 10
p=QB’ Q=AB+QA
*ensure no hazard
32
Asynchronous sequential logic circuits
p=QB’
Q=AB+QA
X=pQ
Only when both p and Q 1, output is 1
33
Course outcome
• Asynchronous sequential circuit
• Excitation variable, Secondary variable
• Transition table, flow table
• State reduction using Implication table
• Hazard and Error
• Static-0, Static-1, Dynamic- for all digital circuits Hazard free from k-map
• Oscillation covering of adjacent ones
• Race- Critical and non critical
• Essential hazard
• Programmable logic device
• PROM- fixed input(AND), programmable output (OR)
• PAL- programmable input(AND), fixed output (OR)
• PLA- programmable input and output (AND, OR)
• CPLD- More PAL’s or PLA’s
• FPGA- RAM with Lookup table(LUT) 34