Microprocesador Segmentado

Get Started. It's Free
or sign up with your email address
Rocket clouds
Microprocesador Segmentado by Mind Map: Microprocesador Segmentado

1. M

2. Conceptos básicos de segmentación

2.1. Técnica para el aumento de prestaciones

2.2. Ejecutando una única instrucción

2.2.1. Hardware desaprovechado

2.3. Diferentes instrucciones usar diferentes recursos

3. Paralelismo

3.1. Tipos de paralelismo (única CPU)

3.1.1. Segmentación

3.2. Paralelismo explícito (varias CPU)

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

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

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

4. Tipos de procesadores

4.1. Procesadores secuenciales

4.1.1. Procesador monocilo

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

4.1.1.2. CPI = 1

4.1.2. Procesador multiciclo

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

4.1.2.2. CPI> 1

4.2. Procesadores segmentados

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

4.2.2. Paralelismo a nivel de instrucción

4.2.3. CPI = 1

4.2.4. Periodo del reloj = Etapa más lenta

5. Estructuras segmentadas

5.1. Arquitecturas paralelas

5.1.1. Varias operaciones se ejecutan de forma simultánea

5.1.2. HW si está replicado

5.2. Pipelining

5.2.1. Varias etapas distintas especializadas

5.2.2. HW no está replicado

6. Segmentación

6.1. Problemas

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

6.1.2. Acceso B. Registro en las etapas DYW

6.1.3. Cambio PC en las instrucciones de salto

6.2. Soluciones

6.2.1. Memoria de datos e instrucciones separadas

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

6.2.3. Multiplexor en la estapa F

6.2.4. Restador en la etapa X

6.2.5. Registros de segmentación

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

7. Unidad de Control

7.1. Etapa D

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

7.2. Señales de control

7.2.1. Se propaga por los registros de segmentación

7.3. Circuito combinacional

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

7.4. Dimensionar los registros de segmentación

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

7.4.2. M => Branch, MemRead y MemWrite

7.4.3. W => MemToReg y RegWrite

8. Rendimiento del Procesador Segmentado

8.1. Productividad aumenta

8.1.1. CPI = Monociclo

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

8.2.1. Periodo del reloj = Multiciclo

8.3. Speedup

8.3.1. S = tmulticiclo / tsegmentado

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

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

9. Riesgos de Procesadores Segmentados

9.1. Riesgos estructurales

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

9.1.2. Resolución de parones estructurales

9.1.2.1. Duplicar recursos de Hardware

9.1.2.1.1. Memoria

9.1.2.1.2. Separar memoria de instrucciones y datos

9.1.2.2. Banco de registros

9.1.2.2.1. Turnos para leer y escribir

9.2. Riesgos de datos

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

9.2.1.1. Obtención de resultados erróneos

9.2.2. Tipos de dependencias:

9.2.2.1. RAW, Read After Write

9.2.2.2. WAR, Write After Read

9.2.2.3. WAW, Write After Write

9.2.3. Solución software

9.2.3.1. Prevención

9.2.3.1.1. Solución del software responsabilidad del compilador

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

9.2.4. Mecanismo de hardware

9.2.4.1. Detener el pipeline

9.2.4.1.1. Hardware adicional

9.2.4.2. Anticipación, data fordwarding

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

9.3. Riesgos de control

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

9.3.2. Soluciones

9.3.2.1. Hardware adicional

9.3.2.2. Predicción de salto estática

9.3.2.2.1. No tomado

9.3.2.2.2. Tomado

9.3.2.3. Software (Compilador)

10. Excepciones

10.1. Métodos utilizados

10.1.1. Registro de excepción

10.1.2. Vector de interrupciones

10.2. Adaptación de la ruta de datos:

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

10.2.2. CauseRegister, causa de la excepción

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

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