Superskalárny procesor: Architektúra, Pipelining, typy a ich aplikácie

Vyskúšajte Náš Nástroj Na Odstránenie Problémov





V tomto svete chce každý urobiť svoje veci/práce rýchlo. nie je to tak? Od áut cez priemyselné stroje až po domáce stroje každý chce, aby pracovali rýchlejšie. Viete, čo sa nachádza vo vnútri týchto strojov, vďaka čomu fungujú? Oni sú spracovateľov . Môžu to byť mikro alebo makro procesory v závislosti od funkčnosti. Základný procesor vo všeobecnosti vykonáva jednu inštrukciu za cyklus hodín. Spôsobom, ako zlepšiť rýchlosť ich spracovania, aby stroje mohli zlepšiť svoju rýchlosť, je superskalárny procesor ktorý má reťazový algoritmus, ktorý mu umožňuje vykonávať dve inštrukcie za cyklus hodín. Prvýkrát ho vynašiel Seymour Cray's CDC 6600 vynájdený v roku 1964 a neskôr ho vylepšili Tjaden & Flynn v roku 1970.


Prvý komerčný jednočipový superskalárny mikroprocesor MC88100 vyvinula Motorola v roku 1988, neskôr Intel predstavil svoju verziu I960CA v roku 1989 a AMD 29000-series 29050 v roku 1990.  V súčasnosti je typickým superskalárnym procesorom používaný procesor Intel Core i7 mikroarchitektúra Nehalem.



Aj keď implementácie superskaláru smerujú k zvýšeniu zložitosti. Konštrukcia týchto procesorov sa zvyčajne vzťahuje na súbor metód, ktoré umožňujú CPU počítača dosiahnuť priepustnosť nad jednu inštrukciu pre každý cyklus pri vykonávaní jedného sekvenčného programu. Pozrime sa ďalej v tomto článku na architektúru SuperScalarprocessor, ktorá znižuje čas jeho vykonávania a jeho aplikácie.

Čo je superskalárny procesor?

Typ mikroprocesora, ktorý sa používa na implementáciu typu paralelizmu známeho ako paralelizmus na úrovni inštrukcií v jedinom procesore na vykonanie viac ako jednej inštrukcie počas cyklu CLK súčasným odosielaním rôznych inštrukcií špeciálnym vykonávacím jednotkám na procesore. A skalárny procesor vykoná jednu inštrukciu pre každý cyklus hodín; superskalárny procesor môže počas hodinového cyklu vykonať viac ako jednu inštrukciu.



Konštrukčné techniky superskaláru bežne zahŕňajú paralelné premenovanie registrov, paralelné dekódovanie inštrukcií, vykonávanie mimo poradia a špekulatívne vykonávanie. Takže tieto metódy sa bežne používajú s doplnkovými návrhovými metódami, ako je pipelining, predikcia vetvenia, ukladanie do vyrovnávacej pamäte a viac jadier v rámci súčasných návrhov mikroprocesorov.

  Superskalárny procesor
Superskalárny procesor

Vlastnosti

Vlastnosti superskalárnych procesorov zahŕňajú nasledujúce.

  PCBWay
  • Superskalárna architektúra je paralelná výpočtová technika využívaná v rôznych procesoroch.
  • V superskalárnom počítači CPU spravuje niekoľko inštrukcií, aby vykonával množstvo inštrukcií súčasne počas cyklu hodín.
  • Superskalárne architektúry zahŕňajú všetky potrubia funkcie, aj keď existuje niekoľko inštrukcií vykonávaných súčasne v rámci toho istého kanála.
  • Metódy superskalárneho návrhu zvyčajne zahŕňajú paralelné premenovanie registrov, paralelné dekódovanie inštrukcií, špekulatívne vykonávanie a vykonávanie mimo poradia. Tieto metódy sa teda bežne používajú s doplnkovými metódami návrhu, ako je ukladanie do vyrovnávacej pamäte, reťazenie, predikcia vetiev a viac jadier v nedávnych návrhoch mikroprocesorov.

Architektúra superskalárneho procesora

Vieme, že superskalárny procesor je CPU, ktoré vykonáva viac ako jednu inštrukciu pre každý cyklus CLK, pretože rýchlosti spracovania sa jednoducho merajú v cykloch CLK za každú sekundu. V porovnaní so skalárnym procesorom je tento procesor veľmi rýchlejší.

Architektúra superskalárneho procesora zahŕňa hlavne paralelné vykonávacie jednotky, kde tieto jednotky môžu implementovať inštrukcie súčasne. Takže najprv bola táto paralelná architektúra implementovaná v procesore RISC, ktorý využíva jednoduché a krátke inštrukcie na vykonávanie výpočtov. Takže kvôli ich superskalárnym schopnostiam normálne RIZIKO procesory fungovali lepšie v porovnaní s procesormi CISC, ktoré bežia na rovnakom megahertzoch. Ale väčšina CISC procesory, ako napríklad Intel Pentium, tiež obsahujú architektúru RISC, ktorá im umožňuje vykonávať inštrukcie paralelne.

  Architektúra superskalárneho procesora
Architektúra superskalárneho procesora

Superskalárny procesor je vybavený niekoľkými procesorovými jednotkami na spracovanie rôznych inštrukcií paralelne v každej fáze spracovania. Použitím vyššie uvedenej architektúry sa množstvo inštrukcií začne vykonávať v rámci podobného hodinového cyklu. Tieto procesory sú schopné získať výstup vykonávania inštrukcie vyššie uvedenej jednej inštrukcie pre každý cyklus.

Vo vyššie uvedenom diagrame architektúry sa používa procesor s dvoma vykonávacími jednotkami, pričom jedna sa používa na celé číslo a druhá na operácie s pohyblivou rádovou čiarkou. Jednotka na vyzdvihnutie inštrukcií (IFU) je schopná čítať inštrukcie naraz a ukladať ich do fronty inštrukcií. V každom cykle expedičná jednotka načíta a dekóduje až 2 inštrukcie z frontu. Ak existuje jediné celé číslo, jedna inštrukcia s pohyblivou rádovou čiarkou a žiadne nebezpečenstvá, obe inštrukcie sa odosielajú v rámci podobného hodinového cyklu.

Potrubné vedenie

Pipelining je postup rozdelenia úloh na podkroky a ich vykonanie v rámci rôznych častí procesora. V nasledujúcom superskalárnom potrubí možno naraz načítať a odoslať dve inštrukcie, aby sa dokončili maximálne 2 inštrukcie na cyklus. Architektúra pipeliningu v skalárnom procesore a superskalárnom procesore je znázornená nižšie.

Inštrukcie v superskalárnom procesore sú vydávané zo sekvenčného toku inštrukcií. Musí umožňovať viacero inštrukcií pre každý cyklus hodín a CPU musí dynamicky kontrolovať dátové závislosti medzi inštrukciami.

V nižšie uvedenej architektúre potrubia sa F vyvolá, D sa dekóduje, E sa vykoná a W je spätný zápis do registra. V tejto architektúre potrubia sú I1, I2, I3 a I4 inštrukcie.

Architektúra kanála skalárneho procesora obsahuje jeden kanál a štyri fázy načítavania, dekódovania, vykonávania a spätného zápisu výsledkov. V skalárnom procesore s jedným potrubím funguje potrubie v inštrukcii1 (I1) ako; v prvej hodinovej perióde I1 bude vyvolávať, v druhej hodinovej perióde bude dekódovať a v druhej inštrukcii bude privádzať I2. Tretia inštrukcia I3 v tretej hodinovej perióde sa vyvolá, I2 sa dekóduje a I1 sa vykoná. Vo štvrtej perióde hodín I4 vyvolá, I3 dekóduje, I2 vykoná a I1 zapíše do pamäte. Takže v siedmich hodinových periódach vykoná 4 inštrukcie v jednom potrubí.

  Skalárne potrubie
Skalárne potrubie

Architektúra potrubia superskalárneho procesora zahŕňa dva potrubia a štyri fázy načítavania, dekódovania, vykonávania a spätného zápisu výsledkov. Ide o 2-procesorový superskalárny procesor, čo znamená, že naraz sa dve inštrukcie načítajú, dekódujú, vykonajú a výsledok zapíšu späť. Dve inštrukcie I1 a I2 budú naraz načítavať, dekódovať, vykonávať a zapisovať späť v každej hodinovej perióde. Súčasne v nasledujúcom časovom intervale budú zostávajúce dve inštrukcie I3 a I4 naraz načítavať, dekódovať, vykonávať a zapisovať späť. Takže v piatich hodinových periódach vykoná 4 inštrukcie v jednom potrubí.

  Superskalárne potrubie
Superskalárne potrubie

Skalárny procesor teda vydáva jednu inštrukciu na cyklus hodín a vykonáva jednu fázu potrubia na cyklus hodín, zatiaľ čo superskalárny procesor vydáva dve inštrukcie na cyklus hodín a paralelne vykonáva dve inštancie každej fázy. Takže vykonanie inštrukcie v skalárnom procesore trvá viac času, zatiaľ čo v superskalárnom trvá menej času na vykonanie pokynov .

Typy superskalárnych procesorov

Ide o rôzne typy superskalárnych procesorov dostupných na trhu, ktoré sú popísané nižšie.

Procesor Intel Core i7

Intel core i7 je superskalárny procesor, ktorý je založený na mikroarchitektúre Nehalem. V dizajne Core i7 existujú rôzne jadrá procesora, pričom každé jadro procesora je superskalárny procesor. Toto je najrýchlejšia verzia procesora Intel používaná v spotrebiteľských počítačoch a zariadeniach. Podobne ako Intel Corei5 je tento procesor zabudovaný v technológii Intel Turbo Boost. Tento procesor je dostupný v 2 až 6 variantoch, ktoré podporujú až 12 rôznych vlákien naraz.

  Procesor Intel Core i7
Procesor Intel Core i7

Procesor Intel Pentium

Superskalárna zreťazená architektúra procesora Intel Pentium znamená, že CPU vykoná minimálne dve alebo viac inštrukcií pre každý cyklus. Tento procesor je široko používaný v osobných počítačoch. Zariadenia s procesorom Intel Pentium sú bežne skonštruované pre online použitie, cloud computing a spoluprácu. Tento procesor teda dokonale funguje pre tablety a Chromebooky a poskytuje silný lokálny výkon a efektívne online interakcie.

  Procesor Intel Pentium
Procesor Intel Pentium

IBM Power PC601

Superskalárny procesor ako IBM power PC601 je z rodiny PowerPC mikroprocesorov RISC. Tento procesor je schopný vydávať a tiež vyraďovať tri inštrukcie pre každé hodiny a jednu pre každú z 3 vykonávacích jednotiek. Pokyny sú úplne mimo prevádzky pre lepší výkon; ale PC601 spôsobí, že vykonanie bude v poriadku.

  IBM Power PC601
IBM Power PC601

Výkonný procesor PC601 poskytuje 32-bitové logické adresy, 8, 16 a 32-bitové celočíselné dátové typy a 32-bitové a 64-bitové dátové typy s pohyblivou rádovou čiarkou. Pre implementáciu 64-bitového PowerPC poskytuje architektúra tohto procesora 64-bitové celočíselné dátové typy, adresovanie a ďalšie funkcie potrebné na dokončenie 64-bitovej architektúry.

MC 88110

MC 88110 je jednočipový mikroprocesor RISC druhej generácie, ktorý využíva pokročilé metódy na využitie paralelizmu na úrovni inštrukcií. Tento procesor využíva viacero vyrovnávacích pamätí na čipe, problémy so superskalárnymi pokynmi, zaznamenávanie obmedzených dynamických pokynov a špekulatívne vykonávanie na dosiahnutie maximálneho výkonu, takže sa ideálne používa ako centrálny procesor v rámci lacných počítačov a pracovných staníc.

  MC 88000
MC 88000

Intel i960

Intel i960 je superskalárny procesor, ktorý je schopný vykonávať a odosielať rôzne nezávislé inštrukcie počas každého cyklu procesora. Ide o mikroprocesor založený na RISC, ktorý sa stal veľmi známym ako vstavaný mikrokontrolér na začiatku 90. rokov. Tento procesor sa nepretržite používa v niekoľkých vojenských aplikáciách.

  Intel i960
Intel i960

MIPS R

MIPS R je dynamický a superskalárny mikroprocesor používaný na vykonávanie 64-bitovej architektúry MIPS so 4 súbormi inštrukcií. Tento procesor načíta a dekóduje 4 inštrukcie pre každý cyklus a odovzdá ich piatim kompletne zreťazeným jednotkám vykonávania s nízkou latenciou. Tento procesor je špeciálne navrhnutý pre vysokovýkonné, veľké a reálne aplikácie so zlou pamäťou. S približným vykonaním jednoducho vypočíta adresy pamäte. Procesory MIPS sa používajú hlavne v rôznych zariadeniach, ako je Nintendo Gamecube, produktový rad SGI, Sony Playstation 2, smerovače PSP a Cisco.

  MIPS R
MIPS R

Rozdiel B/W Superskalar vs Pipelining

Rozdiel medzi superskalárnym a pipeliningom je diskutovaný nižšie.

Superskalárny

Potrubie

Superskalár je CPU, ktorý sa používa na implementáciu formy paralelizmu, ktorý sa nazýva paralelizmus na úrovni inštrukcií v jednom procesore. Implementačná technika, ako je pipelining, sa používa tam, kde sa v rámci vykonávania prekrýva niekoľko inštrukcií.
Superskalárna architektúra spúšťa niekoľko inštrukcií súčasne a vykonáva ich oddelene. Pipeliningová architektúra vykonáva iba jednu fázu potrubia pre každý cyklus hodín.

Tieto procesory závisia od priestorového paralelizmu. Závisí to od časovej paralelnosti.
Niekoľko operácií prebieha súčasne na samostatnom hardvéri. Prekrývanie niekoľkých operácií na bežnom hardvéri.
Dosahuje sa duplikovaním hardvérových prostriedkov, ako sú porty súborov registrov a vykonávacie jednotky. Dosahuje sa to vykonávacími jednotkami, ktoré sú hlbšie prepojené s veľmi rýchlymi cyklami CLK.

Charakteristika

The vlastnosti superskalárneho procesora zahŕňajú nasledujúce.

  • Superskalárny procesor je super-reťazový model, kde sa jednoducho nezávislé inštrukcie vykonávajú sériovo bez akejkoľvek čakacej situácie.
  • Superskalárny procesor načíta a dekóduje naraz niekoľko inštrukcií prichádzajúceho toku inštrukcií.
  • Architektúra superskalárnych procesorov využíva potenciál paralelizmu na úrovni inštrukcií.
  • Superskalárne procesory vydávajú hlavne vyššie uvedenú jedinú inštrukciu pre každý cyklus.
  • Č. počet vydaných pokynov závisí hlavne od pokynov v toku pokynov.
  • Pokyny sa často menia, aby lepšie zodpovedali architektúre procesora.
  • Superskalárna metóda je zvyčajne spojená s niektorými identifikačnými charakteristikami. Inštrukcie sú normálne vydávané zo sekvenčného toku inštrukcií.
  • CPU dynamicky kontroluje dátové závislosti medzi pokynmi v čase spustenia.
  • CPU vykonáva viacero inštrukcií pre každý cyklus hodín.

Výhody a nevýhody

The výhody superskalárneho procesora zahŕňajú nasledujúce.

  • Superskalárny procesor implementuje paralelizmus na úrovni inštrukcií v jednom procesore.
  • Tieto procesory sú jednoducho vyrobené tak, aby vykonávali akúkoľvek inštrukčnú sadu.
  • Superskalárny procesor vrátane predikcie vetvy vykonávania mimo poradia a špekulatívneho vykonávania môže jednoducho nájsť paralelizmus nad niekoľkými základnými blokmi a opakovaniami slučky.

The nevýhody superskalárneho procesora zahŕňajú nasledujúce.

  • Superskalárne procesory sa v malých vstavaných systémoch príliš nepoužívajú kvôli spotrebe energie.
  • V tejto architektúre môže nastať problém s plánovaním.
  • Superskalárny procesor zvyšuje úroveň zložitosti pri navrhovaní hardvéru.
  • Inštrukcie v tomto procesore sú jednoducho načítané na základe ich sekvenčného poradia programu, ale toto nie je najlepšie poradie vykonávania.

Aplikácie superskalárneho procesora

Aplikácie superskalárneho procesora zahŕňajú nasledujúce.

  • Superskalárne prevedenie je často používané notebookom alebo stolným počítačom. Tento procesor jednoducho skenuje vykonávaný program, aby objavil sady inštrukcií, ktoré možno vykonať ako jeden.
  • Superskalárny procesor obsahuje rôzne hardvérové ​​kópie dátových ciest, ktoré vykonávajú rôzne inštrukcie naraz.
  • Tento procesor je navrhnutý hlavne na generovanie rýchlosti implementácie vyššej ako jedna inštrukcia pre každý cyklus hodín pre jeden sekvenčný program.

Ide teda o všetko prehľad superskalárneho procesora – architektúra, typy a aplikácie. Tu je otázka pre vás, čo je skalárny procesor?