Top Banner
Algoritmo de Tomasulo MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP - Brasil
26

Algoritmo de Tomasulo

Jan 06, 2016

Download

Documents

sana

Algoritmo de Tomasulo. MO401 – Arquitetura de Computadores I. Cristiano Dalmaschio Ferreira. Instituto de Computação Universidade Estadual de Campinas – SP - Brasil. Introdução. Pipelines e paralelismo no nível de instrução. Conflitos de Dados. DIV.D F0, F1, F2 SUB.D F5, F0, F3 - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Algoritmo de Tomasulo

Algoritmo de Tomasulo

MO401 – Arquitetura de Computadores I

Cristiano Dalmaschio Ferreira

Instituto de Computação

Universidade Estadual de Campinas – SP - Brasil

Page 2: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Introdução

Pipelines e paralelismo no nível de instrução

Page 3: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Conflitos de Dados

DIV.D F0, F1, F2SUB.D F5, F0, F3ADD.D F0, F2, F4 MULT.D F6, F7, F8ADD.D F7, F2, F4

Page 4: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Conflitos de Dados

DIV.D F0, F1, F2SUB.D F5, F0, F3ADD.D F0, F2, F4 MULT.D F6, F7, F8ADD.D F7, F2, F4

Page 5: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Conflitos de Dados

DIV.D F0, F1, F2SUB.D F5, F0, F3ADD.D F0, F2, F4 MULT.D F6, F7, F8ADD.D F7, F2, F4

RAW

Page 6: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Conflitos de Dados

DIV.D F0, F1, F2SUB.D F5, F0, F3ADD.D F0, F2, F4 MULT.D F6, F7, F8ADD.D F7, F2, F4

RAW

Page 7: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Conflitos de Dados

DIV.D F0, F1, F2SUB.D F5, F0, F3ADD.D F0, F2, F4 MULT.D F6, F7, F8ADD.D F7, F2, F4

RAWWAW

Page 8: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Conflitos de Dados

DIV.D F0, F1, F2SUB.D F5, F0, F3ADD.D F0, F2, F4 MULT.D F6, F7, F8ADD.D F7, F2, F4

RAWWAW

Page 9: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Conflitos de Dados

DIV.D F0, F1, F2SUB.D F5, F0, F3ADD.D F0, F2, F4 MULT.D F6, F7, F8ADD.D F7, F2, F4

RAWWAW

WAR

Page 10: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Escalonamento de Instruções

Escalonamento estático

Focalizado no compilador

Escalonamento dinâmico

Focalizado no hardware

Page 11: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Renomeação de Registradores

MULT.D F1, F4, F5ADD.D F1, F2, F3MULT.D F6, F7, F2ADD.D F7, F2, F4ADD.D F8, F1, F4

WAW

WAR

Page 12: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Renomeação de Registradores

MULT.D F1, F4, F5ADD.D F1, F2, F3MULT.D F6, F7, F2ADD.D F7, F2, F4ADD.D F8, F1, F4

MULT.D F1, F4, F5ADD.D R1, F2, F3MULT.D F6, F7, F2ADD.D R2, F2, F4ADD.D F8, R1, F4

WAW

WAR

Page 13: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Algoritmo de Tomasulo

IBM360/91

Explorar o paralelismo no nível de instrução

Minimizar conflitos RAW, WAW, WAR

Page 14: Algoritmo de Tomasulo

Arquitetura de Hardware

Page 15: Algoritmo de Tomasulo

Arquitetura de Hardware

Page 16: Algoritmo de Tomasulo

Arquitetura de Hardware

Page 17: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Execução do algoritmo

Emitir Fim exec Gravar

DIV.D F0, F1, F2 1

SUB.D F5, F0, F3

ADD.D F0, F2, F4

MULT.D F6, F7, F8

ADD.D F7, F2, F4

Ciclo 1

Page 18: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Execução do algoritmo

Emitir Fim exec Gravar

DIV.D F0, F1, F2 1 X

SUB.D F5, F0, F3 2

ADD.D F0, F2, F4

MULT.D F6, F7, F8

ADD.D F7, F2, F4

Ciclo 2

Page 19: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Execução do algoritmo

Emitir Fim exec Gravar

DIV.D F0, F1, F2 1 X

SUB.D F5, F0, F3 2

ADD.D F0, F2, F4 3

MULT.D F6, F7, F8

ADD.D F7, F2, F4

Ciclo 3

Page 20: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Execução do algoritmo

Emitir Fim exec Gravar

DIV.D F0, F1, F2 1 X

SUB.D F5, F0, F3 2

ADD.D F0, F2, F4 3 X

MULT.D F6, F7, F8 4

ADD.D F7, F2, F4

Ciclo 4

Page 21: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Execução do algoritmo

Emitir Fim exec Gravar

DIV.D F0, F1, F2 1 X

SUB.D F5, F0, F3 2

ADD.D F0, F2, F4 3 5

MULT.D F6, F7, F8 4

ADD.D F7, F2, F4 5

Ciclo 5

Page 22: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Execução do algoritmo

Emitir Fim exec Gravar

DIV.D F0, F1, F2 1 X

SUB.D F5, F0, F3 2

ADD.D F0, F2, F4 3 5 6

MULT.D F6, F7, F8 4

ADD.D F7, F2, F4 5 X

Ciclo 6

Page 23: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Execução do algoritmo

Emitir Fim exec Gravar

DIV.D F0, F1, F2 1 X

SUB.D F5, F0, F3 2

ADD.D F0, F2, F4 3 5 6

MULT.D F6, F7, F8 4

ADD.D F7, F2, F4 5 8

Ciclo 8

Page 24: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Execução do algoritmo

Emitir Fim exec Gravar

DIV.D F0, F1, F2 1 41 42

SUB.D F5, F0, F3 2 X

ADD.D F0, F2, F4 3 5 6

MULT.D F6, F7, F8 4 X

ADD.D F7, F2, F4 5 8 9

Ciclo 42

Page 25: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Execução do algoritmo

Emitir Fim exec Gravar

DIV.D F0, F1, F2 1 41 42

SUB.D F5, F0, F3 2 43 44

ADD.D F0, F2, F4 3 5 6

MULT.D F6, F7, F8 4 51 52

ADD.D F7, F2, F4 5 8 9

Ciclo 52

Page 26: Algoritmo de Tomasulo

Algoritmo de Tomasulo

Conclusões

Explora paralelismo

Renomeação de registradores

“Buferização de operandos”

Independência: Compilador X Arquitetura