Protocolo DRAGON
-
Upload
maxs-lamas -
Category
Documents
-
view
11 -
download
3
description
Transcript of 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
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