Download - Anexo Sobre Winmips(Ac6)
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 1/16
Arquitectura de Computadoras2010
Anexo sobre dependencias y el
Simulador winmips64
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 2/162010 Arquitectura de Computadoras 2
Segmentación de cauce
Problemas:•Dependencia de datos (RAW)
•Saltos
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 3/162010 Arquitectura de Computadoras 3
RAW: Read-After-Write• Dependencia de datos (RAW): ej. una
instrucción quiere usar un registro
cuando la instrucción anterior todavíano terminó de almacenar el dato en elregistro. Se logra una mejora usando
forwarding “adelantando” el dato paraque lo use la instrucción posterior.
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 4/162010 Arquitectura de Computadoras 4
Saltos• El problema con los saltos es que la
verificación del salto y el cálculo del destino
del salto se realiza muy “adentro”del pipeline.Se obtiene una mejora adelantando estastareas a la etapa de ID, no antes porquetengo que saber que es un salto.
• Otra mejora: estas tareas se pueden llevar ala etapa IF con BTB (Branch Target Buffer)
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 5/162010 Arquitectura de Computadoras 5
Un ejemplo sin forwarding
Dependencia dedatos. R2
disponible aquí
Se estira la etapa ID(decodificación) hastaque está disponible el
dato en R2
No avanza elpipeline y se
estira la etapaIF
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 6/162010 Arquitectura de Computadoras 6
… con forwarding
R2 disponiblepara
forwarding
Por forwarding sepuede utilizar R2 en
esta etapa
Ver el ej. anterior
hay 2 RAW menos
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 7/162010 Arquitectura de Computadoras 7
Otro ejemplo sin nada
Dependencia dedatos por R2
Dependencia dedatos por R1
Se precapta HALT
y en realidad hayque ejecutar
DSLL R1,R1,1 setira lo que avanza
por el pipe
Aquí precaptar HALT escorrecto y no se tira lo que
avanza en el pipe
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 8/162010 Arquitectura de Computadoras 8
… con forwarding
Mejora porforwarding
Todavía faltasolucionar la “mala” predicción del salto
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 9/162010 Arquitectura de Computadoras 9
…con forwarding y BTB
Incorpora elsalto a la tabla
BTB
Se predice elsalto en formacorrecta puesestá en BTB
Predicción incorrecta del saltohay que sacarlo de BTB
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 10/162010 Arquitectura de Computadoras 10
Ejemplo de ejecución normal y
con uso del salto retardado.data
equis: .word 4
.text
LD R1, equis(R0)
DADDI R1, R1, 1
J SIGUE
DADD R1, R1, R2DADD R3, R3, R2
SIGUE: SD R1, equis(R0)
HALT
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 11/162010 Arquitectura de Computadoras 11
Ejecución normal
Dependencias RAW
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 12/162010 Arquitectura de Computadoras 12
Ejecución con fowarding
Dependencia RAW
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 13/162010 Arquitectura de Computadoras 13
Ejecución con salto retardado
Dependencia RAW Cuidado: SD almacena (R1+R2) debido
a la ejecución de DADD R1,R1,R2
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 14/162010 Arquitectura de Computadoras 14
Ejecución con NOP agregada
sin salto retardado
Dependencia RAW
NOP es descartada
5/11/2018 Anexo Sobre Winmips(Ac6) - slidepdf.com
http://slidepdf.com/reader/full/anexo-sobre-winmipsac6 15/162010 Arquitectura de Computadoras 15
Ejecución con NOP y con salto
retardado
Dependencia RAW
NOP es totalmente ejecutada