7
Arquitectura e Ingeniería de Computadores Tema 2: Procesadores Segmentados 1 Planificación Dinámica Algoritmo de Tomasulo. Ejemplo Estado de las instrucciones Instrucción Emisión Ejecución Escritura resultado ldf f6, (100) ldf f2, (120) mulf f0, f2, f4 subf f8, f6, f2 divf f10, f0, f6 addf f6, f8, f2 Estaciones de reserva Nombre Ocupada Op Vj Vk Qj Qk Add1 subf Load1 Load2 Add2 No Add3 No Mul1 mulf (f4) Load2 Mul2 No Div1 divf Mul1 Load1 Estado de los registros Campo f0 f2 f4 f6 f8 f10 f12 Qi Mul1 Load2 Load1 Add1 Div1 Ocupado No No (x) representa el resultado de la unidad x o el contenido del registro x.

Tema 2. Tomasulo

Embed Size (px)

Citation preview

Page 1: Tema 2. Tomasulo

Arquitectura e Ingeniería de ComputadoresTema 2: Procesadores Segmentados 1

Planificación Dinámica

Algoritmo de Tomasulo. EjemploEstado de las instrucciones

Instrucción Emisión Ejecución Escritura resultadoldf f6, (100) ldf f2, (120) mulf f0, f2, f4 subf f8, f6, f2 divf f10, f0, f6 addf f6, f8, f2

Estaciones de reservaNombre Ocupada Op Vj Vk Qj Qk

Add1 Sí subf Load1 Load2Add2 NoAdd3 NoMul1 Sí mulf (f4) Load2Mul2 NoDiv1 Sí divf Mul1 Load1

Estado de los registrosCampo f0 f2 f4 f6 f8 f10 f12

Qi Mul1 Load2 Load1 Add1 Div1Ocupado Sí Sí No Sí Sí Sí No

(x) representa el resultado de la unidad x o el contenido del registro x.

Page 2: Tema 2. Tomasulo

Arquitectura e Ingeniería de ComputadoresTema 2: Procesadores Segmentados 2

Planificación Dinámica

Algoritmo de Tomasulo. EjemploEstado de las instrucciones

Instrucción Emisión Ejecución Escritura resultadoldf f6, (100) ldf f2, (120) mulf f0, f2, f4 subf f8, f6, f2 divf f10, f0, f6 addf f6, f8, f2

Estaciones de reservaNombre Ocupada Op Vj Vk Qj Qk

Add1 Sí subf Load1 Load2Add2 Sí addf Add1 Load2Add3 NoMul1 Sí mulf (f4) Load2Mul2 NoDiv1 Sí divf Mul1 Load1

Estado de los registrosCampo f0 f2 f4 f6 f8 f10 f12

Qi Mul1 Load2 Add2 Add1 Div1Ocupado Sí Sí No Sí Sí Sí No

(x) representa el resultado de la unidad x o el contenido del registro x.

Page 3: Tema 2. Tomasulo

Arquitectura e Ingeniería de ComputadoresTema 2: Procesadores Segmentados 3

Planificación Dinámica

Algoritmo de Tomasulo. EjemploEstado de las instrucciones

Instrucción Emisión Ejecución Escritura resultadoldf f6, (100) ldf f2, (120) mulf f0, f2, f4 subf f8, f6, f2 divf f10, f0, f6 addf f6, f8, f2

Estaciones de reservaNombre Ocupada Op Vj Vk Qj Qk

Add1 Sí subf (Load1) Load2Add2 Sí addf Add1 Load2Add3 NoMul1 Sí mulf (f4) Load2Mul2 NoDiv1 Sí divf (Load1) Mul1

Estado de los registrosCampo f0 f2 f4 f6 f8 f10 f12

Qi Mul1 Load2 Add2 Add1 Div1Ocupado Sí Sí No Sí Sí Sí No

(x) representa el resultado de la unidad x o el contenido del registro x.

Page 4: Tema 2. Tomasulo

Arquitectura e Ingeniería de ComputadoresTema 2: Procesadores Segmentados 4

Planificación Dinámica

Algoritmo de Tomasulo. Ejemplo (cont.)Estado de las instrucciones

Instrucción Emisión Ejecución Escritura resultadoldf f6, (100) ldf f2, (120) mulf f0, f2, f4 subf f8, f6, f2 divf f10, f0, f6 addf f6, f8, f2

Estaciones de reservaNombre Ocupada Op Vj Vk Qj Qk

Add1 Sí subf (Load1) (Load2)Add2 Sí addf (Load2) Add1Add3 NoMul1 Sí mulf (Load2) (f4)Mul2 NoDiv1 Sí divf (Load1) Mul1

Estado de los registrosCampo f0 f2 f4 f6 f8 f10 f12

Qi Mul1 Add2 Add1 Div1Ocupado Sí No No Sí Sí Sí No

Al completarse el segundo ldf puede comenzar la ejecución de mulf y subf que son independientes entre sí.

Page 5: Tema 2. Tomasulo

Arquitectura e Ingeniería de ComputadoresTema 2: Procesadores Segmentados 5

Planificación Dinámica

Algoritmo de Tomasulo. Ejemplo (cont.)Estado de las instrucciones

Instrucción Emisión Ejecución Escritura resultadoldf f6, (100) ldf f2, (120) mulf f0, f2, f4 subf f8, f6, f2 divf f10, f0, f6 addf f6, f8, f2

Estaciones de reservaNombre Ocupada Op Vj Vk Qj Qk

Add1 NoAdd2 Sí addf (Add1) (Load2)Add3 NoMul1 Sí mulf (Load2) (f4)Mul2 NoDiv1 Sí divf (Load1) Mul1

Estado de los registrosCampo f0 f2 f4 f6 f8 f10 f12

Qi Mul1 Add2 Div1Ocupado Sí No No No No Sí No

Si subf acaba antes que mulf, puede comenzar la ejecución de addf (adelantando a divf).

Page 6: Tema 2. Tomasulo

Arquitectura e Ingeniería de ComputadoresTema 2: Procesadores Segmentados 6

Planificación Dinámica

Algoritmo de Tomasulo. Ejemplo (cont.)Estado de las instrucciones

Instrucción Emisión Ejecución Escritura resultadoldf f6, (100) ldf f2, (120) mulf f0, f2, f4 subf f8, f6, f2 divf f10, f0, f6 addf f6, f8, f2

Estaciones de reservaNombre Ocupada Op Vj Vk Qj Qk

Add1 NoAdd2 NoAdd3 NoMul1 Sí mulf (Load2) (f4)Mul2 NoDiv1 Sí divf (Load1) Mul1

Estado de los registrosCampo f0 f2 f4 f6 f8 f10 f12

Qi Mul1 Div1Ocupado Sí No No No No Sí No

El resultado de addf no afecta a divf (riesgo WAR) porque este mantiene el dato del primer ldf en la estación de reserva.

Page 7: Tema 2. Tomasulo

Arquitectura e Ingeniería de ComputadoresTema 2: Procesadores Segmentados 7

Planificación Dinámica

Algoritmo de Tomasulo. Ejemplo (cont.)Estado de las instrucciones

Instrucción Emisión Ejecución Escritura resultadoldf f6, (100) ldf f2, (120) mulf f0, f2, f4 subf f8, f6, f2 divf f10, f0, f6 addf f6, f8, f2

Estaciones de reservaNombre Ocupada Op Vj Vk Qj Qk

Add1 NoAdd2 NoAdd3 NoMul1 NoMul2 NoDiv1 Sí divf (Mul1) (Load1)

Estado de los registrosCampo f0 f2 f4 f6 f8 f10 f12

Qi Div1Ocupado No No No No No Sí No

El resultado de addf no afecta a divf (riesgo WAR) porque este mantiene el dato del primer ldf en la estación de reserva.