TODOPIC
Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: kronocher en 14 de Febrero de 2006, 21:55:00
-
hola.
Tengo entendido que existen dos tipos de memorias RAM, la estatica y la dinamica... la dinamica necesita un circuito adicional para refrescar los datos...
anduve buscando por la web pero por el momento no encuentro un circuito basico , elemental para realizar dicho objetivo...
no se si alguien del foro conoce algun circuito...
gracias...
-
Las RAM dinámicas hay que refrescarlas cada muy poco tiempo(del orden de 100ms). Estas RAMs son muy útiles para aplicaciones donde la velocidad y la capacidad de almacenamiento son críticas.
Estoy pensando en utilizar alguna de las que tengo aqui de CD-ROMs estropeados, que tienen bastante capacidad de almacenamiento.
El refresco se lo pensaba hacer por software. Programar una interrupción con algún timer que haga esta tarea.
Seguro que hay controladores de memoria DRAM pero serán más caros que la propia RAM estática.
En qué tienes pensado utilizarla?
-
Hola amigos,
Que tipo de memoria vas a utilizar? las que tienen las antiguas PCs? tengo un amigo que queria hacerlo con ese tipo de memorias pero la tasa de refrescamiento no le daba con el PIC ni a 20MHz porque al paracer el tiempo de refrescamiento es muy bajo y al PIC no le da tiempo, si son de este tipo yo creo q deberias buscarte el controlador adecuado, verifica en las tarjetas madre antiguas y de alli podrias conseguir el numero del integrado.
Saludos
-
Tengo el siguiente circuito de una dram

pero a lo mucho el llega a obtener 17000 muestras por segundo, creo que es lo maximo que se puede obtener con este pic, el codigo esta en c si te sirve lo puedo subir.
Para lograr velocidades mayores, del orden de 20 MHz hay un modo que se llama FAST PAGE, hay bastante informacion en la red pero no he encontrado un circuito practico y creo que esta fuera del alcance de los pics comunes.
Saludos
-
hola.
la aplicacion es para usar las memorias DRAM para una tarjeta de adquisicion,
bueno por el momento cuando tengo tiempo estoy dedicado al software,
anduve buscando por la web y encontre que existen unos 3 o 4 tecnicas de refrescamiento, ahora , no estoy seguro . dependiendo del chip es que se tiene circuitos internos en el chip para hacer el refrescamiento???
tengo otra duda:
La tecnica RAS (only refresh) segun lo que busque dice que requiere un contador "externo" de lineas para apuntar a otra direccion para refrescar, lo de externo se refiere a debemos hacer un circuito por nuestra cuenta fuera de la DRAM para que haga eso, y apuntar libremente??
otra duda:
independiente de que si la DRAM tenga o no tenga circuitos de refresco(no se si es correcto) cada vez que lea y se escriba en la memoria se refresca??
bueno. como siempre... gracias
-
hola..
leyendo un poco mas , despues de mucho tiempo recien entendi que en todos los DRAM tienen un circuito de refresco que es el "sense amplifier", solamente que dependiendo del DRAM se tienen aquellos que generan sus propios direcciones para refrescar, y en caso que no lo tengan se debe generar esas direcciones con un circuito externo.
quisiera saber si es eso correcto o estoy escribiendo cosas sin sentido???
espero sus respuestas.
gracias. como siempre.
-
En la version de CCS 3.242 hay un ejemplo y el driver necesario para manejar una DRAM tipo 41256.. yo lo vi recien ahora no se si no estaba tambien en versiones mas viejas.. El corazon del refresco es lo siguiete:
// the timer will interrupt every 4ms inorder to refresh the
// memory
#int_timer1
void Refresh ( )
{
unsigned int16 i;
// to output, CAS must be high, then each row is output followed
// by an RAS cycle
output_high(RAS);
output_high(CAS);
for(i=0;i<0x200;i++)
{
addressByte(i);
output_low(RAS);
output_high(RAS);
}
// set the timer up so that it will role over in 4ms
set_timer1(0xC800);
}
SAludos Mariano..