Post on 22-Apr-2015
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
11
PIPELINING - DATAPATHPIPELINING - DATAPATH
Definciónes básicasDefinciónes básicas
Ejemplos prácticosEjemplos prácticos
Ejemplos sobre un procesadorEjemplos sobre un procesador
Tiempo entre instruccionesTiempo entre instrucciones
Pipeline HazardPipeline Hazard
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
22
SINGLE –CYCLE DATAPATHSINGLE –CYCLE DATAPATH
Figure 6.9 The single-cycle datapath from chapter 5 (similar to figure 5.17 on page 307). Computer Organization and Design. David A Paterson
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
33
PIPELINED EXECUTIONPIPELINED EXECUTION
Figure 6.10 Instruction being executed using the single cycle datapath in figure 6.9 . Computer Organization and Design. David A Paterson
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
44
THE PIPELINED VERSIONTHE PIPELINED VERSION
Figure 6.11 The Pipelined version of the datapath in figure 6.9. Computer Organization and Design. David A Paterson
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
55
EJEMPLOEJEMPLO
EL siguiente ejemplo sigue el proceso EL siguiente ejemplo sigue el proceso de pipelining para una instrucción de pipelining para una instrucción LOADLOAD
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
66
INSTRUCTION FETCHINSTRUCTION FETCH
La instrucción es leida de memoria, La instrucción es leida de memoria, de la dirección apuntada por PCde la dirección apuntada por PC
La instrucción es almacenada en el La instrucción es almacenada en el IF/ID pipelined register.IF/ID pipelined register.
PC=PC+4.PC=PC+4.
Aquí no se sabe que instrucción se va Aquí no se sabe que instrucción se va a ejecutar.a ejecutar.
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
77
FETCHFETCH
Figure 6.12 IF and ID: first and secod stages of an instruction. David A Paterson
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
88
INSTRUCTION DECODE AND INSTRUCTION DECODE AND REGISTER FILE READREGISTER FILE READ
Se obtieneSe obtiene– 16 bit inmediate field, que es el dato de 16 bit inmediate field, que es el dato de
entrada para sign-extend (32 bit)entrada para sign-extend (32 bit)– Dirección (número) de registro a ser Dirección (número) de registro a ser
leído.leído.– Todos los valores se almacenan en ID/Ex Todos los valores se almacenan en ID/Ex
pipeline registerpipeline register
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
99
INSTRUCTION DECODE –INSTRUCTION DECODE –REGISTER FILE READREGISTER FILE READ
Figure 6.12 IF and ID: first and secod stages of an instruction. David A Paterson
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
1010
EXECUTE OR ADDRESS EXECUTE OR ADDRESS CALCULATIONCALCULATION
Para el ejemplo se muestra que la Para el ejemplo se muestra que la instrucción LOAD toma:instrucción LOAD toma:
El contenido del register 1 y del sign El contenido del register 1 y del sign extend y los asigna a la ALU.extend y los asigna a la ALU.
El resultado es almacenado en El resultado es almacenado en EX/MEN pipeline registerEX/MEN pipeline register
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
1111
EXECUTIONEXECUTION
Figure 6.13 EX: the third pipe stage of a load instruction. David A Paterson
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
1212
MEMORY ACCESSMEMORY ACCESS
Se lee el dato de la memoria Se lee el dato de la memoria empleando la dirección almacenada empleando la dirección almacenada en EX/MEM pipeline register.en EX/MEM pipeline register.
Se almacena en el MEM/WB pipeline Se almacena en el MEM/WB pipeline register.register.
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
1313
MEMORY ACCESSMEMORY ACCESS
Figure 6.14MEM and WB: the fourth and fith pipe stages of a load instruction. David A Paterson
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
1414
WRITE BACKWRITE BACK
Se lee el valor del dato del registro Se lee el valor del dato del registro MEM/WB pipeline registerMEM/WB pipeline register
Se almacena en el register fileSe almacena en el register file
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
1515
WRITE BACKWRITE BACK
Figure 6.14 MEM and WB: the fourth and fith pipe stages of a load instruction. David A Paterson
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
1616
EJEMPLO PARA UNA EJEMPLO PARA UNA INSTRUCCIÓN STOREINSTRUCCIÓN STORE
EXECUTE: Para una instrucción STORE debe dejar pasar en la ALU read register 2MEMORY ACCESS: Se realiza memory writeWRITE BACK: en una instruction STORE en este estado no sucede nada
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
1717
EXECUTION STAGEEXECUTION STAGE
Figure 6.15 EX: the third pipe stage of a store instruction. David A Paterson
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
1818
MEMORY ACCESSMEMORY ACCESS
Figure 6.16 MEM AND WB: the fourth and fifth pipe stage os a store instruction. David A Paterson
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
1919
DIAGRAMA COMPLETODIAGRAMA COMPLETO
Figure 6.17 The corrected pipelined datapath to properly handle the load instrction. David A Paterson
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
2020
MULTICYCLE MULTICYCLE
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
2121
EJEMPLOSEJEMPLOS
ARQUITECTURA DE COMPUTADORES - PIPARQUITECTURA DE COMPUTADORES - PIPELININGELINING
2222