CS/디지털 논리회로

방송통신대학교 <디지털논리회로> 1학기 중간 기말 고사 대비 총정리 #1

Entkommen 2024. 5. 23.
728x90

 

방통대 디지털 논리회로

 

중간 출석수업을 실수로 듣지 못해

 

(다른 시간으로 옮기려다가 옮기고 난 후 다시 돌릴 수 있는 걸 알아서 이것저것 건들다가 대체시험으로 신청해버렸고.. 취소가 안되었음) 

 

대체시험을 보게 되었습니다. 

 

기말고사 전에 대체시험을 보는 장점은

그래도 그 과목을 한 번 더 리뷰하게 된다는 점인것 같습니다. 

 

공부하시는 분들에게 그래도 전부는 아니더라도 약간의 기억을 상기시킬 수 있는 정도로

 

시험 100% 대비는 아니지만 내가 부족한 부분을 점검할 수 있도록 

내용을 구성해 보았습니다. 

(공부하며 지속 추가 예정)

 

이번 포스팅에서는 

아래 목차의 첫 세 개 부분에 해당하는 내용을 담아보았고 총 세 개의 포스팅으로 작성할 예정입니다. 

 

 


목차

 

: 컴퓨터와 디지털 논리회로 및 데이터 표현

: 논리게이트와 부울대수

: 부울함수의 간소화 및 구현

: 조합논리회로

: 순서논리회로

: 레지스터와 카운터

: 기억장치와 PLD

 


컴퓨터와 디지털 논리회로 및 데이터 표현

이 장은 특별히 어려운 내용은 없고 아래 내용들을 개괄적으로 알아두고

 

진법과 보수에 관해 아는 것이 중요한 것 같다. 

 

1. 시스템은 블랙박스 / 구성요소집합 으로서의 시스템 두가지 종류가 있고

블랙박스는 입력, 출력을 가진다.  구성요소 집합 시스템은 블랙박스의 내부를 규정한다. 

 

2. 디지털은 이산적인, 아날로그는 연속적인 데이터이다. 

 

3. 디지털 논리회로(기본 논리게이트 : NOR NAND) 는 '조합논리회로' (저장요소 없음) / '순서논리회로' (저장요소 있음 - 저장을 할 수 있으니 '순서'를 알 수 있다고 기억) 

 

4. 컴퓨터는 '입력 출력 기억 제어 연산 ' 다섯개의 장치로 구성된다. 

 

5. 양논리(높은게 1, 낮은게 0) 음논리( 그 반대 )

 

진법과 보수

2진법을 기준으로 '1의 보수' '2의 보수' 구하는 법

2진법 수 1001 이있다고 치면, 각각을 반대로 표현한 0110이 1의보수가 되고

그것에 1을 더한 0111이 2의보수가 됨 

 

2진법 사이의 뺄셈 A - B가 있다고 치면

B의 1의보수를구해서 1을 더한 값을 A에 더한 뒤 맨 첫자리의 올림수를 제거 하면 된다. 

 

10진수의 보수는 9의 보수 10의 보수가 있는데

88의 보수는 10^2(자리수만큼 제곱) - 88 = 12가 10의 보수가 되고 

11이 9의 보수가 된다. 

 

 

논리게이트와 부울대수

 

같은 값이 들어와야만 참 : AND

하나만 참이어도 참 : OR

들어온 값의 반대를 출력 : NOT

둘 다 다른값이어야 참 : XOR

둘 다 같은 값이어야 참 : XNOR 

 

위와 같은 것들이 논리게이트 각각의 기호를 알아야한다. 

 

부울대수는 이런 논리연산자로 이루어진 식을 말함

 

이것이 이제 미지수와 연결되어 부울 함수가 되고

 

부울함수는 1) 대수적 간소화 방법(이산수학에서 다루는 부울 대수법칙 활용)

이있고, 2) 카르노 도표를 사용한 방법이 있다. 

 

 

부울함수의 간소화 및 구현

최소항과 최대항

곱의 합으로 표현 : 최소항 ( 각 항의 값이 0이 됨) 

합의 곱으로 표현 : 최대항 ( 각 항의 값이 1이 됨) 

 

최소항을 보통 씀

XYZ 삼변수의 경우 맨 오른쪽부터 1, 2, 4 로 생각해서

이진법으로 카운트 하듯 세면 

 

m0 m1 m2.. m7 까지 표현됨

위에 바(여기서는 ' 로 표현)가 안씌워지면 1로 생각하고

씌워지면 0으로 보면됨 

 

 예 : X'Y'X -> X만 불들어온거니까 100으로 보고 m4 로 보면됨

이 m표현을 알아야 하는 이유가 카르노 도표 때문이다. 

 

부울함수의 정규형

 

위에서 나온 개념임

아래처럼 표현된걸 정규형이라고 함 

F(X,Y,Z) = 시그마(최소항의 합 -> m0 , ... )  / 결과가 1인것 

F(X,Y,Z) = 파이(최대항의 곱) / 결과과 0인것 

 

카르노 도표 

 

 2변수 / 3변수 / 4변수 가 있다. 

묶는 것은 2의 제곱수 만큼 묶을 수 있음(2, 4, 8개 .. ) 

근데 대체로 2개나 4개에서 끝

 

묶는것은 옆에 1로 표시된 항들이 좌우로 인접할때(대각선은 안됨)

혹은 위아래로 인접할때 묶을 수 있음

표의 끝단에서 인접해도 묶을 수 있는게 주의점

(교수님은 원통으로 생각하라고 함) 

 

무관항은 X로 표시해서

1로 생각하고 묶으면 됨(필요하면 묶고 아니면 냅두면됨)

 

4변수 도표의 경우 각 귀퉁이로도 1이 존재하면 묶을 수 있음

또 X xor Y xor Y 위에 바가 씌어진 형태의 경우 특이한 모습이니 기억해둘것 

 

2변수 (X, Y로 예시) 

좌측 수직으로 Y, 우측으로는 X로 생각

아래처럼 m0, 1, 2, 3 (각각 00 01 10 11) 으로 보고

주어진 부울함수에 해당하는 부분을 체크 한 다음 카르노도표 묶어서 푸는 방식을 적용하면 됨

 

Y/X 0 1
0 m0 m1
1 m2 m3

 

 

3변수 (X, Y, Z 로 예시) 

**특이한점 아래 빨간표시로 된것처럼 , YZ가 11인게 먼저 작성되어 m3, m7이 m2, m6 보다 앞에옴

 

X/YZ 00 01 11 10
0 m0 m1 m3 m2
1 m4 m5 m7 m6

 

 

4변수 (X, Y, Z 로 예시) 

WX/YZ 00 01 11 10
00 m0 m1 m3 m2
01 m4 m5 m7 m6
11 m8 m9 m11 m10
10 m12 m13 m15 m14

 

 

 


 

다음 포스팅 바로 가기

 

728x90