1. Motivo del almacenamiento en caché.
La aparición de Cache es principalmente para resolver la contradicción entre la velocidad de ejecución de la CPU y la velocidad de lectura y escritura de la memoria. Debido a que la velocidad de ejecución de la CPU es mucho más rápida que la velocidad de lectura y escritura de la memoria, la CPU gastará. mucho tiempo esperando que lleguen los datos o transferirlos a la memoria. Para reducir esta situación, la gente pensó en usar Cache, que utiliza una memoria estática especial que puede leer y escribir mucho más rápido que la memoria del sistema. Cuando el sistema está funcionando, algunos datos a los que se accede con frecuencia durante el tiempo de ejecución se leerán desde la memoria del sistema al caché, y la CPU primero leerá o escribirá los datos en el caché. Si no hay datos requeridos en el caché (o el caché está lleno y ya no se puede escribir), la memoria del sistema se leerá y escribirá, y los datos se intercambiarán con la memoria cuando el caché esté inactivo. Su esencia es insertar una SRAM más rápida y más pequeña entre la DRAM lenta y la CPU rápida para que actúe como un búfer, permitiendo que la CPU acceda a los datos en la SRAM a una velocidad más rápida y mejore el rendimiento general del sistema. no se elevará demasiado alto.
2. Cómo funciona el caché
El principio de funcionamiento del caché se basa en la localidad de acceso al programa informático. El análisis de una gran cantidad de programas típicos muestra que en un corto intervalo de tiempo, las direcciones generadas por el programa a menudo se concentran en un pequeño rango de espacio de direcciones lógicas de memoria. El acceso a estas direcciones tiende a concentrarse en el tiempo. La selección de la distribución de datos y la unidad de trabajo puede hacer que la dirección de memoria esté relativamente concentrada. Este fenómeno de acceder con frecuencia a direcciones de memoria local y rara vez acceder a direcciones fuera de este rango se denomina localidad de acceso al programa. Según el principio de localidad del programa, proporciona una base teórica para la existencia de caché. Con base en este principio, el sistema lee continuamente pequeños conjuntos de instrucciones posteriores asociados con el conjunto de instrucciones actual desde la memoria al caché y luego los transfiere a la CPU a alta velocidad, logrando así igualar la velocidad.
3. Estructura jerárquica de la caché
La caché de la CPU es jerárquica y generalmente consta de L1 y L2. Generalmente, la caché L1 es la más rápida y la más cercana al núcleo de la CPU, pero tiene una capacidad menor, mientras que la caché L2 es un poco más lenta, pero tiene una capacidad mayor. La razón principal de la estructura jerárquica de la caché es que en un sistema de caché L1 típico, el 80% de las aplicaciones de memoria son internas a la CPU y sólo el 20% de las aplicaciones de memoria tratan con memoria externa. El 80% de este 20% de aplicaciones de memoria externa tratan con caché L2. Por lo tanto, adoptar una estructura jerárquica será más propicio para mejorar la eficiencia y asignar racionalmente los costos.
Este diseño de caché en niveles ayuda a cerrar la brecha cada vez mayor entre las velocidades de memoria del procesador y del sistema. La velocidad del procesador aumenta aproximadamente un 50% cada año, mientras que la velocidad de acceso a la DRAM sólo aumenta un 5% cada año. A medida que la diferencia de rendimiento empeora, la CPU agregará tres o incluso cuatro niveles de caché.
4. Composición de la caché
En la actualidad, la caché utiliza básicamente memoria SRAM, que es la abreviatura de RAM estática en inglés. Es una memoria con capacidades de acceso a memoria estática que no requiere actualizar el circuito para guardar los datos almacenados en él. A diferencia de la memoria DRAM, que no requiere un circuito de actualización, la DRAM debe actualizarse y cargarse de vez en cuando; de lo contrario, los datos internos desaparecerán. Por lo tanto, la SRAM tiene un alto rendimiento, pero también tiene desventajas, es decir, una baja integración. Las memorias DRAM con la misma capacidad se pueden diseñar en un tamaño pequeño, pero la SRAM requiere un gran volumen, lo que también es una razón importante por la que la capacidad de caché actual no puede ampliarse demasiado. Sus características se resumen a continuación: ventajas, ahorro de energía, velocidad rápida, no es necesario cooperar con el circuito de actualización de memoria y puede mejorar la eficiencia general del trabajo. Desventajas: baja integración, gran volumen con la misma capacidad, precio alto, pequeña cantidad utilizada en sistemas clave para mejorar la eficiencia.
2. Historia del desarrollo de la caché de CPU
La caché se utilizó por primera vez en el campo de la CPU y ahora es la más utilizada y profunda en el campo de la CPU. Primero, hablemos brevemente sobre el proceso histórico de cambios de caché con el desarrollo de la CPU.
1, 80486 comienza a tener caché interno.
El concepto de caché no existía en los inicios de la PC. Debido a que la frecuencia principal de la CPU es muy baja, el tiempo de acceso a la DRAM es incluso más rápido que el de la CPU, por lo que no hay necesidad de almacenamiento en caché. Los cachés externos comenzaron a aparecer en la era 80386. El caché apareció oficialmente en la CPU en la era 80486. 80486 en realidad está compuesto por el coprocesador digital 80386 más 80387, con una frecuencia más alta y un caché interno de 8kB.
El chip 80486 contiene un caché de 8kB para almacenar instrucciones y datos. Al mismo tiempo, 80486 también puede utilizar el caché de segundo nivel fuera del procesador para mejorar el rendimiento del sistema y reducir el ancho de banda del bus requerido por 80486.
2. La tecnología de almacenamiento en caché se desarrolló rápidamente en la era anterior.
Pentium no solo separa la caché L1 de la caché L2, sino que también requiere acceso dual a comandos y datos porque el procesador Pentium utiliza una estructura superescalar con dos canales de enteros paralelos. Para evitar que estos accesos interfieran entre sí, Intel dividió el caché interno utilizado en el 486 en dos cachés de código independientes de 8kB y caché de datos de 8kB a los que se puede acceder simultáneamente. Esta estructura de caché de doble canal reduce los conflictos causados por la contención por el caché y aumenta la eficiencia del procesador. El caché de Pentium también utiliza un método de escritura de reescritura, que puede mejorar la tasa de aciertos de caché en comparación con el método de escritura de paso del 486. Además, se adopta un protocolo de coherencia de caché llamado MESI para garantizar la coherencia de los datos en un entorno multiprocesador. Pentium MMX aumenta la capacidad de L1 y mejora los algoritmos relacionados.
3. La caché L2 integrada aparece en Pentium Pro.
Si desea que el rendimiento del Pentium Pro supere al del Pentium, debe utilizar métodos de diseño innovadores. Pentium Pro utiliza una caché L2 integrada de 512 kB de tamaño. En este punto, L2 ya está conectado directamente a la CPU mediante cables, lo que tiene la ventaja de reducir la necesidad de caché L1. La caché L2 se ejecuta de forma sincrónica con la CPU. Cuando falla la caché L1, se accede a la caché L2 inmediatamente sin demora adicional. Para reducir aún más la pérdida de rendimiento, L1 y L2 del Pentium Pro están diseñados para desbloquearse cuando la información a la que se accede no está en la memoria caché. Es decir, cuando no hay información requerida por la CPU en ninguna memoria caché, el acceso posterior a la memoria caché no se verá obstaculizado. Sin embargo, debido al proceso de fabricación de la CPU en ese momento, la tasa de rendimiento del caché L2 integrado del Pentium Pro era demasiado baja y el costo de producción era demasiado alto. Pentium Pro se convirtió en un producto de transición de corta duración.
4. Buses duales independientes de Pentium II
Pentium II es una versión mejorada de Pentium Pro, con instrucciones MMX, tecnología de ejecución dinámica y estructura de bus dual independiente. Pentium II también tiene dos niveles de caché, L1 es de 32 kB (el caché de instrucciones y el caché de datos son de 16 kB cada uno), que es el doble que el Pentium Pro. L2 es 512kB.
La principal diferencia entre Pentium II y Pentium Pro en el caché L2 es que el caché L2 ya no está en el chip integrado, sino que está conectado a la CPU a través de un bus de caché dedicado de 64 bits y está ensamblado. en el mismo módulo que otros componentes. En el sustrato, la "caja de contactos de un solo lado". Las estructuras de bus duales independientes desde el procesador hasta la memoria principal son el bus de caché L2 y el bus del sistema. El procesador Pentium II II puede utilizar estos dos buses al mismo tiempo. En comparación con un procesador con una estructura de bus único, el procesador puede acceder a más del doble de datos.
5. Mejoras adicionales en la caché Pentium III L2.
Pentiumⅲ también se basa en la estructura Pentium Pro, añadiendo más de 70 instrucciones multimedia basadas en las instrucciones multimedia MMX originales. Utiliza tecnología de ejecución dinámica y adopta una estructura de bus dual independiente. El Pentium III tiene 32 kB de caché L1 desbloqueado y 512 kB de caché L2 desbloqueado. L2 se puede expandir a 1 ~ 2 MB, la administración de la memoria es más razonable y los bloques de datos más grandes que el caché L2 se pueden procesar de manera efectiva, lo que hace que el acceso a la CPU, el caché y la memoria principal sea más razonable y mejora el rendimiento general del sistema. Al ejecutar programas de alto flujo de datos, la gestión eficiente de la caché permite a Pⅲ evitar el acceso innecesario a la caché L2. Rendimiento mejorado para multimedia y otras operaciones urgentes debido a la eliminación de fallas de almacenamiento en búfer. Para contenido almacenable en caché, P ⅲ mejora la velocidad al leer los datos esperados en el caché por adelantado, lo que mejora la tasa de aciertos del caché y reduce el tiempo de acceso.
En tercer lugar, el caché está en otros accesorios
Esencialmente, el caché es una tecnología de coincidencia de velocidad para dispositivos de alta y baja velocidad. No solo se utiliza para aumentar la velocidad. Memoria de lectura y escritura de CPU, también muy utilizada en otros accesorios de computadora. La tecnología de almacenamiento en caché es necesaria en el lento intercambio de datos entre otros dispositivos periféricos y la memoria, e incluso en la comunicación en red. Por extensión, la tecnología de coincidencia de velocidad de Cache se puede utilizar entre dispositivos con velocidades de transmisión muy diferentes.
1. Caché de la placa base
Antes del lanzamiento del Pentium II, la CPU solo tenía un caché L1 integrado internamente y el L2Cache se colocaba en la placa base. En la era Pentium, la PB SRAM (SRAM de ráfaga de tubería) síncrona de alta velocidad y gran capacidad se usa principalmente en placas base, generalmente de 256 KB o 512 KB. En ese momento, todavía existía el concepto de Tag SRAM en las placas base.
La SRAM etiquetada, o memoria de acceso aleatorio estática etiquetada, es una SRAM adicional que se utiliza con la caché en un sistema de caché. También es un caché y solo se usa para registrar datos de direcciones en el circuito de caché. Cuando la CPU quiere leer datos en una determinada dirección en la memoria principal, primero buscará en el circuito de caché, buscará y comparará los datos de dirección registrados en la etiqueta SRAM en el sistema de caché. Cuando los datos con esa dirección también se almacenan en la caché, el circuito de control de arbitraje del bus de caché leerá los datos a la CPU. Si no se puede encontrar la dirección de los datos comparando los datos de dirección registrados en la etiqueta SRAM, la CPU leerá los datos de la memoria principal. Por lo tanto, Tag SRAM tiene una gran relación con la tasa de aciertos de caché. Dado que la caché L2 ahora está integrada en la CPU, después de la PII no habrá caché integrada en la placa base.
2. Aplicación del caché de la CPU
En cuanto al historial de desarrollo del caché de la CPU, ya hemos hablado de ello. Este artículo presenta principalmente el estado actual del uso de la caché en las CPU convencionales.
Al igual que el último procesador Northwood P4, no solo se produce mediante un proceso de 0,13 micrones, sino que también se ha cambiado la arquitectura para mejorar la eficiencia informática (ciclos de instrucción). La capacidad de la caché L2 se ha incrementado a 512 K desde los 256 K del antiguo P4. El rendimiento mejoró aproximadamente un 10%.
La caché L2 del Tualatin Celeron utiliza una caché L2 de 256 KB (8 vías) de alta velocidad, que es aproximadamente del mismo tamaño que un Pentium III y es muy útil para mejorar el rendimiento de la CPU. El rendimiento del Tualatin Core Celeron es muy bueno, en gran parte debido al caché de alta velocidad de 256 KB. Esto también refleja plenamente el impacto del caché en el rendimiento de los accesorios de la computadora.
El Morgan de AMD en realidad tiene las mismas especificaciones que el duron de Palomino, pero el caché L2 dentro de la CPU es diferente. El punto más llamativo es la mejora del algoritmo de almacenamiento en caché. Morgan incluye una regla de lectura anticipada de datos basada en hardware. Esta función es que después de que la CPU haya procesado los datos, el dispositivo de lectura previa puede adivinar qué datos necesita la CPU. Si los datos no están en la memoria caché, el dispositivo de lectura anticipada recuperará automáticamente los datos de la memoria principal; si los datos ya existen en la memoria caché, la CPU los recuperará más rápido.
Athlon XP es sin duda el producto de mayor éxito de AMD este año. Utiliza tecnología de lectura anticipada de hardware similar a Pentium 4: ejecuta el caché de seguimiento para leer los datos que el procesador puede necesitar de la memoria principal al caché por adelantado. Este proceso puede mejorar significativamente la utilización del bus del sistema y el ancho de banda de la memoria, mejorando así el rendimiento del sistema.
Merced, que se utiliza principalmente para servidores, tiene requisitos de caché más altos. Por lo tanto, Intel desarrolló un nuevo caché en el chip y aumentó la capacidad del caché L1 para equilibrar la velocidad entre la CPU y la DRAM. Por lo tanto, se coloca otro caché al lado de la unidad de ejecución en el chip Merced, llamado caché L0, que es del tipo división instrucción/datos. Dado que L0Cache está físicamente más cerca de la unidad de ejecución que L1 y la distancia del cableado se acorta, la velocidad de intercambio de datos entre L0Cache y la unidad de ejecución es más rápida que L1, lo que puede aumentar aún más la frecuencia operativa. Al mismo tiempo, se debe configurar una caché L1 de gran capacidad de más de 1 MB dentro del chip. Las cachés en chip pueden aumentar más fácilmente las velocidades de transferencia de datos hacia y desde las unidades de ejecución que las cachés externas.
3. Caché del disco duro
En el sistema de disco de PC, el caché también se ha utilizado ampliamente. Para aumentar la velocidad de lectura y escritura de la memoria en el disco duro, es necesario establecer un caché de disco. Sin embargo, el caché del disco duro no requiere SRAM costosa, solo DRAM ordinaria, porque la velocidad de acceso a la memoria DRAM es lenta. la CPU y rápido para el disco. Esto se debe a que los sistemas de almacenamiento en disco implican el movimiento mecánico de los cabezales magnéticos, y el movimiento mecánico no se puede comparar con la velocidad de los electrones que transmiten señales eléctricas. En el pasado, la memoria caché integrada de los discos duros era sólo de unos 512 K. Ahora los discos duros generalmente aumentan la capacidad de la memoria caché a más de 2 M, y algunos productos incluso alcanzan los 8 M.
Dado que el caché del disco duro no requiere el uso de SRAM de alta velocidad, además de la SDRAM integrada interna, también podemos reservar un área en la memoria principal del sistema como un búfer de disco especial y usar una determinada estructura de datos para implementar La tecnología de caché secundaria de acceso al disco. El proceso de trabajo y el principio del caché del disco duro son similares a los del caché de la CPU. Todo el bloque de datos al que se accede se copia en el área del caché y luego la memoria se almacena en caché para leer los datos uno por uno. Dado que la transferencia de datos en el espacio RAM es mucho más rápida que la transferencia de datos entre la RAM y el disco, se mejora la velocidad de acceso al sistema.
A continuación se presenta el disco duro con caché de 8 MB WD1000BB-SE. Dado que la velocidad de lectura y escritura de la memoria es mucho mayor que la de los discos duros, la caché de gran capacidad puede aumentar efectivamente la velocidad de transferencia de datos de la memoria. Pero la mayoría de los discos duros actualmente en el mercado sólo tienen 512K - 2MB y 2MB de caché. La edición especial WD1000BB-SE de disco duro de 100 G y 7200 rpm lanzada por Western Digital hace algún tiempo tiene 33 G de almacenamiento por unidad, tipo de interfaz ATA100 y un tiempo de búsqueda promedio de 8,9 ms. Este parámetro no es especial en comparación con otros discos duros, pero. WD1000BB-SE aumenta directamente desde 2 MB la capacidad de caché del disco duro. Ha atraído una amplia atención en la industria. Después de muchas evaluaciones, debido al aumento en la capacidad de la caché, el rendimiento real de este disco duro con interfaz IDE se ha acercado o superado muchos discos duros con interfaz SCSI de 10.000 rpm, lo que lo convierte en el rey de la velocidad entre los discos duros IDE. Esto también refleja plenamente el impacto del caché en el rendimiento de los accesorios de la computadora.
4. Caché de la grabadora
La capacidad de la caché es uno de los indicadores técnicos importantes para medir el rendimiento de una grabadora de discos. Al grabar, los datos se deben escribir primero en el caché, luego el software de grabación llama los datos que se van a registrar desde el caché y los datos posteriores se escriben en el caché al mismo tiempo para mantener los datos que se van a escribir bien organizados y transmitido continuamente. Si los datos posteriores no se escriben en el búfer a tiempo, la interrupción de la transmisión provocará que falle la grabación. Por lo tanto, cuanto mayor sea la capacidad del buffer, mayor será la tasa de éxito de la grabación. La capacidad de caché de las grabadoras de CD del mercado suele oscilar entre 1 MB y 4 MB, siendo la mayor una caché de 8 MB. Especialmente para grabadoras con interfaces IDE, la capacidad de la caché es muy importante. Aumentar la caché no sólo es beneficioso para el funcionamiento estable de la grabadora, sino también para reducir el uso de la CPU. En resumen, el tamaño del caché es muy importante para una grabadora, cuanto mayor sea el caché, más estable será al grabar. Actualmente, existe en el mercado una variedad de grabadoras con caché de 8 M que, combinadas con otras tecnologías anti-escritura, pueden prevenir eficazmente fallas de grabación causadas por "insuficiencia de caché".
Las unidades ópticas comunes también tienen caché incorporada. Por supuesto, su función no es tan importante como la de una grabadora. Es principalmente mejorar la eficiencia de lectura del disco y reducir el uso de la CPU, por lo que la capacidad es relativamente pequeña, generalmente solo 512 K.
5. Almacenamiento en caché de otros dispositivos
Las aplicaciones de caché también están disponibles en otros accesorios de PC. Por ejemplo, en los sistemas de visualización, debido al rápido desarrollo de las aplicaciones 3D, la memoria de visualización de las tarjetas gráficas ahora generalmente alcanza más de 32 M, o incluso hasta 128 M, por lo que las tecnologías de almacenamiento en caché como caché de primer plano, caché de fondo, caché de profundidad, el caché de texturas, etc. se utilizan ampliamente.
Ahora existe la llamada CDRAM con caché (Cache DRAM), que es una SRAM especialmente construida e integrada en el chip de memoria. Si se desarrolla bien, puede convertirse en un recuerdo generalizado en unos pocos años. Además, incluso en las tarjetas de sonido, tarjetas RAID y tarjetas SCSI, existen cachés.
Cuarto, ajuste y aplicación de caché
1. Opciones relacionadas con la caché en BIOS
Sombra del disco de vídeo
ShadowRAM (o ROMShadow) es una tecnología de almacenamiento en caché especial que mejora la eficiencia del sistema. Copia el ROMBIOS del sistema en la placa base del sistema y el ROMBIOS de la tarjeta gráfica en la tarjeta adaptadora a la memoria RAM del sistema para ejecutarse, y sus direcciones aún usan las direcciones originales que ocupan en la memoria superior. Para ser más precisos, una parte del espacio de almacenamiento físico se extrae de la memoria extendida y se le asigna la dirección original de la ROM. Esta parte de la RAM extendida reemplaza la ROM original. Debido a que la ROM utiliza circuitos CMOS estáticos, la velocidad de acceso es de aproximadamente 200 ns, mientras que la memoria RAM del sistema utiliza circuitos CMOS dinámicos y la velocidad de acceso es de decenas de ns, que es varias veces más rápida. Copiar el código BIOS almacenado en la ROM (rutinas básicas de entrada y salida, que se llaman con mucha frecuencia cuando el sistema está en ejecución) a la RAM del sistema puede mejorar la velocidad y eficiencia del funcionamiento y visualización del sistema.
2)Caché interno de la CPU
Si el caché interno de la CPU está activado, generalmente está configurado como habilitado. Caché interno: si se utiliza el caché de la placa base, generalmente configurado en Habilitar. Comprobación ECC de caché L2 de CPU: la comprobación ECC de caché L2 de CPU se puede configurar como deshabilitada.
Literalmente, "caché interna de la CPU" y "caché externa" se refieren a la caché interna y externa de la CPU respectivamente, pero más exactamente debería ser la caché de primer nivel y la caché de segundo nivel. Solo hay un caché de primer nivel en la CPU con arquitectura Socket/Super 7, y el caché de segundo nivel se coloca en la placa base. Este es el origen de las dos expresiones "interno" y "externo". Para CPU como Pⅱ, Pⅲ y K6-ⅲ, el caché de segundo nivel también está integrado en la CPU y las descripciones interna y externa no son precisas, por lo que algunas placas base con ranura 1 lo modificaron y le cambiaron el nombre a "nivel de CPU". . A menos que el sistema falle cuando se enciende, estas dos opciones deben configurarse en Habilitadas para acelerar la lectura de la memoria de la CPU.
3) Retraso de la caché L2
En la BIOS también podemos ajustar el retraso de la caché de segundo nivel, que tiene 16 valores (1~15). En teoría, cuanto menor sea el valor, menor será la latencia y mayor será el rendimiento. Si este valor se establece en un valor demasiado pequeño, la caché de segundo nivel puede dejar de funcionar y no sólo el rendimiento del sistema disminuirá drásticamente, sino que también puede ocurrir una falla. La caché L2 tiene un gran impacto en el ancho de banda de la memoria. No importa cuán alta sea la frecuencia de la CPU, es inútil si otros dispositivos no pueden mantener el ritmo. Aumentar el retraso de la caché puede hacer que la máquina sea más estable y evitar la situación anterior.
4) El BIOS del sistema se puede almacenar en caché
"El BIOS del sistema se puede almacenar en caché", "El BIOS de video se puede almacenar en caché" y "La RAM de video se puede almacenar en caché", respectivamente, especifican si el segundo nivel El caché se puede utilizar para almacenar en caché el BIOS del sistema, el BIOS de gráficos y la memoria de pantalla. Después del almacenamiento en caché, se acelerará la velocidad de ejecución de las llamadas al BIOS y la velocidad de acceso a la memoria de la pantalla. Es mejor configurarlo en Habilitado. Sin embargo, algunas tarjetas gráficas pueden experimentar problemas de compatibilidad cuando la memoria de visualización se puede almacenar en caché. En este punto, considere configurar el tercer elemento como deshabilitado.
2. Ajuste el sistema de optimización de la caché
Si su aplicación requiere acceso frecuente al disco duro, puede establecer una caché de disco de "escritura directa" en la memoria extendida o expandida. Los usuarios pueden agregar la línea de comando: c:\dos\smartdrv.exe en el archivo autoexec.bat y el controlador se cargará automáticamente en la memoria de alta gama. El valor predeterminado para su búfer de disco es 256 KB, puede cambiar el tamaño de este valor. Generalmente, es más apropiado configurarlo en aproximadamente 1/8 de la memoria física. SMARTDRV.EXE, controlador de dispositivo externo. Utilice este programa para iniciar o configurar la caché del disco. A diferencia de Cache, Cache aprovecha al máximo la velocidad de la CPU, mientras que SMARTDRV acelera las velocidades de lectura y escritura del disco. en aplicaciones prácticas. Cada vez que una aplicación utiliza datos del sector del disco, el controlador de caché EXT recuerda los datos y, en lugar de acceder a la unidad de disco, accede a un área de memoria que ya contiene los datos.
En términos generales, el caché en las PC se utiliza principalmente para resolver el problema de coincidencia de velocidad entre dispositivos de alta velocidad y dispositivos de baja velocidad. Es una tecnología utilizada para mejorar el rendimiento del sistema y reducir los costos del sistema. Con el rápido desarrollo de la tecnología informática, la caché se ha convertido en una parte indispensable de la mayoría de los accesorios de las PC y en un indicador importante del rendimiento del sistema. Teniendo en cuenta la rentabilidad del sistema, la configuración de la caché seguirá siendo una de las tecnologías importantes en los PC durante mucho tiempo.