Articulo de referencia

latencia CAS

La latencia de la señal de activación de la columna (CAS ), también llamada latencia CAS o CL , es el retraso en ciclos de reloj entre el comando READ y el momento en que los da...

La latencia de la señal de activación de la columna (CAS ), también llamada latencia CAS o CL , es el retraso en ciclos de reloj entre el comando READ y el momento en que los datos están disponibles. [ 1 ] [ 2 ] En la DRAM asíncrona , el intervalo se especifica en nanosegundos (tiempo absoluto). [ 3 ] En la DRAM síncrona , el intervalo se especifica en ciclos de reloj. Debido a que la latencia depende de un número de ciclos de reloj en lugar de tiempo absoluto, el tiempo real que tarda un módulo SDRAM en responder a un evento CAS puede variar entre usos del mismo módulo si la frecuencia de reloj difiere.

Antecedentes de la operación de RAM

La memoria RAM dinámica (DRAM) está organizada en una matriz rectangular. Cada fila se selecciona mediante una línea de palabra horizontal . Al enviar una señal lógica alta a lo largo de una fila determinada, se activan los MOSFET presentes en ella, conectando cada condensador de almacenamiento a su correspondiente línea de bit vertical . Cada línea de bit está conectada a un amplificador de detección que amplifica la pequeña variación de voltaje producida por el condensador de almacenamiento. Esta señal amplificada se emite desde el chip DRAM y se realimenta a través de la línea de bit para actualizar la fila.

Cuando ninguna línea de palabra está activa, la matriz está inactiva y las líneas de bits se mantienen en un estado precargado [ 4 ] , con un voltaje a medio camino entre alto y bajo. Esta señal indeterminada se desvía hacia alto o bajo mediante el condensador de almacenamiento cuando se activa una fila.

Para acceder a la memoria, primero se debe seleccionar una fila y cargarla en los amplificadores de detección. Esta fila queda entonces activa y se puede acceder a las columnas para lectura o escritura.

La latencia CAS es el tiempo transcurrido entre el momento en que la dirección de columna y la señal de activación de la dirección de columna (CAS) se presentan al módulo de memoria y el momento en que el módulo de memoria pone a disposición los datos correspondientes. La fila deseada debe estar activa; de lo contrario, se requiere tiempo adicional.

Por ejemplo, un módulo de memoria SDRAM típico de 1 GiB podría contener ocho chips DRAM de un gibibit cada uno, con una capacidad de almacenamiento de 128 MiB . Cada chip se divide internamente en ocho bancos de 2²⁷ = 128 Mibits , cada uno de los cuales conforma una matriz DRAM independiente. Cada banco contiene 2¹⁴ = 16384 filas de 2¹³ = 8192 bits cada una. Se accede a un byte de memoria (de cada chip; 64 bits en total del DIMM) proporcionando un número de banco de 3 bits, una dirección de fila de 14 bits y una dirección de columna de 13 bits.

Efecto sobre la velocidad de acceso a la memoria

Con la DRAM asíncrona, el acceso a la memoria se realizaba mediante un controlador de memoria en el bus de memoria, basado en una temporización fija en lugar de un reloj, y era independiente del bus del sistema. [ 3 ] Sin embargo, la DRAM síncrona tiene una latencia CAS que depende de la frecuencia del reloj. Por consiguiente, la latencia CAS de un módulo de memoria SDRAM se especifica en ciclos de reloj en lugar de tiempo absoluto.

Debido a que los módulos de memoria tienen múltiples bancos internos, y se pueden enviar datos desde uno durante la latencia de acceso para otro, los pines de salida pueden mantenerse 100% ocupados independientemente de la latencia CAS mediante la segmentación ; el ancho de banda máximo alcanzable está determinado únicamente por la velocidad del reloj. Desafortunadamente, este ancho de banda máximo solo se puede alcanzar si la dirección de los datos que se van a leer se conoce con suficiente antelación; si la dirección de los datos a los que se accede no es predecible, pueden producirse bloqueos en la segmentación , lo que resulta en una pérdida de ancho de banda. Para un acceso a memoria completamente desconocido (también conocido como acceso aleatorio), la latencia relevante es el tiempo para cerrar cualquier fila abierta, más el tiempo para abrir la fila deseada, seguido de la latencia CAS para leer los datos de ella. Sin embargo, debido a la localidad espacial , es común acceder a varias palabras en la misma fila. En este caso, la latencia CAS por sí sola determina el tiempo transcurrido.

Dado que las latencias CAS de los módulos DRAM modernos se especifican en ciclos de reloj en lugar de tiempo, al comparar latencias a diferentes velocidades de reloj, es necesario convertirlas a tiempos absolutos para realizar una comparación justa; una latencia CAS numérica más alta puede representar menos tiempo si el reloj es más rápido. Del mismo modo, un módulo de memoria con una frecuencia de reloj reducida podría tener su número de ciclos de latencia CAS disminuido para mantener el mismo tiempo de latencia CAS.

La memoria RAM de doble velocidad de datos (DDR) realiza dos transferencias por ciclo de reloj, y generalmente se describe mediante esta tasa de transferencia. Dado que la latencia CAS se especifica en ciclos de reloj, y no en transferencias (que ocurren tanto en el flanco ascendente como en el descendente del reloj), es importante asegurarse de que se utilice la frecuencia de reloj (la mitad de la tasa de transferencia) para calcular los tiempos de latencia CAS.

Otro factor que complica la situación es el uso de transferencias en ráfaga. Un microprocesador moderno puede tener una línea de caché de 64 bytes, lo que requiere ocho transferencias desde una memoria de 64 bits (ocho bytes) para llenarse. La latencia CAS solo puede medir con precisión el tiempo de transferencia de la primera palabra de memoria; el tiempo de transferencia de las ocho palabras también depende de la velocidad de transferencia de datos. Afortunadamente, el procesador normalmente no necesita esperar a que se transfieran las ocho palabras; la ráfaga se suele enviar en orden de palabra crítica primero , y el microprocesador puede utilizar la primera palabra crítica inmediatamente.

En la tabla siguiente, las tasas de datos se expresan en millones de transferencias —también conocidas como megatransferencias— por segundo (MT/s), mientras que las frecuencias de reloj se expresan en MHz, millones de ciclos por segundo.

Ejemplos de temporización de memoria

Notas

  1. Tiempo de transferencia = 1 / Velocidad de datos.
  2. Tasa de comandos = Tasa de datos / 2 para doble tasa de datos (DDR), Tasa de comandos = Tasa de datos para tasa de datos simple (SDR).
  3. Tiempo de ciclo = 1 / Tasa de comandos = 2 × Tiempo de transferencia.
  4. 1 2 3 N -ésima palabra = [(2 × latencia CAS) + (N − 1)] × Tiempo de transferencia.

Véase también

Referencias

  1. Stokes, Jon "Hannibal" (1998–2004). "Guía de RAM de Ars Technica, Parte II: DRAM asíncrona y síncrona" . Ars Technica. Archivado del original el 1 de noviembre de 2012.
  2. Jacob, Bruce L. (10 de diciembre de 2002), Arquitecturas, organizaciones y tecnologías alternativas de DRAM síncrona (PDF) , Universidad de Maryland
  3. 1 2 Evolución de la tecnología de memoria: una visión general de las tecnologías de memoria del sistema , HP, julio de 2008
  4. Keeth, Brent; Baker, R. Jacob; Johnson, Brian; Lin, Feng (4 de diciembre de 2007). Diseño de circuitos DRAM: temas fundamentales y de alta velocidad . John Wiley & Sons. ISBN 978-0470184752.
  • Hoja de cálculo de Google: Comparaciones de tiempos de memoria introducidas por el usuario y ejemplos de tiempos de memoria (solo latencia CAS)
  • Hoja de cálculo de Google: Tabla comparativa completa de tiempos reales de la memoria RAM DDR4
  • PCSTATS: Ancho de banda de memoria frente a tiempos de latencia
  • Cómo funciona el acceso a la memoria
  • Guía de hardware de Tom: Sincronizaciones ajustadas frente a altas frecuencias de reloj
  • Comprender los tiempos de la memoria RAM
  • AnandTech: Todo lo que siempre quisiste saber sobre la memoria SDRAM pero tenías miedo de preguntar.