Computer Structure
Last updated
Last updated
CPU는 컴퓨터의 두뇌로 메모리에 저장된 명령어를 읽고 해석하고 실행하는 부품이다. 내부 구성 요소는 산술논리연산장치(ALU: Arithmetic Logic Unit), 레지스터, 제어장치가 있다.
산술논리연산장치로 쉽게 말해 계산기이다. 컴퓨터 내부에서 수행되는 대부분의 계산을 맡아 수행하며 연산한 결과값은 레지스터에 저장되고 플래그를 반환한다. 연산 결과에 대한 추가적인 정보를 플래그로 내보내는 것이다. 부호, 제로, 캐리, 오버플로우, 인터럽트, 슈퍼바이저 플래그가 있다.
제어 신호를 내보내고 명령어를 해석하는 부품이다. 시스템 버스 중 제어 버스로 제어 신호를 내보내고 받는다.
메모리 주소, 데이터, 연산 결과, 명령어 등을 저장하는 공간이다. 메모리(RAM)보다 용량은 작지만 접근 시간이 빠르다.
실행할 프로그램의 명령어와 데이터가 저장된 공간이다. 전원이 나가면 저장된 내용이 모두 사라지는 휘발성 장치이다.
CPU와 메모리 사이에 위치하며 레지스터보다 용량이 크고 메모리보다 접근 시간이 빠른 SRAM 기반 저장 장치이다. CPU 연산 속도와 메모리 접근 속도 간 차이를 줄이기 위해 개발되었다. 메모리에서 CPU가 사용할 일부를 미리 캐시로 가지고와서 활용하는 것 이다.
전원이 꺼져도 저장된 내용이 유지되는 비휘발성 장치로 SSD, USB가 해당된다. CPU는 보조기억장치에 직접 접근할 수 없다. 따라서 보조기억장치에는 보관할 대상을 저장하고 메모리에는 실행할 대상을 저장한다.
속도: 레지스터 > 캐시 메모리 > 메모리 > 보조기억장치
용량: 보조기억장치 > 메모리 > 캐시 메모리 > 레지스터
가격: 레지스터 > 캐시 메모리 > 메모리 > 보조기억장치
일반적으로 입출력 장치는 전송률이 낮아 컴퓨터에 직접 연결되지 않고 장치 컨트롤러를 통해 연결된다. 장치 컨트롤러는 전송률이 높은 장치와 낮은 장치에 주고 받는 데이터를 버퍼라는 임시 저장 공간에 저장하여 전송률을 비슷하게 맞추는 데이터 버퍼링 기능을 수행한다.
데이터 레지스터: CPU와 입출력 장치 사이 주고받을 데이터 저장
상태 레지스터: 입출력 작업의 준비, 완료, 오류 등의 상태 정보 저장
제어 레지스터: 입출력 장치가 수행할 내용에 대한 제어 정보와 명령 저장(ex. 읽기, 쓰기)