ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias...

28
ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática de Sistemas

Transcript of ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias...

Page 1: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

ARQUITECTURA MIPS

Arquitectura de Computadoras

Alberto Hernández Cerezo

Rodrigo Alonso Iglesias

Cristian Tejedor García

2º Ingeniería Técnica

Informática de Sistemas

Page 2: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

SUMARIO

1.1. INTRODUCCIÓNINTRODUCCIÓN• Diseño

2.2. HISTORIAHISTORIA• Familia CPUs

MIPS

3.3. ARQUITECTURAARQUITECTURA

4.4. INSTRUCCIONESINSTRUCCIONES

5.5. BIBLIOGRAFÍABIBLIOGRAFÍA

Page 3: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

1. INTRODUCCIÓN

M

IPS (Microprocessor without Interlocked Pipelines Stages)

D

esarrollado por: MIPS Technologies

A

rquitectura: RISC

R

egistros: propósito general de clasificación registro-registro

I

nstrucciones: la mayoría no acceden a memoria. Dos operandos, el fuente y el resultado.

Page 4: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

DISEÑO A

ctualmente utilizado en: Productos SGI (Silicon Graphics International) y sistemas

embebidos. Dispositivos para Windows CE (SO de Microsoft de tiempo real para

dispositivos móviles de 32-bits inteligentes y conectados. Combina la compatibilidad y los ping a servicios de aplicación avanzados de Windows con soporte para múltiples arquitecturas de CPU y opciones incluidas de comunicación y redes para proporcionar una fundación abierta para crear una variedad de productos).

Routers CISCO (CISCO Systems empresa dedicada a la fabricación, venta, mantenimiento y consultoría de equipos de telecomunicaciones).

Videoconsolas (N64 , PSP)

A

l principio utilizados en Workstations (ACER, NEC, Siemens-Nixdorf …)

M

ás tarde utilizado en sistemas embebidos y desarrollo de iteraciones de

alto rendimiento a favor de procesadores basados en la tecnología Intel

IA64.

Page 5: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

D

estaca por: Bajo consumo energético y

gran disponibilidad de herramientas de desarrollo.

Conjunto de instrucciones claras

I

nfluencia en otras arquitecturas de

tipo RISC posteriores: DEC Alpha.

Page 6: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

2. HISTORIA

O

rigen: 1981 Universidad de Stanford.

J

ohn L. Hennessy Idea: mejorar a gran escala el rendimiento de la

máquina a través del uso de la segmentación. Contra: tecnología por entonces de sobra

conocida pero difícil de implementar. Funcionamiento: la ejecución de una instrucción

era dividida en varias etapas. Frecuencia del reloj de toda la CPU venía dictado

por la latencia del ciclo completo.

Page 7: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

O

tro objetivo: subfases de instrucciones.

R

esultado de ello: eliminación de ciertas instrucciones de gran utilidad (multiplicación y

división), pero mayor rendimiento.

F

uerte crítica fallida: ignoración de que la velocidad del diseño residía en la segmentación, no

en las instrucciones.

1

984 Hennessy decide dejar Standford y fundar MIPS Computer Systems.

P

rimer diseño R2000, en 1985. Después el R3000, 1988.

D

ificultades económicas para el lanzamiento del R4000 (64 bits) -> compra de la compañía por

parte de SGI en 1992.

S

e distribuyen licencias a terceros.

Page 8: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

S

istema de licencias de MIPS se consolida en 1999.

L

anzamiento del MIPS32 (32 bits)y el MIPS64 (64 bits).

É

xito de ventas hasta la actualidad.

N

úcleos MIPS son unos de los más importantes en: Ordenadores de mano Decodificadores Sintonizadores de televisión

Page 9: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

R

2000 (1985) instrucciones multiciclo y registros de 32 bits.

R

3000 (1988) caché de 32 Kb posteriormente aumentada a 64 Kb. De esta rama derivan otros

MIPS como el R3400, R3500 o R3900.

R

4000 (1991) 64 bits caché 8 Kb. Derivados de él son el R4400 de 1993, con caches de 16 Kb, y

los diseños de bajo cote R4200 y R4300 entre otros.

E

l R5000 se encuadra junto con el R4700 y el R4650 desarrollados por Quantum Effects

Devices, con diseños de grandes caches solo.

E

l R7000 y R9000, de QED, para sistemas embebidos de tipo redes e impresoras laser.

R

8000 Primer diseño superescalar. Consta de 6 chips (dos caches de 16 KB, una unidad de punto

flotante, tres RAM de caché secundaria personalizable y un controlador de caché ASIC).

R10000 (1995) chip único de mayor velocidad de reloj que su antecesor. Tiene derivados como R12000, R12000A, R14000, R14000A, R16000, R16000A y R18000

FAMILIA CPUS MIPS

Page 10: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.
Page 11: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

3. ARQUITECTURA

Componentes (Modelo R2000)

1.1.ProcesadorProcesador

• (ALU) Unidad Aritmética y Lógica: Unidad Aritmética entera, operaciones de multiplicación y división.

• (FPU)Unidad punto flotante: manejo de memoria caché y virtual.

Basado en una arquitectura tipo Harvard:

Arquitecturas de computadoras que utilizaban dispositivos de

almacenamiento físicamente separados para las instrucciones

y los datos, en oposición clara a la arquitectura de Von

Neumann.

Page 12: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.
Page 13: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

Banco de registros (BR) constituido por:

32 Registros de 32 bits de propósito general para

operaciones con enteros. Se identifican por el

carácter especial $ seguido de un número de 0 a 31.

32 Registros de 32 bits de propósito general,

formato IEEE754 para operaciones en punto flotante

de precisión simple y 16 registros de 64 bits para

operaciones en punto flotante de doble precisión.

Page 14: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.
Page 15: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.
Page 16: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

2 Registros especiales 32 bits: HI y LO: almacenan

los resultados de la multiplicación/división.

Transferencia de datos.

La Unidad Aritmético-Lógica, de 32 bits.

Profundizando, descripción de las conexiones para

una aritmética lógica:

Page 17: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

P

rimera fase: se busca la instrucción, colocando el PC en la entrada

de direcciones de la memoria de instrucciones (MI) la instrucción a

ejecutar, la cual presenta una señal de lectura siempre activa y su

salida será la instrucción. En esta implementación se incrementa

simultáneamente el contenido del PC, aunque no se actualiza.

S

egunda fase: decodificación de la instrucción, encargada de enviar

las señales apropiadas de lectura, escritura y selección a los

elementos que lo precisen, dos operandos en una instrucción

aritmética o lógica y el código de operación y el de control de la

ALU.

Page 18: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

2.2. MemoriaMemoria

a) Word (palabra) contenido de una celda de memoria. Posee palabras de 32 bits, pero también más datos:

a) Bit: 0,1.b) 4 bits – nibble.c) 8 bits -- byte .d) 16 bits -- half-word.e) 32 bits -- word.f) 64 bits -- double-word.g) Character: ASCII Código de 7 bits por símbolo.h) Decimal (BCD): Dígitos de 0-9 codificados

desde 0000 hasta 1001.i) Enteros: 32 bits (sin signo o complemento a

2).j) Reales: 32 bits (precisión simple) o 64 bits

(doble precisión) .

Page 19: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.
Page 20: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

b) Las palabras de 32-bits, bytes y medias-palabras pueden ser cargados en GPRs. Bytes y medias palabras rellenan con 0 o con el bit de signo los 32 bits.

• Unidades de 32 bits pueden ser cargadas en FPRs

• Números reales de 32 bits (precisión simple) se guardan en los FPRs pares

• Los reales de precisión doble (64-bit) se guardan 2 FPRs consecutivos empezando por número par.

Page 21: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

c) Organización de la memoria:

• Dirección física memoria de instrucciones, en modo usuario, empieza en la dirección 0x00400000 y termina en la 0x0FFFFFFF.

• Dirección de la memoria de datos, en modo usuario, empieza en la 0x10000000 y termina en la 0x7FFFFFFF.La memoria accesible por el usuario se encuentra dentro del rango [0x00400000, 0x7FFFFFFF] (tipo RAM).

• La parte de memoria del programa sirve para contener el código de las aplicaciones que se ejecutan.

• Los segmentos de datos estáticos, datos dinámicos y pila contienen los datos que las aplicaciones utilizan en su ejecución.

Page 22: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.
Page 23: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

d) Alineación: MIPS tiene restricciones de acceso a memoria. Utiliza el byte como mínima unidad con dirección: • Las palabras(32-bit) tienen que empezar en una dirección

múltiplo de 4;

una dirección de una palabra 4n incluye 4bytes con direcciones 4n 4n+1,4n+2 y 4n+3.

• Las medias-palabras(16-bit) tienen que empezar en una dirección múltiplo de 2; así una dirección de una palabra 2n incluye 2bytes con direcciones 2n y 2n+1.

• Las direcciones son dadas como un entero de 32 bits sin signo.

Page 24: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

• Dos formas de numerar los bytes contenidos en una palabra:

i. Big endian (IBM, Motorola, MIPS): la dirección del byte más significativo termina en 00 (en binario), sólo si la palabra está alineada.

ii. Little endian (Intel, Dec): la dirección del byte menos significativo termina en 00 (en binario), sólo si la palabra está alineada.

Page 25: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

4. INSTRUCCIONES

Modelo R2000

Permite realizar instrucciones de carga y

almacenamiento desde y hacia memoria.

Tiene capacidad de desarrollar programas que

resuelven problemas aritméticos y lógicos.

Ofrece la posibilidad de controlar el flujo de la

ejecución del programa mediante instrucciones de

comparación y salto.

Salto condicional e incondicional.

Page 26: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

Tipos de instrucciones:1. Instrucciones aritméticas.2. Instrucciones lógicas.3. Instrucciones de salto incondicional.

Mismo tamaño cada una (32 bits).

Clasificar en función de: banco de registros,

memoria de datos, ALU.

Los componentes que utiliza la instrucción se

deben especificar en una serie de bits.

Tipos de instrucciones utilizan diferentes formatos

para codificar sus campos.

Page 27: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

E

n el MIPS R2000, distinguimos:

1. Formato R o de tipo registro.2. Formato I o de tipo inmediato.3. Formato J o de salto incondicional

(jump).

Page 28: ARQUITECTURA MIPS Arquitectura de Computadoras Alberto Hernández Cerezo Rodrigo Alonso Iglesias Cristian Tejedor García 2º Ingeniería Técnica Informática.

5. BIBLIOGRAFÍA

h

ttp://gorrion.die.uchile.cl/~escverano/materialdocente/

2_Diseno_Implementacion_Procesador_MIPS.pdf

h

ttp://profesores.elo.utfsm.cl/~tarredondo/info/comp-architecture/paralelo2/C03_MIPS.pdf

h

ttp://www.cse.ohio-state.edu/~teodores/download/teaching/cse675.au08/CSE675.02_MIPS-

ISA_part1.pdf

h

ttp://es.wikipedia.org/wiki/MIPS_%28procesador%29

f

tp://db.stanford.edu/pub/cstr/reports/csl/tr/86/289/CSL-TR-86-289.pdf