Going Silicon (... and coming late)

146 views
Skip to first unread message

Jesus Arias

unread,
Nov 11, 2024, 5:50:33 PM11/11/24
to FPGAwars: explorando el lado libre
Hola
Ultimamente he estado intentando rehacer uno de mis diseños de modo que se pueda fabricar en uno de los runs de Tiny Tapeout (https://tinytapeout.com), aunque desafortunadamente me he quedado fuera de plazo para la hornada de este mes.

Y no es que no tuviese el diseño adaptado a tiempo, estaba ya listo casi dos semanas antes del deadline, pero conseguir que Tiny Tapeout nos mandase una factura proforma mínimamente decente como para que pasara las cribas administrativas de la UVA ha sido una misión imposible. Y si no pagas rápido no hay chip ;)

De todos modos me gustaría comentar los retos técnicos de la fabricación de un chip en Tiny Tapeout, que resultan bastante más limitantes que los que afrontamos en un diseño digital para FPGAs

- Lo primero es que no hay memoria disponible. No tenemos bloques BRAM, y si intentamos sintetizar una RAM, por pequeña que sea ocupa un área de chip prohibitiva. ( Uno de los diseños, un clon de Atari 2600, ocupa nada menos que 10 "tiles" (tile: 160um x 110um = +$50) y eso que solo tiene 128 bytes de RAM)

- Lo siguiente es que tampoco podemos usar valores iniciales conocidos en los registros. Los bloques "initial" funcionan a nivel Verilog, pero cuando se simulan las puertas lógicas del chip esos valores iniciales son todos 'X'. Esto lo he solventado a base de incluir señales de reset en casi todos los registros, lo que seguramente fuese innecesario puesto que los registros tendrán algún valor inicial, sea el que sea, pero sin estos resets no hay manera de pasar una simulación a nivel de puertas lógicas que nos de alguna seguridad de que el diseño está bien.

- Y para terminar tenemos el escaso número de pines que nos permite Tiny Tapeout: 8 pines de entrada, 8 de salida, y 8 bidireccionales, (aparte de los pines de reset y de reloj)

En fin, el diseño que se ha quedado aparcado se puede ver aquí:


Y esta es una "foto" del supuesto chip
gds_render.png
Por supuesto, este prototipo, más una memoria externa de 128KBytes, está sintetizado y corriendo en una placa FPGA (ICECREAM)

Saludos


charli va

unread,
Nov 11, 2024, 6:19:31 PM11/11/24
to fpga-wars-explora...@googlegroups.com
Hola Jesús!, impresionante conseguir meter un Gus16 y con periféricos ahí no me parece taréa sencilla.

Este es un tema que desde el verano he estado mirando por encima porque me parece muy interesante, sobre todo como concepto. Vete contándonos tus andanzas en este área si lo retomas más adelante que será un gran aprendizaje para el resto, muchas gracias por compartirlo, siempre con tanto esmero.

Saludos!



--
Has recibido este mensaje porque estás suscrito al grupo "FPGAwars: explorando el lado libre" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a fpga-wars-explorando-el...@googlegroups.com.
Para ver este debate, visita https://groups.google.com/d/msgid/fpga-wars-explorando-el-lado-libre/65daf2f6-5d8f-49f3-a3ba-4390ad01ca62n%40googlegroups.com.

Obijuan

unread,
Nov 12, 2024, 1:49:02 AM11/12/24
to FPGAwars: explorando el lado libre
Muy impresionante, Jesús. Gracias por compartirlo! Este tema del silicio abierto es un gran paso para el hardware libre, y muy necesario para la humanidad. Yo todavía no me he metido en ello, pero lo sigo con mucho interés.

Saludos, Obijuan

charli va

unread,
Nov 13, 2024, 3:24:53 AM11/13/24
to fpga-wars-explora...@googlegroups.com
Buenas Jesús, de casualidad me he topado con el clon de la Atari 2600 para tiny type-out:

Como se ve en la representación visual del chip, es "enooooorme" comparado con el que nos has enviado, debe ser la atari más cara de la historia XD pero no deja de ser interesante.

El diseño se puede implementar en nuestras fpgas, si alguien le interesa.

Dejo el enlace para el que le interesa:


El lun, 11 nov 2024 a las 23:50, Jesus Arias (<ges...@gmail.com>) escribió:

charli va

unread,
Nov 13, 2024, 3:25:23 AM11/13/24
to fpga-wars-explora...@googlegroups.com
Disculpad al hacer copy-paste envié el . aquí va el enlace:


Saludos!

Jesus Arias

unread,
Nov 13, 2024, 6:14:51 PM11/13/24
to FPGAwars: explorando el lado libre
Hola
Ayer llegó la factura proforma y esta vez parece que está bien. Lástima que haya sido dos días después del deadline, supongo que ahora podremos entrar en el próximo run (marzo)
Y en efecto, la Atari va a salir un pelín cara dado el área que ocupa (16 tiles, antes las había contado mal). El 6502 es más o menos igual de complejo que mi core, lo que se traduce en alrededor de 1.5 tiles. El resto son los periféricos y la memoria.
Respecto de la memoria tal vez se podrían usar latches en lugar de flip-flops, lo que podría reducir el área a la mitad. (Las FPGAs nos han acostumbrado a derrochar flip-flops ;)
Y un periférico problemático es la TIA (chip de vídeo de la 2600). Como el video original era NTSC y ahora va en VGA hay que duplicar las líneas. Pero en la 2600 no hay memoria de video, es la CPU la que dibuja la línea sobre la marcha, y eso supone un problema a la hora de hacer las líneas impares iguales a las pares. 
Además la salida de video no es RGB, con lo que el diseñador recurre a una tabla ROM bastante grande para convertir el color de los píxeles. Todo esto al final se traduce en mucha área de chip.
Por cierto, he encontrado un visor curioso:

chip3D.png

Saludos

Democrito

unread,
Nov 13, 2024, 7:03:22 PM11/13/24
to FPGAwars: explorando el lado libre
Muy interesante todo este tema y la imagen (parece 3D) es impresionante!

charli va

unread,
Nov 14, 2024, 2:26:28 AM11/14/24
to fpga-wars-explora...@googlegroups.com
Muy interesante el visor, llegar a ver el silicio de nuestros diseños, parece brutal!

Muchas gracias por compartirlo!

Jesus Arias

unread,
Nov 21, 2024, 2:34:20 PM11/21/24
to FPGAwars: explorando el lado libre
Finalmente ha tenido que entrar en el próximo run:


Aunque he aprovechado el retardo para comprimir un poco más de funcionalidad en el área disponible, en particular la ejecución paso a paso para depuración:


Ahora a esperar... y que no haya alguna metedura de pata...
Saludos

charli va

unread,
Nov 21, 2024, 3:00:26 PM11/21/24
to fpga-wars-explora...@googlegroups.com
La verdad que tiene muy buena pinta Jesús! mucha suerte cuando llegue, mantennos informados! 

Un abrazo!

--
Has recibido este mensaje porque estás suscrito al grupo "FPGAwars: explorando el lado libre" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a fpga-wars-explorando-el...@googlegroups.com.

Democrito

unread,
Nov 21, 2024, 3:56:03 PM11/21/24
to FPGAwars: explorando el lado libre
Jesús, yo en este tipo de cosas (y en la gran mayoría de lo que se pueda imaginar) estoy más pelado que un pulpo, pero de alguna manera por intuición siento que esto es muy interesante/importante y espero que dé los resultados que esperabas e incluso te lleves la grata sorpresa de que supera tus expectativas. Por cierto, me encantan tus PDFs, en los gráficos a veces veo cosas que me pregunto cómo lo has hecho.

Un fuerte abrazo y ojalá que en este proyecto todo vaya bien, te lo mereces un montón.

Muchísimas gracias.

Jesus Arias

unread,
Jun 18, 2026, 12:09:47 PM (9 days ago) Jun 18
to FPGAwars: explorando el lado libre
Hola a todos.

Ha pasado tiempo y más tiempo, pero a pesar de todas las incidencias y retrasos hoy he podido probar la versión en silicio de un par de diseños. ¡Y han funcionado!
chip-ann1.jpg
Aquí va una foto del montaje, bugs incluidos y corregidos ;) 

20260618_120548.jpg
Y aquí va otra con un core GUS16-v6 jugando al Tetris ;)

También incluía un core RiscV (Larva) con un "boundary-scan" JTAG que también ha funcionado después de arreglar un problemilla adicional de líneas de transmisión mal terminadas en la señal TCK. Parece que el chip es bastante más rápido que la FPGA, al menos para dar problemas, que tampoco lo puedo subir de MHz porque la memoria externa no da más de sí (el bootloader interno todavía responde a 48MHz)

Y por si fuera poco el chip tiene dentro otros 800+ diseños para probar ;)


Saludos!

Carlos Venegas

unread,
Jun 18, 2026, 12:27:32 PM (9 days ago) Jun 18
to fpga-wars-explora...@googlegroups.com
Impresionante Jesús!! me gusta mucho la tarjeta de memorias que has preparado, con tan solo 8 bits!

Vete contándonos las aventuras que seguro serán muchas e interesantes en torno a todo esto.

¡Saludos y buena tarde!

Obijuan

unread,
Jun 19, 2026, 2:48:38 AM (8 days ago) Jun 19
to FPGAwars: explorando el lado libre
IMPRESIONANTE! Muchas gracias por el update Jesús
Me parece brutal que en el 2026 podamos fabricar nuestros propios chips, utilizando únicamente herramientas libres
Es un sueño hecho realidad. Nunca imaginé que vería esto con mis ojos, pero ya está aquí. Es el salto definitivo del hardware libre
¡¡VAAAAMOS!!

Saludos, Juan


Reply all
Reply to author
Forward
0 new messages