Está en la página 1de 4

Laboratorio de Sistemas Digitales III

Informe practica 5
MEMORIAS RAM Y ROM
Alejandro Correa Jaramillo, Jonathan Prieto Guazaquillo, Luis Hernán Hernández Pinzón
alejandro.correa1@utp.edu.co,luis_h930716@utp.edu.co, j.prieto@utp.edu.co.

Presentado a: Andrés Castillo González


Departamento de Ingenierías - Ingeniería Electrónica
Universidad Tecnológica de Pereira

Resumen- El desarrollo de esta práctica, se memoria RAM


trata sobre la implementación de las
memorias RAM y ROM en Las memorias RAM tiene como característica
Verilog/SystemVerilog para su posterior principal el almacenamiento de datos y la
puesta en funcionamiento en la tarjeta de posibilidad de recuperarlos,
desarrollo Altera Cyclone V, en la cual se
ingresarlos y leerlos durante todo el proceso.
utilizarán los interruptores y el display de 7
En la figura 1 se muestra la declaración del
segmentos que contiene la tarjeta. módulo de la memoria RAM, donde se
especifica como modulo parametrizable, con
Palabras claves- memoria RAM, memoria un ancho de bus de datos de 5 declarado como
ROM, registro, puerto único, habilitador. DATA_WITDTH y un ancho de dirección de
bus de 4, declarado como ADDR_WIDTH.
I. Introducción.

En el siguiente informe se describe de forma


detallada la implementación de las memorias
RAM y ROM. Para el desarrollo de la
práctica se utiliza el programa Quartus Prime, Figura 1. Declaración modulo RAM.

en el cual se realiza el diseño, la simulación y


La memoria RAM debe de cumplir con ciertos
el banco de pruebas para las memorias RAM y
requerimientos para su correcto
ROM, se describen las diferentes variables funcionamiento, en la figura 2 se muestra las
utilizadas y la función que deben cumplir variables y espacios de memoria utilizados
según la línea de código en donde se utiliza. para su diseño, para la escritura se utilizó la
variable llamada data, la dirección para la
II. implementación y resultados. operación de escritura fue llamada addr, la
señal de habilitación para la escritura fue
1. Como resultado de esta práctica se debe llamada we y la señal de reloj del sistema fue
presentar un informe escrito con lo llamada clk, Estas variables son las requeridas
para que la memoria RAM puede cumplir
desarrollado en el laboratorio.
todas las funciones de almacenamiento y
escritura propias de su funcionamiento normal.
2. Diseñé los siguientes circuitos digitales y
realicé sus respectivas simulaciones:

a) Memoria RAM de 64-bits x 16-bits de


puerto único.
Figura 2. Variables memoria RAM. valor asignado por defecto a los valores de
memorias no representables en código BCD.
La salida de la memoria RAM utilizada en el
diseño es de 7 bits, la salida está diseñada para
que muestre un digito binario en un display de
7 segmentos asignado en la tarjeta de
desarrollo Altera Cyclone V. Se puede
apreciar en la figura 3 en donde la variable s
comienza en 0 y tiene un tamaño de 7 bits.

Figura 3. Salidas memoria RAM.

Una de las cualidades de la memoria RAM es


la de escritura de datos, en la figura 4 se
muestra el segmento de código utilizado para
la operación de escritura donde el valor de we
debe de ser un estado alto y se realizara cada
flanco positivo de la señal de reloj y se guarda
en la dirección de addr que toma el valor de la
variable data.

Figura 6. Tabla salida memoria RAM.

En la figura 7 se muestra el Testbench de la


Figura 4. Always escritura. memoria RAM donde se puede apreciar el
correcto funcionamiento en sus funciones de
La memoria RAM debe de estar en la escritura y lectura. La primera línea es la señal
capacidad de realizar las operaciones de addr o dirección para la operación de escritura,
lectura de datos almacenados, en la figura 5 se la segunda señal es clk o el reloj del sistema, la
muestra la asignación a la variable q de la tercera señal son los datos a escribir o la
dirección de memoria guardada en el registro variable data, la cuarta señal es la salida
addr_r, que es finalmente el dato que se representada en código BCD en donde los
muestra en el display de 7 segmentos. valores que toma dependen del flanco de
subida de la señal de reloj, si la señal de we
está en alto se habilita la función de escritura
y si no solo función de lectura.
figura 5. Asignación de lectura.

En la figura 6 se muestra la tabla de valores


para la salida de la memoria RAM, la salida
está representada en código BCD y se muestra
en la tarjeta de desarrollo Altera Cyclone V. en
el display de 7 segmentos asignado, los Figura 7. Testbench memoria RAM.
valores utilizados en el desarrollo la practica
son representados en número decimal desde el
0 hasta el 15 por esa razón fue necesario
utilizar dos displays de segmentos y un último
b) Memoria ROM de 64-bits x 16-bits.

Memoria ROM

Las memorias ROM por ser de solo lectura,


son menos complejas de implementar, se
requiere una entrada para la escritura, una
señal de reloj que controla los tiempos activos Figura 10. Testbench memoria ROM.
en los que se puede ingresar datos y una señal
de salida final. En la figura se muestra la memoria ROM
puesta a prueba en el Testbench para
En la figura se muestra la declaración del comprobar su correcto funcionamiento, la
módulo, la declaración de las entradas y las primera línea es la representación de la
salidas. entrada, la segunda línea es la señal de reloj
del sistema y la tercera señal es la salida
representada en código BCD, donde el 0
significa un estado bajo a la salida con una con
igual representación de voltaje y el 1 es un
Figura 8. Entradas y salidas memoria ROM.
estado alto a la salida con una significancia en
En este punto se especifican detalles como el voltaje según la tarjeta de desarrollo Altera
tamaño de la memoria, el tamaño del bus de Cyclone V. de 3.3-V en LVCMOS.
entrada y el bus de salida. Para la practica
desarrollada se requería una salida de 7 bits, En la figura 12 se muestra la simulación en
ModelSim el simulador del programa Quartus
los cuales se ven representados en un display
prime, en donde se verifica el correcto
de 7 segmentos. funcionamiento de la memoria ROM.

Figura 11. Simulación en ModelSim memoria ROM

III. Conclusiones.

-El diseño de las memorias RAM y ROM se


puede implementar de diferentes maneras y
Figura 9. Always case datos para la salida. utilizando diferentes componentes como
compuertas lógicas, flip-flop, latch etc.
Para la representación de los datos en la salida
se utilizó un always_comb, en donde cada dato -La capacidad de almacenamiento escritura y
representa según el dato leído, un número del lectura de una memoria RAM o ROM está
0 al 9 en el código BCD el cual se verá en un dada por el tamaño del bus de datos.
display de 7 segmentos como la salida de
-Entre más capacidad de memoria más
datos, El cual fue asignado en la tarjeta de
componentes se deben utilizar para su
desarrollo Altera Cyclone V.
implementación lo que implica un aumento en
el consumo de recursos del sistema.
-Cada memoria cumple funciones específicas
las cuales hacen que la memoria RAM sea
completamente diferente de la memoria ROM.

VI. Bibliografía.

[1] S. l. Harris & D Money Harris. Digital


Design and Computer Architecture. ARM®
Edition. 16 de Junio de 2007.

[2] S. l. Harris & D Money Harris. Digital


Design and Computer Architecture. ARM®
Edition. 16 de junio de 2007.

[3] M. Morris Mano. DISEÑO DIGITAL.


Tercera Edición 2006. CALIFORNIA STATE
UNIVERSITY, LOS ANGELES

También podría gustarte