# Como hacer una memoria RAM



## sephirot666 (Jun 26, 2011)

que tal, abro este tema para pedir ayuda acerca de como hacer una memoria RAM en protoboard,  desafortunadamente mis conocimientos no son muy amplios en electronica y por lo tanto no tengo ni idea de como hacerla, el prof nos menciono que fuera de 4 bits, solo eso nos dijo y que no las ingeniaramos.

espero su ayuda 

gracias

pd: no estoy seguro si este tema va en este subforo, si no es asi por favor de moverlo si me hacen el favor

saludos


----------



## Scooter (Jun 26, 2011)

Bonita forma de perder el tiempo tiene tu profesor, dile que luego os mande hacer puertas con transistores y condensadores con papel de plata, así se pasa el curso y no tiene que preparar ningún tema nuevo.

Pues con cuatro biestables, normalmente tipo D, aunque seguramente se podrá de mas modos.


----------



## sephirot666 (Jun 26, 2011)

si me pudieras anexar un diagrama te lo agradeceria muchisimo, como te comento mi conocimiento en electronica son muy basicos y aun me cuesta trabajo entender muchas cosas, pero afortunadamente el armado de circuitos se me facilita


----------



## Scooter (Jun 26, 2011)

Pues ahora mismo me viene mal hacer tu trabajo. (y mas aún si me parece absurdo)


----------



## SERGIOD (Jun 26, 2011)

Bueno a mi si me parece un tema interesante 
ya que como dicen haciendo se aprende en cambio si solo te dicen se te olvida, cuando juntas la practica y la teoria el aprendisaje es significatio



Scooter dijo:


> Pues ahora mismo me viene mal hacer tu trabajo. (y mas aún si me parece absurdo)



Si no teagrada sal del tema y pierdete


----------



## Scooter (Jun 26, 2011)

Si el curso es de un billón de horas es lo ideal, teniendo en cuenta que seguramente será de menos y de que la electrónica tiene "unos cuantos" temas interesantes que tratar, me parece que con saber usarlas hechas ya irían bien.
Como a todo lo que comento en este foro, hay que añadirle un _"a mi me parece que"_, es mi pinión nada mas.
Respecto a perderse, [ironic=on]tengo un gps nuevo va estupendo[ironic=off] hay unas normas de este foro al respecto de no hacer nada y recibirlo todo. El profesor le puso una tarea (que a mi particularmente me parece perder el tiempo) y la debe de hacer él. Como pista le he dicho que busque biestables y mas concretamente el tipo D, sin embargo tu, sergiod no aportas nada y solo dices que me pierda, no me parece coherente.


----------



## SERGIOD (Jun 26, 2011)

Bueno expresate bien y no confundas las cocas por que das a entender que el profesor le da algo inutil  al mandarle a hacer la tarea, solo bastaba en decirle que el analice las cosas por si mismo mediante los flip flop tipo de y punto sin desmerecer el trabajo que mando a hacer el profesor


----------



## Scooter (Jun 26, 2011)

Bien, pues que aclare su pregunta.
¿Ram de bus de 4 bits y ¿xxx? nibbles o solamente una "ram" que consta de 4 bits?
¿Y luego como se leen/escriben, uno a uno o los 4 de golpe?
Si es uno a uno hace falta un decodificador de direcciones, si es de golpe no.

PD1. sigo pensando que es un ejercicio absurdo al 100000000% y por eso lo digo. Muchos de mis compañeros se dedican a encargar ejercicios de este estilo y así no se preparan la clase, se acaba el curso y no explican nada. Y se de que hablo. Montar una ram es perder el tiempo miserablemente, otra cosa es que esplique que llevan dentro, y luego que las usen como tal.

PD2. Agregar al inicio de la PD1 _"A mi me parece que..."_


----------



## sephirot666 (Jun 26, 2011)

el problema es que el profesor solo nos dijo que 4 bits, 4 bits de que??? quien sabe, acabo de conseguir un diagrama que supuestamente es una memoria ram, pero no entiendo como se esciben los datos y como leerlos me pueden decir como poner una imagen aqui para que la puedan ver??? 

y gracias por su tiempo


----------



## Scooter (Jun 26, 2011)

Pues depende de si los buses de lectura y escritura son uno o dos, y un largo etcétera....

Para 4 bits 4 biestables a elegir.


----------



## sephirot666 (Jun 26, 2011)

el problema es que el profesor solo nos dijo que 4 bits, 4 bits de que??? quien sabe, acabo de conseguir un diagrama que supuestamente es una memoria ram, pero no entiendo como se esciben los datos y como leerlos me pueden decir como poner una imagen aqui para que la puedan ver??? 

y gracias por su tiempo


----------



## Scooter (Jun 26, 2011)

Si es tipo D se pone el dato en D y se activa la señal clk, para "escribir". Para leer mira la salida Q, si las Q tienen que ir a un bus entonces poner salidas triestado y un decodificador de direcciones.
Pero con los datos que da (ninguno) pues esto es (perder el tiempo)² y lo demás son tonterías.


----------



## MrCarlos (Jun 26, 2011)

Hola sephirot666

Volviendo al tema:
*Adjunta ese circuito que dices haber encontrado.*

Preferentemente hay que desarrollar esa RAM en un simulador para depurarla(Debug, eliminar los errores) y obtener el diagrama. *Qué simulador utilizas ??*.

Todo lo que diste de información es: “*Una memoria RAM de 4 BIT’s en Protoboard*”. 
Falta información: Cuántos BIT’s de salida?.

Suponiendo que fueran 4 BIT’s para las direcciones y 4 BIT’s para los datos:
Se requeriría circuitos que tubieran la capacidad de “Memorizar” por ejemplo Flip-Flop tipo D.
Te pueden servir:
74LS173 de 4 BIT’s.
74LS273 de 8 BIT’s.
74LS374 de 8 BIT’s.
74LS377 de 8 BIT’s.
y muchos otros.

Las 16 direcciones se podrían programar con 4 interruptores(DipSwitch’s) así como los 4 BIT’s de datos, otros 4 DipSwitch’s. 
Se requiere un botón para grabar los datos.
Un conmutador para poner la RAM en modo de lectura o escritura.
Compuertas de 3 estados por ejemplo 74LS245.
LED’s o Display’s para visualizar el contenido de las diferentes direcciones en la RAM.
Y muchas ganas para lograr el objetivo.

saludos
a sus ordenes
PD: para adjuntar un archivo dale Click al Boton Ir a Avanzado.


----------



## sephirot666 (Jun 26, 2011)

adjunto una imagen  de un circuito que encontre espero sea de una memoria ram, supongo que en ese circuito uno mete los datos manualmente, pero no entiendo como funciona realmente, si pongo por ejemplo las entradas en 111 y pongo escribir, y como elijo la fila, y ese tipo de cosas no me quedan claras, espero su ayuda gracias

por cierto, no utilizo ningun simulador, habia tenido otros profes que para circuitos asi (por ejemplo un sumador, un contador, etc) nos daban ellos el diseño y explicaban su funcionamiento por eso no habia tenido la necesidad de usar ningun simulador porque tambien nos decian a donde conectar cada patita de los chips que usaabamamos, obviamente nos decian el porque, pero no se como se conecta el flip flop tipo D

saludos


----------



## MrCarlos (Jun 26, 2011)

Hola sephirot666

Esa es una memoria RAM de 2x3 BIT’s. 2 de direcciones y 3 de datos separados los de entrada de los de salida.
Tu requieres una memoria RAM de 4 BIT’s. probablemente sean 2 para direcciones y 2 para datos.
Puedes utilizar esa que adjuntaste pero sin utilizar el BIT mas significativo de el BUS de datos; Los nombrados I2 O1.

Hablando de el circuito contenido en la imagen que adjuntaste:
Esa memoria guarda(Memoriza) los datos, combinación de unos y ceros, que estén en el BUS llamado Data in, arriba a la izquierda. Los datos por BIT se llaman I0, I1, I2.
Por medio de las entradas A1, A0 le decimos en qué dirección guardar aquellos datos así:A1 A00 0 Dirección 0. Nombran a esta dirección como Word 0 y horizontalmente en esos FF tipo D guardan los datos.0 1 Dirección 1. Nombran a esta dirección como Word 1 y horizontalmente en esos FF tipo D guardan los datos.1 0 Direccion 2. Nombran a esta dirección como Word 2 y horizontalmente en esos FF tipo D guardan los datos.1 1 Direccion 3. Nombran a esta dirección como Word 3 y horizontalmente en esos FF tipo D guardan los datos. 
Hay 4 filas *de circuitos similares*. Notas en la primer fila una compuerta AND nombrada Write gate ??... por ahí llega una señal de Ck para que el Flip-Flop pase el contenido de su D a su Q.
Esa señal Ck llega *SI* Las entradas de control:
CS es cierta 1.
RD falsa 0.
En cuál dirección se grabaran esos datos?... pues en la que apunte el BUS de direcciones por medio de los BIT’s A1 y A0. cada fila, *de circuitos similares* corresponden a una dirección. 

Para leer el contenido de una dirección simplemente se pone esa dirección en el BUS de direcciones y se habilita las entradas de control nombradas OE, RD, CS así:
OE = 1.
RD = 1.
CS = 1.
Tal y como dice al calce del dibujo que adjuntaste.
(Output enable = CS. RD. OE.)

saludos
a sus ordenes


----------



## sephirot666 (Jun 26, 2011)

Ok entonces si es una memoria ram, pero que me recomiendas y como le agrego algo para comprobar su funcionalidad, le puedo poner unos leds en la salida, que prendan o se mantengan apagados dependiendo de el dato guardado??? Pero como los conecto???

gracia s por tu tiempo y tu respuestas

saludos


----------



## MrCarlos (Jun 26, 2011)

Hola sephirot666

Efectivamente ese circuito es de una RAM. (Memoria de Acceso Aleatorio, *R*andom *A*ccess *M*emory).

QUE SIMULADOR UTILIZAS ?? . Te pregunte desde mi primer mensaje.

Para las entradas de datos, direcciones y control puedes utilizar conmutadores que conecten cada entrada al Vcc. o a Gnd.

Para las salidas Un LED a cada una. El ánodo a la salida el cátodo a una resistencia de , digamos, 220 Ohms, su otra terminal a Gnd. si el dato es 1 prende, si es 0 se apaga.

saludos
a sus ordenes


----------



## sephirot666 (Jun 26, 2011)

Muchas gracias por tu ayuda me esforzare mañana haciendo el circuito por que me falta material, pero espero que si funcione y adjuntare una foto ya terminado

gracias por tu oportuna respuesta y tiempo

saludos


----------



## MrCarlos (Jun 26, 2011)

Hola sephirot666

y qué simulador utilizas?

saludos
a sus ordenes


----------



## sephirot666 (Jun 26, 2011)

mmm simulador??? ninguno no he tenido la oportunidad de usarlo, te comento que todos los circuitos que eh hecho me los han dado los profesores

cual me recomiendas usar???

saludos


----------



## Scooter (Jun 27, 2011)

Si solo son cuatro bits, suponiendo que el bus sea de un bit te bastaría con los cuatro biestables, un decodificador de 2 a 4 y un multiplexor de 2 a 4 si los biestables no son triestado, si lo son basta con el decodificador.


----------



## sephirot666 (Jun 28, 2011)

mmm no entiendo donde poner un boton para que grabe me pueden ayudar???


----------



## Scooter (Jun 28, 2011)

En la línea que va a los clk
¿Has dado biestables?


----------



## sephirot666 (Jun 28, 2011)

estoy simulando el circuito en multisim pero no hace nada el circuito ya me desespere, ya le puse el boton pero d todos modos no hace nada, el problema es que no se que onda con los flip flops segun ya conecte, la d, la q, la clk, pero no se que onda con los demas, el clr y el pr los mando a vcc, a gnd o los dejo sin conectar a nada???


----------



## Scooter (Jun 28, 2011)

Depende de como sean, los tendrás que poner a "nivel inactivo"


----------



## sephirot666 (Jun 28, 2011)

nivel inactivo??? mmm no me suena ese termino perdon pero es grand mi ignorancia 

otra pregunta si no te molesta???

tengo que ponerle otro button para leerlos los datos???

saludos


----------



## Scooter (Jun 28, 2011)

Pues que si el reset se activa con un 1 lo pongas al nivel que no lo hace activo osea un 0. Si el reset se activa con un 0 lo pones a 1

Pues no se que esquema estás haciendo, las ram de verdad si que llevan una línea de escritura y otra de lectura.


----------



## sephirot666 (Jun 28, 2011)

ok gracias sigo intentando

pues ya puse un boton en la linea de los clk y un led mas adelante para verificar que haga la escritura, pero no prende nunca el led al botonaso, donde va el boton que no mas no le hayo lo puse donde dice cs*rd negada  esta la flecha


----------



## hectormdn (Jun 4, 2012)

Scooter dijo:


> Si el curso es de un billón de horas es lo ideal, teniendo en cuenta que seguramente será de menos y de que la electrónica tiene "unos cuantos" temas interesantes que tratar, me parece que con saber usarlas hechas ya irían bien.
> Como a todo lo que comento en este foro, hay que añadirle un _"a mi me parece que"_, es mi pinión nada mas.
> Respecto a perderse, [ironic=on]tengo un gps nuevo va estupendo[ironic=off] hay unas normas de este foro al respecto de no hacer nada y recibirlo todo. El profesor le puso una tarea (que a mi particularmente me parece perder el tiempo) y la debe de hacer él. Como pista le he dicho que busque biestables y mas concretamente el tipo D, sin embargo tu, sergiod no aportas nada y solo dices que me pierda, no me parece coherente.



...solo se, que nada se!...(deberia ser tu cable a tierra men)


----------

