컴퓨터 과학과/컴퓨터 구조

[컴퓨터 구조] 컴퓨터와 디지털 논리회로

솔파니 2024. 9. 17. 02:41
반응형

1. 논리게이트

1-1. AND 연산

AND 게이트는 두 개 이상의 입력을 받아 모든 입력이 참(1)일 때만 출력을 참(1)으로 만드는 논리 연산이다. 이를 수식으로 나타내면, 두 입력 A와 B에 대해 AND 연산은 다음과 같이 표현된다.

$A⋅B=Y$

여기서 Y는 출력값을 나타내며, 입력이 모두 1일 때만 Y는 1이다. 진리표는 다음과 같다.

A B A · B (Y)

0 0 0
0 1 0
1 0 0
1 1 1

1-2. OR 연산

OR 게이트는 두 개 이상의 입력 중 하나라도 참(1)이면 출력을 참(1)으로 만드는 연산이다. 두 입력 A와 B에 대해 OR 연산은 다음과 같이 수식으로 표현된다.

여기서 Y는 출력값을 의미하며, 입력 중 하나라도 1이면 Y는 1이다. OR 연산의 진리표는 다음과 같다.

A B A + B (Y)

0 0 0
0 1 1
1 0 1
1 1 1

1-3. NOT 연산

NOT 게이트는 입력값을 반전시키는 연산이다. 입력이 참(1)이면 출력은 거짓(0), 입력이 거짓(0)이면 출력은 참(1)이 된다. NOT 연산은 다음과 같이 수식으로 표현된다.

여기서 Y는 출력값이며, 입력의 반대를 나타낸다. 진리표는 다음과 같다.

0 1
1 0

 

2. 불대수

2-1. 불함수의 표현

불함수는 논리게이트의 출력값을 함수로 나타낸 것이며, 불대수의 변수들은 0과 1로만 이루어져 있다. 예를 들어, 두 변수를 사용하는 불함수는 다음과 같이 표현된다.

이 함수는 두 입력의 논리 연산을 통해 다양한 출력값을 나타낼 수 있다.

2-2. 불함수의 진리표

불함수의 진리표는 입력값에 따른 출력값을 모두 정리한 표이다. 예를 들어, 위의 불함수에 대한 진리표는 다음과 같다.

0 0 0 1 1
0 1 0 0 0
1 0 0 0 0
1 1 1 0 1

2-3. 불대수의 공식

불대수의 공식은 논리 연산에서 변수를 단순화하거나 변환하는 데 사용된다. 중요한 불대수의 공식으로는 다음과 같은 것들이 있다.

2-4. 불함수의 간소화

불함수는 카르노 맵(K-map)이나 불대수 공식을 사용해 간소화할 수 있다. 예를 들어, 불함수

를 간소화하면 다음과 같다.

이 간소화 과정을 통해 논리회로의 복잡성을 줄일 수 있다.


3. 조합논리회로

3-1. 기본 연산회로

1. 가산기 (Adder)

가산기는 이진수 덧셈을 수행하는 회로이다.

1. 반가산기 (Half Adder)

반가산기는 두 개의 1비트 이진수를 더하는 회로로, 합(Sum)자리올림(Carry)을 출력한다. 수식으로는 다음과 같다.

2. 전가산기 (Full Adder)

전가산기는 세 개의 입력(A, B, C_in)을 더해 합(Sum)자리올림(Carry)을 출력한다.

2. 감산기 (Subtractor)

감산기는 이진수 뺄셈을 수행하는 회로이다. 반감산기와 전감산기는 반가산기와 비슷하지만 차이점은 뺄셈에 초점이 맞춰져 있다.

3. 가감산기 (Adder-Subtractor)

가감산기는 가산기와 감산기의 기능을 동시에 수행하는 회로로, 제어 신호에 따라 덧셈 또는 뺄셈을 수행한다.

3-2. MSI를 이용한 조합논리회로

1. 인코더 (Encoder)

인코더는 2^n 개의 입력 중 하나를 활성화하여 n개의 이진 출력으로 변환하는 장치이다.

2. 디코더 (Decoder)

디코더는 n개의 이진 입력을 받아 2^n개의 출력을 활성화시키는 장치이다.

3. 멀티플렉서 (Multiplexer)

멀티플렉서는 여러 개의 입력 중 하나를 선택해 출력으로 전송하는 장치이다.

4. 디멀티플렉서 (Demultiplexer)

디멀티플렉서는 하나의 입력 신호를 다수의 출력으로 분배하는 장치이다.


4. 순서 논리회로

4-1. 플립플롭 (Flip-Flop)

플립플롭은 1비트의 데이터를 저장할 수 있는 기본적인 기억 소자이다. D 플립플롭, SR 플립플롭, JK 플립플롭 등 다양한 종류가 있다.

4-2. 레지스터

1. 데이터 적재 레지스터

데이터 적재 레지스터는 입력 데이터를 저장하고, 이를 필요에 따라 출력하는 역할을 한다.

2. 시프트 레지스터

시프트 레지스터는 저장된 데이터를 좌우로 이동시키는 기능을 가진다.

4-3. 카운터

1. 2진 카운터

2진 카운터는 이진수의 값을 증가 또는 감소시키는 순차 회로이다.

2. 모듈로 N 카운터

모듈로 N 카운터는 N개의 상태를 가지며, 일정한 값에서 다시 0으로 초기화되는 카운터이다.

3. 링 카운터

링 카운터는 시프트 레지스터를 기반으로 하는 카운터로, 순환 구조로 동작하며 특정 상태를 반복한다.

반응형