Sunteți pe pagina 1din 6

MIPS (procesador)

Con el nombre de MIPS (siglas de Microprocessor without Interlocked Pipeline


Stages) se conoce a toda una 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 CE; routers
Cisco; y videoconsolas como la Nintendo 64 o las Sony PlayStation, PlayStation
2 y PlayStation Portable.

Las primeras arquitecturas MIPS fueron implementadas 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 compresin Thumb 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.

Familia de CPU's
El primer modelo de CPU comercial de MIPS, el R2000, fue anunciado en 1985.
Aada instrucciones multiciclo para la multiplicacin y la divisin en una
unidad independiente integrada en el procesador. Asimismo se aadieron

instrucciones para enviar los resultados de esta unidad al ncleo; las cuales
necesitaban bloqueos.
El R2000 poda ser iniciado tanto en formato big-endian como little-endian.
Tena 32 registros de propsito general de 32 bits, pero no contaba con un
registro de estado, lo que supona un considerable cuello de botella. Este
problema lo comparta con el AMD 29000 y el DEC Alpha. Al contrario que otros
registros, el contador de programa no es directamente accesible.El R2000
adems soportaba hasta cuatro co-procesadores, uno de los cuales estaba
integrado en la CPU principal para el manejo de excepciones e interrupciones,
mientras que los otros tres estaban destinados a otros usos. Una opcin era
aadir la unidad de punto flotante R2010, que contaba con 32 registros de 32
bits que podan ser empleados como tales para manejar nmeros en simple
precisin o bien como 16 registros de 64 bits en doble precisin.
El R3000 sucedera al R2000 en 1988, aadiendo una cach de 32 kB (pronto
aumentada a 64 kB) para instrucciones y datos, junto con el soporte de
"coherencia cach" para el uso multiprocesador. Mientras hubo defectos en el
soporte multiprocesador del R3000, MIPS se las sigui arreglando para que
formase parte de varios diseos exitosos de multiprocesador. El R3000 tambin
inclua una unidad de manejo de memoria (MMU) integrada, caracterstica
comn entre los procesadores del momento. El R3000 fue el primer diseo
exitoso de MIPS en el mercado, y finalmente fueron fabricadas ms de 1 milln
de unidades. El R3000A, utilizado en la extremadamente exitosa Sony
PlayStation, fue una versin acelerada hasta los 40 MHz. Al igual que el R2000,
el R3000 fue emparejado con la FPU R3010. Pacemips fabric el R3400 e IDT el
R3500, siendo ambos modelos procesadores R3000s con la FPU R3010 en un
nico chip. El Toshiba R3900 fue el primer sistema de chip nico para los
primeros ordenadores de mano con Windows CE.
En la serie R4000, presentada en 1991, se extendi el juego de instrucciones
del MIPS para constituir una autntica arquitectura de 64 bits y se movi la FPU
al mismo circuito para crear un sistema de chip nico, operando a una
velocidad de reloj radicalmente superior (inicialmente 100 MHz). Sin embargo,
para poder alcanzar tal frecuencia las cachs fueron reducidas a 8 kB cada
una, siendo necesarios tres ciclos de reloj para acceder a ellas. Las altas
frecuencias de trabajo fueron alcanzadas gracias a la tcnica de segmentacin
profunda (llamada entonces super-segmentacin). Tras el R4000 naci un gran
nmero de versiones mejoradas, incluyendo la R4400 de 1993 con cachs de
16 kB, operaciones de 64 bits sin apenas errores y un controlador para otra
cach externa (L2) de 1 MB.
MIPS, actualmente una divisin de SGI llamada MTI, dise la versin de bajo
coste R4200, y posteriormente la an ms barata R4300, consistente en un

R4200 con bus externo de 32 bits. La Nintendo 64 usa una CPU NEC VR4300
basada en el MIPS de bajo coste R4300i.1
Quantum Effect Devices (QED), una compaa aparte fundada por antiguos
ingenieros de MIPS, disearon el R4600 "Orion", el R4700 "Orion", el R4650 y el
R5000. Mientras que el R4000 aument la frecuencia a cambio de reducir
capacidad de cach, los diseos de QED destacaron por las grandes cachs
accesibles en slo dos ciclos de reloj y por el uso eficiente del rea de silicio.
Los R4600 y R4700 fueron utilizados en las versiones de bajo coste de las
estaciones de trabajo SGI Indy as como en los primeros routers Cisco basados
en el MIPS, aquellos de las series 36x0 y 7x00. El R4650 fue empleado en los
aparatos originales de WebTV (ahora Microsoft TV). La FPU R5000 trabajaba de
forma ms eficiente y flexible con nmeros en simple precisin que la R4000, y
como resultado, con similar hardware grfico, las SGI Indy que montaban la
FPU R5000 ofrecan mucho mejor rendimiento grfico que las que contaban con
la R4400. SGI rebautiz a las viejas tarjetas grficas que incorporaron la R5000
para remarcar la mejora. QED posteriormente dise las familias RM7000 y
RM9000 para sistemas embebidos como redes e impresoras lser. QED fue
adquirida por el fabricante de semiconductores PMC-Sierra en agosto de 2000,
siendo sta la ltima compaa en invertir en la arquitectura MIPS.
El R8000 (1994) fue el primer diseo MIPS superescalar, capaz de ejecutar dos
operaciones de ALU y otras dos de memoria en cada ciclo de reloj. El diseo se
plasm en seis chips: una unidad entera (con dos cachs de 16 KB, una para
instrucciones y otra L1 de datos), una unidad de punto flotante, tres RAM de
cach secundaria totalmente personalizables (dos para accesos a cach
secundaria y otra para bus), y un controlador de cach ASIC. El diseo tena
dos unidades segmentadas de suma-multiplicacin en doble precisin, las
cuales reciban el flujo de datos de la cach secundaria externa de 4 MB. El
R8000 fue montado en los servidores SGI Power Challenge a mediados de los
90 y posteriormente en las estaciones de trabajo Power Indigo2. Su
rendimiento limitado en operaciones enteras y su elevado coste lo hicieron
impopular entre la mayora de los usuarios, si bien el buen rendimiento de su
FPU fue aprovechado por los usuarios cientficos; el R8000 estuvo apenas un
ao en el mercado.
En 1995, fue lanzado el R10000. Este procesador era un diseo de chip nico,
con mayor velocidad de reloj que el R8000, y mayores cachs primarias de 32
kB para instrucciones y datos. Era tambin superescalar, pero su gran
innovacin fue ser "out-of-order". An con una FPU ms simple, la vasta mejora
en las operaciones con enteros, su menor precio y la mayor densidad hicieron
del R10000 el preferido por muchos clientes.
Los diseos ms recientes se basan en el R10000. El R12000 ha sido fabricado
con tecnologa mejorada para comprimir el chip y operar a mayor velocidad de

reloj. La revisin R14000 permita mayores frecuencias, soporte adicional para


DDR SRAM en el chip externo de cach y un FSB de 200 MHz para un mejor
transferencia. Las ltimas versiones fueron llamadas R16000 y R16000A,
caracterizndose por una mayor velocidad de reloj, cach L1 adicional y chips
de menor tamao en comparacin con los anteriores.
Especificaciones del microprocesador MIPS
Mod Frecue A Proc Transist
elo
ncia
o
eso ores
[MHz]
[m] [millone
s]

Tama
o
del
chip
[mm
]

Pi Poten Volt Dcac Icac Scac


ns cia
aje he
he he
E/ [W]
[k]
[k] [k]
S

R200
8-16.7
0

19
85

2.0

0.11

--

--

--

--

32

64

none

R300
12-40
0

19
88

1.2

0.11

66.12

14
4
5

--

64

64

none

R400
100
0

19
91

0.8

1.35

213

17
15
9

1024

R440 1000
250

19
92

0.6

2.3

186

17
15
9

16

16

1024

R460 1000
133

19
94

0.64

2.2

77

17
4.6
9

16

16

512

R500 1500
200

19
96

0.35

3.7

84

22
10
3

3.3

32

32

1024

R800
75-90
0

19
94

0.5

2.6

299

59
30
1

3.3

16

16

1024

R100 15000
250

19
95

0.35

6.8

299

59
30
9

3.3

32

32

512

R120 27000
400

19
98

0.18
6.9
0.25

204

60
20
0

32

32

1024

R140 50000
600

20
01

0.13

204

52
17
7

--

32

32

2048

7.2

R160 70000
800

20
02

0.11

--

--

--

20

--

64

64

4096

Aplicaciones
Entre los fabricantes de estaciones de trabajo basadas en procesadores MIPS
destacan SGI, MIPS Computer Systems, Inc., Olivetti, Siemens-Nixdorf, Acer,
Digital Equipment Corporation, NEC y DeskStation. Varios sistemas operativos
fueron portados a la arquitectura, ejemplos de ello son el SGI IRIX, Microsoft
Windows NT (aunque el soporte para MIPS finaliz con el lanzamiento de
Windows NT 4.0) y Windows CE, Linux, BSD, UNIX System V, SINIX, MIPS
Computer Systems RISC/os, entre otros.
Sin embargo, el uso del MIPS como procesador principal de estaciones de
trabajo ha cado, y SGI ha anunciado sus planes de cesar el desarrollo de
iteraciones de alto rendimiento de la arquitectura MIPS en favor de
procesadores basados en la tecnologa Intel IA64 (vase la seccin "Otros
modelos y planes futuros").
Por otra parte, el uso de microprocesadores MIPS en sistemas embebidos es
probable que se mantenga gracias al bajo consumo de energa y caractersticas
trmicas de las implementaciones integradas, as como a la gran disponibilidad
de herramientas de desarrollo y de expertos conocedores de la arquitectura.

Otros modelos y planes futuros


Otro miembro de la familia MIPS es el R6000, una implementacin ECL de la
arquitectura MIPS fabricada por Bipolar Integrated Technology. El R6000
introdujo el juego de instrucciones MIPS II. Su arquitectura TLB y de cach son
diferentes del resto de miembros de la familia MIPS. El R6000 no proporcion
los resultados esperados, y aunque fue empleado en algunas mquinas Control
Data, rpidamente desapareci del mercado de los mainstream. El PMC-Sierra
RM7000 fue una versin del R5000 con una cach integrada de nivel 2 de 256
kB y un controlador para una cach opcional de tercer nivel. Diseado en un
principio para sistemas embebidos como los procesadores grficos SGI y varias
soluciones de redes de Cisco. El nombre R9000 nunca fue utilizado.
SGI intent una vez migrar de la plataforma MIPS a la Intel Itanium, habiendo
terminado su desarrollo con el R10000. Los grandes retrasos en la presentacin
del Itanium hicieron que el nmero de procesadores basados en MIPS
instalados continu creciendo. En 1999 qued claro que el proceso de
desarrollo haba sido cerrado demasiado pronto, y resultado de ello son las
versiones R14000 y R16000. SGI tante la posibilidad de aadir una FPU ms
compleja al estilo de la del R8000 en las ltimas iteraciones, as como la de

lanzar un procesador de doble ncleo, pero los problemas financieros de la


empresa y el uso oficial y soportado de la emulacin QuickTransit para ejecutar
binarios IRIX sobre Altix provocaron el cese definitivo del desarrollo de
hardware IRIX/MIPS.

Ncleos
En los ltimos aos gran parte de la tecnologa empleada en las distintas
generaciones MIPS ha sido ofrecida como diseos de "IP-cores" (bloques de
construccin) para sistemas embebidos. Se ofertan los ncleos bsicos de 32 y
64 bits, conocidos respectivamente como 4K y 5K respectivamente, y con
licencias MIPS32 y MIPS64. Estos ncleos pueden ser combinados con unidades
aadidas tales como FPUs, sistemas SIMD, dispositivos de E/S, etc.
Los ncleos MIPS han sido comercialmente exitosos, siendo empleados
actualmente en muchas aplicaciones industriales y de consumo. Pueden
encontrarse en los ms modernos routers Cisco, TP-Link y Linksys ,
cablemdems y mdems ADSL, tarjetas inteligentes, controladoras de
impresoras lser, decodificadores de TV, robots, ordenadores de mano, Sony
PlayStation 2 y Sony PlayStation Portable.
En mviles y PDA's, sin embargo, el ncleo MIPS fue incapaz de desbancar a su
competidor de arquitectura ARM.

Programacin y emulacin
Existe un simulador MIPS R2000/R3000 totalmente libre llamado SPIM
compatible con varios sistemas operativos (especficamente Unix o GNU/Linux;
Mac OS X; MS Windows 95, 98, NT, 2000, XP y DOS) ideado para el aprendizaje
de la programacin en ensamblador MIPS y de los conceptos generales del
ensamblador RISC: http://www.cs.wisc.edu/~larus/spim.html
Un emulador MIPS ms completo pertenece al proyecto GXemul (anteriormente
conocido como Proyecto mips64emul), el cual no slo emula las diferentes
versiones de los microprocesadores MIPS III y superiores (desde el R4000 al
R10000), sino tambin sistemas enteros que utilicen esos procesadores. Por
ejemplo, GXemul puede emular tanto una DECstation con un procesador MIPS
R4400 (y arrancar en Ultrix) como un SGI O2 con CPU MIPS R10000 (si bien la
capacidad de correr Irix es limitada), entre otros, as como tambin diferentes
framebuffers y controladoras SCSI.
El software QEMU es capaz de emular tambin, entre muchas otras, la
arquitectura MIPS y MIPSel, as como ejecutar GNU/Linux en la mquina
emulada.

S-ar putea să vă placă și