2008/02/19 15:37
간접사이클과 명령어 파이프라이닝 General Tech.2008/02/19 15:37
간접사이클이란?
- 기억장치에 저장된 데이터는 명령어에는 그 데이터를 호출하기 위한 기억장치의 주소가 포함되어 있을 것이다. 명령어에 포함된 주소를 데이터의 주소가 저장된 기억장치 주소로 사용하는 경우에 실행 사이클이 시작되기 전에 해당 주소를 기억장치로 부터 읽어와야 한다.
t0: MAR <- IR(addr)
t1: MBR <- M[MAR]
t2: IR(addr) <- MBR
이 방식은 간접 주소지정 방식에서 사용됨.
명령어 파이프라이닝
<명령어>
명령어 ------> 인출단계 ------------> 실행단계 -------> 실행결과
1 2 3 4
클럭주기 |-------|----------|-----------|-----------|
인출 실행
|<---->|<-------->|
인출 실행
|<-------->|<-------->|
인출 실행
|<-------->|<-------->|
명령어를 실행하는 하드웨어는 인출단계(fetch stage)와 실행단계(execute stage)라는 두 개의 파이프 라인 단계들로 나누어진다.
두번째 단계에서는 실행과 동시에 인출이 일어난다. 이렇게 먼저 인출이 일어나는 것을 명령어 선인출 이라고 하거나 중복 인출 이라고 한다.
인출 + 실행 단계의 경우는 시간이 좀 걸리기지는 2번째 단계부터는 2배로 빨라진다.
이런 파이프라인의 갯수가 많을수록 성능이 향상된다.
파이프라인의 구성
명령어 인출(IF) : 다음 명령어를 기억장치에서 인출
명령어 해독(ID): 디코더를 이용해서 명령어 해석
오퍼랜드 인출(OF) : 기억장치에서 오퍼랜드를 인출
실행(EX) : 지정된 연산을 수행
- 기억장치에 저장된 데이터는 명령어에는 그 데이터를 호출하기 위한 기억장치의 주소가 포함되어 있을 것이다. 명령어에 포함된 주소를 데이터의 주소가 저장된 기억장치 주소로 사용하는 경우에 실행 사이클이 시작되기 전에 해당 주소를 기억장치로 부터 읽어와야 한다.
t0: MAR <- IR(addr)
t1: MBR <- M[MAR]
t2: IR(addr) <- MBR
이 방식은 간접 주소지정 방식에서 사용됨.
명령어 파이프라이닝
<명령어>
명령어 ------> 인출단계 ------------> 실행단계 -------> 실행결과
1 2 3 4
클럭주기 |-------|----------|-----------|-----------|
인출 실행
|<---->|<-------->|
인출 실행
|<-------->|<-------->|
인출 실행
|<-------->|<-------->|
명령어를 실행하는 하드웨어는 인출단계(fetch stage)와 실행단계(execute stage)라는 두 개의 파이프 라인 단계들로 나누어진다.
두번째 단계에서는 실행과 동시에 인출이 일어난다. 이렇게 먼저 인출이 일어나는 것을 명령어 선인출 이라고 하거나 중복 인출 이라고 한다.
인출 + 실행 단계의 경우는 시간이 좀 걸리기지는 2번째 단계부터는 2배로 빨라진다.
이런 파이프라인의 갯수가 많을수록 성능이 향상된다.
파이프라인의 구성
명령어 인출(IF) : 다음 명령어를 기억장치에서 인출
명령어 해독(ID): 디코더를 이용해서 명령어 해석
오퍼랜드 인출(OF) : 기억장치에서 오퍼랜드를 인출
실행(EX) : 지정된 연산을 수행
'General Tech.' 카테고리의 다른 글
| Semantic Web Interface (0) | 2008/02/20 |
|---|---|
| 인터럽트 사이클 (0) | 2008/02/19 |
| 간접사이클과 명령어 파이프라이닝 (0) | 2008/02/19 |
| 명령어 인출 사이클과 실행 사이클 (0) | 2008/02/18 |
| SOA란? (0) | 2008/02/17 |
| CPU의 구조 (0) | 2008/02/17 |
