Ce este o conductă CPU pentru computer?

Cto Takoe Konvejer Cp Komp Utera



O conductă CPU este o serie de etape de procesare în unitatea centrală de procesare (CPU) a unui computer. Etapele sunt de obicei preluarea, decodarea, executarea și scrierea înapoi. Conducta este un element fundamental de design al majorității procesoarelor, iar scopul său este de a îmbunătăți performanța. Prin împărțirea procesării instrucțiunilor în etape separate, procesorul poate menține procesarea mai multor instrucțiuni în același timp. Acest lucru este cunoscut sub numele de paralelism sau procesare paralelă și poate fi o creștere semnificativă a performanței. Cu toate acestea, aceasta are prețul unei complexități crescute și poate introduce întârzieri (cunoscute sub denumirea de blocaje de conducte) dacă instrucțiunile trebuie executate în afara ordinului.



În această postare vom explica ce este o conductă de procesor de computer . Unitatea centrală de procesare (prescurtare de la unitatea centrală de procesare) este o parte importantă a computerului, funcționând ca creierul. Și o știm deja. Dar ceea ce poate nu știm sunt tehnicile care fac CPU-ul eficient. Una dintre aceste tehnici este Conducte . Dacă vrei să știi ce este CPU-ul pipeline și cum îmbunătățește performanța CPU-ului apoi citeste aceasta postare.





Ce este o conductă CPU pentru computer





Ce este o conductă CPU pentru computer?

În informatică, o instrucțiune este o comandă dată de un program procesorului central. Este format dintr-un cod în limbajul mașinii pe care CPU-ul îl înțelege și îl execută. De exemplu, |_+_| este o instrucțiune folosită pentru a spune procesorului să stocheze informații în RAM. Conducta este o tehnică utilizate în dezvoltarea procesoarelor moderne. Acest crește debitul general de comandă (număr de instrucțiuni executate pe secundă) prin împărțirea instrucțiunilor în subsarcini pe care CPU le poate procesa în paralel.



fltmgr.sys

Ce este un procesor pipeline?

Un CPU pipeline funcționează pe principiul pipelining-ului, împărțind un set de instrucțiuni într-un număr de subsarcini, în care fiecare subsarcină efectuează o operație. Conducta are 2 puncte finale: intrare și ieșire . Mai multe subsarcini sunt acumulate între aceste capete astfel încât ieșirea unei subsarcini este conectată la intrarea următoarei subsarcini. Prin urmare, CPU-ul pipeline execută mai multe subsarcini în același timp.

cadru fixing.net

Structura de bază a conductei CPU

Citeste si: Explicația tipurilor de topologie dintr-o rețea de calculatoare .



Cum îmbunătățește pipelining performanța procesorului?

În general, procesorul poate rupe o instrucțiune în următoarele cazuri. 4 subsarcini (la un nivel foarte elementar):

  • Aduce – preluați instrucțiuni din memorie.
  • descifra - instructiuni de decodare.
  • Îndeplini - executarea instructiunilor.
  • Scrie – scrierea rezultatului înapoi în memorie.

Acum să presupunem CPU are un bloc dedicat pentru a efectua fiecare dintre aceste subsarcini. . În timp ce un bloc execută o sarcină secundară, restul blocurilor CPU vor fi inactive, fără a face nimic în acest timp. Pipelining profită de aceste unități inactive utilizându-le pentru a procesa alte instrucțiuni aflate în coadă.

Să înțelegem asta cu un exemplu. Priviți următoarea figură:

CPU non-pipeline vs. procesor pipeline

camstudio open source

Figura de mai sus arată modul în care un set de două instrucțiuni este executat într-un mediu CPU non-pipeline și într-un mediu CPU pipeline. După cum puteți vedea, un CPU non-pipeline durează 8 cicluri pentru a executa 2 instrucțiuni, în timp ce un CPU pipeline execută același set de instrucțiuni în doar 5 cicluri.

Privind atent, CPU-ul pipeline folosește blocul Fetch pentru a executa prima subsarcină a celei de-a doua instrucțiuni, în timp ce blocul său Decode execută deja a doua subsarcină a primei instrucțiuni. Prin urmare, folosește al doilea bloc în același timp cu primul bloc, care altfel ar fi inactiv într-un mediu fără conducte.

Creșterea vitezei de execuție a unui set dat de instrucțiuni crește astfel viteza procesorului. Și iată cum pipelining îmbunătățește eficiența procesorului. Important de remarcat aici este că pipeliningul nu reduce timpul necesar procesorului pentru a executa o instrucțiune. Mai degrabă, crește numărul de instrucțiuni pe care CPU le poate procesa în același timp. Deci, creșterea numărului de subtask-uri nu înseamnă cu adevărat că un procesor pipeline va fi mai rapid decât un procesor non-pipeline. De fapt, un CPU non-pipeline poate dura mai puțin timp pentru a executa o singură instrucțiune decât un CPU pipeline, în funcție de numărul de etape pipeline implicate (numărul de subsarcini).

Sper că explicația de mai sus arată clar care este conducta procesorului unui computer. Dacă aveți îndoieli, vă rugăm să le împărtășiți în secțiunea de comentarii de mai jos.

eroare 0x80073701

Conducerea îmbunătățește performanța procesorului?

Arhitectura pipeline crește numărul de instrucțiuni procesate pe ciclu de procesor. Prin creșterea debitului de instrucțiuni, crește performanța generală a procesorului. Totuși, dacă setul de instrucțiuni constă din instrucțiuni complexe (cum ar fi instrucțiuni de ramificare), CPU nu va ști dinainte unde să citească următoarea instrucțiune și trebuie să aștepte până când instrucțiunea curentă a fost complet executată. În astfel de cazuri, este posibil ca arhitectura pipeline să nu ofere eficiență CPU.

Conducta crește timpul de execuție?

Pipelinerea crește numărul de instrucțiuni executate simultan în fiecare ciclu de ceas. Dar acest lucru nu crește neapărat timpul necesar pentru a executa o singură instrucțiune. De exemplu, pipelining-ul nu este potrivit pentru executarea instrucțiunilor de ramificație, care deviază execuția secvențială către o altă cale. Această dezorganizare poate rupe conducta sau o poate curăța complet, dacă nu sunt introduse metode adecvate pentru a rezolva problemele cu ramurile.

Citeşte mai mult: Cum să limitați utilizarea procesorului pentru un proces în Windows .

Ce este o conductă CPU pentru computer
Posturi Populare