Descargar

Memoria Cach (página 2)


Partes: 1, 2

 

  1. 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.

      1. 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).
      2. 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.
      3. 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.
      4. Nivel 4 (L4): Se encuentra ubicado en los periféricos y en algunos procesadores como el Itanium.
    1. Caché de memoria: De acuerdo a la ubicación física que tienen en el sistema se denominan o identifican por niveles:
    2. Caché de memoria RAM: La memoria principal RAM suele hacer de caché para los dispositivos de almacenamiento y otros tipos de periféricos.
    3. 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 INTEL

    MODELO

    VELOCIDAD EN MHz

    CACHÉ L1 EN KB

    CACHÉ L2 EN KB

    8088

    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

  2. Niveles de caché
  3. 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:

  1. 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.

  2. 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).
  3. 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).
  4. 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.

  1. 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:

  2. 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:

    1. 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.
    2. 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.
  3. 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

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente