PiZx: Clon barato de spectrum con FPGA (WIP)

Sinclair QL, ZX81, +2, +3, 128K ...
Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: PiZx: Clon barato de spectrum con FPGA (WIP)

Mensajepor antoniovillena » 02 Ago 2013, 07:37

mcleod_ideafix escribió:Unas preguntas:
- ¿El clon no lleva salida RGB?


Sí. Son unos de los detalles que faltan en el esquemático, como la propia FPGA, el led o el oscilador. Iría en un conector DB9 con el pinout del joystick, norma atari. La idea es que puedas elegir entre joystick y RGB. De los 5 pines del conector que van a la FPGA, para RGB sólo se usan 4 (para el joystick los 5), uno para sincronismo compuesto y los otros tres son las componentes. Esta salida sería independiente de la de video compuesto y llevaría un codificador sigma-delta.

mcleod_ideafix escribió:- La FPGA que se va a usar, no necesita tensión de 2.5V además de 3.3 y 1.2V ?


No tengo ni idea, tendría que mirarlo. Lo he copiado de los esquemáticos de la MOD-VGA.

mcleod_ideafix escribió:- ¿Para qué sirve el puente J11?


Como he copiado de MOD-VGA empleo la misma RAM, que es de 16 bits. Es para aprovechar los 8 bits altos de la RAM, por si alguien quiere implementar un hipotético procesador de 16bits. Digo hipotético porque no creo que quepa uno real, al menos que esté completo. Este jumper lo que hace es conectar los 8 bits altos a la FPGA, que comparte pines con el bus de expansión.

mcleod_ideafix escribió:Y unos apuntes:
- En el esquemático usas R0,R1,R2, B0,B1,B2, etc. pero entiendo que R2 es por ejemplo, la componente de más peso de las tres que forman el rojo, ¿no? Si es así, debería estar conectada a la resistencia de 470 ohmios.


También copiado de MOD-VGA. En la próxima versión invierto el orden.

mcleod_ideafix escribió:- Además, subir un pelín las dos resistencias de 240 ohmios en el circuito del teclado PS/2, y ponerlas a 270 ohmios. Esto es para cumplir con los requerimientos de Xilinx sobre hacer una GPIO tolerante a 5V
- Si se va a ofrecer la tensión de 3.3V para alimentar dispositivos externos vía el conector de expansión, sugiero que el regulador de 3.3V sea más grandecito, y no el pequeñito con encapsulado SOT-223 (si sólo se va a emplear para alimentar lógica interna, ese regulador sí va bien)
- Los reguladores agradecen que haya condensadores de desacoplo a entrada y salida, fisicamente muy cerquita del propio regulador. En el circuito por tanto sería conveniente añadir un condensador de 10uF a entrada y otro a salida de cada regulador.


Tomo nota. Gracias.

Avatar de Usuario
mcleod_ideafix
Amiga 2500
Amiga 2500
Mensajes: 5316
Registrado: 06 Oct 2009, 04:12
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Vectrex
Primera consola: TV Games/Pong Clone
Ubicación: Jerez de la Frontera
Gracias dadas: 12 veces
Gracias recibidas: 53 veces
Contactar:

Re: PiZx: Clon barato de spectrum con FPGA (WIP)

Mensajepor mcleod_ideafix » 02 Ago 2013, 07:49

antoniovillena escribió:Sí. Son unos de los detalles que faltan en el esquemático, como la propia FPGA, el led o el oscilador. Iría en un conector DB9 con el pinout del joystick, norma atari. La idea es que puedas elegir entre joystick y RGB

Pues... no sé, pero no me parece buena idea. ¿Por qué no vas a poder jugar con joystick con salida RGB? ¿O te refieres a que los pines no usados del conector de joystick tendrían la señal RGB?

antoniovillena escribió:Esta salida sería independiente de la de video compuesto y llevaría un codificador sigma-delta.

¿Y por qué no aprovechar la salida RGB analógica que ya está generada con las resistencias? O si vas a usar sigma-delta, ¿para qué el DAC de resistencias? (nota: usar sigma-delta para generar una señal de 3 bits, que puede llegar a tener 3.5MHz supone usar una frecuencia para el conversor de 56MHz. 112MHz si se quiere implementar algo que dé una señal de 512x192, como el Sam Coupé)

antoniovillena escribió:Como he copiado de MOD-VGA empleo la misma RAM, que es de 16 bits. Es para aprovechar los 8 bits altos de la RAM, por si alguien quiere implementar un hipotético procesador de 16bits. Digo hipotético porque no creo que quepa uno real, al menos que esté completo. Este jumper lo que hace es conectar los 8 bits altos a la FPGA, que comparte pines con el bus de expansión.

El que esos pines estén fisicamente conectados al bus de datos alto de la RAM... ¿no fastidia a la hora de usarlos para otra cosa?
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: PiZx: Clon barato de spectrum con FPGA (WIP)

Mensajepor antoniovillena » 02 Ago 2013, 08:04

mcleod_ideafix escribió:
antoniovillena escribió:Sí. Son unos de los detalles que faltan en el esquemático, como la propia FPGA, el led o el oscilador. Iría en un conector DB9 con el pinout del joystick, norma atari. La idea es que puedas elegir entre joystick y RGB

Pues... no sé, pero no me parece buena idea. ¿Por qué no vas a poder jugar con joystick con salida RGB? ¿O te refieres a que los pines no usados del conector de joystick tendrían la señal RGB?

antoniovillena escribió:Esta salida sería independiente de la de video compuesto y llevaría un codificador sigma-delta.

¿Y por qué no aprovechar la salida RGB analógica que ya está generada con las resistencias? O si vas a usar sigma-delta, ¿para qué el DAC de resistencias? (nota: usar sigma-delta para generar una señal de 3 bits, que puede llegar a tener 3.5MHz supone usar una frecuencia para el conversor de 56MHz. 112MHz si se quiere implementar algo que dé una señal de 512x192, como el Sam Coupé)


A ver, entiendo que el soporte RGB que hay ahora mismo sea cuestionable. La verdad es que por video compuesto la calidad es excelente, en principio no hay necesidad para RGB, a parte que habría que construirse un cable custom. La solución que he puesto tiene el inconveniente de no poder usar RGB y joystick a la vez, pero es que no nos sobran conectores. O bien metemos un nuevo conector (con el correspondiente agujero en la carcasa), o bien lo sacamos por el puerto de expansión. Y también habría que meter 3 transistores para bajar la impedancia de salida de los DACs.

mcleod_ideafix escribió:
antoniovillena escribió:Como he copiado de MOD-VGA empleo la misma RAM, que es de 16 bits. Es para aprovechar los 8 bits altos de la RAM, por si alguien quiere implementar un hipotético procesador de 16bits. Digo hipotético porque no creo que quepa uno real, al menos que esté completo. Este jumper lo que hace es conectar los 8 bits altos a la FPGA, que comparte pines con el bus de expansión.

El que esos pines estén fisicamente conectados al bus de datos alto de la RAM... ¿no fastidia a la hora de usarlos para otra cosa?


No, para eso está el jumper. Si no quieres que te fastidie activas el jumper. De todas formas estoy a la espera de reemplazarlo por una SRAM de 8 bits que funcione a 3.3V y sea más barata, lo que pasa es que no he encontrado ninguna.

-- Actualizado 02 Ago 2013, 08:21 --

He hecho una comparativa del tamaño del hueco HDMI, y se puede poner sin problemas un header de 2x6. Esto quiere decir que podemos sacar por ahí RGB. Para la próxima revisión cambiaré el circuito, también con el añadido de los 3 transistores. Por cierto EAR no nos cabe ahora en ese hueco, pero mejor lo pongo arriba al lado del jack de audio (habría que hacer un agujero en la carcasa). Así nos quitamos un cable custom del medio.

-- Actualizado 02 Ago 2013, 19:13 --

No he tenido tiempo de hacer los esquemáticos corregidos, lo intentaré mañana. Estoy liadillo sacando una segunda versión del prototipo.

-- Actualizado 02 Ago 2013, 23:02 --

He actualizado los esquemas según las indicaciones de McLeod. Ahora tenemos RGB de verdad, comparte el mismo conector que el JTAG, un header de 2x6 pines que está ubicado en la huella del conector HDMI de la Pi. Por otro lado el EAR tiene conector aparte, irá al lado del conector de audio y como no tiene huella en la carcasa de la Raspberry Pi, habrá que hacer un agujero. Tampoco es imprescindible ese agujero, si no se va a usar mucho la cinta (para eso está la SD) se puede sacar la placa de la carcasa.
Adjuntos
nuevo_clon_0.02.zip
(50.91 KiB) Descargado 207 veces

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: PiZx: Clon barato de spectrum con FPGA (WIP)

Mensajepor antoniovillena » 03 Ago 2013, 11:42

Confirmo lo que dice McLeod de necesitar un regulador de 2.5V. En la MOD-VGA no hace falta porque la FPGA XC3S200A permite configurar VCCaux con 3.3V y por tanto prescindir de los 2.5V. Pero tras haber leído el datasheet del XC3S200, la FPGA que usaremos en el clon, corroboro lo que dice McLeod, necesitamos un regulador adicional (sería el tercero) de 2.5V.

-- Actualizado 03 Ago 2013, 11:16 --

He encontrado esta otra memoria

http://www.aliexpress.com/item/Home-fur ... 06142.html

Cuesta $3.00 (para 10ud) y tiene menos pines que la que teníamos antes. Por otro lado tiene el doble de capacidad aprovechable.

-- Actualizado 03 Ago 2013, 11:19 --

Otra opción es quitar el regulador de 3.3V, pero para eso tendríamos que cambiar el resto de los chips para que se puedan alimentar con 2.5V

-- Actualizado 03 Ago 2013, 16:32 --

Añadido el regulador que faltaba. También me he currado el símbolo del XC3S200, que no lo tenía en mis librerías. Lo siguiente será conectar la FPGA al resto de circuitos, cambiar la SRAM por el chip que he comentado antes, añadir el oscilador y añadir un led RGB.

nuevo_clon_0.03.zip
(59.19 KiB) Descargado 205 veces


-- Actualizado 03 Ago 2013, 20:03 --

Por fin he acabado el esquemático. Esta es la primera revisión completa. Así que los más duchos en electrónica que quieran colaborar... ¡A BUSCAR FALLOS!

nuevo_clon_0.04.zip
(71.82 KiB) Descargado 199 veces

jepalza

Re: PiZx: Clon barato de spectrum con FPGA (WIP)

Mensajepor jepalza » 04 Ago 2013, 07:48

Perdonad que no esté atento al hilo y posible ayudas, pero estoy de vacaciones en cerca de Tudela (Navarra) (una semana solo, se me acaba hoy y mañana de vuelta), y en el Camping no me conecto todos los días (que se viene a descansar de todo).
Mañana espero poder leerme todo lo que me falta y ponerme al día. Voy mirando el esquema mientras, si me deja el móvil hacerlo con fluidez.

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: PiZx: Clon barato de spectrum con FPGA (WIP)

Mensajepor antoniovillena » 04 Ago 2013, 09:56

No hombre tú disfruta de tus vacaciones, ya habrá tiempo para revisar los esquemáticos. Bueno, tras leerme los esquemáticos y proceder a conectar los pines de configuración me he dado cuenta de algo que nos va a tener que hacer cambiar de FPGA: la XC3S200 no es compatible con ninguna SPI Flash. Al parecer es un modelo más antiguo, y en ese momento las FPGAs (al menos las XILINX) necesitaban un tipo de chip específico y propietario de Xilinx, llamado "PROM Platform Flash" concretamente con la referencia XCF01S. Este chip es más grande, más caro y menos versátil. No me he leído el datasheet y no sé si se podrá programar desde la FPGA para que podamos "flashear" la FPGA, probablemente sí, pero no podemos usar el mecanismo sencillo que tenía la SPI Flash que nos permitía usar el mismo interfaz ZXMMC.

En resumen, que cambiamos de FPGA. La que usaremos ahora será la XC3S200E que es la misma que usa Papilio One 250K o la famosa OLS. Es un rollo porque me tengo que currar el símbolo del ORCAD de nuevo pero qué se le va a hacer.

Avatar de Usuario
Hark0
Amiga 1200
Amiga 1200
Mensajes: 1695
Registrado: 11 Jul 2012, 23:44
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: (Otro)
Primera consola: (Otro)
Ubicación: Cornellà de Llobregat - Barcelona
Contactar:

Re: PiZx: Clon barato de spectrum con FPGA (WIP)

Mensajepor Hark0 » 04 Ago 2013, 14:35

Jur! :shock:

Acabo de descargar el nuevo esquema... ha crecido un poco en dos dias... ;)

Nada que ver con la versión anterior... :P
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA.

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: PiZx: Clon barato de spectrum con FPGA (WIP)

Mensajepor antoniovillena » 04 Ago 2013, 17:24

Hark0 escribió:Jur! :shock:

Acabo de descargar el nuevo esquema... ha crecido un poco en dos dias... ;)

Nada que ver con la versión anterior... :P


Pues ya está suficientemente crecidito <rX , así que a partir de ahora habrá pocos cambios.

Ya he creado el símbolo para la nueva FPGA (XC3S250E) y lo he puesto en los esquemáticos. Por suerte este chip tiene unos pocos pines IO de más, así que no tendremos problemas en hacer pequeños añadidos, de momento sobran 4 pines. También he cambiado la SPI ROM por otra más barata y más rápida (W25X40BV) y he separado los puertos SPI para que exista la posibilidad de sintetizar la ROM directamente con la SPI Flash (sin necesidad de volcarla en RAM previamente) con lo que es posible el arranque instantáneo.

Cabe la posibilidad de meterle un pulsador de RESET para que reinicialice la FPGA. No es imprescindible, puesto que por el teclado PS/2 se puede reinicializar la máquina, pero si más adelante ponemos un menú boot o algo parecido, puede servir para no tener que desenchufar y enchufar la alimentación. Superfo me ha comentado que el espacio de la placa es muy reducido (tamaño tarjeta de crédito), así que se pondrá en caso de que no dificulte demasiado la tarea de ruteado. Todavía no hay nadie que se encargue oficialmente del ruteado, por lo que es probable que el proyecto sufra un parón, desde que demos los esquemas por definitivos hasta que se una al proyecto nuestro diseñador de PCBs.
Adjuntos
nuevo_clon_0.05.zip
(76.51 KiB) Descargado 209 veces

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 8 veces

Re: PiZx: Clon barato de spectrum con FPGA (WIP)

Mensajepor antoniovillena » 05 Ago 2013, 18:23

Más avances del proyecto.

Lo primero y más importante, se ha unido a nuestro equipo de desarrolladores Don Superfo, con él ya somos 4:
  • Superfo, el ruteador.
  • Hark0, el grafista.
  • McLeod, el revisador.
  • AntonioVillena (yo), el promotor.

Me ha sugerido que cambie la RAM de 36 pines por otra de 32. Tengo detectado un fallo, y es que el puerto JTAG va a 2.5V en lugar de 3.3V, que por otro lado nos viene bien puesto que eliminamos la única resistencia que había en el cable RGB.

Ahora para abriros la boca un poco os muestro fotos del segundo prototipo. Básicamente contiene lo mismo que el primero pero con un sutil cambio en el pineado, mediante el cual los pines del teclado son independientes, y que en lugar de 2 placas (sin contar la MOD-VGA) ocupa sólo una. No lo he probado pero previsiblemente quepa dentro de la carcasa de una RasPi. Es una tontería porque los conectores no van a coincidir, pero he hecho fotos con una tarjeta de crédito debajo a modo de comparativa (la RasPi y el nuevo clon tienen exactamente el mismo tamaño de una tarjeta de crédito).

Deciros que ya encontré la razón por la cual no me funcionaba la SD en el primer prototipo, en los esquemas había una resistencia con valor NA, del que no me había percatado, que supuestamente habría que puentear para tener el pin CS de la tarjeta SD disponible, aquí os dejo la foto donde se ve que falta dicha resistencia.

P8010007.JPG
P8010007.JPG (141.86 KiB) Visto 4744 veces


Aquí podéis ver el antiguo prototipo en plena faena, encima del cable USB (ladrillo blanco) y totalmente conectado.

P7040004.JPG
P7040004.JPG (122.83 KiB) Visto 4744 veces


Lo siguiente es una foto con las 4 placas. Lo MOD-VGA está arriba a la derecha, el antiguo prototipo abajo a la derecha, la placa generadora de video compuesto (reusada de un clon anterior) abajo a la izquierda y el nuevo prototipo arriba a la izquierda.

P8050008.JPG
P8050008.JPG (140.35 KiB) Visto 4744 veces


Aquí tenéis a modo de comparativa el antiguo prototipo vs el nuevo prototipo, por delante y por detrás:

P8050009.JPG
P8050009.JPG (144.67 KiB) Visto 4744 veces

P8050010.JPG
P8050010.JPG (140.97 KiB) Visto 4744 veces


Aquí un detalle de la construcción del nuevo prototipo, donde se puede observar que la mayoría de los componentes quedan ocultos por el AD724 y la SD.

P8020008.JPG
P8020008.JPG (134.43 KiB) Visto 4744 veces

P8020011.JPG
P8020011.JPG (139.68 KiB) Visto 4744 veces


Aquí tenéis el nuevo prototipo enganchado a la MOD-VGA, por delante y por detrás.

P8050001.JPG
P8050001.JPG (142.17 KiB) Visto 4744 veces

P8050004.JPG
P8050004.JPG (135.57 KiB) Visto 4744 veces


Por último una foto artística donde se ve el engendro desde un cierto ángulo.

P8050006.JPG
P8050006.JPG (144.2 KiB) Visto 4744 veces

Avatar de Usuario
mentalthink
Amiga 2500
Amiga 2500
Mensajes: 2840
Registrado: 11 Abr 2010, 15:06
Gracias dadas: 45 veces
Gracias recibidas: 14 veces

Re: PiZx: Clon barato de spectrum con FPGA (WIP)

Mensajepor mentalthink » 05 Ago 2013, 18:42

Una preguntilla, no me he leído a penas el hilo, no sé si s están haciendo ya las listas, si ya está en proceso.... por lo que veo ya está todo funcional...
Lo que queria preguntar el bicho en si, quedará como en la "afoto", me refiero se podrá hacer en 2 pisos en vez de uno para que ocupe menos, o será en una placa normal, aunque ahora que recuerdo algo he leído de la caja de la Raspberry?¿.


Volver a “Sinclair/Spectrum”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 14 invitados