La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

ARQUITECTURA DE COMPUTADORES - PIPELINING 1 PIPELINING - INTRODUCCION Definciónes básicas Ejemplos prácticos Ejemplos sobre un procesador Tiempo entre.

Presentaciones similares


Presentación del tema: "ARQUITECTURA DE COMPUTADORES - PIPELINING 1 PIPELINING - INTRODUCCION Definciónes básicas Ejemplos prácticos Ejemplos sobre un procesador Tiempo entre."— Transcripción de la presentación:

1 ARQUITECTURA DE COMPUTADORES - PIPELINING 1 PIPELINING - INTRODUCCION Definciónes básicas Ejemplos prácticos Ejemplos sobre un procesador Tiempo entre instrucciones Pipeline Hazard

2 ARQUITECTURA DE COMPUTADORES - PIPELINING 2 PIPELINING – –Un PIPELINE es una serie de etapas, en donde en cada etapa se realiza una porción de una tarea. La tarea no se termina hasta el momento en que haya pasado a través de todas las etapas. – –Un PIPELINE es usado para mejorar el desempeño mas allá de lo que puede ser alcanzado con un procesamiento sin pipeline.

3 ARQUITECTURA DE COMPUTADORES - PIPELINING 3 PIPELINE - TROOUGHPUT – –Este mecanismo incrementa el throughput -el número de instrucciones completadas por unidad de tiempo. – –No reduce la latencia -el tiempo de ejecución de una solo instrucción

4 ARQUITECTURA DE COMPUTADORES - PIPELINING 4 COMPLEJIDAD DEL HARDWARE Y EL CONTROL A cierto nivel usar Pipelining implica replicación de algunas funciones. Con el propósito de garantizar ejecución simultanea.

5 ARQUITECTURA DE COMPUTADORES - PIPELINING 5 EJEMPLO – SIN PIPELINING Source

6 ARQUITECTURA DE COMPUTADORES - PIPELINING 6 EJEMPLO – CON PIPELINING Source

7 ARQUITECTURA DE COMPUTADORES - PIPELINING 7 Autor: Jon StokesJon Stokes Figure PIPELINING.4: A single-cycle processor

8 ARQUITECTURA DE COMPUTADORES - PIPELINING 8 Figure PIPELINING.5: A four-stage pipeline Autor: Jon StokesJon Stokes Figure PIPELINING.5: A four-stage pipeline

9 ARQUITECTURA DE COMPUTADORES - PIPELINING 9 EJEMPLO EN EL PROCESADOR Figura 6.3 Single-cycle, nonpipelined execution in top versus pipelined execution in botton

10 ARQUITECTURA DE COMPUTADORES - PIPELINING 10 Time betwen instructions pipelined Time betweb instructions pipelined= (Time betweb instructions nonpipelined) / Number of pipe stages (Time betweb instructions nonpipelined) / Number of pipe stages

11 ARQUITECTURA DE COMPUTADORES - PIPELINING 11 DEEP PIPELINING Deep Pipelining hace referencia a la cantidad de estados en los cuales es dividido el proceso. En el caso del procesador estudiado se tienen 5 estado Fetch Read register while decoding instruction Execute the operation or calculate an address Access an operand in data memory Write the result into a register

12 ARQUITECTURA DE COMPUTADORES - PIPELINING 12 PIPELINE HAZARDS STRUCTURAL HAZARD Es cuando el hardware no puede soportar la combinación de instrucciones que se desean ejecutar en el mismo ciclo de reloj. DATA HAZARD Ocurren cuando el pipeline debe detenerse en un paso mientras que se espera que otro se complete CONTROL HAZARD: Ocurren cuando ha necesidad de tomar una dedición basada en el resultado de una instrucción mientras esta se está ejecutando

13 ARQUITECTURA DE COMPUTADORES - PIPELINING 13 STRUCTURAL HAZARD EJEMPLO: Se dispone de un sistema de una sola memoria para programa y datos- Cuando se ejecuta una cuarta instrucción se darían dos accesos a memoria al mismo tiempo

14 ARQUITECTURA DE COMPUTADORES - PIPELINING 14 DATA HAZARD Add $s0, $t0, $t1 Sub $t2, $s0, $t3 Existe una dependencia de la segunda instrucción sobre la primera mientras está en el pipelining

15 ARQUITECTURA DE COMPUTADORES - PIPELINING 15 DATA HAZARD: EJEMPLO Figure 6.5: Graphical representation of forwarding. Computer Organization and Design. David A Paterson FORWARDING O BYPASSING

16 ARQUITECTURA DE COMPUTADORES - PIPELINING 16 DATA HAZARD :EJEMPLO Figure 6.6 We need a stall even with forwarding when an R-format instruction following a load tries to use the data. Computer Organization and Design. David A Paterson FORWARDING O BYPASSING AND STALL

17 ARQUITECTURA DE COMPUTADORES - PIPELINING 17 CONTROL HAZARD Son llamados tambíen branch hazard. Existen dos alternativas –STALL: Después de realizar fetch de una instrucción de salto se hace fetch de la siguiente, pero no se sabe si esta efectivamen va a realizars, de modo que se agrega una burbuja –PREDICT: una aproximación simple es asumir que el salto no va a ser tomado

18 ARQUITECTURA DE COMPUTADORES - PIPELINING 18 CONTROL HAZARD: STALL Figure 6.7: Pipeline shwing stalling on every cibditional branch as solution to control hazard. Computer Organization and Design. David A Paterson

19 ARQUITECTURA DE COMPUTADORES - PIPELINING 19 CONTROL HAZARD : PREDICT Figure 6.8: Predicting thar branches are no taken as a solution to control hazard. Computer Organization and Design. David A Paterson


Descargar ppt "ARQUITECTURA DE COMPUTADORES - PIPELINING 1 PIPELINING - INTRODUCCION Definciónes básicas Ejemplos prácticos Ejemplos sobre un procesador Tiempo entre."

Presentaciones similares


Anuncios Google