simplification of stilciitsequential...

64
Chapter 9 Simplification of S ti l Ci it Sequential Circuits

Upload: others

Post on 04-Nov-2019

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

Chapter 9

Simplification ofS ti l Ci itSequential Circuits

Page 2: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9. Simplification of Sequential Circuits

9.1 State reduction: 함축표 법

9.2 State reduction: 등가 클래스 법

9 3 Choosing a State Assignment9.3 Choosing a State Assignment

Page 3: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction

★ 상태할당 알고리즘(State assignment algorithm): 다음 조건들을 최대한 만족하는

상태들은 인접한 코드를 할당.

규칙1 : 동일한 차기 상태를 갖는 두 상태

규칙 2 : 하나의 상태로부터 천이되는 차기 상태들

규칙 3 동일한 출력을 내는 상태들규칙 3 : 동일한 출력을 내는 상태들

* 우선 순위 : 규칙 1 > 규칙 2 > 규칙 3

★등가 상태(State equivalence)

*Two states Sa and Sb, are equivalent iff for every possible input sequence, the t t th d th t t t i l toutputs are the same and the next states are equivalent.

* Properties:(1) 대칭성(Symmetry): If Sa = Sb , then Sb = Sa ( ) 대칭성( y y) ,(2) 재귀성(Reflexivity): If Sa = Sa , for any state

(3) 천이성(Transitivity): If Sa = Sb , and Sb = Sc , then Sa = Sc

Page 4: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

★ 동기순서회로의 경제적 구현방법

1.상태수의 축소:

* 플립플롭 수가 작아진다.

* 등가인 상태들을 찾아 하나의 상태로 나머지 등가인 상태들을 대치하여 사용

2 효과적인 상태할당: 플립플롭 구동 게이트 수가 작아진다2.효과적인 상태할당: 플립플롭 구동 게이트 수가 작아진다

* 각 상태에 어떤 코드를 할당하느냐에 따라 게이트 수가 다르게 나타날 수 있음

★ 상태 감축법(State reduction)

1. 등가 클래스(Equivalence classes) 법:

* 주어진 입력에 대한 다음 상태 및 출력을 바탕으로 전체 상태를 같은 성질을

가진 상태 클래스로 분류하여 상태 수를 축소하는 방법

2 함축표(Implication chart) 법:2. 함축표(Implication chart) 법:

* 그래프를 이용하여 다음 상태 및 출력을 이용하여 전체 상태들 가운데서 등가가

아닌 상태를 제거하는 방법

Page 5: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

★ 함축표 (Implication chart) 법

등가 상태가 될 가능성이 있는 상태를 짝으로 묶는 표를 구성하여 상태를 축소* 등가 상태가 될 가능성이 있는 상태를 짝으로 묶는 표를 구성하여 상태를 축소하는 그래프적 방법.

(S S ) (S S ) (S S ) (S S ) (S S ) (S S )(S0, S1), (S0, S2), … (S0, Sn), (S1, S2), (S1, S3), … (Sn-1, Sn)

Implies the possibility that S0 = S1

S1

S2

0 1

* 함축표: - 가로축: 전체 상태 중에서 마지막

상태를 제외한 나머지 상태를 좌에서 우

S3

S4

의 순서로 정렬

- 세로축: 전체 상태 중에서 처음 상

S5

S0 S1 S2 S3 S4

태를 제외한 나머지 상태를 상에서 하로의 순서로 정렬

Page 6: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

S0 X 1 2 4 7 11

S1 1 X 3 6 8 12S1 1

S1 1 X 3 6 8 12

S2 2 3 X 6 9 13

S3 4 5 6 X 10 14

S2 2 3

S3 4 5 6

S4 7 8 9 10S3 4 5 6 X 10 14

S4 7 8 9 10 X 15

S5 11 12 13 14 15 X

S4 7 8 9 10

S5 11 12 13 14 15

S0 S1 S2 S3 S4 S5S0 S1 S2 S3 S4 S5

S0 S1 S2 S3 S4 S5

S1

S2

Implies the possibility that S0=S

1

S3

S4

S5

S0

S1

S2

S3

S4

Page 7: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

S5 11 12 13 14 15 XS4 15

S4 7 8 9 10 X 15

S3 4 5 6 X 10 14

S2 2 3 X 6 9 13

S3 10 14

S2 6 9 13S2 2 3 X 6 9 13

S1 1 X 3 5 8 12

S0 X 1 2 4 7 11

S1 3 5 8 12

S0 1 2 4 7 11S0 X 1 2 4 7 11

S0 S1 S2 S3 S4 S5S0 S1 S2 S3 S4 S5

함축표 그리기 매우 불편!!!

Page 8: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

차기상태

* 상태 축소 과정(State reduction procedures)

S

Implies the possibility that S0 = S1

현재상태

차기상태

x = 0 z x = 1 z

S1

S2

상태

S0

S1

S4

S5

00

S3

S3

10

S3

S1

S2

S3

S4

S

5

S4

S5

S2

S

0000

3

S1

S1

S5

S

1010

S4

S5

S5 S1 0 S2 0

표 상태표

S0 S1 S2 S3 S4

표 채워지지 않은 함축표표. 상태표 표. 채워지지 않은 함축표

[Step 1]: 주어진 상태표로부터 채워지지 않은 함축표 작성(함축표 내의 사각형은 등가 상태가 될 가능성이 있는 상태들의 조합을 나타냄)

Page 9: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

차기상태S1

현재상태 x = 0 z x = 1 z S2

S

S1, S3

S SS0

S1

S2

S

S4

S5

S4

S

0000

S3

S3

S1

S

1010

S3

S4

S1, S3

S2, S4S

3, S

5

S2, S4S

1, S

5S3

S4

S5

S5

S2

S1

000

S1

S5

S2

010

S5

S0 S1 S2 S3 S4

S1, S5S

2, S

3

S1, S5S

1, S

2

표. 상태 표

0 1 2 3 4

표. 함축표

[Step 2]: 함축표에 나타난 각각의 사각형에 대하여 출력이 서로 다른 사각형에‘X’표 표시 (서로 같을 수 없음을 나타냄)

[Step 3]: 나머지 사각형에 대하여 2가지 상태가 같아질 조건을 표시

Page 10: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

S1

S2

S

S1, S3

S S

S1

S3

S4

S1, S3

S2, S4S

3, S

5

S2, S4S

1, S

5

S2

S

S1, S3

S S

S5

S0 S1 S2 S3 S4

S1, S5S

2, S

3

S1, S5S

1, S

2

S3

S4

S1, S3

S2, S4S

3, S

5

S2, S4S

1, S

50 1 2 3 4

표. 함축표S5

S0 S1 S2 S3 S4

S1, S5S

2, S

3

S1, S5S

1, S

2

[Step 4]: 각각의 사각형 내에 표시된 함축된 등가 상태 조건을 검사하여 서로같아질 수 없는 쌍이 존재하는 사각형은 ‘X’로 표시

0 1 2 3 4

[Step 5]: 최종적으로 남은 사각형을 나타내는 상태만이 등가 상태를 구성S0 = S2, S1 = S3

Page 11: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

Page 12: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

Page 13: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

Page 14: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

Page 15: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

10/0

A11/1

00/0; 11/100/0

01/0 11/1

B C01/0

01/0

00/010/0

D E

10/1 00/0;01/0;11/1

00/0

10/1 11/1

D E

10/0

00/0

01/0

Page 16: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

차기상태, xy/z

현재상태 00 z 01 z 11 z 10 z

A B 0 C 0 B 1 A 0BCDE

EACC

0000

CBDC

0000

BCAC

1111

DDBE

1100E C 0 C 0 C 1 E 0

표. 상태표

Page 17: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

B B

C

D

B, CA, E

B C;

C

D

B, CA, E

B C;D

EA, EB C

B, C;D, C, A, B

C, D; B, EA C

D

EA, EB C

B, C;D, C, A, B

C, D; B, EA C

A B C D

B, C A, C

함축표 처리결과

A B C D

B, C A, C

함축표 처리결과

Page 18: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

Page 19: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

차기상태, xy/z

현재상태 00 z 01 z 11 z 10 z

AB

BE A

00

CC

BB

00

BB

11

AD

01B

C BDE A

EACC

A

BB

0000

CBDC

B

B

0000

BCAC

B

B

1111

DDBE A

1100

차기상태, xy/z

수정된 상태표

현재상태 00 z 01 z 11 z 10 z

S0S1

S1S0

00

S1S1

00

S1S1

11

S0S2

011

S2

0S1 0

1S2 0

1S0 1

2S1 0

상태명을 변경한 후의 간략화된 상태표

Page 20: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

10/0

S0

11/1

00/0

00/0, 01/0, 11/1

S1 S210/1

00/0, 10/0

01/0, 11/1

01/0

간략화된 Mealy 상태도

Page 21: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

Page 22: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

Page 23: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

현재상태

차기상태, x/Z2Z1

0 Z Z 1 Z Z상태 x = 0 Z2 Z1 x = 1 Z2 Z1

01

04

00

00

12

00

001

2345

47265

00010

00101

21654

00101

000015

678

5138

0010

1101

4687

1101

10018 8 0 1 7 1 1

표 6.3.4.3 상태표

Page 24: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

0, 41, 2

10, 41, 2

1

0, 7

3

21, 24, 7

0, 7

3

21, 24, 7

5

4

5

4

6

7

1, 2

3, 65, 8

6

7

1, 2

3, 65, 8

8

0 1 2 3 4 5 6 7

5, 84, 7

표 6 3 4 3의 함축표 표 6 3 4 3에 대한 완성된 함축표

8

0 1 2 3 4 5 6 7

5, 84, 7

표 6.3.4.3의 함축표 표 6.3.4.3에 대한 완성된 함축표

Page 25: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

차기상태

현재상태

차기상태

x = 0 Z2 Z1 x = 1 Z2 Z12 1 2 1

01

04

00

00

12 1

00

001

2 1345

47 42 16 35

00010

00101

2 116 354

00101

000015

6 37 48 5

5138 5

0010

1101

46 38 57 4

1101

10018 5 8 5 0 1 7 4 1 1

수정된 상태표

Page 26: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.1 State reduction: 함축표 법

차기상태

현재상태 x = 0 Z2 Z1 x = 1 Z2 Z1

ABCD

ADBC

0001

0010

BBCE

0010

0000D

ECE

10

01

ED

01

01

상태명을 변경한 후의 간략화된 상태표

Page 27: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

차기상태

★ State reduction procedures 예제

차기상태

현재상태

차기상태

x = 0 z x = 1 z현재상태

차기상태

x = 0 z x = 1 z상태

S0

S1

S4

S5

00

S3

S3

10

상태

S0

S2

S4

S4

00

S3

S1

111

S2

S3

S4

S

5

S4

S5

S2

S

0000

3

S1

S1

S5

S

1010

2

S4

S1

S3

S

4

S2

S5

S5

S

0000

1

S5

S3

S1

S

1000S5 S1 0 S2 0

표 상태 표

S5 S1 0 S2 0

표 상태 표의 분류표 6.3.4.1 상태 표 표 6.3.4.1 상태 표의 분류

[Step 1-1]: 동일한 입력에 대하여 동일한 출력을 가지는 상태끼리 분류C1= (S0, S2, S4) , C2= (S1, S3, S5)

Page 28: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

* State reduction procedures

현재상태

현재상태

차기상태

x = 0 z x = 1 z

차기상태

x = 0 x = 1

C1

S0

S2

C1

C1

C2

C2

상태 x = 0 z x = 1 z

S0

SS4

S00

S3

S11 C1

C2

S2

S4

S1

S3

C1

C1

C2

C2

C2

C2

C2

C2

S2

S4

S1

S3

S4

S2

S5

S5

0000

S1

S5

S3

S1

1100

S5 C2 C1

표 상태 표 1 등가 차기 클래스표

3

S5

5

S1 01

S2 0

표 6.3.4.1 상태 표 1-등가 차기 클래스표

[Step 1-2]: 분류된 상태표로부터 1-등가 차기 클래스표 작성

Page 29: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

차기상태 차기상태

현재현재상태 x = 0 x = 1 x = 0 x = 1

현재상태

C11S0

S2

S

C11

C11

C

C21

C21

CC1

S0

S2

S

C1

C1

C

C2

C2

C

C21

C22

S4

S1

S3

S5

C11

C22

C22

C21

C22

C21

C21

C11

C2

S4

S1

S3

S5

C1

C2

C2

C2

C2

C2

C2

C1

2 등가 차기 클래스표 1 등가 차기 클래스표

5 2 1

2-등가 차기 클래스표 1-등가 차기 클래스표

[Step 2]: 1-등가 차기 클래스표를 이용하여 Step-1에서와 같은 방법으로2-등가 차기 클래스표 작성

Page 30: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

차기상태차기상태

현재상태 x = 0 x = 1

현재상태 x = 0 x = 1

S0

S2

S4

S

C111

C112

C112

C112

C111

C

C211

C211

C221

C

C11S0

S2

S

C11

C11

C

C21

C21

C S1

S3

S5

C211

C221

C221

C221

C211

C211

C211

C111C21

C22

S4

S1

S3

S5

C11

C22

C22

C21

C22

C21

C21

C11

3-등가 차기 클래스표

2 등가 차기 클래스표

[Step 3]: 2-등가 차기 클래스표를 이용하여 Step-1에서와 같은 방법으로

2-등가 차기 클래스표

3-등가 차기 클래스표 작성

Page 31: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

차기상태

현재상태 x = 0 x = 1

S0

S2

S4

S

C111

C112

C112

C112

C111

C

C211

C211

C221

CS1

S3

S5

C211

C221

C221

C221

C211

C211

C211

C111

4-등가 차기 클래스표

[St 4][Step 4]: * k-등가 차기 클래스표를 이용하여 Step-1에서와 같은 방법으로

(k+1)-등가 차기 클래스표 작성

* k-등가 차기 클래스표와 (k+1)-등가 차기 클래스표 가 같으면 멈춤

Page 32: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

차기상태

현재상태 x = 0 x = 1

S0

S2

S4

S

C111

C112

C112

C112

C111

C

C211

C211

C221

CS1

S3

S5

C211

C221

C221

C221

C211

C211

C211

C111

4-등가 차기 클래스표

[Step 5]: (k+1) 등가 차기 클래스표 내의 각각의 클래스에 속하는 상태를 같은 상태로 할당* (k+1)-등가 차기 클래스표 내의 각각의 클래스에 속하는 상태를 같은 상태로 할당

* 최종 상태 4가지: S0 = S2, S1= S3 , S4, S5

* 같은 상태로 할당된 상태를 바탕으로 상태표를 다시 작성

Page 33: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

차기상태

현재상태 x = 0 z x = 1 zS0

SS4

S00

S3 S1

S S10

S0 = S2, S1= S3S1

S2 S0

S3 S1

S4

S5

S4

S5

S2 S0

0000

S3 S1

S1

S1

S5

01014

S5

2 0

S1 05

S2 S0 0

차기상태

수정된 상태표

현재상태 x = 0 z x = 1 z

S0 S4 0 S1 1S1

S4

S5

S5

S0

S1

000

S1

S5

S0

010 간략화된 상태표

Page 34: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

P0 = (A)(B)(C)(D) P8 = (AC)(BD)

P1 = (AB)(C)(D)

P2 = (AC)(B)(D)

P9 = (AD)(BC)P10 = (ABC)(D)

2 ( )( )( )

P3 = (AD)(B)(C)P11 = (ABD)(C)P12 = (ACD)(B)

P4 = (A)(BC)(D)

P5 = (A)(BD)(C)

12 ( )( )P13 = (A)(BCD)PN = (ABCD)5

P6 = (A)(B)(CD)

P (AB)(CD)

PN (ABCD)

P7 = (AB)(CD)

Page 35: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

Page 36: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

Page 37: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

• Pa Pb if and only if all states in the same block of Pb are also in the same block of P .in the same block of Pa .

• Two states are in the same block of product Pc if and only if they are in the same block of both P and Pthey are in the same block of both Pa and Pb .

• Two states are in the same block of the sum Pd if they are in the same block of either P or P or bothsame block of either Pa or Pb or both.

Step 1: For each pair of states, find the smallest SP partition that h i h bl kputs those two states in the same block.

Step 2: Find the sum of all of the SP partitions found in step 1 and, if new ones are found, repeat step 2 on these new ones.

Page 38: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

(AB) (CD) (AB)(CD) = P1

(AC) (AB) (CD) (ABCD) = PN(AC) (AB) (CD) (ABCD) PN

(AD) (BC) (AD)(BC) = P2(BC) (AD) (AD)(BC) = P(BC) (AD) (AD)(BC) = P2(BD) (AB) PN(CD) (AB) (AB)(CD) = P1

Page 39: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

Page 40: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

P1 = (ACE)(B)(D) P5 = (A)(B)(CE)(D)P1 (ACE)(B)(D) P5 (A)(B)(CE)(D)P2 = (ADE)(BC) P6 = (ACE)(BD)P3 = (AE)(B)(C)(D) P7 = (AE)(BD)(C)P4 = (A)(BD)(C)(E) P8 = (A)(BD)(CE)

Page 41: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.2 State reduction: 등가 클래스 법

Page 42: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

Page 43: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

P1 = (AB)(C)(DF)(E) P6 = (AB)(CE)(DF)1 ( )( )( )( ) 6 ( )( )( )P2 = (ABC)(DEF) P7 = (ABDF)(C)(E)P3 = (AD)(B)(C)(E)(F) P8 = (ABDF)(CE)P4 = (AF)(BD)(C)(E) P9 = (AD)(BF)(C)(E)P5 = (A)(BF)(C)(D)(E)

Page 44: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

P1 = (AB)(C)(DF)(E) P9 = (AF)(BCDE)1 ( )( )( )( ) 9 ( )( )

1 1 2 2 2D x q D xq x q

Page 45: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

3 2 3 1 2 1 3D x q q xq q z x q xq

Page 46: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

State Assignment algorithm

Page 47: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

State Assignment algorithm

* Some simple guidelines for obtaining state assignments

(1) Rule I: Two or more present states that have the same next state for a given input combination should be made adjacent.

(2) Rule II: For any present state and two adjacent input combinations, the two next states should be made adjacent.

(3) Rule III: Tow or more present states that produce the same output symbol, I.e., 0 or 1, for a given input combination should be made adjacent. This rule need only be applied to one of the output symbols.

* Priorities: Rule I > Rule II > Rule III 의 순서로 우선

Page 48: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

Some simple guidelines for obtaining state assignments

(1) Rule I: Two or more present states that have the same next state for a given input combination should be made adjacent.

Page 49: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

01/Z

A

00 01 11 10F0

F2F1

01/ZB

C

E01/Z01/Z

0 2 6 4

00 01 11 10

0

F0

CA

D

C01/Z

1 3 7 5

1 DB

[상태할당 규칙 1의 예](a) 부분 상태도 (b) K-Map

Page 50: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

Some simple guidelines for obtaining state assignments

(2) Rule II: For any present state and two adjacent input combinations, the two next states should be made adjacent.

Page 51: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

B

C00 01 11 10F0

F2F1

C

D

A0

1

2

3

6

7

4

5

00 01 11 10

0

0

EDCB

E

1 3 7 5

1

[상태할당 규칙 2의 예](a) 부분 상태도 (b) K-Map

Page 52: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

Some simple guidelines for obtaining state assignments

(3) Rule III: Tow or more present states that produce the same output symbol, i.e., 0 or 1, for a given input combination should be made adjacent. This rule need only be applied to one of the output symbols.This rule need only be applied to one of the output symbols.

Page 53: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

차기상태차기상태 및 출력

상태 X = 0 X = 1

A A/0 C/0

현재상태 x = 0 x = 1

A A CABCD

A/0C/1A/1B/0

/

C/0D/0F/1E/0/

ABCD

ACAB

CDFE

EF

C/0D/0

C/1E/1

EF

CD

CE

표9 상태표에 출력이 포함된 경우 및 포함되지 않은 경우

★ Unused states의 처리★ Unused states의 처리* Don’t care로 처리: 간단* 초기 상태로 처리: 만일의 사태에 대비할 수 있음

Page 54: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

Page 55: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

Page 56: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …
Page 57: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

00 01 11 10F1

F3F2

00 01 11 10F1

F3F2

0

1

2

3

6

7

4

5

0 CDFA0

1

2

3

6

7

4

5

00 01 11 10

0

1

EBFA

1 BE1 3 7 5

1 DC

(a) 상태할당 #1 (b) 상태할당 #2

0 2 6 4

00 01 11 10F1

F3F2

(a) 상태할당 #1 (b) 상태할당 #2

1 3 7 5

1

0

E B

FA

D

C

1 E BD

(c) 상태할당 #3

표 9에 대한 상태할당 맵

Page 58: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

상태 F3 F2 F1 상태할당 3

AB

01

00

01

상태할당 1ABC

001

010

010

BCDE

1000

0110

1011

CDEF

1100

0101

0010

Fd*

d*

111

011

001

d*

d*

11

01

11

상태할당 2

* 무관항(Don’t care) 상태

상태할당 2ABCD

0101

0100

0011

표 9에 대한 3가지 상태할당 방법DEFd*

1100

0011

1001

d* 1 1 1

Page 59: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

Page 60: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

Page 61: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

Page 62: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

* 표 9에 대한 2진 상태 할당

상태 F3 F2 F1

ABCD

0000

0011

0101D

EFd

0111

1001

1010

d 1 1 1

Page 63: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

차기상태

현재상태 X 0 X 1

* State assignment techniques

현재상태 X = 0 X = 1

F2 F1 D2 D1 D2 D1

상태할당 1

차기상태

상태할당 1

ABC

001

010

001

0/00/01/0

010

1/00/01/0

상태표

현재상태

차기상태

x = 0 x = 1

A A/0 B/0

D 1 1 0/

0/1 0/

1/0

상태할당 2

A 0 0 0 0/0 0 1/0

BCD

A/0D/0A/1

C/0B/0B/0

BCD

011

110

010

0/00/00/1

100

1/01/01/0

상태할당

Page 64: Simplification of StilCiitSequential Circuitsyu.ac.kr/~shkwon/lectures/dc/dc_ch9.pdf하는그래프적방법. (S0, S1)(S), (S0, S2)(S), … (S0, Sn)(S), (S1, S2)(S), (S1, S3)(S), …

9.3 Choosing a State Assignment

No of stateNo. of state

variables No of nonequivalentNo. of state(N)

variables(M)

No. of nonequivalentstates (S)

2 1 12345

1223

133

1406789

3334

420840840

10 81×1069101620

4445

10.81×106

75.67×106

54.48×109

143.14×1021

Nonequivalent state assignment possibilities for example stateand state