Sipeed Tang Console NEO 138K

En este artículo vamos a revisar las características más destacadas de la placa Tang Console 138K de Sipeed.

https://www.youtube.com/shorts/_4BpGkasQaY

Ficha técnica

La Tang Console 138K es una placa de desarrollo FPGA compacta. Se basa en la FPGA Gowin GW5AST-LV138PG484A, incluye 135 KB de SRAM, 765 KB de BSRAM, así como 16 MB de flash. Incluye una CPU RISC-V AE350 a 800 MHz. Dispone de conexión USB-C para comunicación con el PC y para programación. Asimismo, dispone de 2 botones físicos de usuario y un botón de reconfiguración.

Sus características técnicas se resumen en la siguiente tabla:

CPUAE350 a 800 MHzFPGAGW5AST-LV138PG484ALUT138240Velocidad100 MHzRAM135 KB + 765 KBFlash16 MB (+ microSD)Wi-FiNoBTNoPines80USB2x USB-C + 2x USB-ATamaño66,00 x 57,00 mm

Su arquitectura hardware se basa, por tanto, en la FPGA GW5AST-LV138PG484A.

Conexiones

La Tang Console NEO 138K dispone de las siguientes conexiones:

  • 80 pines dispuestos en cuatro filas paralelas (normalmente utilizado para conexión de SDRAM).
  • 2 conectores PMOD
  • 2 conectores USB-C (2.0)
  • 2 conectores USB-A (3.0)
  • Conector PCIe
  • Conector HDMI
  • Slot microSD
  • Conector de batería 3,7 voltios
  • Conector de ventilador 5 voltios

Programación

Para el desarrollo y compilación de nuestro proyecto utilizaremos Gowin EDA IDE, donde seleccionaremos el dispositivo GW5AST-LV138FPG676AC1/I0 en el Project Wizard.

Una vez que hemos realizado la síntesis y el rutado, podemos subir el binario resultante a la placa. Según indica el fabricante, la herramienta Gowin Programmer no funciona adecuadamente en Linux con la serie Tang. La alternativa para ello es openFPGALoader.

# pacman -S openfpgaloader

Una vez instalada la aplicación, conectaremos nuestra placa al PC vía USB-C (al conector JTAG) y comprobamos que se detecta adecuadamente.

$ openFPGALoader --detect empty
No cable or board specified: using direct ft2232 interface
Jtag frequency : requested 6.00MHz -> real 6.00MHz
index 0:
idcode 0x1081b
manufacturer Gowin
family GW5AST
model GW5AST-138
irlength 8

Finalmente, procederemos a la subida del binario a la placa.

$ openFPGALoader -b tangmega138k fpga_project.fs openFPGALoader -b tangprimer25k Devel/FPGA/Tang138K/prueba/fpga_project/impl/pnr/fpga_project.fs
empty
Jtag frequency : requested 6.00MHz -> real 6.00MHz
Parse file Parse Devel/FPGA/Tang138K/prueba/fpga_project/impl/pnr/fpga_project.fs:
Done
DONE
Load SRAM: [==================================================] 100.00%
Done
DONE
#FPGA #Gowin