Processador superescalar: arquitectura, canalització, tipus i les seves aplicacions

Proveu El Nostre Instrument Per Eliminar Problemes





En aquest món tothom vol fer les seves coses/treballs ràpidament. no ho és? Des dels cotxes fins a les màquines industrials i domèstiques, tothom vol que funcionin més ràpid. Saps què hi ha dins d'aquestes màquines perquè funcionin? Ells són processadors . Poden ser micro o macro processadors segons la funcionalitat. El processador bàsic en general executa una instrucció per cicle de rellotge. Una manera de millorar la seva velocitat de processament perquè les màquines puguin millorar la seva velocitat va néixer és, la processador superescalar que té un algorisme de canalització que li permet executar dues instruccions per cicle de rellotge. Va ser inventat per primera vegada pel CDC 6600 de Seymour Cray inventat el 1964 i posteriorment va ser millorat per Tjaden & Flynn el 1970.


El primer microprocessador superescalar comercial d'un xip MC88100 va ser desenvolupat per Motorola el 1988, més tard Intel va presentar la seva versió I960CA el 1989 i l'AMD 29000-series 29050 el 1990.  En l'actualitat, el processador superescalar típic utilitzat és el processador Intel Core i7 que depèn de la microarquitectura Nehalem.



Tot i això, les implementacions de superescalar es dirigeixen a millorar la complexitat. El disseny d'aquests processadors normalment es refereix a un conjunt de mètodes que permeten que la CPU d'un ordinador assoleixi un rendiment superior a una instrucció per a cada cicle mentre executa un sol programa seqüencial. Vegem més en aquest article l'arquitectura SuperScalarprocessor que redueix el seu temps d'execució i les seves aplicacions.

Què és el processador superescalar?

Un tipus de microprocessador que s'utilitza per implementar un tipus de paral·lelisme conegut com a paral·lelisme a nivell d'instrucció en un sol processador per executar més d'una instrucció durant un cicle CLK enviant diverses instruccions simultàniament a unitats d'execució especials del processador. A processador escalar executa una instrucció única per a cada cicle de rellotge; un processador superescalar pot executar més d'una instrucció durant un cicle de rellotge.



Les tècniques de disseny de superescalar normalment inclouen canvi de nom de registres paral·lels, descodificació d'instruccions paral·leles, execucions fora d'ordre i execucions especulatives. Per tant, aquests mètodes s'utilitzen normalment amb mètodes de disseny complementaris com la canalització, la predicció de branques, la memòria cau i els nuclis múltiples dins dels dissenys actuals de microprocessadors.

  Processador superescalar
Processador superescalar

Característiques

Les característiques dels processadors superescalars inclouen les següents.

  PCBWay
  • L'arquitectura superescalar és una tècnica de computació paral·lela utilitzada en diversos processadors.
  • En un ordinador superescalar, la CPU gestiona diversos canals d'instruccions per executar nombroses instruccions simultàniament durant un cicle de rellotge.
  • Les arquitectures superescalars ho inclouen tot canalització tot i que hi ha diverses instruccions que s'executen simultàniament dins de la mateixa canalització.
  • Els mètodes de disseny superescalar normalment inclouen el canvi de nom de registres paral·lels, la descodificació d'instruccions paral·leles, l'execució especulativa i l'execució fora d'ordre. Per tant, aquests mètodes s'utilitzen normalment amb mètodes de disseny complementaris com la memòria cau, la canalització, la predicció de branques i els nuclis múltiples en dissenys de microprocessadors recents.

Arquitectura del processador superescalar

Sabem que un processador superescalar és una CPU que executa per sobre d'una instrucció per a cada cicle CLK perquè les velocitats de processament simplement es mesuren en cicles CLK per cada segon. En comparació amb un processador escalar, aquest processador és molt més ràpid.

L'arquitectura del processador superescalar inclou principalment unitats d'execució paral·leles on aquestes unitats poden implementar instruccions simultàniament. Per tant, primer, aquesta arquitectura paral·lela es va implementar dins d'un processador RISC que utilitza instruccions senzilles i curtes per executar càlculs. Així que a causa de les seves habilitats superescalars, normalment RISC els processadors han tingut un millor rendiment en comparació amb els processadors CISC que funcionen al mateix megahertz. Però, la majoria CISC Els processadors ara com l'Intel Pentium també inclouen una arquitectura RISC, que els permet realitzar instruccions en paral·lel.

  Arquitectura del processador superescalar
Arquitectura del processador superescalar

El processador superescalar està equipat amb diverses unitats de processament per manejar diverses instruccions en paral·lel en cada etapa de processament. Mitjançant l'arquitectura anterior, una sèrie d'instruccions comencen a executar-se dins d'un cicle de rellotge similar. Aquests processadors són capaços d'obtenir una sortida d'execució d'instruccions de la instrucció anterior per a cada cicle.

Al diagrama d'arquitectura anterior, s'utilitza un processador amb dues unitats d'execució on una s'utilitza per a nombre enter i una altra s'utilitza per a les operacions de coma flotant. La unitat d'obtenció d'instruccions (IFU) és capaç de llegir instruccions alhora i les emmagatzema a la cua d'instruccions. En cada cicle, la unitat d'enviament recupera i descodifica fins a 2 instruccions des del front de la cua. Si hi ha un sol enter, una instrucció de coma flotant i no hi ha cap perill, les dues instruccions s'envien dins d'un cicle de rellotge similar.

Canalització

La canalització és el procediment de desglossar les tasques en subpassos i executar-les dins de diferents parts del processador. A la canalització superescalar següent, es poden obtenir i enviar dues instruccions alhora per completar un màxim de 2 instruccions per cicle. A continuació es mostra l'arquitectura de canalització del processador escalar i del processador superescalar.

Les instruccions d'un processador superescalar s'emeten a partir d'un flux d'instruccions seqüencial. Ha de permetre múltiples instruccions per a cada cicle de rellotge i la CPU ha de comprovar dinàmicament les dependències de dades entre les instruccions.

A l'arquitectura de pipeline següent, s'obté F, D es descodifica, E s'executa i W és la reescriptura del registre. En aquesta arquitectura de pipeline, I1, I2, I3 i I4 són instruccions.

L'arquitectura de canalització del processador escalar inclou una única canalització i quatre etapes d'obtenció, descodificació, execució i escriptura de resultats. En el processador escalar de pipeline únic, el pipeline de la instrucció1 (I1) funciona com; en el primer període de rellotge I1 s'obtindrà, en el segon període de rellotge es descodificarà i en la segona instrucció, s'obtindrà I2. La tercera instrucció I3 en el tercer període de rellotge s'obtindrà, I2 descodificarà i I1 s'executarà. En el quart període de rellotge, I4 recuperarà, I3 descodificarà, I2 s'executarà i I1 escriurà a la memòria. Així, en set períodes de rellotge, executarà 4 instruccions en un sol pipeline.

  Canalització escalar
Canalització escalar

L'arquitectura de pipelines del processador superescalar inclou dos pipelines i quatre etapes d'obtenció, descodificació, execució i escriptura de resultats. Es tracta d'un processador superescalar de 2 números, el que significa que dues instruccions alhora recuperaran, descodificaran, executaran i es tornaran a escriure el resultat. Les dues instruccions I1 i I2 buscaran, descodificaran, executaran i es tornaran a escriure alhora en cada període de rellotge. Simultàniament, en el següent període de rellotge, les dues instruccions restants I3 i I4 buscaran, descodificaran, executaran i escriuraran alhora. Així, en cinc períodes de rellotge, executarà 4 instruccions en un sol pipeline.

  Canalització superescalar
Canalització superescalar

Així, un processador escalar emet una instrucció única per cicle de rellotge i realitza una única etapa de pipeline per cicle de rellotge, mentre que un processador superescalar, emet dues instruccions per cicle de rellotge i executa dues instàncies de cada etapa en paral·lel. Així, l'execució d'instruccions en un processador escalar triga més temps, mentre que en un superescalar triga menys a executar instruccions. .

Tipus de processadors superescalars

Aquests són diferents tipus de processadors superescalars disponibles al mercat que es comenten a continuació.

Processador Intel Core i7

Intel core i7 és un processador superescalar que es basa en la microarquitectura Nehalem. En un disseny Core i7, hi ha diversos nuclis de processador on cada nucli de processador és un processador superescalar. Aquesta és la versió més ràpida del processador Intel que s'utilitza en ordinadors i dispositius de consum. Similar a l'Intel Corei5, aquest processador està integrat a la tecnologia Intel Turbo Boost. Aquest processador és accessible de 2 a 6 varietats que admeten fins a 12 fils diferents alhora.

  Processador Intel Core i7
Processador Intel Core i7

Processador Intel Pentium

L'arquitectura de canalització superescalar del processador Intel Pentium significa que la CPU executa un mínim de dues instruccions o més per a cada cicle. Aquest processador és molt utilitzat en ordinadors personals. Els dispositius amb processador Intel Pentium es construeixen normalment per a ús en línia, informàtica en núvol i col·laboració. Per tant, aquest processador funciona perfectament per a tauletes i Chromebooks per oferir un bon rendiment local i interaccions en línia eficients.

  Processador Intel Pentium
Processador Intel Pentium

IBM Power PC601

El processador superescalar com IBM power PC601 és de la família de microprocessadors PowerPC de RISC. Aquest processador és capaç d'emetre i de retirar tres instruccions per a cada rellotge i una per a cadascuna de les 3 unitats d'execució. Les instruccions estan totalment fora d'ordre per millorar el rendiment; però, el PC601 farà que l'execució sorgeixi en ordre.

  IBM Power PC601
IBM Power PC601

El processador Power PC601 proporciona adreces lògiques de 32 bits, tipus de dades enters de 8, 16 i 32 bits i tipus de dades de coma flotant de 32 i 64 bits. Per a la implementació de PowerPC de 64 bits, l'arquitectura d'aquest processador proporciona tipus de dades enters basades en 64 bits, adreçament i altres funcions necessàries per completar l'arquitectura basada en 64 bits.

MC 88110

L'MC 88110 és un microprocessador RISC de segona generació d'un sol xip que utilitza mètodes avançats per explotar el paral·lelisme a nivell d'instrucció. Aquest processador utilitza múltiples memòria cau en xip, problemes d'instruccions superescalars, enregistrament d'instruccions dinàmiques limitades i execució especulativa, per aconseguir el màxim rendiment, de manera que s'utilitza idealment com a processador central en ordinadors i estacions de treball de baix cost.

  MC 88000
MC 88000

Intel i960

Intel i960 és un processador superescalar capaç d'executar i enviar diverses instruccions independents durant cada cicle de rellotge del processador. Aquest és un microprocessador basat en RISC que es va fer molt famós com a microcontrolador incrustat a principis dels anys noranta. Aquest processador s'utilitza contínuament en algunes aplicacions militars.

  Intel i960
Intel i960

MIPS R

El MIPS R és un microprocessador dinàmic i superescalar utilitzat per executar l'arquitectura de conjunt d'instruccions MIPS de 64 bits. Aquest processador obté i descodifica 4 instruccions per a cada cicle i les envia a cinc unitats d'execució completament canalitzades i de baixa latència. Aquest processador està especialment dissenyat per a aplicacions d'alt rendiment, grans i del món real amb poca localitat de memòria. Amb una execució aproximada, simplement calcula les adreces de memòria. Els processadors MIPS s'utilitzen principalment en diversos dispositius com Nintendo Gamecube, la línia de productes de SGI, Sony Playstation 2, els encaminadors PSP i Cisco.

  MIPS R
MIPS R

Diferència B/N Superescalar vs Pipelining

La diferència entre superescalar i pipeline es discuteix a continuació.

Superescalar

Canalització

Un superescalar és una CPU, utilitzada per implementar una forma de paral·lelisme que s'anomena paral·lelisme a nivell d'instrucció en un sol processador. S'utilitza una tècnica d'implementació com la canalització on es superposen diverses instruccions dins de l'execució.
Una arquitectura superescalar inicia diverses instruccions simultàniament i les executa per separat. L'arquitectura de pipeline executa una única etapa de pipeline només per a cada cicle de rellotge.

Aquests processadors depenen del paral·lelisme espacial. Depèn del paral·lelisme temporal.
Diverses operacions s'executen simultàniament en maquinari independent. Superposició de diverses operacions en maquinari comú.
S'aconsegueix duplicant recursos de maquinari com els ports de fitxers de registre i les unitats d'execució. S'aconsegueix mitjançant unitats d'execució canalitzades més profundament amb cicles CLK molt ràpids.

Característiques

El Característiques del processador superescalar incloure el següent.

  • Un processador superescalar és un model súper canalitzat on simplement les instruccions independents es realitzen en sèrie sense cap situació d'espera.
  • Un processador superescalar recupera i descodifica alhora diverses instruccions del flux d'instruccions entrants.
  • L'arquitectura dels processadors superescalars explota el potencial del paral·lelisme a nivell d'instrucció.
  • Els processadors superescalars emeten principalment la instrucció única anterior per a cada cicle.
  • El no. d'instruccions emeses depèn principalment de les instruccions dins del flux d'instruccions.
  • Les instruccions es reordenen amb freqüència per adaptar-se millor a l'arquitectura del processador.
  • El mètode superescalar sol estar associat amb algunes característiques identificatives. Les instruccions s'emeten normalment a partir d'un flux d'instruccions seqüencial.
  • La CPU comprova dinàmicament les dependències de dades entre instruccions en temps d'execució.
  • La CPU executa diverses instruccions per a cada cicle de rellotge.

Avantatges i inconvenients

El avantatges del processador superescalar incloure el següent.

  • Un processador superescalar implementa el paral·lelisme a nivell d'instruccions en un sol processador.
  • Aquests processadors estan fets simplement per executar qualsevol conjunt d'instruccions.
  • El processador superescalar que inclou la predicció de branques d'execució fora d'ordre i l'execució especulativa simplement pot trobar paral·lelisme per sobre de diversos blocs bàsics i iteracions de bucle.

El desavantatges del processador superescalar incloure el següent.

  • Els processadors superescalars no s'utilitzen gaire en sistemes encastats petits a causa del consum d'energia.
  • El problema amb la programació pot passar en aquesta arquitectura.
  • El processador superescalar millora el nivell de complexitat en el disseny del maquinari.
  • Les instruccions d'aquest processador s'obtenen simplement en funció del seu ordre seqüencial del programa, però aquest no és el millor ordre d'execució.

Aplicacions de processadors superescalars

Les aplicacions d'un processador superescalar inclouen les següents.

  • L'execució superescalar s'utilitza amb freqüència per un ordinador portàtil o d'escriptori. Aquest processador simplement escaneja el programa en execució per descobrir conjunts d'instruccions que es poden executar com una sola.
  • Un processador superescalar inclou diverses còpies de maquinari de ruta de dades que executen diverses instruccions alhora.
  • Aquest processador està dissenyat principalment per generar una velocitat d'implementació superior a una instrucció per a cada cicle de rellotge per a un sol programa seqüencial.

Per tant, tot això es tracta una visió general del processador superescalar - Arquitectura, tipus i aplicacions. Aquí teniu una pregunta per a vosaltres, què és el processador escalar?