You are on page 1of 56

Instructions for using the PowerPoint slides:

To view the animated steps - click anywhere on the slide.


To skip the animated steps to go to previous or next page click the arrowheads at the bottom right.

Chp 7 Counters & Registers

Content

1.

Introductory Concepts

2.

Numbering Systems

3.

Boolean Algebra

4.

Combinational Logic

5.

Flip-Flops

6.

Digital Arithmetic

7. Counters & Registers Part 2


8.

IC Logic Families

9.

MSI Logic Circuits

Chp 7 Counters & Registers

Counters & Registers Part 2


1.

Asynchronous (ripple) Counters

2.

Counters with MOD number < 2N

3.

IC Asynchronous Counters

4.

Asynchronous Down Counter

5.

Propagation Delay in Ripple Counters

6.

Decoding a Counter

7.

Decoding Glitches

8.

IC Registers

Chp 7 Counters & Registers

7.4 Asynchronous Down Counters

Asynchronous Down Counter


QC

QB

CLK

QA

CLK

J
CLK

All J, K, PRESET and CLR = 1


Note:
For down counter, we connect /Q to next CLK,
but the output is still taken from Q.

Chp 7 Counters & Registers

7.4 Asynchronous Down Counters

Down Counter
State Transition Diagrams
000

CBA

001
111
010

110

011

101
100

Chp 7 Counters & Registers

7.4 Asynchronous Down Counters

Asyn Down Counter - waveform


1

10

11

12

13

14

15

16

17

CLK

CBA 000

110
111

100
101

010
011

000
001

110
111

Chp 7 Counters & Registers

100
101

010
011

000
001

7.11 Decoder

Design a circuit to turn on an LED for 1 s once every 13


s to signal an assembly line worker to perform some
manual operation. Assume that you have a 1 Hz clock
available.

Chp 7 Counters & Registers

7.11 Decoder

Design a circuit to turn on an LED for 1 s once every 13 s


to signal an assembly line worker to perform some manual
operation. Assume that you have a 1 Hz clock available.
Solution

CLK

= 1 Hz

every count last for 1 s


Need a divide-by-13 counter, i.e. Mod 13

Chp 7 Counters & Registers

7.11 Decoder

Design a circuit to turn on an LED for 1 s once every 13 s to


signal an assembly line worker to perform some manual
operation. Assume that you have a 1 Hz clock available.
Solution, cont

CP1
CP0

mod 13 counter

74LS293
MR1 MR2

Q 3 Q 2 Q1 Q0

Chp 7 Counters & Registers

7.11 Decoder

Design a circuit to turn on an LED for 1 s once every 13 s to


signal an assembly line worker to perform some manual
operation. Assume that you have a 1 Hz clock available.
Solution, cont

0000
0001

1011
1100
0000

(0)
(1)

Q 3Q 2Q1Q 0

decoder

(11)
(12)
(0)

every count last for 1 s

Chp 7 Counters & Registers

10

7.1 Asynchronous counters

Draw the output waveforms for the


following counter?
C

CLK

CLK

J
CLK

fCLK= 1MHz
tpd = 50ns
TCLK = 1/fCLK = 1us = 1000ns

Chp 7 Counters & Registers

11

7.5 Propagation Delay in Ripple Counters

Output waveforms for the counter on the previous slide


1

CLK
1000ns
A

50ns
B
100ns
C
150ns

3 FFs, max delay = 3 times FF tpd


Chp 7 Counters & Registers

12

7.1 Asynchronous counters

Whats wrong with this counter?

CLK

CLK

J
CLK

fCLK= 10MHz

tpd = 50ns
TCLK = 1/fCLK = 0.1us = 100ns

Chp 7 Counters & Registers

13

7.5 Propagation Delay in Ripple Counters

Effect of Propagation Delay missing count


1

CLK
100ns
A

50ns

50ns

50ns

50ns
B

50ns

50ns

50ns
150ns

000

001

010

011

101

100 did not occur

Chp 7 Counters & Registers

14

7.1 Asynchronous counters

How do you get round the problem?

Chp 7 Counters & Registers

15

7.5 Propagation Delay in Ripple Counters

Propagation Delay in Ripple Counter


Propagation delays tpd of the FFs add up
For Nth FF, the total delay will be N x tpd
If clock pulses are applied at high frequency,
missing state(s) may occur.
To avoid this problem, Tclock >= N x tpd
Max frequency Fmax <= 1 / (N x tpd)

Chp 7 Counters & Registers

16

7.5 Propagation Delay in Ripple Counters

A 4-bit ripple counter is constructed using 74LS11 JK


FFs. The FF has tPLH = 16ns and tPHL = 24ns (from CLK
to Q). Calculate fmax.

Chp 7 Counters & Registers

17

7.5 Propagation Delay in Ripple Counters

A 4-bit ripple counter is constructed using 74LS11 JK


FFs. The FF has tPLH = 16ns and tPHL = 24ns (from CLK
to Q). Calculate fmax.

Use worst case tpd = 24 ns


fmax. = 1/(4 x 24ns) = 10.4MHz

Chp 7 Counters & Registers

18

7.1 Asynchronous counters

Another possible problem with counter


Decoding Glitches
tpd = 50ns
C

CLK

A
B
C

fCLK= 1MHz
A

CLK

J
CLK

X2

Chp 7 Counters & Registers

e.g. this is a
decoder decoding
count 2, i.e. 010

19

7.5 Propagation Delay in Ripple Counters

Decode Output Waveform


1

CLK
1000ns
A

B
C

50ns

(010)
decoder

Chp 7 Counters & Registers

This unwanted
output is called
a Glitch

20

7.1 Asynchronous counters

To overcome glitches, apply strobe signal


tpd = 50ns
C

CLK

Strobe
(enable)
signal

A
B
C

fCLK= 1MHz
A

CLK

J
CLK

X2

Chp 7 Counters & Registers

21

7.5 Propagation Delay in Ripple Counters

To overcome glitches, apply strobe signal


1

CLK
A

strobe

Notice the glitch


did not occur

(010)
docoder

Chp 7 Counters & Registers

22

7.11 Decoding a Counter

Decoder
A decoder generates a unique output for each state
of the counter
Decoder output can be ACTIVE HIGH or
ACTIVE LOW

Chp 7 Counters & Registers

23

7.11 Decoding a Counter

Decoder (cont)
At any one time only ONE output is ACTIVE
e.g.

Can
come
from
counter
outputs

3-bit
inputs

23
outputs
X0
QA
X1
Decoder X2
X3
X4
QB
X5
X6
X7
Q
C

Chp 7 Counters & Registers

24

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE HIGH outputs
0
0
0

X0
QA
X1
Decoder X2
X3
QB
X4
X5
X6
X7
QC

Chp 7 Counters & Registers

QA
QB
QC

X0

1
0
0
0
0
0
0
0

25

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE HIGH outputs
1
0
0

X0
QA
X1
Decoder X2
X3
QB
X4
X5
X6
X7
QC

Chp 7 Counters & Registers

QA
QB
QC

X1

0
1
0
0
0
0
0
0

26

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE HIGH outputs
0
1
0

X0
QA
X1
X2
Decoder X3
QB
X4
X5
X6
X7
QC

Chp 7 Counters & Registers

QA
QB
QC

X2

0
0
1
0
0
0
0
0

27

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE HIGH outputs

1
1
0

X0
QA
X1
Decoder X2
X3
QB
X4
X5
X6
X7
QC

Chp 7 Counters & Registers

QA
QB
QC

X3

0
0
0
1
0
0
0
0

28

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE HIGH outputs
0
0
1

X0
QA
X1
Decoder X2
X3
QB
X4
X5
X6
X7
QC

Chp 7 Counters & Registers

QA
QB
QC

X4

0
0
0
0
1
0
0
0

29

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE HIGH outputs
1
0
1

X0
QA
X1
X2
Decoder X3
QB
X4
X5
X6
X7
QC

Chp 7 Counters & Registers

QA
QB
QC

X5

0
0
0
0
0
1
0
0

30

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE HIGH outputs
0
1
1

X0
QA
X1
Decoder X2
X3
QB
X4
X5
X6
X7
QC

Chp 7 Counters & Registers

QA
QB
QC

X6

0
0
0
0
0
0
1
0

31

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE HIGH outputs
1
1
1

X0
QA
X1
Decoder X2
X3
QB
X4
X5
X6
X7
QC

Chp 7 Counters & Registers

QA
QB
QC

X7

0
0
0
0
0
0
0
1

32

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE LOW outputs
0
0
0

/X0
QA
/X1
Decoder /X2
/X3
QB
/X4
/X5
/X6
/X7
QC

Chp 7 Counters & Registers

QA
QB
QC

/X0

0
1
1
1
1
1
1
1

33

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE LOW outputs
1
0
0

/X0
QA
/X1
/X2
Decoder /X3
QB
/X4
/X5
/X6
/X7
QC

Chp 7 Counters & Registers

QA
QB
QC

/X1

1
0
1
1
1
1
1
1

34

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE LOW outputs
0
1
0

/X0
QA
/X1
/X2
Decoder /X3
QB
/X4
/X5
/X6
/X7
QC

Chp 7 Counters & Registers

QA
QB
QC

/X2

1
1
0
1
1
1
1
1

35

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE LOW outputs
1
1
0

/X0
QA
/X1
/X2
Decoder /X3
QB
/X4
/X5
/X6
/X7
QC

Chp 7 Counters & Registers

QA
QB
QC

/X3

1
1
1
0
1
1
1
1

36

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE LOW outputs
0
0
1

/X0
QA
/X1
/X2
Decoder /X3
QB
/X4
/X5
/X6
/X7
QC

Chp 7 Counters & Registers

QA
QB
QC

/X4

1
1
1
1

0
1
1
1

37

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE LOW outputs
1
0
1

/X0
QA
/X1
/X2
Decoder /X3
QB
/X4
/X5
/X6
/X7
QC

Chp 7 Counters & Registers

QA
QB
QC

/X5

1
1
1
1
1

0
1
1

38

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE LOW outputs
0
1
1

/X0
QA
/X1
/X2
Decoder /X3
QB
/X4
/X5
/X6
/X7
QC

Chp 7 Counters & Registers

QA
QB
QC

/X6

1
1
1
1
1
1
0
1

39

7.11 Decoding a Counter

Decoder e.g. at work


ACTIVE LOW outputs
1
1
1

/X0
QA
/X1
/X2
Decoder /X3
QB
/X4
/X5
/X6
/X7
QC

Chp 7 Counters & Registers

QA
QB
QC

/X7

1
1
1
1
1
1
1
0

40

7.11 Decoding a Counter

Decoding Application
BCD Counter

BCD counter
counts from
0000 to 1001

BCD-to-7 seg
Decoder (7447)

g fedcba
a
f
e

b
g

d
Chp 7 Counters & Registers

41

7.11 Decoding a Counter

BCD Counter Decoding


BCD Counter

0
BCD-to-7 seg
Decoder (7447)

g fedcba
0111111

a
f

c
d

Chp 7 Counters & Registers

42

7.11 Decoding a Counter

BCD Counter Decoding


BCD Counter

0
BCD-to-7 seg
Decoder (7447)

g fedcba
0000110

b
c

Chp 7 Counters & Registers

43

7.11 Decoding a Counter

BCD Counter Decoding


BCD Counter

0
BCD-to-7 seg
Decoder (7447)

g fedcba
1011011

a
b
e

g
d

Chp 7 Counters & Registers

44

7.11 Decoding a Counter

BCD Counter Decoding


BCD Counter

0
BCD-to-7 seg
Decoder (7447)

g fedcba
1001111

a
b
g

d
Chp 7 Counters & Registers

45

7.11 Decoding a Counter

BCD Counter Decoding


BCD Counter

0
BCD-to-7 seg
Decoder (7447)

b
g

g fedcba
1100110
and so on

Chp 7 Counters & Registers

46

7.18 IC Registers

IC Registers

Registers are used to store data


temporarily - while the data
awaits further operations.

Chp 7 Counters & Registers

47

7.18 IC Registers

IC Registers

Registers can be classified according


to the manner data is :(i) entered for storage
(ii) Output from the register

Chp 7 Counters & Registers

48

7.18 IC Registers

IC Registers

Different registers are:(i) Parallel in /parallel out


(ii) Serial in / serial out
(iii) Parallel in / serial out
(iv) Serial in / parallel out

Chp 7 Counters & Registers

49

7.18 IC Registers

IC Registers
D0

D1
D0

D0

CP

D0

CP
D1

Serial in serial out


illustration

D0

parallel in parallel out


illustration

Chp 7 Counters & Registers

50

The next few slides show one e.g. IC from


each category of the registers.
Refer to the text book or web site link for
detail description of each e.g. IC.

Chp 7 Counters & Registers

51

7.19 Parallel In / Parallel Out

Parallel in / Parallel out


D5 D4 D3 D2 D1 D0

CP
MR

74ALS174
Q5 Q4 Q3 Q2 Q1 Q0

http://www.philipslogic.com/products/als/pdf/74als174.pdf
http://www.fairchildsemi.com/ds/DM/DM74ALS174.pdf

Chp 7 Counters & Registers

52

7.20 Serial In / Serial Out

Serial in / Serial out


D63

Ds
CP

4731B

http://www.datasheet4u.com/download.php?id=550899

(Quad)

Chp 7 Counters & Registers

53

7.21 Parallel In / Serial Out

Parallel in / Serial out


P0 P1 P2 P3 P4 P5 P6 P7
Ds

Q7

CP

74ALS165

CP INH

Q7

SH/ LD

SH/ LD 0 CP, CP INH = X

parallel load (asyn)

SH/ LD 1

shift

CP INH = 0

CP

http://www.fairchildsemi.com/ds/DM/DM74ALS165.pdf
Chp 7 Counters & Registers

54

7.22 Serial In / Parallel Out

Serial in / Parallel out


A
B
CP

&

74ALS164

MR
Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7
http://www.philipslogic.com/products/als/pdf/74als164.pdf

Chp 7 Counters & Registers

55

7.3 IC Asynchronous Counters

End of Counters and Registers

Chp 7 Counters & Registers

56

You might also like