protocolo dragon

2
Protocolo DRAGON El protocolo de coherencia cache Dragon es el esquema usado en la estación de trabajo multiprocesador Xerox Dragon, desarrollada por Xerox PARC. Este protocolo usa una política de postescritura. 1 Estados En este protocolo, a cada bloque pueden asignarse los si- guientes estados: Invalido(I, Invalid): Sin datos en el bloque de ca- che. Limpio (C, Clean): Limpio, sólo copia. Compartido-Limpio (SC, Shared-Clean): Lim- pio, puede estar compartido. Sucio (D, Dirty): Modificado, sólo copia. Compartido-Sucio (SD, Shared-Dirty): Modifi- cado, puede que compartido. Esto implica que pue- de haber otras copias actualizadas de los datos (en el estado Compartido-Limpio), pero la copia de me- moria no está actualizada. Esos cinco estados corresponden a los cinco estados del protocolo MOESI, aunque los superiores listados arriba están en orden IESMO. Para cada par de caches dada, los estados permitidos de un línea de cache dada son los siguientes (los estados están abreviados en el orden superior): 2 Transiciones Para identificar que transición debe hacerse, el protocolo detecta la compartición usando un línea especial de bus llamada Compartida o Shared. Todos los accesos a la memoria principal del bus son espiados por todas las ca- ches, que establecen la línea a compartido (Shared) cuan- do ocurren un éxito en el espionaje. Las reglas siguientes se aplican a las transiciones: Acierto de lectura (Read hit): el dato es suminis- trado por la cache local. No hay cambio de estado. Fallo de lectura (Read miss): si hay alguna caché con una copia de la línea de cache, se indica con la línea compartida (Shared) y suministra el dato a la cache solicitante, que mantiene una copia en el estado compartido-limpio (Shared-Clean). La ca- ché suministradora deja su copia de la línea en el estado compartido-sucio (Shared-Dirty) o el estado compartido-limpio (Shared-Clean), en su caso. De lo contrario coge el dato desde la memoria principal y marca la caché limpia (Clean). Acierto de escritura (Write hit): si el estado del dato de la cache está en sucio (Dirty) o limpio (Clean), se actualiza el dato cacheado y se mar- ca como sucio (Dirty). Si el estado es compartido- limpio (Shared-Clean) o compartido-sucio (Shared- Dirty) entonces actualiza las otras cachés. Si la línea compartida (Shared) está establecida, cambia la ca- ché local a compartido-sucio (Shared-Dirty) y todas las otras a compartido-limpio (Shared-Clean), de lo contrario el estado de la caché local cambia a sucio (Dirty). Fallo de escritura (Write miss): si hay alguna ca- ché con una copia, esa caché suministra el dato. La escritora genera una difusión de escritura, la caché local cambia a compartido-sucio (Shared-Dirty)y todas las otras a compartido-limpio (Shared-Clean). De lo contrario, la memoria principal suministra el dato y el estado de la cache local cambia a sucio (Dirty). 3 Referencias Introduction to Multiprocessor Cache Design, Wen- Mei Hwu 4 Véase también Xerox Dragon Xerox PARC Cache coherence 1

Upload: maxs-lamas

Post on 18-Jan-2016

11 views

Category:

Documents


3 download

DESCRIPTION

arq de computadoras

TRANSCRIPT

Page 1: Protocolo DRAGON

Protocolo DRAGON

El protocolo de coherencia cache Dragon es el esquemausado en la estación de trabajo multiprocesador XeroxDragon, desarrollada por Xerox PARC. Este protocolousa una política de postescritura.

1 Estados

En este protocolo, a cada bloque pueden asignarse los si-guientes estados:

• Invalido(I, Invalid): Sin datos en el bloque de ca-che.

• Limpio (C, Clean): Limpio, sólo copia.

• Compartido-Limpio (SC, Shared-Clean): Lim-pio, puede estar compartido.

• Sucio (D, Dirty): Modificado, sólo copia.

• Compartido-Sucio (SD, Shared-Dirty): Modifi-cado, puede que compartido. Esto implica que pue-de haber otras copias actualizadas de los datos (enel estado Compartido-Limpio), pero la copia de me-moria no está actualizada.

Esos cinco estados corresponden a los cinco estados delprotocolo MOESI, aunque los superiores listados arribaestán en orden IESMO.Para cada par de caches dada, los estados permitidos deun línea de cache dada son los siguientes (los estados estánabreviados en el orden superior):

2 Transiciones

Para identificar que transición debe hacerse, el protocolodetecta la compartición usando un línea especial de busllamada Compartida o Shared. Todos los accesos a lamemoria principal del bus son espiados por todas las ca-ches, que establecen la línea a compartido (Shared) cuan-do ocurren un éxito en el espionaje. Las reglas siguientesse aplican a las transiciones:

• Acierto de lectura (Read hit): el dato es suminis-trado por la cache local. No hay cambio de estado.

• Fallo de lectura (Read miss): si hay alguna cachécon una copia de la línea de cache, se indica con

la línea compartida (Shared) y suministra el datoa la cache solicitante, que mantiene una copia enel estado compartido-limpio (Shared-Clean). La ca-ché suministradora deja su copia de la línea en elestado compartido-sucio (Shared-Dirty) o el estadocompartido-limpio (Shared-Clean), en su caso. Delo contrario coge el dato desde la memoria principaly marca la caché limpia (Clean).

• Acierto de escritura (Write hit): si el estado deldato de la cache está en sucio (Dirty) o limpio(Clean), se actualiza el dato cacheado y se mar-ca como sucio (Dirty). Si el estado es compartido-limpio (Shared-Clean) o compartido-sucio (Shared-Dirty) entonces actualiza las otras cachés. Si la líneacompartida (Shared) está establecida, cambia la ca-ché local a compartido-sucio (Shared-Dirty) y todaslas otras a compartido-limpio (Shared-Clean), de locontrario el estado de la caché local cambia a sucio(Dirty).

• Fallo de escritura (Write miss): si hay alguna ca-ché con una copia, esa caché suministra el dato. Laescritora genera una difusión de escritura, la cachélocal cambia a compartido-sucio (Shared-Dirty) ytodas las otras a compartido-limpio (Shared-Clean).De lo contrario, la memoria principal suministra eldato y el estado de la cache local cambia a sucio(Dirty).

3 Referencias• Introduction to Multiprocessor Cache Design, Wen-Mei Hwu

4 Véase también• Xerox Dragon

• Xerox PARC

• Cache coherence

1

Page 2: Protocolo DRAGON

2 5 TEXT AND IMAGE SOURCES, CONTRIBUTORS, AND LICENSES

5 Text and image sources, contributors, and licenses

5.1 Text• Protocolo DRAGON Fuente: http://es.wikipedia.org/wiki/Protocolo%20DRAGON?oldid=75403058 Colaboradores: Rosarinagazo, Sha-karan, Barri, Poco a poco, Aliuk, LucienBOT, KLBot2 y Anónimos: 1

5.2 Images• Archivo:X_mark.svg Fuente: http://upload.wikimedia.org/wikipedia/commons/a/a2/X_mark.svg Licencia: Public domain Colaborado-res: Trabajo propio Artista original: User:Gmaxwell

5.3 Content license• Creative Commons Attribution-Share Alike 3.0