728x90

1. CPU 개요

CPU

- Central Processing Unit

- 산술 연산과 논리 연산 처리

 

산술 연산

- +/- 연산

 

논리 연산

- AND/OR/NOT 등 연산

 

컴퓨터의 5대 장치

- CPU의 제어/연산 장치

- 나머지로 입력/기억/출력 장치

 

메모리(주기억장치)

- CPU에 연산할 데이터와 프로그램 전달

- CPU는 연산 결과를 메모리에 저장(혹은 레지스터에)

 

ALU

- Arthmetic Logit Unit 산술 논리 장치

디지털과 0,1

- 디지털을 표현하기 위해 0과 1로 나타냄

- CPU 내부 등 전기 신호로 LOW 전압, HIGH 전압 과같이 전기 신호로 이용

 

 

2. 디지털 연산

10진수와 2진수

- 2진수로 10진수 표현 가능

- 1011(2) -> 11(10)

- 4(10) -> 100(2)

 

고정 소수점

- 0.000001

- 12340000.

 

부동 소수점

- 1.23 x 10^2

- 1.23 x 10^-6

 

2진수 뺄샘과 보수

- 보수와 덧셈을 하면 뺀 것과 같음.

- "-15"는 "+(-15)"와 동일함

- "-15"를 다른 숫자로 표현하는 방법이 필요

- B 식의 자리 올림(캐리)를 제외하면 A식과 결과가 동일함

- 위의 경우 15에 대해 85는 100의 보수.

 

보수

- 더하면 자리수가 올라가는 수.

- 뺄셈 = "보수와 덧셈"

 

2진수 뺄셈과 2의 보수

- 캐리를 무시하고 결과 모든 자리가 0이 되는 보수를 2의 보수라 한다.

 

2의 보수 구하는 방법

IC(Integrated Circuit 집적 회로)

- 논리 회로의 모음

- 아래는 예시로 74LS08

논리 회로(Logic Circuit)

- 입력 2개, 1개 출력
- 대표적으로 AND, OR, NOT

- 이 논리 회로/논리 게이트(Logic Gate)들을 조합하여 NAND, NOR, EXOR 등 만듬

 

드모르간의 정리

- AND연산과 OR 연산은 치환 가능

 

반 가산기(Half Adder)

- 덧셈 연산하는 회로

- 1비트(1자리) 끼리 덧셈 가능

- 여러 자리의 덧셈 처리 불가 -> 전가산기

 

전 가산기(Full Adder)

- 총 3개 입력 = 기본 입력 2개 + 캐리 여부(자리 올림) 입력 1개

- 출력 2개 = 합 S와 캐리 C

- 반 가산기 2개와 OR 게이트 1개로 구성

순차 자리 올림 가산기(Ripple Carry Adder)

- 가산기를 이어 여러 자리의 덧셈을 할수 있는 가산 회로

- 가산기 4개를 이으면 4 자릿수 연산 가능

 

래치(Latch)

- 데이터를 유지하는 것

- "1" 상태를 유지 -> 래치

플립 플롭(FF:Flip Flop)

- 값을 기억하는 회로

- 1비트 데이터(0/1)을 기억할 수 있음.

- 대표적인 플립플롭으로 RS 플리플롭, D 플립플롭, T 플립플롭

-> 메모리와 레지스터, 카운터 등도 플립플롭으로 만듬 

 

RS 플립플롭

- R(Reset), S(set)를 입력으로 받는 플립플롭

- S=1 이면 Q=1

- S=0 이면 Q=0

RS 플립플롭 - NAND 게이트

- RS 플립플롭은 NAND 게이트로 구현 가능

- S와 R에 둘다 1을 입력하여 Q와 Q부정이 1이 되선 안됨

 

D 플립플롭

- D(Data)를 의미, C는 Clock(클록)

- 라이징 에지 때 값을 기억하는 플립플롭

클록

- 일정 주기로 0과 1을 반복하는 디지털 신호

- 회로의 동작 상태를 맞추는데 필요

 

상승 에지와 하강 에지

- L->H로 변하는걸 상승 에지(Rising edge)

- H->L로 변하는걸 하강 에지(Falling edge)

D 플립플롭의 동작

T 플립플롭

- T(Toggle)

- 입력이 0->1 또는 1->0이 될때 출력이 바뀌는 플립플롭

카운터 회로

- 이 회로는 하강 에지로 T-FF을 연결하며, 카운트 업 하고 있음.

-Q2, Q1, Q0순으로 2진수를 보면 T 시간에 대한 수를 나타냄.

프로그래밍을 이용한 회로 설계

- 하드웨어 기술 언어(HDL = Hardware Description Language)를 이용하여 회로를 생성 가능

- 논리 회로 기호로 회로를 설계했지만 최근에는 간단한 경우 외에는 사용하지 않음

- 최근에는 FPGA(Field Programmable Gate Array)를 이용해서 개발 함.

 -> 동일한 FPGA를 써도 전혀 다른 IC를 만들 수 있음.

 

 

 

300x250

'컴퓨터과학 > 컴퓨터, OS' 카테고리의 다른 글

가산기~주기억장치  (0) 2020.04.24
메모리~램  (0) 2020.04.23
인버터~플립플롭  (0) 2020.04.23
디지털 ~ 릴레이  (0) 2020.04.23
CPU 추가  (0) 2020.04.20

+ Recent posts