You are on page 1of 11

Protocolo Dragn: actualizacin 4

estados (1)
2
2
E
SM M
SC
SC: Shared Clean
SM: Shared Modified
Yo, otros y puede que la memoria, pero
no soy el propietario
Potencialmente 2 o ms procesadores
tienen este bloque. La memoria principal
puede estar o no actualizada
Yo y nadie ms
El bloque ha sido modificado, la
memoria no est actualizada y esta es
la nica copia (Propiedad Exclusiva)
Yo y otros pero no la memoria, soy el propietario
Potencialmente 2 ms procesadores tienen este
bloque. La memoria principal no est actualizada y
este procesador es responsable de actualizar la
memoria principal cuando este bloque sea
reemplazado
Yo y la memoria
El bloque no ha sido modificado y slo
hay una cache con copia
Solo Memoria
Estado Implcito
NP
Dragn de Xerox PARC (1984)
Sun SparcServer (1997)
Protocolo Dragn: actualizacin 4
estados (2)
Eventos Procesador
PrRd / PrWr
PrRdMiss / PrWrMiss
Transacciones del Bus
BusRd / BusWB / Flush
BusUpd (Nueva)
Broadcast de la palabra modifica a todos los procesadores para que se actualicen las copias
Seal S
Para soportar el estado Exclusivo (igual que MESI)


3
Protocolo Dragn: actualizacin 4
estados (3)
4
4
E
M SM
SC
BusRd/
BusRd/Flush
BusRd/Flush
BusRd/
PrRdMiss (S) /
BusRd
PrRdMiss (S) /
BusRd

Protocolo Dragn: actualizacin 4
estados (4)
5
5
E
M SM
SC
PrWr/
PrWr/
BusUpd(S)
PrWr/BusUpd(S)
PrWr/
PrWr/BusUpd(S)
PrWr/BusUpd(S)
BusUpd/
Actualizacin
BusUpd/
Actualizacin
Broadcast de la palabra modifica a
todos los procesadores para que se
actualicen las caches relevantes
PrWrMiss/
BusRd(S);
BusUpd
PrWrMiss/
BusRd(S);BusUpd
Protocolo Dragn: actualizacin 4
estados (5)
Reemplazo de un bloque en estado SC o SM
Debe hacerse un broadcast al resto de las controladores para informar de
dicho reemplazo (Transaccin Reemplazo)?
En caso de que haya slo otra copia, permite que pase al estado E o M (no genera actualizaciones)
Transaccin Reemplazo puede ser menos crtica que BusUpd
Estado SM
Puede eliminarse?
DEC Firefly: La transaccin BusUpd tambin actualiza la memoria
El Protocolo Dragn asume que la actualizacin de SRAM caches es menos costosa que la
actualizacin de memoria.



6
Protocolo Dragn: actualizacin 4
estados (6)
7
7
I/O
Operacin Estado P1 Estado P2 Estado P3 Transaccin
Bus
Datos
Suministrados
P1 Lee U
P3 Lee U
P3 escribe U
P1 Lee U
P2 Lee U
Memoria
U : 5
P1 P2 P3
Seal shared (S)
OR-cableada
1. PrRd U
Memoria BusRd
BusRd U
U E 5
E
8
Protocolo Dragn: actualizacin 4
estados (7)
I/O
Operacin Estado P1 Estado P2 Estado P3 Transaccin
Bus
Datos
Suministrados
P1 Lee U
P3 Lee U
P3 escribe U
P1 Lee U
P2 Lee U
Memoria
U : 5
P1 P2 P3
Seal shared (S)
OR-cableada
Memoria BusRd
U E 5
E
BusRd Memoria
BusRd U
U SC 5
SC SC
SC
2. PrRd U
9
Protocolo Dragn: actualizacin 4
estados (8)
I/O
Operacin Estado P1 Estado P2 Estado P3 Transaccin
Bus
Datos
Suministrados
P1 Lee U
P3 Lee U
P3 escribe U
P1 Lee U
P2 Lee U
Memoria
U : 5
P1 P2 P3
Seal shared (S)
OR-cableada
Memoria BusRd
U 5
E
BusRd Memoria
U SC 5
SC SC
SC
3. PrWr U
BusUpd Cache P3
BusUpd
SC SM
SM 7 7
10
Protocolo Dragn: actualizacin 4
estados (9)
I/O
Operacin Estado P1 Estado P2 Estado P3 Transaccin
Bus
Datos
Suministrados
P1 Lee U
P3 Lee U
P3 escribe U
P1 Lee U
P2 Lee U
Memoria
U : 5
P1 P2 P3
Seal shared (S)
OR-cableada
Memoria BusRd
U 7
E
BusRd Memoria
U SM 7
SC SC
SC
4. PrRd U
BusUpd Cache P3 SC SM
Cache P1 SC SM
11
Protocolo Dragn: actualizacin 4
estados (10)
I/O
Operacin Estado P1 Estado P2 Estado P3 Transaccin
Bus
Datos
Suministrados
P1 Lee U
P3 Lee U
P3 escribe U
P1 Lee U
P2 Lee U
Memoria
U : 5
P1 P2 P3
Seal shared (S)
OR-cableada
Memoria BusRd
U 7
E
BusRd Memoria
U SM 7
SC SC
SC
BusUpd Cache P3 SC SM
Cache P1 SC SM
5. PrRd U
Cache P3 BusRd
BusRd U
SC SC SM
U SC 7

You might also like