목차
1. 분석
2. 설계
1) 진리표 작성
2) 카노맵 작성
3) NAND-NAND 회로의 표현
4) NOR-NOR 회로의 구현
3. 검증
2. 설계
1) 진리표 작성
2) 카노맵 작성
3) NAND-NAND 회로의 표현
4) NOR-NOR 회로의 구현
3. 검증
본문내용
1 0 0 0 0
1 1 0 1 1 0 1
1 1 1 1 0 0 1
0 1 1 0 0 1 1
1 0 1 1 0 1 1
0 0 1 1 1 1 1
1 1 1 0 0 0 0
1 1 1 1 1 1 1
1 1 1 0 0 1 1
x x x x x x x
x x x x x x x
x x x x x x x
x x x x x x x
x x x x x x x
x x x x x x x
위 그림에 따라 입력이 A, B, C, D인 7-세그먼트 표시기의 진리표는 다음과 같다.
이 진리표에 따라 출력 a~g의 값을 카노맵(Karnaugh map)으로 나타낼 수 있다. 카노맵으로 나타낸 후 각 출력을 SOP로 간략화하겠다. (우리 교재 7.6에서 다루어진 2단 다중출력회로 설계 기법은 2단 이상의 다중출력회로 설계에는 효과적이지 않으므로 각 함수를 따로따로 최소화하는 것이다.)
2) 카노맵 작성
AB
CD
00
01
11
10
00
1
0
x
1
01
0
1
x
1
11
1
1
x
x
10
1
0
x
x
AB
CD
00
01
11
10
00
1
1
x
1
01
1
0
x
1
11
1
1
x
x
10
1
0
x
x
AB
CD
00
01
11
10
00
1
1
x
1
01
1
1
x
1
11
1
1
x
x
10
0
1
x
x
a = A+BD+B'D+B'C(선택) b = B'+CD+C'D' c = B+C'+D a = A+BD+B'D'+CD
AB
CD
00
01
11
10
00
1
0
x
1
01
0
1
x
0
11
1
0
x
x
10
1
1
x
x
AB
CD
00
01
11
10
00
1
0
x
1
01
0
0
x
0
11
0
0
x
x
10
1
1
x
x
AB
CD
00
01
11
10
00
1
1
x
1
01
0
1
x
1
11
0
0
x
x
10
0
1
x
x
d = CD'+B'D'+B'C+BC'D e = CD'+B'D' f = A+C'D'+BD'+BC'
a 출력은 두 가지 식으로 나타낼 수 있다. B'C를 포함할 수도 있고 CD를 포함할 수도 있는데 여기서 다른 출력(b~g)과는 CD를 포함한 식이 게이트 수를 더 줄일 수 있으므로 B'C를 포함한 식을 선택한다. 이와 마찬가지로 g출력도 CD'을 포함한 식, BD'를 포함한 식으로 나타낼 수 있는데 출력 g에서는 어느 식을 골라도 게이트 수에 변함이 없다.
AB
CD
00
01
11
10
00
0
1
x
1
01
0
1
x
1
11
1
0
x
x
10
1
1
x
x
g = A+BC'+B'C+CD'
g = A+BC'+B'C+BD'(선택)
3) NAND-NAND 회로의 표현
SimuAid로 먼저 AND-OR회로도를 작성해본다.
※AND-OR 회로는 제출용이 아니므로 그림한장 첨부. 그림→
그리고 작성된 AND-OR 회로도를 이용해 간단히 NAND-NAND 회로를 구현한다.(파일제출)
4) NOR-NOR 회로의 구현
NAND-NAND뿐만 아니라 NOR-NOR 회로로도 구현할 수 있다. NOR-NOR회로를 구하기 위한 전 단계로 출력들의 OR-AND식을 구하기 위해 위의 카노맵에서 0을 맵핑하면,
a = (B'+D)(A+B+C+D')
b = (B'+C'+D)(B'+C+D')
c = B+C'+D
d = (B'+C'+D')(B'+C+D)(B+C+D')
e = D'(B'+C)
f = (B+C')(C'+D')(A+B+D')
g = (A+B+C)(B'+C'+D')이다.
그런데 OR-AND회로의 경우 Gates, Inputs들이 AND-OR 회로에 비해서 많으므로 결과적으로 NAND-NAND 회로가 NOR-NOR 회로보다 더 간결하다. (자세한 설명은 생략)
3. 검증
NAND로 구성한 조합회로의 입력값과 출력값이 진리표와 일치하는지 확인해보자.
1 1 0 1 1 0 1
1 1 1 1 0 0 1
0 1 1 0 0 1 1
1 0 1 1 0 1 1
0 0 1 1 1 1 1
1 1 1 0 0 0 0
1 1 1 1 1 1 1
1 1 1 0 0 1 1
x x x x x x x
x x x x x x x
x x x x x x x
x x x x x x x
x x x x x x x
x x x x x x x
위 그림에 따라 입력이 A, B, C, D인 7-세그먼트 표시기의 진리표는 다음과 같다.
이 진리표에 따라 출력 a~g의 값을 카노맵(Karnaugh map)으로 나타낼 수 있다. 카노맵으로 나타낸 후 각 출력을 SOP로 간략화하겠다. (우리 교재 7.6에서 다루어진 2단 다중출력회로 설계 기법은 2단 이상의 다중출력회로 설계에는 효과적이지 않으므로 각 함수를 따로따로 최소화하는 것이다.)
2) 카노맵 작성
AB
CD
00
01
11
10
00
1
0
x
1
01
0
1
x
1
11
1
1
x
x
10
1
0
x
x
AB
CD
00
01
11
10
00
1
1
x
1
01
1
0
x
1
11
1
1
x
x
10
1
0
x
x
AB
CD
00
01
11
10
00
1
1
x
1
01
1
1
x
1
11
1
1
x
x
10
0
1
x
x
a = A+BD+B'D+B'C(선택) b = B'+CD+C'D' c = B+C'+D a = A+BD+B'D'+CD
AB
CD
00
01
11
10
00
1
0
x
1
01
0
1
x
0
11
1
0
x
x
10
1
1
x
x
AB
CD
00
01
11
10
00
1
0
x
1
01
0
0
x
0
11
0
0
x
x
10
1
1
x
x
AB
CD
00
01
11
10
00
1
1
x
1
01
0
1
x
1
11
0
0
x
x
10
0
1
x
x
d = CD'+B'D'+B'C+BC'D e = CD'+B'D' f = A+C'D'+BD'+BC'
a 출력은 두 가지 식으로 나타낼 수 있다. B'C를 포함할 수도 있고 CD를 포함할 수도 있는데 여기서 다른 출력(b~g)과는 CD를 포함한 식이 게이트 수를 더 줄일 수 있으므로 B'C를 포함한 식을 선택한다. 이와 마찬가지로 g출력도 CD'을 포함한 식, BD'를 포함한 식으로 나타낼 수 있는데 출력 g에서는 어느 식을 골라도 게이트 수에 변함이 없다.
AB
CD
00
01
11
10
00
0
1
x
1
01
0
1
x
1
11
1
0
x
x
10
1
1
x
x
g = A+BC'+B'C+CD'
g = A+BC'+B'C+BD'(선택)
3) NAND-NAND 회로의 표현
SimuAid로 먼저 AND-OR회로도를 작성해본다.
※AND-OR 회로는 제출용이 아니므로 그림한장 첨부. 그림→
그리고 작성된 AND-OR 회로도를 이용해 간단히 NAND-NAND 회로를 구현한다.(파일제출)
4) NOR-NOR 회로의 구현
NAND-NAND뿐만 아니라 NOR-NOR 회로로도 구현할 수 있다. NOR-NOR회로를 구하기 위한 전 단계로 출력들의 OR-AND식을 구하기 위해 위의 카노맵에서 0을 맵핑하면,
a = (B'+D)(A+B+C+D')
b = (B'+C'+D)(B'+C+D')
c = B+C'+D
d = (B'+C'+D')(B'+C+D)(B+C+D')
e = D'(B'+C)
f = (B+C')(C'+D')(A+B+D')
g = (A+B+C)(B'+C'+D')이다.
그런데 OR-AND회로의 경우 Gates, Inputs들이 AND-OR 회로에 비해서 많으므로 결과적으로 NAND-NAND 회로가 NOR-NOR 회로보다 더 간결하다. (자세한 설명은 생략)
3. 검증
NAND로 구성한 조합회로의 입력값과 출력값이 진리표와 일치하는지 확인해보자.