기타/OS

컴퓨터 구조 기초 이론

Dev.BeryL 2022. 8. 17. 09:36
728x90

Accumulator

가산기와 컴퓨터

  • 8-bit Adder : 두 데이터를 더한 값을 출력 가능한 장치
  • 8-bit Latch : 데이터를 저장 및 저장한 데이터를 출력할 수 있는 장치

 

Accumulator

  • CPU에서 덧셈 처리를 위해, 회로구성 
  • 레지스터는 CPU가 요청을 처리하는 데 필요한 데이터를 일시적으로 저장하는 기억 장치
  • 해당 구조 기반으로, 숫자를 차례로 계산 하고 최종 결과를 메모리에 저장시 성능 개선이 가능하다

In-Memory 

DB는 모두 SSD, HDD에 저장하는 반면에 In-Memory는 메모리에 데이터를 저장하고 처리하기에 속도가 빠르다. 오픈소스 Redis, Memcached가 존재

CPU Architecture

PC - Program counter : 다음 실행 할 명령어 주소를 가리키는 레지스터로 실행 시 +1

IR - Instruction Register : 가장 최근 인출한 명령어를 보관하는 레지스터

ACC - Accumulator : 데이터를 일시적으로 보관하는 레지스터

MAR - Memory Address Register : CPU가 메모리를 참조하기 위해서 보관하는 데이터 주소를 가지는 레지스터

MBR - Memory Buffer Register : CPU가 메모리로부터 읽거나, 저장을 하기 위한 데이터 자체를 보관하는 레지스터

 

 

CISC RISC
  • 하나의 명령어 실행으로 가능한 한 많은 작업을 수행(복합 명령어)
  • 명령어의 포맷이나 길이에 관한 규칙 x
  • 하나 이상의 사이클로 명령어 실행
  • 전체 명령이 얼마나 걸릴지 시간 예측이 어려움
  • 간단한 명령어를 조합해서 실행하면 
  • 명령어의 포멧과 길이 고정
  • 하나의 사이클로 명령어 실행
  • 전체 명령 시간 예측이 가능

CPU 실행 구조

IF → ID → IE → WB

IF -  Instruction Fetch : 실행 할 명령어를 Memory에 읽어 CPU로 가져온다

ID - Instruction Decode : 인출 명령어에 포함 된 데이터를 가져오고 명령어를 복호화

IE - Insturction Excution : 명령어를 실행

WB - Write Back : 실행 결과를 저장

DMA

  • Direct Memeory Access
  • CPU가 Cache 까지 데이터를 가져오는데 관여(Instruction Fetch)
  • Memeory, SSD 에서 데이터를 가져오는데 관여 시 CPU 활용도는 낮아진다
    • DMA 사용 시 CPU에 명령 시간을 추가적으로 할당이 가능

 

메모리의 구조

Register - CPU 안에서 데이터 보관

SRAM - L1~3 cache (가장 많이 사용하는 Memeory의 데이터를 넣어, 메모리까지 접근 하지 않고 CPU가 직접 쓸 수 있게 한다.)

DRAM - 흔히 우리가 알고 있는 메모리 

SSD / HDD - 비 휘발성으로 데이터 보존

반응형