Top Banner
9장 동기순차 회로
39

9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

Jul 28, 2018

Download

Documents

truongkhanh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

9장 동기순차 회로

Page 2: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

동기순차회로p 조합논리회로(combinational logic circuit)

v 출력이 현재의 입력에 의해서만 결정되는 논리회로

p 순차논리회로(sequential logic circuit)

v 현재의 입력과 이전의 출력상태에 의해서 출력이 결정

v 동기 순차논리회로와 비동기 순차논리회로로 분류.

v 동기순차회로 : 클록펄스에 의해서 동작하는 회로

v 비동기 순차회로 : 시간에 관계없이 입력이 변화하는 순서에 따라 동작

v 동기 순차회로에서 상태(state)는 이산된(discrete) 각 시점 즉, 클록 펄스가들어오는 시점에서 상태가 변화

한국기술교육대학교 전기전자통신공학부 2

출력 Y(t)는 현재 상태

의 입력 X(t-1)과 이전

상태의 출력 Y(t-1)에

의하여 결정

Page 3: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

동기순차회로의 분석과정v 순차논리회로의 동작은 입력과 출력 및 플립플롭의 현재상태에 의해 결정

v 출력과 차기 상태는 현재상태의 함수가 된다.

v 순차논리회로의 분석은 입력과 출력 및 현재상태에 의해 결정되는 차기상태의 시간순서를 상태표나 상태도로 나타낸다.

p 순차논리회로의 분석과정

[단계 1] 회로 입력과 출력에 대한 변수 명칭 부여

[단계 2] 조합논리회로에 대한 부울대수식 유도

[단계 3] 회로의 상태표 작성

[단계 4] 상태표를 이용하여 상태도 작성

[단계 5] 상태표와 상태도를 분석하여 회로의 동작 설명

한국기술교육대학교 전기전자통신공학부 3

Page 4: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

순차논리회로 분석1.변수명칭 부여

2. 부울대수식 유도

p F-F input equations : FF의 차기상태를 결정하는 부울 대수식 표현

p 출력함수

한국기술교육대학교 전기전자통신공학부 4

• 입력변수 : x ß 외부입력

• 출력 변수 : y ß 외부출력

• A FF의 입력 : SA, RA

• B FF의 입력 : SB, RB

• FF의 출력 : A, B

• A FF의 입력

• B FF의 입력

xBRxBS AA == ,xARxAS BB == ,

xBAy =

Page 5: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

3. 상태표 작성, 출력 포함

현재상태(t) - 입력과 외부입력의 모든 가능한 조합을 나열

차기상태(next state) - t+1시간 상태, 한 클럭 인가 후의 F-F 상태

p FF의 특성표

한국기술교육대학교 전기전자통신공학부 5

현재상태 차기상태 출력 FF 입력식

A B x A B y SA RA SB RB

0 0 0 0 0 0 0 0 0 0

0 0 1 0 1 0 0 1 1 0

0 1 0 1 1 0 1 0 0 0

0 1 1 0 1 0 0 0 1 0

1 0 0 1 0 0 0 0 0 1

1 0 1 0 0 1 0 1 0 0

1 1 0 1 0 0 1 0 0 1

1 1 1 1 1 0 0 0 0 0

xBRxBS AA == ,xARxAS BB == ,

xBAy =

순차논리회로 분석

Page 6: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

4. 상태도 작성

5. 회로 동작 설명v 순차논리회로의 동작은 상태도나 상

태표를 이용하여 설명 가능

v 입력 값에 따라 클록펄스가 한번씩인가될 때마다0(00)→1(01)→3(11)→2(10) → 0(00)의 순서로 동작하는 순차회로

한국기술교육대학교 전기전자통신공학부 6

상태도

o 순차회로의 동작을 도표로 표현

o 원안에 FF의 상태값 표시

o 화살표로서 상태 천이를 표시

o 화살표에 (input)/(output )값을 표현 가능

순차논리회로 분석

Page 7: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

7

Analysis with D Flip-flops(1) 입출력 ff에 대한 변수 이름과 부울식

n FF input equations

DA = AX + BX,

DB = A'X,

외부출력

Y = (A+B) X'

(2) 상태표 (state table)작성

n State relationship

A(t+1) = DA = AX + BX;

B(t+1) = DB = A'X;

Y = AX' + BX’

n D FF 경우 차기 상태는 입력방정식으로 부터 바로 구할 수 있다.

한국기술교육대학교 전기전자통신공학부

Page 8: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

8

Analysis with D Flip-flops

n 상태표 –입력을 분리한 형태

(3) 상태도(state diagram)

한국기술교육대학교 전기전자통신공학부

Page 9: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

9

Analysis with JK Flip-flopsp 2단계에 의하여 차기 상태 값을 구함 :

1) 현재상태와 (외부)입력으로부터 각 FF의 input equation의 이진값을 구한다.

2) 차기상태를 결정하기 위하여 각 FF characteristic 표 사용

예: 2개의 JK F-F을 가진 순차회로

JA = B, KA = BX'

JB = X', KB = AX' + A'X

한국기술교육대학교 전기전자통신공학부

PS F-F input fun NS

A B x JA KA JB KB A B

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

0 0 1 00 0 0 11 1 1 01 0 0 10 0 1 10 0 0 01 1 1 11 0 0 0

0 10 01 11 01 11 00 01 1

when J=1, K=0, next state => 1J=0, K=1, next state => 0J=K=0, no change of stateJ=K=1, complement of present state

(1) 부울식

(2) 상태표

(3) 상태도

Page 10: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

10

상태회로 모델n FSM (Finite State Machine) 종류

p 밀리(Mealy) 머신 – 출력이 입력과 현재상태에 의하여 결정, 비동기출력

p 무어(Moore) 머신 – 출력이 현재상태에 의하여서만 결정, 동기출력

(Ex) 무어 머신 회로

DA = A Å X Å Y, Z = A ß 출력 Z는 상태 A에만 의존

한국기술교육대학교 전기전자통신공학부

무어머신 밀리머신

Page 11: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

11

순차회로설계n 조합회로: 입력의 조합에 의하여서만 출력이 결정되는 회로 (진리표 사용)

n 순차회로는 상태표 (혹은 상태도)를 필요로 한다.

n FF의 개수 (N) 는 상태수로 부터 결정된다.

N FFs à up to 2N 상태

p 순차 논리 회로를 구하는 논리 회로 설계 과정① 설계 사양으로부터 상태도, 상태표를 구한다.

- 필요한 경우, 상태 축소 및 상태 할당을 한다.

② 플립플롭의 종류를 선택하고, 플립플롭의 수를 결정한다.

③ 플립플롭의 입력과 출력 및 각각의 상태에 문자 기호를 부여한다.

④ 상태표로부터 순차회로의 상태 여기표를 구하고, 플립플립의 여기표를 이용하여 플립플롭의 입력 함수를 구하여 순차회로의 여기표에 기록한다.

⑤ 카르노맵 또는 부울대수의 기본정리를 이용하여 간소화된 순차논리회로의 출력 함수와 플립플롭의 입력 함수를 구한다.

⑥ 논리 회로를 설계한다.

한국기술교육대학교 전기전자통신공학부

Page 12: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

순차회로 설계 – JK F/F 사용1. 회로동작 기술 : 상태도 사용

2. 상태표 작성 : 상태도로 부터 유도

3. 플립플롭수와 종류 결정

한국기술교육대학교 전기전자통신공학부 12

0/

01

10

00

11

1/

1/

1/

1/0/

0/

0/

x/입력

현재상태차기상태

x=0 x=1

A B A B A B

0 0 0 0 0 1

0 1 1 0 0 1

1 0 1 0 1 1

1 1 1 1 0 0

v 상태 수가 n 이면 개의 플립플롭 필요.

v 예, n=16이면,

v n=4이므로,

v 상태 수가 5인 경우는 3개의 FF이 필요하고, 이중 3개의 상태는 미사용

é ùn2log

é ù 42log416log 22 ==

é ù 22log24log 22 ==

Page 13: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

순차회로 설계 – JK F/F 사용

4. 상태 여기표 유도

5. FF의 입력함수 및 출력함

수 논리식 유도

한국기술교육대학교 전기전자통신공학부 13

조합회로의 입력차기상태

조합회로의 출력

현재상태 입력 플립플롭 입력A B x A B JA KA JB KB

0 0 0 0 0 0 x 0 x0 0 1 0 1 0 x 1 x0 1 0 1 0 1 x x 10 1 1 0 1 0 x x 01 0 0 1 0 x 0 0 x1 0 1 1 1 x 0 1 x1 1 0 1 1 x 0 x 01 1 1 0 0 x 1 x 1

Q(t) Q(t+1) J K0 0 0 x

0 1 1 x

1 0 x 1

1 1 x 0

J-K 플립플롭의 여기표

xBJ A =

BxK A =

xAxAxAAxKB =Å=+=xJB = ⊙

Page 14: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

순차회로 설계 – JK F/F 사용6. 논리도 그리기

한국기술교육대학교 전기전자통신공학부 14

xBJ A =

BxK A =

xJB =

xAKB = ⊙

Page 15: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

상태 축소 및 상태할당v 문자 기호에 의해서 표시된 상태를 가진 상태도로부터 간략화된 상태표를

유도.

v 상태도로부터 얻어진 상태표는 하나 또는 그 이상의 불필요한 상태(redundant state)를 가질 수 있다.

v 축소된 최소 상태표(minimal state table)를 유도하기 위한 과정은 상태 축소와 상태 할당의 2단계에 의해서 수행된다.

p 상태 축소

v 순차논리회로에서 상태수를 줄여서 플립플롭의 수를 줄이는 것

v 플립플롭의 수가 m이라 가정하면, 이때 가능한 상태수는 2m 이 되므로 상태의 수를 줄임으로써 플립플롭의 수를 줄일 수 있다. 그러나 경우에 따라상태의 수는 감소되지만 플립플롭의 수는 변화하지 않는 경우도 있다.

v 상태축소가 될 수 있는 경우는 상태값은 상관 없이 입력 및 출력의 순서가중요한 경우

한국기술교육대학교 전기전자통신공학부 15

Page 16: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

상태축소 및 상태할당

한국기술교육대학교 전기전자통신공학부 16

a

b

d

f

c

eg

0/0

0/00/00/0

1/00/0

1/0 1/0

0/0

1/11/1

1/1

0/0

1/1

현재상태차기상태 출력

x=0 x=1 x=0 x=1

a a b 0 0

b c d 0 0

c a d 0 0

d e f 0 1

e a f 0 1

f g f 0 1

g a f 0 1

상태표상태도(기호사용)

Page 17: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

상태축소 및 상태할당p

한국기술교육대학교 전기전자통신공학부 17

현재상태

차기상태 출력

x=0 x=1 x=0 x=1a a b 0 0

b c d 0 0

c a d 0 0

d e d 0 1

e a d 0 1

e f 0 1

a f 0 1

현재상태

차기상태 출력

x=0 x=1 x=0 x=1a a b 0 0

b c d 0 0

c a d 0 0

d e d 0 1

e a d 0 1축소된 상태도

a

b

d

ce

0/0

0/0

0/0 0/0

0/0

1/1

1/1

1/0

1/01/0

등가상태(Equivalent state)의 정의 : 각 입력에 대하여 동일 출력과 동일차기 상태로 천이하는 경우, 두개의상태는 등가상태라 한다.

ff

fg

g

e : a f 0 1g : a f 0 1

ß e = gg를 e로 대치g 소거

Page 18: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

상태축소 및 상태할당p 상태 할당

v 기호 형태로 표현된 각 상태에 대해서 2진수(2진 코드) 값 할당

한국기술교육대학교 전기전자통신공학부 18

상태 할당1 할당2 할당3

a 0 0 1 0 0 0 0 0 0b 0 1 0 0 1 0 1 0 0c 0 1 1 0 1 1 0 1 0d 1 0 0 1 0 1 1 0 1e 1 0 1 1 1 1 0 1 1

현재상태

차기상태 출력

x=0 x=1 x=0 x=10 0 1 0 0 1 0 1 0 0 0

0 1 0 0 1 1 1 0 0 0 0

0 1 1 0 0 1 1 0 0 0 0

1 0 0 1 0 1 1 0 0 0 1

1 0 1 0 0 1 1 0 0 0 1

할당 1에 의한 상태표 상태할당의 결과는FF의 조합입력 함수에 영향을 미친다

Page 19: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

순차회로 설계 – SR F/F 사용p 상태도

p 상태할당 및 플립플롭 수 결정

v 제어하려는 상태의 수는 5가지이므로 3비트가 필요

v 3개의 S-R 플립플롭을 순차대로 A, B, C라고 정의

v 현재 상태 a, b, c, d, e에 각각 000, 001, 010, 011, 100을 할당

한국기술교육대학교 전기전자통신공학부 19

현재상태차기상태 출력

x=0 x=1 x=0 x=1

a a b 0 0

b c d 0 0

c a d 0 0

d e d 0 1

e a d 0 1

q 상태표

a

b

d

ce

0/0

0/0

0/0 0/0

0/0

1/1

1/1

1/0

1/01/0

Page 20: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

20

순차회로 설계 – SR F/F 사용

n Flip-flop 상태천이 여기표 ( Excitation Table)

순차회로의 설계에 사용하며, 현재 상태에서 차기 상태로 천이하기 위하여 인가하여야 할 각 F-F의 입력을 나타낸다.

p 각 열 : 현재상태Q(t), 차기상태Q(t+1), F-F 입력

p D F-F: 차기상태는 항상 현재 D 입력과동일 (현재상태 값에 무관)

D = Q(t+1)

p T F-F: 현재 상태와 차기 상태의exclusive-OR

T = Q(t) Å Q(t+1)

한국기술교육대학교 전기전자통신공학부

Page 21: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

순차회로 설계 – SR F/F 사용p SR FF에 대한 상태 여기표 작성

한국기술교육대학교 전기전자통신공학부 21

현재상태 외부입력 차기상태 플립플롭의 입력 외부출력

A B C x A B C SA RA SB RB SC RC y

a0 0 0 0 0 0 0 0 x 0 x 0 x 0

0 0 0 1 0 0 1 0 x 0 x 1 0 0

b0 0 1 0 0 1 0 0 x 1 0 0 1 0

0 0 1 1 0 1 1 0 x 1 0 x 0 0

c0 1 0 0 0 0 0 0 x 0 1 0 x 0

0 1 0 1 0 1 1 0 x x 0 1 0 0

d0 1 1 0 1 0 0 1 0 0 1 0 1 0

0 1 1 1 0 1 1 0 x x 0 x 0 1

e 1 0 0 0 0 0 0 0 1 0 x 0 x 0

1 0 0 1 0 1 1 0 1 1 0 1 0 1

don’tcare

1 0 1 0 x x x x x x x x x x1 0 1 1 x x x x x x x x x x1 1 0 0 x x x x x x x x x x1 1 0 1 x x x x x x x x x x1 1 1 0 x x x x x x x x x x1 1 1 1 x x x x x x x x x x

Page 22: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

순차회로 설계 – SR F/F 사용p FF의 입력함수 및 회로의 출력 함수 논리식 유도

한국기술교육대학교 전기전자통신공학부 22

xBCSA = ARA =

CBAxSB +=

xBRB =

xRC =xSC =

미사용상태 검증 차기상태ABCx SA RA SB RB SC RC ABC1010 0 1 1 0 0 1 0101011 0 1 1 0 1 0 0111100 0 1 0 1 0 1 0001101 0 1 1 0 1 0 0111110 1 1 0 1 0 1 ?001111 0 1 1 0 1 0 011

Page 23: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

순차회로 설계 – SR F/F 사용p 논리도 작성

한국기술교육대학교 전기전자통신공학부 23

BCxAxy +=

xBCSA = ARA =CBAxSB += xBRB =

xSC = xRC =BCxAxy +=

Page 24: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

미사용 상태의 설계p 순차회로의 초기상태는 어떠한 상태도 될 수 있으므로 미사용 상태에

대한 차기상태가 어떤 상태로 천이하는지 확인 필요

한국기술교육대학교 전기전자통신공학부 24

현재상태차기상태

x=0 x=1A B C A B C A B C

0

0

1

1

1

1

1

1

0

0

1

1

0

1

0

1

0

1

0

0

1

1

1

1

1

1

0

0

1

0

1

1

0

1

0

1

0

1

1

1

0

1

1

1

1

0

1

1

0

1

0

0

0

1

입력 현재상태 차기상태 플립플롭입력

x A B C A B C JA KA JB KB JC KC

0 0 1 0 0 1 1 0 × × 0 1 ×0 0 1 1 0 1 1 0 × × 0 × 00 1 0 0 1 0 0 × 0 0 × 0 ×0 1 0 1 1 0 1 × 0 0 × × 00 1 1 0 1 1 0 × 0 × 0 0 ×0 1 1 1 1 0 1 × 0 × 1 × 01 0 1 0 0 1 0 0 × × 0 0 ×1 0 1 1 1 1 1 1 × × 0 × 01 1 0 0 1 1 0 × 0 1 × 0 ×1 1 0 1 1 0 0 × 0 0 × × 11 1 1 0 0 1 0 × 1 × 0 0 ×1 1 1 1 1 1 1 × 0 × 0 × 0

상태표JK FF를 사용한 상태 여기표

미사용 상태000001

x 입력 포함0000, 00010010, 0011

Page 25: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

미사용 상태의 설계

한국기술교육대학교 전기전자통신공학부 25

v 사용하지 않은 2개의 상태(000, 001)에 대해서는 카르노 맵에서 무관항으로처리하여 간소화

CxJ A = xCBK A =

xACKB =

xCJB =

xAJC = xBKC =

ABCx

00 01

X

X X

X

00

01

11

10

X X

X

1011X

X

X

1

ABCx

00 01 11 1000

01

11

10

X X

1

X X

X X

X X

X X

Page 26: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

미사용 상태의 설계

한국기술교육대학교 전기전자통신공학부 26

미사용 상태의 천이

미사용 상태 포함한 상태도

논리도

순차회로의 초기상태- F-F의 상태를 초기화하기 위하여 master reset를 제공- 원하지 않은 잡음 등의 신호로 인하여 don't care 조건으로 취급된 미사용 상태로 빠질 수가있다. - 미사용 상태에 대하여 차기상태나 출력을 명확히 기술하여 주는 것이 stable한 순차회로를설계하는 방법

미사용입력A B C x

FF input 차기상태A B C

JA KA JB KB JC KC

0 0 0 00 0 0 10 0 1 00 0 1 1

0 00 00 0 1 0

0 01 00 00 0

1 00 1 1 0 0 1

0 0 10 1 00 0 11 0 0

Page 27: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

27

카운터의 설계n 카운터의 상태 순서는 2진 카운터이거나 임의의 다른 상태 순서가 될 수 있다.

n n-비트 카운터는 n 개의 플립플롭으로 구성 à 0~ 2n -1계수

J-K를 사용한 2진 카운터 (J=K=1à T F-F동작)

3비트(A2A1A0)

2진 카운터의 상태도

PSA2A1A0

NSA2A1A0

FF input TA2TA1TA0

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

0 0 10 1 00 1 11 0 01 0 11 1 01 1 10 0 0

0 0 10 1 10 0 11 1 10 0 10 1 10 0 11 1 1

T F-F을 사용한NS 방정식을 위한 맵

한국기술교육대학교 전기전자통신공학부

JQ

K

JQ

K

yx

CP

JQ

K

z

1

A2A1 A0

Page 28: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

J-K FF을 사용하여 주어진 상태도의 카운터를 설계하고 미사용 상태에 대한 동작 검증

000

001101

011 110

111

현재상태 차기상태 플립플롭입력A B C A B C JA KA JB KB JC KC

0

0

0

1

1

1

0

0

1

0

1

1

0

1

1

1

0

1

0

1

1

0

1

0

0

1

0

0

1

1

1

0

1

0

1

1

0

1

1

×

×

×

×

×

×

1

0

1

0

1

×

0

×

×

×

×

1

×

0

0

1

×

×

×

1

×

×

1

0

1

×

0

X

1

X X

ABC

00 01 11 100

1 X

1 X

X

1X

XA

BC00 01 11 10

0

1

X

1

X

X1

X

XA

BC00 01 11 10

0

1 X X

CJ A =

CK A =

CAJB =

X 1

X

XA

BC00 01 11 10

0

1

X

X

X

1

X

XA

BC00 01 11 10

0

1

X

X 1

X

X

1X

XA

BC00 01 11 10

0

1 X

1

AKB =

1=CJ

BKC = 28

한국기술교육대학교 전기전자통신공학부

Page 29: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

p 카운터 회로

p미사용 상태를 포함한 카운터의 상태도

JA

CP

KA

Q

Q

B

JB

CP

KB

Q

Q

JC

CP

KC

Q

Q

C

CP

A

1

010

100

미사용 상태

000

001101

011 110

111

29한국기술교육대학교 전기전자통신공학부

미사용상태 검증PS NS

ABC JAKA JBKB JCKC ABC010 0 0 0 1 1 0 001100 0 0 0 0 1 1 101

* 미사용 상태를 포함한 설계미사용 상태를 원하는 상태로 천이하는 상태표를 작성한다. 보통 초기상태로 천이하게 한다.

Page 30: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

상태방정식을 이용한 설계1. J-K 플립플롭을 사용한 상태 방정식

v 순차논리회로의 상태방정식은 상태표에 표시된 정보와 똑같은 내용을 대수적으로 표시하고 있으며, 플립플롭의 특성방정식과 형태가 유사

v 상태방정식은 상태표에서 쉽게 유도할 수 있으며, 모든 순차논리회로는 상태방정식으로 표시할 수 있다.

v 특히 D 플립플롭이나 J-K 플립플롭을 사용하는 경우 상태방정식을 사용하여 순차논리회로를 설계하는 것이 더욱 편리하다.

v S-R 플립플롭이나 T 플립플롭을 가진 회로에도 상태방정식을 적용할 수 있으나 많은 대수적 처리가 필요하다.

q J-K 플립플롭을 사용한 상태 방정식

v J-K 플립플롭의 상태방정식을 J-K 플립플롭의 특성방정식과 같은 형태로

변형함으로써 플립플롭의 J와 K의 입력 함수를 구할 수 있다.

한국기술교육대학교 전기전자통신공학부 30

QKQJ)Q(t +=+1

J-K 플립플롭의특성방정식

Page 31: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

상태방정식을 이용한 설계

v 2개의 J-K 플립플롭을 각각 A, B라 할 때, 상태 여기표에서 플립플롭 A, B의 차기상태가 논리 1이 되는항을 최소항으로 하는 부울 함수를 구한다.

한국기술교육대학교 전기전자통신공학부 31

1/0

01

10

00

11

0/00/0

1/1

1/1

0/0 0/0

1/0

x/y입력

출력

ABxxBxBAxB

ABxxBxBAxB

ABxxBAxBAxBAtA

)()(

)()(

)1(

+++=

+++=

+++=+

xBxBBxxBxBK

xBJ

A

A

=+=++=

=

)(

AKAJtA AA +=+ )1(

BAxxABxAxA

BAxxABxAxA

ABxBxAxBAxBAtB

)()(

)()(

)1(

+++=

+++=

+++=+

xAxxAK

xxAxAJ

B

B

=+=

=+=

BKBJtB BB +=+ )1(

상태표

상태방정식으로부터 특성방정식 유도

입력 차기상태 출력

A B x A B y0

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

0

0

1

0

1

1

0

1

1

0

0

1

1

0

0

1

0

0

0

1

0

1

0

0

Page 32: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

상태방정식을 이용한 설계출력

한국기술교육대학교 전기전자통신공학부 32

)()( BAxBABAx

BxABAxy

Å=+=

+=

)( BAxy Å=

xBK

xBJ

A

A

=

=

xK

xJ

B

B

=

=

논리도 작성

Page 33: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

상태방정식을 이용한 설계예제 : 상태표로 부터 JK 상태방정식을 사용하여 순차회로를 설계하여라.

한국기술교육대학교 전기전자통신공학부 33

현재상태 차기상태

A B C A B C

0

0

0

1

1

1

0

1

0

1

1

0

1

1

0

0

0

0

1

1

0

1

1

0

0

1

1

0

1

0

1

1

1

1

0

0

1

1

1

1

0

0

1

0

1

1

1

1

미사용상태 : 001, 100

ACBABCCB

ACBABCCB

CABBCACBAtA

)()(

)()(

)1(

CBCB

CBCB

CBACBA

++++=

++++=

++++=+

BACCACABCA

BACCACABCA

ABCCABCBACBAtB

)()(

)()(

)1(

+++++=

+++++=

+++++=+

CACA

CACA

CBACBA

CABBACAB

ABBAAB

ABCCABBCAtC

)()(

()(

)1(

BABA

)CBACBA

CBACBA

++++=

++++=

++++=+

CCBK

CBBCCBJ

A

A

=+=

+=++=

CB

CB

CACAACCACAK

ACCAJ

B

B

=+=++=

+=++=

)(

CACA

ABABBAK

AABJ

C

C

=++=

=+=

BA

BA

상태방정식

미사용상태포함

Page 34: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

상태방정식을 이용한 설계회로도

한국기술교육대학교 전기전자통신공학부 34

CK

CBJ

A

A

=

+=

CAK

ACJ

B

B

=

+=

ABK

AJ

C

C

=

=

Page 35: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

상태방정식을 이용한 설계2. D 플립플롭을 사용한 상태 방정식

상태표

상태여기표

한국기술교육대학교 전기전자통신공학부 35

D)Q(t =+1현재상태

차기상태

x=0 x=1

A B A B A B0

0

1

1

0

1

0

1

1

0

1

0

0

1

0

1

0

0

1

1

0

0

1

1

입력 현재상태 차기상태 FF 입력

x A B A B DA DB

0

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

1

0

1

0

0

0

1

1

0

1

0

1

0

0

1

1

1

0

1

0

0

0

1

1

0

1

0

1

0

0

1

1

1

1

xAB

00 01 11 100

1 1

1

1

1

xAB

00 01 11 100

1 1

1

AxxBDA +=

AxxBDB +=

D 플립플롭의 특성 방정식

Page 36: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

상태방정식을 이용한 설계p 상태방정식을 특성방정식의 형태로 변환

p 논리도 ( D FF 사용)

한국기술교육대학교 전기전자통신공학부 36

AxxB

AxBBxBAA

ABxxBAxBAxBAtA

+=

+++=

+++=+

)()(

)1(

AxxB

AxBBxBAA

ABxxBAxABxBAtB

+=

+++=

+++=+

)()(

)1(

AxxBDA +=

AxxBDB +=

Page 37: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

37

디코더와 플립플롭을 사용한 설계n R-S 플립플롭과 디코더를 사용하여 아래표의 상태표에 대한 순차 논리 회로를 설

계하여라.

1. R-S 플립플롭을 사용하는 순차 논리 회로의 여기표를 구한다

한국기술교육대학교 전기전자통신공학부

v 디코더는 n개의 입력 변수들에 대한 2n개의최소항 출력

v 부울 함수를 SOM으로 표현하면 각 곱을 구성하는 최소항들은 디코더를 사용하고 합은OR 게이트 또는 NOR 게이트 사용하여 구현

v 디코더 출력이 정상 출력일 때는 OR 게이트 , 보수 출력인 경우는 NOR 게이트 사용

Page 38: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

38

디코더와 플립플롭을 사용한 설계2. 여기표에서 플립플롭의 입력 함수를 곱의 합 (SOM)형으로 나타낸다

3. 순차 논리 회로 구현

한국기술교육대학교 전기전자통신공학부

Page 39: 9장동기순차회로 - cms3.koreatech.ac.krcms3.koreatech.ac.kr/sites/yjjang/down/dig12/ch09_seq.pdf · v동기순차논리회로와비동기순차논리회로로분류. v동기순차회로:

J-K 플립플롭과 디코더를 사용하여 3비트 그레이 코드 카운터 설계

000

011

001100

101

111 010

110

현재상태 차기상태 플립플롭입력

A B C A B C JA KA JB KB JC KC

0

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

0

0

1

0

0

1

1

1

0

1

1

1

0

0

1

0

1

1

0

0

0

0

1

1

0

0

1

0

×

×

×

×

×

×

×

×

1

0

0

0

0

1

×

×

0

0

×

×

×

×

0

0

×

×

0

1

1

×

0

×

0

×

1

×

×

0

×

1

×

1

×

0

åååååå

==

==

==

)5,3(),,( )6,0(),,(

)7(),,( )1(),,(

)4(),,( )2(),,(

mCBAKmCBAJ

mCBAKmCBAJ

mCBAKmCBAJ

CC

BB

AAJA

KA

Q

Q

A

JB

KB

Q

Q

B

CP

3x8Decoder

D0

22

21

20

D1

D2

D3

D4

D5

D6

D7

JC

KC

Q

Q

C

상태도

논리도

상태여기표 및F/F 상태방정식

39한국기술교육대학교 전기전자통신공학부