충분히 쌓여가는
CPU(Central Processing Unit) 본문
- 컴퓨터 상의 모든 데이터는 숫자로 이루어져 있음
- 이때 숫자 계산은 CPU라는 부품이 담당함
- CPU는 트랜지스터라는 부품을 10억 개 정도를 가지고 있는 전자장비
트랜지스터(Transistor)
- 트랜지스터에 전력을 공급하면 전류가 흐름, 전력을 차단하면 전류가 흐르지 않음
- -> 즉, 전기가 흐르고(1), 흐르지 않음(0)에 따라 0과 1 표현이 가능함
- 트랜지스터는 같은 역할을 하던 진공관을 빠르게 대체하여 CPU의 부피를 줄일수 있음
더보기
George Boole이란 사람이 0과 1로 많은 논리 연산을 할 수 있다고 함(The mathematical analysis 책)
NOT gate
AND gate
숫자 2개 입력하면 입력한 2개가 모두 1일때만 1출력, 아닐 경우 0출력
OR gate
1이 하나라도 있으면 1출력
XOR gate
숫자 2개를 입력할 수 있음
숫자가 서로 다를 때만 1출력, 아닌 경우 0출력
한 자리 수 덧셈 기계
NOT gate, AND gate, OR gate, XOR gate 4개 조합 -> 덧셈 가능(이진법)
두 자릿수 덧셈
2자리 계산기
반복하면 n자리 계산기
ex. 8번 반복 -> 8자리 계산기
CPU
이런식(2자리 계산기)으로 +, -, x, / 할 수 있는 계산기 -> ALU(산술논리연산장치)
ALU + Control Unit + Register + ... -> CPU
CPU(Central Processing Unit), 중앙 처리 장치
- 컴퓨터 시스템을 통제하고 프로그램의 연산을 실행, 처리하는 가장 핵심적인 컴퓨터의 제어 장치 혹은 그 기능을 내장한 칩
- 컴퓨터 부품과 정보를 교환하면서 컴퓨터 시스템 전체를 제어하는 장치
- 컴퓨터의 작동과정이 CPU의 제어를 받기 때문에 컴퓨터의 두뇌에 해당함
- 요즘 CPU는 하나의 CPU안에 여러 개의 CPU개를 담는 형태로 구성됨
- Register: 연산하기 위해 메인 메모리에서 데이터를 읽어옴, 읽어온 내용을 처리하기 위해 저장하는 역할 수행
- ALU: 비교, 판단, 연산 수행
- CU: CPU 제어 기능
더보기
여러 논리들을 전기적으로 표현하는 방법
CPU 역할
- 외부에서 정보를 입력, 기억, 컴퓨터 프로그램의 명령어를 해석하여 연산하고, 외부로 출력
CPU 성능
- Core와 Clock로 결정
Core | - 1개의 칩 안에 1개의 코어: 싱글코어 - 1개의 칩 안에 여러 개의 코어: 멀티코어 - 컴퓨터의 두뇌의 수라고 생각 - core 개수가 많을 수록 처리속도와 성능 좋음 - core가 높다고 항상 좋은 것은 아님(해당 자원을 모두 활용 못하기 때문) |
Clock | - CPU 내부에서 일정한 주파수를 가지는 신호 - 이 신호에 의해 CPU의 모든 명령어가 동작함 - clock 주파수가 빠를수록 짧은 시간 내에 더 많은 명령 처리 가능 -> 더 좋은 성능 |
Thread | - CPU 내부에서 실질적으로 업무를 수행하는 가장 작은 단위 - 멀티쓰레드/멀티쓰레딩은 소프트웨어 관점에서 논리적인 작업 처리 단위를 나누어 처리 |
Cache Memory | - CPU core와 Memory 사이의 병목 현상 완화 - CPU 내부에서 임시로 사용하는 Buffer 메모리 중 하나 - 자주 사용하는 데이터를 캐시 메모리에 저장 -> 다음 사용 시 주기억장치 대신 캐시 메모리에서 데이터를 가져와 속도 향상 시킴(인터넷에서 파일을 받아오는 것이 아닌 컴퓨터에서 파일 받아옴) - CPU에는 캐시 메모리가 2개에서 3개 정도 사용(L1 -> L2 -> L3) - L1: CPU 내부에 존재함 - L2: CPU와 RAM 사이에 존재함 - L3: 메인보드에 존재함 |
참고자료
코딩애플, 집에서 CPU만드는방법(CPU 동작원리)
위키 백과, 중앙 처리 장치
'IT > Computer Science' 카테고리의 다른 글
IPv4와 IPv6 (0) | 2023.01.05 |
---|---|
Domain (0) | 2023.01.04 |
Router (0) | 2023.01.03 |
TCP/IP (0) | 2023.01.03 |
동기(Synchronous) / 비동기(Asynchronous) (0) | 2022.12.30 |