Pipelining-ul de instrucțiuni este o tehnică utilizată în proiectarea microprocesoarelor, microcontrolerelor și a procesoarelor moderne pentru a crește randamentul de instrucțiuni (numărul de instrucțiuni care pot fi executate într-o unitate de timp).

Ideea principală este de a diviza (denumită "divizare") procesarea unei instrucțiuni CPU, așa cum este definită de microcodul instrucțiunii, într-o serie de etape independente de microoperații (denumite și "microinstrucțiuni", "micro-op" sau "µop"), cu stocare la sfârșitul fiecărei etape. Acest lucru permite logicii de control a CPU să trateze instrucțiunile la rata de procesare a celui mai lent pas, care este mult mai rapidă decât timpul necesar pentru a procesa instrucțiunea ca pas unic.

Termenul de "conductă" se referă la faptul că fiecare pas transportă o singură microinstrucțiune (ca o picătură de apă), iar fiecare pas este legat de un alt pas (analogie; similar cu conductele de apă).

Majoritatea procesoarelor moderne sunt conduse de un ceas. Unitatea centrală de procesare este formată în interior din logică și memorie (flip-flops). Când sosește semnalul de ceas, flip-flops-urile își stochează noua valoare, apoi logica are nevoie de o perioadă de timp pentru a decoda noile valori ale flip-flops-urilor. Apoi sosește următorul impuls de ceas și flip flopurile stochează alte valori, și așa mai departe. Prin împărțirea logicii în bucăți mai mici și prin inserarea flip flop-urilor între bucățile de logică, timpul necesar logicii (pentru a decoda valorile până la generarea de ieșiri valide în funcție de aceste valori) este redus. În acest fel, perioada de ceas poate fi redusă. De
exemplu, pipeline-ul RISC este împărțit în cinci etape cu un set de flip flop-uri între fiecare etapă, după cum urmează:

  1. Preluare de instrucțiuni
  2. Decodarea instrucțiunilor și preluarea registrelor
  3. Executați
  4. Accesul la memorie
  5. Scrierea înapoi în registru

Procesoarele cu pipelining constau, la nivel intern, din etape (module) care pot lucra în mod semi-independent la microinstrucțiuni separate. Fiecare etapă este legată prin flip-flops de următoarea etapă (ca un "lanț"), astfel încât ieșirea etapei să fie o intrare pentru o altă etapă până la terminarea prelucrării instrucțiunilor. O astfel de organizare a modulelor interne ale procesorului reduce timpul total de procesare a instrucțiunilor.

O arhitectură fără linie de bază nu este la fel de eficientă deoarece unele module CPU sunt inactive în timp ce un alt modul este activ în timpul ciclului de instrucțiuni. Pipelining-ul nu elimină complet timpul de inactivitate într-o unitate centrală de procesare cu pipe-line, dar faptul că modulele unității centrale de procesare lucrează în paralel crește randamentul instrucțiunilor.

Se spune că un pipeline de instrucțiuni este complet pipeline dacă poate accepta o nouă instrucțiune la fiecare ciclu de ceas. O conductă care nu este complet conectată are cicluri de așteptare care întârzie progresul conductei.