Segmentación

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Rocket clouds
Segmentación por Mind Map: Segmentación

1. Introducción

1.1. Paralelismo

1.1.1. Arquitecturas de Von Neuman tienen limitaciones

1.1.2. Alternativas utilizan unidades de procesamiento

1.1.3. Tipos Paralelismo:

1.1.3.1. Interno (única CPU)

1.1.3.2. Explícito (varias CPU)

1.1.3.2.1. SIMD

1.1.3.2.2. MISD

1.1.3.2.3. MIMD

2. Estructuras Segmentadas

2.1. Tipos de Procesadores

2.1.1. Secuenciaes

2.1.1.1. Monociclo

2.1.1.2. Multiciclo

2.1.2. Segmentados

2.1.2.1. Paralelismo a nivel de instrucción

2.1.2.2. Incoporan Pipelining

2.2. Encauzamiento

2.2.1. Técnica para generación de paralelismo implícito

2.2.2. Pipeline: dividir una función en subfunciones

2.2.3. Similar a una cadena de montaje.

2.3. Pipelining vs Paralelismo

2.3.1. Técincas orientadas a mejorar rendimiento.

2.3.2. Pipelining: hardware no está replicado.

2.3.3. Arquitecturas Paralelas: hrdware sí está replicado,

3. Concepto de Segmentación

3.1. Conceptos Básicos

3.1.1. Deseable CPI=1

3.1.2. Con una instrucción a la vez, hardware está desaprovechado

3.1.3. Comenzar una nueva instrucción en cada ciclo

3.1.4. Diferentes instrucciones tienen que usar diferentes recursos en cada etapa.

3.1.5. Problemas

3.1.5.1. Acceso a memoria en etapas F y M

3.1.5.2. Acceso a Banco de reginstros en etapas D y W

3.1.5.3. PC cambia en F pero se pueden modificar en M

3.1.6. Soluciones

3.1.6.1. Separar memoria instrucciones y datos.

3.1.6.2. Escritura de registros en la primera mitad de ciclo, lectura en la segunda.

3.1.6.3. Multiplexor etapa F

3.1.6.4. Restador etapa X

3.1.6.5. Registros de segmentación

3.2. Rendimiento Procesador Segmentado

3.2.1. Productividad aumenta

3.2.2. Tiempo de ejecución de una única instrucción empeora.

3.2.3. Speedup máximo al segmentar el procesador multiciclo.

4. Ralentización del Pipeline

4.1. Juego de Instrucciones

4.1.1. Todas las instrucciones tienen misma longitud,

4.1.2. Mips tiene pocos formatos de instrucciones.

4.1.3. Operandos en memoria solo existen en instrucciones.

4.1.4. Oerandos alineados en memoria.

4.2. Riesgos en Procesodores Segmentados

4.2.1. Estructurales

4.2.1.1. Dos o más instrucciones necesitan utilizar el mismo resurso hardware al mismo tiempo

4.2.1.2. Resolución de Patrones Estructurales

4.2.1.2.1. Duplicar los recursos de Hardware

4.2.1.2.2. Seprara memorias de instrucciones y datos.

4.2.1.2.3. Banco de Registros

4.2.2. De Datos

4.2.2.1. Dos o más instrucciones presentan dependecias entre sí.

4.2.2.1.1. Tipos

4.2.2.1.2. Solución

4.2.3. De control

4.2.3.1. Una instrucción que modifica el valor del PC aun no lo hace cuando se tiene que comenzar la ejecución de la siguiente instrucción.

4.2.3.2. Soluciones

4.2.3.2.1. Hardware adicional (se incluye en la etapa D)

4.2.3.2.2. Predicción de Salto Estática

4.2.3.2.3. Software (compilador)

5. Tratamineto de Excepciones

5.1. En el nanoMIPS segmentado

5.1.1. Métodos utilizados

5.1.1.1. Registro de excepción

5.1.1.2. Vector de interrupciones

5.1.2. Otro tipo de Riesgo.

5.1.3. Se debe adaptar la Ruta de Datos para soportar excepciones.

5.2. SSOO y Hardware

5.2.1. Hardware

5.2.1.1. detener instrucción que provocó el fallo.

5.2.1.2. Completar instrucciones anteriores

5.2.1.3. Vaciar el pipeline

5.2.1.4. Guardar la causa de la instrucción

5.2.1.5. Salvar la direccion de la instrucción del fallo

5.2.1.6. Saltar a una dirección predeterminada.

5.2.2. Sistema Operativo

5.2.2.1. El sistema operativo mata el proceso en una excepción

5.2.2.2. Si es una petición de E/S, el sistema Operativo salva el estado del programa-