La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 14 La mayor parte del contenido de estas láminas, ha sido extraído del libro Computer Organization and.

Presentaciones similares


Presentación del tema: "ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 14 La mayor parte del contenido de estas láminas, ha sido extraído del libro Computer Organization and."— Transcripción de la presentación:

1 ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 14 La mayor parte del contenido de estas láminas, ha sido extraído del libro Computer Organization and Design (The hardware / software interface), 4ta Edición, de David A. Patterson y John L. Hennessy. Editorial Morgan Kaufmann

2 AGENDA Camino de datos encauzado (Pipelining)

3 Camino de datos de un solo ciclo

4 Implementación de un solo ciclo Es ineficiente EL ciclo de reloj debe durar lo mismo que la instrucción que tarde más. Generalmente, la instrucción load El CPI = 1, pero la duración del ciclo es muy grande ¿Qué ocurre si añadimos instrucciones punto flotante o más complejas a este camino de datos?

5 Pipelining Múltiples instrucciones solapan su ejecución Como en un línea de ensamblaje Analogía de lavar ropa: –Colocar la ropa sucia en la lavadora –Cuando termine, colocar la ropa mojada en la secadora –Cuando termine, colocar la ropa en una mesa y doblarla –Ubicar la ropa en el closet

6 Analogía con lavar la ropa

7 Camino de datos encauzado

8 Implicaciones del pipeline Idealmente: –Tiempo entre instrucciones con pipeline = Tiempo entre instrucciones sin pipeline / # etapas ¿Mejoramos tiempo de ejecución o productividad? Productividad, el tiempo de ejecución probablemente empeore La duración del ciclo de reloj será igual a lo que tarde la etapa más lenta

9 Peligros Estructurales: El hardware no soporta cierta combinación de instrucciones De datos: Una instrucción debe esperar por el resultado de otra add $s0,$t0,$t1 sub $t2,$s0,$t3 Se utiliza hardware extra para pasar el dato (Adelantar: forwarding o bypassing)

10 Peligros De datos (cont.: Pero a veces hace falta introducir una instrucción de detención (stall): Pipeline stall o burbuja

11 Peligros De datos (cont.: También el compilador puede ayudar reordenando el código:

12 Peligros De Control (o Salto): El flujo no es el esperado. 1a solución: Detenernos cuando hagamos fetch de un salto.

13 Peligros De Control (o Salto): 2da solución: Intentar predecir, por ejemplo; nunca se toman los saltos. 3ra solución: “Branch prediction”, tomar el salto algunas veces y otras veces no tomarlo. Por ejemplo, llevando una historia. ¿Qué ocurre si falla la predicción?


Descargar ppt "ARQUITECTURA DE COMPUTADORES Semestre A-2009 Clase 14 La mayor parte del contenido de estas láminas, ha sido extraído del libro Computer Organization and."

Presentaciones similares


Anuncios Google