컴퓨터 시스템 개요 Day8 ✍

손수빈·2023년 8월 30일
0

컴퓨터 구조론

목록 보기
8/8

2.2.4 간접 사이클(Indirect Cycle)

  • 명령어에 포함되어 있는 주소를 이용하여, 그 명령어 실행에 필요한 데이터의 주소를 인출하는 사이클
    -> 간접 주소지정 방식(Indirect Addressing Mode)에서 사용

  • 인출 사이클과 실행 사이클 사이에 위치

  • 간접 사이클에서 수행될 마이크로-연산
    t0:MAR<IR(addr)t_0 : MAR <- IR(addr)
    t1:MBR<M[MAR]t_1 : MBR <- M[MAR]
    t2:IR(addr)<MBRt_2 : IR(addr) <- MBR

    • 인출된 명령어의 주소 필드 내용을 이용하여 기억장치로부터 데이터의 실제 주소를 인출하여 IR의 주소 필드에 저장

2.3 명령어 파이프라이닝(Instruction Pipelining)

  • CPU의 프로그램 처리 속도를 높이기 위하여 CPU 내부 하드웨어를 여러 단계로 나누어 동시에 처리하는 기술

2-단계 명령어 파이프라인(Two-Stage Instruction Pipeline)

-명령어를 실행하는 하드웨어를 인출단계(Fetch Stage)와 실행 단계(Execute Stage)라는 두 개의 독립적인 파이프라인 모듈로 분리
-두 단계들에 동일한 클록을 가하여 동작 시간을 일치시키면,

1) 첫번째 클록 주기에서는 인출 단계가 첫 번째 명령어를 인출
2) 두 번재 클록 주기에서는 인출된 첫 번째 명령어가 실행 단계로 보내져서 실행되며, 그와 동시에 인출 단계는 두 번째 명령어를 인출

  • 2-단계 파이프라인을 이용하면 명령어 처리 속도가 두 배 향상

  • 문제점: 두 단계의 처리 시간이 동일하지 않으면 두 배의 속도 향상을 얻지 못함(파이프라인 효율 저하)
    - 해결책: 파이프라인 단계의 수를 증가시켜 각 단계의 처리 시간을 같게 함.
    -> 파이프라인 단계의 수를 늘리면 전체적으로 속도 향상이 더 높아짐

    4-단계 명령어 파이프라인

  • 명령어 인출(IF) 단계: 다음 명령어를 기억장치로부터 인출

  • 명령어 해독(ID) 단계: 해독기(Decoder)를 이용하여 명령어를 해석

  • 오퍼랜드 인출(OF) 단계: 기억장치로부터 오퍼랜드를 인출

  • 실행(EX) 단계: 지정된 연산을 수행

    파이프라인에 의한 전체 명령어 실행 시간

  • 파이프라인 단계 수 =kk

  • 실행할 명령어들의 수 = NN

  • 각 파이프라인 단계가 한 클럭 주기씩 걸린다고 가정한다면

    파이프라인에 의한 전체 명령어 실행 시간(TkT_k):

    Tk=k+(N1)T_k = k + (N - 1)
    즉, 첫 번째 명령어를 실행하는데 kk 주기가 걸리고, 나머지 (N1)(N-1)개의 명령어들은 각각 한 주기씩만 소요

파이프라인 되지 않은 경우의 NN개의 명령어들의 실행 시간(T1)(T_1):

T1=k×NT_1 = k \times N

profile
기록하는 개발자를 목표로

0개의 댓글

관련 채용 정보