pipeline and pipelining ; 파이프라인
컴퓨터에서, 파이프라인이란 프로세서로 가는 명령어들의 움직임, 또는 명령어를 수행하기 위해 프로세서에 의해 취해진 산술적인 단계가 연속적이고, 다소 겹치는 것을 말한다. 파이프라인이 없다면 컴퓨터의 프로세서는 메모리에서 첫 번째 명령어를 가지고 와서, 그것이 요구하는 연산을 수행하고, 그리고 나서 다음번 명령어를 메모리로부터 가져오는 식으로 동작한다. 명령어를 가져오는 동안에, 프로세서의 산술연산부분은 다음 명령어가 도착되기를 기다리며 쉬어야만 한다. 파이프라인을 쓰면, 컴퓨터 구조는 프로세서가 산술연산을 수행하는 동안에 다음번 명령어를 가져올 수 있으며, 그것을 다음 명령어 연산이 수행될 수 있을 때까지 프로세서 근처의 버퍼에 가져다놓는다. 명령어를 가져오는 단계는 끊임없이 계속된다. 그 결과, 주어진 시간동안에 수행될 수 있는 명령어의 수가 증가한다.
파이프라인은 이따금, 한 제품을 이루는 각기 다른 부품들이 조립공정에서 동시에 만들어지는 것에 비유된다. 비록 거기에는 다소 순차적인 한계가 있지만, 전체 공정에 있어서는 동시에 진행될 수 있는 동작들의 장점을 취할 수 있다.
컴퓨터 프로세서의 파이프라인은, 때로 명령어 파이프라인과 연산 파이프라인으로 나뉘는 경우도 있다. 명령어 파이프라인은 명령어가 프로세서를 통해 움직이는 단계를 의미하는데, 여기에는 가져와서, 필요한 경우 버퍼에 저장되었다가, 실행되어지는 것들을 포함한다. 산술연산 파이프라인은 나뉘어지고, 중복해서 수행될 수 있는 산술연산의 일부를 의미한다. 파이프라인은 메모리 단계별로 여러 가지 장소로 데이터를 옮기는 메모리 콘트롤러에도 적용된다.
OLD개발이야기/개발관련 글