Toru (arvutustehnika)

Allikas: Vikipeedia

Toru ehk konveier (inglise keeles pipeline) on kogum jadamisi ühendatud andmete töötlemise elemente, kus ühe elemendi väljund on järgmise elemendi sisendiks. Teiste sõnadega öeldes on see võimalus teha operatsioone samaaegselt. Analoogselt toimub töö ka suurtes tehastes, kus konveierilindi eri osades tehakse erinevaid operatsioone, konveierilindi lõpus väljub liinilt aga juba valmistoode.

Arvuti töökiirust saab tõsta mitmel viisil:

  • Kasutades kiiremaid ahelaid protsessori ja mälu tegemiseks
  • Tehes osa operatsioone ära samaaegselt.

Käesolev artikkel räägib operatsioonide samaaegse tegemise eelistest ja puudustest.

Näide[muuda | redigeeri lähteteksti]

Lahutame käsu sisselugemise ja täitmise neljaks etapiks:

  • käsu lugemine
  • käsu dekodeerimine
  • käsu täitmine
  • tulemuste salvestamine

Sellise jaotuse tulemusena saame protsessoris korraga täita nelja käsku, kuigi iga käsu täitmine on igal ajahetkel erinevas etapis. Ühte käsku loeme, sellele eelnenud käsku dekodeerime, veel varasemat käsku täidame ja sellele eelnenud käsu tulemusi kirjutame salvestuskohta (mällu, ...).


Iga etapp täidetakse ära ühe takti jooksul. Erinevate etappide täitmisele kuluv aeg on erinev. Kui mõne etapiga saadakse kiiremini ühele poole, on seade ülejäänud aja ooterežiimis. Seega on toru efektiivne ligikaudu ühepikkuste etappide korral. Kriitiline operatsioon on mälust lugemine:

Seetõttu on iga põhimälust lugemise ajal protsessori töö teatud ajaks seisatud (ingl processor stalls).

Riskid[muuda | redigeeri lähteteksti]

  • Strukturaalne risk. Tekib näiteks siis, kui kaks seadet soovivad sama sammu ajal kasutada sama riistvararessurssi.
  • Andmerisk. Kahe järjestikuse käsu puhul, mida torus täidetakse, ei pruugi esimese käsu tulemus veel olla kättesaadav enne järgmise käsu alustamist.

Toru ei tee üksiku käsu täitmist kiiremaks. Suureneb täidetud käskude arv ajaühikus. Tulemus “üks käsk iga sammu ajal” on teoreetiliseks ülempiiriks, praktikas alati väiksem käskude arv ajaühikus.