ZX-Uno, clon barato basado en FPGA

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

Re: ZX-Uno, clon barato basado en FPGA

Mensajepor antoniovillena » 30 Ago 2013, 10:59

Tenemos avances en lo que al ruteado se refiere. Esto es lo que me ha posteado superfo:

superfo escribió:Just want you to see how it look like, still have a lot of work before finish.
If you want to change any things just let me know.

Note:
- Because of limit space and position, I cannot place (for now) Q2-Q4, RGB Led, SVDO connector, switch on-off, 45 pins connector.
- For FPGA pins that label as IP, they are input only, cannot be used as output.
- Place component both top and bottom.
- Only C 100nf that use 0603, the others use 0805.
- Video default at PAL, cut trace and jump for NTSC (R32,R33).


Esta es mi traducción chapucera:
traduccionchapucera escribió:Sólo quiero que veas qué pinta tiene, todavía queda mucho trabajo por delante. Si quieres cambiar alguna cosilla dímelo.

Notas:
  • Debido a problemas de espacio y posicionamiente no he podido colocar aún: los transistores Q2-Q4, el led RGB, el conector S-Video, el jumper para el interruptor y el conector de 45 pines.
  • Los pines de la FPGA que están etiquetados como IP son sólo entrada, no pueden ser usados como salida.
  • Hay componentes ubicados tanto en la cara de arriba (componentes) como en la de abajo (soldaduras).
  • Los únicos condensadores que tienen huella 0603 (más pequeña) son los de 100nF (normalmente desacoplo). El resto son 0805 (un poco más grandes).
  • El video por defecto es PAL, pero se puede cambiar fácilmente a NTSC con un corte y un puente.
Adjuntos
zxone.zip
(63.17 KiB) Descargado 167 veces

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: 51 veces
Contactar:

Re: ZX-Uno, clon barato basado en FPGA

Mensajepor mcleod_ideafix » 30 Ago 2013, 11:29

Ojo con poner componentes SMD por los dos lados de la placa, porque eso podría encarecer la operación de soldadura para el producto final, y dificultarla para los prototipos (entiendo que los prototipos los soldamos nosotros, ¿no?).

Es más: opino que el prototipo, que es eso, un prototipo, podría hacerse más grande para poder poner todos los componentes en la misma cara, y con componentes 0805 para soldarlos más fácilmente. De lo que se trata es de probar que el circuito funciona y no da problemas. Luego sí se puede reducir hasta el tamaño deseado usando componenes 0603 o 0402, ya que esos se soldarán en fábrica.

Aparte... hay algo en la sección de RGB que no sé no sé... tengo que hacer cuentas pero... si las resistencias del DAC que generan cualquiera de las señales RG ó B están pensadas para dar un nivel de 0 a 0,7V y vas y le pones un transistor como seguidor de emisor para aislar la generación de video compuesto de la salida RGB... resulta que el transistor no comienza a "seguir" hasta que la tensión en su base no es de precisamente 0,7V , lo que significa que todas las tensiones por debajo de ella aparecerán como 0V en la salida.
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: 7 veces

Re: ZX-Uno, clon barato basado en FPGA

Mensajepor antoniovillena » 30 Ago 2013, 11:47

Voy a escribir en español lo que opino para luego traducirlo y responderle en inglés.

  • La falta de transistores Q2-Q4 es un problema menor. Implica que en el momento en que enchufemos el cable RGB tanto lo que salga por RGB como por Video compuesto tendrá la mitad de brillo. Es algo molesto pero no es nada que no se pueda arreglar reajustando los parámetros del televisor. La explicación es muy sencilla: mientras no está enchufado el cable RGB, la FPGA ve una impedancia de entrada externa de 75 ohm, con lo que la señal de video máxima que da es la correcta, 0.7V. Sin embargo, al enchufar el cable RGB, tenemos en paralelo dos resistencias de 75 ohm, con lo que la FPGA ve una impedancia externa justo la mitad (37.5 ohm) y por tanto el nivel máximo de señal es de 0.35V en lugar de 0.7V.
  • El led RGB fue una idea mía, McLeod quería poner originalmente un led normal, pero yo me obstiné en que fuese RGB. Mi intención era mostrar por ese led lo mismo que se muestra en el borde (3 bits inferiores del puerto de salida $FE) y de esta forma poder cargar juegos en cinta sin tener que mirar al monitor. Puedes poner un LED normal ahí, o en el peor de los casos no poner nada en el prototipo y ponerlo más adelante en la versión final.
  • El conector S-Video. Fue una idea de última hora. Tras hacer el circuito AD724 dual NTSC/PAL e intercambiable por software, pensé en que los usuarios no europeos podrían tener una salida de mayor calidad al Video Compuesto. Pero visto el tamaño del conector y de los 2 condensadores que lo acompañas es una tarea imposible, simplemente no hay espacio.
  • Jumper para el interruptor. No hay problema en no ponerlo para el prototipo, aunque sería deseable en la versión final. Ocupa muy poco espacio y permite incluir externamente tanto un interruptor de encendido/apagado como un pulsador de reset (normalmente encendido) o las dos cosas a la vez.
  • Conector de 45 pines. Pues no me había dado cuenta de los pines IP. Haré un recuento de pines para ver qué se puede hacer, pero me gustaría mantener el número de pines de ese conector para hacer posible un futuro bus de expansión. La verdad es que hay pocas sólo entradas en el circuito (pines del joystick, del teclado, flash_miso, sd_miso y ear).
  • Puedes poner un cristal SMD en lugar de uno throw hole en el AD724 si eso te ayuda en el ruteado. En el Spectrum normalmente usaremos PAL y en otras máquinas normalmente sólo NTSC. El circuito conmutable sólo es útil en cierto tipo de máquinas como en el Atari 2600 que aceptan juegos tanto NTSC como PAL, pero hasta que nadie sintetice esta máquina en el clon no tiene mucho sentido.


-- Actualizado 30 Ago 2013, 10:57 --

mcleod_ideafix escribió:Ojo con poner componentes SMD por los dos lados de la placa, porque eso podría encarecer la operación de soldadura para el producto final, y dificultarla para los prototipos (entiendo que los prototipos los soldamos nosotros, ¿no?).


No, los prototipos vienen ya soldados, por suerte Seeedstudio ha incorporado recientemente un servicio de PCBA. Eso sí, en los prototipos los componentes que sean throw hole tendremos que soldarlo nosotros mismos, no tendremos la opción de que otra persona nos lo haga a mano. Por lo que veo, Superfo ha ubicado la mayoría de los componentes por una cara. Sólo el conector SD y algunas resistencias/condensadores están en la cara de abajo.

mcleod_ideafix escribió:Es más: opino que el prototipo, que es eso, un prototipo, podría hacerse más grande para poder poner todos los componentes en la misma cara, y con componentes 0805 para soldarlos más fácilmente. De lo que se trata es de probar que el circuito funciona y no da problemas. Luego sí se puede reducir hasta el tamaño deseado usando componenes 0603 o 0402, ya que esos se soldarán en fábrica.


Si esto supone más trabajo para Superfo y el mismo para los que compremos el prototipo (los componentes vienen ya soldados), no tiene ningún sentido hacerlo así.

mcleod_ideafix escribió:Aparte... hay algo en la sección de RGB que no sé no sé... tengo que hacer cuentas pero... si las resistencias del DAC que generan cualquiera de las señales RG ó B están pensadas para dar un nivel de 0 a 0,7V y vas y le pones un transistor como seguidor de emisor para aislar la generación de video compuesto de la salida RGB... resulta que el transistor no comienza a "seguir" hasta que la tensión en su base no es de precisamente 0,7V , lo que significa que todas las tensiones por debajo de ella aparecerán como 0V en la salida.


Pues creo que la he cagado aquí, también lo miraré por mi cuenta. Lo que hice fue copiar la circuitería del Superfo original, pero seguramente habré cometido algún error. De momento no es problema porque Superfo no colocado esos transistores y no sabremos si finalmente habrá espacio para ellos.

Avatar de Usuario
jotego
Atari 1040 STf
Atari 1040 STf
Mensajes: 655
Registrado: 16 Ene 2013, 23:25
Sistema Favorito: Atari ST
primer_sistema: Amstrad CPC
consola_favorita: Sony PlayStation 2
Primera consola: Atari Lynx
Ubicación: Valencia (España)
Gracias dadas: 26 veces
Gracias recibidas: 43 veces
Contactar:

Re: ZX-Uno, clon barato basado en FPGA

Mensajepor jotego » 30 Ago 2013, 12:00

antoniovillena escribió:[*]La falta de transistores Q2-Q4 es un problema menor. Implica que en el momento en que enchufemos el cable RGB tanto lo que salga por RGB como por Video compuesto tendrá la mitad de brillo. Es algo molesto pero no es nada que no se pueda arreglar reajustando los parámetros del televisor. La explicación es muy sencilla: mientras no está enchufado el cable RGB, la FPGA ve una impedancia de entrada externa de 75 ohm, con lo que la señal de video máxima que da es la correcta, 0.7V. Sin embargo, al enchufar el cable RGB, tenemos en paralelo dos resistencias de 75 ohm, con lo que la FPGA ve una impedancia externa justo la mitad (37.5 ohm) y por tanto el nivel máximo de señal es de 0.35V en lugar de 0.7V.


En el esquema no se ve la conexión de Q2-Q4, no tienen etiquetas en los terminales ni están cableados. Aunque tienen una flechita roja en la base. ¿Es un problema de impresión a PDF?

Avatar de Usuario
scooter
Amiga 1200
Amiga 1200
Mensajes: 1029
Registrado: 17 Jul 2012, 09:25
primer_sistema: C64
Ubicación: Alicante

Re: ZX-Uno, clon barato basado en FPGA

Mensajepor scooter » 30 Ago 2013, 12:12

jotego escribió:En el esquema no se ve la conexión de Q2-Q4, no tienen etiquetas en los terminales ni están cableados. Aunque tienen una flechita roja en la base. ¿Es un problema de impresión a PDF?
[/quote]
Entiendo que es un preview, osea que está a medias o a tercias de rutear.

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

Re: ZX-Uno, clon barato basado en FPGA

Mensajepor antoniovillena » 30 Ago 2013, 12:21

Así es, si te das cuenta los transistores están fuera de la PCB porque de momento no caben. Lo de la flechita roja es cosa del programa que hace los esquemáticos, sólo indica la dirección de la señal. Todavía falta mucho trabajo de ruteado.

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: ZX-Uno, clon barato basado en FPGA

Mensajepor Hark0 » 30 Ago 2013, 13:42

Que buena pinta de placa!!! ;)
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: 7 veces

Re: ZX-Uno, clon barato basado en FPGA

Mensajepor antoniovillena » 30 Ago 2013, 13:55

Estoy haciendo cuentas. De los 108 pines disponibles al usuario de la FPGA, 28 de ellos son sólo entrada. Si a estos 28 le restamos las 12 que no pertenecen al puerto de expansión: Joy1..Joy7, EAR, PS2_DATA, PS2_CLK, FLASH_MISO, CS_MISO... nos quedan 16 señales. Desgraciadamente de las 40 señales del puerto de expansión sólo 5 son "sólo entradas" (BUSRQ, WAIT, INT, NMI y RESET) por lo que tenemos que sacar 11 pines de algún lugar.

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: 51 veces
Contactar:

Re: ZX-Uno, clon barato basado en FPGA

Mensajepor mcleod_ideafix » 30 Ago 2013, 14:05

antoniovillena escribió:Estoy haciendo cuentas. De los 108 pines disponibles al usuario de la FPGA, 28 de ellos son sólo entrada. Si a estos 28 le restamos las 12 que no pertenecen al puerto de expansión: Joy1..Joy7, EAR, PS2_DATA, PS2_CLK, FLASH_MISO, CS_MISO... nos quedan 16 señales. Desgraciadamente de las 40 señales del puerto de expansión sólo 5 son "sólo entradas" (BUSRQ, WAIT, INT, NMI y RESET) por lo que tenemos que sacar 11 pines de algún lugar.


Multiplexa internamente el bus de direcciones y el de datos, de forma que en lugar de sacar 24 líneas, saques 17: 16 del bus de direcciones/datos y una línea ALE de salida, que indique, por ejemplo a nivel alto, que lo que hay en ese momento en el bus multiplexado es una dirección. Al comienzo de cada ciclo de máquina, durante el primer ciclo de reloj se pone la dirección, y en los demás ciclos se pone el dato. Sería un poco lo que hace el 8086, o el 8080 que sacaba también el bus de direcciones y datos multiplexado. Dentro de la FPGA los buses estarían demultiplexados. Quien necesite el bus de expansión tendría que añadir un latch para demultiplexar el bus de nuevo.

-- Actualizado 30 Ago 2013, 14:05 --

Otra opción sería irse al encapsulado PQ208.
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

jepalza

Re: ZX-Uno, clon barato basado en FPGA

Mensajepor jepalza » 30 Ago 2013, 14:09

Yo lo iba a intentar con la version de PCB del modelo de 512mb, la que lleva dos taladros para tornillos, por si acaso alguien lo quiere amarrar a una caja diferente.
zx_uno_rpi512.jpg
zx_uno_rpi512.jpg (26.52 KiB) Visto 2327 veces


Según veo, Superfo emplea la del modelo de 256mb, la que no lleva taladros. Se le podría decir que los incluyera. Si necesita el DXF con las medidas, se lo mando yo, que ya lo tengo diseñado..
Edito: como no cuesta nada, lo incluyo aquí, y así se puede pasar a cogerlo si quiere.
zxuno_rpi_512.rar
(1.66 KiB) Descargado 120 veces


Volver a “Sinclair/Spectrum”

¿Quién está conectado?

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