Descargar la presentación
La descarga está en progreso. Por favor, espere
1
Pipelining Datapath y control
2
Pipelined Datapath El datapath de la CPU secuencial se puede reusar.
Se separa en 5 partes: IF – instruction fetch. ID – instruction decode and register file read. EX – execution or address calculation. MEM – data memory access. WB – write back. Universidad de Sonora Arquitectura de Computadoras
3
Pipelined Datapath Fuente: COD 5, p. 287 Universidad de Sonora
Arquitectura de Computadoras
4
Pipelined Datapath Las instrucciones y los datos se mueven de izquierda a derecha. Dos excepciones: Etapa WB – el resultado se escribe en el banco de registros. La selección del siguiente valor del PC. PC + 4 (no hubo brinco). PC + offset (si hubo brinco) Universidad de Sonora Arquitectura de Computadoras
5
Pipelined Datapath Se colocan registros entre cada etapa.
Sirven para pasar valores de una etapa a otra. Hay 4 registros: IF/ID. ID/EX. EX/MEM. MEM/WB. Universidad de Sonora Arquitectura de Computadoras
6
Pipelined Datapath Fuente: COD 5, p. 296. Universidad de Sonora
Arquitectura de Computadoras
7
Ejemplo Mostrar como avanza una instrucción lw en el datapath.
Imágenes del COD 5, p. 291 – 293. Universidad de Sonora Arquitectura de Computadoras
8
Etapa 1 IF – instruction fetch.
Se lee la instrucción de la memoria usando el PC. PC se incrementa en 4 y se pasa el mux del PC. Se guarda la instrucción y el PC incrementado en el registro IF/ID. Universidad de Sonora Arquitectura de Computadoras
9
Ejemplo Etapa 1 Universidad de Sonora Arquitectura de Computadoras
10
Etapa 2 ID – instruction decode and register file read.
Se lee el registro base en el banco de registros. Se obtiene el offset (dos bytes más bajos de la instrucción). Se extiende el offset a 4 bytes (32 bits) usando el extensor de signo. Se guarda el PC, el registro base y el offset extendido en el registro ID/EX. Universidad de Sonora Arquitectura de Computadoras
11
Ejemplo Etapa 2 Universidad de Sonora Arquitectura de Computadoras
12
Etapa 3 EX – execute or address calculation.
La ALU suma el registro base más el offset. Se guarda el resultado en el registro EX/MEM. Notar que las demás partes del registro EX/MEM almacenan datos que no se van a usar. Universidad de Sonora Arquitectura de Computadoras
13
Ejemplo Etapa 3 Universidad de Sonora Arquitectura de Computadoras
14
Etapa 4 MEM – memory access.
Se lee la memoria de datos en la dirección registro base + offset. Se guarda el resultado en el registro MEM/WB. Universidad de Sonora Arquitectura de Computadoras
15
Ejemplo Etapa 4 Universidad de Sonora Arquitectura de Computadoras
16
Etapa 5 WB – write back. Lee el dato del registro MEM/WB y lo guarda en el banco de registros. Universidad de Sonora Arquitectura de Computadoras
17
Ejemplo Etapa 5 Universidad de Sonora Arquitectura de Computadoras
18
Conclusión Partes del datapath usadas por lw (COD 5, p. 297).
Universidad de Sonora Arquitectura de Computadoras
19
Otro ejemplo Mostrar como avanza una instrucción sw en el datapath.
Imágenes del COD 5, p. 294 – 295. La etapa IF es igual que para lw. La etapa ID es casi igual que para lw. La diferencia es que sw tiene que leer dos registros: el registro fuente y el registro base. sw $r1, offset($r2) Los valores de r1 y r2 se leen en el banco de registros. Universidad de Sonora Arquitectura de Computadoras
20
Etapa 3 EX – execute or address calculation.
Parecida a lw: la ALU suma el registro base más el offset. La diferencia es que es que hay que guardar registro fuente en el registro EX/MEM. Universidad de Sonora Arquitectura de Computadoras
21
Otro ejemplo Etapa 3 Universidad de Sonora
Arquitectura de Computadoras
22
Etapa 4 MEM – memory access.
El valor del registro fuente se escribe en la memoria de datos en la dirección registro base + offset. Universidad de Sonora Arquitectura de Computadoras
23
Otro ejemplo Etapa 4 Universidad de Sonora
Arquitectura de Computadoras
24
Etapa 5 WB – write back. El store no hace nada. Universidad de Sonora
Arquitectura de Computadoras
25
Otro ejemplo Etapa 5 Universidad de Sonora
Arquitectura de Computadoras
26
Representaciones gráficas
Hay dos estilos de dibujos de pipelines: Diagramas de pipeline de ciclos de reloj múltiple. Diagramas de pipeline de ciclos de reloj único. Universidad de Sonora Arquitectura de Computadoras
27
Ejemplo Considerar el siguiente código: lw $10 20($1) sub $11 $2 $3
add $12 $4 $13 24($1) $14 $5 $6 Universidad de Sonora Arquitectura de Computadoras
28
Ciclo múltiple moderno
Fuente COD 5, p. 298 Universidad de Sonora Arquitectura de Computadoras
29
Ciclo múltiple tradicional
Fuente: COD 5, p. 299 Universidad de Sonora Arquitectura de Computadoras
30
Ciclo único Fuente: COD 5, p. 299 Universidad de Sonora
Arquitectura de Computadoras
31
Pipelined Control Las señales de control son las mismas que las de la CPU secuencial. Ahora se agrupan según la etapa del pipeline. Las primeras dos etapas, IF e ID, no tienen señales de control. Se necesitan pasar las señales entre etapas. Los registros del pipeline se extienden para incluir esa información. Universidad de Sonora Arquitectura de Computadoras
32
Pipelined Datapath Fuente: COD 5, p. 301 Universidad de Sonora
Arquitectura de Computadoras
33
Tabla de control de la ALU
Fuente: COD 5, p. 301 Universidad de Sonora Arquitectura de Computadoras
34
Efecto de las señales Fuente: COD 5, p. 302 Universidad de Sonora
Arquitectura de Computadoras
35
Señales de control por etapa
Fuente: COD 5, p. 302 Universidad de Sonora Arquitectura de Computadoras
36
Líneas de control Fuente: COD 5, p. 303 Universidad de Sonora
Arquitectura de Computadoras
37
Pipelined datapath con control
Fuente: COD 5, p. 304 Universidad de Sonora Arquitectura de Computadoras
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.