컴퓨터는 다양한 산술 연산과 논리 연산을 수행할 수 있는 전자 기기입니다. 고급 기능들을 원활하게 처리하기 위해서는 사용자가 요청하는 복잡한 작업을 모두 감당할 수 있는 강력한 처리 장치가 필수적입니다. 새 컴퓨터를 구매하려는데 어떤 중앙처리장치(CPU)가 적합할지 고민하고 있다면, CPU의 개념과 역할부터 차근차근 살펴보시길 권합니다.
CPU(중앙처리장치)란 무엇인가?
프로세서, 중앙 프로세서, 마이크로프로세서라고도 불리는 CPU는 컴퓨터의 핵심 처리 장치입니다. CPU의 역할은 하드웨어와 소프트웨어 사이에서 명령어를 원활하게 실행해 두 요소가 문제없이 작동하도록 만드는 것입니다. 연산 수행, 프로그램 실행, 다양한 작업의 동시 처리 등 컴퓨터의 모든 중요한 기능을 관리하기 때문에 '컴퓨터의 두뇌'라고도 불립니다.
프로세서는 메인보드에 있는 호환 CPU 소켓에 장착되어 고정됩니다. 프로세서는 작동 중 많은 열을 발생시키기 때문에, 발열로부터 보호하기 위해 히트싱크로 덮여 있습니다. CPU 칩은 소켓에 쉽게 장착될 수 있도록 직사각형 형태로 되어 있으며, 칩 하단에는 수백 개의 연결 핀이 있어 소켓의 해당 구멍에 맞춰 삽입되는 방식입니다.
오늘날 대부분의 CPU는 디자인과 기능 면에서 매우 유사합니다. 인텔(Intel)과 AMD는 메인보드에 장착되는 더 큰 칩을 생산하는 대표 기업입니다. 또한 메인보드에는 여러 종류의 소켓이 존재하며, 각 소켓은 서로 다른 배치와 규격을 가지고 특정 프로세서를 장착하는 역할을 담당합니다.
CPU의 구성 요소
최초의 컴퓨터 프로세서는 1970년대 인텔 설계자 테드 호프(Ted Hoff)가 개발했으며, 첫 번째 프로세서는 '인텔 4004'로 명명되었습니다. 컴퓨터 프로세서는 크게 다음 세 가지 구성 요소로 이루어집니다.
- 메모리(기억) 장치
- 제어 장치(CU)
- 산술 논리 장치(ALU)
산술 논리 장치(ALU)
ALU(Arithmetic Logic Unit)는 수학적 연산과 논리 연산을 수행하고 의사 결정 과정을 돕는 장치로, 두 개의 하위 섹션으로 구성됩니다.
- 산술부: 덧셈, 뺄셈, 곱셈, 나눗셈과 같은 산술 연산을 담당합니다. 모든 복잡한 연산은 이러한 기본 연산들의 반복적인 조합을 통해 처리됩니다.
- 논리부: 데이터의 비교, 선택, 매칭, 병합 등 논리 연산을 수행합니다.
제어 장치(CU)
제어 장치(Control Unit)는 메모리에서 명령어를 가져와 해독하고 실행하며, 필요할 때 ALU를 호출하는 역할을 합니다.
제어 장치의 주요 기능은 다음과 같습니다.
- 컴퓨터 내 다른 장치들 간의 데이터 및 명령어 전송을 제어합니다.
- 컴퓨터를 구성하는 모든 장치를 관리하고 조율합니다.
- 메모리에서 명령어를 가져와 해석하고, 컴퓨터의 동작을 지시합니다.
- 입출력 장치와 통신하여 저장소로부터 데이터나 결과를 전송합니다.
- 단, 데이터를 직접 처리하거나 저장하지는 않습니다.
메모리(기억) 장치
메모리 장치는 명령어, 데이터, 중간 결과물을 저장하며, 필요할 때 컴퓨터의 다른 장치들에 정보를 공급합니다. 내부 저장 장치, 주기억장치, 일차 기억 장치 또는 RAM(Random Access Memory)이라고도 불립니다.
메모리의 용량은 컴퓨터의 속도, 성능, 처리 능력에 직접적인 영향을 미칩니다. 컴퓨터 메모리는 주기억장치와 보조기억장치 두 가지로 나뉩니다. 메모리 장치의 주요 기능은 다음과 같습니다.
- 처리에 필요한 모든 데이터와 명령어를 저장합니다.
- 처리 과정에서 발생하는 중간 결과물을 저장합니다.
- 최종 결과물이 출력 장치로 전달되기 전까지 보관합니다.
- 모든 입력과 출력은 주기억장치를 경유하여 전달됩니다.
CPU의 발전 역사
CPU의 속도와 성능은 긴 역사 속에서 놀라운 발전을 거듭해왔습니다. 1971년 11월 15일 출시된 최초의 CPU인 인텔 4004는 2,300개의 트랜지스터를 탑재해 초당 6만 번의 연산을 수행하는 수준이었지만, 오늘날의 최신 프로세서는 수십억 개의 트랜지스터를 탑재하고 초당 수십억 번의 명령어를 처리합니다. 초창기 CPU와 최신 CPU의 격차를 통해 반세기 동안의 기술 발전 속도를 실감할 수 있습니다.
CPU의 창시자는 누구?
최초의 CPU는 1971년 인텔이 출시한 인텔 4004입니다. 페데리코 파긴(Federico Faggin)이 최초의 상용 CPU 수석 설계자였으며, CPU 발명의 주역 중 한 사람으로 평가받고 있습니다.
CPU 발전의 주요 이정표를 연대순으로 정리하면 다음과 같습니다.
| 연도 | 주요 프로세서 발전 |
| 1823 | 욘스 야코브 베르셀리우스가 실리콘(Si)을 발견했습니다. 실리콘은 오늘날 프로세서의 기본 소재입니다. |
| 1903 | 니콜라 테슬라가 '게이트' 또는 '스위치'라 불리는 전기 논리 회로를 특허 등록했습니다. |
| 1947 | 존 바딘, 월터 브래튼, 윌리엄 쇼클리가 벨 연구소에서 최초의 트랜지스터를 발명했습니다(12월 23일). |
| 1956 | 트랜지스터 연구의 공로로 세 사람이 노벨 물리학상을 수상했습니다. |
| 1958 | 페어차일드 반도체의 로버트 노이스와 텍사스 인스트루먼츠의 잭 킬비가 최초의 집적회로(IC)를 개발했습니다(9월 12일 시연). |
| 1968 | 로버트 노이스와 고든 무어가 인텔(Intel)을 설립했습니다. |
| 1969 | AMD(Advanced Micro Devices)가 5월 1일에 설립되었습니다. |
| 1971 | 테드 호프의 도움으로 인텔이 최초의 마이크로프로세서 '인텔 4004'를 11월 15일 출시했습니다. 2,300개의 트랜지스터를 탑재하고 초당 6만 번의 연산을 수행했으며, 가격은 200달러였습니다. |
| 1974 | 인텔 8080이 출시되어 컴퓨터 업계의 표준으로 자리 잡았습니다. |
| 1979 | 16/32비트 프로세서인 모토로라 68000이 출시되었고, 이후 애플 매킨토시와 아미가 컴퓨터의 프로세서로 채택되었습니다. |
| 1985 | 인텔이 최초의 80386 프로세서를 출시했습니다. |
| 1993 | 인텔이 60MHz 클럭, 310만 개의 트랜지스터를 갖춘 펜티엄(Pentium) 프로세서를 3월 22일 출시했습니다. |
| 1996 | AMD가 자체 개발한 최초의 프로세서 K5를 출시했습니다(75~133MHz). |
| 1997 | 인텔 펜티엄 II가 5월 7일 출시되었습니다. |
| 1999 | AMD가 애슬론(Athlon) 시리즈를 6월 23일 선보였습니다. 애슬론은 이후 6년간 500MHz~2.33GHz 속도로 생산되었습니다. |
| 2003 | AMD가 최초의 단일 코어 옵테론(Opteron)과 애슬론 64를 출시했습니다. |
| 2005 | AMD가 최초의 듀얼 코어 프로세서 '애슬론 64 X2 3800+'을 4월 21일 출시했습니다. |
| 2006 | 인텔이 코어 2 듀오(Core 2 Duo) 프로세서 E6300을 출시하며 듀얼 코어 시대를 본격화했습니다. |
| 2007 | 인텔이 쿼드 코어 프로세서 '코어 2 쿼드 Q6600'을 출시했습니다. |
| 2008 | 인텔이 최초의 코어 i7 데스크톱 프로세서(i7-920, i7-940, i7-965 익스트림 에디션)를 11월에 출시했습니다. |
| 2009 | AMD가 최초의 쿼드 코어 '페놈 II X4'를, 인텔은 최초의 4코어 코어 i5 'i5-750'을 출시했습니다. |
| 2010 | 인텔이 최초의 코어 i3 데스크톱 프로세서(i3-530, i3-540)를 출시했습니다. |
| 2011 | AMD가 A4, A6, A8 라인의 최초 데스크톱 APU 프로세서를 잇달아 출시했습니다. |
| 2017 | AMD가 최초의 라이젠(Ryzen) 7 프로세서(1700, 1700X, 1800X)를 3월 2일 출시했고, 인텔은 최초의 코어 i9 데스크톱 프로세서 'i9-7900X'를 출시했습니다. |
| 2017 | AMD가 최초의 16코어 프로세서 '라이젠 스레드리퍼 1950X'를 출시했습니다. |
| 2018 | 인텔이 최초의 코어 i9 모바일 프로세서 'i9-8950HK'를 4월에 출시했습니다. |
출처: Computerhope
CPU의 핵심 기능은 무엇일까?
지난 몇 년간 CPU의 성능은 눈부시게 향상되었지만, CPU의 기본적인 작동 원리는 변하지 않았습니다. CPU의 역할은 초기 설계 당시와 동일한 세 가지 핵심 기능을 중심으로 돌아갑니다.
패치(Fetch) – 명령어 가져오기
중앙처리장치의 가장 기본적인 역할은 명령어를 받아들이는 것입니다. 명령어는 일련의 숫자 형태로 CPU와 RAM 사이에서 전송되며, 정보는 작은 단위로 나뉘어 처리되기 때문에 CPU는 다음에 어떤 정보가 올지 알아야 합니다. 명령어의 위치는 프로그램 카운터(program counter)에 기록되며, 명령어가 이동하면 명령어 레지스터(IR)에 교체 저장되어 프로그램 카운터가 다음 명령어 세트를 저장할 수 있도록 합니다.
디코드(Decode) – 명령어 해석하기
명령어가 명령어 레지스터에 저장되면, CPU는 해당 명령어를 '명령어 디코드(instruction decode)' 회로로 전달합니다. 이 회로에서 명령어는 컴퓨터의 다른 부분들이 쉽게 이해할 수 있는 신호로 변환됩니다. 이는 CPU의 매우 중요한 기능입니다. 컴퓨터의 다른 부품들이 전달받은 명령어를 이해하지 못하면, 자신이 수행해야 할 기능을 실행할 수 없기 때문입니다. 이는 뇌가 신체 각 부위에 움직임을 지시하는 신호를 보내는 것과 유사한 원리입니다.
실행(Execute) – 명령어 수행하기
CPU의 마지막 중요한 역할은 앞서 패치하고 디코드한 명령어를 실제로 실행하는 것입니다. 이를 통해 컴퓨터의 다른 부품들에게 각자의 기능을 수행하도록 지시합니다. 실행 결과는 일반적으로 CPU 레지스터에 기록되어, 이후의 명령어들이 참조할 수 있게 됩니다. 계산기의 메모리 기능을 떠올리면 이해하기 쉽습니다. 즉, 실행된 명령어는 CPU의 메모리에 저장되어 다음 명령어가 이전 명령어를 기반으로 작동할 수 있도록 합니다.
저장(Store) – 결과 기록하기
CPU는 명령어를 실행한 후 반드시 피드백을 제공해야 하며, 출력 데이터는 메모리에 기록됩니다.
정리하자면, CPU의 역할은 명확하고 단순합니다. 사용자로부터 명령어를 가져오고(fetch), 그 명령어를 컴퓨터의 다른 부품들이 이해할 수 있는 신호로 해석하며(decode), 해당 기능이 올바르게 실행되도록 보장하는(execute) 것입니다. 또한 CPU는 다음 명령어가 이미 처리 중인 명령어와 연관성을 유지하도록 관리하는 책임도 맡고 있습니다.
CPU의 종류
컴퓨터 마이크로프로세서 시장은 두 개의 제조사가 주도하고 있습니다. 인텔과 AMD(Advanced Micro Devices)가 속도와 품질 면에서 시장을 선도하고 있습니다. 인텔의 데스크톱 CPU에는 셀러론(Celeron), 펜티엄(Pentium), 코어(Core) 시리즈가 있으며, AMD의 데스크톱 프로세서에는 셈프론(Sempron), 애슬론(Athlon), 페놈(Phenom), 그리고 최근에는 라이젠(Ryzen) 시리즈가 대표적입니다.
이처럼 CPU는 컴퓨터의 핵심 프로세서로서, 다른 모든 부품과 프로세서의 작동이 CPU에 의존한다고 해도 과언이 아닙니다.
함께 읽으면 좋은 글
- 인텔 코어 i5 vs i7 vs i9, 어떤 프로세서가 나에게 맞을까?
- CPU(중앙처리장치)와 RAM(램)의 차이점
- 32비트와 64비트 윈도우·프로세서(CPU)의 차이
- SSD vs HDD 속도 및 성능 비교
- 내장 그래픽 vs 외장 그래픽카드, 무엇을 선택해야 할까?
- 노트북 구매 가이드 – 좋은 노트북의 핵심 사양