컴퓨터 구조 ‐ 빠른 CPU를 위한 설계 기법 - dnwls16071/Backend_Study_TIL GitHub Wiki
📚 코어와 멀티 코어
- 코어(Core)란, 명령어를 실행하는 부품
- 멀티 코어(Mutli Core)란, 여러 개의 코어(Core)
📚 쓰레드와 멀티 쓰레드
- 쓰레드(Thread)란, 실행 흐름의 단위
- 하드웨어 쓰레드 : 하나의 코어가 동시에 처리하는 명령어 단위
- 소프트웨어 쓰레드 : 하나의 프로그램에서 독립적으로 실행되는 단위
📚 명령어 파이프라인
파이프라인 위험 : 데이터 위험 / 제어 위험 / 구조적 위험
- 데이터 위험 : 명령어 간의 의존성에 의해 야기
- 제어 위험 : 프로그램 카운터(PC)의 갑작스러운 변화
- 구조적 위험 : 서로 다른 명령어가 같은 CPU 부품을 쓰려고 할 때
📚 슈퍼스칼라
- CPU 내부에 여러 명령어 파이프라인을 포함한 구조
- 관리해야 되는 명령어 파이프라인의 증가로 파이프라인 위험도 증가
📚 CISC와 RISC
CISC
- 복잡한 명령어 집합을 활용하는 컴퓨터(CPU)
- 다양하고 강력한 명령어를 활용하며 상대적으로 적은 수의 명령어로도 프로그램을 실행할 수 있다.
- 명령어 파이프라이닝이 불리하다. 명령어 크기와 실행되기까지의 시간이 일정하지 않다.
- 명령어 하나를 실행하는 데에 여러 클럭 주기가 필요
RISC
- 명령어 종류가 적고 짧고 규격화된 명령어를 사용