Documente Academic
Documente Profesional
Documente Cultură
Digital Electronics
Part - V
Mrinal K Mandal
mkmandal@ece.iitkgp.ernet.in
Department of E & ECE
I.I.T. Kharagpur. 721302.
www.ecdept.iitkgp.ernet.in
1
Introduction to Digital Electronics
Signal is represented by discrete bands.
An industrial digital
controller.
2
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Introduction to Digital Electronics
Signal is represented by discrete bands.
Advantages:
Digital signal can be transmitted without degradation due to noise.
More precise representation of a digital signal: use more binary digits, requires
more digital circuits. An analog system requires fundamental improvements in the
linearity and noise characteristics of each step of the signal chain.
Computer-controlled digital systems can be controlled by software, allowing new
functions to be added without changing hardware.
Information storage can be easier in digital systems than in analog (provided total
noise is below a certain level).
Error correction.
Disadvantages:
Usually, use more energy to accomplish the same tasks.
High frequency limitation: cellular telephones still use a low-power analog front-
end. Digital circuits are sometimes more expensive, especially in small quantities.
Quantization error.
In some schemes, a single bit error can damage a large amount of data. 3
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Introduction to Binary Logic
AND: x AND y x.y (output is true only if all of the inputs are true).
OR: x OR y x+y (output is true if any of the inputs is true).
NOT: x not or sometimes y (the output is opposite of that of the input).
AND OR NOT
x y x.y x y x.y y y'
0 0 0 0 0 0 0 1
0 1 0 0 1 1 1 0
1 0 0 1 0 1
1 1 1 1 1 1
x x
z = x.y z = x+y y z = y
y y
x x
z = (x.y) z = (x+y)
y y
NAND. NOR.
y z=y
x x Buffer.
z = xy+xy z = xy+xy
y y
X-NOR.
X-OR.
Symbols for digital logic circuits. 5
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Binary Logic Implementation
x
x y
+ Lamp + y Lamp
- -
VDD = 5 V
VDD = 5 V IR
RD
IR
RD VO
v1 M1
VO
v1 M1 v 2 M2
v2 M2
DeMorgans theorem:
1. ( x +=
y ) ' x '.y ' NOR
2. ( x .y ) ' =
x '+ y ' NAND
8
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Boolean Algebra
Using truth tables, prove that Solutions: x y (x+y) xy
1. ( x + y ) ' =
x ' y '.
0 0 1 1
2. x ' y + x = x + y .
0 1 0 0
1 0 0 0
1 1 0 0
Venn diagram:
Circles are drawn inside a rectangle. One for each variable.
The value of the variable is 1 inside the corresponding circle, and 0 outside.
AND: intersection, OR: union.
x y x y
x y
xy
z z
xy + x = x x(y + z) xy + xz
9
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Boolean Algebra
Realization of a function using logic gates:
1. ( x + y ' ) ( x y + x ' ) x
x y + x 'y ' y
z
x
z = xy+xy
y
Implementation using X-NOR gate. Implementation using AND, OR and NOT gates.
12
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Minterms and Maxterms
Express the Boolean function F = A+BC in a sum of minterms form.
Solutions:
Consider each term individually.
If x is the missing variable, multiply the term by (x+x)
A = A (B + B ' ) = AB + AB '
A= ( AB + AB ' )(C + C ' )
= ABC + ABC '+ AB 'C + AB 'C '
B 'C B 'C ( A + A ' )
=
= AB 'C + A ' B 'C
13
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Minterms and Maxterms
Express the Boolean function F = AB+AC in a product of maxterms form.
Solutions:
Use the distributive law: x + yz = (x+y)(x+z).
For any missing variable x, ORed with xx and again use the distributive
law.
( AB + A ' )( AB + C )
AB + A 'C =
= ( A + A ' )(B + A ' )( A + C )(B + C )
= ( A '+ B )( A + C )(B + C )
( A '+ B ) = ( A '+ B ) + CC ' = ( A '+ B + C )( A '+ B + C ' )
( A + C ) = ( A + C ) + BB ' = ( A + B + C )( A + B '+ C )
(B + C ) = (B + C ) + AA ' = ( A + B + C )( A '+ B + C )
F = ( A + B + C )( A + B '+ C )( A '+ B + C )( A '+ B + C ' )
14
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Simplification of Boolean Functions
A straight forward method is by using Karnaugh map or Veitch diagram.
Representation of a
Two variable K-map using the minterms
function F = xy+xy
x y 0 1 x y 0 1 x y 0 1
0 m0 m1 0 xy xy 0 0 1
1 m2 m3 1 xy' xy 1 1 0
yz 00 01 11 10
x
0 1 1 xy F = xy+xy
1 1 1
xy
Sum of product simplification steps:
The squares representing the minterms mark as 1.
Subdivide the area: put 2n adjacent cells containing 1 into groups, try to
maximize the number of cells in a group. A single 1 can be a common element
to multiple groups.
While grouping into squares, consider that the opposite sides and opposite
corners of a K-map are joined together i.e. as if any K-map is drawn on a
spherical surface.
A square containing 1 provides only one term: discard the variable/variables
which changes bit within a group, the remaining variables will provide the
16
term.
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Simplification of Boolean Functions
Simplify the function F = xyz+xyz+xyz+xyz.
yz 00 01 11 10
x
0 1 yz F = xz+yz
1 1 1 1 xz
F = xy + xz + wyz.
17
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Simplification of Boolean Functions
Simplify the following Boolean functions:
1. F 1 = ( 0, 4, 6, 7, 8, 14, 15 )
2. F =
2 w ' x ' y ' z '+ w ' x ' yz '+ wx ' yz '+ wx ' y ' z '+ w ' xy ' z + w ' xyz + wxy ' z + wxyz
yz yz 00 01 11 10
wx 00 01 11 10 wx
00 1 00 1 1
01 1 1 1 01 1 1
11 1 1 11 1 1
10 1 10 1 1
18
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Simplification of Boolean Functions
Product of sum simplification:
Simplify the following Boolean functions:1. F 1 = ( 0, 4, 6, 7, 8, 14, 15 )
2. F 2 = ( 0, 2, 5, 7, 8, 10, 13, 15 )
yz yz 00 01 11 10
wx 00 01 11 10 wx
00 1 0 0 0 00 1 0 0 1
01 1 0 1 1 01 0 1 1 0
11 0 0 1 1 11 0 1 1 0
10 1 0 0 0 10 1 0 0 1
F = (y+z)(w+x+y)(x+y). F = (x+z)(x+z).
19
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Simplification of Boolean Functions
Dont care condition:
In some applications, certain combinations of input variables never occur.
The function value cannot be taken as 1 or 0 for those input combinations, they
are represented by X and called the dont care condition.
When choosing adjacent squares for simplification, the Xs may be assumed as
0 or 1 or just ignore them, whichever gives the simplest expression.
10 1
F = yz + xy
20
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Simplification of Boolean Functions
Dont care condition:
Simplify the functions and express them in product of sum form
1. F 1
= ( 0, 4, 6, 7, 8, 14, 15 ) with d ( 2, 3, 12 )
2. F 2 = (1, 3, 7, 11, 15 ) with d ( 0, 2, 5 )
F = (y+z)(x+y)
21
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
NAND and NOR Implementation
F = ( xyz ) ' = x ' + y ' + z ' F = (x + y + z )' = x ' y 'z '
x x
y (x.y.z) y (x+y+z) x x'
z z
x x
y x.y.z x x
y x'+y+z
z z
AND-invert.
Invert-OR. Invert-AND.
x x
OR-invert.
22
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
NAND Gate as Universal Gate
F = x + y = ( x ' ) '+ ( y ' ) ' = ( x ' y ' ) '
x x+y
x
x'y
x+y
y
y
F xy
= = ( ( xy ) ' ) '
x
x.y
y
AND gate.
x x+y
X-NOR: use one more
xy+xy
NAND gate.
x+y
y x+y
X-OR gate. 23
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
NOR Gate as Universal Gate
x
x+y
y x
OR gate. (xy)
y
x NAND gate.
xy
y
AND gate.
xy+xy
X-OR: use one more
xy NAND gate.
y
X-NOR gate.
24
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
NAND Implementation
1. Steps:
Represent the simplified function in sum of product form.
Use two inverters in between the AND and OR gate.
Convert invert-OR to NAND.
A A A
B B B
C C C
F F F
D D D
E E E
25
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
NAND Implementation
2. Steps:
Represent the simplified function in sum of product form and implement using
the AND, OR and NOT gates.
Replace all AND, OR and NOT gates by their equivalent NAND representation.
Remove cascaded inverter if any.
x
x
x.y x+y
y
y
AND
OR
Implement the function F = AB + CD + E
A
A B
B
C
C D
F F
D
E
E 26
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
Logic circuits:
1. Combinational circuit: at any time, the outputs are determined directly from the
present inputs.
2. Sequential circuit: the outputs depend not only on present inputs, but also on
past inputs (memory). Circuit behavior must be specified by a time sequence of
inputs and internal states.
Half-adder:
The sum (S) and carry (C) bits can be express as
Truth table
follows:
x y C S S = x ' y + xy ' = x y =( x + y ) ( x '+ y ')
C = xy
0 0 0 0
x x
0 1 0 1 S
y y'
1 0 0 1 S
x'
1 1 1 0 C
y
x y z C S yz
x 00 01 11 10
0 0 0 0 0 0 1 1
S = x ' y ' z + x ' yz '+
0 0 1 0 1 1 1 1 xy ' z '+ xyz .
0 1 0 0 1
0 1 1 1 0 Solve for carry bit.
1 0 0 0 1 yz
x 00 01 11 10
1 0 1 1 0
0 1
1 1 0 1 0
1 1 1 1 1
1 1 1 1 C = xy + yz + zx
29
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic Adders
Full-adder implementation:
x
S =z ( x y ) y S
= z ' ( xy '+ x ' y ) + z ( xy '+ x ' y ) '
= z ' ( xy '+ x ' y ) + z ( xy + x ' y ' )
C
= xy ' z '+ x ' yz '+ xyz + x ' y ' z
z
C= z ( x ' y + xy ' ) + xy= xy ' z + x ' yz + xy
Full-adder implementation.
30
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
Example:
Subscript i 4321 B4 A4 B3 A3 B2 A2 B1 A1
Input carry 0110 Ci
Augend 1011 Ai C5 C4 C3 C2 C1
FA FA FA FA
Addend 0011 Bi
Sum 1110 Si S4 S3 S2 S1
Output carry 0011 Ci+1
A four bit parallel adder.
Carry propagation:
Each gate takes finite time to respond: propagation delay t.
The (n+1)th carry is available only after n t (one solution is look-ahead carry).
Subtractors:
Subtraction can be accomplished by taking the complement of the subtrahend and
adding it to the minuend.
Here, it will be implement directly.
Half-subtractor: perform subtraction of two bits.
Full-subtractor: perform subtraction of two bits and also take care of a previous
borrow if any. 31
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
Half-subtractor: Truth table
x y B D
x<y : borrow a 1 from the next higher state.
D =x ' y + xy ' =S 0 0 0 0
B = x 'y 0 1 1 1
1 0 0 1
1 1 0 0
x
D
y
Half-adder
implementation.
32
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
Full-subtractor:
x: minuend, y: subtrahend, and z: previous borrow.
Truth table
(x y = D)
x y z B D
Solve for difference bit.
0 0 0 0 0 yz
x 00 01 11 10
0 0 1 1 1
0 1 1
0 1 0 1 1 D = x ' y ' z + x ' yz '+
0 1 1 1 0
1 1 1 xy ' z '+ xyz .
1 0 0 0 1
Solve for borrow bit.
1 0 1 0 0
yz
x 00 01 11 10
1 1 0 0 0
1 1 1 1 1 0 1 1 1
1 1 C = x ' y + yz + x ' z
Z8 Z4 Z2 Z1
0 0 0 0 0 011 0000 0
1 0 0 0 1 011 0001 1
2 0 0 1 1 011 0010 2
3 0 0 1 0 011 0011 3
4 0 1 1 0 011 0100 4
5 0 1 1 1 011 0101 5
6 0 1 0 1 011 0110 6
7 0 1 0 0 011 0111 7
8 1 1 0 0 011 1000 8
9 1 1 0 1 011 1001 9
10 1 1 1 1 100 0001 A
11 1 1 1 0 100 0010 B
12 1 0 1 0 100 0011 C
13 1 0 1 1 100 0100 D
14 1 0 0 1 010 1000 (
15 1 0 0 0 010 1011 +
36
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
Analysis of a given network:
1. Label the inputs and determine the number of input variables.
2. Obtain the Boolean functions for each gate and continue calculation until the
outputs are obtained.
3. By repeated substitution of previously defined functions, obtain the output in
terms of input variables only.
y yz
1
z (x+yz)
3
x w(x+yz)
w
4
5 6 xy+w(x+yz)
x xy'
2
y
37
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
X-OR and equivalence functions: yz
wx 00 01 11 10
x y= x ' y + xy ',
x y = xy + x ' y ' =( x y ) ', 00 1 1
( x y ) z =x ( y z ) =x y z , 01 1 1
(x y z )' = x y z , 11 1 1
(x y = z ) x y z. 10 1 1
w x y z
Very useful in error-detection and error-
correction codes. yz
wx 00 01 11 10
n variable X-OR operation: 2n/2 minterms
have an odd number of 1s. 00 1 1
n variable X-NOR operation: 2n/2 minterms 01 1 1
have an even number of 1s. 11 1 1
10 1 1
w x y z
38
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
Parity Checker: Odd-parity check Received bits Error
in a receiver. check
Parity bit: extra bit included with x y z P C
a binary message to make the 0 0 0 0 1
number of 1s either odd (odd 0 0 0 1 0
parity) or even (even parity).
0 0 1 0 0
Parity generator: generates the Odd-parity
0 0 1 1 1
parity bit in a transmitter. generation
0 1 0 0 0
Odd parity generation: P = 1 if Message Parity 0 1 0 1 1
total number of 1s including P is bit
0 1 1 0 1
odd. x y z P
0 1 1 1 0
Parity checker: check the parity 0 0 0 1
1 0 0 0 0
in a receiver. 0 0 1 0
1 0 0 1 1
0 1 0 0
1 0 1 0 1
P= x y z 0 1 1 1
1 0 1 1 0
= x y z . 1 0 0 0
1 1 0 0 1
1 0 1 1
1 1 0 1 0
C = x y z P. 1 1 0 1
1 1 1 0 0
1 1 1 0 391
1 1 1 1
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
Decoders:
Converts binary information from n input lines to a maximum 2n unique output
lines.
A n-to-m line decoder (m 2n) generates m unique output lines from n input lines.
If m <2n, rest (2n m) can be used as dont care condition.
11 X X X X
A 2-to-4 line decoder.
10 D8 D9 X X
Solutions:
S ( x , y , z ) = (1,2,4,7 )
C ( x , y , z ) = ( 3,5,6,7 ).
0
1
x 22 2 S
y 21 3
z 20 4
5 C
3x8 6
decoder
7
41
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
Demultiplexers:
A demultiplexer receives information on a single line and transmits on one of 2n
possible output lines.
A decoder with an enable input.
Enable input: take AND operation with all outputs.
D0 (xyE)
D0
D1 (xyE) x
x 2x4 D1
select
y Decoder D2
D2 (xyE) D3
y
E
D3 (xyE)
E A 2-to-4 decoder with enable
input.
Implementation of a demultiplexer with
NAND gates. 42
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
Design a 4x16 demultiplexer using 3x8 demultiplexers.
Solution:
.
x
3x8 . D0 to D7
y decoder .
z
x .
3x8 . D8 to D15
y decoder .
z
Inputs Outputs
D0
D0 D1 D2 D3 D4 D5 D6 D7 x y z D1 x= D4+D5+D6+D7
1 0 0 0 0 0 0 0 0 0 0 D2
0 1 0 0 0 0 0 0 0 0 1 D3
0 0 1 0 0 0 0 0 0 1 0 D4 y= D2+D3+D6+D7
0 0 0 1 0 0 0 0 0 1 1 D5
0 0 0 0 1 0 0 0 1 0 0 D6
0 0 0 0 0 1 0 0 1 0 1 D7 z= D1+D3+D5+D7
0 0 0 0 0 0 1 0 1 1 0
0 0 0 0 0 0 0 1 1 1 1 Octal-to-binary encoder.
44
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
Multiplexers:
Selects binary information from one of many input lines and directs it to a single
output line.
Usually, 2n input lines, n selection lines and one output line.
I0
E
I1
I2 0
1 4x1
inputs MUX output
I3 2
3
s1 s0
select
s1
s0
A 4-to-1 line multiplexer.
A 4-to-1 line multiplexer. 45
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
Implementation of a function using MUX:
B C
2. Implement the following function using MUX: F = (1,3,5,6 ).
Implementation table.
0 0
I0 I1 I2 I3
1 1 4x1 F
A 0 1 2 3 MUX
A 2
A 4 5 6 7
A 3
s1 s0
0 1 A A
B C 46
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
Implementation of a function using 8x1 MUX:
B C D
47
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
8x1 MUX:
S2 E=1
0
0
1 4x1
MUX 1
2
2
3
s1 s0 3
8x1 F
4
MUX
S2 5
6
0
4x1 7
1
MUX s2 s1 s0
2
3 B C D
s1 s0
select
F1 F2 F3 F4
Logic construction of a 32x4 ROM.
49
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Combinational Logic
Programmable Logic Array (PLA):
In a ROM, dont care conditions become address inputs that will never occur.
A PLA consist of a group of AND gates and OR gates.
Each of the AND gate can be programmed to generate a product term.
F1
B
F2
C
nxk m
links links
k product m sum
terms terms
n nxk (AND gates) kxm (OR gates) m
inputs links links outputs
Number of links = 2n x k + k x m + m
= 1928.
51
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Sequential Logic
Inputs Outputs
Combinational
circuit Memory
elements
As shown, the outputs depend not only on the external inputs but also on the
present state of the memory element.
Depending on the timing of the signal, they are of two types:
1. Synchronous sequential circuit: behavior is defined only at discrete instant of
time. Synchronization is achieved by a master clock generator that generates
periodic pulses.
2. Asynchronous sequential circuit: can be affected at any instant of time. Usually,
time delay devices are used as a memory device.
52
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Sequential Logic
RS/ SR latch: NOR gate: output is zero if any input is 1.
NAND gate: output is 1 if any input is 0.
1 1
R S
0 1 Q 0 1 Q
Q Q Q Q
1 1 2 R S
2 Q R S Q
S R
0 0
S R Q Q S R Q Q
1 0 1 0 1 0 0 1
0 0 1 0 After S = 1, R = 0. 1 1 0 1 After S = 1, R = 0.
0 1 0 1 0 1 1 0
0 0 0 1 After S = 0, R = 1. 1 1 1 0 After S = 0, R = 1.
1 1 0 0 Not allowed. 0 0 1 1 Not allowed.
53
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Sequential Logic
RS Flip-Flop: The basic RS latch with AND gates respond to input levels when the
clock pulse is 1: synchronous sequential circuit.
R
1 Q Characteristic table.
CP Q S R Q (t+1)
2 Q 0 0 0 0
S 0 0 1 0 Reset
0 1 0 1 Set
Clocked RS Flip-Flop.
0 1 1 NA
SR 1 0 0 1
Q 00 01 11 10 1 0 1 0 Reset
Q Q
0 X 1 1 1 0 1 Set
R S 1 1 X 1 1 1 1 NA
CP Q (t + 1) = S + R 'Q .
Graphical symbol. 54
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Sequential Logic
D Flip-Flop: D flip-flop is used to transfer the data.
R
D Characteristic table.
1 Q Q D Q (t+1)
CP 0 0 0
0 1 1
2 Q
1 0 0
S 1 1 1
A gated D Flip-Flop based on RS latch.
D
Q 0 1
Q Q 0 1
D 1 1
Q (t + 1) =
D.
CP
Graphical symbol. 55
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Sequential Logic
JK Flip-Flop: A refinement of the RS flip-flop by Characteristic table.
interpreting the S = R = 1 condition as a flip or toggle.
Q J K Q (t+1)
One problem is that the output for J = 1, K = 1
continue to toggle if the clock pulse is ON for long time. 0 0 0 0
0 0 1 0
0 1 0 1 Set
K 0 1 1 1
1 Q
(reset)
1 0 0 1
Q Q CP
1 0 1 0 Reset
K J 2 Q 1 1 0 1
J
(set) 1 1 1 0
CP
A gated JK flip-flop based on RS latch. JK
Q 00 01 11 10
T flip-flop: 0 1 1
Let K is the only input represented by T and it is 1 1
1
also connected to J terminal.
Then Q changes state for T =1 and remain as it Q (t + 1) = JQ '+ K 'Q .
is for T = 0. 56
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Sequential Logic
Triggering of flip-flop:
1
The state of a flip-flop is switched by a momentary
change in input signal: triggering. 0
For proper operation, a specific relationship must be Positive Negative
maintained between the time interval between two edge edge
changes of input values and the propagation delay.
For synchronous circuit, propagation delay must be more Positive pulse
than the pulse width.
The above problem can be solved by choosing a circuit 1
that respond only to positive or negative transition /edges
e.g. by using capacitor coupling. 0
A master-slave flip-flop can avoid this problem.
Negative Positive
edge edge
Negative pulse
57
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Sequential Logic
Master Slave flip-flop:
CP
Master Slave
S y
S S Q S
R y' y
R R Q
CP Q
Start with
reset state
59
Department of Electronics & Electrical Communication Engineering, I.I.T. Kharagpur mkmandal@ece.iitkgp.ernet.in
Thank you
?
mkmandal@ece.iitkgp.ernet.in
Ph. +91-3222-283550 (o)
Department of E. & E.C.E.
I.I.T. Kharagpur, 721302.
60