Superscalar prosessor: arkitektur, pipelining, typer og dens applikasjoner

Prøv Instrumentet Vårt For Å Eliminere Problemer





I denne verden ønsker alle å få tingene sine/arbeidene gjort raskt. er det ikke? Fra biler til industrielle til husholdningsmaskiner vil alle at de skal jobbe raskere. Vet du hva som sitter inne i disse maskinene som gjør at de fungerer? De er prosessorer . De kan være mikro- eller makroprosessorer avhengig av funksjonaliteten. Den grunnleggende prosessoren utfører generelt én instruksjon per klokkesyklus. På en måte å forbedre sin prosesseringshastighet slik at maskinene kan forbedre sin hastighet ble den superskalar prosessor som har pipelining-algoritme for å gjøre det mulig å utføre to instruksjoner per klokkesyklus. Den ble først oppfunnet av Seymour Crays CDC 6600 oppfunnet i 1964 og ble senere forbedret av Tjaden & Flynn i 1970.


Den første kommersielle enkeltbrikke superskalarmikroprosessoren MC88100 ble utviklet av Motorola i 1988, senere introduserte Intel sin versjon I960CA i 1989 og AMD 29000-serien 29050 i 1990.  For tiden er den typiske superskalarprosessoren som brukes Intel Core i7-prosessoren. Nehalem-mikroarkitekturen.



Selv om implementeringene av superskalar er på vei mot å øke kompleksiteten. Utformingen av disse prosessorene refererer normalt til et sett med metoder som tillater CPU-en til en datamaskin å oppnå en gjennomstrømning på over én instruksjon for hver syklus mens den kjører et enkelt sekvensielt program. La oss videre i denne artikkelen se SuperScalarprosessor-arkitekturen som reduserer utførelsestiden og applikasjonene.

Hva er Superscalar-prosessor?

En type mikroprosessor som brukes til å implementere en type parallellisme kjent som instruksjonsnivå-parallellisme i en enkelt prosessor for å utføre mer enn én instruksjon i løpet av en CLK-syklus ved å sende forskjellige instruksjoner samtidig til spesielle utførelsesenheter på prosessoren. EN skalar prosessor utfører enkeltinstruksjoner for hver klokkesyklus; en superskalær prosessor kan utføre mer enn én instruksjon i løpet av en klokkesyklus.



Designteknikkene til superskalar omfatter normalt parallellregister omdøping, parallell instruksjonsdekoding, utførelse av uorden og spekulativ utførelse. Så disse metodene brukes vanligvis med komplementerende designmetoder som pipelining, grenprediksjon, caching og multi-core innenfor gjeldende design av mikroprosessorer.

  Superskalar prosessor
Superskalar prosessor

Funksjoner

Funksjonene til superskalære prosessorer inkluderer følgende.

  PCBWay
  • Superskalararkitektur er en parallell databehandlingsteknikk som brukes i forskjellige prosessorer.
  • I en superskalar datamaskin administrerer CPU flere instruksjonsrørledninger for å utføre mange instruksjoner samtidig i løpet av en klokkesyklus.
  • Superskalære arkitekturer inkluderer alle rørledning funksjoner selv om det er flere instruksjoner som utføres samtidig innenfor samme pipeline.
  • Superskalare designmetoder omfatter normalt parallellregister omdøpning, parallell instruksjonsdekoding, spekulativ utførelse og utkjøring. Så disse metodene brukes vanligvis med utfyllende designmetoder som caching, pipelining, grenprediksjon og multi-core i nyere mikroprosessordesign.

Superskalar prosessorarkitektur

Vi vet at en superskalarprosessor er en CPU som utfører over én instruksjon for hver CLK-syklus fordi prosesseringshastigheter ganske enkelt måles i CLK-sykluser for hvert sekund. Sammenlignet med en skalarprosessor er denne prosessoren veldig raskere.

Superskalar prosessorarkitektur inkluderer hovedsakelig parallelle utførelsesenheter hvor disse enhetene kan implementere instruksjoner samtidig. Så først ble denne parallelle arkitekturen implementert i en RISC-prosessor som bruker enkle og korte instruksjoner for å utføre beregninger. Så på grunn av deres superskalare evner, normalt FARE prosessorer har prestert bedre sammenlignet med CISC-prosessorer som kjører på samme megahertz. Men mest CISC prosessorer som nå som Intel Pentium inneholder også en viss RISC-arkitektur, som lar dem utføre instruksjoner parallelt.

  Superskalar prosessorarkitektur
Superskalar prosessorarkitektur

Den superskalære prosessoren er utstyrt med flere prosesseringsenheter for å håndtere ulike instruksjoner parallelt i hvert behandlingstrinn. Ved å bruke arkitekturen ovenfor, starter en rekke instruksjoner utførelse innenfor en lignende klokkesyklus. Disse prosessorene er i stand til å oppnå en instruksjonsutførelse av den ene instruksjonen ovenfor for hver syklus.

I arkitekturdiagrammet ovenfor brukes en prosessor med to utførelsesenheter der den ene brukes for heltall og den andre brukes til flytepunktets operasjoner. Instruksjonshentingsenheten (IFU) er i stand til å lese instruksjoner om gangen og lagrer dem i instruksjonskøen. I hver syklus henter og dekoder ekspedisjonsenheten opptil 2 instruksjoner fra køfronten. Hvis det er et enkelt heltall, enkelt flyttallsinstruksjon og ingen farer, sendes begge instruksjonene innenfor en lignende klokkesyklus.

Rørlegging

Pipelining er prosedyren for å bryte ned oppgaver i undertrinn og utføre dem innenfor forskjellige prosessordeler. I den følgende superskalære rørledningen kan to instruksjoner hentes og sendes om gangen for å fullføre maksimalt 2 instruksjoner per syklus. Rørledningsarkitekturen i den skalære prosessoren og den superskalære prosessoren er vist nedenfor.

Instruksjonene i en superskalarprosessor utstedes fra en sekvensiell instruksjonsstrøm. Den må tillate flere instruksjoner for hver klokkesyklus, og CPU-en må sjekke dynamisk for dataavhengigheter mellom instruksjoner.

I rørledningsarkitekturen nedenfor hentes F, D dekodes, E utføres og W er registernedskrivning. I denne rørledningsarkitekturen er I1, I2, I3 og I4 instruksjoner.

Den skalære prosessorens pipeline-arkitektur inkluderer en enkelt pipeline og fire trinn hente, dekode, utføre og skrive tilbake resultat. I den skalære prosessoren med én rørledning fungerer rørledningen i instruksjon1 (I1) som; i den første klokkeperioden I1 vil den hente, i den andre klokkeperioden vil den dekode og i den andre instruksjonen vil I2 hente. Den tredje instruksjonen I3 i den tredje klokkeperioden vil hente, I2 vil dekode og I1 utføres. I den fjerde klokkeperioden vil I4 hente, I3 dekode, I2 kjøres og I1 skrive i minnet. Så, i løpet av syv klokkeperioder, vil den utføre 4 instruksjoner i en enkelt rørledning.

  Skalar rørføring
Skalar rørføring

Den superskalære prosessorens rørledningsarkitektur inkluderer to rørledninger og fire trinn hente, dekode, kjøre og skrive tilbake resultat. Det er en 2-utgave superskalarprosessor som betyr at to instruksjoner om gangen vil hente, dekode, utføre og skrive tilbake resultatet. De to instruksjonene I1 og I2 vil samtidig hente, dekode, utføre og skrive tilbake i hver klokkeperiode. Samtidig i neste klokkeperiode vil de resterende to instruksjonene I3 & I4 samtidig hente, dekode, utføre og skrive tilbake. Så, i løpet av fem klokkeperioder, vil den utføre 4 instruksjoner i en enkelt rørledning.

  Superscalar Pipelining
Superscalar Pipelining

Således utsteder en skalarprosessor en enkelt instruksjon per klokkesyklus og utfører et enkelt rørledningstrinn per klokkesyklus, mens en superskalarprosessor utsteder to instruksjoner per klokkesyklus og den utfører to forekomster av hvert trinn parallelt. Så instruksjonsutførelsen i en skalarprosessor tar mer tid, mens det i en superskalar tar mindre tid å utføre instruksjonene .

Typer superskalarprosessorer

Dette er forskjellige typer superskalare prosessorer tilgjengelig på markedet, som diskuteres nedenfor.

Intel Core i7-prosessor

Intel core i7 er en superskalarprosessor som er basert på Nehalem-mikroarkitekturen. I en Core i7-design er det ulike prosessorkjerner der hver prosessorkjerne er en superskalar prosessor. Dette er den raskeste versjonen av Intel-prosessoren som brukes i datamaskiner og enheter for forbrukere. I likhet med Intel Corei5 er denne prosessoren innebygd i Intel Turbo Boost-teknologi. Denne prosessoren er tilgjengelig i 2 til 6 varianter som støtter opptil 12 forskjellige tråder samtidig.

  Intel Core i7-prosessor
Intel Core i7-prosessor

Intel Pentium-prosessor

Intel Pentium-prosessoren superscalar pipelined arkitektur betyr at CPU utfører minimum to eller flere instruksjoner for hver syklus. Denne prosessoren er mye brukt i personlige datamaskiner. Intel Pentium-prosessorenheter er vanligvis bygd for nettbasert bruk, skydatabehandling og samarbeid. Så denne prosessoren fungerer perfekt for nettbrett og Chromebooks for å gi sterk lokal ytelse og effektiv interaksjon på nettet.

  Intel Pentium-prosessor
Intel Pentium-prosessor

IBM Power PC601

Den superskalære prosessoren som IBM power PC601 er fra familien til PowerPC av RISC-mikroprosessorer. Denne prosessoren er i stand til å utstede så vel som å trekke tilbake tre instruksjoner for hver klokke og en for hver av de 3 utførelsesenhetene. Instruksjonene er helt ute av drift for forbedret ytelse; men PC601 vil få utførelsen til å komme i orden.

  IBM Power PC601
IBM Power PC601

Den kraftfulle PC601-prosessoren gir 32-bits logiske adresser, 8, 16 og 32 bits heltallsdatatyper og 32 og 64-bits flytende-punktsdatatyper. For implementering av 64-bit PowerPC, gir arkitekturen til denne prosessoren 64-bits baserte heltallsdatatyper, adressering og andre funksjoner som er nødvendige for å fullføre den 64-bits baserte arkitekturen.

MC 88110

MC 88110 er en enbrikke, andre generasjons RISC-mikroprosessor som bruker avanserte metoder for å utnytte parallellitet på instruksjonsnivå. Denne prosessoren bruker flere hurtigbuffere på brikken, superskalare instruksjonsproblemer, opptak av begrenset dynamisk instruksjon og spekulativ utførelse, for å oppnå maksimal ytelse, slik at den ideelt sett brukes som en sentral prosessor innenfor rimelige PC-er og arbeidsstasjoner.

  MC 88000
MC 88000

Intel i960

Intel i960 er en superskalarprosessor som er i stand til å utføre og sende forskjellige uavhengige instruksjoner under hver prosessorklokkesyklus. Dette er en RISC-basert mikroprosessor som ble veldig kjent som en innebygd mikrokontroller på begynnelsen av 1990-tallet. Denne prosessoren brukes kontinuerlig i noen få militære applikasjoner.

  Intel i960
Intel i960

MIPS R

MIPS R er en dynamisk og superskalar mikroprosessor som brukes til å utføre 64-bits MIPS 4-instruksjonssettarkitektur. Denne prosessoren henter og dekoder 4 instruksjoner for hver syklus og sender dem til fem fullstendig pipelinede utførelsesenheter med lav latens. Denne prosessoren er spesielt designet for høyytelses, store og virkelige applikasjoner med dårlig minneplassering. Med omtrentlig utførelse beregner den ganske enkelt minneadresser. MIPS-prosessorer brukes hovedsakelig i ulike enheter som Nintendo Gamecube, SGIs produktlinje, Sony Playstation 2, PSP- og Cisco-ruterne.

  MIPS R
MIPS R

Forskjellen S/H superskalar vs rørføring

Forskjellen mellom superskalar og pipelining er diskutert nedenfor.

Superskalar

Rørlegging

En superskalar er en CPU, brukt til å implementere en form for parallellisme som kalles instruksjonsnivå-parallellisme i en enkelt prosessor. En implementeringsteknikk som pipelining brukes der flere instruksjoner overlappes i utførelsen.
En superskalararkitektur initierer flere instruksjoner samtidig og utfører dem separat. Pipelining-arkitektur utfører kun et enkelt pipeline-trinn for hver klokkesyklus.

Disse prosessorene er avhengige av romlig parallellitet. Det avhenger av tidsmessig parallellisme.
Flere operasjoner kjøres samtidig på separat maskinvare. Overlapper flere operasjoner på vanlig maskinvare.
Det oppnås ved å duplisere maskinvareressurser som registerfilporter og utførelsesenheter. Det oppnås ved hjelp av utførelsesenheter som er rørlagt dypere med svært raske CLK-sykluser.

Kjennetegn

De superskalære prosessoregenskaper Inkluder følgende.

  • En superskalar prosessor er en super-pipelined modell hvor ganske enkelt de uavhengige instruksjonene utføres serielt uten noen ventesituasjon.
  • En superskalarprosessor henter og dekoder flere instruksjoner fra den innkommende instruksjonsstrømmen samtidig.
  • Arkitekturen til superskalare prosessorer utnytter potensialet til parallellitet på instruksjonsnivå.
  • Superscalar-prosessorer utsteder hovedsakelig den ovennevnte enkeltinstruksjonen for hver syklus.
  • Nr. av utstedte instruksjoner avhenger hovedsakelig av instruksjonene i instruksjonsstrømmen.
  • Instruksjonene blir ofte omorganisert for å passe bedre til prosessorens arkitektur.
  • Den superskalære metoden er vanligvis forbundet med noen identifiserende egenskaper. Instruksjoner utstedes vanligvis fra en sekvensiell instruksjonsstrøm.
  • CPU-en sjekker dynamisk for dataavhengigheter mellom instruksjoner under kjøretid.
  • CPU-en utfører flere instruksjoner for hver klokkesyklus.

Fordeler og ulemper

De fordelene med den superskalære prosessoren Inkluder følgende.

  • En superskalær prosessor implementerer parallellitet på instruksjonsnivå i en enkelt prosessor.
  • Disse prosessorene er ganske enkelt laget for å utføre ethvert instruksjonssett.
  • Den superskalære prosessoren, inkludert prediksjon av utførelsesgrener som ikke er i orden og spekulativ utførelse, kan ganske enkelt finne parallellitet over flere grunnleggende blokker og loop-iterasjoner.

De ulemper med den superskalære prosessoren Inkluder følgende.

  • Superskalare prosessorer brukes ikke mye i små innebygde systemer på grunn av strømforbruk.
  • Problemet med planlegging kan skje i denne arkitekturen.
  • Superscalar prosessor øker kompleksitetsnivået i utformingen av maskinvare.
  • Instruksjonene i denne prosessoren hentes ganske enkelt basert på deres sekvensielle programrekkefølge, men dette er ikke den beste utførelsesrekkefølgen.

Superskalar prosessorapplikasjoner

Applikasjonene til en superskalarprosessor inkluderer følgende.

  • Den superskalære utførelsen brukes ofte av en bærbar eller stasjonær datamaskin. Denne prosessoren skanner ganske enkelt programmet som kjøres for å oppdage sett med instruksjoner som kan utføres som én.
  • En superskalarprosessor inkluderer forskjellige databane-maskinvarekopier som utfører forskjellige instruksjoner samtidig.
  • Denne prosessoren er hovedsakelig designet for å generere en implementeringshastighet på over én instruksjon for hver klokkesyklus for et enkelt sekvensielt program.

Altså handler dette om en oversikt over superskalarprosessoren – arkitektur, typer og applikasjoner. Her er et spørsmål til deg, hva er skalarprosessoren?