Memoria SRAM: Qué es y cómo gestionan la información

Todas las instrucciones que ejecuta el procesador se cargan en una memoria de tipo SRAM (Static Random Access Memory) para tener un rápido acceso según sean requeridas.

¡En este post te mostraré qué es y cómo gestionan la información! 🙂 

Memoria SRAM cómo funciona


¿Qué es una Memoria SRAM?

En términos sencillos, una Memoria es un conjunto de espacios disponibles en los cuales podemos consultar y almacenar información temporalmente.

Las memorias de acceso aleatorio poseen una característica que las hacen excepcionales: ¡Pueden leer escribir datos con un tiempo de espera igual en cualquiera de sus posiciones!  

De esta forma, no es necesario seguir un orden para acceder a la información. 


Particularmente, debido a la tecnología que utilizan las Memorias SRAM, son capaces de conservar la información (mientras sigan alimentadas) sin necesidad de un 
refrescamiento de memoria

Estas cualidades la hacen una memoria de vital importancia a la hora de ayudar en las tareas de procesamiento de nuestros dispositivos.

Veamos cómo administra la información en la siguiente sección 👀


Gestión de Información: Dirección en Memoria y los Datos

Haciendo una analogía con las casas, para poder llegar a un sitio en particular, debemos tener una dirección. Las direcciones identifican de forma única a cada casa o edificio en una ciudad. 

Gracias a esta nomenclatura sabemos a dónde debemos ir.

De igual forma, para poder acceder a un espacio en la memoria y obtener o almacenar información, debemos saber cuál es la dirección que hace referencia al espacio en memoria sobre el que queremos trabajar (leer/escribir).

Representando este concepto con un ejemplo:

Imaginemos una Memoria de 4 espacios. El siguiente sería su estado inicial: 

Espacio 0 (dirección para acceder: 0)
Espacio 1 (dirección para acceder: 1)
Espacio 2 (dirección para acceder: 2)
Espacio 3 (dirección para acceder: 3)

Ejemplo práctico

A partir de ahora las direcciones de la memoria las representaremos en binario. De esta forma, las direcciones 0, 1, 2 y 3 serían los números 00, 01, 10 y 11 respectivamente.

Una Memoria que almacena el dato 0 en todos sus espacios, tendría el siguiente estado:
  • Dirección en memoria 00: Dato 0
  • Dirección en memoria 01: Dato 0
  • Dirección en memoria 10: Dato 0
  • Dirección en memoria 11: Dato 0

Ahora, guardemos el Dato: 1 en las direcciones 01 y 10. Quedaría nuestra memoria de la siguiente forma:
  • Dirección en memoria 00: Dato 0
  • Dirección en memoria 01: Dato 1
  • Dirección en memoria 10: Dato 1
  • Dirección en memoria 11: Dato 0

En esta sección vimos el ejemplo de una Memoria con las siguientes características:
  • Tamaño de datos igual a 1 bit: Con 1 bit podemos almacenar los datos: 0 y 1
  • Tamaño de direccionamiento de 2 bits: Con 2 bits, la Memoria puede referenciar 4 posiciones: 00, 01, 10 y 11.


Manejo de datos

Para explicar la forma de acceso y manipulación de los datos, representaremos la memoria de almacenamiento SRAM con la siguiente imagen :

Lectura

A continuación se detallan las partes que intervienen en la lectura de información:
  • (A) Address: Dirección de acceso en memoria.
  • (D) Data: Muestra el valor almacenado en la dirección solicitada.
Al cambiar la Dirección de acceso en memoria (A), el valor almacenado en la dirección solicitada es mostrado en la salida (D). Revisemos los siguientes ejemplos:

  • El valor almacenado en la dirección de memoria 00 es 0
  • El valor almacenado en la dirección de memoria 01 es 1
  • El valor almacenado en la dirección de memoria 10 es 1
  • El valor almacenado en la dirección de memoria 11 es 0

Escritura

A continuación se detallan las partes que intervienen en la escritura de información:

(A) Address: Dirección de acceso en memoria.



(D) Input: Valor a ser guardado en la dirección.


(Str) Store: Si es 1, almacenar el valor de Input en la Memoria 


Clock: Valor de la Memoria se actualiza cuando cambia de 0 a 1

Al activar el reloj estando en modo escritura (Str = 1), se procede a guardar la información input (D) en la dirección (A) de Memoria:






    Conclusión

    En este artículo pudimos ver cómo acceder y escribir datos en una Memoria. En este caso de tipo SRAM. 

    También aclaramos algunos términos de las Memorias como lo son el acceso aleatorio y expusimos importancia de la dirección en memoria para poder trabajar con la información en procesos de lectura y escritura.




    Entradas más populares de este blog

    Instrucciones JUMP y BRANCH

    Estructura básica de las instrucciones MIPS