명령어 파이프라인 - 위키백과, 우리 모두의 백과사전 명령어 파이프라인 위키백과, 우리 모두의 백과사전. 둘러보기로 가기 검색하러 가기 다섯 개의 명령어가 동시에 실행되고 있다. 하나의 명령어는 다섯 단계를 거쳐 실행되고, 이때 프로세서에서는 첫 번째 명령어의 IF가 실행되면 ID를 실행하는 동시에 다음 명령어의 IF를 실행한다. 그 다음에는 첫 번째의 EX, 두 번째의 ID, 세 번째의 IF를 실행한다. 명령어 파이프라인 ( instruction pipeline ) 은 명령어를 읽어 순차적으로 실행하는 프로세서에 적용되는 기술로, 한 번에 하나의 명령어만 실행하는 것이 아니라 하나의 명령어가 실행되는 도중에 다른 명령어 실행을 시작하는 식으로 동시에 여러 개의 명령어를 실행하는 기법이다. 하나의 명령어는 여러 개의 단계로 나눌 수 있는데, 이때 하나의 명령어를 처리할 때까지 다음 명령어가 처리되지 않고 기다린다면, 명령어의 특정 단계를 처리하는 동안 다른 단계를 처리하는 부분은 아무 작업도 하지 않게 된다. 이때 파이프라인을 사용하면 한 명령어의 특정 단계를 처리하는 동안 다른 부분에서는 다른 명령어의 다른 단계를 처리할 수가 있게 되므로 속도가 향상
##정에 있던 명령어들 ( 파이프라인의 5단계를 진행중인 ) 은 버려지게되므로 분기종료후 예외처리 복귀명령을 통해 복구시켜야한다. 버려지게되는 명령어의 기준은 예외상황마다 다르다. 해저드 ( Hazard ) [ 편집 ] 파이프라인이 속도가 느려지는 경우를 해저드라고 한다. 데이터 해저드는 예상된 시각에 연산자가 사용 불가능할 경우에 일어난다. 예를 들어, 연산을 처리 중이라면 그 다음 명령어는 처리할 수 있는 연산자가 없기 때문에 실행이 연기될 수밖에 없다. 컨트롤 해저드 또는 명령어 해저드는 명령어를 당장 사용할 수 없을 때 일어난다. 캐시에 명령어가 저장되어 있을 경우 빠르게 명령어를 실행할 수 있지만, 해당 명령어가 없을 경우에 메모리로부터 가져와야 하기 때문에 오랜 시간이 걸리고 결국 파이프라인의 속도가 떨어진다. 구조적 해저드는 두 명령어가 동시에 어떤 하드웨어에 접근해야할 때 일어난다. 예를 들어서, 어떤 명령어가 실행이나 쓰기를 위해서 메모리에 접근해야할 때, 다른 명령어가 메모리에서 읽혀지는 경우 이런 해저드가 발생한다. 같이 보기 [ 편집 ] 대기 상태 유닉스 명령어 외부 링크 [ 편집 ] 텀즈 - pipeline and pipelining ; 파이프
비트 인텔 MPX 인텔 시큐어 키 하드웨어 제한 ( 펌웨어 ) Software Guard Extensions ( 인텔 SGX ) Trusted Execution Technology 신뢰 플랫폼 모듈 ( TPM ) 안전한 암호 보조 처리기 하드웨어 보안 모듈 헝즈칩 관련 항목 범용 CPU의 역사 원본 주소 " " 분류 : 명령어 처리 둘러보기 메뉴 개인 도구 로그인하지 않음토론기여계정 만들기로그인 이름공간 문서토론 변수 보기 읽기편집역사 보기 더 보기 검색 둘러보기 대문사용자 모임요즘 화제최근 문서 보기임의 문서로도움말기부 도구 여기를 가리키는 문서가리키는 글의 최근 올리기특수 문서 목록고유 링크문서 정보위키데이터 항목이 문서 인용하기 다른 프로젝트 공용 인쇄 / 내보내기 책 만들기PDF로 다운로드인쇄용 판 다른 언어 日 本 語 中 文 링크 편집 이 문서는 2018년 9월 12일 ( 수 ) 18 : 05에 마지막으로 편집되었습니다. 모든 문서는 크리에이티브 커먼즈 저작자표시 - 동일조건변경허락 3. 0에 따라 사용할 수 있으며, 추가적인 조건이 적용될 수 있습니다. 자세한 내용은 이용 약관을 참고하십시오. 미국 및 다른 국가에 등록되어 있는 Wikimedia Foundation,
##의 특정 단계를 처리하는 동안 다른 부분에서는 다른 명령어의 다른 단계를 처리할 수가 있게 되므로 속도가 향상될 수 있다. 파이프라인의 효율은 브랜치나 서브루틴 콜이 많아질수록 떨어진다. 그 이유는, 브랜치나 서브루틴 콜이 이루어지면, 파이프라인에서 처리되던 명령어들이 다 취소되고 새로 브랜치나 서브루틴의 명령어를 처리해야하기 때문이다. 최신 아키텍처는 분기 예측 등의 기법을 통해 이런 문제를 회피한다. RISC 프로세서의 경우 CISC 프로세서보다 파이프라인 효율이 좋다. RISC는 명령어가 한 클록에 처리되므로, 한 명령어를 오래 처리해서 다음 명령어의 처리가 늦어지지 않기 때문이다. 또한, 메모리에 접근하는 경우, 매우 오랜 처리시간이 걸리는데, RISC는 LOAD나 STORE 명령어만으로 메모리에 접근하므로 비효율적인 접근이 CISC보다 적기 때문이다. 목차 1 파이프라인 붕괴 2 해저드 ( Hazard ) 3 같이 보기 4 외부 링크 파이프라인 붕괴 [ 편집 ] 명령어 수행과정중에 분기가 발생할 경우 분기전에 명령 수행과정에 있던 명령어들 ( 파이프라인의 5단계를 진행중인 ) 은 버려지게되므로 분기종료후 예외처리
( AGU ) 부동 소수점 장치 ( FPU ) 로드 스토어 유닛 ( LSU ) 분기 예측 유니파이드 레저베이션 스테이션 배럴 시프터 언코어 Sum addressed decoder ( SAD ) 프론트 사이드 버스 백사이드 버스 노스브리지 사우스브리지 가산기 곱셈기 복호화 주소 디코더 멀티플렉서 멀티플렉서 레지스터 캐시 메모리 관리 장치 ( MMU ) IOMMU 통합 메모리 컨트롤러 ( IMC ) 전원 관리 장치 ( PMU ) 변환 색인 버퍼 ( TLB ) 스택 엔진 레지스터 파일 프로세서 레지스터 하드웨어 레지스터 메모리 버퍼 레지스터 ( MBR ) 프로그램 카운터 마이크로코드 ROM 데이터패스 제어 장치 인스트럭션 유닛 재배열 버퍼 버퍼 쓰기 버퍼 코프로세서 전자 개폐기 전자 회로 집적 회로 3차원 집적 회로 불리언 회로 디지털 회로 아날로그 회로 혼합 신호 집적 회로 전원 관리 집적 회로 회로 논리 회로 조합 논리 순차 논리 이미터 결합 논리 ( ECL ) 트랜지스터 - 트랜지스터 논리 ( TTL ) 글루 로직 게이트 게이트 배열 계수기 버스 반도체 소자 클럭 속도 CPU 배수 비전 칩 멤리스터 전원 관리 APM ACPI 동적 주파수 스케일링 동적 전압 스케일링 클럭 게이팅 하드웨어보안 NX 비트 인텔 MPX 인텔 시큐어 키 하드웨어 제한 ( 펌웨어 ) Software Guard Extensions ( 인텔 SG
##기 [ 편집 ] 대기 상태 유닉스 명령어 외부 링크 [ 편집 ] 텀즈 - pipeline and pipelining ; 파이프라인 vdehCPU 기술구조 튜링 기계 포스트 튜링 기계 범용 튜링 기계 양자 튜링 기계 벨트 머신 스택 머신 레지스터 머신 카운터 머신 포인터 머신 랜덤 접근 기계 랜덤 액세스 스토어드 프로그램 머신 유한 상태 기계 큐 오토마톤 폰 노이만 하버드 ( 수정됨 ) 데이터플로 TTA 셀룰러 인공신경망 기계 학습 딥 러닝 신경 처리 장치 ( NPU ) 돌림형 신경망 로드 / 스토어 아키텍처 레지스터 메모리 아키텍처 엔디언 FIFO 제로 카피 NUMA HUMA HSA 모바일 컴퓨팅 서피스 컴퓨팅 착용 컴퓨팅 이기종 컴퓨팅 병렬 컴퓨팅 병행 컴퓨팅 분산 컴퓨팅 클라우드 컴퓨팅 무정형 컴퓨팅 유비쿼터스 컴퓨팅 패브릭 컴퓨팅 재배열 컴퓨팅 인지 컴퓨팅 아날로그 컴퓨팅 기계식 컴퓨팅 하이브리드 컴퓨팅 디지털 컴퓨팅 DNA 컴퓨팅 컴퓨팅 화학 컴퓨팅 유기 컴퓨팅 컴퓨팅 양자 컴퓨터 신경 모방 컴퓨팅 광 컴퓨터 리버서블 컴퓨팅 비전통 컴퓨팅 하이퍼 계산 3진법 컴퓨터 대칭형 다중 처리 ( SMP ) 비대칭형 다중 처리 ( AMP ) 캐시 계층 메모리 계층 구조 ISA 유형 ASIP CISC RISC EDGE ( TRIPS ) VLIW ( EPIC ) MISC OISC NISC ZISC 비교 ISA X86 z / 아키텍처 ARM MIPS 파워
EPIC ) MISC OISC NISC ZISC 비교 ISA X86 z / 아키텍처 ARM MIPS 파워 아키텍처 ( 파워PC ) SPARC 밀 아이테니엄 ( IA - 64 ) 알파 프리즘 슈퍼H V850 클리퍼 VAX 유니코어 PA - RISC 마이크로블레이즈 RISC - V 워드 크기 1비트 2비트 4비트 8비트 9비트 10비트 12비트 15비트 16비트 18비트 22비트 24비트 25비트 26비트 27비트 31비트 32비트 33비트 34비트 36비트 39비트 40비트 48비트 50비트 60비트 64비트 128비트 256비트 512비트 가변 실행 명령어 파이프라인 버블 피연산자 포워딩 비순차적 명령어 처리 레지스터 리네이밍 모의 실행 분기 예측 메모리 의존성 예측 하자드 병렬 레벨 비트 비트 직렬 워드 명령어 파이프라이닝 스칼라 슈퍼스칼라 태스크 스레드 프로세스 데이터 벡터 메모리 멀티스레딩 시간적 동시 ( SMT ) ( 하이퍼스레딩 ) SpMT 선점 협력형 클러스터 멀티스레드 ( CMT ) 하드웨어 스카웃 플린 분류 SISD SIMD ( SWAR ) SIMT MISD MIMD SPMD 어드레싱 모드 CPU 성능 초당
분류 SISD SIMD ( SWAR ) SIMT MISD MIMD SPMD 어드레싱 모드 CPU 성능 초당 명령 수 ( IPS ) 클럭당 명령어 처리 횟수 ( IPC ) 명령어 당 사이클 ( CPI ) 플롭스 ( FLOPS ) 초당 트랜잭션 수 ( TPS ) SUPS 전성비 계산 차수 캐시 성능 측정 및 메트릭 코어 카운트 싱글 코어 프로세서 멀티 코어 매니코어 프로세서 유형 중앙 처리 장치 ( CPU ) GPGPU AI 가속기 시각 처리 장치 ( VPU ) 벡터 프로세서 배럴 프로세서 스트림 프로세서 디지털 신호 처리 장치 ( DSP ) 입출력 프로세서 / DMA 컨트롤러 네트워크 프로세서 베이스밴드 프로세서 물리 처리 장치 ( PPU ) 코프로세서 안전한 암호 보조 처리기 주문형 반도체 FPGA FPOA 복합 프로그래머블 논리 소자 마이크로컨트롤러 마이크로프로세서 모바일 프로세서 노트북 프로세서 초저전압 프로세서 멀티 코어 매니코어 프로세서 타일 프로세서 멀티칩 모듈 ( MCM ) 칩 스택 멀티칩 모듈 단일 칩 체제 ( SoC ) 멀티프로세서 시스템 온 칩 ( MPSoC ) 프로그래밍 가능 단일 칩 체제 ( PSoC ) 네트워크 온 칩 ( NoC ) 구성 요소 실행 장치 ( EU ) 산술 논리 장치 ( ALU ) 주소 생성 장치 ( AGU ) 부동 소수점 장치 ( FPU ) 로드 스토어 유닛 ( LSU ) 분기 예측 유니파이드 레저베이션 스테이션 배럴 시프
##한 내용은 이용 약관을 참고하십시오. 미국 및 다른 국가에 등록되어 있는 Wikimedia Foundation, Inc. 소유의 등록 상표입니다. 개인정보 정책 위키백과 소개 면책 조항 개발자 쿠키 정책 모바일 보기
명령어 파이프라인(instruction pipeline)은 명령어를 읽어 순차적으로 실행하는 프로세서에 적용되는 기술로, 한 번에 하나의 명령어만 실행하는 것이 아니라 하나의 명령어가 실행되는 도중에 다른 명령어 실행을 시작하는 식으로 동시에 여러 개의 명령어를 실행하는 기법이다. 하나의 명령어는 여러 개의 단계로 나눌 수 있는데, 이때 하나의 명령어를 처리할 때까지 다음 명령어가 처리되지 않고 기다린다면, 명령어의 특정 단계를 처리하는 동안 다른 단계를 처리하는 부분은 아무 작업도 하지 않게 된다. 이때 파이프라인을 사용하면 한 명령어의 특정 단계를 처리하는 동안 다른 부분에서는 다른 명령어의 다른 단계를 처리할 수가 있게 되므로 속도가 향상될 수 있다. 파이프라인의 효율은 브랜치나 서브루틴 콜이 많아질수록 떨어진다. 그 이유는, 브랜치나 서브루틴 콜이 이루어지면, 파이프라인에서 처리되던 명령어들이 다 취소되고 새로 브랜치나 서브루틴의 명령어를 처리해야하기 때문이다. 최신 아키텍처는 분기 예측 등의 기법을 통해 이런 문제를 회피한다. RISC 프로세서의 경우 CISC 프로세서보다 파이프라인 효율이 좋다. RISC는 명령어가 한 클록에 처리되므로, 한 명령어를 오래 처리해서 다음 명령어의 처리가 늦어지지 않기 때문이다. 또한, 메모리에 접근하는 경우, 매우 오랜 처리시간이 걸리는데, RISC는 LOAD나 STORE 명령어만으로 메모리에 접근하므로 비효율적인 접근이 CISC보다 적기 때문이다.