You are on page 1of 10

Sede Castro

MIPS, Microprocesadores de arquitectura RISC

Profesor:
Sr. Luis Vergara Lorca

Armando Nahuelneri Muoz


2016
MIPS (procesador)

Con el nombre de MIPS (Microprocesador without Interlocked Pipeline Stages) se


conoce a toda la familia de Microprocesadores de Arquitectura RISC desarrollados
por MIPS Technologies.
Los diseos del MIPS son utilizados en la lnea de productos informticos de SGI;
en muchos sistemas embebidos; en dispositivos para Windows; routers Cisco;
y videoconsolas como la Nintendo 64 o las Sony PlayStation, PlayStation
2 y PlayStation Portable. Ms recientemente, la NASA us uno de ellos en la
sonda New Horizons1.
Las primeras arquitecturas MIPS fueron fsfs en 32 bits (generalmente rutas de datos
y registros de 32 bits de ancho), si bien versiones posteriores fueron implementadas
en 64 bits. Existen cinco revisiones compatibles hacia atrs del conjunto de
instrucciones del MIPS, llamadas MIPS I, MIPS II, MIPS III, MIPS IV y MIPS 32/64.
En la ltima de ellas, la MIPS 32/64 Release 2, se define a mayores un conjunto de
control de registros. As mismo estn disponibles varias "extensiones", tales como
la MIPS-3D, consistente en un simple conjunto de instrucciones SIMD en coma
flotante dedicadas a tareas 3D comunes, la MDMX(MaDMaX) compuesta por un
conjunto ms extenso de instrucciones SIMD enteras que utilizan los registros de
coma flotante de 64 bits, la MIPS16 que aade compresin al flujo de instrucciones
para hacer que los programas ocupen menos espacio (presuntamente como
respuesta a la tecnologa de compresinThumb de la arquitectura ARM) o la
reciente MIPS MT que aade funcionalidades multithreading similares a la
tecnologa HyperThreading de los procesadores Intel Pentium 4.
Debido a que los diseadores crearon un conjunto de instrucciones tan claro, los
cursos sobre arquitectura de computadores en universidades y escuelas tcnicas a
menudo se basan en la arquitectura MIPS. El diseo de la familia de CPU's MIPS
influira de manera importante en otras arquitecturas RISC posteriores como
los DEC Alpha.
Arquitectura RISC

En la arquitectura computacional, RISC (del ingls reduced instruction set


computer) es un tipo de microprocesador con las siguientes caractersticas
fundamentales:

Instrucciones de tamao fijo y presentadas en un reducido nmero de


formatos.
Slo las instrucciones de carga y almacenamiento acceden a la memoria de
datos.

El objetivo de disear mquinas con esta arquitectura es posibilitar la


segmentacin y el paralelismo en la ejecucin de instrucciones y reducir los
accesos a memoria.

Las mquinas RISC protagonizan la tendencia actual de construccin de


microprocesadores. PowerPC, DEC Alpha, MIPS, ARM, SPARC... son ejemplos
de algunos de ellos.
RISC es una filosofa de diseo de CPU para computadora que est a favor de
conjuntos de instrucciones pequeas y simples que toman menor tiempo para
ejecutarse.

El tipo de procesador ms comnmente utilizado en equipos de escritorio, el x86,


est basado en CISC en lugar de RISC, aunque las versiones ms nuevas
traducen instrucciones basadas en CISC x86 a instrucciones ms simples
basadas en RISC para uso interno antes de su ejecucin.

La idea fue inspirada por el hecho de que muchas de las caractersticas que eran
incluidas en los diseos tradicionales de CPU para aumentar la velocidad estaban
siendo ignoradas por los programas que eran ejecutados en ellas. Adems, la
velocidad del procesador en relacin con la memoria de la computadora que
acceda era cada vez ms alta. Esto con llev la aparicin de numerosas tcnicas
para reducir el procesamiento dentro del CPU, as como de reducir el nmero total
de accesos a memoria.

CARACTERSTICAS

En pocas palabras esto significa que, para cualquier nivel de desempeo dado, un
chip RISC tpicamente tendr menos transistores dedicados a la lgica principal.
Esto permite a los diseadores una flexibilidad considerable; as pueden, por
ejemplo:

Incrementar el tamao del conjunto de registros.


Mayor velocidad en la ejecucin de instrucciones.
Implementar medidas para aumentar el paralelismo interno.
Aadir cachs enormes.
Aadir otras funcionalidades, como E/S y relojes para mini controladores.
Construir los chips en lneas de produccin antiguas que de otra manera no
seran utilizables.
No ampliar las funcionalidades, y por lo tanto ofrecer el chip para
aplicaciones de bajo consumo de energa o de tamao limitado.

Las caractersticas que generalmente son encontradas en los diseos RISC son:

Codificacin uniforme de instrucciones, lo que permite una de


codificacin ms rpida.
Un conjunto de registros homogneo, permitiendo que cualquier registro
sea utilizado en cualquier contexto y as simplificar el diseo del compilador.
Modos de direccionamiento simple con modos ms complejos
reemplazados por secuencias de instrucciones aritmticas simples.
Los tipos de datos soportados en el hardware no se encuentran en una
mquina RISC.
Los diseos RISC tambin prefieren utilizar como caracterstica un modelo
de memoria Harvard, donde los conjuntos de instrucciones y los conjuntos
de datos estn conceptualmente separados.
RISC Moderno

Los diseos RISC han llevado a un gran nmero de plataformas y


arquitecturas al xito, algunas de las ms grandes:

La lnea MIPS Technologies Inc., que se encontraba en la mayora de las


computadoras de Silicon Graphics hasta 2006, y estuvo en las consolas ya
descatalogadas Nintendo 64, PlayStation y PlayStation 2. Actualmente se
utiliza en la PlayStation Portable y algunos routers.
La serie IBM POWER, utilizado principalmente por IBM en Servidores y
superordenadores.
La versin PowerPC de Motorola e IBM (una versin de la serie IBM
POWER) utilizada en los ordenadores AmigaOne, Apple Macintosh como el
iMac, eMac, Power Mac y posteriores (hasta 2006). Actualmente se utiliza
en muchos sistemas empotrados en automviles, routers, etc, as como en
muchas consolas de videojuegos, como la Playstation 3, Xbox 360 y Wii.
El procesador SPARC y UltraSPARC de Sun Microsystems y Fujitsu, que
se encuentra en sus ltimos modelos de servidores (y hasta 2008 tambin
en estaciones de trabajo).
El PA-RISC y el HP/PA de Hewlett-Packard, ya descatalogados.
El DEC Alpha en servidores HP AlphaServer y estaciones de trabajo
AlphaStation, ya descatalogados.
El ARM El paso de hardware de instrucciones x86 en operaciones RISC
llega a ser significativo en el rea y la energa para dispositivos mviles e
integrados. Por lo tanto, los procesadores ARM dominan en PALM,
Nintendo DS, Game Boy Advance y en mltiples PDAs, Apple iPods, Apple
iPhone, iPod Touch (Samsung ARM1176JZF, ARM Cortex-A8, Apple A4),
Apple iPad (Apple A4 ARM -based SoC), videoconsolas como Nintendo DS
(ARM7TDMI, ARM946E-S), Nintendo Game Boy Advance (ARM7TDMI).
El Atmel AVR usado en gran variedad de productos, desde mandos de la
Xbox a los coches de la empresa BMW.
La plataforma SuperH de Hitachi, originalmente usada para las consolas
Sega Super 32X, Saturn y Dreamcast, ahora forman parte de el corazon de
muchos equipos electrnicos para el consumo.SuperH es la plataforma
base de el grupo Mitsubishi - Hitachi. Estos dos grupos, unidos en 2002,
dejaron aparte la propia arquitectura RISC de Mitsubishi, el M32R.
Los procesadores XAP usados en muchos chips wireless de poco consumo
(Bluetooth, wifi) de CSR.

Entre las ventajas de RISC tenemos las siguientes:

La CPU trabaja ms rpido al utilizar menos ciclos de reloj para ejecutar


instrucciones.
Utiliza un sistema de direcciones no destructivas en RAM. Eso significa que
a diferencia de CISC, RISC conserva despus de realizar sus operaciones
en memoria los dos operando y su resultado, reduciendo la ejecucin de
nuevas operaciones.
Cada instruccin puede ser ejecutada en un solo ciclo del CPU

Tipos de Instrucciones MIPS

El conjunto de instrucciones Mips permite realizar operaciones de carga y


almacenamiento desde y hacia memoria, tendr capacidad de desarrollar
programas aritmticos y lgicos y ofrecer la posibilidad de controlar el flujo de la
ejecucin del programa mediante instrucciones de comparacin y salto, tanto
condicionales, como incondicionales.

Instrucciones aritmtico-lgicas
El tipo de formato de las instrucciones aritmticas y lgicas es de tipo R y elnmero
de operandos en una operacin de este tipo es siempre tres. Estos operandos son
siempre registros, el modo de direccionamiento empleado es, por tanto, de registro.
En el ejemplo de la figura se describe en estructura de lenguaje maquina Mips las
operaciones aritmticas de suma y resta.

Instrucciones de transferencia o de carga/almacenamiento


Los operandos para todas las operaciones aritmticas y lgicas se contienen en
registros. Para operar con datos en memoria antes deben haberse metido estos
datos en los registros.
Una operacin de carga (load) copia informacin desde memoria principal a los
registros. Una operacin de almacenamiento (store) copia informacin de un
registro a memoria principal. Las instrucciones de transferencia son instrucciones
de tipo I.
Cuando una palabra (4 bytes) se carga desde memoria en un registro o se pasa a
memoria desde un registro, la direccin de memoria involucrada ha de ser mltiplo
de 4.
En la figura se muestran las estructuras de MIPS para dos ejemplos de operaciones
de transferencia muy comunes, la carga y el almacenamiento de una palabra.

Instrucciones de salto condicional


Lo que distingue a un computador de una simple calculadora es la habilidad de
tomar decisiones. Basndose en los datos de entrada y los valores creados durante
la computacin, el computador ejecuta diferentes instrucciones. La toma de
decisiones se representa comnmente en los lenguajes de programacin usando
la sentencia if (si condicional), combinada a veces con sentencias go to (ir a) y
etiquetas. El lenguaje ensamblador del MIPS incluye dos instrucciones de toma de
decisiones, similares a una sentencia if con ungo to. Estas instrucciones se
muestran en la figura.
La instruccin beq (branch if equal) significa ir a la sentencia etiquetada con L1 si el
valor del registro rs es igual al valor del registro rt. La instruccin bne (branch if nt
equal) significa ir a la sentencia etiquetada con L1 si el valor de rs no es igual al
valor en rt.

Instrucciones de comparacin
Permiten poner a 1 o 0 el valor de un registro en funcin del cumplimiento o no de
una condicin.

Instrucciones de bifurcacin (salto incondicional)


Una bifurcacin se puede ver como un salto incondicional, es decir, la instruccin
obliga a la mquina a seguir siempre el salto. Para distinguir entre saltos
condicionales e incondicionales, el nombre MIPS para este tipo de instruccin
es jump. En la figura se muestra esta instruccin y su formato.
La instruccin de bifurcacin jump es de tipo J y su modo de direccionamiento es
pseudo- directo.

You might also like