Sei sulla pagina 1di 23

UNIVERSIDAD NACIONAL DEL CALLAO

FACULTAD DE INGENIERIA INDUSTRIAL Y DE SISTEMAS


ESCUELA PROFESIONAL DE INGENIERIA DE SISTEMAS

ARQUITECTURA Y ORGANIZACION DEL COMPUTADOR

ARQUITECTURA DE 128 bits


Contreras Centeno Nelson Luis 1215220407
Garay Alburqueque, Jair Edson 1215220461
Maurtua Flores, Angel de Jesus 1125210099
Llaulle Gutierrez Omar Felipe 1215220158

Docente:
Mg. Sally Torres Alvarado
2015
A
no de la Diversificacion Productiva y Fortalecimiento de la
Educacion

Indice
1. INTRODUCCION

2. 128 bits
2.1. PROCESADORES DE 128 BITS . . . . . . . . . . . . . . . . .
2.2. FUTURO DE LOS PROCESADORES DE 128 BITS . . . . . .

5
5
5

3. PowerPC
3.1. BREVE HISTORIA . . . . . . . . . . . . . .
3.2. ARQUITECTURA DE UN CPU POWER PC
3.2.1. Diagrama de Bloques . . . . . . . . . .
3.2.2. Procesador de Decisiones . . . . . . . .
3.2.3. Unidad de Enteros . . . . . . . . . . .
3.2.4. Unidad de Punto Flotante . . . . . . .
3.2.5. Unidad de Gestion de Memoria(MMU)
3.2.6. Unidad de Memoria . . . . . . . . . . .
3.2.7. Memoria Cache . . . . . . . . . . . . .
3.2.8. Sumario de Registros . . . . . . . . . .

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

7
. 7
. 8
. 8
. 9
. 9
. 9
. 9
. 9
. 10
. 11

4. CONCLUSIONES

21

5. BIBLIOGRAFIA

22

Indice de figuras
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.

ARM apostara por el desarrollo de procesadores de 128 bits para


moviles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Microprosesador PowerPC 601 fabricado por IBM . . . . . . .
Diagrama de Bloques General de un Procesador PowerPC . .
Unidad de Memoria . . . . . . . . . . . . . . . . . . . . . . . .
Memoria Cache . . . . . . . . . . . . . . . . . . . . . . . . . .
Esquema de Registros de un procesador PowerPC . . . . . . .
Registros de Proposito General . . . . . . . . . . . . . . . . .
Registros de Punto Flotante . . . . . . . . . . . . . . . . . . .
Registro XER . . . . . . . . . . . . . . . . . . . . . . . . . . .
Dieshot de un microprocesador PowerPC 970 . . . . . . . . . .

.
.
.
.
.
.
.
.
.
.

6
7
8
10
10
11
12
13
13
20

Indice de cuadros
1.
2.
3.
4.
5.
6.
7.

Definiciones de bits del registro XER . . . . . . . . . . . . . .


Resumen de registros en la arquitectura PowerPC . . . . . . .
Instrucciones en la arquitectura PowerPC para implementaciones de 64 bits . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones en la arquitectura PowerPC para implementaciones de 64 bits . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones en la arquitectura PowerPC para implementaciones de 64 bits . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones en la arquitectura PowerPC para implementaciones de 64 bits . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones en la arquitectura PowerPC para implementaciones de 64 bits . . . . . . . . . . . . . . . . . . . . . . . . . . .

. 14
. 15
. 15
. 16
. 17
. 18
. 19

1.

INTRODUCCION

En la segunda mitad del siglo XX, la humanidad tuvo la necesidad de


microprocesadores mucho mas potentes que remplazaran aquellos de 32 bits
que solo permitan direccionar hasta 4 GB de RAM.
Entonces para cubrir esa necesidad se construyo los microprocesadores de
64 bits que permitan direccionar hasta 16 Exabytes (16 000 000 000 GB) de
RAM siendo una de las razones de por que en la actualidad no existe una
corriente para construir microprocesadores de 128 ? bit y se apuesta incluso
por desarrollar nuevas tecnologas como la computacion cuantica. Sin embargo, a pesar de no construirse este tipo de microprocesadores, existen algunas
computadoras que usan n
umeros de coma flotante e instrucciones de 128 bits.
La presente monografa se refiere a la arquitectura 128 ? bit, sus registros, instrucciones, punto flotante y otros conceptos relacionados. Asimismo,
se mencionara las ventajas y desventajas comparado con arquitecturas de 64
? bit, 32 ? bit y 16 ? bit.
La presente investigacion de este tipo de arquitectura se realizo por el
interes academico de profundizar la indagacion acerca de esta tecnologa, revisando una variada bibliografa.

2.

128 bits

En arquitectura de ordenadores, 128 bits es un adjetivo usado para describir enteros, direcciones de memoria u otras unidades de datos que comprenden
hasta 128 bits (16 octetos) de ancho, o para referirse a una arquitectura ALU1
basadas en registros, bus de direcciones o bus de datos de ese ancho. Teoricamente, deberan reconocer hasta 5 mil billones de yottabytes 2 de memoria
RAM.

2.1.

PROCESADORES DE 128 BITS

Son procesadores de 128 bits en el sentido que tienen registros de 128 bits
y en algunos casos ALU de 128 bits, pero no operan con n
umeros individuales
que sean dgitos binarios de 128 bits de longitud.
No hay actualmente una corriente dominante de procesadores de proposito general construidos para operar con enteros o direcciones de 128 bits (16
octetos), aunque varios procesadores operan con datos de 128 bits.
El IBM S/370 puede considerarse como la primera computadora rudimentaria de 128 bits ya que utilizo registros de punto flotante de 128 bits. Muchas
CPUs como el Pentium y el PowerPC tenan registros de vectores de 128 bits
utilizados para almacenar varios n
umeros peque
nos, como 4 n
umeros de 32
bits en coma flotante. Una instruccion simple puede operar todos estos valores
en paralelo (SIMD).
El DEC VAX operaba con datos de 128 bits de tipo entero (O u octapalabra) y de tipo punto flotante (HFLOAT). Que tenga la posibilidad de llevar
a cabo este tipo de operaciones, era mas una opcion de mejora que una caracterstica estandar. Desde los registros del VAX que eran de 32 bits de ancho,
ahora una operacion de 128 bits utiliza cuatro registros consecutivos o cuatro
palabras largas en la memoria.
El ICL 2900 Series proporciona un acumulador de 128 bits, y un conjunto de
instrucciones que incluyen punto flotante de 128 bits y un paquete aritmetica
decimal.

2.2.

FUTURO DE LOS PROCESADORES DE 128 BITS

Los procesadores de 128 bits podran ser predominantes cuando 64 bits no


sea suficiente para direccionar 16 Exbibytes3 bytes de memoria RAM. Si se
considera que los grandes servidores disponibles a mediados de 2006 contienen
512 GB de RAM4 (requieren al menos 39 bits de direcciones), un espacio de
1

Unidad Aritmetica L
ogica
1yottabyte= 1024 bytes.
3 64
2 , aproximadamente 1,8x1019
4
Por ejemplo: IBM System z9 Enterprise Class
2

direcciones de 64 bits debera ser suficiente durante otros 50 a


nos.
Algunas formas de intercambio de bancos podra extender la vida u
til del
direccionamiento de 64 bits incluso mas alla de 50 a
nos. Por comparacion,
la electronica de computacion fue inventada solo hace 60 a
nos. Sin embargo,
cabe destacar que hasta ese entonces, es posible que se construyan nuevas
tecnologas como las computadoras cuanticas.
Los procesadores de 128 bits podran ser utilizados para direccionar 2128
(mas de 3,40x1038 ) bytes, que excederan en gran medida al total de datos
almacenados en la Tierra a partir de 2010, que se ha estimado alrededor de
1,2 zettabytes (1,42 1021 bytes)5 .
Recientes noticias sobre el futuro de los procesadores en dispositivos moviles no son acerca de las CPU de 64 bits, sino de 128 bits. Seg
un un ejecutivo
de ARM, del que no se ha desvelado el nombre, todava no estan trabajando
en ellos, pero tienen en mente la disponibilidad de chips de 128 bits en aproximadamente dos a
nos, es el camino que creen que tomaran los terminales en
un futuro proximo6 .

Figura 1: ARM apostara por el desarrollo de procesadores de 128 bits para


moviles

Rich Miller (2010). Digital Universe nears a Zettabyte. Obtenido y traducido de Digital Universe Nears a zettabyte, articulo de internet
6
Articulo de Internet sobre procesadores ARM

3.

PowerPC

3.1.

BREVE HISTORIA

PowerPC (usualmente abreviada PPC) es el nombre original de la arquitectura de computadoras de tipo RISC7 , que fue desarrollada por IBM, Motorola,
y Apple.

Figura 2: Microprosesador PowerPC 601 fabricado por IBM

Los procesadores de esta familia fueron producidos por IBM y Freescale


Semiconductor (que era la division de semiconductores y microprocesadores
de Motorola), siendo utilizados principalmente en ordenadores o computadores
Macintosh de Apple Computer hasta el a
no 2006 y en varios modelos IBM.
El PowerPC ha sido una de las arquitecturas mas extendidas gracias a su
alto rendimiento y su implementacion tecnologica. Podemos mencionar algunas
las implementaciones del PowerPC a lo largo de su historia:
1. 601 MPC601 50 y 66 MHz
2. 602 productos para consumidor (bus de datos y direcciones multiplexados)
3. 603 para ordenadores portatiles
4. 603e
5. 604
6. 604e
7. 620: la primera implementacion de 64 bits
8. x704 BiCOMOS implementacion PowerPC por Exponential Technologies
9. 750 G3 (1997) 233 MHz y 266 MHz
10. 7400 G4 (1999) 350 MHz
7

RISC:Reduced Instruction Set Computing

11. 750FX anunciado por IBM en 2001 y disponible en 2002 en 1 GHz.


12. 970 G5 (2003) implementacion 64-bit derivada del IBM Power 4.

3.2.
3.2.1.

ARQUITECTURA DE UN CPU POWER PC


Diagrama de Bloques

En la siguiente imagen (ver figura 3) se ha representado a traves de un


diagrama de bloques la arquitectura general de un procesador PowerPC.

Figura 3: Diagrama de Bloques General de un Procesador PowerPC

3.2.2.

Procesador de Decisiones

Determina como manejar la instruccion de divergencia (de decision)


Registro de condicion (CR): banco de flags las para divergencias condicionales.
Registro de link o de subrutina (LR): contiene direccion de salto o de
retorno de la divergencia.
Registro de cuenta (CTR): se usa para divergencias iterativas o indirectas.
3.2.3.

Unidad de Enteros

Realiza operaciones aritmeticas, logicas y de campos de bits sobre enteros.Contiene 32 registros GPR y un registro XER. La IU se ocupa de todos los
calculos de direcciones para las distintas unidades de ejecucion.
3.2.4.

Unidad de Punto Flotante

Unidad de punto flotante Contiene el archivo FPR (registros de coma flotante) y el FPSCR (registro de estado y control). Los 32 registros tienen 64
bits cada uno y todos ellos soportan operaciones en precision simple y doble.
3.2.5.

Unidad de Gesti
on de Memoria(MMU)

Se encarga de la traduccion de direcciones logicas a fsicas, de la gestion


de los niveles de privilegio en los accesos, de la proteccion de la memoria y
de la paginacion de la memoria virtual. Puede direccionar hasta 4Gbytes de
memoria fsica y hasta 4 Pbytes de memoria virtual con tama
no de pagina de
4 Kb y tama
no de segmento de 256 Mb.
3.2.6.

Unidad de Memoria

Esta unidad amortigua las transferencias de datos entre la memoria y la


cache contiene: Cola de escritura de 3 entradas y Cola de lectura de 2 entradas(Ver figura 4). Cada una de estas entradas es capaz de acoger 8 palabras
consecutivas (un sector cache).

Figura 4: Unidad de Memoria

3.2.7.

Memoria Cach
e

La memoria cache cuenta con un Cache de 32 Kbytes y cuenta con datos y


codigo separados. Tiene 8 paginas con 64 lneas cada una. Presenta 4 bits de
estado, de los cuales varios son de control de sustitucion y un etiquetador de
direcciones.

Figura 5: Memoria Cache

10

3.2.8.

Sumario de Registros

La arquitectura PowerPC define operaciones registro a registro para todas


las instrucciones computacionales. Los datos fuente para estas instrucciones
son accedidos desde los registros que se encuentran dentro del chip o son provistos como valores inmediatos incrustados en los codigos de operacion. El
formato de instrucciones de tres registros permite la especificacion de un registro objetivo distinto a los otros dos registros fuente, asi se mantienen los datos
originales para que sean usados por otra instruccion y se reduce el n
umero
de instrucciones requeridas para ciertas operaciones. Los datos son transferidos entre la memoria y los registros solo mediante instrucciones de carga y
almacenamiento explicitas.

Figura 6: Esquema de Registros de un procesador PowerPC

La imagen (ver figura 6) muestra la representacion grafica de todo el conjunto de registros PowerPC. El n
umero a la derecha de los registros indica el
n
umero que es usado en la sintaxis del operando de la instruccion para acce11

der al registro, por ejemplo el numero usado para acceder al registro XER es
SPR1.
Muchos de las instrucciones SPR pueden ser accedidas solo por instrucciones de nivel de Supervisor; cualquier intento de acceder estas instrucciones con
un nivel de usuario resulta en una anomala de nivel de Supervisor. Algunas
SPRs son implementaciones especficas. En algunos casos, no todos los bits
registrados son implementados en el hardware.
Cuando un microprocesador PowerPC detecta una codificacion de un SPR
que no este definida, este puede o bien tomarlo como una anomala en el
programa (si el bit 0 de la codificacion SPR esta definida) o puede tratar la
instruccion como una no operaciones ( si el bit 0 de la codificacion SPR no
esta definida).
Cabe recalcar que los registros de proposito general (GPRs), registro de
enlace (LR), registro de conteo (CTR), registro de estado de maquina (MSR),
registro de direccion de datos (DAR), SDR1, registros de guardado y restauracion 0 y 1 (SRR0 y SRR1), SPRG1-SPRG3 , y el registro de punto de interrupcion de direccion de datos (DABR) son de 64 bits de amplitud en sistemas
de 64 bits y 32 bits de amplitud en sistemas de 32 bits.
A continuacion se describen algunos de los registros encontrados en la arquitectura PowerPC
Registros de Prop
osito General (GPR): Los datos enteros son manipulados en los 32 Registros de proposito general mostrados en la siguiente figura
(Ver figura 7 ). Estos registros son de 64 bits de ancho en sistemas de 64 bits
y de 32 bits en sistemas de 32 bits. Los registros de proposito general son
accedidos como registros fuente y de destino en la sintaxis de las instrucciones.

Figura 7: Registros de Proposito General

Registros de Punto Flotante (FPR): La arquitectura PowerPC esta provista de 32 registros de punto flotante de 64 bits cada uno, como se muestra
en la figura(ver fig.5). Estos registros son accedidos como registros fuente y de
destino para instrucciones de punto flotante. Cada registro de punto flotante
tiene respaldo para el formato de doble precision de punto flotante. Cada instruccion que interpreta el contenido de un registro de punto flotante como un

12

valor de punto flotante usa el formato de doble precision de punto flotante


para dicha interpretacion.
Todas las instrucciones aritmeticas de punto flotante operan en los datos
localizados en los registros y, con la excepcion de las instrucciones de comparacion, colocan el resultado en un registro de punto flotante. La informacion
acerca del estado de las operaciones de punto flotante es colocada en un registro de Estado y Control de Punto Flotante (FPSCR)y en algunos casos, en un
registro de conteo (CR)despues de completada la ejecucion de la instruccion.
Las instrucciones aritmeticas de punto flotante producen resultados intermedios que pueden ser considerados como infinitamente precisos. Despues de
la normalizacion o desnormalizacion, si la precision del resultado intermedio
no puede ser representado en el formato destinado (precision simple o doble),
se redondea a la precision especificada antes de ser colocada en el registro de
punto flotante objetivo. El resultado final entonces se coloca en un registro de
punto flotante en formato de doble precision.

Figura 8: Registros de Punto Flotante

Registro XER Registro de interrupcion de enteros. El registro XER se


muestra a continuacion:

Figura 9: Registro XER

La siguiente tabla contiene informacion acerca de la asignacion de bits:


Registro de Estado y Control de Punto Flotante (FPSCR): El registro de Estado y Control de Punto Flotante contiene bits para realizar las
siguientes tareas:
Graba anomalas generadas por las operaciones de punto flotante.
Graba el tipo de resultado producido por una operacion de punto flotante.
13

Bits
0

Nombre
SO

OV

CA

Descripci
on
Summary Overflow(Resumen de desbordamiento).
El bit SO se establece cuando una instruccion establece el bit de desbordamiento.
Overflow(Desbordamiento).El bot OV se establece
para indicar que un desbordamiento ha ocurrido
durante la ejecucion de una instruccion.
Carry(Acarreo).El bit de acarreo se establece durante la ejecucion de las siguientes instrucciones:
Sumar con acarreo, restar del acarreo sumar
extendido, y restar de instrucciones extendidas establecen el bit CA si hay un acarreo
fuera del bit mas significativo o liberandolo
si es de otra manera.
Cambio en instrucciones algebraicas establecen el bit CA si algun bit ha sido desplazado
de un oeprando negativo, de otra forma lo
libera.

324
2531

Contador
de Byte

Reservado
Este campo especifica el n
umero de bytes a ser
transferidos por una instruccion LSWX o STSWX

Cuadro 1: Definiciones de bits del registro XER


Controla el modo de redondeo utilizado por las operaciones de punto
flotante.
Habilita o deshabilita el reporte de anomalas (invocando el controlador
de excepciones).
Los bits desde el 0 hasta el 23 son bits de estado. Los bits 24 hasta el 31
son bits de control. Los bits de estado en el FPSCR se actualizan cuando se
completa la ejecucion de la instruccion.

14

Resumen de Registros: La siguiente tabla muestra un resumen de los


registros de la arquitectura PowerPC:
Registro
Registro de Condiciones (CR)
Registro de Enlace (LR)
Registro de Conteo (CTR)
Registros de proposito general 00-31 (GPR)
Registro de Interrupcion de Enteros(XER)
Registros de Punto Flotante 00-31 (FPR)
Registro de Estado y Control de punto flotante(FPSCR)

Bits disponibles
0-31
0-31
0-31
0-31 para cada registro
0-31
0-63 para cada registro
0-31

Cuadro 2: Resumen de registros en la arquitectura PowerPC

Instrucciones Simplificadas en la arquitectura PowerPC: Las siguientes tablas muestran las instrucciones usadas en la arquitectura PowerPC, estas
instrucciones son para implementaciones de 64 bits:
Instrucci
on
add
addc
adde
addi
addic
addic.
addis
addme
addze
and
andc
andi.
andis.

Nemotecnia
add / add. / addo / addo.
addc / addc. / addco /addco.
adde / adde. / addeo /addeo.
addi / li / la / subi
addic / subic
addic. / subic.

Descripci
on
Sumar
Sumar carry
Sumar extendido

Sumar principal
Sumar carry principal
Sumar carry principal y grabar
addis / lis / subis
Sumar desplazamiento principal
addme / addme. / addmeo Sumar a menos uno exten/ addmeo.
dido
addze / addze. / addzeo / Sumar a cero extendido
addzeo.
and / and.
AND
andc / andc.
AND con complemento
andi.
AND principal
andis.
AND desplazamiento principal

Cuadro 3: Instrucciones en la arquitectura PowerPC para implementaciones


de 64 bits

15

Instrucci
on
b
bc
bcctr
bclr
cmp
cmpi
cmpl
cmpli
cntlzw
crand
crandc
creqv
crnand
crnor
cror
crorc
crxor
divw
divwu
eqv
extsb
extsh
lbz
lbzu
lbzux
lbzx
lha
lhau

Nemotecnia
b / ba / bl / bla
bc /bca / bcl bcla
bcctr / bcctrl

Descripci
on
Salto
Salto condicional
Salto condicional al registro
de conteo
bclr / bclrl
Salto condicional al registro
de enlace
cmp / cmpw
Comparar
cmpi / cmpwi
Comparar principal
cmpl / cmplw
Comparar logico
cmpli / cmplwi
Comparar logico principal
cntlzw / cntlzw.
Contar palabra con ceros a
la izquierda
crand
Condicionar registro AND
crandc
Condicionar registro AND
con complemento
creqv / crset
Condicionar registro equivalente
crnand
Condicionar registro NAND
crnor / crnot
Condicionar registro NOR
cror / crmove
Condicionar registro OR
crorc
Condicionar registro OR
con complemento
crxor / crclr
Condicionar registro XOR
divw / divw. / divwo / div- Dividir palabra
wo.
divwu / divwu. / divwuo / Dividir palabra sin signo
divwuo.
eqv / eqv.
Equivalente
extsb / extsb.
Extender byte de signo
extsh / extsh.
Extender signo de media palabra
lbz
Cargar byte y cero
lbzu
Cargar byte y cero con actualizacion
lbzux
Cargar byte y cero con actualizacion indexada
lbzx
Cargar byte y cero indexados
lha
Cargar media palabra algebraica
lhau
Cargar media palabra algebraica con actualizacion

Cuadro 4: Instrucciones en la arquitectura PowerPC para implementaciones


de 64 bits
16

Instrucci
on
lhaux

lhax
lhbrx
lhz
lhzu
lhzux
lhzx
lmw
lswi
lswx
lwbrx
lwz
lwzu
lwzux
lwzx
mcrf
mcrxr
mfcr
mfspr
mftb
mtcrf
mtspr
mulhw

Nemotecnia
lhaux

Descripci
on
Cargar media palabra algebraica con actualizacion indexada
lhax
Cargar media palabra algebraica indexada
lhbrx
Cargar media palabra indexada con byte invertido
lhz
Cargar media palabra y cero
lhzu
Cargar media palabra y cero
con actualizacion
lhzux
Cargar media palabra y cero
con actualizacion indexada
lhzx
Cargar media palabra y cero
indexado
lmw
Cargar m
ultiple palabra
lswi
Cargar cadena de palabra
principal
lswx
Cargar cadena de palabra
indexada
lwbrx
Cargar palabra indexada
con byte invertido
lwz
Cargar palabra y cero
lwzu
Cargar palabra y cero con
actualizacion
lwzux
Cargar palabra y cero con
actualizacion indexada
lwzx
Cargar palabra y cero indexado
mcrf
Mover campo de registro de
condicion
mcrxr
Mover hacia registro de condicion desde XER
mfcr
Mover desde registro de
condicion
mfspr / mfxer / mflr / mfctr Mover desde registro de
proposito especial
mftb
Mover desde base de tiempo
mtcrf
Mover hacia campos de registro de condicion
mtspr / mtxer / mtlr / mt- Mover hacia registro de
ctr
proposito especial
mulhw / mulhw.
Multiplicar palabra alta

Cuadro 5: Instrucciones en la arquitectura PowerPC para implementaciones


de 64 bits
17

Instrucci
on
mulhwu

Nemotecnia
mulhwu / mulhwu.

mulli
mullw

mulli
mullw / mullw. / mullwo /
mullwo.
nand / nand.
neg / neg. / nego / nego.
nor /nor.
or / or.
orc / orc.
ori
oris
rlwimi / rlwimi. / inslwi /
insrwi

nand
neg
nor
or
orc
ori
oris
rlwimi

rlwinm

rlwnm
slw
sraw
srawi
srw
stb
stbu
stbux
stbx
sth

Descripci
on
Multiplicar palabra alta sin
signo
Multiplicar principal bajo
Multiplicar palabra baja

NAND
Negacion
NOR
OR
OR con complemento
OR principal
OR principal desplazado
Rotar palabra principal hacia la izquierda luego la
mascara insertada
rlwinm / rlwinm. / extlwi / Rotar palabra principal haextrwi rotlwi / rotrwi / sl- cia la izquierda luego AND
wi / srwi / clrlwi / clrrwi / con mascara
clrlslwi
rlwnm / rlwnm. / rotlw
Rotar palabra de la izquierda luego AND con mascara
slw / slw.
Cambiar palabra hacia la izquierda
sraw /sraw.
Cambiar palabra algebraica
hacia la derecha
srawi / srawi.
Cambiar palabra algebraica
principal hacia la derecha
srw / srw.
Cambiar palabra hacia derecha
stb
Almacenar byte
stbu
Almacenar byte con actualizacion
stbux
Almacenar byte con actualizacion indexado
stbx
Almacenar byte indexado
sth
Almacenar media palabra

Cuadro 6: Instrucciones en la arquitectura PowerPC para implementaciones


de 64 bits

18

Instrucci
on
sthbrx

sthu
sthux
sthx
stmw
stswi
stswx
stw
stwbrx
stwu
stwux
stwx
subf
subfc
subfe
subfic
subfme
subfze
xor
xori
xoris

Nemotecnia
sthbrx

Descripci
on
Almacenar media palabra
indexada como byte invertido
sthu
Almacenar media palabra
con actualizacion
sthux
Almacenar media palabra
con actualizacion indexada
sthx
Almacenar media palabra
indexada
stmw
Almacenar m
ultiple palabra
stswi
Almacenar cadena de palabra principal
stswx
Almacenar cadena de palabra indexada
stw
Almacenar palabra
stwbrx
Almacenar palabra indexada como byte invertido
stwu
Almacenar palabra con actualizacion
stwux
Almacenar palabra con actualizacion indexada
stwx
Almacenar palabra indexada
subf / subf. / subfo / subfo. Sustraer de
/ sub
subfc / subfc. / subfco / Sustraer de carry
subfco. / subc
subfe / subfe. / subfeo. / Sustraer de extendido
subfeo.
subfic
Sustraer de carry principal
subfme / subfme. / subfmeo Sustraer de menos uno ex/ subfmeo.
tendido
subfze / subfze. / subfzeo / Sustraer de cero extendido
subfzeo.
xor / xor.
XOR
xori
XOR principal
xoris
XOR desplazado principal

Cuadro 7: Instrucciones en la arquitectura PowerPC para implementaciones


de 64 bits

19

Podemos apreciar en la siguiente imagen el Die shot del microprocesador


de la serie PowerPC970X: El PowerPC 970 o tambien llamado G5 es un micro-

Figura 10: Dieshot de un microprocesador PowerPC 970

procesador de alto rendimiento con arquitectura RISC de 64 bits, pertenece a


la familia PowerPC. Fue dise
nado y fabricado por IBM en 2002.
Es una implementacion 64 bits de la arquitectura PowerPC. Eso signifique
que puede ejecutar operaciones sobre datos de tama
no de 64 bits. Tambien
puede trabajar sobre datos de 32 bits (double word), 16 bits(word), 8 bits
(word).
Puede ejecutar las instrucciones sobre datos 32 bits, y mas importante,
sobre direcciones memoria de 32 bits, medida que se tomo por prevencion a
problemas de compatibilidad en arquitecturas anteriores como el PowerPC 32.
Como el soporte el juego de instrucciones de la arquitectura PowerPC, el tiene
un tama
no de palabra de 32 bits.

20

4.

CONCLUSIONES

El gran inconveniente de las arquitecturas de 32 bits es que solo dejan


direccionar 4GB de memoria RAM, por lo que limitan enormemente las capacidades de los ordenadores. Con 64 bits, nos vamos a 16 exabytes (16 millones
de terabytes o 16.000 GB).
Desde luego, esta cantidad es mas que suficiente para mucho tiempo, especialmente si tenemos en cuenta que seg
un algunos estudios, Internet actualmente tiene un tama
no aproximado de 500 exabytes.
As pues, desde el punto de vista del direccionamiento de la memoria RAM
(principal limitacion de la arquitectura), no resulta necesario ampliar esta cantidad. Ahora bien, si tratamos el tema desde el punto de vista del tama
no de los
registros, as como del tama
no de las direcciones de memoria, la cosa cambia.
Muchas aplicaciones, en particular las que se refieren a la criptografa,
hacen uso de enteros de 128 bits, por lo que trabajar de forma nativa con
este tama
no de registros implica un notable incremento en el rendimiento de
algunas aplicaciones.
PowerPC fue una de las tantas innovaciones de las arquitecturas de computadoras por cubrir la necesidad de pasar de los 32 bits a los 64 bits. Sin embargo,
las arquitecturas de 64 bits de PowerPC terminando siendo tan potentes que
incluso pudo realizar calculos con n
umeros de 128 bits en su unidad de coma
flotante, simulando as una arquitectura de 128 bits. Gracias a esto empresas como IBM y Apple han invertido mucho en el desarrollo de procesadores
con esta arquitectura, y como resultado tenemos hoy en da microprocesadores
muy potentes como el PowerPC 970 tambien conocido como G5.

21

5.

BIBLIOGRAFIA

1. ARM: The architecture of the digital worldPagina de la comunidad.


2. Rich Miller (2010). Digital Universe nears a Zettabyte.
3. PowerPC Microprocessor Family: The Programmers Reference Guide
Gua de refencia para programadores de PowerPC
4. Ficha de datos (Datasheet) del microprocesador PowerPC 970
5. PowerPC User Instruction Set Architecture
6. Jonathan Bartlett. Assembly language for power architecture
7. David Benham and Yu-Chung Chen. The IBM PowerPC 970fx

22

Potrebbero piacerti anche