Estoy ahora mismo de Vacaciones y hasta el martes que viene no vuelvo a casa.
En cuanto vuelva te lo pruebo.
Tengo ademas una proposicion que creo puede resultar intetesante. Se que este tema requiere de un nuevo hilo pero voy a ir soltando la liebre.
Desde el grupo de Discord del Mega65 he estado comentando los avances que tenemos con IceStudio y el sistema Mega65 y en la discusion a alguien se le ocurrió preguntar si era posible sintetizar el core principal de la implementacion de la maquina del Mega65.
Ese core esta escrito en un 90% en VHDL y el resto en Verilog.
Pues a un iluminado se le ha ocurrido usando el pluging de VHDL para yosys sintetizar el core, y ese core es bastante grande.
Mirad lo que comenta:
It runs! A carved mega65-core booting to BASIC on the wukong board through a fully open flow: ghdl → yosys → nextpnr-himbaechel → prjxray fasm2frames. CPU running at 20 MHz for now.
In the build (real, hardware-exercised logic):
- 45GS02 CPU (gs4510) with hypervisor mode
- Hyppo hypervisor + its BRAM (boots, mounts FAT, loads ROM)
- VIC-IV (viciv) with the full HDMI/DVI output path
- sdcardio — SD card interface, F011 floppy emulation, hypervisor registers (fpgatemp inside it stubbed to a constant reading)
- Both CIAs, C65 UART, keyboard matrix plumbing
- The serial monitor
- All memories: 384KB chipram (shadowram), colour RAM, charrom, hyppo work RAM, character/screen buffers
- MMCM clocking, slow_devices skeleton
como veis es bastante completo, pero fijaros en el flujo.
Ellos usan
especificamente esto
you have to tell it to build the xilinx uarch for the himbaechel db
(this repo is specifically set up to build MEGA65 cores)
Los cores para Mega65 son cores para la Artix7 200 que lleva esa maquina
Si se ha podido generar el core de Mega65 con lo complejo que es eso, quiere decir que al menos este desarrollador del Mega65 ha resuelto muchisimos problemas con la toolchain del Openxc7 y podenos sacar muchas ideas de el.
Y ya llegados a este punto, por que no añadir soporte al IceStudio de bloques en VHDL?
Estuve preguntando a la IA y me dio un monton de informacion y el roadmap requerido para ello con algunos scripts en python para partiendo del formato JSON que usa IceStudio, convertirlo a VHDL incluso con instancias o bloques anidados. La informacion de la
consulta vale oro.
Os comparto la consulta para que saqueis vuestras propias conclusiones
Con todo esto que os he puesto hay mucho trabajo pero seria fantastico poder trabajar con VHDL porque academicamente es lo que se enseña en la mayoria de universidades de USA y Europa.
Un Abrazo,
Fernando Mosquera