IT

CPU란 무엇이고, 어떤 동작을 할까?

leedoing 2020. 3. 12. 14:31

새로운 PC나 노트북을 구매할 때, 우리는 항상 CPU 정보나 종류를 확인합니다. 그러나 실제로 CPU가 왜 중요한지 정확하게 설명해 줄 수 있는 사람은 얼마 없을 겁니다.

 

AMD와 인텔, 듀얼 또는 쿼드코어, 그리고 i3, i5나 혹은 i7에서 i9에 이르기까지, 그 차이가 무엇이고 CPU가 왜 중요한지 구별하기가 어려울 수 있습니다.

 

사실은 CPU를 잘 알아도 현재 상황에서 어떤 것이 가장 좋은지 아는 것은 어려울 수 있습니다. 그러나 조금이나마 그 이해를 돕기 위해 포스팅 합니다.

CPU란 무엇일까요?

CPU(Core Processing Unit)는 흔히 컴퓨터의 두뇌라고 불립니다. CPU는 컴퓨터의 많은 처리 장치 중 하나지만 가장 중요한 구성 요소입니다.

 

바로 컴퓨터를 통한 연산과 수행 그리고 프로그램을 실행하는 컴퓨터의 중요한 부분이니까요.

MSI CPU

CPU는 출력을 전달하기 전에 컴퓨터의 RAM에서 입력을 가져와 명령문을 이해하고 처리합니다.

CPU는 컴퓨터와 노트북, 스마트폰, 태블릿, 스마트 TV에 이르기까지 모든 종류의 기기에 존재합니다.

 

작고 보통 사각형인 이 칩은 장치의 마더보드에 꽂혀있고 다른 하드웨어와 상호 작용하여 컴퓨터를 작동시킵니다.

 

만약 여러분이 컴퓨터 역학에 좀더 깊이 파고들기를 원한다면, 이 글을 다 읽은 후에 컴퓨터 구조와 관련된 서적을 읽어보시기를 추천드립니다.

 

CPU는 어떻게 동작할까요?

처음 CPU가 개발된 이래로 정말 많은 발전이 급속하게 이루어졌습니다. 그럼에도 CPU의 핵심 기능은 단지 세 단계로 분류됩니다.

 

데이터를 가져오기, 디코딩, 실행 바로 이 세 단계가 CPU의 핵심이자 전부라고 말할 수 있습니다.

 

데이터를 가져오기(Fetch)
데이터는 이진수(011010..)로 표시되며 RAM에서 CPU로 전달됩니다. 각 실행 작업은 모든 작업의 작은 부분일 뿐이므로 CPU는 다음에 어떤 실행이 나올지 알아야 합니다.

 

명령어는 프로그램 카운터(PC)에 의해 보관됩니다. 그런 다음 PC와 명령문은 IR(지침 레지스터)에 배치됩니다.

 

그리고 PC 길이는 다음 명령문의 주소를 참조하기 위해 증가됩니다.

디코딩(Decoding)
일단 명령을 가져와 IR에 저장하면 CPU는 명령 해독기라는 회로로 명령을 전달합니다.

 

명령어는 CPU의 다른 부분으로 전달하여 작동을 위해 전달되는 신호로 변환됩니다.

이것을 디코딩이라고 합니다.

실행(Execute)
마지막 단계에서 디코딩된 명령문은 완료될 CPU의 관련 부분으로 전송됩니다.

 

결과는 대개 CPU 레지스터에 기록되며, 이 레지스터는 이후 명령문에 의해 참조될 수 있습니다.

 

계산기의 메모리 기능처럼 생각하시면 쉽게 이해하실 수 있습니다.

 

코어? 그럼 코어는 무엇이죠?

인털 i9, i7 코어

컴퓨팅 초기에는 CPU는 하나의 코어만 가지고 있었습니다. 이것은 CPU가 단지 하나의 작업만을 처리할 수 있다는 것을 의미했죠.

 

초기에는 명령어 하나를 처리하는데 느리고 시간이 많이 소요됐었습니다.

 

그러다가 단일 코어 CPU의 한계를 이해하고 intel 등 CPU 제조업체들은 성능 향상을 위한 새로운 방법을 찾기 시작했습니다.

 

성능 향상을 위한 이 연구는 멀티 코어 프로세서를 개발하게 되었죠.

 

요즘 듀얼, 쿼드, 심지어 옥토코어와 같은 용어들은 위와 같은 히스토리에서 개발되었습니다.

 

예를 들어 듀얼 코어 프로세서는 실제로 단일 칩에 있는 두 개의 CPU에 불과합니다.

 

CPU는 코어의 양을 증가시킴으로써 여러 공정을 동시에 처리할 수 있습니다.

 

이것은 성능을 높이고 처리 시간을 단축시키는 바람직한 효과를 가지고 있습니다.

 

그러나 얼마지나지 않아 듀얼코어는 곧 CPU 4개를 탑재한 쿼드코어 프로세서와 8개를 탑재한 옥토코어 프로세서에도 자리를 내줬죠.

 

하이퍼스레딩을 추가하면 컴퓨터가 최대 16개의 코어를 가진 것처럼 작업을 수행할 수 있습니다.

 

하이퍼스레딩은 물리적으로 CPU를 갖는 것이 아니라, 물리적 CPU를 쪼개서 가상 vCPU를 만들어내는 기법을 말합니다.

 

CPU 성능에 대한 이해

32비트 또는 64비트

32비트와 64비트 프로세서는 데이터를 처리할 수 있는 수준으로 구분하시면 됩니다.

 

CPU는 앞서 말씀드렸듯이 2진수로 이루어진 많은 데이터를 처리해야 합니다.

 

프로세서는 한 단어의 비트 양에 의해 제한됩니다. 32비트 프로세서가 처음 설계되었을 때, 그 당시에 32비트의 데이터는 엄청나게 큰 데이터였죠.

 

그러나 무어의 법칙을 통해 CPU는 계속 발전되었고, 컴퓨터는 새로운 64비트 프로세서의 개발을 통해 4GB 이상의 RAM을 처리할 수 있었습니다.

 

하지만 64비트 프로세서를 사용한다고 모든 데이터를 64비트로 처리할 수는 없습니다. 바로 프로그램에서도 64비트를 지원해야 하기 때문이죠.

 

L2/L3 캐시
L2와 L3 캐시는 처리 중에 CPU가 사용할 수 있는 속도가 빠른 캐시 메모리 입니다. L2, L3와 같은 캐시 메모리를 가지고 있을수록 CPU의 성능이 빨라집니다.

 

만약 CPU 프로세서를 구매하실 계획이고 고성능을 원하신다면 L2/L3 캐시를 확인해보실 것을 권장드립니다.


주파수
주파수는 프로세서의 작동 속도를 가리킵니다.

 

멀티 코어 프로세서 이전에 주파수는 서로 다른 CPU 사이에서 가장 중요한 성능 메트릭스이었습니다. CPU 프로세서 구매 시 주파수 성능도 꼭 고려해야할 중요한 요소 중 하나입니다.

 

예를 들어 매우 빠른 듀얼 코어 CPU가 느린 쿼드 코어 CPU를 능가할 수도 있기 때문이죠.

 

정리하며...

앞서 보셨듯이 CPU가 하는 일을 살펴보면 CPU는 컴퓨터의 두뇌로 볼 수 있습니다.

 

우리가 일반적으로 내리는 명령어와 관련되어 모든 작업을 수행합니다.

 

대부분의 다른 컴퓨터 구성 요소들은 실제로 CPU의 작동을 지원하기 위해 존재한다고 해도 과언이 아닙니다.

 

하이퍼스레딩과 다중 코어를 포함한 프로세서 기술의 개선은 기술 혁명에 중요한 역할을 했왔습니다.

Intel i7 듀얼코어와 AMD X4 860K 쿼드코어를 구별할 수 있다면 여러분이 구매하실 컴퓨터 사양의 결정이 훨씬 더 쉬워질 것입니다.

 

이제 어느정도 CPU 프로세서를 이해하셨으면 실제 사용 수준에 맞는 CPU 프로세서 하드웨어 구매로 현명한 소비를 하실 수 있을 겁니다.