Para los gurus de la electronica, cambio de ram?

Si por algo se caracteriza el Spectrum es por su gran variedad de periféricos (clásicos y modernos)

Moderador: Sir Cilve Sinclair

fulas
Jack The Nipper
Mensajes: 141
Registrado: Lun Jul 02, 2007 3:28 pm
Ubicación: En Tenerife.

Para los gurus de la electronica, cambio de ram?

Mensaje por fulas » Dom Nov 11, 2007 12:43 am

Bueno pues eso, al tajo, a ver si soy capaz de expresarme con claridad, que esto no es precisamente lo mio, pero lo suyo es, creo, intentarlo.

Hace unos meses compre en las Americas 100 chips 4116 ram dinamica, y me salieron una pasta, mientras esperaba el paquete me asalto la curiosidad, tendria que haber, a estas alturas un modo de sustituir la ram dinamica por una estatica, siendo estas ultimas, mas baratas y accesibles que las antiguas, lo contrario que hace 20 años.

El tema seria plantearlo de manera que solo hubiera que colocar los socalos en lugar de la antigua ram y ahi, colocar una placa encima con los integrados necesarios para la conversion.

Esta es mi idea, a groso modo de como accede el z80 y la ula a la ram:
Imagen

Y esta es la que he pensado para solventar el problema del desdoblado del bus de direcciones:
Imagen

Descabellado?
La idea es que el Latch se encarge de desdoblar el bus de direcciones con el disparo de RAS, CAS,MREQ, o una combinacion de todas, no se como seria el tema.

Bueno alguna idea, se podria, mientras escribo esto me estoy imaginando a MCLEOD IDEAFIX con una de sus disertacionos que nos dejan, o al menos a mi, con la impresion de "Joder, este tio tiene que haber pasado mucho mucho tiempo delante de un ordenador,de un libro,de un integrado,....... :lol: "

Bubu
Freddy Hardest
Mensajes: 544
Registrado: Mié Oct 31, 2007 12:15 am

Mensaje por Bubu » Dom Nov 11, 2007 12:57 am

Y ¿para qué quieres cambiar una memoria dinámica por una estática?

Avatar de Usuario
mcleod_ideafix
Johnny Jones
Mensajes: 3985
Registrado: Vie Sep 21, 2007 1:26 am
Ubicación: Jerez de la Frontera
Contactar:

Mensaje por mcleod_ideafix » Dom Nov 11, 2007 1:43 am

Cambiar la memoria dinámica por una estática es una buena idea, más que nada porque los 4116 cada vez son más diíficiles de encontrar, y la memoria estática permite algunas... ehm.... virguerías, como la de por ejemplo, mantenerla con corriente suficiente como para no perder los contenidos, y de esa forma no perderlos ni aún quitando la alimentación (previo pequeño cambio en la ROM para que no se ponga a inicializar la memoria).

Sí, la forma de desdoblar el bus para hacer aparecer la 62256 como si fuera memoria dinámica es correcta, al menos así a primera vista. Para hacer esto conziencudamente, habrá que repasarse los datasheets de los 4116.

Pero no te olvides de los ciclos de refresco. No sé cómo los implementa la ULA, porque los primeros 16K es ella quien se encarga de refrescarlos. Esos ciclos de refresco podrían confundir a la memoria estática y hacer que volcara datos cuando realmente no se le están pidiendo y provocar un caos en el bus de datos. Eso nos lleva de nuevo a los datasheets de la 4116. Tu "glue logic", además de encargarse del demultiplexado del bus de direcciones, debe ser capaz de detener cualquier intento de ciclo de refresco para que no llegue como ciclo de lectura o escritura a la memoria.
Web: ZX Projects | Twitter: @zxprojects

fulas
Jack The Nipper
Mensajes: 141
Registrado: Lun Jul 02, 2007 3:28 pm
Ubicación: En Tenerife.

Re: Para los gurus de la electronica, cambio de ram?

Mensaje por fulas » Dom Nov 11, 2007 1:18 pm

Y ¿para qué quieres cambiar una memoria dinámica por una estática?

Vas a una tienda de electronica y preguntas por un 4116 y te miran como si te hubieras estado en coma durante 15 años y te acabas de despertar o te dicen algo asi como "joder, eso era de cuando Franco era corneta, no?", sin embargo pregunta por un 62256 y la respuesta, ¿cuantos quieres?.
Pero no te olvides de los ciclos de refresco. No sé cómo los implementa la ULA, porque los primeros 16K es ella quien se encarga de refrescarlos. Esos ciclos de refresco podrían confundir a la memoria estática y hacer que volcara datos cuando realmente no se le están pidiendo y provocar un caos en el bus de datos. Eso nos lleva de nuevo a los datasheets de la 4116. Tu "glue logic", además de encargarse del demultiplexado del bus de direcciones, debe ser capaz de detener cualquier intento de ciclo de refresco para que no llegue como ciclo de lectura o escritura a la memoria.

Pues es aqui donde me pierdo, para la ram 62256, no necesito ni CAS, ni RAS, ni RFSH, supongo, pero lo que si necesito es un sincronimo entre los "latcheos" que pediria la ULA y los del Z80.

Cuando la ULA va acceder a memoria, pararia el Z80, con lo cual, el Z80 no daria problemas, no?, otra cosa es como hago para que la señal RFSH que viene de disparar los MULTIPLEXORES (ls157), dispare el LATCH de forma coherente.

Aparte de esto se te ocurre alguna otra cosa que tuviera que tener en cuenta.
Hazlo, o no lo hagas, pero no lo intentes.

fulas
Jack The Nipper
Mensajes: 141
Registrado: Lun Jul 02, 2007 3:28 pm
Ubicación: En Tenerife.

Re: Para los gurus de la electronica, cambio de ram?

Mensaje por fulas » Dom Nov 18, 2007 8:59 pm

Bueno, he llegado a un punto en el que no voy superar sin antes resolver dudas, como por ejemplo, el acceso del Z80 a la video ram, mirando el esquema de Microhobby, del Sr. Primitivo de Francisco,http://microhobby.speccy.cz/mhf/013/MH013_21.jpg, por lo que yo puedo ver, la unica señal del bus de control que llega directamente a la video ram es RFSH, por lo que me imagino que tendra acceso a la memoria a traves de la ULA por la señal READ/WRITE,¿no?
Otro tema es a que estado corresponde cada uno, READ 0 y WRITE 1 ¿es asi?

Sobre el latch, he optado por un 74LS373 que dispone de tres señales de control que son activas en diferentes condiciones, LE latch enable(activa en alto)que pretendo poner a 5v fijo, OE output enable(activa en bajo)a 0v fijo, y CP clock (activa por su flanco de subida) y esta ultima es la que me interesa para el "latcheo" con la señal CAS o RFSH de la ULA,¿que les parece?

Bueno si todo ha ido bien asta este punto, que el bus este desdoblado y presente en las entradas de la memoria 62256, lo dudo :oops: , me tengo que liar de nuevo con el bus de control de esta memoria,OE,WE Y CS (chip select),todas activas en estado bajo) bueno, suponiendo que el unico control que tenia sobre la memoria era el R/W de la ULA, supongo que al menos OE y WE las tengo controladas colocando un negador en la entrada de una de ellas ¿no?

Jeje, muchas suposiciones ¿no?
Hazlo, o no lo hagas, pero no lo intentes.

sromero
Nonamed
Mensajes: 1221
Registrado: Mar Abr 17, 2007 12:35 pm
Ubicación: Valencia
Contactar:

Re: Para los gurus de la electronica, cambio de ram?

Mensaje por sromero » Lun Nov 19, 2007 11:55 am

fulas escribió:Vas a una tienda de electronica y preguntas por un 4116 y te miran como si te hubieras estado en coma durante 15 años y te acabas de despertar o te dicen algo asi como "joder, eso era de cuando Franco era corneta, no?", sin embargo pregunta por un 62256 y la respuesta, ¿cuantos quieres?.


X-D X-D X-D
NoP / Compiler

Avatar de Usuario
mcleod_ideafix
Johnny Jones
Mensajes: 3985
Registrado: Vie Sep 21, 2007 1:26 am
Ubicación: Jerez de la Frontera
Contactar:

Re: Para los gurus de la electronica, cambio de ram?

Mensaje por mcleod_ideafix » Lun Nov 19, 2007 5:56 pm

fulas escribió:Bueno, he llegado a un punto en el que no voy superar sin antes resolver dudas, como por ejemplo, el acceso del Z80 a la video ram, mirando el esquema de Microhobby, del Sr. Primitivo de Francisco,http://microhobby.speccy.cz/mhf/013/MH013_21.jpg, por lo que yo puedo ver, la unica señal del bus de control que llega directamente a la video ram es RFSH, por lo que me imagino que tendra acceso a la memoria a traves de la ULA por la señal READ/WRITE,¿no?
Otro tema es a que estado corresponde cada uno, READ 0 y WRITE 1 ¿es asi?


Sobre el artículo... no lo recordaba... pero que bueno esa explicación de que "la palabra uncomitted significa que si bien Sinclair no la realiza, sí tiene todos los derechos" X-DDDDDDDDDDD. Aparte de esa nimiez, es un artículo curradísimo, y adelanta conceptos que después han sido re-descubiertos y atribuidos a otras personas... pues no, Primitivo de Francisco se adelantó a todos ellos (y aprovecho para decir que debería tener su lugar en WOS, si no lo tiene, por el crédito de muchas de las cosas que comentó en estos artículos)
En realidad lo de "uncomitted" viene de que la matriz lógica que es la ULA está fabricada de tal forma que per sé, no tiene ninguna función (no está "comprometida" a hacer nada, o no está "encargada" de hacer nada, si cogemos la traducción de Primitivo).
Todas las ULA's se fabricaban igual en Ferranti (todas las ULA's de la misma capacidad lógica que la que usa el Spectrum, claro, porque Ferranti tenía varios tipos de ULA's). La "customización" se hacía en el último estado de la fabricación, al colocar la última máscara, es cuando la matriz lógica no comprometida se convertía en un circuito custom completamente comprometido.
Luego pongo el enlace a un par de artículos de Ferranti donde explican exactamente qué es la ULA y cómo el cliente (Sinclair en nuestro caso) tenía que enviar el circuito para fabricar las máscaras y poder darle "el toque final".

Pero respondiendo a tu pregunta: R/W que sale de la ULA, es: 1 para leer, 0 para escribir. De todas formas, mira el esquemático de WOS del Spectrum Issue 3B, porque este que veo en el Microhobby debe ser de un Issue anterior (por ejemplo, falta TR7 para controlar el altavoz), y no creo que RFSH del Z80A llegue a estas memorias: un ciclo de refresco interferiría necesariamente con los ciclos de lectura regular de la ULA, y el resultado sería que el micro estaría todo el rato siendo parado por la ULA, incluso cuando ejecuta código en los 32K superiores, cosa que no pasa. Si mal no recuerdo, el refresco de esa memoria lo hace la ULA usando ciclos sólamente por RAS, así que lo tienes más claro: hasta que CAS no baja, no hay ciclo de lectura o escritura. Si es sólo RAS la que baja, se ignora el acceso, porque será de refresco.
Web: ZX Projects | Twitter: @zxprojects

fulas
Jack The Nipper
Mensajes: 141
Registrado: Lun Jul 02, 2007 3:28 pm
Ubicación: En Tenerife.

Re: Para los gurus de la electronica, cambio de ram?

Mensaje por fulas » Lun Nov 19, 2007 8:20 pm

y no creo que RFSH del Z80A llegue a estas memorias: un ciclo de refresco interferiría necesariamente con los ciclos de lectura regular de la ULA, y el resultado sería que el micro estaría todo el rato siendo parado por la ULA, incluso cuando ejecuta código en los 32K superiores, cosa que no pasa

No pasa, y Primitivo lo explica aqui, el bus de datos y el de control estan "ingeniosamente" aislados por las resistencias de 330 onmios. Primitivo, es mucho Primitivo. :D
Imagen
Hazlo, o no lo hagas, pero no lo intentes.

Avatar de Usuario
mcleod_ideafix
Johnny Jones
Mensajes: 3985
Registrado: Vie Sep 21, 2007 1:26 am
Ubicación: Jerez de la Frontera
Contactar:

Re: Para los gurus de la electronica, cambio de ram?

Mensaje por mcleod_ideafix » Lun Nov 19, 2007 10:50 pm

fulas escribió:
y no creo que RFSH del Z80A llegue a estas memorias: un ciclo de refresco interferiría necesariamente con los ciclos de lectura regular de la ULA, y el resultado sería que el micro estaría todo el rato siendo parado por la ULA, incluso cuando ejecuta código en los 32K superiores, cosa que no pasa

No pasa, y Primitivo lo explica aqui, el bus de datos y el de control estan "ingeniosamente" aislados por las resistencias de 330 onmios. Primitivo, es mucho Primitivo. :D

Más bien no pasa porque es que físicamente no está conectada RFSH a los 16K primeros, según veo en el esquema del issue 3B...
Comprobado! Esa resistencia de 330 ohm (R57) existía en el Issue 2, y desapareció en el Issue 3. Es posible que incorporaran a la ULA la gestión del refresco de esa RAM a partir de la versión 6C001E...
Web: ZX Projects | Twitter: @zxprojects

fulas
Jack The Nipper
Mensajes: 141
Registrado: Lun Jul 02, 2007 3:28 pm
Ubicación: En Tenerife.

Re: Para los gurus de la electronica, cambio de ram?

Mensaje por fulas » Mar Nov 20, 2007 7:40 am

mcleod_ideafix escribió:Más bien no pasa porque es que físicamente no está conectada RFSH a los 16K primeros, según veo en el esquema del issue 3B...
Comprobado! Esa resistencia de 330 ohm (R57) existía en el Issue 2, y desapareció en el Issue 3. Es posible que incorporaran a la ULA la gestión del refresco de esa RAM a partir de la versión 6C001E...


Tienes razon, es que, por lo que se ve, RFSH no hace nada a partir de esta version,no?
Bueno si, para los posibles perifericos.
Hazlo, o no lo hagas, pero no lo intentes.

fulas
Jack The Nipper
Mensajes: 141
Registrado: Lun Jul 02, 2007 3:28 pm
Ubicación: En Tenerife.

Re: Para los gurus de la electronica, cambio de ram?

Mensaje por fulas » Mar Nov 20, 2007 7:56 am

mcleod_ideafix escribió:Si mal no recuerdo, el refresco de esa memoria lo hace la ULA usando ciclos sólamente por RAS, así que lo tienes más claro: hasta que CAS no baja, no hay ciclo de lectura o escritura. Si es sólo RAS la que baja, se ignora el acceso, porque será de refresco.

Bueno de todos modos, esto es lo que me interesa, a ver, la RAM 62256 usa tres señales de control, OE, que llevaria a la señal R/W de la ula, WE , esta otra al mismo sitio pero a traves de un negador. Solucionado el tema de escritura y lectura me falta unicamente que la memoria responda a esas peticiones con CS que iria conectado a una puerta OR, que a su vez iria conectada a RAS por un lado y CAS por otro.
Que te parece mi "glue logic", mcleod_ideafix, lo que me queda es cojer la protoboard y a mecanizar, joder, si supiera usar el EAGLE o algun otro programa de diseño, no tendria que arriesgar la integridad fisica de mis speccy. :cry:
Hazlo, o no lo hagas, pero no lo intentes.

Avatar de Usuario
mcleod_ideafix
Johnny Jones
Mensajes: 3985
Registrado: Vie Sep 21, 2007 1:26 am
Ubicación: Jerez de la Frontera
Contactar:

Re: Para los gurus de la electronica, cambio de ram?

Mensaje por mcleod_ideafix » Mar Nov 20, 2007 7:59 am

RFSH se sigue usando que yo sepa, para refrescar los 32K superiores de la RAM, que no están influenciados por la ULA. En el esquema del Issue 3B sin embargo no llego a ver cómo se usa. Es posible que esas RAM's tengan algún tipo de "hidden refresh" y no lo necesiten... La cosa es que esas memorias, para refrescarse, lo único que necesitan es RAS bajo mientras en el bus de direcciones se pone una de las 128 (¿o son 256?) filas... No sé, habrá que mirarlo con más detalle. La prueba de fuego sería sencillamente coger un Spectrum con el Z80A en zócalo y aislar la patilla de RFSH.
- Si el micro arranca normalmente, pues ya tenemos claro que no se usa para nada
- Si el micro arranca pero en 16K, es que se usa para los 32K superiores
- Si el micro no arranca en absoluto, es que influye de alguna forma también en la VRAM
Web: ZX Projects | Twitter: @zxprojects

Avatar de Usuario
mcleod_ideafix
Johnny Jones
Mensajes: 3985
Registrado: Vie Sep 21, 2007 1:26 am
Ubicación: Jerez de la Frontera
Contactar:

Re: Para los gurus de la electronica, cambio de ram?

Mensaje por mcleod_ideafix » Mar Nov 20, 2007 8:17 am

fulas escribió:Bueno de todos modos, esto es lo que me interesa, a ver, la RAM 62256 usa tres señales de control, OE, que llevaria a la señal R/W de la ula, WE , esta otra al mismo sitio pero a traves de un negador

Esto no lo entiendo... ¿ quieres meter dos señales por la misma patilla OE ?
OE sólo debería estar a 0 cuando el ciclo es de lectura:

Algo así (que creo que es lo mismo que tienes en mente):
OE = WRITE negado (aunque si sacas RD de la placa del Spectrum, te ahorras el inversor)
WE = WRITE
CS = RAS o CAS, la que quieras (me inclino por CAS, que es la que se genera más tarde)
donde RAS, CAS y WRITE son señales que en el esquema original van a las RAM dinámicas.

fulas escribió:Solucionado el tema de escritura y lectura me falta unicamente que la memoria responda a esas peticiones con CS que iria conectado a una puerta OR, que a su vez iria conectada a RAS por un lado y CAS por otro.

Puedes ahorrarte la puerta OR: conéctala solo a RAS, si quieres un ciclo largo... o conéctala a CAS, y entonces podrás ignorar los ciclos de refresco.
fulas escribió:lo que me queda es cojer la protoboard y a mecanizar, joder, si supiera usar el EAGLE o algun otro programa de diseño, no tendria que arriesgar la integridad fisica de mis speccy. :cry:

Pues todo es ponerse, pero vamos, que si necesitas que te eche una mano, por mi encantado, me gusta tu proyecto :)
Web: ZX Projects | Twitter: @zxprojects

fulas
Jack The Nipper
Mensajes: 141
Registrado: Lun Jul 02, 2007 3:28 pm
Ubicación: En Tenerife.

Re: Para los gurus de la electronica, cambio de ram?

Mensaje por fulas » Mar Nov 20, 2007 4:28 pm

mcleod_ideafix escribió:Pues todo es ponerse, pero vamos, que si necesitas que te eche una mano, por mi encantado, me gusta tu proyecto

:D Sin tu ayuda ni si quiera me hubiera atrabido meterme en el tema, como ya te dije hace un tiempo es un lujo tenerte por estos lares.
mcleod_ideafix escribió:Algo así (que creo que es lo mismo que tienes en mente):
OE = WRITE negado (aunque si sacas RD de la placa del Spectrum, te ahorras el inversor)
WE = WRITE
CS = RAS o CAS, la que quieras (me inclino por CAS, que es la que se genera más tarde)
donde RAS, CAS y WRITE son señales que en el esquema original van a las RAM dinámicas.

Bueno pues la memoria estaria en principio solventeda.
El latch 74LS373 dispone de dos señales de control LATCH ENABLE y OUTPUT ENABLE, ambas señales tienen su disparo por estados y no por flancos, lo que me hace pensar que no fue la eleccion adecuada, quizas un 74LS374 que tiene su disparo por flanco de subida seria el mas adecuada, bueno lo suyo con el que tengo ahora seria poner LE a RAS con su negador intermedio, ya que LE es activa en estado alto, y OE a CAS, que coincide ademas con el disparo de los multiplexores ls157 del bus de direcciones. ¿Que te parece?
A proposito me acaban de llegar los adaptadores, joderrrrrrr, que pasada, señores esto de los adaptadores ps/2 es un trabajo profecional y lo demas es tonteria, muchas gracias.
Hazlo, o no lo hagas, pero no lo intentes.

fulas
Jack The Nipper
Mensajes: 141
Registrado: Lun Jul 02, 2007 3:28 pm
Ubicación: En Tenerife.

Re: Para los gurus de la electronica, cambio de ram?

Mensaje por fulas » Mié Nov 21, 2007 10:27 pm

Bueno pues algun progreso he hecho, de momento tengo el montaje en una protoboard y he hecho las primeras pruebas, la verdad era vastante pesimista pero...............
[youtube]http://www.youtube.com/watch?v=PlQiIqXFkxY[/youtube]
http://www.youtube.com/watch?v=PlQiIqXFkxY
:lol: He aprobechado para montar mi flamante ps/2 interface, que funciona a las mil maravillas, gracias de nuevo mcleod_ideafix.
En cuanto al montaje de la ram, pues al menos muestra la pantalla de inicio, algo es algo, ehhhhhh, cosas, se puede apreciar en el video como el mensaje aparece con pixelaciones de vez en cuando y se queda colgado, supongo que de la misma manera que afecta a la zona de video, afectara la zona de variables del sistema, y en fin debe haber un cacao por esos lares.
Decir, si sirve de algo, que manteniendo el reset pulsado la imagen es totalmente nitida.
Mas cosas, me sobraba un bit del bus de direcciones de la ram 62256 que lleve a tierra, mala practica esta, supongo, sin ninguna resistencia por medio para proteger subidas de tension, ¿que resistencia debo utilizar?
Se me ocurre mcleod_ideafix que podria intentar, dentro de mis conocimientos, prepararte un esquema para que le eches un vistazo, y de paso me lo podrias pasar a EAGLE, si no es mucho pedir, para documentar el tema.
De todos modos probare con un latch que dispare por flancos no por estado, supongo que consigo mejor sincronisco con las señales RAS y CAS que son por flancos.
Gracias.
Última edición por fulas el Jue Nov 22, 2007 9:17 am, editado 6 veces en total.
Hazlo, o no lo hagas, pero no lo intentes.

Responder

¿Quién está conectado?

Usuarios navegando por este Foro: Ahrefs [Bot], Bing [Bot] y 13 invitados