Necesidad de La Memoria Cache
Necesidad de La Memoria Cache
LA VELOCIDAD DE LA MEMORIA
Como hemos mencionado, se mide en nanosegundos (ns).
Los Chips de memoria DRAM ms veloces, disponibles en
estos momentos, son de 70 o 60 ns. Para que un procesador
opere en el modo de 0 WS sobre una Tarjeta madre con
frecuencia de reloj de 33 MHz. (Procesadores 486DX/33,
486DX2/66, 486 DX4/100) el sistema de memoria debe
responder a una velocidad de 30 ns; mientras que sobre
tarjetas madres a 66Mhz (Procesadores Pentium 100/133/166) la memoria debera
operar a 15 ns. Lo cual es equivalente a que el sistema debera trabajar con memoria
SRAM que como ya sabemos es ms rpida que la DRAM (por que no requiere
refrescamiento) pero cuesta cerca de 10 veces ms, por esta razn es que no son usadas
como almacenamiento primario de las PCs.
Aqu es donde entra a trabajar la Memoria Cache, que no es ms que un bloque de
memoria muy rpida (tpicamente RAM esttica de muy alta velocidad, con tiempos de
acceso de 15 a 35 ns) interpuesta entre el microprocesador y la memoria principal del
sistema. El objetivo de esta memoria es lograr que el microprocesador trabaje con la
memoria a su velocidad de procesamiento. Lo cual permite que el sistema en general
aumente sus prestaciones ya que no tiene que introducir estados de espera.
Para empezar, digamos que la cach no es sino un tipo de memoria del ordenador; por
tanto, en ella se guardarn datos que el ordenador necesita para trabajar. Pero no era
eso la RAM?, preguntar usted. Bueno, en parte s. A decir verdad, la memoria principal
del ordenador (la RAM, los famosos 8, 16, 32 64 "megas") y la memoria cach son
bsicamente iguales en muchos aspectos; la diferencia est en el uso que se le da a la
cach. Debido a la gran velocidad alcanzada por los microprocesadores desde el 386,
la RAM del ordenador no es lo suficientemente rpida para almacenar y transmitir los
datos que el microprocesador (el "micro" en adelante) necesita, por lo que tendra que
esperar a que la memoria estuviera disponible y el trabajo se ralentizara.
Para evitarlo, se usa una memoria muy rpida, estratgicamente situada entre el micro y
la RAM:
la
memoria
cach.
sta es la baza principal de la memoria cach: es muy rpida. Cunto es "muy rpida"?
Bien, unas 5 o 6 veces ms que la RAM. Esto la encarece bastante, claro est, y se es
uno de los motivos de que su capacidad sea mucho menor que el de la RAM: un
mximo en torno a 512 kilobytes (512 Kb), es decir, medio "mega", frente a 16 32
megas de RAM. Adems, este precio elevado la hace candidata a falsificaciones y
timos.
Pero la cach no slo es rpida; adems, se usa con una finalidad especfica. Cuando un
ordenador trabaja, el micro opera en ocasiones con un nmero reducido de datos, pero
que tiene que traer y llevar a la memoria en cada operacin. Si situamos en medio del
camino de los datos una memoria intermedia que almacene los datos ms usados, los
que casi seguro necesitar el micro en la prxima operacin que realice, se ahorrar
mucho tiempo del trnsito y acceso a la lenta Memoria RAM; esta es la segunda utilidad
de la cach.
La cach a la que nos hemos referido hasta ahora es la llamada "cach externa" o de
segundo nivel (L2). Existe otra, cuyo principio bsico es el mismo, pero que est
incluida en el interior del micro; de ah lo de interna, o de primer nivel (L1).
Esta cach funciona como lo externa, slo que est ms cerca del micro, es ms rpida y
ms cara, adems de complicar el diseo del micro, por lo que su tamao se mide en
pocas decenas de kilobytes. Se incorpor por primera vez en los micros 486, y por aquel
entonces era de 8 Kb (aunque algunos 486 de Cyrix tenan slo 1 Kb). Hoy en da se
utilizan 32 64 Kb, aunque seguro que pronto alguien superar esta cifra. La
importancia de esta cach es fundamental; por ejemplo, los Pentium MMX son ms
rpidos que los Pentium normales en aplicaciones no optimizadas para MMX, gracias a
tener el doble de cach interna. A decir verdad, la eficacia de la "optimizacin MMX"
de aplicaciones como Microsoft Office, est por ver... Todos los
procesadores Intel desde el surgimiento del 486 incorporan en su interior una pequea
cantidad de este tipo de memoria (entre 8 y 16 Kb). Cuando la memoria cache est
integrada al procesador se le conoce como Cache Interna o de Primer Nivel (L1). En la
tabla siguiente se muestran algunas de las capacidades tpicas de cache de primer nivel
en los procesadores Intel.
Existe tambin una Cach Externa o Cache de segundo nivel (Level two, L2) que est
sobre la tarjeta madre y es administrada por un controlador de memoria Cache.
Capacidades tpicas de esta memoria pueden ser: 128KB, 256KB 512KB y en un
futuro alcanzar los1024 KB. En los sistemas Pentium actuales es 512 Kb la cantidad de
memoria cache externa ms comn.
Normalmente la Memoria Cach, tanto la Interna como la Externa, pueden habilitarse
o no. Esto normalmente se configura en el SETUP del BIOS. Por ejemplo en el BIOS
AWARD en la seccin BIOS FEATURES SETUP aparecen las siguientes opciones:
CPU internal Cache: Enable/Disable External Cache: Enable/Disable. Tambin hay
opciones en el BIOS CHIPSET SETUP que permiten que las direcciones
correspondientes al BIOS del sistema (F000-FFFF H) y al BIOS de Video (C000-C7FF
H) se pasen por la memoria Cache, logrando as un aumento adicional de la velocidad
EL TAMAO DE LA CACH
Ledo lo anterior, usted pensar: pues cuanto ms grande, mejor. Cierto, pero no; o ms
bien, casi siempre s. Aunque la cach sea de mayor velocidad que la RAM, si usamos
una cach muy grande, el micro tardar un tiempo apreciable en encontrar el dato que
necesita. Esto no sera muy importante si el dato estuviera all, pero y si no est?
Entonces habr perdido el tiempo, y tendr que sumar ese tiempo perdido a lo que tarde
en encontrarlo en la RAM. Por tanto, la cach acta como un resumen, una "chuleta" de
los datos de la RAM, y todos sabemos que un resumen de 500 pginas no resulta nada
til. Se puede afirmar que, para usos normales, a partir de 1 MB (1024 Kb) la cach
resulta ineficaz, e incluso pudiera llegar a ralentizar el funcionamiento del ordenador.
El tamao idneo depende del de la RAM, y viene recogido en la siguiente tabla:
Se debe hacer notar que muchos "chipsets" para Pentium, como los conocidos Intel
"Tritn" VX o TX, no permiten cachear ms de 64 MB de RAM; es decir, que a partir
de esta cifra, ES COMO SI NO EXISTIERA CACH EN ABSOLUTO (0 Kb!!).
As que si necesita instalar ms de 64 MB en una placa para Pentium, busque una placa
que permita cachear ms de esa cifra (como algunas -no todas- las que tienen chipsets
"Tritn" HX.
micros tienen sus 128 Kb de cach L2 integrada en el propio encapsulado del micro y la
hacen funcionar a la misma velocidad que ste, de forma que no llega a ser tan rpida
como la cach L1 pero s lo bastante como para permitirles competir con los Pentium
II pese
a
tener
slo
la
cuarta
parte
de
cach.
Digamos, en fin, que los Pentium II y los Celeron Mendocino tienen una cach interna y
una semi-externa, lo cual no es poco mrito en absoluto; pero las cosas son como son,
mal que le pese a los magos de la publicidad.
SDRAM) y con caractersticas especiales, como burst pipeline: transmitir datos "a
rfagas" (burst).
La velocidad de la cach influye en su rendimiento, como es obvio. Las cachs se
mueven en torno a los 10 nanosegundos (ns) de velocidad de refresco; es decir, que cada
10 ns pueden admitir una nueva serie de datos. Por tanto, a menor tiempo de refresco,
mayor
velocidad.
El ltimo parmetro que influye en las cachs es la forma de escribir los datos en ellas.
Esto se suele seleccionar en la BIOS, bien a mano o dejando que lo haga el ordenador
automticamente; las dos formas principales son: Write-Througth: impronunciable
trmino que indica el modo clsico de trabajo de la cach; Write-Back: un modo ms
moderno y eficaz de gestionar la cach.