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

Algoritmo de Tomasulo

  • Upload
    sana

  • View
    44

  • Download
    0

Embed Size (px)

DESCRIPTION

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

Citation preview

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