Los diferentes tipos de caché se organizan
por niveles, formando una jerarquía. En general se
cumple que, a mayor cercanía a la CPU, se
presenta mayor velocidad de acceso y menor capacidad de
almacenamiento.- Nivel 1 (L1): Conocido como
caché interno, es el nivel más
cercano a la CPU (está en el mismo
núcleo) con lo que el acceso se produce a la
velocidad de trabajo del procesador (la máxima
velocidad). Presenta un tamaño muy reducido,
en Intel (4 a 32 KB), en VIA/Cyrix (1 a 64 KB), en
AMD (8 a 128 KB). - Nivel 2 (L2): Conocido como
caché externo, inicialmente se instalaba en
la placa base (en el exterior de la CPU). A partir
de los procesadores Pentium 4 vienen incorporado en el
procesador (no precisamente en el núcleo).
El nivel L2 apareció con el procesador
Pentium Pro, es una memoria más lenta que
L1, pero de mayor capacidad. Los tamaños
típicos de la
memoria caché L2 oscilan en la
actualidad entre 256 KB y 4 MB. - Nivel 3 (L3): Se encuentra en
algunas placas base, procesadores y tarjetas de interfaz. El procesador
de Intel Itanium trae contenida en su cartucho al
nivel L3 que soporta un tamaño hasta de 4
MB, y el Itanium 2 tolera hasta 6 MB de
caché L3. - Nivel 4 (L4): Se encuentra ubicado
en los periféricos y en algunos
procesadores como el Itanium.
- Nivel 1 (L1): Conocido como
- Caché de memoria: De acuerdo a la
ubicación física que tienen en el sistema se denominan o identifican por
niveles: - Caché de memoria
RAM: La memoria principal RAM
suele hacer de caché para los dispositivos de almacenamiento y otros
tipos de periféricos. - Caché en disco
duro: Utilizadas por los navegadores Web
y algunos periféricos.
La búsqueda de información comienza por la
caché L1, y se va subiendo nivel a nivel en caso de
no encontrar lo que se busca en el nivel actual. Cuantas
más capas se asciende, mayor es el tiempo
de espera. Pero, a mayor cercanía a la CPU, la
probabilidad de encontrar lo que se busca es
mayor. Esta forma de trabajo resulta una excelente
relación de compromiso entre diversos factores, y
consigue mejorar el rendimiento del ordenador de forma
notable.INFORMACIÓN DE
MEMORIA CACHÉ Y VELOCIDAD DE ALGUNOS
PROCESADORES INTELMODELO
VELOCIDAD EN
MHzCACHÉ L1 EN
KBCACHÉ L2 EN
KB8088
8
0
0
8086
8
0
0
80c86
8
0
0
80186
16
0
0
80286
20
0
0
80386DX
40
0
0
80386SX
25
0
0
80486SLC
25
8
0
33
8
0
80486DX
25
8
0
33
8
0
50
8
0
80486SX
20
8
0
25
8
0
33
8
0
80486DX2
40
8
0
50
8
0
66
8
0
80486DX4
75
16
0
100
16
0
Pentium
75
16
0
100
16
0
Pentium MMX
166
32
0
233
32
0
Pentium Pro
150
16
256-512
200
16
256-512
Pentium II
233
32
512
450
32
512
Pentium II Xeon
400
32
512
450
32
512
Pentium III
450
32
512
1000
32
256
Pentium III Xeon
500
32
512
800
32
256
Celeron
266
32
0
600
32
128
Pentium 4
1400
32
256
2000
32
512
- Niveles de caché
- Estructura y funcionamiento interno de una
caché de memoria
La memoria caché está estructurado por
celdas, donde cada celda almacena un byte. La entidad
básica de almacenamiento la conforman las filas,
llamados también líneas de caché. Por
ejemplo, una caché L2 de 512 KB se distribuye en
16.384 filas (16 KB) y 32 columnas (32 bytes).
Cuando se copia o se escribe información de
la RAM, por cada movimiento
siempre cubre una línea de caché (en la
caché anterior, siempre se mueven 32
bytes).
La memoria caché tiene incorporado, un
espacio de almacenamiento llamado Tag RAM, que indica
a que porción de la RAM se halla asociada cada
línea de caché, es decir permite traducir una
dirección de RAM en una línea de
caché concreta.
Para que la RAM se reparte entre las líneas
de caché disponibles, existen 3 técnicas:
Esta técnica permite una búsqueda
muy rápida, ya que cada posición de RAM
sólo puede estar en una determinada línea.
Sin embargo, la probabilidad de encontrar la
información buscada es mínima.- Caché de mapeo directo: La
memoria RAM se divide en porciones de igual tamaño, de
acuerdo a la cantidad de líneas de caché
existan. Cada línea de caché es un recurso a
compartir por las direcciones de memoria de una
porción diferente. Por ejemplo, si se dispone de una
RAM de 64 MB y la caché de 512 KB, cada línea
podrá almacenar 32 de las 4.096 direcciones que
contiene la porción de RAM asociada (64 MB/ 16.384
líneas = 4.096 bytes / línea). - Caché completamente
asociativa: Cada línea de caché se
puede llenar con cualquier grupo de
posiciones de la memoria RAM. En este caso, el porcentaje de
acierto es máximo. En cambio, el
tiempo de acceso es muy elevado, puesto que una
posición de RAM puede estar en cualquier línea
de caché (esto es lento, incluso empleando algoritmos
de búsqueda avanzados). - Caché asociativa por conjuntos
de N líneas: La caché se divide en
conjuntos de N líneas, a cada conjunto se le asocia un
grupo de posiciones de RAM. Dentro del conjunto asignado, una
posición de RAM puede ir a parar a cualquiera de las N
líneas que lo forman, es decir dentro de cada conjunto
la caché es totalmente asociativa. Esta
situación es la más equilibrada, puesto que se
trata de un compromiso entre las técnicas anteriores.
Si se hace N=1, se tiene una caché. De mapeo directo.
Si N es igual al número de líneas de la
caché, se tiene una caché completamente
asociativa. Si se escoge un valor de N
apropiado, se alcanza la solución
óptima.
Normalmente, la caché L2 es de mapeo
directo, mientras que la caché L1 es asociativa por
conjuntos de N líneas.
El procesador genera la dirección X, de la
palabra a leer. Si la palabra está en la
caché, es enviada al procesador. Caso contrario, el
bloque que contiene a la palabra (en memoria principal) se
carga en caché y la palabra se envía al
procesador. En el diagrama
se ilustra esta operación:Lectura de la
cachéEl proceso
de escritura en caché es se da
directamente. Para trasladar información de la
caché a la RAM, hay dos políticas de escritura
fundamentales:- Write-back: La
información se escribe directamente en la
caché, sin actualizar la RAM. Cuando una
posición de la caché debe ser utilizada
por otra posición de RAM diferente, su contenido
actual se traslada a la RAM, asegurando la coherencia
entre ambas memorias. - Write-througth: Cada vez que se
escribe en una línea de caché, se
actualiza la RAM. Esta técnica conlleva un
acceso continuo a la RAM, por lo que el rendimiento es
pobre.
- Write-back: La
Políticas de
escritura
Autor:
Marco Antonio Castro
Churampi
Estudiante de la Facultad de Ingeniería de Sistemas e Informática
Universidad Nacional Mayor de San Marcos
Página anterior | Volver al principio del trabajo | Página siguiente |