컴퓨터 구조

김현송·2023년 4월 18일
0

리눅스

목록 보기
1/7

💻CPU

📚개념

메모리에서 명령어를 인출하고 해석하여 명령을 실행하는 장치



🔨 기능

  • 전송 기능
    • 메모리 <-> 레지스터 간 데이터 전송 및 교환
    • CPU와 입출력 장치간 데이터 전송 기능
  • 연산 기능
  • 제어 기능



🔍구성

- 산술연산 장치(ALU)

실제 CPU에서 연산을 수행하는 장치(유닛)
연산을 위해 레지스터 또는 메모리로부터 데이터가 입력되고(Load) 그 처리 결과가 레지스터 중의 하나 또는 메모리에 저장됨(Store)

- 제어 장치

명령어, 데이터의 입출력과 ALU 동작 제어

  • 프로그램/코드/명령어를 해석하고 이의 실행을 위한 제어 신호들을 순차적으로 발생
  • 명령을 읽고 실행하는데 필요한 CPU 내부의 각 장치 간의 데이터 흐름을 제어
  • 어느 장치/레지스터에게 전송할 것인가를 지시하고 동작 시간을 결정한다.
  • 프로그램 카운터(레지스터)를 사용

    프로그램 카운터 : 다음에 인출할 명령어 주소를 임시 저장하는 레지스터

- 레지스터

메모리와 유사하나 훨씬 비싸고 빠른 소규모 임시 저장장치

  • 범용 레지스터/ 누산기

    • 연산의 중심 역할
    • 레지스터의 비트 수 == CPU 1회 연산에 처리 가능한 데이터 비트 수
  • 용도 지정 레지스터

    (명령어 관련)

    • 프로그램 카운터
    • 명령어 레지스터 : 가장 최근에 인출된 명령어를 임시 저장하는 레지스터

    (데이터, 주소 관련)

    • 데이터 레지스터 : 데이터 버스(CPU와 메모리 사이의 데이터 전달을 위한 연결)에 데이터를 읽고 쓰기 위해 잠시 저장해두는 버퍼 레지스터
    • 주소 레지스터 : 주소 버스에 주소를 출력하기 전에 임시 저장하는 레지스터 (다른말로 포인터라 함)

    (입출력 관련)

    • 입출력 레지스터 : 주변 장치와 CPU 간에 데이터 전송/ 중개를 전담

- 캐시

컴퓨터 메모리 버퍼를 지칭함

  • CPU와 주 기억장치 사이에 물리적으로 존재하는 버퍼 형태의 고속 기억장치
  • 사용 이유 : CPU와 주기억장치 사이의 속도 차이를 완화시킴
  • 캐싱 알고리즘 : LFU / LRU , hit율이 높을수록 cache의 기능이 향상
  • 캐시 메모리의 종류
    • L1 cache (Level 1/Primary) : 프로세서 core에 내장된 cache 메모리
    • L2 cache (Level 2/Secondary) : 프로세서 안에 내장된 것이 아니라 메인보드나 카트리지에 장착되어있음




🍇종류

  • 명령어 집합 형태에 따른 구분
    • CISC (Complex Instruction Set Computer)
      • 직접 계산 실행이 가능하다.
      • 연산할 값을 메모리 또는 레지스터에 담아두고 한다.
    • RISC (Reduced Instruction Set Computer)
      - 최소 명령어 집합으로 하드웨어를 단순화 시키고 속도를 높인다
      - 오직 레지스터로만 연산을 수행한다.
      - load-store 구조 (load : memory -> register / store : register -> memory)

      CPU 설계 구조 상 2가지 방향

      • CISC
        명령어 수가 많고 다양한 가변길이의 명령어를 갖는 CPU 구조
        상대적으로 많은 전력을 소모한다.
        예) Intel 프로세서
      • RISC
        단순하고 고정 길이의 명령어 집합을 제공하여, 크기를 줄이고 속도를 높이고자 한 CPU 구조
        하드웨어 만으로 실행시켜 속도를 높이는 구조
        예) 라즈베리파이

출처
K-Digital-Training: 리눅스 시스템 및 커널 전문가 과정
http://www.ktword.co.kr/index.php

profile
안녕하세요

0개의 댓글