Computer Pipelining
Intel je prvi put uveo kompjuterski pipelining u 486 čipu. Način na koji cjevovod funkcionira analogan je industrijskoj montažnoj liniji. Unutar CPU-a, niz jedinica kola sa različitim funkcijama formira cevovod za obradu instrukcija; x86 instrukcija je razbijena na pet ili šest koraka, koji se zatim izvršavaju uzastopno od strane ovih jedinica. Ovo omogućava završetak instrukcije unutar jednog ciklusa procesorskog takta, čime se povećava brzina obrade procesora. U klasičnom Pentium procesoru, svaki cjevovod sa cijelim brojem sastoji se od četiri faze-prethodnog preuzimanja, dekodiranja, izvršavanja i pisanja-nazad-dok se cjevovod s plutajućim-zarezom sastoji od osam faza.
Pipelining je ključna tehnologija koja se široko koristi u mikroprocesorima (CPU). Opisuje metod kojim se instrukcije izvršavaju unutar CPU-a; da bi se razumelo cevovodstvo, prvo mora da se razume uputstva i proces njihovog izvršavanja.
Računarska uputstva
Računarska instrukcija je specifičan skup binarnih podataka koji govori CPU-u šta da radi. Ako se CPU poredi sa proizvodnim pogonom, instrukcija je slična narudžbini korisnika; pokreće niz radnji unutar CPU "fabrike", dajući na kraju računski rezultat-gotov proizvod. Kako ovo zapravo funkcionira? Prvo, mora postojati odjel za primanje naredbi-jedinica za dohvaćanje instrukcija CPU-a; drugo, mora postojati radionica za ispunjavanje naloga-jedinice za izvršavanje instrukcija CPU-a. U tvornici, proizvodnja predmeta je podijeljena na više koraka proizvodnje; slično tome, instrukcija se pretvara u niz odgovarajućih mikro-operacija unutar CPU-a. Završavanje ovih mikro-operacija u nizu predstavlja izvršenje cijele instrukcije.
Izvršenje instrukcija
U nižim{0}}CPU-ima, izvršenje instrukcija je serijsko; jednostavno rečeno, jedna instrukcija je završena prije nego što počne sljedeća. Ovo je kao pomenuta fabrika u svojim ranim danima, koja se sastojala samo od male radionice i samostalnog vlasnika koji radi sam: po prijemu narudžbe on bi bio u potpunosti zaokupljen ispunjavanjem prve narudžbe i ne bi mogao prihvatiti drugu. Ciklus prijema i dovršavanja narudžbi-ili preuzimanja i izvršavanja instrukcija-je dakle serijski proces. Kasnije je šef otkrio da za primanje naređenja nije potrebno mnogo vremena. Uz pomoć pomoćnika, njih dvoje su mogli raditi samostalno; ovo je omogućilo šefu da prihvati novu narudžbu dok istovremeno završava proizvode za prethodnu. U smislu CPU arhitekture, ovo odgovara razdvajanju jedinice-dohvaćanja instrukcija od jedinice-izvršavanja instrukcija. Shodno tome, CPU može paralelno dohvatiti sljedeću instrukciju dok izvršava trenutnu. Ovo je predstavljalo kvalitativni iskorak u CPU tehnologiji, prebacujući operacije sa serijske na paralelnu obradu i uspostavljajući prototip cevovoda instrukcija.
Kada CPU završi gore pomenuti korak, preostali izazov leži u poboljšanju sposobnosti paralelne obrade. Crpeći inspiraciju iz fabričkih montažnih linija, dizajneri CPU-a razbili su izvršavanje jedne instrukcije na više različitih faza-ili "mikro-instrukcija"-čime su značajno smanjili složenost instrukcija, pojednostavili dizajn logike i povećali brzinu. U CPU-ima koji koriste tehnologiju cjevovoda, čim jedna instrukcija završi svoju prvu "fazu", sljedeća instrukcija odmah ulazi u cjevovod kako bi započela izvršavanje. Jasno je da ovaj pristup cjevovoda zahtijeva više izvršnih jedinica-što je karakteristika implementirana u x86 čipovima.
