Kakšna je razlika med skalarnimi in superskalarnimi procesorji?

Za računalnike so na voljo različne vrste centralnih procesnih enot (CPE). Te vrste CPE se v resnici ne razlikujejo glede na strojno opremo za obdelavo in arhitekturo. Večina jih opravlja osnovne naloge CPE, kot so branje in pisanje podatkov, osnovna aritmetika in preskakovanje naslovov. Lahko pa se razlikujejo glede na velikost vodila in arhitekturo procesorja. Na voljo je več vrst strojne opreme računalniških procesorjev, od katerih sta dva skalarna in superskalarna procesorja.

Procesor, ki izvaja skalarne podatke, se imenuje skalarni procesor. Z uporabo operandov s fiksno točko skalarni procesorji izvajajo celoštevilska navodila tudi v njihovem najpreprostejšem stanju. Zmogljivejši skalarni procesorji običajno izvajajo tako operacije s plavajočo vejico kot celoštevilske operacije. Nedavno izdelani skalarni procesorji vsebujejo tako enoto s plavajočo vejico kot celoštevilsko enoto, vse na istem CPU čipu. Večina teh sodobnih skalarnih procesorjev uporablja navodila 32-bitne vrste.

Po drugi strani pa superskalarni procesor izvaja več ukazov hkrati zaradi svojega več cevovodov. Ta struktura CPU izvaja paralelizem na ravni ukazov, ki je oblika vzporednosti v računalniški strojni opremi, znotraj enega samega računalniškega procesorja. To pomeni, da lahko omogoči hitro prepustnost CPE, ki ni niti približno mogoča pri drugih procesorjih, ki ne izvajajo vzporednosti na ravni ukazov. Namesto izvajanja enega ukaza hkrati, superskalarni procesor uporablja svoje odvečne funkcionalne enote pri izvajanju več ukazov. Te funkcionalne enote niso ločena jedra CPU-ja, temveč razširitveni viri enega samega CPE-ja, kot so množitelji, bitni premiki in aritmetične logične enote (ALU).

Razlike med skalarnimi in superskalarnimi procesorji so na splošno omejene na količino in hitrost. Skalarni procesor, ki velja za najpreprostejši od vseh procesorjev, deluje na enem ali dveh računalniških podatkovnih elementih v določenem trenutku. Superskalarni procesor deluje na več navodilih in več skupinah več podatkovnih postavk hkrati. Skalarni in superskalarni procesorji delujejo na enak način glede na to, kako manipulirajo s podatki, vendar je njihova razlika v tem, koliko manipulacij in podatkovnih elementov lahko delajo v določenem času. Superskalarni procesorji lahko obdelajo več navodil in podatkovnih postavk, medtem ko skalarni procesor preprosto ne more, zato je prvi zmogljivejši procesor od drugega.

Tako skalarni kot superskalarni procesorji imajo nekaj podobnosti z vektorskimi procesorji. Tako kot skalarni procesor tudi vektorski procesor izvede eno samo ukaz naenkrat, vendar namesto da bi manipulirali z enim podatkovnim elementom, lahko njegovo posamezno navodilo dostopa do več podatkovnih postavk. Podobno kot pri superskalarnem procesorju ima vektorski procesor več redundantnih funkcionalnih enot, ki mu omogočajo manipuliranje z več podatkovnimi elementi, vendar lahko hkrati deluje samo na enem ukazu. V bistvu je superskalarni procesor kombinacija skalarnega in vektorskega procesorja.