다오의 개발일지

CPU와 메모리 - 1 본문

CS

CPU와 메모리 - 1

다오__ 2023. 8. 18. 00:44

컴퓨터의 종류는 슈퍼컴퓨터, 서버, 데스크탑, 노트북, 태블릿, 핸드폰, 스마트 워치 등이 있습니다.

 

출처 : https://hongong.hanbit.co.kr/컴퓨터의-4가지-핵심-부품cpu-메모리-보조기억장/

 

[컴퓨터 구조] CPU, 메모리, 보조기억장치, 입출력장치를 알아보자

컴퓨터의 핵심 부품은 CPU, 메모리, 보조기억장치, 입출력장치입니다. 이 네 가지 부품의 역할만 이해하고 있어도 컴퓨터의 작동 원리를 대부분 파악할 수 있습니다. 주기억장치에는 크게 RAM과 RO

hongong.hanbit.co.kr

 

1. 입출력 장치

입출력 장치란 컴퓨터가 사용자와 의사소통하는 창구가 입출력 장치 입니다.

 

1-1 입력 장치

사용자가 컴퓨터에게 명령하는 창구입니다.

 

1-2 입력 장치의 종류

  • 키보드, 마우스, 터치스크린, 마이크, 스캐너, 카메라 등

1-3 출력 장치

컴퓨터가 사용자에게 데이터를 보여주거나 처리결과를 보여주는 창구가 출력 장치 입니다

1-4 출력 장치의 종류

  • 모니터, 스피커, 프린터 

2. CPU

컴퓨터가 사용자의 명령에 대한 작업을 수행하는 처리장치 입니다.

  • 제어부(CU)와 내부 버스  : 명령어의 해석과 올바른 실행을 위해 제어합니다.
  • 산술논리 연산장치(ALU) : 비교, 판단, 연산을 담당합니다.
  • 레지스터 : 처리할 명령어를 저장합니다. 
  • 캐시 메모리(L1) : 처리속도를 높여주는 역할을 합니다.

2-1-1 레지스터

레지스터는 저장공간인데, 연산에 필요한 데이터를 저장, 빠른속도로 접근할 수 있습니다.

 

프로세서 레지스터

프로세서에 위치한 고속 메모리로 극히 소량의 데이터나 처리 중인 중간 결과와도 같은 프로세서가 바로 사용할 수 있는 데이터를 담고 있는 영역을 레지스터라고 한다.

 

컴퓨터 구조에 따라 크기와 종류가 다양하다. 용도에 따라 범용 레지스터와 특수목적 레지스터로 구분된다

 

범용 레지스터 : 연산에 필요한 데이터나 연산 결과를 임시로 저장한다. 특수목적 레지스터 : 특별한 용도로 사용하는 레지스터이다

특수목적 레지스터는 아래와 같은 다양한 레지스터가 존재합니다.

  • 메모리 주소 레지스터: (MAR) : 읽고 쓰기 위한 주기억장치의 주소를 저장한다.
  • 프로그램 카운터 (PC) : 다음에 수행할 명령어의 주소를 저장
  • 명령어 레지스터 (IR) : 현재 실행 중인 명령어를 저장
  • 메모리 버퍼 레지스터 (MBR) : 주기억장치에서 읽어온 데이터나 저장할 테이터를 임시로 저장
  • 누산기 (AC, ACCUMULATOR) : 연산 결과를 임시로 저장

 

2-1-2 제어장치 (CU, Control Unit)

제어장치는 명령어를 실행하는 순서를 제어하고 스케쥴링 합니다.

 

제어부

주기억 장치에 저장되어 있는 명령어를 순서대로 호출하여 해독하고, 제어 신호를 발생시켜

컴퓨터의 각 장치를 동작하도록 하는 장치입니다.

 

내부버스

기억, 연산, 제어 기능을 실현하기 위한 CPU와 주기억 장치입출력 장치외부 기억 장치주변 장치, 통신 처리 장치 등의 제어부 사이를 연결하는 버스입니다.

 

2-1-3 연산장치(ALU, Arithmetic Login Unit)

덧셈, 뺄셈같은 산술연산과 논리 연산을 계산하는 디지털 회로 입니다.

 

 

2-2 CPU의 동작

기계어를 하드웨어적으로 CPU가 알 수 있게 변환한게 어셈블리어입니다.

어셈플리어를 사람이 알아볼 수 있게 소프트웨어적으로 변환한게 프로그래밍 언어입니다.

 

  • CPU가 명령어를 읽고 수행하는 동작
  1. 명령어 인출
    • CU가 수행할 명령어 정보를 가져옵니다.
  2. 명령어 해독
    • 명령어 정보를 성공적으로 인출했으면 명령어를 해독해야합니다.
    • 보통 opcode라고 하는 명령어 코드를 인출하고 opcode의 성격에 맞게 레지스터들을 준비시킵니다.
  3. 실행
    • 해독된 명령어를 수행하는 거에요! 예를 들어, 산술/논리 관련된 연산이라고 하면 ALU가 주체가 되어서 실행합니다.
  4. 반영
    • 이 명령어의 수행 결과를 반영함으로써 명령어 수행의 한 사이클이 끝이 납니다.

2-3 CPU의 성능

클럭

  • CPU 내부에서 일정한 주파수를 가지는 신호로, 이 신호로 모든 명령어가 동작되게 됩니다.
  • 1Hz(헤르츠)면 1초에 한 번의 주기. 1기가 헤르츠라고 하면 1초에 1기가만큼(1024메가), 즉 10억 번 정도인 셈입니다.
    • 예를 들어 4.5GHz라는 것은 초당 45억 번의 명령어를 처리할 수 있다는 뜻 입니다.
  • 따라서 클럭 주파수가 빠를수록 제한된 시간에 더 많은 명령을 처리할 수 있기에 더 좋은 성능의 중앙 처리 장치라고 할 수 있습니다.

코어

  • 코어는 중앙처리 장치 역할을 하는 블록을 뜻합니다.
  • 즉, 멀티 코어들은 싱글 코어에 비해서 마치 여러 개의 CPU(요리사)가 작동하듯이 많은 연산을 빠르게 병렬 처리할 수 있습니다.
  • 물론 컴퓨터의 전체적인 성능은 CPU 만으로 결정되지는 않습니다. (메모리도 중요) 하지만, 가장 중요한 부분이라고 할 수 있는건 푸드트럭의 요리사 또는 사람의 뇌에 해당하는 CPU 입니다.

'CS' 카테고리의 다른 글

운영체제란 - 유튜브 강민철 강사님  (0) 2025.02.13
CPU와 메모리 - 2  (0) 2023.08.21
JWT란 무엇일까?  (0) 2023.06.19
쿠키와 세션이 무엇일까?  (0) 2023.06.19
서버란 무엇일까? 웹 서버, WAS  (0) 2023.06.16