Un procesor superscalar este un tip de procesor care poate executa mai multe seturi de instrucțiuni în același timp. Acest tip de procesor conține mai multe subunități care controlează anumite tipuri de funcții de bază. În timp ce alte procesoare au aceste unități, de asemenea, un procesor superscalar poate avea informații trimise direct către aceste unități pentru procesare în timp ce procesorul principal este ocupat cu altceva. Procesorul superscalar este punctul de mijloc al celor trei tipuri principale de procesoare.
Unitatea centrală de procesare a unui computer, numită și procesor sau pur și simplu procesor, face majoritatea calculelor pentru un computer. De fiecare dată când se întâmplă ceva pe mașină, procesorul lucrează cu puțin înainte să se întâmple efectiv. Acest lucru face ca procesorul să fie foarte ocupat și timpul petrecut cu el foarte valoros. Când procesorul și-a atins limita, alte funcții ale computerului rămân în așteptarea ca procesorul să ajungă din urmă.
Multe procesoare sunt formate dintr-un procesor principal și mai multe zone mai mici. Procesorul principal face majoritatea calculelor pentru sistemul informatic. Alte sisteme, precum unitatea logică aritmetică, au funcții foarte specifice și sunt utilizate mai puțin decât procesorul principal. În cazul unității aritmetice-logice, aceasta îndeplinește funcții matematice de nivel scăzut pentru computer.
În acest moment, procesoarele computerelor se împart în trei mari categorii: scalare, superscalare și vectoriale. Un sistem scalar este tipul de procesor cu care majoritatea utilizatorilor sunt familiarizați. Acest procesor acceptă o comandă la un moment dat și le execută în ordine sau în ordinea priorităților. Aceste procesoare reprezintă majoritatea computerelor de acasă și de afaceri.
Procesoarele vectoriale preiau mai multe comenzi simultan printr-un sistem matrice. O serie de comenzi ajung simultan în nucleul principal al procesorului. Aceste comenzi sunt tratate ca părți individuale ale unei comenzi mai mari de către procesor și executate simultan.
Un procesor superscalar este punctul de mijloc între aceste două metode. Procesorul principal este capabil să preia o singură comandă la un moment dat, similar unui procesor scalar. Pe de altă parte, există conexiuni directe la sistemele secundare ale procesorului, lucru care nu este prezent în mod obișnuit în alte forme de procesor. Aceste conexiuni permit informațiilor să intre direct în subsisteme, unde pot executa comenzi specifice și pot scoate informații separat de procesorul principal. Acest lucru permite procesorului să lucreze și să scoată mai multe instrucțiuni, ca un procesor vectorial.
Această operațiune nu trebuie confundată cu un procesor multi-core. Aceste sisteme au de fapt mai mult de un procesor întreg activ în același timp. Pentru a fi un procesor superscalar, comenzile merg la subunități, nu la sisteme întregi. În cele mai multe cazuri, un sistem multi-core este o colecție de procesoare scalare, dar este posibil ca acestea să fie și procesoare superscalare.