Topic outline
-
CIRCUITOS Y SISTEMAS DIG. V - P1085-TEÓRICO-PRACTICO-N0130-07-N01
PRIMER NIVEL
CHARLES EDISSON ESCOBAR TERáN
—
-
Memorias
-
Introducción
En el corazón de cualquier sistema computacional moderno se usan dos tipos de memorias que determinan la velocidad, la capacidad y la confiabilidad del dispositivo: las memorias volátiles de alta velocidad y las memorias no volátiles de almacenamiento masivo. En esta sección se revisa la arquitectura y funcionamiento de estas tecnologías que han definido la evolución del hardware en las últimas décadas: la DRAM clásica, su evolución sincrónica (SDRAM) y la familia DDR, así como las memorias flash NAND y NOR. Comprender cómo se almacena, se refresca, se accede y se deteriora cada bit en estos dispositivos es la clave para elegir el componente correcto, dimensionar un sistema, prever cuellos de botella y entregar la experiencia de usuario que la sociedad digital demanda.
Es importante también conocer el ciclo de vida de un dato desde que nace en una celda de condensador que se descarga milisegundos después, hasta que se almacena de forma permanente en una celda de carga atrapada que resistirá años de lecturas, escrituras y borrados. Veremos por qué la DDR5 puede mover más de 500 Gb por segundo mientras la NOR flash permite que un microcontrolador arranque en microsegundos, y por qué la NAND TLC ofrece terabytes a precio de un café pero requiere algoritmos de corrección de errores complejos.
Memoria NAND Flash
Es una arquitectura de memoria flash que prioriza la densidad y el costo por bit, ideal para aplicaciones de almacenamiento masivo. Su nombre proviene de la puerta lógica NAND, que describe la forma en que se conectan las celdas de memoria. Estructura y Funcionamiento.
Memoria NOR Flash
Es un tipo principal de memoria flash, diseñada para aplicaciones que re-quieren acceso aleatorio rápido y ejecución de código directamente desde la memoria (execu-te in place, XIP). A diferencia de NAND, la NOR permite leer datos byte por byte, lo que la hace ideal para almacenar firmware o sistemas operativos embebidos.
-
5.5 Memorias DRAM, SDRAM y DDR SDRAM
Las memorias DRAM (Dynamic Random Access Memory) son un tipo de memoria volátil ampliamente utilizada en sistemas computacionales como PCs, servidores y dispositivos móviles. Su principal característica es que almacenan cada bit de datos en un condensador dentro de un circuito integrado. Debido a que estos condensadores se descargan con el tiempo, las memorias DRAM requieren refresco periódico para mantener la integridad de los datos, lo que las diferencia de las memorias SRAM (Static RAM), que no necesitan refresco.
De manera general el tiempo de acceso es una característica importante de los dispositivos de almacenamiento ya que nos indica cuanto se tarda en una operación de lectura de un dato de la memoria (Recabarren & Recabarren, 2020)
5.5.1. Funcionamiento Básico de la DRAM
Cada celda de memoria en una DRAM está compuesta por un condensador y un transistor. El condensador almacena la carga eléctrica que representa un bit (1 o 0), mientras que el transistor actúa como interruptor que permite al controlador de memoria leer o escribir en la célda. Debido a que la carga del condensador se pierde con el tiempo, es necesario releer y reescribir los datos periódicamente, proceso conocido como refresco y que caracteriza a las memorias dinámicas.
Aprende más
En este enlace puede revisar con detalle cómo funciona la memoria RAM, así como sus distintas tecnologías ¡Accede aquí!
La Figura 1 muestra el esquema clásico de una celda DRAM formada por un transistor NMOS (T) y un condensador (C) a los que se conectan la línea de palabra (WL), que es la señal que sale de la fila del decodificador y cuando se pone a ‘1’ enciende el transistor. La línea de bit (BL) transporta el dato hacia/desde el amplificador de lectura (sense amplifier).
En el ciclo de lectura se precarga la línea de bit a Vdd/2 (todos los BL quedan flotando) y se activa WL, con lo que el transistor conduce y comparte la carga del condensador con la línea de bit.
Si C estaba cargado (1 lógico) → BL sube ligeramente.
Si C estaba descargado (0 lógico) → BL baja ligeramente.
El amplificador de lectura (sense amplifier) detecta la minúscula diferencia ΔV y la amplifica a nivel lógico completo. Al mismo tiempo se reescribe el valor leído de vuelta en C (porque la lectura destruye la carga original).
En el ciclo de escritura se coloca el dato (0 o 1) sobre BL y se activa WL con lo que el transistor conecta C a BL.
El condensador se carga o descarga hasta el nivel de BL quedando almacenado el bit.
Dado que el condensador tiene fugas (corriente de unión del transistor, resistencia del sustrato), tras unos milisegundos la carga puede cambiar lo suficiente como para perder el dato, por tanto el controlador DRAM lee cada fila periódicamente y reescribe el valor leído, restaurando la carga original (refresh).
Este tipo de celda tiene la ventaja de que requiere solo un transistor y un capacitor, lo que se traduce en un área mínima, alta densidad y bajo costo por bit y es compatible con procesos CMOS estándar.
Por otro lado tiene como desventajas la lectura destructiva, la necesidad de amplificadores de lectura muy sensibles y consumo adicional de energía por los ciclos de refresco.
Figura 1
Celda DRAM
Nota. Elaborado por (Escobar C, 2025) La Figura 2 muestra un arreglo de 4 celdas DRAM, dónde se puede apreciar que la configuración de una celda se replica y se establece una matriz de almacenamiento organizada por filas y columnas, donde se puede acceder individualmente a cada una de las celdas tanto para lectrua como para escritura
Figura 2
Arreglo de 4 celdas DRAM
Nota. Elaborado por (Escobar C, 2025) 5.5.2. Evolución hacia SDRAM
La SDRAM (Synchronous DRAM) es una evolución de la DRAM tradicional que sincroniza sus operaciones con el reloj del sistema. Esto permite una mejor coordinación entre la memoria y el procesador, mejorando el rendimiento general del sistema. A diferencia de la DRAM asíncrona, donde el controlador debe esperar a que la memoria esté lista, la SDRAM opera en ciclos de reloj definidos, lo que permite transferencias más rápidas y predecibles.
Entre las características clave de la SDRAM se pueden identificar las siguientes:
Sincronización con el reloj del sistema: permite operaciones más rápidas y eficientes.
Burst mode: permite leer o escribir bloques consecutivos de datos en un solo ciclo.
Paginación interna: mejora el acceso a datos en la misma fila de memoria.
5.5.3. DDR SDRAM: Double Data Rate
La DDR SDRAM (Double Data Rate SDRAM) es una mejora significativa sobre la SDRAM convencional. Su principal innovación es la capacidad de transferir datos dos veces por ciclo de reloj, una en el flanco ascendente y otra en el flanco descendente. Esto duplica teóricamente la tasa de transferencia de datos sin aumentar la frecuencia del reloj.
Dada esta característica las memorias DDR se han convertido en el estándar de facto de la industria, incrementando en cada generación su velocidad y capacidad. Así:
- DDR: velocidades de transferencia entre 200 y 400 MT/s (Mega Transferencias por segundo).
- DDR2: mejora la velocidad y reduce el consumo de energía. Velocidades entre 400 y 800 MT/s.
- DDR3: aumenta aún más la velocidad (hasta 1600 MT/s) y reduce el voltaje.
- DDR4: velocidades entre 1600 y 3200 MT/s, menor consumo y mayor densidad.
- DDR5: más reciente, con velocidades superiores a 4800 MT/s, mayor ancho de banda y eficiencia energética**.
**DDR5 trae incorporado un circuito integrado de gestión de energía (PMIC, Power Management Integrated Circuit) sobre la misma barra DIMM, en lugar de depender únicamente de la alimentación que llega desde la placa base.
La tabla 1 muestra una comparativa entre las distintas generaciones de memorias DDR y como han ido evolucionando e incrementando su velocidad y capacidad.
Tabla 1
Comparativa de tecnologías de memoriaDDR
Característica
DDR (DDR1)
DDR2
DDR3
DDR4
DDR5
Año de lanzamiento
~2000
~2003
~2007
~2014
~2020
Voltaje Estándar
2.5 V
1.8 V
1.5 V
1.2 V
1.1 V
Velocidad (MT/s)
200 - 400
400 - 1066
800 - 2133
1600 - 3200
4800 - 8400+
Prefetch (Bits)
2n
4n
8n
8n (con grupos)
16n
Capacidad Máx (Chip)
1 Gb
4 Gb
8 Gb
16 Gb
64 Gb
Gestión de Energía
En placa base
En placa base
En placa base
En placa base
PMIC en el módulo
Nota. Elaborado por (Escobar C, 2025) Año de lanzamientoDDR (DDR1): ~2000
DDR2: ~2003
DDR3: ~2007
DDR4: ~2014
DDR5: ~2020
Voltaje estándarDDR (DDR1): 2.5 V
DDR2: 1.8 V
DDR3: 1.5 V
DDR4: 1.2 V
DDR5: 1.1 V
Velocidad (MT/s)DDR (DDR1): 200 - 400
DDR2: 400 - 1066
DDR3: 800 - 2133
DDR4: 1600 - 3200
DDR5: 4800 - 8400+
Prefetch (bits)DDR (DDR1): 2n
DDR2: 4n
DDR3: 8n
DDR4: 8n (con grupos)
DDR5: 16n
Capacidad máx. (chip)DDR (DDR1): 1 Gb
DDR2: 4 Gb
DDR3: 8 Gb
DDR4: 16 Gb
DDR5: 64 Gb
Gestión de energíaDDR (DDR1): En placa base
DDR2: En placa base
DDR3: En placa base
DDR4: En placa base
DDR5: PMIC en el módulo
La tabla 2 muestra una comparativa de precios entre las generaciones DDR4 y DDR5, dónde se puede apreciar un mayor precio por GB en la Generación DDR5 que se oferta en el mercado local (Tecnomega Store, 2025).
Tabla 2
Comparativa de costos entre memorias DDR5 y DDR4 (* Precios de referencia del distribuidor TECNOMEGA)
Imagen
Descripción
Valor referencial (2025/12/10)
Costo por GB
DIMM KINGSTON FURY 32GB 4G x 64-Bit DDR5-6400
218.00 USD*
6.81 USD
DIMIM KINGSTON 16GB 2G x 64-Bit DDR4-3200 CL16
95.40 USD*
5.96 USD
Nota. Elaborado por (Escobar C, 2025) DIMM KINGSTON FURY 32GB 4G x 64-Bit DDR5-6400Imagen aquíValor referencial (2025/12/10): 218.00 USD*
Costo por GB: 6.81 USD
DIMIM KINGSTON 16GB 2G x 64-Bit DDR4-3200 CL16Imagen aquíValor referencial (2025/12/10): 95.40 USD*
Costo por GB: 5.96 USD
Las memorias de DDR SDRAM presentan las siguientes ventajas:
- Mayor ancho de banda.
- Mejor rendimiento por watt.
- Compatibilidad con arquitecturas modernas de multiprocesamiento.
Mientras que por otro lado, dadas sus características se encuentran presentes en:
- Computadoras personales y laptops.
- Servidores y estaciones de trabajo.
- Consolas de videojuegos.
- Sistemas embebidos de alto rendimiento.
5.6 Memorias NAND Flash
Las memorias flash son un tipo de memoria no volátil, lo que significa que conservan los datos incluso sin energía. Son ampliamente utilizadas en dispositivos de almacenamiento como USB, tarjetas SD, SSDs, entre otros. Existen dos tipos principales: NAND y NOR, cada una con características y aplicaciones específicas.
5.6.1 Memoria NAND Flash
La memoria es una arquitectura de memoria flash que prioriza la densidad y el costo por bit, ideal para aplicaciones de almacenamiento masivo. Su nombre proviene de la puerta lógica NAND, que describe la forma en que se conectan las celdas de memoria.
Estructura y Funcionamiento
En una memoria NAND Flash, las celdas de memoria (transistores con una puerta flotante) se organizan en serie, formando cadenas. Esta configuración permite una mayor densidad de almacenamiento, pero también introduce limitaciones en el acceso aleatorio.
- Página: es la unidad mínima de lectura y escritura (típicamente entre 2 KB y 16 KB).
- Bloque: es la unidad mínima de borrado (típicamente entre 128 KB y 256 KB).
-
Celda: puede almacenar 1 bit (SLC), 2 bits (MLC), 3 bits (TLC) o incluso 4 bits (QLC) por celda.
Las memorias NAND flash se pueden clasificar en los siguientes tipos:
- SLC (Single-Level Cell): 1 bit por celda. Alta velocidad y durabilidad, pero costosa. Usada en aplicaciones industriales.
- MLC (Multi-Level Cell): 2 bits por celda. Balance entre costo y rendimiento.
- TLC (Triple-Level Cell): 3 bits por celda. Más barata, pero menor durabilidad. Común en SSDs de consumo.
- QLC (Quad-Level Cell): 4 bits por celda. Muy alta densidad, pero menor velocidad y vida útil.
Entre las principales ventajas de las memorias NAND Flash se destacan:
- Alta densidad de almacenamiento.
- Bajo costo por bit.
- Adecuada para almacenamiento secuencial.
- Consumo de energía relativamente bajo.
En contraposición en este tipo de memoria se pueden mencionar las siguientes desventajas
- No es byte-addressable (no permite acceso aleatorio directo).
- Tiene un número limitado de ciclos de escritura/borrado.
- Requiere algoritmos de wear leveling y corrección de errores (ECC).
Dadas sus características en persistencia de datos estas memorias se las usa en aplicaciones como:
- SSDs (Solid State Drives): reemplazan a discos duros tradicionales.
- Tarjetas de memoria: SD, microSD, etc.
- Pendrives USB.
- Smartphones y tablets.
- Sistemas embebidos.
Figura 3
Memoria NAND 2D Kingston Fury Renegade SSD 7300MB PCIe 4.0 NVMe M.2 SSD
Nota. Tomado de (Tienda Nómada, 2025) Aprende más
En el siguiente enlace puede ver las especificaciones de un disco de estado sólido comercial SATA NAND de la marca Kingstong ¡Accede aquí!
5.7 Memorias NOR Flash
La memoria es el otro tipo principal de memoria flash, diseñada para aplicaciones que requieren acceso aleatorio rápido y ejecución de código directamente desde la memoria (execute in place, XIP). A diferencia de NAND, la NOR permite leer datos byte por byte, lo que la hace ideal para almacenar firmware o sistemas operativos embebidos.
- XIP (execute in place)
Para comprender de mejor manera XIP (execute in place), se debe tener en cuenta que normalmente, cuando se inicia un programa, el código de la aplicación se copia desde el almacenamiento de largo plazo (disco duro, memoria flash) a la memoria RAM, y la CPU (Unidad Central de Procesamiento) ejecuta las instrucciones desde la RAM.
Con XIP, la CPU puede leer y ejecutar las instrucciones directamente desde la memoria no volátil, eliminando el paso de copia a la RAM, esto permite un arranque más rápido al no tener que copiar grandes cantidades de código a la RAM con lo que el tiempo de inicio del sistema o de la aplicación se reduce significativamente, adicionalmente existe un menor consumo de RAM ya que se necesita menos memoria RAM, ya que el código del programa no reside en ella, esto es especialmente útil en sistemas con recursos limitados (sistemas embebidos, IoT). Y por último XIP tiene menor consumo de energía ya que la transferencia de datos entre memorias consume energía. Al reducir esta transferencia, se puede disminuir el consumo general.
En contraposición XIP tiene rendimiento más lento, esto debido a que las memorias no volátiles (como la flash) suelen ser más lentas que la RAM, por lo tanto, la ejecución de código directamente desde ellas puede ser más lenta en comparación con la ejecución desde la RAM, adicionalmente existe limitaciones de la memoria por el número limitado de ciclos de escritura.
5.7.1. Estructura y Funcionamiento
En la NOR Flash, las celdas de memoria se conectan en paralelo, lo que permite un acceso aleatorio más rápido. Esta configuración es similar a la de una memoria ROM tradicional, lo que permite que el procesador ejecute código directamente desde la memoria sin necesidad de copiarlo a RAM.
Entre sus características se puede destacar que este tipo dememoria es:
Byte-addressable: permite leer cualquier byte individual.
Lectura rápida: tiempos de acceso similares a la RAM.
Escritura y borrado más lentos: requiere operaciones más complejas.
Por otro lado en las memorias NOR Flash se pueden resaltar como ventaja que:
- Permiten ejecución directa de código (XIP).
- Se tiene acceso aleatorio rápido.
- Tiene alta confiabilidad y durabilidad.
- Es adecuada para almacenar código crítico.
Y como desventajas:
- Tiene menor densidad que NAND.
- Su costo por bit es mayor.
- Su escritura y borrado es más lento.
Este tipo de memoria se encuentra principalmente en
- Firmware de dispositivos.
- Sistemas embebidos.
- BIOS/UEFI en computadoras.
- Código de arranque en routers y equipos de red.
- Aplicaciones industriales y automotrices.
La figura 4 muestra una captura de pantalla de la interfaz del BIOS de un mainboard Gigabyte, la cual incorpora detalles gráficos así como manejo de colores e imágenes, esto es posible en las tecnologías actuales dado que las memorias BIOS contemplan mayor velocidad y capacidad.
Figura 4
Captura de la interfaz del BIOS de un mainboard Gigabyte
Nota. Tomado de https://www.corsair.com/es/es/explorer/glossary/what-is-a-bios/ accedido el 2025/12/12 Estas dos tecnologías NOR Flash y NAND Flash tienen campos de aplicación complementarios y por lo general cohexisten en muchos dispositovos modernos, tal como se puede apreciar en la Tabla 3.
Tabla 3
Comparativa entre las memorias NOR Flash y NAND Flash
Característica
NOR Flash
NAND Flash
Acceso
Byte-level (aleatorio)
Bloque/page (secuencial)
Velocidad de lectura
Alta
Media
Velocidad de escritura
Baja
Media
Densidad
Baja
Alta
Costo por bit
Alto
Bajo
Ejecución directa (XIP)
Sí
No
Aplicaciones típicas
Firmware, BIOS
Almacenamiento masivo
Nota. Elaborado por (Escobar C, 2025) AccesoNOR Flash: Byte-level (aleatorio)
NAND Flash: Bloque/page (secuencial)
Velocidad de lecturaNOR Flash: Alta
NAND Flash: Media
Velocidad de escrituraNOR Flash: Baja
NAND Flash: Media
DensidadNOR Flash: Baja
NAND Flash: Alta
Costo por bitNOR Flash: Alto
NAND Flash: Bajo
Ejecución directa (XIP)NOR Flash: Sí
NAND Flash: No
Aplicaciones típicasNOR Flash: Firmware, BIOS
NAND Flash: Almacenamiento masivo
Profundiza más
Este recurso te ayudará a enfatizar sobre Cantidad de bits de una memoria ¡Accede aquí!
-
-
Actividades
-
Make attempts: 1
-
Proyecto final
-
Introducción
En este capítulo veremos la última fase de nuestro proyecto que Integrará los elementos desarrollados a lo largo del curso; reemplazando con una memoria Ram/Rom la lógica de la máquina secuencial que presenta un mensaje personalizado usando circuitos combinacionales, los cuales fueron implementados con MUX como circuitos de salida múltiple que alimentaba al display de siete segmentos, mientras que el reloj será reemplazado por uno de diseño propio.
En cada uno de los retos se han ido incorporando nuevos elementos que reemplazaban ciertas etapas del circuito, optimizando el diseño y poniendo en práctica los conocimientos adquiridos. En esta última etapa se incorporará la memoria RAM, en la cual se escribirá la tabla de verdad del mensaje individual presentado previamente por cada estudiante y será leída para ser mostrada en un display.
Decodificador BCD a 7 segmentos
Es un circuito digital que convierte un número binario codi-ficado en decimal (BCD, Binary-Coded Decimal) de 4 bits en las señales necesarias para activar los 7 segmentos de un display de 7 segmentos, permitiendo mostrar el número decimal co-rrespondiente (del 0 al 9).
Túneles de conexión (Tunnel Tool)
Son una herramienta que en SimulIDE, permiten conectar puntos sin necesidad de cables visibles, ideal para mantener el esquema limpio y organizado, especialmente en circuitos grandes o complejos.
-
6. Proyecto final
El proyecto final del curso contempla el implementar la simulación de una máquina secuencial que muestre un mensaje de 13 a 15 caracteres usando circuitos combinacionales, divisores de frecuencia, un contador de diseño propio y almacene el mensaje en una memoria para presentarlo en un display.
Esta máquina debe operar dentro del entorno de simulación SimulIDE, con el propósito de conocer y entender cómo estos componentes interaccionan para procesar entradas secuenciales y producir las salidas correspondientes, lo que representa una experiencia práctica para adquirir habilidades en la comprensión y diseño de los Circuitos y Sistemas Digitales.
Previamente se había implementado:
La simulación de un Circuito Combinacional que sirve como interface entre números binarios de 4 dígitos y letras a presentarse en un display de 7 segmentos que presenta un mensaje que contiene entre 13 y 15 caracteres.
La simulación de una máquina secuencial que cuenta en hexadecimal del cero a la F usando un contador de diseño propio con divisores de frecuencia.
Se integraron los distintos módulos desarrollados como una máquina secuencial que presenta un mensaje hasta 15 caracteres
En esta etapa, como reemplazo a la lógica binaria construida con MUX, se usará una memoria Ram/Rom para almacenar el mensaje, se reemplazará el reloj por uno diseñado con el circuito integrado 555 y luego se incorporarán los otros módulos para alcanzar el producto final.
Mensaje a presentarse.
Cada estudiante definió su propio mensaje, el cual es único y deberá mantenerlo en esta etapa del proyecto, por otro lado y como ejemplo; el mensaje de referencia que hemos usado como ejemplo en este curso es:
Tabla
Mensaje
d
E
J
A
-
t
U
-
H
U
E
L
L
A
-
-
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
. Una vez definido el mensaje, se construyó la tabla de verdad para las combinaciones de la entrada ABCD y la salida para el display de 7 segmentos, lo que permitió diseñar el circuito combinacional, de donde se extrajeron las funciones a, b, c, d, e, f y g que manejan el display de 7 segmentos, para lo cual previamente usamos MUX 4-1 como implementación de la lógica binaria combinacional del circuito.
Aprende más
En este sitio puede conocer mas detalles del display de 7 segmentos y su uso. ¡Accede aquí!
Sin embargo en este punto y para grabar el mensaje en la memoria, será necesario agregar tres columnas nuevas llamadas “HEX”, “DEC” y “ASCII”, tal como se muestra en la Tabla 1.
Dado que ya conocemos el funcionamiento y uso de una memoria; podemos reemplazar los MUX por una memoria, y en ella almacenaremos el mensaje que queremos presentar. Es decir necesitaríamos una memoria con un bus de direcciones de 4 bits para las 16 posiciones y una palabra de tamaño de 7 bits para las 7 salidas a, b, c, d, e, f y g. Dado que comercialmente existen memorias con palabras de 8, 16, 32… bits, usaremos una memoria con una palabra 8 bits, ignorando el más significativo.
Estas tres nuevas columnas contendrán en este orden:
HEX: Contiene el número hexadecimal de la salida de 7 segmentos agregado un cero a la izquierda. Por ejemplo para las entradas ABCD; 0000, las salidas abc-defg son; 011-1101, lo cual puede ser expresado en Hexadecimal como 3D, agregando el cero a la izquierda, como se mencionó previamente.
DEC: Muestra equivalente en decimal del número hexadecimal previamente descrito
ASCII: Presenta el código ASCII correspondiente a la salida descrita.
Estas tres columnas se aprecian a la derecha en la Tabla 1:
Tabla 1
Tabla de verdad ABCD a 7 segmentos con el mensaje "dEJA-tU-HUELLA- -"
Celda
A
B
C
D
Mensaje
a
b
c
d
e
f
g
HEX
DEC
ASCII
D1
D2
D3
D4
D5
D6
D7
0
0
0
0
0
d
0
1
1
1
1
0
1
3D
61
=
1
0
0
0
1
E
1
0
0
1
1
1
1
4F
79
O
2
0
0
1
0
J
0
1
1
1
0
0
0
38
56
8
3
0
0
1
1
A
1
1
1
0
1
1
1
77
119
w
4
0
1
0
0
-
0
0
0
0
0
0
1
01
1
SOH
5
0
1
0
1
t
0
0
0
1
1
1
1
0F
15
SI
6
0
1
1
0
U
0
1
1
1
1
1
0
3E
62
>
7
0
1
1
1
-
0
0
0
0
0
0
1
01
1
SOH
8
1
0
0
0
H
0
1
1
0
1
1
1
37
55
7
9
1
0
0
1
U
0
1
1
1
1
1
0
3E
62
>
10
1
0
1
0
E
1
0
0
1
1
1
1
4F
79
O
11
1
0
1
1
L
0
0
0
1
1
1
0
0E
14
SO
12
1
1
0
0
L
0
0
0
1
1
1
0
0E
14
SO
13
1
1
0
1
A
1
1
1
0
1
1
1
77
119
w
14
1
1
1
0
-
0
0
0
0
0
0
1
01
1
SOH
15
1
1
1
1
-
0
0
0
0
0
0
1
01
1
SOH
Nota. Elaborado por (Escobar C, 2025) Para simular la memoria con un bus de direcciones de 4 bits y una palabra de 8 bits en SimulIde (González et al., 2025), se puede agregar una memoria Ram/Rom y luego, sobre ella, con “botón derecho” —> “propiedades” de su menú contextual definirlos parámetros que se muestran en la Figura 1.
Figura 1
Memoria RAM simulada en SimulIDE con 4 bits de direcciones y palabra de 8 bits

Nota. Elaborado por (Escobar C, 2025) Una vez que se ha introducido y configurado la memoria Rom/Ram se puede escribir el contenido en las direcciones de memoria, para ello de manera similar; con el botón derecho sobre la memoria seleccione mostrar tabla de memoria, esto nos mostrará la tabla de la Figura 2
Figura 2
Tabla de memoria de la Ram/Rom

Nota. Elaborado por (Escobar C, 2025) En el lado izquierdo de la tabla de memoria se tiene las direcciones de memoria y su contenido, mientras que en el lado derecho, las direcciones de memoria con el mismo contenido pero expresado en código ASCII
La tabla puede ser llenada en el lado izquierdo, escribiendo el código en decimal, el cual automáticamente, una vez ingresados los dígitos decimales, estos se transformarán en hexadecimal y se mostrará a la derecha el código ASCII equivalente.
En el lado derecho de la tabla también se puede ingresar su contenido en código ASCII, sin embargo debido a que la columna ASCII tiene caracteres no convencionales, se dificulta el ingreso de estos, razón por la cual es mejor realizar el ingreso como se propone previamente.
Así para la dirección de memoria 0000 (Columnas A, B, C, D) el contenido en decimal es 61 (Columna DEC), tal como se muestra en la tabla 2.
Tabla 2
Contenido de la dirección de memoria 0000
Celda
A
B
C
D
Mensaje
a
b
c
d
e
f
g
HEX
DEC
ASCII
D1
D2
D3
D4
D5
D6
D7
0
0
0
0
0
d
0
1
1
1
1
0
1
3D
61
=
Nota. Elaborado por (Escobar C, 2025) En este caso al ingresar “61” en el casillero de la izquierda, correspondiente a la dirección de memoria “00”, al dar enter o hacer clic fuera de la celda, este se convierte automáticamente en su equivalente hexadecimal, es decir “3D” y se proyecta a la derecha en esa dirección de memoria el código ASCII correspondiente, en este caso; “=”
De esta forma procedemos a llenar toda la tabla de memoria conforme la columna DEC de la tabla con lo que se obtiene el resultado mostrado en la tabla de memoria de la parte inferior de la Figura 4.
Diseñar la interfaz de switchs electrónicos.
En capítulos previos vimos que los switch electrónicos o conmutadores se pueden implementar usando transistores BJT o CMOS, sin embargo, en este caso se usarán los switchs de voltaje fijo del simulador SimulIDE (González et al., 2025), mismos que se muestran en la Figura 3 y que serán usados en las distintas fases del proyecto de acuerdo a como se necesite y que nos permitirán conectar las entradas de nuestros diseños o entradas de componentes digitales a tierra; como cero lógico o a voltaje; como uno lógico.
Figura 3
Interruptores de voltaje fijo del simulador SimulIDE

Nota. Elaborado por (Escobar C, 2025) Simulación de la implementación
En esta última etapa y para simular el circuito que proyecte el mensaje almacenado en memoria a un display de siete segmentos, vamos a usar inicialmente un contador 74HC191, el mismo que será reemplazado posteriormente con el contador asíncrono diseñado previamente, esto con el fin de minimizar la posibilidad de errores en esta etapa, de tal manera que una vez que funcione correctamente el circuito procederemos con el reemplazo descrito.
Adicionalmente vamos a incorporar una etapa a la salida del contador con un decodificador BDC a 7 segmentos (Bcd a 7s en SimulIDE), conectado a un display de 7 segmentos a través de un banco de resistencias, esto nos permitirá monitorear la salida del contador y que a la vez es la entrada a nuestro circuito decodificador de binario de 4 bits al mensaje a presentarse secuencialmente en el display de 7 segmentos.
Este es un circuito digital que convierte un número binario codificado en decimal (BCD, Binary-Coded Decimal) de 4 bits en las señales necesarias para activar los 7 segmentos de un display de 7 segmentos, permitiendo mostrar el número decimal correspondiente (del 0 al 9) y en el caso de simulIDE, este decodificador usa una tabla extendida que también permite presentar las combinaciones 1010 a 1111 correspondiente a los hexadecimales A a F.
Mientras que a la salida de la memoria pondremos dos bancos de 4 LEDs, con su banco de resistencias para monitorear el contenido en hexadecimal de la memoria, la cual a su vez alimenta el display de 7 segmentos con su respectivo banco de resistencias. Esto se puede apreciar con detalle en la Figura 4.
Esta misma implementación puede ser útil para presentar cualquier mensaje almacenado en la memoria Rom/Ram, lo que quiere decir que el estudiante pudiera basarse en este diseño y actualizar el contenido de la memoria para presentar su propio mensaje.
Para realizar la implementación de la simulación, arrastre los componentes mostrados en la Figura 4 al lienzo de trabajo y realice las conexiones tal como se muestra en la figura, reserve los espacios para los componentes y las conexiones.
Tenga cuidado con las conexiones de los túneles de conexión que permiten ser etiquetados para evitar un cableado excesivo pero que si no se identifican apropiadamente, generará problemas en el funcionamiento del circuito.
En SimulIDE, los (en inglés Tunnel Tool) son una herramienta que permite conectar puntos sin necesidad de cables visibles, esto es ideal para mantener el esquema limpio y organizado, especialmente en circuitos grandes o complejos.
También identifique con claridad cuáles son las salidas y entradas más significativa y menos significativas, ya que si se las conecta en sentido inverso entre distintas etapas se tendrá un funcionamiento no esperado.
De manera ilustrativa implementaremos una parte del mensaje usando el contador 74HC191 y la segunda parte del mensaje se mostrará reemplazando este contador por el contador asíncrono de diseño propio, tal como se detalla a continuación.
Las Figura 5 a la Figura 9 presentan la salida del circuito decodificador de mensaje, usando el contador 74HC191, para las combinaciones del contador; 0001 - 0010 - 0011 - 0100 - 0101 y 0110, correspondientes a; “d E J A – t U”
Figura 4
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 0000 del contador

Nota. Elaborado por (Escobar C, 2025) Figura 5
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 0001 del contador

Nota. Elaborado por (Escobar C, 2025) Figura 6
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 0010 del contador

Nota. Elaborado por (Escobar C, 2025) Figura 7
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 0011 del contador

Nota. Elaborado por (Escobar C, 2025) Figura 8
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 0100 del contador

Nota. Elaborado por (Escobar C, 2025) Figura 9
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 0101 del contador

Nota. Elaborado por (Escobar C, 2025) Figura 10
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 0110 del contador

Nota. Elaborado por (Escobar C, 2025) Una vez que hemos comprobado el funcionamiento del circuito con el contador, ya podemos reemplazar este contador 74HC191 por nuestro contador asíncrono creado previamente con flip-flops JK conectados en cascada.
En este punto podemos diseñar nuestro propio circuito generador de la señal de reloj, ya que si bien es cierto, nuestra simulación usa el reloj de los componentes de SimulIDE, este podría ser reemplazado con un circuito integrado 555 configurado como un reloj en la frecuencia deseada, de 1 Hz.
Aprende más
En este enlace puede conocer mas detalles del circuito integrado 555 y sus aplicaciones ¡Accede aquí!
Para el diseño del reloj con el circuito integrado 555 en modo astable se puede generar una onda cuadrada en su pin de salida (pin 3) donde la frecuencia de esta señal depende de los valores de las resistencias RA y RB y del condensador C.
La frecuencia de salida está dada por la Ecuación 1:
Ecuación 1
Fórmula para el cálculo de frecuencia en modo astable para el circuito integrado 555
Nota: Elaborado por (Escobar C, 2025)
En esta ecuación podemos determinar los valores para RA, RB y C, para lo cual elegimos primero los valores para el condensador y una de las resistencias, así el condensador será de 10 uF, mientras que la resistencia RA será de 10 Kohms, con esto podemos calcular el valor de RB para lo cual, haciendo los respectivos reemplazos en la Ecuación 1, encontramos el valor de RB de 68 Kohms. En nuestro caso se han seleccionado valores que existen comercialmente, sin embargo, si los valores calculados no se encuentran comercialmente disponibles se puede usar un potenciómetro como resistencia variable y ajustarla al valor requerido. En el caso de SimulIDE, estos valores pueden ser definidos nominalmente sin problema en todos los elementos.
La tabla 3 muestra el mapa descriptivo de conexiones para que circuito integrado 555 funcione como un reloj oscilador de 1 Hz.
Tabla 3
Mapa descriptivo de conexiones del circuito integrado 555
Pin
Función
Conexión
1
GND
Tierra
2
Disparo
Entre RB y C
3
Salida
LED o osciloscopio
4
Reset
Conectado a +5V
5
Control
10nF a tierra (opcional)
6
Umbral
Conectado al pin 2
7
Disparo
Entre RA y RB
8
Vcc
+5V
Nota. Elaborado por (Escobar C, 2025) La Figura 11 muestran el circuito de reloj con el circuito integrado 555 configurado como un oscilador astable ajustado a la frecuencia de 1 Hz.
Figura 11
Circuito de reloj de 1 Hz elaborado con el circuito integrado 555

Nota. Elaborado por (Escobar C, 2025) Las Figura 12 a la Figura 15 muestran el circuito decodificador de mensajes donde se ha reemplazado el contador 74HC191 por el contador asíncrono de flip-flops JK para las combinaciones 0111 - 1000 - 1001 - 1010 con la salida “- H U E “, mientras que el resto del mensaje se presentará ya con el reemplazo del reloj por nuestro oscilador diseñado con el 555.
Figura 12
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 0111 del contador asíncrono elaborado con flip-flops

Nota. Elaborado por (Escobar C, 2025) Figura 13
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 1000 del contador asíncrono elaborado con flip-flops

Nota. Elaborado por (Escobar C, 2025) Figura 14
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 1001 del contador asíncrono elaborado con flip-flops

Nota. Elaborado por (Escobar C, 2025) Figura 15
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 1010 del contador asíncrono elaborado con flip-flops

Nota. Elaborado por (Escobar C, 2025) Las Figura 16 a la Figura 20 muestran el circuito decodificador de mensajes donde se ha reemplazado el reloj con el 555 para las combinaciones 1011 - 1100 - 1101 - 1110 - 1111 con la salida “L L A - -“, con lo que el mensaje está completo y también nuestro producto final.
Figura 16
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 1011 del contador asíncrono elaborado con flip-flops

Nota. Elaborado por (Escobar C, 2025) Figura 17
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 1100 del contador asíncrono elaborado con flip-flops

Nota. Elaborado por (Escobar C, 2025) Figura 18
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 1101 del contador asíncrono elaborado con flip-flops

Nota. Elaborado por (Escobar C, 2025) Figura 19
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 1110 del contador asíncrono elaborado con flip-flops

Nota. Elaborado por (Escobar C, 2025) Figura 20
Circuito decodificador de mensajes usando una memoria Ram/Rom que presenta la salida de la combinación 1111 del contador asíncrono elaborado con flip-flops

Nota. Elaborado por (Escobar C, 2025) Finalmente es importante resaltar que en esta implementación y como elemento de control del funcionamiento del circuito se tienen los siguientes módulos:
El decodificador BCD a 7 segmentos a la salida del contador asíncrono que muestran el número hexadecimal de la secuencia y que es a la vez la dirección de memoria leída.
Los bancos de 4 LEDs de color rojo y verde, donde se proyecta el número hexadecimal almacenado en la memoria.
El display de 7 segmentos que muestra el mensaje individual de cada estudiante.
Profundiza más
Este recurso te ayudará a enfatizar sobre Decodificador BCD a 7 segmentos (4 bits → 7bits) ¡Accede aquí!
-
-
Actividades
-
Make attempts: 1
-
Make a submission
-