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

1. Arquitecturas paralelas

1.1. Paralelismo Interno

1.1.1. 1 solo CPU

1.1.2. Segmentacion

1.2. Paralelismo explicito

1.2.1. Varios CPU

1.2.1.1. SIMD

1.2.1.1.1. 1 flujo intrucciones+ varios de datos

1.2.1.2. MISD

1.2.1.2.1. varios flujo de instrucciones + 1 de datos

1.2.1.3. MIMD

1.2.1.3.1. varios de instrucciones y varios de datos.

2. Tipos de Procesadores

2.1. Procesadores Secuenciales

2.1.1. mientras no termine una no empieza la siguiente instruccion

2.1.1.1. Monociclo

2.1.1.2. Multiciclo

2.2. Procesadores Segmentados

2.2.1. permite solapar el tiempo

2.2.2. Paralelismo a nivel de instruccion

2.3. Encauzamiento

2.3.1. paralelismo implícito en computadores

2.3.2. Pipeline

2.3.2.1. dividir una función en subfunciones independientes

2.3.2.2. Parecido a una cadena de montaje

3. Unidad de Control

3.1. Etapa D

3.1.1. Opcode permite generar todas las señales de control

3.2. Circuito combinacional

3.3. Dimensionar los registros

3.3.1. X

3.3.1.1. ALUSrcA, ALUSrcB, ALUOp y RegDst

3.3.2. M

3.3.2.1. Branch, MemRead y MemWrite

3.3.3. W

3.3.3.1. MemToReg y RegWrite

4. Segmentacions

4.1. Deseable

4.1.1. CPI=1

4.1.2. Periodo de reloj limitado por la etapa más lenta

4.2. aumento de prestaciones

4.3. Segmentar multiciclo

4.3.1. nueva instrucción en cada ciclo

4.4. Soluciones a los problemas

4.4.1. Multiplexor en la etapa F

4.4.2. Restador etapa X

4.4.3. Memoria de instrucciones y datos separada

4.4.4. Registros de segmentación

4.4.5. Escritura en la primera etapa

4.4.6. Lectura en la segunda etapa

5. Rendimiento

5.1. La productividad aumenta

5.2. El tiempo de una instrucción empeora

5.3. Speedup

5.3.1. S = t (multiciclo) / t(segmentado)

6. Riesgos

6.1. Riesgos Estructurales

6.1.1. Dos o más instrucciones utilizan el mismo recurso hardware al mismo tiempo.

6.1.1.1. Solucion

6.1.1.1.1. duplicar los recursos hardware

6.1.1.1.2. Separar entre memorias de instrucciones y datos

6.1.1.1.3. Banco de registros

6.2. Riesgos de Datos

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

6.2.1.1. Pueden dar resultados erróneos.

6.2.2. Tipos de dependencias

6.2.2.1. RAW, Read After Write

6.2.2.2. WAR, Write After Read

6.2.2.3. WAW, Write After Write

6.2.3. Soluciones

6.2.3.1. Software

6.2.3.1.1. Prevencion

6.2.3.2. Hardware

6.2.3.2.1. Detener el pipeline

6.2.3.2.2. Anticipación

6.3. Riesgos de Control

6.3.1. Una instrucción que modifica el valor del PC todavía no lo ha hecho.

6.3.1.1. cuando se tiene que comenzar la ejecución de la siguiente instrucción

6.3.2. Soluciones

6.3.2.1. Hardware adicional

6.3.2.1.1. 3 ciclos de espera

6.3.2.1.2. adelantando la resolución de los saltos

6.3.2.1.3. etapa D

6.3.2.2. Predicción de salto estática

6.3.2.2.1. Tomado

6.3.2.2.2. No tomado

6.3.2.3. Software (compilador)

6.3.2.3.1. Salto retardado o relleno