• No se han encontrado resultados

La siguiente tabla muestra los comandos que pueden ser enviados  a la memoria 

utilizando las  líneas  CS, RAS,  CAS y WE,  la  descripción cada  comando  se  presenta 

posteriormente. 

   

Tabla 3.3 Comandos válidos para la memoria SDRAM. 

Comando  CS RAS CAS WE DQM  ADDR

COMMAND INHIBIT (NOP)  H X X X X  X

NO OPERATION (NOP)  L H H H X  X

ACTIVE (Selección de banco y fila activa) L L H H X  Banco / Fila

READ(Selección de banco y columna activa, 

inicia la ráfaga de lectura) 

L H L H L/H  Banco / 

Columna

WRITE(Selección de banco y columna activa, 

inicia la ráfaga de escritura) 

L H L L L/H  Banco / 

Columna

BURST TERMINATE  L H H L X  X

PRECHARGE (Desactiva la fila actualmente activa 

en uno o todos los bancos) 

L L H L X  Código

AUTOREFRESH  L L L H X  X

LOAD MODE REGISTER  L L L L X  Código de 

operación

 

3.5.1 COMMAND INHIBIT

Evita  que  cualquier  comando  nuevo  sea  ejecutado  por  la  SDRAM 

independientemente de si la señal CLK está habilitada o no. El chip de memoria es 

deseleccionado, inhibiendo cualquier nueva operación sin afectar las operaciones en 

progreso. 

 

3.5.2 NO OPERATION (NOP)

Este comando no realiza operación alguna en la memoria, únicamente es utilizado  para prevenir la ejecución de comandos no deseados que pudieran registrarse mientras la  memoria se encuentra en estados inactivos o de espera. Las operaciones en progreso no  son afectadas por este comando. 

3.5.3 LOAD MODE REGISTER

Este comando es utilizado para programar el registro de modo mediante un código  de operación enviado a través de las líneas de direcciones A[12:0]. La programación del  registro de modo solo puede efectuarse cuando todos los bancos de la memoria están 

inactivos, y cualquier comando subsecuente no puede ser ejecutado sino hasta que se 

haya cumplido el periodo tMRD (2 ciclos de reloj).  

 

3.5.4 ACTIVE

El comando ACTIVE es usado para “abrir” o activar una fila dentro de un banco en  particular para su posterior acceso. El valor de las líneas BA0 y BA1 que se registra  coincidente con el comando ACTIVE selecciona el banco y las líneas A[12:0] seleccionan la  fila. La fila “abierta” permanece activa y puede ser accedida mientras no se aplique un 

comando PRECHARGE. 

 

3.5.5 READ

Este comando es utilizado para iniciar una ráfaga de lectura en la fila activada 

mediante un comando ACTIVE previo. Las líneas BA0 y BA1 seleccionan el banco y las 

líneas A[8:0] seleccionan dirección de la columna inicial de acceso. La línea A10 determina 

si la opción AUTOPRECHARGE está habilitada o no. Si esta opción está habilitada, la fila 

que está siendo accedida será desactivada al finalizar la operación de lectura; si no está 

habilitada, la fila permanecerá activa y puede ser accedida para operaciones posteriores. 

Los datos leídos aparecen en las líneas de datos DQ dependiendo del nivel lógico que las 

entradas de enmascaramiento DQM presentaban dos ciclos antes de la ejecución del 

comando READ. Si estas entradas estaban en un nivel alto, las líneas de datos DQ serán 

puestas en alta impedancia dos ciclos después; si estaban en un nivel bajo, en las líneas de 

DQ aparecerán los datos leídos.   

3.5.6 WRITE

Este comando es utilizado para iniciar una ráfaga de escritura en la fila activada  mediante un comando ACTIVE previo. Las líneas BA0 y BA1 seleccionan el banco y las  líneas A[8:0] seleccionan dirección de la columna inicial de acceso. La línea A10 determina  si la opción AUTOPRECHARGE está habilitada o no. Los datos puestos en las líneas DQ son  escritos en la memoria dependiendo del nivel lógico de DQM. Si las entradas DQM están  en bajo, los datos son escritos en la memoria; de lo contrario los datos son ignorados y no  se escriben en la memoria. 

 

3.5.7 PRECHARGE

La acción de este comando es la de desactivar una fila que previamente ha sido  activada, ya sea en un banco en particular o en todos los bancos. Los bancos estarán 

disponibles para acceder a cualquier fila solo después de que haya transcurrido el periodo 

tRP después de la ejecución del comando PRECHARGE. La línea A10 determina si la fila se  desactiva en uno o todos los bancos; si es solo en un banco (A10 = ‘0’), éste se selecciona 

mediante BA0 y BA1. El valor de las líneas BA0 y BA1 no importa cuando la operación es 

en todos los bancos (A10 = ‘1’). Después de la ejecución de PRECHARGE los bancos o  el 

banco seleccionado están inactivos y antes de realizar cualquier operación de lectura o 

escritura deben ser activados mediante un comando ACTIVE. 

 

3.5.8 BURST TERMINATE

Usado para interrumpir cualquier ráfaga de acceso ya sea de escritura o lectura. 

Cualquier comando READ o WRITE registrado previo a la ejecución de BURST TERMINATE 

es interrumpido, la fila a la cual se tenía acceso permanece activa hasta que se ejecute un 

comando PRECHARGE. 

3.5.9 AUTO REFRESH

Para mantener la integridad de los datos almacenados en la memoria es necesario  refrescar cada una de las localidades que integran la memoria. Para esto se utiliza el 

comando  AUTOREFRESH,  básicamente  el  proceso  de  refresco  consiste  en  leer  una 

localidad de memoria y escribir nuevamente en ella para evitar que los niveles de voltaje  almacenado en cada celda de la memoria  decaigan hasta un nivel en que la información  ya no sea válida. En cada ciclo del comando AUTOREFRESH se refresca toda una fila de la 

memoria.  Para  ejecutar  este  comando  es  necesario  que  todos  los  bancos  sean 

desactivados previamente, mediante PRECHARGE, y esperar el periodo tRP (20ns mínimo) 

posterior a la ejecución de PRECHARGE. La dirección de la fila que se refresca no depende 

de las líneas de direcciones A[12:0] ya que la memoria cuenta con un controlador interno 

de refresco que genera automáticamente las direcciones de fila. La memoria SDRAM de 

256Mb  requiere  de  8192  ciclos  de  AUTOREFRESH  cada  64  ms,  los  cuales  pueden 

distribuirse en todo este periodo (1 cada 7.81µs) o pueden ejecutarse como una ráfaga de 

8192 comandos AUTOREFRESH cada 64ms. 

 

Documento similar