Pipeline CPU with Hazards #Hazard 1. 구조적 해저드 - 같은 클럭 사이클에 실행하기를 원하는 명령어의 조합을 하드웨어가 지원할 수 없다는 것을 의미한다. 2. 데이터 해저드 - 한 단계가 다른 단계가 끝나기를 기다리기 때문에 파이프라인이 지연되어야만 하는 경우에 일어난다. 3. 제어 해저드 - 다른 명령어들이 실행 중에 한 명령어의 결과 값에 기반을 둔 결정을 할 필요가 있을 때 일어난다. * 해결법 구조적 해저드(Structual Hazard) 1) Instruction memory와 Data memory를 분리시킨다. 2) 포트를 추가한다. 3) stall 데이터 해저드(Data Hazard) 1) Fowarding 2) stall 제어 해저드(Control Hazard) 1) Prediction 2) Delayed .. 더보기 Pipeline CPU #Pipeline CPU 파이프라이닝은 여러개의 명령어가 중첩해 실행되는 구현기술이다. 오늘날 파이프라이닝은 프로세서를 빠르게 만드는 핵심 기술이다. 파이프라이닝은 순차적인 명령군 스트림에 있는 명령어 사이에서 병렬성을 추구하는 기술이다. 기본적으로 프로그래머에게 보이지 않는다는 장점이 있다. * Piplelined Single Cycle CPU 더보기 Multi Cycle CPU #Multi Cycle CPU Multi Cycle CPU는 각 Instruction이 필요한 Clock만 쓰는 것이다. Single Cycle CPU에서는 가장 길게 걸리는 Cycle에 Cycle time을 맞춰야 했지만 Multi Cycle CPU에서는 Cycle수를 조절할 수 있어서 최적화가 가능하다. 더보기 이전 1 2 3 4 5 6 7 ··· 26 다음