Microprocesador Segmentado

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

1. M

2. Unidad de Control

2.1. Etapa D

2.1.1. Opcode genera todas las señales de control necesarias

2.2. Señales de control

2.2.1. Se propaga por los registros de segmentación

2.3. Circuito combinacional

2.3.1. Genera las señales de control para cada tipo de instrucción

2.4. Dimensionar los registros de segmentación

2.4.1. X => ALUSrcA, ALUSrcB, ALUOp y RegDst

2.4.2. M => Branch, MemRead y MemWrite

2.4.3. W => MemToReg y RegWrite

3. Rendimiento del Procesador Segmentado

3.1. Productividad aumenta

3.1.1. CPI = Monociclo

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

3.2.1. Periodo del reloj = Multiciclo

3.3. Speedup

3.3.1. S = tmulticiclo / tsegmentado

3.3.2. tmulticiclo = (I*CPI*T)multiciclo

3.3.3. tsegmentado = (I*CPI*T)segmentado

4. Riesgos de Procesadores Segmentados

4.1. Riesgos estructurales

4.1.1. Dos o más instrucciones necesitan usar el mismo recurso de Hardware

4.1.2. Resolución de parones estructurales

4.1.2.1. Duplicar recursos de Hardware

4.1.2.1.1. Memoria

4.1.2.1.2. Separar memoria de instrucciones y datos

4.1.2.2. Banco de registros

4.1.2.2.1. Turnos para leer y escribir

4.2. Riesgos de datos

4.2.1. Dos o más instrucciones presentan dependencias de datos entre sí

4.2.1.1. Obtención de resultados erróneos

4.2.2. Tipos de dependencias:

4.2.2.1. RAW, Read After Write

4.2.2.2. WAR, Write After Read

4.2.2.3. WAW, Write After Write

4.2.3. Solución software

4.2.3.1. Prevención

4.2.3.1.1. Solución del software responsabilidad del compilador

4.2.3.1.2. Retrasar la ejecución de la instrucción

4.2.4. Mecanismo de hardware

4.2.4.1. Detener el pipeline

4.2.4.1.1. Hardware adicional

4.2.4.2. Anticipación, data fordwarding

4.2.4.2.1. Pasar el resultado obtenido de una instrucción a las instrucciones

4.3. Riesgos de control

4.3.1. Error en la modificación del valor del PC

4.3.2. Soluciones

4.3.2.1. Hardware adicional

4.3.2.2. Predicción de salto estática

4.3.2.2.1. No tomado

4.3.2.2.2. Tomado

4.3.2.3. Software (Compilador)

5. Excepciones

5.1. Métodos utilizados

5.1.1. Registro de excepción

5.1.2. Vector de interrupciones

5.2. Adaptación de la ruta de datos:

5.2.1. Señal para seleccionar el nuevo valor del PC

5.2.2. CauseRegister, causa de la excepción

5.2.3. Almacenar la instrucción que provoco el falló EPC

5.3. Trabajo conjunto entre el sistema operativo y el hardware.

6. Conceptos básicos de segmentación

6.1. Técnica para el aumento de prestaciones

6.2. Ejecutando una única instrucción

6.2.1. Hardware desaprovechado

6.3. Diferentes instrucciones usar diferentes recursos

7. Paralelismo

7.1. Tipos de paralelismo (única CPU)

7.1.1. Segmentación

7.2. Paralelismo explícito (varias CPU)

7.2.1. SIMD (Un solo flujo de instrucciones y múltiples datos)

7.2.2. MISD (Varios flujos de instrucciones y uno solo de datos)

7.2.3. MIMD (Varios archivos tanto de instrucciones como de datos)

8. Tipos de procesadores

8.1. Procesadores secuenciales

8.1.1. Procesador monocilo

8.1.1.1. Duración del ciclo = instrucción más lenta

8.1.1.2. CPI = 1

8.1.2. Procesador multiciclo

8.1.2.1. Duración del ciclo = etapa más larga

8.1.2.2. CPI> 1

8.2. Procesadores segmentados

8.2.1. Solapa el tiempo de ejecución de varias instrucciones

8.2.2. Paralelismo a nivel de instrucción

8.2.3. CPI = 1

8.2.4. Periodo del reloj = Etapa más lenta

9. Estructuras segmentadas

9.1. Arquitecturas paralelas

9.1.1. Varias operaciones se ejecutan de forma simultánea

9.1.2. HW si está replicado

9.2. Pipelining

9.2.1. Varias etapas distintas especializadas

9.2.2. HW no está replicado

10. Segmentación

10.1. Problemas

10.1.1. Acceso a la memoria en las etapas F y M

10.1.2. Acceso B. Registro en las etapas DYW

10.1.3. Cambio PC en las instrucciones de salto

10.2. Soluciones

10.2.1. Memoria de datos e instrucciones separadas

10.2.2. Escritura registros la primera mitad del ciclo y lectura en la segunda

10.2.3. Multiplexor en la estapa F

10.2.4. Restador en la etapa X

10.2.5. Registros de segmentación

10.2.5.1. Almacena el resultado de cada etapa al final del ciclo reloj