Algoritmo de Tomasulo MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira...
Transcript of Algoritmo de Tomasulo MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira...
![Page 1: Algoritmo de Tomasulo MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/1.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/2.jpg)
Algoritmo de Tomasulo
Introdução
Pipelines e paralelismo no nível de instrução
![Page 3: Algoritmo de Tomasulo MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/3.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/4.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/5.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/6.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/7.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/8.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/9.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/10.jpg)
Algoritmo de Tomasulo
Escalonamento de Instruções
Escalonamento estático
Focalizado no compilador
Escalonamento dinâmico
Focalizado no hardware
![Page 11: Algoritmo de Tomasulo MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/11.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/12.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/13.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/14.jpg)
Arquitetura de Hardware
![Page 15: Algoritmo de Tomasulo MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/15.jpg)
Arquitetura de Hardware
![Page 16: Algoritmo de Tomasulo MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/16.jpg)
Arquitetura de Hardware
![Page 17: Algoritmo de Tomasulo MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/17.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/18.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/19.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/20.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/21.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/22.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/23.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/24.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/25.jpg)
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 MO401 – Arquitetura de Computadores I Cristiano Dalmaschio Ferreira Instituto de Computação Universidade Estadual de Campinas – SP.](https://reader036.fdocument.pub/reader036/viewer/2022062312/552fc10b497959413d8c11a5/html5/thumbnails/26.jpg)
Algoritmo de Tomasulo
Conclusões
Explora paralelismo
Renomeação de registradores
“Buferização de operandos”
Independência: Compilador X Arquitetura