본문 바로가기

Work/CPU구조

9월 15일 - CPU의 구조

-CPU 의 정의

*우리는 보통 컴퓨터를 부를때 386, 486, 팬티엄, 팬티엄IV 등과 같이 이름을 붙이는데 이것은 컴퓨터에 장착되어 있는 CPU의 종류에 따라 붙여진 명칭이다.

*컴퓨터의 성능을 첫 번째로 좌우하는 것이 바로 CPU이기 때문에 발생했다.

*중앙처리장치(Central Processing Unit)

*컴퓨터를 구성하는 모든 장치를 제어하고 동작을 감시하는 제어기능과 컴퓨터에서 실행되는 모든 명령을 해석하도 실행하며 데이터의 연산을 담당 하는 기능.

-CPU의 종류

[1]CISC(Complex Instruction Set Computer)
*명령어가 가변적이고 복잡한 방식
*다량의 명령어를 처리하는 형식으로 많은 트랜지스터가 있다
*호환성이 뛰어나고 사용할 수 있는 프로그램이 많다.
*주로 데스크탑에 사용, 해석 내용을 조각조각 잘게 저장하여 조합

[2]RISC(Reduced Instruction Set Computer)
*고정된 길이의 명령어를 사용하는 방식
*단축 명령어 방식으로 트랜지스터 양이 적다
*매킨토시, 모토롤러 CPU, 서버급에 사용, 해석 내용을 통째로 저장하는 방식

 설계 방식  해당 CPU및 적용회사  단축 명령어  처리 속도  전력 소모량  설계의 복잡성  기 타
 CISC  Intel계열 및 AMD계열 적용 CPU  많음  느림  많음  복잡함  호환성이 뛰어나 마이크로 컴퓨터에 대부분 적용
 RISC  매킨토시 계열, 삼성 알파칩, 모토로라 R400등  적음  빠름  적음  간단함  현재는 서버 급이나 워크스테이션 매킨토시 계열에 주로 적용



-CPU의 구조


실행 유닛(Eux Execution Unit)
*실행 유닛은 마이크로 프로세서의 각 명령어를 수행하는 유닛이다
*실행 유닛에는 ALU(Arithmetic Logic Unit)와 제어 유닛(CU:Control Unit), 레지스터로 구성된다. ALU에서는 덧셈이나 비교 연산과 같은 산술연산, 논리연산을 수행한 후 중간 결과를 레지스터에 보관한다

명령어 유닉(Instruction Unit)
*명령어 유닛은 메모리에서 가져온 명령어를 실행유닛에서 정확히 수행할 수 있도록 제어하는 유닛이다. 이때 제어 유닛은 ALU나 레지스터들이 잘 작동되도록 하여준다.

어드레싱 유닛(Addressing Unit)
*어드레싱 유닛은 CPU가 메모리나 입 출력 장치에서 데이터를 읽거나 쓸때 메모리나 입출력 어드레스를 만들어 주는 유닛이다.

버스 인터페이스 유닛(Bus Interface Unit)
*버스 인터페이스 유닛은 어드레스, 데이터, 컨트롤 버스를 통해서 마이크로 프로세서 외부와 연결시켜 주는 유닛이다.

CPU 대역폭

*CPU와 주변기기 사이에 한번에 주고 받을 수 있는 데이터 폭을 의미
*데이터를 전달하는 통로인 버스의 폭
*동시처리 가능한 데이터의 처리 용량에 따른 분류
*8Bit -> 16Bit -> 32Bit -> 64Bit 로 발전

Pentium(32Bit)->Pentium Pro(32Bit)->Pentium MMX(32Bit)->Pentium II(32Bit)->Pentium III(32Bit)->Pentium 4(32Bit/64Bit)->Core2duo(64Bit)

CPU의 처리 기준

*CPU가 데이터를 처리하는 속도의 기준은 초당 얼마 만큼의 데이터를 처리할 수 있는 가로 나타 낸다
IPC(Instruction Per Clock)

*클럭(Clock)
전류가 흐르는 상태(on)와 흐르지 않은 상태(off)
클럭 발생 장치로 부터 만들어지는 일정한 주기로 진동하는 전기적인 리듬

*1Hz란 1초에 1주기를 진동하는 클럭
*CPU는 기본적으로 1번의 클럭에 1개 명령 처리 (CPU 및 시스템의 속도 표현 단위)


Cache 메모리

*속도가 다른 주 장치 사이에 위치하는 임시 기억 장치
*장치간의 속도를 향상 시키는 구실
*반복적인 엑세스에서 처리 속도를 향상 시킨다


CPU 에서 Cache 메모리

*L1 캐시
아무리 메모리의 속도가 빠르다 하더라도 CPU 클럭 속도를 따를 수는 없다. 결국 CPU는 명령을 처리한 후에 메모리로 그 결과를 보내고 다시 새로운 데이터가 전송되어 오는 시간 동안 아무일도 할 수 없다
메모리는 CPU가 필요로 하는 만큼의 데이터를 공급해 줄 수 없기 때문인데 그래서 CPU는 자체적으로 캐시(Cache)라는 빠른 속도의 메모리 공간을 두어 자주 사용하는 데이터나 명령어를 빠른 속도로 처리하게 된다
1차 캐시의 처리속도는 CPU의 클럭과 같기 때문에 속도차이에 의한 병목현상을 극복할 수 있는 것 이다. 2차 캐시와 마찬가지로  SRAM을 사용

*L2캐시
외부 캐시라고도 하는 2차 캐시는 CPU 가 1차 캐시에서 데이터를 찾을 수 없을 때 찾는 곳이다. 만약에 2차 캐시에서도 필요한 데이터를 찾지 못하면 비로소 메인 메모리에 접근하게 된다
2차 캐시의 속도는 1차 캐시의 1/2속도로 동작하며 CPU클럭과 함께 CPU의 성능을 좌우하는 핵심적인 요소로 취급되어 진다
2차 캐시의 용량에 따라 CPU의 가격이 크게 변화


CPU 의 작동 속도


CPU----------------Cache Memory--------------------North Brigde------------------Memory
             (BSB)                                      (FSB)

-FSB (Front Side Bus) : CPU와 메모리 사이의 데이터 버스
-BSB (Back Side Bus) : CPU와 캐시 메모리 사이의 데이터 버스
CPU의 성능에 영향을 미치는 정도 : FSB > BSB



참고
현대 CPU의 구조 -백엔드 편-

현대 CPU의 구조 -프론트엔드 편-