Mitä eroa on Scalar- ja Superscalar -suorittimien välillä?

Tietokoneille on saatavana erityyppisiä keskusyksiköitä (CPU). Tämäntyyppiset suorittimet eivät todellakaan eroa laitteiston ja arkkitehtuurin käsittelyssä. Useimmat heistä suorittavat suorittimen perustehtäviä, kuten tietojen lukeminen ja kirjoittaminen, laskutoimitukset ja osoitehyppy. Ne voivat kuitenkin poiketa väyläkoon ja prosessorin arkkitehtuurin suhteen. Saatavilla on useita tietokoneprosessorilaitteita, joista kaksi ovat skalaari- ja superskalaarisia suorittimia.

Prosessoria, joka suorittaa skalaaritietoja, kutsutaan skalaariprosessoriksi. Kiinteäpisteisiä operandeja käyttäen skalaariprosessorit suorittavat kokonaislukukäskyt jopa yksinkertaisimmassa tilassa. Tehokkaammat skalaariprosessorit suorittavat yleensä sekä liukuluku- että kokonaislukuoperaatioita. Äskettäin valmistetut skalaariprosessorit sisältävät sekä liukulukuyksikön että kokonaislukuyksikön, kaikki samalla CPU -sirulla. Useimmat näistä nykyaikaisista skalaariprosessoreista käyttävät 32-bittisiä ohjeita.

Superskalaarinen prosessori puolestaan ​​suorittaa useita ohjeita kerrallaan, koska sillä on useita putkilinjoja. Tämä suoritinrakenne toteuttaa käskytason rinnakkaisuuden, joka on tietokonelaitteiston rinnakkaisuuden muoto, yhdellä tietokoneprosessorilla. Tämä tarkoittaa sitä, että se voi sallia nopean suorittimen suorituskyvyn, joka ei ole edes etäisesti mahdollista muissa prosessoreissa, jotka eivät toteuta käskytason rinnakkaisuutta. Sen sijaan, että suoritettaisiin yksi käsky kerrallaan, superskalaarinen prosessori käyttää redundantteja toiminnallisia yksiköitään useiden käskyjen suorittamisessa. Nämä toiminnalliset yksiköt eivät ole erillisiä suoritinytimiä, vaan yksittäisen suorittimen laajennusresursseja, kuten kertojat, bittisiirtimet ja aritmeettiset logiikkayksiköt (ALU).

Scalar- ja superscalar -prosessorien väliset erot johtuvat yleensä määrästä ja nopeudesta. Skalaariprosessori, jota pidetään yksinkertaisimpana kaikista suorittimista, toimii yhdellä tai kahdella tietokoneen tietokohteella tiettynä aikana. Superskalaarinen prosessori toimii useiden ohjeiden ja useiden useiden tietokohteiden ryhmien mukaan kerrallaan. Scalar- ja superscalar -prosessorit toimivat molemmat samalla tavalla tietojen käsittelyn suhteen, mutta niiden ero on siinä, kuinka monta käsittelyä ja tietokohteita he voivat työskennellä tietyn ajan kuluessa. Superskalaariset prosessorit voivat käsitellä useita ohjeita ja tietokohteita, kun taas skalaariprosessori ei yksinkertaisesti kykene, mikä tekee ensimmäisestä tehokkaamman prosessorin kuin jälkimmäinen.

Scalar- ja superscalar -prosessoreilla on molemmilla samankaltaisuuksia vektoriprosessoreiden kanssa. Kuten skalaariprosessori, myös vektoriprosessori suorittaa yksittäisen käskyn kerrallaan, mutta sen sijaan, että manipuloidaan vain yhtä tietokohtaa, sen yksittäinen käsky voi käyttää useita tietokohteita. Samoin kuin superskalaarisessa prosessorissa, vektoriprosessorissa on useita redundantteja toiminnallisia yksiköitä, joiden avulla se voi käsitellä useita tietokohteita, mutta se voi toimia vain yhdellä käskyllä ​​kerrallaan. Pohjimmiltaan superskalaarinen prosessori on skalaariprosessorin ja vektoriprosessorin yhdistelmä.