1.명령어 병렬 처리기법(ILP: Instruction-Level Parallelism)
1)정의: 명령어을 동시에 실행시켜 CPU 성능 향상을 시키는 방법.
대표적으로 명령어 파이프라이닝,슈퍼스칼라,비순차적 명령어 처리
2.명령어 파이프라이닝
1)정의: 명령어 파이프라인에 명령어를 넣고 동시에 처리하는 기법

2)명령어 파이프라인 : 효율적인 명령어를 처리하기 위한 구조.
*파이프 라인: 연속으로 주어지는 어떤 작업을 처리함에 있어 처리율을 높이는 알고리즘 혹은 구조
-명령어의 처리과정을 나눈다면 아래와 같이 나타낼 수 있다.

-CPU는 실행단계가 겹치지 않으면 아래와 같이 다른 명령어들을 실행할 수 있다.

3)파이프 라인 위험(pipeline hazard)
-명령어 파이프라이닝 기법으로 성능 향상에 실패하고 오류가 발생하는 것.
-종류로 크게 3가지가 있다.

-데이터 위험(data hazard)
:데이터의 의존성에 의해 발생하는 위험. 이전 명령어에 완벽히 수행되야
다음 명령어가 올바르게 실행될수 있기 때문에 발생하는 오류.

-제어 위험(control hazard)
:프로그램 카운터가 갑작스럽게 변화되어 나는 위험.
이전 명령어때문에 프로그램카운터가 바뀌어 실행준비중이던 명령어들이 필요치 않을 떄 오류
이것을 해결하기 위해 사용하는 기술 중 분기예측이 있다.

-구조적 위험(structural harard)
:명령어들을 겹쳐 실행되는 과정에서 서로 다른 명령어가 동시에 ALU,레지스터 등 같은 CPU 부품을
사용하려고 할 때 발생. 자원 위험이라고도 부른다.
3.슈퍼스칼라(superscalar)
1)정의: 여러 개의 명령어 파이프라인을 갖는 구조.

- 여러 개의 파이프 라인 구조를 갖음으로써 성능도 높아지지만 위험도 높아진다.
4.비순차적 명령어 처리
(OoOE:Out-of-Order execution)
1)정의:의존성 없는 명령어들(순서가 바뀌어도 문제가 없는) 간의 순서를 바뀜으로써
명령어 실행 효율을 높이는 것.

-첫번쨰 그림에서 3번의 명령어은 1번과 2번의 명령어가 끝나야 처리가 가능하다.

-두번째 그림에서 3번을 맨 아래에 순서를 재배치 함으로써 실행효율을 높인다.
'컴퓨터 공학 > 혼자 공부하는 컴퓨터 구조 +운영체제' 카테고리의 다른 글
| 12.RAM의 특징과 종류 (0) | 2023.07.03 |
|---|---|
| 11.명령어 집합구조,CISC와 RISC (0) | 2023.07.02 |
| 9.빠른 CPU설계를 위한 설계기법 (0) | 2023.06.29 |
| 8.명령어 사이클과 인터럽트 (0) | 2023.06.28 |
| 7.레지스터 (0) | 2023.06.25 |