[Icestudio] Pruebas con la toolchain actualizada: apio 0.8.0

241 views
Skip to first unread message

Juan Gonzalez Gomez

unread,
Jan 4, 2022, 4:39:52 AM1/4/22
to FPGA-WARS: explorando el lado libre
Hola,

Estamos continuando con la transición de las toolchains de icestudio, de las versiones antiguas a las nuevas (Apio usa ahora las toolchains del proyecto oss-cad-suite[1])

Esta transición se está haciendo progresivamente, para que no se rompan demasiadas cosas

Necesito que hagáis las siguientes pruebas para detectar los errores

1. Instalar la última wip:  0.8.1w202201030601 (Se descarga desde aquí: https://downloads.icestudio.io/)

2. Comprobad que la versión que tenéis de apio es la 0.7.6. Para ello pinchad en Herramientas/toolchains y fijaros en la versión en la parte inferior del menú

3. Ahora actualizad a la última versión estable (0.8.0) pinchando en Herramientas/Toolchain/Actualizacion (Última estable). Se instalará apio 0.8.0 y las nuevas toolchains

4. Comprobad que la versión es efectivamente la 0.8.0: Pinchad en Herramientas/Toolchain y ver la versión en la parte inferior del menú

5.  Seleccionar algún circuito de prueba y verificarlo/cargarlo en la placa que uséis normalmente

6. Como Feedback necesito que me digáis la plataforma en la que lo habéis probado y si ha funcionado bien. En caso de error, cuanta más información con los detalles enviés mucho mejor

Tras estas pruebas, apio 0.8.0 pasará a ser la versión que se instale por defecto en Icestudio, y tras varios ciclos más de pruebas (cuando la migración total se haya completado y se haya estabilizado todo) se liberará como versión estable de icestudio 0.9

Necesitamos la ayuda en todas las plataformas (Linux/Windows/Mac). Pero especialmente de todos los que tengáis un MAC. Es la plataforma más crítica y menos probada

Muchísimas gracias a todos por la ayuda

Saludos, Obijuan



charli va

unread,
Jan 4, 2022, 4:48:34 AM1/4/22
to fpga-wars-explora...@googlegroups.com, Juan Gonzalez Gomez
¡Buenas Maestro! ahora me lío con las pruebas.

Quería comentaros una feature que le comenté a @Juan Gonzalez Gomez  y si os parece bien tras el primer ciclo de pruebas en las que demos por validada la 0.8.0 la meteríamos (la tengo preparada pero no quiero mezclar features con algo tan delicado).

La feature sería poder añadir parámetros extra por proyecto a apio, de forma que si alguien tiene una necesidad especial podría pasar sus propios parámetros a la toolchain.

Este cambio afecta tanto a apio como a icestudio, echando una mano a otro usuario en las issues que necesitaba forzar  al nextpnr que su frecuencia objetivo fuera 100Mhz pensé que para algunos proyectos podría ser algo interesante.

Si os parece bien ponemos esta taréa pendiente de cerrar la 0.8.0 y si pensais que no tiene utilidad la dejamos en el todo.

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.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/fpga-wars-explorando-el-lado-libre/CABqu7xo1d3b71_7nYWfipAusBXTSTMSSKiigTbkLyvD2tptYYQ%40mail.gmail.com.

Jo mo

unread,
Jan 4, 2022, 7:58:53 AM1/4/22
to FPGAwars: explorando el lado libre
Hola Juan,

Thank a lot for this apio upgrade!

I just followed you instruction and everything runned smoothly and successfully!
Machine:            Windows 10 Pro 64bits
Board:                 ColorLight-i5-v7.0_(FT2232H)
uploaded example:   One LED blink


@Carlos: About your feature proposition, one interesting use that i see (at my level of knowledge)  is to be able to upload a bit file in the flash ram of our board (instead of loading it directly to the fpga SRAM)

It will be cool to have for example in the tools menu a list of 5  <empty> "custom action"
and each of this action can bu customised by the help of a new pop up window.

in these pop-up window we can have: the following user customisable fields:
Action name :
Command :

For my particular case i will create a custom action with:
Action name:   "Upload to colorligth i5 FLASH"
Command:        openFPGALoader -c ft2232 -f hardware.bit                             # Program to FLASH

Knowing that the default function which is launched when i push icestudio "upload" button is:
                            openFPGALoader -c ft2232 hardware.bit                                 # Program to SRAM

remark: if we need to execute few consecutive commands (for a single custom action) maybe we can add "command 2", Command3,... fields

But If we  you need to discuss further about it Carlos, maybe let us open a new tread! And let this thread for the users test returns  of the wip:  0.8.1w202201030601!

Thanks and have a good day

Joaquim

charli va

unread,
Jan 4, 2022, 9:07:23 AM1/4/22
to fpga-wars-explora...@googlegroups.com
Hi Joaquim! your idea is great and is enought to be an independent plugin.

I think we could use this to use as tutorial of making plugins.

I'm thinking around this. I'll create two new issues in github with this two new features to discuss.

In the other hand i want to propose at this group of incredible people that is emerging, to in the next weeks try between all (from devel to tests) to do a fix round over the open issues because some of them could be fixed with the new versions and others could be easily to solve and i think if we try to aboard between all of us we could reduce a lot the number of open issues,  what do you think?





Obijuan

unread,
Jan 4, 2022, 11:21:17 AM1/4/22
to FPGAwars: explorando el lado libre
Hola Carlos!

Esa feature es muy importante. Así que en cuanto esté migrada la toolchain completa, y estabilizada, nos ponemos al lío. ¡Gracias! 😃️

Saludos, Obijuan

Obijuan

unread,
Jan 4, 2022, 11:22:56 AM1/4/22
to FPGAwars: explorando el lado libre
Hi Joaquim!

El martes, 4 de enero de 2022 a las 13:58:53 UTC+1, joa...@gmail.com escribió:

I just followed you instruction and everything runned smoothly and successfully!
Machine:            Windows 10 Pro 64bits
Board:                 ColorLight-i5-v7.0_(FT2232H)
uploaded example:   One LED blink


Good to know! Thanks a lot for the tests! 😃️

Best regards, Obijuan

miguelang...@gmail.com

unread,
Jan 4, 2022, 2:22:28 PM1/4/22
to FPGAwars: explorando el lado libre
Muy buenas Juan.

He probado a instalar la última wip (icestudio-0.8.1w202201030601-linux64.AppImage) en Debian 11.2 sobre una wip antigua (icestudio-0.5.1w202106261206-linux64.AppImage) y la instalación ha ido sin problemas, tengo la toolchain 0.8.0, pero me ha dado un error al intentar cargar un ejemplo.

Tenía instalada la colección Collection-Jedi-1.11, y al intentar cargar el ejemplo 23 - Animación del coche fantástico, me dice que el proyecto está diseñado para la placa Alhambra II (tengo la Icezum Alhambra), le doy a convertir y en el paso de carga me da el error:

[Tue Jan  4 20:12:42 2022] Processing icezum
--------------------------------------------------------------------------------
nextpnr-ice40 --hx1k --package tq144 --json hardware.json --asc hardware.asc --pcf main.pcf -q
ERROR: package does not have a pin named '0' (on line 3)
ERROR: Loading PCF failed.
0 warnings, 2 errors
scons: *** [hardware.asc] Error 255

He borrado el directorio .icestudio y vuelto a instalar de cero, y con la colección por defecto he podido cargar sin problemas un ejemplo simple de LED.

El error se da con la colección Collection-Jedi-1.11, al volver a instalar la colección, obtengo lo mismo.

Otra cosa que te quería comentar (que no creo que es de esta versión) precisamente con la Collection-Jedi-1.11. Es al acceder al menú Varios, en la ventana que se despliega no puedo acceder al submenú de VGA, llego a ver hasta Syntax, pero Timers y posteriores ya no accedo y seguro que es fácil, pero no doy con la tecla. Adjunto una captura de la pantalla.

Un saludo y muchísimas gracias por todo.
Screenshot_20220104_201727.png

Democrito

unread,
Jan 4, 2022, 4:44:30 PM1/4/22
to FPGAwars: explorando el lado libre
Hola Obijuan,

He seguido todas tus instrucciones y he cargado un ejemplo en Windows 10 de 64bits con Alhambra II, y la instalación sin problemas, pero al cargar un circuito que funciona con la toolchain de la versión anterior, deja de funcionar la nueva. Y para asegurarme, desinstalé la 0.8, para volver a la 0.7.6 y con esta versión de toolchain sí que funciona .

Adjunto ejemplo que he probado. Se trata de escribir desde un terminal serie cualquier texto y debe de aparecer ese texto en una pantalla OLED. Con la versión 0.8 no aparece el texto, pese a que se nota que recibe el texto porque el led de recepción en la Alhambra parpadea con cada carácter, sin embargo con la versión 0.7.6 aparece el texto en la OLED sin problemas.

Es un circuito no oficial, en el sentido de que todavía le faltan cosas por hacer, y aunque es funcional, no es perfecto.

Saludos.
OLEDeditorScroll.ice

Jo mo

unread,
Jan 5, 2022, 6:04:14 AM1/5/22
to Christian Stone, fpga-wars-explora...@googlegroups.com

Thank you for your proposition Christian but Juan and Carlos, (in a private communication that we had 6 month ago) already proposed to add me (and other main users) as administrators.
I refused that responsibility because I do not feel my technical competencies to be sufficient for such a task!

So for now, I will just continue contributing as much as I am able to.

Please, once again, stop harassing in this google group, your attempts to divide us are in vain ;-) .

Regards

Joaquim


Le mer. 5 janv. 2022 à 11:11, Christian Stone <fcv...@gmail.com> a écrit :
In the other hand i want to propose at this group of incredible people that is emerging, to in the next weeks try between all (from devel to tests) to do a fix round over the open issues because some of them could be fixed with the new versions and others could be easily to solve and i think if we try to aboard between all of us we could reduce a lot the number of open issues,  what do you think?

Having the community join the planification is a brilliant idea!
Joaquim is a good candidate to help with coordination.

That will allow him to use the Labels (https://github.com/FPGAwars/icestudio/labels) and Milestones (https://github.com/FPGAwars/icestudio/milestones) to better communicate with the community.
Projects can be useful too (https://github.com/FPGAwars/icestudio/projects).
If you provide Write permissions to him, he will also be allowed to edit the labels and to merge pull requests from other contributors. It can help organize Alex's tasks.

Obijuan

unread,
Jan 5, 2022, 8:32:55 AM1/5/22
to FPGAwars: explorando el lado libre
Hola Miguel Ángel!

Muchas gracias por las pruebas. Hay tres problemas diferentes. Vamos a ir uno a uno. Yo de momento sólo me estoy enfocando en el primero

Problema 1.- Comprobación de la síntesis con la toolchain actualizada

Estas son las pruebas que necesito. Parece que te han funcionado con el ejemplo simple de encender un LED. Te adjunto 3 ejemplos más (para la icezum alhambra) para que pruebes. El 1 es una prueba de LEDs y pulsadores. Al apretar sw1 y sw2 cambian los LEDs.  El 2 es un ejemplo que muestra un LED en movimiento cada vez que se aprieta SW1. Y el 3 es un cronómetro implementando en un RISC-V. Por los LEDs se muestra el contador en binario. Con SW1 se activa/para y con SW2 se pone a cero. Es un ejemplo más complejo, para comprobar si las toolchains sintetizan ok

Las pruebas a realizar con cada uno son:
a) Verificar el diseño (Herramientas/Verificar) (Es para comprobar si el nuevo iverilog va ok en tu plataforma)
b) Cargar el diseño (Herramientas/Upload) (Es para comprobar si la síntesis/carga se hace ok)

Si te falla algo no hace falta que vuelvas a reinstalar la toolchain. Simplemente con saber si ha ido bien o no, y el mensaje de error es suficiente (Luego a partir de ahí seguimos investigando)

Problema 2: Error en la conversión del ejemplo 23-coche-fantástico:

Es un bug conocido, no relacionado con la toolchain. El ejemplo está hecho de forma nativa para la Alhambra II (usando los pines de la Alhambra II). El proceso de conversión de los pines de la Alhambra-II a la icezum falla. Si te fijas verás que NO hay pines asignados, y por eso falla la síntesis. Este problema está reportado en las issues. No es específico de esas dos placas, sino en general.

La solución temporal es sencilla: Basta con que abras el diseño en icestudio (opción de convertir) y luego asignes manualmente los pines

Problema 3: Menú de la colección Jedi demasiado grande

Es otro bug conocido para menúes grandes: Se salen de la pantalla y no se ven. Tampoco está relacionado con la toolchain.  En la versión de desarrollo de la Jedi los menúes se han hecho más cortos, para evitar ese problema. Te la puedes instalar bajando este zip:  https://github.com/FPGAwars/Collection-Jedi/archive/master.zip

Otra posibilidad, por si te ocurre en otras colecciones (mientras se arregla el bug) es usar la opcion Archivo/Áñadir como bloque. Las colecciones se instalan en el directorio .icestudio/collections. Ahí verás el directorio Collection-Jedi/blocks. En él están los menúes de la coleccion Jedi. Navegando por ellos podrás seleccionar cualquier de los bloques

Saludos, Obijuan
02-jumping-LED.ice
01-LEDs-buttons.ice
03-riscv-stop-watch.ice

Juan Gonzalez Gomez

unread,
Jan 5, 2022, 9:31:32 AM1/5/22
to FPGA-WARS: explorando el lado libre
Hola Demócrito!

Muchísimas gracias por las pruebas

Te voy a pasar 3 ejemplos para la Alhambra II, para que pruebes a verificarlos/sintetizarlos con la nueva toolchain. Quiero asegurarme que la toolchain se ejecuta bien, y que no falta ninguna librería

* Ejemplo 1: Prueba de los leds y pulsadores
* Ejemplo 2: Un LED que simula una partícula con gravedad saltando cada vez que se aprieta sw1
* Ejemplo 3: Un cronómetro implementando en el RISC-V. Con sw1 se arranca/para. Con sw2 se pone a cero

Estos ejemplos están validados, y quiero asegurarme que en todas las plataformas, con la nueva toolchain funcionan ok

El problema con el circuito OLEDeditorScroll es mucho más crítico. Las nuevas toolchains deben hacer alguna simplificación adicional (que las anteriores no hacía) y algo que antes funcionaba deja ahora de funcionar.  Encontrar el problema será complicado, pero es un bug gordo que hay que solucionar

Garcias a Miguel Angel, he detectado también que el ejemplo 23-coche-fantásico (en la colección Jedi) no se ejecuta correctmente con las nuevas toolchains. Voy a investigarlo detenidamente y luego seguiré con tu ejemplo

Si puedes, necesito que pruebes más ejemplos tuyos para detectar los que no funcionan con la nueva toolchain

Muchísimas gracias por las pruebas. El actualizar las toolchains nos permitirá incorporar nuevas placas a icestudio, y añadir el lenguaje VHDL en un futuro, para la implementación de los bloques

Saludos, Obijuan

--
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.
01-LEDs-buttons.ice
02-jumping-LED.ice
03-riscv-stop-watch.ice

miguelang...@gmail.com

unread,
Jan 5, 2022, 2:06:39 PM1/5/22
to FPGAwars: explorando el lado libre
Muy buenas Juan.

Sobre el problema 1.- Comprobación de la síntesis con la toolchain actualizada, los 3 ejemplos se verifican, sintetizan y cargan sin problemas en la Icezum Alhambra.

Sobre el problema 2: Error en la conversión del ejemplo 23-coche-fantástico. He informado los pines de los Leds y seguramente me faltarán más, porque solo se enciende el led 7, me queda mucho por aprender aún. (No me dio por buscar en las issues por si estaba reportado).

Y sobre el problema 3: Menú de la colección Jedi demasiado grande, he instalado la versión de desarrollo de la Jedi y se ve bastante mejor,  y con la otra posibilidad que me das, perfecto.


Un saludo y muchas gracias.

Jo mo

unread,
Jan 6, 2022, 4:28:43 AM1/6/22
to FPGAwars: explorando el lado libre
Carlos wrote

"In the other hand i want to propose at this group of incredible people that is emerging, to in the next weeks try between all (from devel to tests) to do a fix round over the open issues because some of them could be fixed with the new versions and others could be easily to solve and i think if we try to aboard between all of us we could reduce a lot the number of open issues,  what do you think?"

Yes Carlos, we can go trough the open issues list! 
And as this one is big , maybe it's better to first concentrate in the issues that are easily reproducible in all user machines (bugs that concerns all of us).

Maybe we can make two "smaller" lists one list of "bugs" and one list of "new features request" !
and for both list it will be nice to have for every element the following fields.
 - "number of the"github issue (with link to that one )
 -  short description
 - "Coder volunteer" (the first person who is volunteer for working on the resolution).  Of course someone who wants to help the "volunteer" can post is ideas in the github issue and maybe agrees with the volunteer for sharing the work!
The idea is to not have two persons secretly working on the same issue (and doubling the work) !
And to avoid that the volunteer goes to far in a development direction, that at the end is not really liked by the community, it is recommended to present a bit what he planes to do or present progressively his advancement (in the opened git-hub issue)! 
This is specially true for the list of "new features request"!

After about the better way of materialising those two list (excel sheet stored somewhere, or git-hub available functionalities,... ) , i have no preferences  for now !

Have a good sunny day i hope !

Joaquim

Democrito

unread,
Jan 6, 2022, 5:17:57 AM1/6/22
to FPGAwars: explorando el lado libre
Hola Obijuan,

Creo que he cazado el bug y si así fuese sería una pequeña tontería. He utilizado tu ejemplo de KITT donde los led dejan rastro. Dentro del módulo "KITT" vemos esto (ver imagen), y la entrada reset está al aire. Se me ocurrió ponerle un "0" (lo señalo en rojo) y de esta forma sí funciona. En otros diseños, pero no con los contadores, alguna vez me pasaba que si alguna entrada la dejaba al aire había algún problema, pero si le ponía una constante el error desaparecía.

Dibujo.PNG
Voy a seguir haciendo pruebas con otros circuitos para verificar si es esto o hay algo más. Adjunto ejemplo con esta corrección, pero es mejor abrir tu ejemplo de "KITT con estela" y añadir la constante "0" manualmente para verificar que realmente es así.

Saludos.
SinBug_Ejemplo-23-coche-fantastico.ice

Democrito

unread,
Jan 6, 2022, 5:48:46 AM1/6/22
to FPGAwars: explorando el lado libre
Efectivamente, parece ser que hemos pillado al bicho. He probado un circuito relativamente complejo (escribir en la OLED con scroll que puse en un post arriba) y en la parte de I2C tenía un contador con el reset al aire, al ponerle una constante "0" ha funcionado.

Voy a seguir probando. Sobre este tema no daré más noticias a no ser que hubiese otros problemas.

Adjunto ICE corregido por si alguien siente curiosidad.
sinBug_OLEDeditorScroll.ice

Democrito

unread,
Jan 6, 2022, 6:39:13 AM1/6/22
to FPGAwars: explorando el lado libre
He hecho más pruebas con circuitos que diseñé, como graficar líneas en la OLED (I2C), graficar un corazón en SPI en la matriz 8x8 de leds, etc y ninguno funcionaba, pero al buscar un contador con reset sin conexión se pone a funcionar. Lo solía encontrar en el módulo "Initic" (mío, existe varias versiones) o en el I2C o en ambos.

Creo que se puede confirmar. Cuando hagáis pruebas vosotros verificamos si es así. Pienso que la solución de este problema y es que toda entrada sin conexión por defecto quede a 0. De esta forma no hará falta corregir todos los circuitos diseñados hasta ahora.

Juan Gonzalez Gomez

unread,
Jan 6, 2022, 6:55:13 AM1/6/22
to FPGA-WARS: explorando el lado libre
Brutal Demócrito!! Muchísimas gracias!! Exactamete ese es el problema! 😀

No se deben  poner nunca pines de entrada al aire. Con la toolchain anterior parece que se ponen automáticamente a cero, pero la nueva debe realizar simplificaciones y si no está conectado se elimiman partes críticas y no funciona

Resumiendo: el bug está en los circuitos, que no deben tener entradas al aire

Voy a actualizar los ejemplos de los cuadernos técnicos que tengan este bug. Mientras tanto seguimos a la espera de más pruebas por parte de la gente

Muchísimas gracias! Seguimos avanzando! 😀

Saludos, Obijuan

El jue., 6 ene. 2022 12:39, Democrito <spo...@gmail.com> escribió:
He hecho más pruebas con circuitos que diseñé, como graficar líneas en la OLED (I2C), graficar un corazón en SPI en la matriz 8x8 de leds, etc y ninguno funcionaba, pero al buscar un contador con reset sin conexión se pone a funcionar. Lo solía encontrar en el módulo "Initic" (mío, existe varias versiones) o en el I2C o en ambos.

Creo que se puede confirmar. Cuando hagáis pruebas vosotros verificamos si es así. Pienso que la solución de este problema y es que toda entrada sin conexión por defecto quede a 0. De esta forma no hará falta corregir todos los circuitos diseñados hasta ahora.

--
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.

angelm...@gmail.com

unread,
Jan 6, 2022, 7:13:09 AM1/6/22
to FPGAwars: explorando el lado libre
Probado en W10 64 bits, en la versión  0.8.1w202201050901 de IceStudio. Todo Ok.

El martes, 4 de enero de 2022 a las 10:39:52 UTC+1, Obijuan escribió:

Juan Gonzalez Gomez

unread,
Jan 6, 2022, 7:15:25 AM1/6/22
to FPGA-WARS: explorando el lado libre
Muchísimas gracias Angel por las pruebas!! 😃

Saludos, Obijuan

--
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,
Jan 6, 2022, 7:30:54 AM1/6/22
to FPGAwars: explorando el lado libre
Gracias Obijuan! La pregunta que me hago es si desde el propio Icestudio podría detectar entradas al aire y convertirlas a cero antes de sintetizar, es mucho trabajo modificar todos los circuitos, pero si hay que hacerlo se hace. Sabemos que entradas al aire son "antenas" y quien haya trabajado con circuitos CMOS lo sabe, pero para evitar este tipo de problemas quizás se pueda resolver desde el propio diseño, tomando entradas al aire como cero (antes de sintetizar). Es sólo una sugerencia.

charli va

unread,
Jan 6, 2022, 7:32:20 AM1/6/22
to fpga-wars-explora...@googlegroups.com
Juan podíamos mirar si hay una opción para permitir entradas al aire, creo que hace tiempo la usé.

Si hoy puedo lo miro que ando con los reyes magos y el día pinta complicado 🤣

Si no, se me ocurre meter una validación a nivel software que antes de generar el verilog de el aviso de lo que hay que corregir.

Un abrazo team!

Democrito

unread,
Jan 6, 2022, 8:01:42 AM1/6/22
to FPGAwars: explorando el lado libre
Charli, pienso que es necesario lo que comentas, que antes de generar el verilog cualquier entrada sin conexión sea cero, más que nada para que la compatibilidad de los circuitos antiguos (cualquiera que se descargue desde el propio foro, por ejemplo) puedan funcionar si no se cumple esa condición. De esta forma eliminamos un problema desde la raíz, de otra manera los nuevos que lleguen no comprenderá lo que sucede, porque ven ejemplos pero al no sabe el por qué no les funciona.

Abrazo fuerte Charli, y tranquiloooo! disfruta de los Reyes. Todo el mundo sabe que en tus brazos recae mucho peso, a tu ritmo! Hemos probado la nueva toolchain, hemos detectado ese problema, pero mientras podemos trabajar con la versión antigua, y ahora a partir de ahora no dejaremos entradas sin conexión.

Democrito

unread,
Jan 6, 2022, 8:09:36 AM1/6/22
to FPGAwars: explorando el lado libre
No sé cómo funciona  los procesos de pasar el esquema a verilog y siguientes pasos hasta llegar a la síntesis. pero si esto dependiese del proyecto ICEstorm, se les podría comentar algo.

charli va

unread,
Jan 6, 2022, 8:45:04 AM1/6/22
to fpga-wars-explora...@googlegroups.com
Perdona democrito que no te había leído!

Voy a tratar con tu primer ejemplo el detectar esa situación.

Me parece muy interesante hacerlo porque en diseños grandes que pueden llevar mucho tiempo de síntesis estaría genial no tener que esperar para detectar este tipo de errores.

Independientemente voy a mirar la documentación de la toolchain en detalle porque si metemos la posobilidad de pasarle a apio parámetros opcionales podríamos tener un panel de configuración de opciones para en función del proyecto marcar diferentes posibilidades o restricciones.

Con esto se abre un camino muy interesante.

Un abrazo fuerte!

El El jue, 6 ene 2022 a las 14:09, Democrito <spo...@gmail.com> escribió:
No sé cómo funciona  los procesos de pasar el esquema a verilog y siguientes pasos hasta llegar a la síntesis. pero si esto dependiese del proyecto ICEstorm, se les podría comentar algo.

--
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,
Jan 6, 2022, 11:33:08 AM1/6/22
to FPGAwars: explorando el lado libre
La idea de poder poner algún parámetro a Apio para que evite este tipo de error  lo simplificaría todo. Ojalá se pueda hacer!

Otro fuerte abrazo!

Obijuan

unread,
Jan 6, 2022, 12:57:58 PM1/6/22
to FPGAwars: explorando el lado libre
Hola Miguel Angel!

Mucísimas gracias por las pruebas. Te respondo entre líneas

El miércoles, 5 de enero de 2022 a las 20:06:39 UTC+1, miguelang...@gmail.com escribió:
Muy buenas Juan.

Sobre el problema 1.- Comprobación de la síntesis con la toolchain actualizada, los 3 ejemplos se verifican, sintetizan y cargan sin problemas en la Icezum Alhambra.

¡Estupendas noticas! ¡Muchas gracias! 😃️

 

Sobre el problema 2: Error en la conversión del ejemplo 23-coche-fantástico. He informado los pines de los Leds y seguramente me faltarán más, porque solo se enciende el led 7, me queda mucho por aprender aún. (No me dio por buscar en las issues por si estaba reportado).

Además del problema de los pines, el circuito tenía otro problema (reportado por Demócrito). En la implementación del bloque Kitt había un contador con la entrada rst  al aire. La he puesto a 0 y ya funciona todo bien. Lo he corregido en la versión de development de la colección Jedi (en el repositorio)

Te adjunto el archivo para la icezum, que ahora ya debería funcionar con apio 0.8.0
 

Y sobre el problema 3: Menú de la colección Jedi demasiado grande, he instalado la versión de desarrollo de la Jedi y se ve bastante mejor,  y con la otra posibilidad que me das, perfecto.

¡Estupendo! ¡Gracias! 😃️

 
Saludos, Obijuan


Ejemplo-23-coche-fantastico-icezum.ice

Obijuan

unread,
Jan 6, 2022, 1:08:09 PM1/6/22
to FPGAwars: explorando el lado libre
Hola Demócrito!

La detección de pines de entrada al aire (con los de salida no hay problema) la debemos meter en icestudio. Yo lo implementaría primero como warnings que salgan al hacer una verificación (o en la propia síntesis), y que luego el usuario lo cambia manualmente.  Por otro lado,  en la parte de reglas de la placa/sintetizado se podrían poner opciones para hacer conexiones automáticamente en caso de que apareciesen esos warinings. Hay que abrir issues para que se implemente

En cualquier caso yo voy a seguir avanzando con integración de la nueva toolchain. En las próximas wips (cuya versión será 0.8.2w...) ya se instalará por defecto apio 0.8.0. Los circuitos que detecte que tengan el bugs de entradas sin conectar (y que no funcionen como antes) los solucionaré manualmente de momento

Muchísimas gracias por la ayuda. Es un bug cazado muy muy crítico e importante (yo estaba preocupado cuando leí el fallo en tus pruebas)

Saludos, Obijuan

Obijuan

unread,
Jan 6, 2022, 1:16:06 PM1/6/22
to FPGAwars: explorando el lado libre
Sí. Esta opción hay que documentarla y meterla en el issue correspondiente, para implementarla cuando se haya completado la transición. Si  la encuentras sería cojonudo

De momento voy a seguir con la integración de apio 0.8.0 en las siguientes wips para seguir avanzando. Quiero terminar la migración cuanto antes, y luego continuar solucionado el resto de bugs

Todavía faltan pruebas en Mac, pero como hay pocos usuarios con esa plataforma (y apenas se reportan pruebas) prefiero seguir avanzando. Los bugs que aparezcan en mac los resolveremos según surjan

Obijuan

unread,
Jan 6, 2022, 1:17:58 PM1/6/22
to FPGAwars: explorando el lado libre
Si en paralelo vais trabajando en este bug genial. Yo voy a continuar con la migración de las toolchains

Saludos, obijuan

charli va

unread,
Jan 6, 2022, 2:15:09 PM1/6/22
to fpga-wars-explora...@googlegroups.com
Buenas Juan! Yo comienzo las pruebas en Mac mañana viernes que tengo que instalarme todo el entorno, pero sin falta mañana te paso reporte.

mSlider

unread,
Jan 6, 2022, 3:58:28 PM1/6/22
to FPGAwars: explorando el lado libre
Hola Juan,

Probado en:
- Win10 64-bit, icestudio: "0.8.1w202201050901", actualizado a apio 0.8.0, testeado con 2 ejemplos en la Alhambra II - OK!
- macOS Sierra v10.12.6, icestudio: "0.8.1w202201050901", actualizado a apio 0.8.0, testeado con 2 ejemplos en la Alhambra II - OK
  *en mac "enable drivers" me tarda un buen rato (8-10 minutos) la primera vez y luego ya esta.
  **en mac cada vez que hago "upload" me pide el password de administrador antes y despues de descargar el proyecto en la placa, si alguien sabe como hacer que no me pida el password me ahorraria algo de tiempo, ya he incluido icestudio en "seguriad y privacidad" y e sigue pidiendo el password cada vez que hago un "upload"

Un saludo!

Alex (mSlider)

charli va

unread,
Jan 6, 2022, 4:18:27 PM1/6/22
to fpga-wars-explora...@googlegroups.com, mSlider
Mis pruebas:

Windows 10 en 64 bits última wip , actualizada a apio 0.8.0 testeado con 4 ejemplos de led de la colección Jedi y un circuito en el que estoy trabajando bastante complejo que le lleva casi 15 minutos de síntesis, todo ok!
Linux ubuntu 20.04 64 bits última wip , actualizada a apio 0.8.0 testeado con 4 ejemplos de led de la colección Jedi y un circuito en el que estoy trabajando bastante complejo que le lleva casi 15 minutos de síntesis, todo ok!
Linux ubuntu 21.10 64 bits última wip , actualizada a apio 0.8.0 testeado con 4 ejemplos de led de la colección Jedi y un circuito en el que estoy trabajando bastante complejo que le lleva casi 15 minutos de síntesis, todo ok!
Linux Arch 64 bits última wip , actualizada a apio 0.8.0 testeado con 4 ejemplos de led de la colección Jedi y un circuito en el que estoy trabajando bastante complejo que le lleva casi 15 minutos de síntesis, todo ok!

Mac intel y M1 mañana las pruebo y aprovecho para documentar en una issue o en la wiki como desactivar la solicitud continua que no recuerdo ahora mismo como lo solucioné en su día ( @mSlider cuenta con ello)

Un abrazo equipo! 
 

--
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,
Jan 6, 2022, 5:02:24 PM1/6/22
to FPGAwars: explorando el lado libre
He creado una "Issue" sólo para que quede constancia: https://github.com/FPGAwars/icestudio/issues/579

Juan Gonzalez Gomez

unread,
Jan 6, 2022, 5:16:19 PM1/6/22
to FPGA-WARS: explorando el lado libre
¡Estupendo! 😀

Muchas gracias Alex por las pruebas

Me quedo más tranquilo sabiendo que en mac has podido sintetizar y cargar. Parece que no he olvidado meter ninguna librería importamte

En breve saco una wip con apio 0.8.0 instalado por defecto

Saludos, Obijuan

--
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.

Juan Gonzalez Gomez

unread,
Jan 6, 2022, 5:17:12 PM1/6/22
to FPGA-WARS: explorando el lado libre, mSlider
¡Muchísimas gracias Carlos! 😀

Juan Gonzalez Gomez

unread,
Jan 6, 2022, 5:17:38 PM1/6/22
to FPGA-WARS: explorando el lado libre
Gracias Demócrito! 😀

El jue., 6 ene. 2022 23:02, Democrito <spo...@gmail.com> escribió:
He creado una "Issue" sólo para que quede constancia: https://github.com/FPGAwars/icestudio/issues/579

--
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,
Jan 6, 2022, 5:43:49 PM1/6/22
to FPGAwars: explorando el lado libre
Lo que comento a continuación es para evitar "paranoias". Se puede dejar al aire entradas en multiplexores siempre que no esté dentro de la cuenta. Por ejemplo, si tengo un multiplexor que multiplexa hasta 16 entradas (sin importar cuál es el ancho en bits a multiplexar) y sólo llego hasta el 10 (por ejemplo), lo que quede por encima puede quedar al aire. Lo que no se puede hacer es que dicho multiplexor tenga entradas al aire y esté dentro del rango que lo vas a usar.

Acabo de comprobar que en este sentido todo sigue funcionando como se espera y en este sentido no hay ningún problema. Y es lo lógico, ya que si montásemos un multiplexor con tecnología CMOS (sin FPGA), no debería haber problemas en dejar entradas al aire que no vamos a usar.

Comento esto por si alguien se hace esa pregunta. Yo me la he hecho, lo he comprobado y todo en este sentido sigue siendo correcto.

charli va

unread,
Jan 7, 2022, 2:18:46 AM1/7/22
to fpga-wars-explora...@googlegroups.com
Muchísimas gracias democrito! Voy a intentar detectar estas situaciones y levantar un warning que podrá valer para detectar posibles errores como formar a quien por ejemplo desconozca esto.

Mil gracias por insistir en encontrar el por qué de los problemas y dotarlos de sentido.



--
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,
Jan 7, 2022, 3:25:31 AM1/7/22
to FPGAwars: explorando el lado libre
Un millón de gracias a ti, Carlos.

Obijuan

unread,
Jan 7, 2022, 3:09:54 PM1/7/22
to FPGAwars: explorando el lado libre
Acabo de subir la versión de la wip a 0.8.2w. A partir de esta versión se instala apio 0.8.0 por defecto (No es necesario darle a la opción de Update)

Muchísimas garcias a todos por las pruebas. Lo más gordo ya está hecho. Ahora hay que ir puliendo y solucionado los bugs que vayan saliendo (La migración todavía no está completada)

Saludos, Obijuan

charli va

unread,
Jan 7, 2022, 3:56:19 PM1/7/22
to fpga-wars-explora...@googlegroups.com
Gracias a ti Maestro!


--
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.
Reply all
Reply to author
Forward
0 new messages