문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 슈퍼스칼라 (문단 편집) === 구현 방식 === 가장 기본적인 파이프라인은 각 명령어를 처리 단계별로 작게 쪼갠 뒤 순차적 (in-order) 으로 처리하는 방식이다. 이때 명령어들 중에서 소수점 연산 명령어 혹은 메모리 읽기/쓰기 명령어 등 상대적으로 많은 클락 사이클을 필요로 하는 명령들이 있는데, 뒤따르는 간단한 명령들이 이런 긴 명령들의 결과에 종속성이 없어서 실제로는 먼저 처리될 수 있는 경우에도 순차적 방식에서는 해저드 방지를 위해 무조건 앞의 명령어의 결과가 확정될 때까지 기다려야 하기 때문에 처리 속도에서 손해를 보게 된다. 이를 개선하기 위해서 [[비순차적 실행|비순차적 (Out-Of-Order)]] 파이프라인 방식이 고안되었는데, 핵심은 재배열 버퍼 (Reorder Buffer) 라는 것을 도입, 여러 명령어들을 버퍼 안에 배열해 두고 종속성이 없어진 명령어들이면 순차와 관계 없이 바로바로 한꺼번에 처리될 수 있도록 하는 것이다. 그런데 이때 분기 명령어 (Branch Instruction) 의 결과 예측에 실패하는 경우 (Branch Prediction Failure) 재배열 버퍼에서 진행되고 있던 내용을 제거하고 새로 명령어를 읽어와야(인출) 하는데 (Instruction Fetch), 이때 명령어를 하나씩 읽어오는 기존 방식을 그대로 사용하면 충분히 빠르게 버퍼를 다시 채울 수 없어서 [[병목 현상]]이 심해진다. 이 회복 병목 문제를 해결하기 위해 여러 명령어를 한꺼번에 읽어오는 방식을 적용한 컴퓨터 구조를 슈퍼스칼라 구조라고 한다. 슈퍼스칼라의 규모는 학계에서는 주로 '방향(N-way)'으로 표현하지만, 업계에서는 보통 '폭(N-wide)'이나 '발행(N-issue)'으로 더 많이 표현하는 편이다.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기