Diferencia entre revisiones de «Translation Lookaside Buffer»

Contenido eliminado Contenido añadido
me ti mj
m Revertidos los cambios de 66.50.116.80 (disc.) a la última edición de Xqbot
Línea 1:
{{referencias}}'''Translation Lookaside Buffer''' (TLB) es una memoria [[caché]] administrada por la [[MMU]], que contiene partes de la [[tabla de paginacispaginación]], es decir, relaciones entre direcciones virtuales y reales. Posee un número fijo de entradas y se utiliza para obtener la traducción rápida de direcciones. Si no existe una entrada buscada, se deberá revisar la tabla de paginación y tardará varios ciclos más, sobre todo si la página que contiene la dirección buscada no está en memoria primaria (véase [[memoria virtual]]). Si en la tabla de paginación no se encuentra la dirección buscada, saltará una interrupción conocida como [[fallo de página]].
 
== Funcionamiento ==
El TLB hace referencia a direcciones físicas en su tabla. Puede residir entre la CPU y la [[caché]] de la misma o entre esta caché y la unidad de [[memoria primaria]]. Esto depende de si la caché utiliza direccionamiento físico o virtual. Si la caché se dircesodirecciona ade cachémanera sevirtual, realizanlas dospeticiones acciones:se Seenvían utilizadirectamente unde índicela paraCPU encontrar una entrada en el sistema de datos dea la caché, yla acual continuaciónaccede lasal etiquetasTLB decuando la línea encontrada sees comparannecesario. Si la caché estáse estructuradadirecciona de tal manera que pueda ser indexada utilizando solo los bits que no cambian en la traducciónfísica, la cachéCPU puederealiza realizaruna subúsqueda operación de "indexación" mientrasen el TLB traducecon lacada parte altaoperación de lamemoria, dirección. Entonces,y la dirección traducidafísica del TLBresultante es enviada a la caché. LaExisten cachépros realizay unacontras comparaciónen deambas etiquetas para determinar si este acceso ha sido un acierto o un falloimplementaciones.
 
Una optimización común para las cachés direccionadas de manera física es realizar una búsqueda en el TLB en paralelo con el acceso a caché. Los bits de orden más bajo de cualquier dirección virtual (por ejemplo en un sistema de [[memoria virtual]] que tiene páginas de 4KB, los 12 bits más bajos de la dirección virtual) no cambian en la traducción de dirección virtual a física. Durante un acceso a caché se realizan dos acciones: Se utiliza un índice para encontrar una entrada en el sistema de datos de la caché, y a continuación las etiquetas de la línea encontrada se comparan. Si la caché está estructurada de tal manera que pueda ser indexada utilizando solo los bits que no cambian en la traducción, la caché puede realizar su operación de "indexación" mientras el TLB traduce la parte alta de la dirección. Entonces, la dirección traducida del TLB es enviada a la caché. La caché realiza una comparación de etiquetas para determinar si este acceso ha sido un acierto o un fallo.
 
=== Fallo ===
Línea 17 ⟶ 19:
:Ratio de fallos: 0.01% - 1%
 
Si un acierto de TLB requiere 1 ciclo de reloj, un fallo requiere 30 ciclos, y siendo el ratio de fallos 1%, el ratio de ciclos de memoria efectiva es una media de <math>1 \times 0,99 + (1 + 30) \times 0,01 = 1,30</math> ciclos de reloj por acceso a memoria.
Si un ía:Unidad central de procesamiento]]
 
== Véase también ==
* [[Unidad de manejo de memoria]]
 
[[Categoría:Memorias informáticas]]
Si un ía[[Categoría:Unidad central de procesamiento]]
 
[[cs:Translation Lookaside Buffer]]