컴퓨터 공학 기초 (1) 컴퓨터 구조

young·2022년 8월 1일
0

7/21~8/18 Section 4 TIL

목록 보기
8/22

📌 컴퓨터의 기본 구조

  • Input: 컴퓨터에 연결하여 무언가를 입력하는 물리적인 입력 장치

  • Output: 처리된 데이터를 사람이 이해할 수 있는 형태로 출력하는 물리적인 출력 장치

  • CPU: 중앙처리장치

  • 주 기억 장치: (RAM / ROM) 정보를 저장해두었다가 필요할 때 읽어들이는 저장소로 사용된다.

  • 보조 기억 장치: (자기 디스크, 광 디스크, 플래쉬 메모리) 기억된 내용을 읽는 속도는 느리지만, 대용량의 기억이 가능하여 현재 사용하지 않는 프로그램을 저장한다.

폰 노이만 구조: 크게 CPU, 메모리, I/O로 구성된 컴퓨터 구조. 컴퓨터에 중앙처리장치(CPU)라는 것이 있고, 이것을 통해 연산을 수행한다. CPU는 각종 연산을 수행하고 기억장치에 기억돼 있는 명령어들을 수행하는 컴퓨터 시스템을 이루는 핵심 부품이다.


📌 CPU

CPU의 구조

  • 산술/논리 연산 장치(ALU)
  • 레지스터
  • 제어장치

🧩 산술/논리 연산 장치(Arithmetic Logic Unit, ALU)

캐시나 메모리부터 읽어 온 데이터는 레지스터에 저장되며, ALU는 레지스터에 저장된 데이터를 이용하여 산술/논리 연산을 수행한다.

🧩 레지스터

CPU 내부에 있는 기억장치
ALU에 의해 사용되는 범용 레지스터와 PC등 특수 목적에 사용되는 전용 레지스터로 구분된다.

  • IR(Intruction Register): 현재 수행 중에 있는 명령어 부호를 저장하고 있는 레지스터
  • PC(Program Counter): 명령이 저장된 메모리의 주소를 가리키는 레지스터
  • AC(Accumulator): 산술/논리 연산 결과를 임시로 기억하는 레지스터

🧩 제어장치(Control Unit, CU)

CPU가 자신 및 주변기기들을 컨트롤하는 장치

프로그램 계수기: 프로그램 수행 순서를 제어
명령 레지스터: 현재 수행중인 명령어의 내용을 임시 기억
명령해독기: 명령 레지스터에 수록된 명령을 해독하여 수행될 장치에 제어신호를 보낸다.

CPU의 기능

명령어 인출 및 해독, 명령어 수행 및 처리

명령어: 시스템이 특정 동작을 수행시키는 작은 단위

명령어 수행 과정

읽기(FI) ➞ 해석(DI) ➞ 실행(EI) ➞ 기록(WB)

명령어 처리 방식

RISC: 하나의 사이클로 명령어를 처리, 복잡한 컴파일러 구조
CISC: 여러 사이클로 명령어를 처리, 복잡한 마이크로 프로그램 구조. 하나의 기능에 하나의 명령이 있는 개념.


📌 메모리

= 반도체. 임시적인 내용들을 기억한다.

메모리 종류

레지스터, 캐시메모리, 주기억장치, 보조기억장치

메모리 성능

메모리와 CPU가 데이터를 주고받는 시간 (메모리 속도)가 빠를수록 성능이 좋다.

  • 리프레시 시간: 메모리에서 한 번 읽고 나서 다시 읽을 수 있는 사이 시간

  • 메모리 액세스 시간: 명령을 받고 데이터를 읽기 시작하기까지의 시간

  • 사이클 시간: 리프레시 시간+메모리 액세스 시간

✔️ 주기억장치

RAM

Random access memory
휘발성 메모리
CPU에서 직접 접근이 가능한 유일한 저장장치
SRAM / DRAM

ROM

Read-only memory
비휘발성 메모리

✔️ 보조기억장치

자기 디스크

플로피디스크, 하드디스크

광 디스크

빛의 반사를 이용하여 자료를 읽어낸다.
CD, DVD, 블루레이 디스크, 테라 디스크, HVD 등

✔️ 캐시 메모리

CPU 내/외에 존재하는 메모리

빠른 CPU의 처리속도와 상대적으로 느린 메인 메모리에서의 속도의 차이를 극복하기 위한 중간 버퍼 역할을 한다.

CPU가 필요한 데이터가 캐시 메모리 내에 들어와 있으면 Cache Hit라 하고, 없을 경우 Cache miss라고 한다.
이때, 필요한 데이터가 캐시 메모리에 있을 확률을 Hit Ratio라고 한다.

캐시 메모리의 성능 결정 요소에는 캐시 크기 등 다양한 요소가 존재한다.
레지스터에 비해 처리 속도가 느리다.

profile
즐겁게 공부하고 꾸준히 기록하는 나의 프론트엔드 공부일지

0개의 댓글