You are on page 1of 3

MEMORIA CACHE Debemos tener en cuenta que la velocidad de acceso a la Memoria Principal es fundamental en el rendimiento en el proceso de datos.

Por tal motivo se puso toda la atencin a incrementar las velocidades de acceso a memoria. Apareci la memoria Cach. La memoria cach es una pequea memoria de almacenamiento local, construida generalmente con memorias estticas (SRAM) de muy alta velocidad y costosas. La misma se encuentra ubicada entre la CPU y la Memoria Principal obteniendo como resultado engaar a la CPU hacindole creer que posee toda una Memoria Principal de rpido acceso. Esta memoria es de menor capacidad que la MP y el xito de la misma radica en que el microprocesador opere la mayor parte del tiempo desde la cach. La arquitectura bsica de una memoria cach es la siguiente: Memoria de Etiquetas: Contiene una lista de etiquetas (21 Bits) que hacen referencia a las direcciones de la MP que estn almacenadas en la Cach. Memoria Memoria Adems posee una palabra de estado por cada De De Etiquetas Datos etiqueta. Memoria de Datos: Contiene las instrucciones o datos que son usados mas frecuentemente por el microprocesador. Se agrupa en conjunto de datos. (Lneas) Lgica de Control: Se encarga entre otras cosas de determinar si un dato se encuentra o no en la Lgica de control de la Cach memoria Cach, generando la seal de presencia o ausencia respectivamente.

Se utilizan dos principios en los cuales se basa almacenar en la memoria cach los datos mas usados. Estos son la Vecindad Espacial y la Vecindad Temporal. El primero corresponde a la adyacencia de las instrucciones (si se ejecuta una instruccin lo ms probable es que se ejecute la siguiente), y el segundo se refiere a que los programas tienden a usar los datos mas recientes. En cuanto a la conexin de la memoria cach, sta puede ser en serie o en paralelo. En el primer caso todas las peticiones a MP se envan en primer lugar a la memoria cach. En caso de no estar el dato en la cach, sta realiza la peticin finalmente a la MP. En la conexin paralelo el pedido de peticin se hace simultneamente tanto a la cach como

a la MP. Si el dato est en la cach genera una seal a la MP para abortar la bsqueda del dato. Ventajas serie: Menores peticiones a la MP, por lo tanto menor uso de utilizacin del bus. Permite que mientras el microprocesador accede a la cach, otros dispositivos acceden a la MP. La desventaja es la prdida de tiempo en caso de no estar el dato en la cach. Ventajas paralelo: Ubicacin de la cach en paralelo permitiendo quitarla del sistema sin realizar modificacin alguna. Organizacin de la memoria cach: Cach totalmente asociativa: Cada posicin de la MP puede almacenarse en cualquier posicin de la memoria cach. Van a estar almacenadas las ltimas direcciones de MP que hayan sido accedidas. El inconveniente est en que hay que chequear toda la memoria de etiquetas para saber si se encuentra o no la direccin de memoria principal. Por tal motivo la memoria cach con ste tipo de organizacin deber ser de un tamao chico (4 KB o menos). Es la de mejor rendimiento pero poca capacidad. Cach de correspondencia directa (Asociativa de una va): Cada posicin de la MP que se deba almacenar en la cach, solo puede hacerlo en una posicin de memoria especfica de sta. Se basa en la divisin de la MP en pginas del tamao de la memoria cach almacenando en la memoria de etiquetas solo el nmero de la pgina almacenada. Para entornos multitarea o multiusuario ste tipo de organizacin no es muy conveniente debido a la posibilidad de estar actualizando continuamente una determinada posicin de la cach. Cach asociativa de n vas: Funciona como n cachs de correspondencia directa. Mientras ms vas tenga, ms complicada resultar la lgica de control.

Actualizacin de la memoria cach Consiste en el mtodo a emplear cuando se produce una ausencia en la memoria cach. Para dicha actualizacin existen distintos algoritmos para reemplazar un dato de la cach por otro nuevo. Los mas usados son el Random y el LRU. El primero actualiza de forma aleatoria cualquier va de la cach, en cambio con LRU se sustituye aquel dato que lleve mayor tiempo sin ser accedido. Actualizacin de la Memoria Principal En el caso que se modifique por parte del microprocesador un dato de la memoria cach, dicha informacin deber modificarse en la MP debido por ejemplo al tener que utilizar un perifrico el dato actualizado. Hay tres formas de actualizacin de la memoria cach: Escritura inmediata (Write Through): En ste mtodo, todas las escrituras del microprocesador en la memoria cach son traspasadas inmediatamente a la MP. Si bin el mtodo es simple el rendimiento se reduce debido al tiempo empleado en escribir la MP teniendo una alta utilizacin del bus. Escritura diferida (Posted Write Through): En ste mtodo la cach incorpora una serie de registros intermedios de escritura. A los mismos llegan las escrituras en

cach, liberndose al procesador rpidamente. A medida que el bus de memoria permanece ocioso, el controlador de la cach va actualizando los datos en la MP. Escritura obligada (Write Back): Las actualizaciones en la MP se realizan solo si resulta estrictamente necesario. Esto sucede en dos casos: 1) En el caso que otro dispositivo va a leer el dato de la MP. Previo a dicha lectura la cach deber actualizar la MP. 2) El caso que se modifique una posicin de la cach que ha sido previamente modificada. Previamente a la actualizacin de la cach se actualiza la MP.

Como comentario final, podemos indicar en la misma se encuentran los registros cache invisibles que estn asociados a los registros de segmento, cuando el microprocesador trabaja en modo protegido. Estos registros contienen la base, lmites y atributos. (Ver paginacin y Segmentacin).