• sales

    +86-0755-88291180

Tang Nano FPGA Demo Code

1. Preface

Basic guide to use Tang FPGA.


2. Tang Nano

  • The onboard downloader is ch552

Github: https://github.com/sipeed/Tang-Nano-examples


3. Tang Nano 1K

Github: https://github.com/sipeed/TangNano-1K-examples


4. Tang Nano 4K

Github: https://github.com/sipeed/TangNano-4K-example

Other example


5. Tang Nano 9K

Github: https://github.com/sipeed/TangNano-9K-example

FPGA drives 1.14-inch SPI screen

】HDMI display : Examples of PicoRV(as follows

[] Environment
    Python
    Gowin IDE
[] Steps
   []  Program FPGA
    -> Open picotiny project by picotiny.gprj file in TangNano-9K-example\picotiny\project directory
    ->Tick Use MSPI as regular IO in Project->Configuration->Place&Route->Dual-Purpose Pin which can be found in         the top menu bar
    ->Right-click Place&Route which is in Process interface and choose Clean&Rerun All
    ->Download the generated .fs file to the Embedded Flash of Nano 9K
        Then we can use the FPGA like a mcu.

    [] Download firmware

Execute the following command in TangNano-9K-example\picotiny directory

python .\sw\pico-programmer.py .\example-fw-flash.v COM13

The COM13 at the end of command line refers to the serial port number of the development board in the system.
For example, if it is allocated COM14 in your system, you need change it into COM14.

There is a countdown shows - Waiting for reset - when you succeed execute the command, in which time it's required to press the S1 button of the development board to complete the programming.
The succeed done log is as below:

\TangNano-9K-example\picotiny> python .\sw\pico-programmer.py .\example-fw-flash.v COM13
Read program with 11760 bytes
  - Waiting for reset -
    ...
Total sectors 3
Total pages 46
Flashing 1 / 3
Flashing 2 / 3
Flashing 3 / 3

Flashing completed

Then we can use serial port tools to execute command and use HDMI to display the code interface.

[] End

Other knowledge like cross-compile is not mentioned here, so you should learn to use it by yourself.


】Litex on Tang Nano 9K : https://github.com/litex-hub/litex-boards

Partner tutorials:

Lushay Labs are willing to make series around ethernet, graphics and GPU basics, and in the future there is 2 processor project.

】Those who are interested in these projects can read the following guides provided by Lushay Labs.

Other Blogs


6. Tang Nano 20K

Github: https://github.com/sipeed/TangNano-20K-example


7. Troubles

Here are the most common troubles or questions we gathered: Tang Solutions


TAG: Raspberry Pi UGV Rover ROS2 PT AI OpenCV Robot Car MediaPipe TOF Time-Of-Flight Laser Range Sensor Radar Module UART / I2C Port ESP32-S3 1.28inch Round LCD Display Screen Module Development Board GC9A01A QMI8658A With Case PoE-M.2-HAT+B User Guide ESP32 S3 Development Board 2.8 inch Round LCD Display 480x480 QMI8658 Sensor / MIC / SD /MP3 Audio /Battery Port LVGL/HMI For Arduino Raspberry Pi 5 DSI Raspberry Pi 5 PCIe to SATA Expansion Board with EEPROM HAT+ ESP32 S3 Development Board 1.5 inch Round Rotary OLED TouchScreen Smart Knob Display 1.5inch Display 466x466 LVGL for Arduino USB TO M.2 Key B 5G DONGLE For SIM8202/SIM8262/RM520/RM530 Luckfox ESP32 S3 5 inch LCD Development Board 800x480 TouchScreen Display TVBOX LVGL HMI Sensor CAN RS485 4 inch e Paper HAT+ E Ink Spectra E6 Full-Color 600x400 Screen Display For Arduino /Raspberry Pi /Jetson Nano /STM32 64MP Camera Raspberry Pi RTC WatchDog HAT (B) Real time clock Onboard DS3231SN High Precision RTC Chip Raspberry Pi 3.5 inch DSI Display MIPI LCD (H) Capacitive TouchScreen 480x800 SpotPear SpotPear CH340 driver Raspberry Pi Pico 2 RP2350 industrial 6-ch Relay RS485 isolation protection ESP32 MLX90640