Documentos de Académico
Documentos de Profesional
Documentos de Cultura
$zero (0)
contiene un cero
$at (1)
implementacin de macro-instrucciones
$v0, $v1(2-3)
Resultados subrutinas
$a0-$a3 (4-7)
Parmetros subrutinas
$s0-$s7 (16-23)
variables de large duracin
$k0-k1 (26-27)
Reservados para rutinas de atencin de excepciones
$gp (28)
Puntero de acceso al rea de datos
$sp (29)
stack pointer
$fp (30)
puntero marco
$ra (31)
direccin de retorno de las subrutinas
Big Endian
Flip Flopped
lw Rt, offset(Rs)
La instruccin carga una copia del contenido de la memoria
en dicha direccin efectiva en el registro Rt. En caso de que
la direccin efectiva no sea mltiplo de 4 se genera una
excepcin de error de direccin.
sw Rt, offset(Rs)
La instruccion almacena el contenido de Rt en la direccio n
Direccionamiento en MIPS
Direccionamientos Inmediato
El operando est presente en la propia instruccin. En MIPS
se emplea con instrucciones especiales y el operando
siempre debe ser un entero de 16 bits.
Direccionamientos Registro
El cdigo de la instruccin hace referencia a un registro que
es donde se encuentra el operando. En MIPS es la forma
habitual que emplean la mayora de las instrucciones.
Direccionamientos de ms desplazamiento
La instruccin referencia un registro que contiene una
direccin de memoria (directo n
base)y un desplazamiento
constante (entero de 16 bits) que se suma a la direccin para
obtener la direccin efectiva. En MIPS es el nico modo
vlido para los accesos a memoria.
UN P OC O D E H ISTOR IA
El microprocesador MIPS fue desarrollado como parte de una investigacin en VLSI en la Universidad de
Stanford, a principios de los aos 80. El profesor John Hennessy empez el desarrollo del MIPS con una
"tormenta de ideas" realizada por alumnos y finalmente fue uno de los primeros procesadores RISC
producidos comercialmente. Su desarrollo se realiz en paralelo al de los diseos de Berkeley e IBM.
GE N ER AL ID AD ES
Tambin tiene 32 registros para coma flotante (F0,.F31) que pueden almacenar nmeros en
precisin simple o doble.
Soporta tipos enteros de 8, 16, 32 y 64 bits y tipos en coma flotante de 32 y 64 bits. Tambin
permite trabajar con nmeros en coma flotante de precisin simple empaquetados de dos en dos.
Permite nicamente
desplazamiento.
dos
modos
de
direccionamiento:
el
inmediato
el
indirecto
con
El direccionamiento de los saltos es relativo al PC. Es decir, para especificar la direccin destino de
un salto se da un offset que sumado al PC permite calcular esta direccin.
Su repertorio de instrucciones consiste en aproximadamente 111 instrucciones, cada una de las cuales se
codifica con 32 bits (codificacin de longitud fija). A continuacin se proporciona un ejemplo de instruccin:
Figura
1:
Ejemplo
de
instruccin
del
procesador
MIPS.
Esta instruccin le indica al procesador que debe calcular la suma de los valores contenidos en los registros 7
y 8, y que debe guardar el resultado de la suma en el registro 12 (hay que recordar que el MIPS es una
arquitectura basada en registros de propsito general). La representacin en binario coloreada representa
los 6 campos de una instruccin de tipo Add en el MIPS. El procesador identifica el tipo de instruccin
mediante los dgitos binarios correspondientes a los campos primero y ltimo. En este caso concreto, el
procesador reconoce que la instruccin es una suma mediante el 0 en su primer campo, y el 20 en su ltimo
campo. Los operandos estn representados en los campos azul y amarillo, y el resultado deseado se
presenta en el cuarto campo (color morado). El campo naranja representa un valor que no se utiliza en este
caso concreto, el campo Shift Amount.
Aunque todas las instrucciones del repertorio se codifican con 32 bits, existen tres formatos de instruccin
diferentes en el MIPS64:
Instrucciones tipo I:
Se trata de instrucciones que necesitan incorporar un operando inmediato, es decir, aritmtico-lgicas,
direccionamientos a memoria y saltos.
Campos de la instruccin:
Instrucciones tipo R:
Este tipo de instrucciones es el usado en las operaciones ALU registro - registro.
Campos de la instruccin:
trata.
Instrucciones tipo J:
Por ltimo, este es el tipo usado en las operaciones de salto incondicional.
Campos de la instruccin:
Figura
1:
Formato
de
Instrucciones
del
microprocesador
MIPS
Reference (en
ingls)
Se trata de una descripcin del conjunto de instrucciones MIPS: sus significados, sintaxis, semntica, y
codificacin
de
bits.
Microelectronics
Universidad de Idaho.
RISC
Research
and
Architecture:
Communications
MIPS (en
Institute.
ingls)
Pgina creada por Crystal Chen, Greg Novick y Kirk Shimano para acompaar a una presentacin sobre
las arquitecturas RISC realizada en la asignatura The Intellectual Excitement of Computer Science.
Stanford Computer Science Education -- CSE.
https://www.youtube.com/watch?v=ijqSJUkAx44