Anda di halaman 1dari 8

Arquitecturas RlSC

William Stallings, Organizacin y Arquitectura de


Computadores, Captulo J2: Computadores de repertorio
reducido de instrucciones.
]ohn Hennessy - David Patterson, Arquitectura de
Computadores - Un enfoque cuantitativo Ja ed, Captulos J a 6
y Apndice E: Visin general de las arquitecturas Rl5C (3a ed Ap
C, 4ta ed Ap j).

Avances importantes en
microprocesadores desde 1950

Unidad de control microprogramada y el concepto de


familia (1964): compatbdad ISA con dferentes
mpementacones |IBM 360|.

Memoria cache (1968) |IBM 360|.

Segmentacion del cauce de instrucciones (ppene).

Arquitecturas RlSC (1985): nvoucra a mayora de os aspectos


mportantes reaconados con a arqutectura y a organzacn.
No exste en a actuadad una tecnooga
que haga prever un mpacto seme|ante.
Mtpes procesadores?

Arqutecturas RISC
La brecha semntica

E costo de hardware ba|a (evoucn tecnogca) y e costo de


software sube (poco confabe, dfc de mantener).

Como una soucn aparecen os engua|es de programacn de ato


nve (HLL): mayor nve de abstraccn (programacn estructurada
vs. OO, ms concreto y ms poderoso), pero aumenta a brecha
semntca.

Cu es a forma ms efcente de generar engua|e mquna?

Aproxmacn CISC: ISAs compe|as, con muchas nstruccones y


modos de drecconamento, ncuyendo nstruccones de HLL.
Compadores smpes.

Aproxmacn RISC: smpfcar e set de nstruccones


adaptndoo a os requermentos REALES de os programas
(estudos). Cambo de estratega.

Arqutectura de carga/amacenamento, con pocos


modos de drecconamento.

Un gran nmero de regstros de uso genera, cuya


utzacn se optmza en e compador.

Repertoro de nstruccones mtado, senco y con


formato f|o

Especa nfass en a segmentacn y undad de contro


cabeada.
Arqutecturas RISC
Principales caracteristicas

Arqutecturas RISC
Algunas arquitecturas

|ohn L. Hennessy (Stanford) -> arqutectura MIPS (Mcroprocessor


wthout Interockng Ppene Stages)

MIPS Technoogy Inc. Dseadores de os procesadores RXXX;


fabrcados por Nec, Toshba y SGI; utzados en PayStatonII,
Nntendo64, CISCO, SGI.

Davd A. Patterson (Berkeey) -> arqutecturas RISC I y II

Conduce a dseo de a arqutectura SPARC fabrcada por Sun


Mcrosystems.

|untos -> arqutectura DLX (H-P)

Base para stas y otras arqutecturas (Apha de Dec, 88000 de


Motoroa, 29000 de AMD o 960 de Inte). Pocas dferencas!
Arqutecturas RISC
Origenes (1980-1990)

ue hacen los programas escritos en HLL la mayor
parte del tiempo7 ]Patterson, 1982|

Frecuencia dinmica de instrucciones:

Movmento de datos 43%

Contro de fu|o 23%

Operacones artmtcas y gcas 20%

Comparacones 13%

Otras 10%
De recuento de nstruccones y referencas a memora resuta un
gran peso de as llamadas a funciones de os engua|es
estructurados (savaguarda de estado y pasa|e de parmetros).
Arqutecturas RISC
Evaluacion dinmica de los
programas en tiempo de ejecucion

Tipos de operandos: 60% varabes escaares (enteros, reaes,


char, etc.), de as cuaes e 80% son ocaes.

Llamadas a procedimientos: gran cantdad de accesos a


memora. E 98% usa menos de ses argumentos, de os cuaes e
92% usa menos de ses varabes escaares ocaes. Pocos nvees
de andamento (menor que ses). Concepto: referenca a
operandos ocazada.

Modos de direccionamiento: soo e 18% de as nstruccones


utza modos sofstcados. La mayora utza modos que se
resueven en un cco (regstro, despazamento).
Arqutecturas RISC
Evaluacion dinmica (cont)

Arqutecturas RISC
Evaluacion dinmica (cont)

Conclusiones de las mediciones:

Preponderanca de operacones y modos de drecconamento


smpes -> lSA REDUClDO.

Los operandos son mayormente escaares ocaes ->


REGlSTROS y LOAD}STORE.

Importanca de amadas a procedmentos -> VENTANAS.


Adems es cave un ppene efcente -> ANCHO DE
lNSTRUCClONES Fl]O e lNSTRUCClONES SlMPLES.
S resuta:
CONTROL CABLEADO, puede aumentarse f
CLOCK
y por lo
tanto mayor RENDlMlENTO
Arqutecturas RISC
Evaluacion dinmica (cont)

Principales aspectos RlSC

Pocas nstruccones smpes

Arqutectura oad/store
Pocos modos de drecconamento

Instruccones de ancho f|o


Gran nmero de regstros

1. Pocas instrucciones simples

E ob|etvo es que e|ecuten rpdo, de ser posbe en un nco cco


de mquna (uego de ser captadas y decodfcadas, por supuesto).
Ppene de tres etapas para as nstruccones sn referenca a
memora: FI - DI - EI.

Puedo utzar contro cabeado porque son smpes.

La undad de contro es smpe, por o tanto puede funconar con


mayor frecuenca de cock.

E ppene es efcente s as nstruccones son de tempo de


e|ecucn smar en cada etapa.

Las nstruccones compe|as de os CISC se mpementan como una


secuenca de operacones RISC. {E]EMPLO}

2. Arquitectura load}store

Las ncas nstruccones que referencan datos en memora son as


de carga y amacenamento. Las dems operan soo con regstros.

Los accesos a memora no pueden hacerse en un cco. Cuatro


etapas en e ppene para as nstruccones con referenca a
memora: FI - DI - CA (cacuar dreccn) - TR (transferr). La
nstruccn sguente debe retardarse. Ver .

Dscusn sobre a efcenca de os programas resutantes s me


nteresa e trfco con memora y a densdad de cdgo resutante
(no confundr con programa smbco ms corto)

3. Pocos modos de direcciona-
miento

Adems de os modos registro e inmediato, e prncpa modo de


drecconamento (y cas sempre e nco) es e de
desplazamiento (offset), con regstro de 32 bts ms un
despazamento de 16 bts, soo utzado para LOAD/STORE.
MIPS: w r2,128(r3)

Se puede utzar para smuar e modo directo o absoluto, muy


utzado para acceder a datos esttcos, usando r0.

Tambn se puede smuar e modo indirecto con registro


hacendo e despazamento nuo.

lMPORTANTE: Se evtan os modos que necesten acceder a


memora para componer a dreccn de un operando (ndrecto con
memora).

4. lnstrucciones de ancho fijo
y formato uniforme

Usuamente nstruccones de ancho f|o de 32 bts.

Esto hace que a carga y decodfcacn de nstruccones sea


smpe y rpda. No se necesta esperar a que se conozca e argo
de a nstruccn actua para empezar a decodfcar a prxma.

E formato unforme smpfca a decodfcacn porque e cdgo


de operacn y e campo de dreccn estn ubcados en a msma
poscn para todas as nstruccones.

5. Gran numero de registros

Las varabes y os resutados ntermedos pueden ser amacenados


en regstros evtando repetdos accesos a memora.

Los regstros pueden utzarse para e pasa|e de parmetros a


procedmentos, evtando hacero por a pa (memora). Recordar
meddas 6/6/6.

Puede utzarse un grupo de regstros para cada procedmento,


evtando tener que savar e estado.

Es posbe mpementar muchos regstros porque se redu|o a


compe|dad de a undad de contro.

La arqutectura no mta a utzacn de os regstros. Son de


propstos generaes. Sn embargo e compador debe organzarse
de aguna manera, segn su convenenca (por e|empo s
mpementa un stack).

Ventana de registros (RlSC)

En cada momento so es vsbe una ventana de N regstros (de 0


a N-1).

Se defnen tres areas de traba|o de argo f|o superpuestas (n,


oca, out).

Los parmetros a procedmentos se pasan sn transferenca rea.


So es necesaro ncrementar e puntero de ventana actua (CWP).

Ventana de registros (cont)

Una amada a procedmento ncrementa CWP.

CWP = SWP genera nterrupcn, sava a memora e ncrementa


SWP.

Idem a retorno.

Recordar 6/6/6.

Con k ventanas k-1 proc.

GLOBALES.

Ventana de registros SPARC

Discusion
8anco de registros vs. cache de datos
Dsponbdad, nmero de bts necesaros, veocdad.

Optimizacion de registros basada
en el compilador

Los HLL no utzan regstros. E compador utza regstros


vrtuaes y trata de adaptaros a os regstros dsponbes.

Compromso entre dsponbdad de regstros y sofstcacn de


compador.

Cooreado de grafos:

Carga retardada (delayed load)

La nstruccn posteror a un LOAD debe suspenderse durante un


cco s necesta e operando.

La tcnca de carga retardada (smar a sato retardado ya vsto)


es muy utzada en RISC por su gran efcenca.

Consste en e|ecutar a nstruccn sguente sn detencn. E


operando no est dsponbe. E compador (o e programador ASM)
es responsabe de as consecuencas.

Carga retardada (cont)

En esas condcones, e programa presentado es ncorrecto (RAW


hazard).

Carga retardada (cont)

La sguente secuenca es correcta. Depende de compador e


encontrar a nstruccn que pueda coocarse a contnuacn de
LOAD, sn afectar e resutado de programa. Estadstca: entre e
80-90% de os casos es posbe.

Carga retardada (cont)

En e caso de no consegura, e compador debe nsertar un NOP.


E cauce no se detene, pero se perde una nstruccn.

Ventajas RlSC (segun Patterson)

Oblea ms pequea. Un dseo entra antes en una determnada


tecnooga de ntegrados. A evouconar a tecnooga permte
ncorporar cache, fp, etc. Menor consumo de potenca.

Tiempo de desarrollo ms corto. Por o tanto es ms barato y


me|or sntonzado con a tecnooga.

Mayor performance (dscutbe). Argumento: mas smpe mpca


ms rpdo. Hceron uno smpe y comprobaron que a agregar
nstruccones compe|as desme|oraba.

Contribuciones RlSC a la historia

Segmentacn de cauce de nstruccones. Es a forma ms smpe


de concurrenca, con a cua se pueden obtener aceeracones de 2
o 3. Esta tcnca es de mpementacn efcente en una
arqutectura RISC.

Cco de cock corto y e|ecucn en un cco. Permte a


mcroprocesador expotar a fondo a tecnooga de memoras. Nota:
en a poca de dseo de os CISC as memoras eran entas, pero
tambn os mcroprocesadores se hceron ms entos a pasar de
TTL a MOS por cuestones de consumo.
Hoy es posible implementar un ClSC de la decada
del 80 con las siguientes caracteristicas: Hard-
Wired, Single-Cycle, Pipelined (ejemplo
ADuC8051)

Desventajas RlSC

Menor densdad de cdgo (dscutbe). Importante s a


dsponbdad de memora es crtca. Ocasona un menor
rendmento de cach de nstruccones. ARM Thumb.

No e|ecutan cdgo x86. Puede utzarse smuacn por software,


pero no puedo fabrcar una IBM PC compatbe.

RlSC vs. ClSC
La comparacn es dfc por varos motvos:

No exste una pare|a de mqunas RISC y CISC comparabes en


costo de cco de vda, nve de tecnooga, compe|dad de
hardware, sofstcacn de compador, soporte para e sstema
operatvo, etc.

No exsten os benchmarks defntvos.

Es dfc separar os efectos de hardware de os efectos debdos a


a habdad en e dseo de compador.

En os tmos aos, dado e aumento de a densdad de


ntegracn, ha habdo una convergenca de as dos tecnoogas.

RlSC
Any computer announced after 1985.
5teven Praybylski (MlP5 Technology)

Comparacion

Comparacion (cont)
Ancho Formato Modos
CISC VAX JJ/780 303 2a57 Variable 22 J6
CISC 235 JaJJ Variable JJ 8
RISC 206 4 Fijo 2 32
RISC 52 4 Fijo 2 520
Inst. Reg.
Pentium
PowerPC
5un 5PARC

Comparacion (cont)
Cuatro arqutecturas de os 70

Comparacion (cont)
Cnco arqutecturas RISC

Comparacion (cont)
Cnco arqutecturas RISC embedded

Laboratorio: MlPS64
Claves de diseo
ISA smpe de carga/amacenamento (RISC)
Optmzacn de a segmentacn (ncuyendo nstruccones de argo f|o)
Efcenca como 'target' de compadores (regstros)
Registros
32 GPR de 64 bts: R0(sempre cero),R1,R2,...R31(return address)
32 FPR de 64 bts: F0,F1,...F31 (smpe precsn, medo vaco)
Tipos de datos
Enteros de 8, 16, 32 y 64 bts
Punto fotante IEEE 754 de smpe y dobe precsn
Modos de direccionamiento
Inmedato
Despazamento: d
16b
(Rn) {s d=0 register indirect, s uso R0 absoluto}

lSA MlPS64
Formato de instrucciones
Todas de 32 bts
6 bts de cdgo de operacn
Tres tpos de nstruccones: I, R y |
Operaciones
Load/Store (L, S y M)
ALU (ADD, SUB, MUL, DIV, OR, AND..)
Contro (B y |)
FP (ADD.D, ADD.S, SUB.D, MUL.D...)

lMPORTANTE
DLX, MIPS y MIPS64 son ISAs (dem IA-32)
WnDLX, WnMIPS64, Sparc y R10000 son
mpementacones (dem Pentum o Athon)
Discusin: Utilidad real de los simuladores
No se utzan para probar programas de apcacn, pues nade
programa RISCs en assember (contraro a a fosofa de dseo).
Son muy tes para verfcar dferentes tcncas de compacn.

Segmentacion tipica
1. Fl: Captar a nstruccn e ncrementar PC
2. lD: Decodfcar nstruccn y captar regstros - (Terminan saltos: 2c)
3. EX: Tres opcones: cacuar dreccn efectva, ALU R-R o ALU R-Inmedato
4. MEM: Acceso a memora (soo carga o amacenamento) - (Termina store: 4c)
5. WB: Escrbr regstro de sada - (Termina el resto: 5c)
4c < CPl < 5c

lMPLEMENTAClON

Puede accederse smutneamente a a memora de nstruccones y de datos?

E acceso a memora de datos se reaza en un nco cco? (doube?)

E banco de regstros puede accederse smutneamente para escrtura y para ectura?

Forwardng, sato retardado, carga retardada, etc.

Operacones en punto fotante



Tema de investigacion

Embedded. Mcrocontroadores RISC.

Low power desgn (ver ARM System-On-Chp Archtecture PDF).

Fama de mcrocontroadores PIC (Microchip Technology lnc.) Es


RISC?

Arqutecturas ARM. Acorn Computers Ltd. (Cambrdge, Eng),


autores de BBC Mcro, 1982. 1985-1990 Acorn RISC Machne (ARM)
-> Arqutectura. En 1990 pas a amarse Advanced Rl5C Machines
Ltd. (ARM Ltd).

RISC en FPGA (ver artcuos PDF).

Anda mungkin juga menyukai