Ir al contenido principal

Herramientas imprescindibles: DRAM Tester

El DRAM Tester es una herramienta muy útil para comprobar el estado de los chips de memoria DRAM que podemos encontrar en nuestros ordenadores de 8 bits. En este artículo vamos a ver qué podemos hacer con este dispositivo y sobre todo cómo podemos montarnos uno nosotros mismos con todo el detalle para no fracasar en el intento. 


Uno de los problemas más comunes de los ordenadores retro es que falle la memoria RAM. Estos montaban memorias RAM dinámicas que tienen una alta densidad de empaquetado y son más económicas, aunque un poco más lentas por la necesidad de refresco. 

Los chips de memoria DRAM que nos solemos encontrar en estos ordenadores ochenteros son el 4116 (16K) y el 4164 (64K). El 4116 necesita voltajes de +5V, -5V y +12V, sin embargo, el 4164 solo necesita una alimentación de 5V.

Para detectar si hay un problema en la memoria, primero hay que comprobar si les está llegando el voltaje correcto, si es así, existen distintos métodos para ver qué chip falla, el más rudimentario es tocar con los dedos para identificar cuál es el que más se calienta. También, se podría utilizar un osciloscopio para analizar la salida de datos y si le están llegando las distintas señales como son RAS, CAS, WR o las de direccionamiento. Con ver la salida sería más que suficiente para evaluar si el comportamiento es errático, el voltaje no es el correcto o directamente no hay. 

Lo más sencillo es utilizar dispositivos externos que, mediante un testeo, sean capaces de identificar qué chip está fallando, como son Dandanator, para ZX Spectrum y Amstrad CPC, o el Dead Test Cartridge para Commodore 64.


Si en la comprobación sale que son varios los chips de memoria los que fallan, habría que revisar el estado de los multiplexores. 

Al detectar el chip que falla, hay que desoldarlo de la placa base, si no está en zócalo. Antes de sustituirlo, sería interesante comprobar si realmente estaba mal y ver si el reemplazo está bien porque si hemos comprado un lote de repuesto posiblemente alguno venga mal. Para realizar esta comprobación podríamos utilizar otro ordenador con los chips de memoria en zócalo y al poner el chip que fallaba o uno nuevo, ver si arranca o da también error como en el otro ordenador. Esto es un poco engorroso y a su vez costoso porque necesitamos disponer de varios ordenadores y, si nos gusta coleccionarlos, tendríamos que tener por duplicado los ZX Spectrum, Commodore 64, Amstrad CPC, MSX, etc... Para evitar esto, lo mejor es tener un DRAM tester que nos vale para cualquier ordenador y además apenas ocupa espacio. 

Hazte tu propio DRAM Tester

Es difícil encontrarlos ya hechos y si los hay tendrán un precio muy alto. Por lo que lo mejor es que nos lo hagamos nosotros mismos.

Toda la información la podemos encontrar en DRAM Tester 4.2.1 y la placa base la encargué en PCBWay en la página que tiene el creador. Todos los componentes los compré en Aliexpress. 

Una vez que tengamos soldado todos los componentes, hay que configurar el Arduino Nano. Para realizar esto, hay que descargarse el proyecto de la web de Github, buscamos en la carpeta Firmware el archivo Dram-tester-lcd_v4.2.ino.hex y lo cargamos con la utilidad Avrdude. Al conectar el Arduino Nano a un PC Windows, en el administrador de dispositivos podemos ver el puerto serie al que está conectado, en mi caso el puerto COM8:


Abrimos una ventana
CMD y ejecutamos el comando avrdude, que previamente tenemos que descargar. Como podéis ver en la imagen, he renombrado el fichero Dram-tester-lcd_v4.2.ino.hex a dram.hex, pero se puede mantener el mismo nombre:

avrdude -c arduino -P COM8 -b 57600 -p atmega328p -D -U flash:w:Dram-tester-lcd_v4.2.ino.hex:i

Nota: En mi caso he puesto COM8, pero aquí tenéis que poner el que os salga en el administrador de dispositivos de Windows.

Al ejecutarlo, nos tiene que mostrar el siguiente resultado:


Ponemos el Arduino Nano en la placa base del DRAM Tester, los jumpers en modo 4116, por el momento no colocamos ningún chip de memoria en el zócalo zif, y conectamos el cargador al Arduino. 
Al principio, aunque tengamos puesto los jumpers en modo 4116, nos saldrá por pantalla que podemos medir un chip 4164, esto es debido a que el DC-DC converter MT3608 está sacando por la salida el mismo voltaje de la entrada, es decir, 5V. Como se necesitan 12V para el 4116 hay que girar el tornillo del potenciómetro unas 10 o más veces en sentido contrario a las agujas del reloj y cuando empiece a subir el voltaje de salida, ajustarlo a 12V. Para hacer esto necesitamos un voltímetro poniendo la punta positiva en el pin 8 del zócalo zif y la negativa en el pin 16, al salir 12V dejaremos de girar el tornillo. Cuando se vaya aproximando a este valor, podremos observar que el display cambia de 4164 a 4116. 

Comprobar chips de memoria

Primero, antes de conectar el cargador al Arduino, tenemos que colocar los jumpers en el tipo de chip que queremos medir. Es importante no equivocarse, porque si queremos medir un 4164 y tenemos seleccionado los jumpers del 4116 lo podríamos freir. También es importante que, al situar el chip en el zócalo zif, el pin 1 quede situado en la parte superior izquierda. En algunos chips viene identificado con un punto y en otros la parte superior tiene una hendidura en forma de U que nos dice que el pin 1 es el que está a la izquierda. 

Cuando lo tengamos todo preparado, conectamos el cargador al Arduino Nano, colocamos el chip que queremos medir, bajamos la palanquita del zócalo zif y pulsamos continuamente el pulsador hasta que veamos por pantalla que empieza a ejecutar los tests, si todo ha ido bien nos saldrá que el test se ha pasado y, si no, saldrá un mensaje de error: 


Conclusiones

Funciona bastante bien, todos los chips me los ha medido correctamente sin falsos positivos ni falsos negativos. Es muy útil si no disponemos de otro ordenador donde podamos sustituir los chips y comprobar su funcionamiento.

Solo sirve para medir los chips fuera de la placa, es decir, que no sirve para detectar fallos cuando están soldados, para esto hay otros métodos que he mencionado al principio.

Para mí ha sido toda una experiencia el realizar este proyecto, era la primera vez que pedía pcbs en PCBWay y todo salió bien porque las placas las recibí en menos de dos semanas y no tuve que pagar aduanas. El montaje fue muy rápido, no son muchos los componentes que hay que soldar, y el único pero fue que en la web de Github no se indica que el conversor DC-DC hay que configurarlo para que en la salida dé 12V, pero por lo demás está todo muy bien explicado.

D.R. Spectrum
  






Comentarios

Entradas populares de este blog

El botiquín del Spectrum: Componentes de repuesto

Debido a la avanzada edad de nuestros Spectrum, hay que estar prevenidos ante cualquier imprevisto que pueda surgir en forma de avería. Como hemos podido ver en alguna de las reparaciones que he publicado en este blog, me ha hecho falta una serie de componentes electrónicos, que en algún caso no los tenía, y he tenido que esperar a conseguirlos yendo a una tienda de electrónica o comprándolos por internet.  Para no encontrarnos en esta situación, he identificado cuales son las averías más frecuentes y qué componentes harían falta para poner de nuevo en marcha a nuestro Spectrum.  CPU La CPU que nos podemos encontrar en el ZX Spectrum puede ser Zilog Z80A de 4MHz o NEC D780-C, ambas totalmente compatibles. Aunque el cristal de cuarzo para generar una señal de reloj estable es de 14MHz, realmente la señal de reloj que utiliza la CPU es la marcada por el pin 32 (CLK) de la ULA. Esta señal tiene una frecuenca de 3,5MHZ, que es el resultado de dividir por 4 la señal de relo...

Mi primer Amstrad CPC 6128: Puesta a punto y cómo sacarle provecho en la actualidad

El Amstrad CPC era el ordenador que siempre quise tener de niño. Recuerdo que, por el año 1986, en el centro comercial Alcampo de mi barrio tenían una especie de "corner" donde se exhibían los ordenadores de Amstrad que se podían tocar y hacer cosas con ellos, una idea muy brillante para aquella época, ya que no era un método muy habitual para captar compradores, y sin embargo, hoy en día se sigue aplicando y funcionando. Al pillarme cerca del instituto nos acercábamos a la hora del recreo y nos poníamos a hacer nuestros pinitos en Basic, de esta forma surgió mi gusto y admiración por este potente ordenador. Sin embargo, al final, en mi casa optamos por comprar el ZX Spectrum +2A, por varias razones, el precio era casi la mitad, eso sí, sin incluir monitor, en el instituto aprendíamos Basic en ordenadores Sinclair, como el de 48K o el QL, y lo más importante, casi todos mis amigos tenían ordenadores Spectrum. Todo esto influyó en la decisión final, viendo como se alejaba la o...

Cargar juegos con la App PlayZX (ZX81, ZX Spectrum, +2A/B y +3)

Existen varias alternativas para cargar juegos de forma casi instantánea en formatos .TAP y .TZX, como DivIDE, Dandanator, etc... A los más nostálgicos que nos sigue gustando cargar desde cinta y esperar esos minutos mientras contemplamos el screen de turno, tenemos que buscar otras alternativas que sean parecidas para así dar descanso a las cintas de casete que tan buenos momentos nos dieron, y de esta forma proporcionarles ese merecido retiro en una estantería junto a sus viejas compañeras donde podamos contemplarlas y admirar sus carátulas. La alternativa más popular es TZXduino, que junto a una tarjeta de memoria sd podemos reproducir los juegos como si los cargásemos desde un casete. Esta opción nos obliga a tener otro dispositivo, y dada la situación, por un poco más de lo que puede valer casi sería mejor opción comprarse un Divide, aunque en concepto son dispositivos muy distintos.  Otra opción sería utilizar la aplicación para teléfonos móviles Android PlayZX . En la web de...