파이프라인 CPU의 성능 분석 2

2021. 3. 23. 17:23Computer(인강)/컴퓨터 구조

728x90
반응형

안녕하세요 bannavi입니다^ㅅ^

오늘은 지난시간에 이어서 파이프라인 CPU의 성능분석을 살펴보겠습니다

바로 시작해보겠습니다

 

 

 

4.8 파이프라인 분기예측

# 분기 명령어의 처리

* 분기 예측(branch prediction)

1. 실제 다양한 프로그램의 실행 결과를 분석한 결과 참조의 시간적 지역성과 유사하게 일부 명령어들은 반복 수행되며 반복 실행시에는 규칙성을 갖는다.

2. 이러한 예측 기법을 이용하여 분기 및 적재 명령어가 참조하는 오퍼랜드도 반복 참조 시 규칙성을 갖고 있으며 이를 이용할 경우 명령어 fetch 과정에서 신속하게 오퍼랜드의 제공 및 fetch가 수월해질 수 있다 다만 예측 실패시 지불해야할 패널티(시간 지연)가 있을 수 있다.

 

 

 

4.9 RISC Processor

 

# RISC 프로세서의 설계목표

1. 실행 명령어 수는 증가 하더라도 작업 처리 시간의 감소가 가능하다

2. 명령어당 실행 클록 수(CPI)와 클록 주기를 파이프라인 구조를 이용하여 감소시킬 수 있다. 

 

# RISC 프로세서의 구조적 특징

1. 명령어의 1사이클 실행을 위한 파이프라인 구조, 메모리 참조를 위한 온칩 캐쉬(CPU내 메모리 구현, 명령어 캐쉬, 자료 캐쉬로 구성)

2. 간단한 명령 코드와 주소 지정 모드 및 하드와이어 적 제어 장치

3. 신속한 오퍼랜드 참조/문맥 전환을 위한 레지스터 집합(중첩된 레지스터 윈도우)

4. 실수 연산의 별도 처리를 위한 코프로세서(Co-processor)

 

 

# RISC 파이프라인

* 명령어 사이클은 세개의 부연산으로 나뉘어 다음과 같은 세 세그먼트로 구성

I : 명령어의 fetch

A : ALU의 동작

E :명령어의 실행

 

 

4.10 파이프라인 CPU 성능 분석

이론적으로는 명령어 세그먼트의 횟수가 많아질수록 파이프라인의 이론적 최대속도가 증가할 것으로 분석되었으나 실제 상황은 그렇게 단순하지 않다.

1. 모든 명령어는 동일한 처리 과정(세그먼트의 적용)으로 처리되어야 한다.

2. 파이프라인을 구성하는 각 단계의 처리 시간이 일정해야한다.

3. 모든 명령어는 작성된 순서에 따라 순차적(분기 명령, 함수 호출, 반환 명령 등에 의해 순차성이 깨짐)으로 실행되어야 한다.

4. 사용 명령어들 사이에는 상호 의존성이 없어야 한다.

5. 명령어들 처리 시 공유 자원의 충돌이 없어야한다.

728x90
반응형