Descargar la presentación
La descarga está en progreso. Por favor, espere
1
PIPELINING - INTRODUCCION
Definciónes básicas Ejemplos prácticos Ejemplos sobre un procesador Tiempo entre instrucciones Pipeline Hazard ARQUITECTURA DE COMPUTADORES - PIPELINING
2
ARQUITECTURA DE COMPUTADORES - 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. ARQUITECTURA DE COMPUTADORES - PIPELINING
3
ARQUITECTURA DE COMPUTADORES - PIPELINING
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 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. ARQUITECTURA DE COMPUTADORES - PIPELINING
5
EJEMPLO – SIN PIPELINING
Source ARQUITECTURA DE COMPUTADORES - PIPELINING
6
EJEMPLO – CON PIPELINING
Source ARQUITECTURA DE COMPUTADORES - PIPELINING
7
ARQUITECTURA DE COMPUTADORES - PIPELINING
Figure PIPELINING.4: A single-cycle processor Autor: Jon Stokes ARQUITECTURA DE COMPUTADORES - PIPELINING
8
Figure PIPELINING.5: A four-stage pipeline
Autor: Jon Stokes ARQUITECTURA DE COMPUTADORES - PIPELINING
9
EJEMPLO EN EL PROCESADOR
Figura 6.3 Single-cycle, nonpipelined execution in top versus pipelined execution in botton ARQUITECTURA DE COMPUTADORES - PIPELINING
10
Time betwen instructions pipelined
Time betweb instructions pipelined= (Time betweb instructions nonpipelined) / Number of pipe stages ARQUITECTURA DE COMPUTADORES - PIPELINING
11
ARQUITECTURA DE COMPUTADORES - PIPELINING
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 ARQUITECTURA DE COMPUTADORES - PIPELINING
12
ARQUITECTURA DE COMPUTADORES - PIPELINING
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 ARQUITECTURA DE COMPUTADORES - PIPELINING
13
ARQUITECTURA DE COMPUTADORES - PIPELINING
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 ARQUITECTURA DE COMPUTADORES - PIPELINING
14
ARQUITECTURA DE COMPUTADORES - PIPELINING
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 ARQUITECTURA DE COMPUTADORES - PIPELINING
15
DATA HAZARD: EJEMPLO FORWARDING O BYPASSING
Figure 6.5: Graphical representation of forwarding. Computer Organization and Design. David A Paterson ARQUITECTURA DE COMPUTADORES - PIPELINING
16
DATA HAZARD :EJEMPLO FORWARDING O BYPASSING AND STALL
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 ARQUITECTURA DE COMPUTADORES - PIPELINING
17
ARQUITECTURA DE COMPUTADORES - PIPELINING
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 ARQUITECTURA DE COMPUTADORES - PIPELINING
18
ARQUITECTURA DE COMPUTADORES - PIPELINING
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 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 ARQUITECTURA DE COMPUTADORES - PIPELINING
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.