Memorias
Mediante VHDL es fácil realizar la modelización de memorias. Tan sólo hay que cuidar la definición correcta de los tipos de variables con los que se debe trabajar
A continuación se detalla el modelo de una memoria RAM y de una ROM. Las variaciones, a partir de estos dos ejemplos, son múltiples
Memoria RAM
El modelo corresponde a una memoria RAM de puerto simple
La memoria consta de las siguientes señales
Señal de sincronismo o reloj
Señal de selección de memoria, cs
Una señal de lectura/escritura, rdNwr
Bus de dirección
Bus de datos
La única complicación en el modelo es la definición de la propia memoria, que debe establecerse como un array de palabras
Por otra parte, al ser el bus de datos bidireccional, debe cuidarse el control de entrada/salida del mismo
Memoria ROM
La memoria ROM contiene los datos almacenados en su interior y está preparada para ser leída en cualquier momento
Consta de las siguientes entradas/salidas:
Bus de direcciones
Bus de datos
Al contrario de la memoria RAM, el contenido de la ROM debe fijarse en el momento de su definición. Para facilidad de diseño, suele ser conveniente definir el contenido en un package
Cuestión
Para las dos memorias anteriores, proporcionar un modelo de test