파이프라인 해저드 제어와 명령어 수준 병렬성 활용 결
CPU 마이크로아키텍처에서 파이프라이닝의 핵심은 명령어를 여러 단계로 나눠 동시에 처리해 처리량을 높이는 것입니다. 단일 명령어 실행을 5~10단계로 분할하면 단계당 클럭 주기를 줄일 수 있어 동작 주파수를 높일 수 있습니다.
파이프라이닝의 도전은 데이터·제어·구조 해저드 처리입니다. 포워딩으로 데이터 의존성을 해소하고, 분기 예측으로 제어 해저드의 패널티를 줄이는 방법을 수업에서 구현했습니다. 분기 예측 정확도가 낮으면 파이프라인 플러시 비용이 커져 실제 IPC가 이론값에 못 미칩니다.
슈퍼스칼라 설계는 여러 명령어를 한 클럭에 발행하는 명령어 수준 병렬성 활용입니다. 발행 폭을 넓힐수록 병렬성이 높아지지만 디코더·레지스터 파일·실행 유닛의 복잡도가 함께 증가해, 하드웨어 비용과 성능 사이의 트레이드오프가 핵심 설계 결정입니다.