Zablokovanie potrubia je typ chyby v procesore ovplyvnenom RISC alebo RISC a oneskoruje spracovanie inštrukcie. Tento typ chyby nemá nič spoločné s chybami používateľov – v skutočnosti sa tento typ chyby vyskytuje iba kvôli dizajnu procesora. Presnejšie, vyskytuje sa v zle navrhnutých procesoroch. Procesory typu RISC používajú pipeline, čo znamená, že inštrukcie musia byť vykonávané v určitom poradí.
Technipages vysvetľuje zablokovanie potrubia
Toto špecifické poradie je absolútne a veľmi presné – ak program dáva inštrukcie vetvenia, potom nie sú prezentované usporiadaným spôsobom – pokyny na začiatku prechádzajú potrubím, ale možnosti, ktoré neboli vybraté, sa musia zahodiť skôr, ako budú možné ďalšie spracované. To generuje oneskorenie a to na základe zložitosti vetiev. Viac vyradených možností znamená väčšie oneskorenie a čím väčšie oneskorenie, tým väčšie oneskorenie výkonu.
Tento problém je jedinečný pre procesory založené na RISC, pretože iné používajú iné nastavenia. Tieto chyby však nie sú fatálne – po ich zistení boli vytvorené a implementované riešenia. Malé oneskorenia možno úplne odstrániť, zatiaľ čo väčšie možno prinajmenšom znížiť. To sa deje prostredníctvom predikcie vetvy a prípadne implementáciou vykonávania mimo poradia pre určité typy procesov. Tieto nové funkcie pomohli zachovať životaschopnosť procesorov typu RISC, a to aj napriek počiatočným chybám v dizajne znížených inštrukcií nastaviť počítače, napriek tomu, že ich pôvodným účelom bol počítač, ktorý dokáže rýchlejšie spracovať pokyny tým, že zbytočne preskakuje kroky.
Bežné použitie zastavenia potrubia
- Zastávky potrubí sú spôsobené výlučne konštrukčnými chybami a nie sú ovplyvnené problémami používateľov.
- Na vyriešenie zablokovania potrubia bola implementovaná predikcia vetiev.
- Negatívnou stránkou RISC-procesorov bol potenciál prerušenia procesu.
Bežné nesprávne použitie zastavenia potrubia
- Zablokovanie potrubia je spôsobené tým, že používateľ vykonáva príliš veľa funkcií naraz.