논리 회로의 간소화 방법

왱구·2024년 1월 26일

스터디

목록 보기
21/21

참고자료 1 : https://circuit-designer.tistory.com/entry/%EA%B8%B0%EC%B4%88-%EB%85%BC%EB%A6%AC-%ED%9A%8C%EB%A1%9C-%EB%B6%80%EC%9A%B8-%EB%8C%80%EC%88%98%EC%9D%98-%EC%A0%95%EB%A6%AC%EC%99%80-%EB%B2%95%EC%B9%99%EC%97%90-%EB%8C%80%ED%95%B4-%EC%95%8C%EC%95%84%EB%B3%B4%EC%9E%90?category=1082790
참고자료 2 : https://kangdy25.tistory.com/59?category=1040262

1. 불대수

  • 하나의 명제가 참 또는 거짓임을 판단하는 데 사용되는 수학적 방법
  • 2진변수와 논리 동작을 취급하는 함수
  • 불대수를 사용하면 논리식을 간소화 하는데 유리

1) 불대수의 정리와 법칙

법칙
교환법칙x+y=y+x
x*y=y*x
결합법칙(x+y)+z=z+(y+x)
(x*y)*z=z*(y*x)
분배법칙x+(y*z)=(x+y)*(x+z)
x*(y+z)=(x*y)+(x*z)
항등법칙x+0=x
x+1=1
x*0=0
x*1=x
보수법칙x+x'=1
x*x'=0
멱등법칙x+x=x
x*x=x
흡수법칙x+(x*y)=x
x*(x+y)=x
부정법칙(x')'=x
1'=0
0'=1
드모르간법칙(x*y)'=x'*y'
(x+y)'=x'*y'

2) 진리표를 활용한 논리회로 구현

진리표를 활용해 논리회로를 구현하기 위해
2변수 논리회로,
3변수 논리회로
를 예시로 설명한다.

1) 2변수 진리표

A(입력)B(입력)F(출력)
001
010
101
111

논리식 : F=A'B'+AB'+AB이며
불 대수로 간소화 하면 F=A'B'+A(B'+B)=A'B'+A

2) 3변수 진리표

A(입력)B(입력)C(입력)F(출력)
0000
0011
0100
0111
1000
1011
1101
1111

논리식 : F=A'B'C+A'BC+AB'C+ABC'+ABC
불 대수로 간소화 하면
F=A'B'C + AB'C + A'BC + ABC + ABC'
= (A'+A) B'C + (A'+A) BC + ABC'
= B'C + BC + ABC'
= (B'+B) C + ABC'
= C + ABC'

2. 카르노 맵

  • 카르노 맵을 이용하면 더 직관적이고 간단하게 논리식을 간소화 가능

1) 2변수 카르노 맵

A(입력)B(입력)F(출력)
001
010
101
111

2변수 진리표


2변수 카르노맵
인접한 F가 1인 것들을 묶어낸다.
인접한 1끼리 직사각형 형태로 2^n개씩 묶어내야한다.

빨간색으로 묶은 부분을 간략화하면
A'B'+AB' = (A'+A) B' = B'
보라색으로 묶은 부분을 간략화하면
AB'+AB = A(B'+B) = A
결론
F=A+B'

위의 진리표의 결과와 비교해보면
진리표 : F=A'B'+A
카르노맵: F=A+B'

profile
늦깎이 애아빠 개발지망생

0개의 댓글