자격증

정보처리기능사 - 2. 논리회로

Beekei 2025. 3. 13. 17:11
반응형

불대수

하나의 명제가 참 또는 거짓인지 판단하는 데 이용되는 수학적인 방법

1과 0의 두 가지 상태로만 표현하여 처리하는 2진 논리회로로 구성

기본적인 논리함수

  • AND: 입력 자료가 모두 1일 때 결과는 1 (A AND B 또는 A · B 또는 AB로 표현)
  • OR: 입력 자료 중 1개라도 1이면 결과는 1 (A OR B 또는 A+B로 표현)
  • NOT: 입력되는 정보의 반대값 출력 (NOT A 또는 A' 또는 A로 표현)

불 대수의 기본 공식

기본 공식 표현식
멱등법칙 A+A = A A⋅A = A
보수법칙 A+A' = 1 A⋅A' = 0
항등법칙 A+0 = A, A+1 = 1 A⋅0 = 0, A⋅1 = A
교환법칙 A+B = B+A A⋅B = B⋅A
결합법칙 A+(B+C) = (A+B)+C A⋅(B⋅C) = (A⋅B)⋅C
분배법칙 A⋅(B+C) = AB + A⋅C A+B⋅C=(A+B)(A+C)
드모르간 법칙 (A+B) = AB (A⋅B) = A+B

 


논리 게이트

논리회로를 구성하는 기본적인 전자소자, 0 또는 1을 입력과 출력함

AND 게이트

AND 게이트

 

입력이 모두 1일 때 1 출력

Y = A · B, Y = AB

 

 

OR 게이트

OR 게이트

 

입력 중 1개만 1이어도 1 출력

Y = A+B 

 

 

NOT 게이트

 

입력된 값을 반대로 변환하여 출력 (0 -> 1, 1 -> 0)

Y = A', Y = A

인버터(Inverter)라고도 불림

 

 

BUFFER 게이트

 

 

입력된 값을 그대로 출력

Y = A

NAND 게이트

 

NOT + AND, AND의 부정

Y = A⋅B, Y = AB

 

 

NOR 게이트

 

NOT + OR, OR의 부정

Y = A+B

 

XOR(Exclusive OR) 게이트

 

입력된 값이 모두 같으면 0, 한 개라도 다르면 1 출력

Y = A⊕B, Y = AB+AB

 

 

XNOR 게이트

 

NOT + XOR, XOR의 부정

Y = A⊙B, Y = A⊕B

 

 


조합논리회로

이전의 입력에는 관계없이 현재의 입력(0 또는 1)에 의해서만 출력이 결정되는 논리회로

기억 기능이 없고 반가산기, 전가산기, 디코더, 인코더, 멀티플래서, 디멀티플래서 등이 있습니다.

반가산기(HA: Half Adder)

1Bit짜리 2진수 2개(A, B)를 덧셈한 합(S)과 자리올림수(C)를 구하는 조합논리회로

  • S(Sum) = AB+AB = A⊕B
  • C(Carry) = AB

반가산기

 

진리표
A B S C
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1

전가산기(FA: Full Adder)

1Bit짜리 2진수 2개(A, B)뿐만 아니라 이전 단계에서 전달된 자리올림수(Ci)까지 3개(A, B, Ci)를 덧셈하여 합(S)과 자리올림수(Co)를 구하는 조합논리회로

  • S(Sum) = (A⊕B)⊕Ci
  • Co(Carry) = (A⊕B)Ci + AB

2개의 반가산기(HA)와 1개의 OR 게이트로 구성

진리표
A B Ci S Co
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1

디코더(Decoder)

n개의 입력선으로 입력된 2n개의 출력선으로 번역하는 회로, 주로 AND 게이트로 구성

2진 코드 -> 다른 코드로 변환

진리표
 
A B D0 D1 D2 D3
0 0 1 0 0 0
0 1 0 1 0 0
1 0 0 0 1 0
1 1 0 0 0 1

인코더(Encoder)

디코더의 반대 기능, 2n개의 입력선으로 입력된 값을 n개의 출력선으로 코드화해서 출력

정보를 다른 곳으로 전송하기 위하여 일정한 규칙에 따라 암호로 변환하는 장치

다른 코드 -> 2진 코드로 변환

블록(Block)도

멀티플렉서(MUX: Multiplexer)

2n개의 입력선 중 1개를 선택하여 그 선으로부터 입력된 값을 1개의 출력선으로 출력

블록(Block)도

 

디멀티플렉서(DeMUX: DeMultiplexer)

1개의 입력선으로 들어오는 정보를 2n개의 출력선 중 1개를 선택하여 출력

블록(Block)도

💡외우기
- 디코더: 2진 코드 -> 다른 코드 변환
- 인코더: 다른 코드 -> 2진 코드 변환
- 멀티플렉서: 2n개의 입력선을 1개로 변환
- 디멀티플렉서: 1개의 입력선을 2n개로 변환

순서논리회로

외부로부터의 입력과 현재 상태에 따라 출력이 결정되는 회로

기억 기능이 있으며, 플립플롭과 논리 게이트로 구성

플립플롭(FF: Flip-Flop)

전원이 공급되는 한, 상태의 변화를 위한 신호가 발생할 때까지 현재 상태를 그대로 유지하는 논리회로

플립플롭 1개가 1Bit를 저장할 수 있으며 기본적인 플립플롭은 2개의 NAND 또는 NOR 게이터를 이용하여 구성

플립플롭(FF) 회로

 

RS 플립플롭(Reset-Set FF)

플립플론의 기본으로, S와 R선의 입력을 조절하여 그대로 유지시키거나, 무조건 0 또는 1의 값을 기억시키기 위해 사용

특성표     ※ 순서논리회로에서는 진리표가 아닌 특성표
S R Q(t+1) 상태
0 0 Q(t) 상태 변화 없음(무)
0 1 0 Reset(공)
1 0 1 Set(일)
1 1 동작 안 됨 동작 안 됨(불)

※ Q(t): 입력 값, Q(t+1): 출력 값

 

D 플립플롭

RS FF의 R선에 인버터(Inverter)를 추가하여 S선과 하나로 묶어 입력선을 하나만 구성한 플립플롭 (D FF = RS FF + NOT Gate)

입력하는 값 그대로 저장하는 기능을 수행

특성표 
D Q(t+1) 상태
0 0 Reset
1 1 Set

※ Q(t): 입력 값, Q(t+1): 출력 값

 

JK 플립플롭

RS FF에서 S = R = 1 일때 동작되지 않는 결점을 보완한 플립플롭 (JK FF = RS FF + AND Gate 2개)

모든 플립플롭을 대용할 수 있으므로 응용 범위가 넓고, 가장 널리 사용

특성표
J K Q(t+1) 상태
0 0 Q(t) 상태 변화 없음(무)
0 1 0 Reset(공)
1 0 1 Set(일)
1 1 Q(t)' 반전(보)

※ Q(t): 입력 값, Q(t+1): 출력 값

 

T 플립플롭

JK FF의 두 입력선을 묶어서 1개의 입력선으로 구성한 플립플롭

원 상태와 보수 상태의 2가지 상태가 서로 전환, 토글(Toggle) 스위치에 사용

특성표 
T Q(t+1) 상태
0 Q(t) Reset
1 Q(t)' Set
※ Q(t): 입력 값, Q(t+1): 출력 값
💡외우기
- RS FF: 무공일불
- D: 무
- JK FF: 무공일보
- T: 보
반응형