Leko
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 Algoritmo de Tomasulo
Conflitos de Dados
DIV.D F0, F1, F2
SUB.D F5, F0, F3
ADD.D F0, F2, F4
MULT.D F6, F7, F8
ADD.D F7, F2, F4
Algoritmo de Tomasulo
Conflitos de Dados
DIV.D F0, F1, F2
SUB.D F5, F0, F3
ADD.D F0, F2, F4
MULT.D F6, F7, F8
ADD.D F7, F2, F4
Algoritmo de Tomasulo
Conflitos de Dados
RAW
DIV.D F0, F1, F2
SUB.D F5, F0, F3
ADD.D F0, F2, F4
MULT.D F6, F7, F8
ADD.D F7, F2, F4
Algoritmo de Tomasulo
Conflitos de Dados
RAW
DIV.D F0, F1, F2
SUB.D F5, F0, F3
ADD.D F0, F2, F4
MULT.D F6, F7, F8
ADD.D F7, F2, F4
Algoritmo de Tomasulo
Conflitos de Dados
WAW
RAW
DIV.D F0, F1, F2
SUB.D F5, F0, F3
ADD.D F0, F2, F4
MULT.D F6, F7, F8
ADD.D F7, F2, F4
Algoritmo de Tomasulo
Conflitos de Dados
WAW
RAW
DIV.D F0, F1, F2
SUB.D F5, F0, F3
ADD.D F0, F2, F4
MULT.D F6, F7, F8
ADD.D F7, F2, F4
Algoritmo de Tomasulo
Conflitos de Dados
WAW
RAW
DIV.D F0, F1, F2
SUB.D F5, F0, F3
ADD.D F0, F2, F4
MULT.D F6, F7, F8
ADD.D F7, F2, F4
WAR
Algoritmo de Tomasulo
Escalonamento de Instruções
Escalonamento estático
Focalizado no compilador
Escalonamento dinâmico
Focalizado no hardware
Algoritmo de Tomasulo
Renomeação de Registradores
WAW
MULT.D F1, F4, F5
ADD.D F1, F2, F3
MULT.D F6, F7, F2
ADD.D F7, F2, F4
ADD.D F8, F1, F4
WAR
Algoritmo de Tomasulo
Renomeação de Registradores
WAW
MULT.D F1, F4, F5
ADD.D F1, F2, F3
MULT.D F6, F7, F2
ADD.D F7, F2, F4
ADD.D F8, F1, F4
MULT.D F1, F4, F5
ADD.D R1, F2, F3
MULT.D F6, F7, F2
ADD.D R2, F2, F4
ADD.D F8, R1, F4
WAR
Algoritmo de Tomasulo
Algoritmo de Tomasulo
IBM360/91
Explorar o paralelismo no nível de
instrução