chap 11

31
11 11 카운터 카운터

Post on 03-Oct-2014

169 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Chap 11

1111장장 카운터카운터

Page 2: Chap 11

한국기술교육대학교정보기술공학부 장 영조

2

비동기비동기((리플리플) ) 카운터카운터

리플 카운터의 회로 연결 및 동작 :

모든 JK(T) 입력은 1로 연결하여 토글 모드로 동작

클럭펄스는 LSB F/F에만 인가 - 클럭펄스의 NGT/PGT에서 출력변화

나머지 F/F의 CLK는 그전단의 LSB의 출력연결 -

그전단 출력의 NGT/PGT에서 출력변화

모든 clear 입력은 동시에 연결

각 F/F 사이에는 시간 지연 발생

MOD : N 개의 F/F 사용시 최대 2N -1 까지 계수, mod-2N 카운터

2비트 비동기 2진 카운터

2개의 J-K 또는 T F/F을 사용하여 구성

상태 00-01-10-11-00 으로 동작되는 카운터

CLK

1

QB

FFA FFB

J

K

Q

CP

Q

J

K

Q

CP

Q

QA

CLK

QA

T1

0 1

T2

T3

T4

QB

0 0

0

1

1

1

Page 3: Chap 11

한국기술교육대학교정보기술공학부 장 영조

3

33비트비트 비동기비동기 카운터카운터

000부터 111까지 계수 : Mod-8 카운터

증가 카운터

감소카운터 : 반전출력 사용

111 – 110 – 101 – 100 – 011 – 010 – 001 – 000 – 111 - ...

CLK

Q A

FFA FFB

1

FFC

Q B Q CJ

K

Q

CP

Q

J

K

Q

CP

Q

J

K

Q

CP

Q

CLK

QA

T1 T2 T3 T4 T5 T6 T7 T8

0

0

0

0

0

1 1 1 10

0

0

1

0

0

0

1 1

0

0

1

1

1

1

QB

QC

CLK

Q A

FFA FFB

1

FFC

Q B Q CJ

K

Q

CP

J

K

Q

CP

J

K

Q

CP

Page 4: Chap 11

한국기술교육대학교정보기술공학부 장 영조

4

ModMod--8 8 비동기비동기 증가증가//감소카운터감소카운터카운터 control 입력

주파수분주한 개의 F/F는 CLK 입력에 대해 입력주파수의 1/2로 주파수를 분주

클럭주파수가 8㎑이면, QA의 파형은 4 ㎑, 출력 QB는 2 ㎑,

출력 QC는 1 ㎑이다. 입력 클럭을 1/8로 분주

즉, 카운터의 마지막 출력 주파수는 입력 주파수를 MOD수에 의해 분주

예 : 1㎐ 출력을 내는 MOD-60 카운터는 몇 개의 F/F이 필요?

26 = 64, 최소 6개의 F/F 필요

CLOCK

1

Count-up

Count-down

QA

J

K

Q

CP

Q

J

K

Q

CP

Q

J

K

Q

CP

Q

QB

QC

Page 5: Chap 11

한국기술교육대학교정보기술공학부 장 영조

5

MOD MOD 수수〈〈 22N N 인인 카운터카운터2N보다 작은 MOD 수로 동작하는 카운터

0에서 2N이하의 MOD 수까지 연속적인 값으로 계수하는 회로

예: 3 비트 리플 카운터를 MOD6 카운터로 설계

모든 F/F는 리플 카운터로 연결

NAND 게이트의 출력을 모든

F/F의 클리어 입력에 연결

NAND 입력에 B 및 C F/F의 출력 연결

CBA = 000 → 001 → 010 → 011 → 100 → 101 → 110110 → 000

카운터를 클리어 시키기 위한 임시상태

* 110 상태 : NAND 출력이 0가 되어 F/F의 비동기 클리어가 바로 동작하여 모든 F/F는 0가 된다. 이때 110의 임시 상태는 잠시 나타났다가 바로 000가 되어 카운터는Mod-6로 동작

Page 6: Chap 11

한국기술교육대학교정보기술공학부 장 영조

6

카운터에서의카운터에서의 Glitch Glitch 출력출력글리치가 발생하는 출력 : 출력 B는 101-110-000의 파형 순서에서0-1-0로 잠시 1의 상태로 좁은 양의 펄스인 spike 또는 glitch 발생

Mod-6 카운터의 상태도unused state : 111

unstable state : 110

MOD 수의 변환리플 카운터의 모드 수는 원하는 모드 값이 되었을 때 1이 되는 모든 F/F의출력을 NAND 게이트 입력으로 연결하여 F/F를 강제로 리셋

예: mod-7 카운터

111 상태가 될 때 000으로 리셋하기 위해 NAND에 ABC F/F 출력 연결

Page 7: Chap 11

한국기술교육대학교정보기술공학부 장 영조

7

모드수와모드수와 주파수주파수

예 : 다음 카운터의 mod 수와 출력 D에서의 주파수는?

그림(a) NAND 입력인 D,C,B는 카운터가 1110에 도착하였을 때

0000으로 리셋 – 카운터는 0000부터 1101까지의

안정된 14개의 상태로 mod-14 카운터

입력주파수= 30 ㎑

D 출력 주파수 =

30 ㎑/ 14 = 2.14 ㎑

예: 그림 (b)는 1010에서 리셋

Mod-10 카운터

0000 ~1001 : BCD 카운터

Page 8: Chap 11

한국기술교육대학교정보기술공학부 장 영조

8

MOD X MOD X 카운터의카운터의 일반적일반적 설계설계 과정과정

1. 2N ≥ X를 만족하는 F/F의 최소수 N을 결정하고 리플카운터로 연결

만약, 2N = X라면 과정 2 와 3은 생략

2. 모든 비동기 클리어 입력에 NAND 게이트의 출력 연결

3. 카운트값 X에서 1이 되는 F/F의 출력들을 NAND 입력에 연결

<예> 0부터 21까지 카운트할 수 있는 MOD-22 카운터 설계

25 = 32이므로 5개의 F/F 필요,

Mod-22=10110 에 리셋하기 위하여 E, C, B 출력을 NAND 입력에 연결

<예> 60㎐의 라인주파수를 1㎐로 분주하는 MOD-60 카운터 설계

26 = 64 > 60 : N=6개의 F/F 사용

60(111100)을 카운트할 때 클리어 <- C, D, E, F 출력을 NAND에 연결

Page 9: Chap 11

한국기술교육대학교정보기술공학부 장 영조

9

BCD (MODBCD (MOD--10)10)리플리플 카운터카운터0(0000)에서 9(1001)까지 10개의 상태

4개의 F/F

1010 에서 비동기 리셋

글리치 발생 : 1001 1010 0000 B출력

QA

FFA FFB

1

CLK

J

K

Q

CP

R

J

K

Q

CP

R

QB J

K

Q

CP

R

QC J

K

Q

CP

R

QD

FFC FFD

< 순차 논리 회로 >

CLK

QA

QB

QC

QD

돌발 펄스

CLR

Page 10: Chap 11

한국기술교육대학교정보기술공학부 장 영조

10

비동기비동기 IC IC 카운터카운터

74293/74LS293, 7493-74293 출력 :

Q0 (LSB), Q1, Q2, Q3(MSB)

- 두개의 클럭 입력 :

은 Q0의 입력,

은 Q1의 입력으로 NGT에 동작

- 비동기 리셋입력 :

MR1,MR2는 master reset,

11일 때 모든 F/F를 클리어

- Q1, Q2, Q3는 3비트 리플 카운터로 연결 mod-8 카운터

Q0 mod-2 카운터 mod 2 x mod 8 = mod 16

74LS293에 10㎑의 클럭을 입력하여

mod-16 카운터로 동작하도록 결선

Q0의 출력을 에 연결하면

mod-2 x mod-8 = mod-16 카운터

10 ㎑의 펄스는 Q0의 클럭인 CP0에 인가

Page 11: Chap 11

한국기술교육대학교정보기술공학부 장 영조

11

7429374293의의 여러여러 가지가지 결선결선74293을 mod-10 카운터로 결선

mod-10은 4개의 F/F가 필요하므로

Q0는 CP1에 연결

카운터가 1010(mod수=10)이 될 때

Q3과 Q1의 출력을 마스터 리셋에 연결

(내부적으로 NAND 게이트가

있으므로 이를 사용)

74293을 이용한 mod-14 카운터

1110(14)에 도달하였을 때 Q3, Q2, Q1 출력을

NAND로 입력<- 외부에 AND 게이트를 하나 사용

Page 12: Chap 11

한국기술교육대학교정보기술공학부 장 영조

12

modmod--60 60 카운터카운터

74293을 2개 사용하여 구성한 mod-60 카운터

두 단계에 의해서 입력주파수를 1/60으로 분주

mod-10 카운터는 1010일 때 리셋

Q3 = fin/10로 mod-6 카운터의 CP1에 입력

mod-6 카운터는 Q0는 미사용, 110일 때 리셋

Q3 주파수 : fout = (fin/10) / 6 = fin / 60

Page 13: Chap 11

한국기술교육대학교정보기술공학부 장 영조

13

비동기식비동기식 감소카운터감소카운터up counter : 0 부터 증가하는 순서로 계수

down counter : 최대값으로부터 감소하는 순서의 카운터

3 비트 mod-8 다운 카운터 동작 순서

A F/F(LSB)은 클럭 펄스마다 반전(토글)

B F/F은 A가 0에서 1로 될 때 토글

C는 B가 0에서 1로 될 때 토글

리플 다운 카운터의 A 입력 클럭이 NGT로 동작한다면

-> F/F의 출력을 인버터로 반전하여야 다운 카운터로 동작

F/F의 반전 출력을 다음 단의 CLK에 연결

CBA111 110 101 100 Recycles011 010 001 000

Page 14: Chap 11

한국기술교육대학교정보기술공학부 장 영조

14

리플카운터의리플카운터의 전달지연전달지연N번째 F/F 상태변화 : 클럭펄스 발생 후 N× tpd 시간의 전달지연 누적

카운터의 동작 속도가 느리다. 낮은 동작 주파수에 동작

동작주파수가 낮은 경우 전달지연은 카운터 동작에 크게 영향이 없다

주파수가 높으면 전달 지연 효과는 상대적으로 크다. <- 오동작

지연시간과 최대 주파수의 관계

Tclock = N × tpd , fmax = 1 / (N × tpd)

N개의 F/F을 리플 연결시 fmax 이하로 동작

Page 15: Chap 11

한국기술교육대학교정보기술공학부 장 영조

15

11.2 11.2 동기동기 ((병렬병렬) ) 카운터카운터클럭 펄스가 모든 플립플롭의 클럭 입력에 연결되며, 하나의 마스터 클럭은 모든 플립플롭을 동시에 동작시킴 병렬 카운터

순차 논리회로의 설계에 따라 설계할 수 있다.

카운터의 동작시 전파지연시간이 없다. <- 고속 카운터 동작

2비트 동기식 2진 카운터순차 논리회로 방식으로 설계

상태도 여기표 작성 00

01

10

11

JA= B = KA, JB =1 = KB

Page 16: Chap 11

한국기술교육대학교정보기술공학부 장 영조

16

33비트비트 synchronous binary synchronous binary 카운터카운터3비트 동기식 2진 카운터 – 순차회로설계방법 사용

T8T7T6T5T4T3T2T1

CLK

QC

QB

QA

JA= KA= BC, JB = KB = C, JC= KC =1

Page 17: Chap 11

한국기술교육대학교정보기술공학부 장 영조

17

동기동기 44비트비트 이진이진 카운터카운터

mod-16 이진 병렬 카운터동기식 카운터의 동작 원리

A의 JK는 11이므로 NGT가 발생할때 마다 토글

B는 A=1인 상태에서 NGT가 들어올 때마다 토글

( ∵A=1일 때 JK=11)

C는 A=B=1일때 NGT가 들어오면 토글

(AB=11일 때 JK=11)

F/F D는 A=B=C=1일 때 NGT 신호가 들어가면 토글

(ABC=111일 때 JK=11)

이와 같이 F/F 수가 확장되더라도 유사하게 연결

- IC

74LS160/162, 74HC160/162 : 동기식 십진카운터

74LS161/163, 74HC161/163 : 동기식 16진카운터

Page 18: Chap 11

한국기술교육대학교정보기술공학부 장 영조

18

동기식동기식 BCD BCD 카운터카운터

동기식 10진 카운터0(0000)에서 9(1001)까지의 10개 상태

C(carry) 출력 – 카운터의 계수가 9일 때 1

0000

0100

0010

0110

0001

0011 0111

0101

1001

1000

JA=KA=1, JB=KB=AD', JC=KC=AB, JD=ABC, KD=A'C = AD

Page 19: Chap 11

한국기술교육대학교정보기술공학부 장 영조

19

FFC FFB FFA

QAQBQA

CP

x

1JA

KA

QA

QA

JB

KB

QB

QB

JC

KC

QC

QC

동기식동기식 22진진 증감증감 카운터카운터

3비트 동기식 2진 증감 카운터x=0 증가 0-1-2 -…6-7-0..

x=1 감소 7-6-5-….1-0-7..

000

110

101100

011

010

0011110/

0/

0/

0/

0/ 0/

0/

0/

1/1/

1/

1/

1/ 1/

1/

1/

JA = KA =1

JB = KB = A xor x

JC = KC =ABx' +A'B'x

c

IC : 74LS190, 74HC190

동기식 업/다운 카운터

Page 20: Chap 11

한국기술교육대학교정보기술공학부 장 영조

20

Preset Preset 카운터카운터

비동기 (클럭에 무관) 또는 동기적으로 카운터의 시작점을

미리 설정할 수 있는 카운터

PL = 1 : 정상 카운터 동작

= 0 : 병렬 데이터( P2P1P0)를 비동기적으로 카운터에 load

- 74190, 74191, 74192, 74193 - 비동기 프리세트 카운터 IC

- 동기식 프리세트 카운터 : 프리세트시 병렬 로드 입력이 클럭에 동기

74160, 74161, 74162, 74163

Page 21: Chap 11

한국기술교육대학교정보기술공학부 장 영조

21

74193 74193 동기형동기형 카운터카운터

비동기 프리셋과 리셋을 가진 mod-16 up/down 동기형 카운터

TCU와 TCD : 출력이 최대값(1111) 또는 최소값(0000)에 도달하였을때 발생하는 캐리로 카운터 확장시 클럭으로 사용

Page 22: Chap 11

한국기술교육대학교정보기술공학부 장 영조

22

74193 74193 카운터카운터 응용응용

예 : 74193이 업 카운터로 동작하는 회로의 병렬 입력이 1011이고,

CPU, PL, MR을 그림과 같이 인가.

카운터의 초기상태를 0000이라 할 때 카운터의 출력 파형

Page 23: Chap 11

한국기술교육대학교정보기술공학부 장 영조

23

74193 74193 카운터카운터 응용응용

다운 카운터로 구성된 74193, 병렬 입력은 0111로 연결,

카운터의 초기상태가 0000이라 할 때 출력파형

Page 24: Chap 11

한국기술교육대학교정보기술공학부 장 영조

24

74193 74193 카운터카운터 응용응용

74193을 이용한 가변 MOD 수프리셋을 이용하여 MOD수 변화 : 프리 세트 수부터 최대(최소)수 까지 카운트

74193은 0101 (5)의 병렬로드입력을 가진 다운 카운터

TCD를 PL에 연결- 카운터가 0000이면 TCD =0 이 되고 이때 병렬입력 load

TCD 는 반 주기 이전에 카운터가 0101이 되므로 다시 1로 간다.(glitch 발생 )

카운터는 5-4-3-2-1-(0,5)로 mod-5 : 프리셋시 반 주기는 0000, 반 주기는 0101 상태

Page 25: Chap 11

한국기술교육대학교정보기술공학부 장 영조

25

카운터카운터 확장확장

Multistage 연결

TCD와 TCU 는 둘 이상의 카운터를 다단계로 연결할 때 사용

0→255 (up) 또는 255→0(down)의 카운터 동작

8 비트 병렬 입력과 카운터 출력

Page 26: Chap 11

한국기술교육대학교정보기술공학부 장 영조

26

타이밍타이밍 순차순차 회로회로타이밍 순차 회로(Timing Sequencer)

• 동작 순서(sequence of operations)는 제어 장치에 의해 정의되고, 동작을 주관하는 제어 장치는 타이밍 신호들로 구성되며, 이 신호는 동작이 수행되는 타이밍 순차를 결정

카운터와 디코더를 사용한 타이밍 신호 발생기

• 2비트의 카운터는 4개의 서로 다른 상태를 출력하며, 디코더는 카운터의 출력을입력하여 4개의 서로 다른 타이밍 신호상태를 출력

• 동작원리 : 디코더가 카운터에서 발생되는 4개의 상태를 구분시켜 타이밍 신호의 순차를 발생시키며, 임의의 주어진 시간의 하나의 타이밍 신호는 4개의 클럭펄스 주기가 된다.

CP +

A

A

T

T

T

T

2비트 카운터 2×4 디코더

I

I

D

D

D

D

0

1

2

3

1

2

0

1

0

1

2

3

CP

A

A

T

T

T

T

0

1

0

1

2

3

Page 27: Chap 11

한국기술교육대학교정보기술공학부 장 영조

27

카운터의카운터의 디코딩디코딩

카운터 디코딩mod-X 카운터는 X개의 서로 다른 상태가

있으며 어떤 특정한 상태를 인지하는 회로를

카운터 디코딩

디코더 출력의 논리레벨에 따라

active HIGH 또는 active LOW 디코더

mod-8 카운터와 디코딩 회로 :

8개의 3입력 AND 게이트는

한번에 하나씩만 high 출력 발생

Page 28: Chap 11

한국기술교육대학교정보기술공학부 장 영조

28

카운터카운터 디코딩디코딩- 카운터의 특정 상태를 이용한

제어 파형 발생회로

- Active low 디코딩 :

NAND 게이트를 사용하여

디코딩 출력을 active low로.

Page 29: Chap 11

한국기술교육대학교정보기술공학부 장 영조

29

디코딩디코딩 글리치글리치- 리플 카운터에서 F/F 간의 전달지연 시간 차이에

의하여 AND 게이트 출력에서 글리치 발생

- X0, X2 디코딩 파형에서의 글리치는 A와 B 사이 지연이 원인

- 글리치가 문제가 되는 경우 : 카운터의 출력을 다른 회로를

제어하기 위하여 사용할 때

- 비동기 리플카운터: F/F간의 지연시간 차이에 의해 임시적 상태 발생

예 : 카운터가 011에서 100 변화시

011 -> 010 -> 000 -> 100으로 차례로 변화하므로 010과 000의 임시상태 존재

- 디코딩 글리치 문제가 심각한 경우 문제를 해결 방법

(1) 동기식 병렬 카운터 사용

(2) strobing : 모든 AND 게이트의 입력에 스토로브 신호 연결

- 모든 F/F이 NGT에서 응답하여 안정된 상태가 될 때까지

디코딩AND 게이트를 동작시키지않도록 스트로브신호 사용

Page 30: Chap 11

한국기술교육대학교정보기술공학부 장 영조

30

Ring counterRing countercirculating shift register: 마지막 F/F 출력을 첫단 F/F 입력으로 feedback 연결

구성 F/F 중 1 비트만 1의 상태로 유지 -> power-on시 1개의 F/F만을 1로 하고 나머지는 0 상태로 프리셋하는 회로 필요

클럭의 PGT에서 1 비트씩 우로 이동 (shift right), 마지막 비트는 피드백

N 비트 링 카운터는 MOD-N카운터

Page 31: Chap 11

한국기술교육대학교정보기술공학부 장 영조

31

Johnson CounterJohnson Countertwisted-ring counter : switched-tail ring,

링 카운터의 마지막 단의 반전 출력을 첫 단의 입력에 연결

N 비트로서 MOD-2N 카운터 구성

각 F/F 출력 파형의 duty cycle은 50%

존슨 카운터의 디코딩존슨 카운터는 링 카운터보다

1/2의 F/F를 사용하지만 카운터의 상태를 알기 위해서는 디코딩게이트가 필요하다.- 디코딩 게이트는 항상 2N개의2 입력 AND 게이트가 필요

CP

FFA

J

K

Q

Q

FFB

J

K

Q

Q

FFC

J

K

Q

Q

J

K

Q

FFD

Q

3비트-D FF 사용

4비트- JK FF 사용