자격증/정처기

Section 002 중앙처리장치

경주초이 2020. 3. 1. 14:53
  1.  중앙처리장치(CPU)
    • CPU는 사람의 두뇌와 같이 컴퓨터 시스템에 부착된 모든 장치의 동작을 제어하고 명령을 실행하는 장치.
    • CPU = 제어장치(Control Unit) + 연산장치(Logic Unit) + 레지스터(Register)
  2. 제어장치(Control Unit)
    • 제어장치는 컴퓨터에있는 모든 장치들의 동작을 지시하고 제어하는 장치.
    • 명령 레지스터에서 읽어들인 명령어를 해독하여 해당하는 장치에게 제어 신호를 보내 정확하게 수행하도록 지시한다.
    • 프로그램 카운터(PC), 명령어 레지스터(IR), 부호기(제어신호 발생기), 명령어 해독기, 번지 해독기 등으로 구성되어있다.
    • 명령어의 실행은 인출(Fetch) -> 간접(Indirect) -> 실행(Execute) -> 인터럽트(Interrupt) 단계를 거친다.
      1. 프로그램 카운터에 저장된 주소값을 번지 레지스터에 옮김
      2. 명령어를 주기억장치로 부터 인출
      3. 프로그램 카운터 증가
      4. 명령 코드를 명령 레지스터로 옮김
      5. 명령 레지스터의 내용을 해독하여 실행
  3. 연산장치
    • 연산장치(ALU: Arithmetic & Logic Unit)는 제어장치의 명령에 따라 실제로 연산을 수행하는 장치.
    • 산술연산, 논리연산, 관계연산, 이동(Shit) 등을 수행
    • 가산기, 누산기(AC: Accumulator), 보수기, 데이터 레지스터, 오버플로 검출기, 시프트 레지스터(Shitf Register)등으로 구성되어있다.
  4. 레지스터
    • CPU내부에서 처리할 명령어나 연산의 중간 결과값 등을 일시적으로 기억하는 임시 기억 저장소
    • 메모리 중 속도가 가장 빠름
    • 레지스터에 새로운 데이터가 전송되면 기존의 내용은 지워지고 새로운 내용만 기억됨
    • 레지스터는 연산 속도를 향상시키기 위해 사용
    • 주요 레지스터의 종류 및 기능
프로그램 카운터, 프로그램 계수기(PC; Program Counter) 다음 번에 실행할 명령어의 주소를 기억하는 레지스터
명령 레지스터(IR; Instruction Register) 현재 실행중인 명령의 내용을 기억하는 레지스터
누산기(AC; Accumulator) 연산된 결과를 일시적으로 저장하는 레지스터로 연산의 중심이 됨

상태 레지스터(Status Register),

Program Status Word Register,

Flag Register

시스템 내부의 순삭ㄴ 순간의 상태가 기록된 정보를 PSW라고 함.

오버플로, 언더플로, 자리올림, 인터럽트 등의 PSW를 저장하고 있는 레지스터

제어장치와 연산장치의 실행 순서를 제어하기 위해 사용되는 레지스터

메모리 주소 레지스터(MAR; Memory Address Register) 기억장치를 출입하는 데이터의 번지를 기억하는 레지스터
메모리 버퍼 레지스터(MBR; Memory Buffer Register) 기억장치를 출입하는 데이터가 잠시 기억되는 레지스터
인덱스 레지스터(Index Register) 주소의 변경, 서브루틴 연결 및 프로그램에서의 반복 연산의 횟수를 세는 레지스터
데이터 레지스터(Data Register) 연산에 사용될 데이터를 기억하는 레지스터
Shift Register

클럭펄스(Clock Pulse)에 의해서 기억된 내용을 왼쪽 또는 오른쪽으로 1Bit씩 자리를 이동시키는 레지스터

2배길이 레지스터라고도 함

 

5. 마이크로프로세서

  • 마이크로프로세서는 제어장치, 연산장치, 레지스터가 하나의 대규모 집적회로 칩(IC)에 내장된 것으로, 개인용 컴퓨터에서 CPU로 사용되고 있다. 
  • 마이크로프로세서는 설계 방식에 따라 RISC와 CISC로 구분된다.
  • RISC방식은 명령어의 종류가 적어 전력 소비가 적고, 속도가 빠르지만 복잡한 연산 수행을 위해서는 명령어들을 반복 조립하여 사용함으로 레지스터를 많이 필요로 하고 프로그램도 복잡하다.
  • CISC방식은 명령어의 종류가 많아 전력 소비가 많고 명령어 설계가 어려워 고가이지만 레지스터를 적게 사용하여 프로그램이 간단하다.
  • 마이크로프로세서는 클럭 주파수와 내부 버스의 폭으로 성능을 평가한다.