본문 바로가기
컴퓨터시스템구조

[컴퓨터시스템구조] 19. 프로세서(논리 설계, 조합 요소, 논리 요소)

by 파스텔코랄 2023. 11. 6.

소개

  • CPU 성능 요인
    • 명령어 수(Instruction count) : ISA, 컴파일러에 의해 결정
    • CPI와 사이클시간(Cycle time) : CPU 하드웨어에 따라 결정
  • 두 가지 MIPS 구현을 검토할 것이다.
    • 1. 단순화된 버전
    • 2. 현실적인 파이프라인 버전
  • 단순 하위 집합으로 대부분의 측면을 보여줌
    • 메모리 참조 : lw, sw
    • 산술/논리 : add, sub, and, or, slt
    • 제어 전달 : beq, j

 



명령어 실행

  • PC → 명령어 메모리, 명령어 가져오기
  • 레지스터 번호 → 파일 등록, 레지스터 읽기
  • 명령어 class에 따라 다르다.
    • ALU를 사용하여 계산
      • 산술 결과
      • 로드/저장을 위한 메모리 주소
      • 지점 대상 주소
    • 로드/저장을 위해 데이터 메모리에 액세스
    • PC : 대상 주소 or PC + 4(명령어 크기가 4이기 때문)

 

  • PC(프로그램카운터) : 32bit 레지스터, 명령어 인코딩의 주소가 저장되어 있다.
  • 명령어를 디코딩한 후 해당 레지스터에 접근하고, 레지스터에 있는 값을 가지고 연산한다.

 


 

CPU 개요

  • 멀티플랙서(Multiplexer) : 와이어를 그냥 연결할 수는 없기때문에 멀티플렉서 사용

 


 

논리 설계

  • 이진수로 인코딩된 정보
    • 저전압 = 0, 고전압 = 1
    • 비트당 와이어 1개
    • 다중 와이어 버스에 인코딩된 다중 비트 데이터
  • 조합 요소(Combinational Elements)
    • 데이터 작업
    • 출력은 입력의 함수
  • 순차 요소(Sequential elements)
    • 저장 정보

 


 

조합 요소(Combinational Elements)

AND-gate Y = A & B
Adder Y = A + B
Multiplexer Y = S ? I1 : I0
Arithmetic/Logic Unit Y = F(A, B)

 


 

순차 요소(Sequential elements)

  • 레지스터 : 회로에 데이터를 저장
    • 클록 신호를 사용하여 저장된 값을 업데이트할 시기를 결정한다.
    • Edge-triggered : Clk가 0 → 1로 변경될 때 업데이트된다.

  • Write 제어 레지스터
    • Write 제어 입력이 1인 경우만 클럭 에지 업데이트된다.
    • 나중에 저장된 값이 필요할 때 사용한다.
  • 클럭 시그널이 0 → 1로 바뀌며 동시에 write 시그널이 1일때만 업데이트된다.

 


 

Clocking  방법론

  • 조합 논리는 클록 주기 동안 데이터를 변환한다.
    • 클록 에지 사이
    • 상태 요소(state elements)에서 입력, 상태 요소(state elements)로 출력
    • 가장 긴 지연이 클록 주기를 결정
  • 여러 연산 수행이 있을때 결국 가장 연산이 느린 것으로 맞춰짐

 

 

댓글