• 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: Retail electronic Labe DPI Interface X1301 Raspberry Pi 5 HDMI to CSI-2 Shield 1080P@60fps & Audio & Video Also For 4B/3B Industrial Modbus RTU RS485 8-ch 30A High Current Relay Module (E) With Digital Input ESP32 S3 Development Board 1.43 inch AMOLED Display 1.43inch TouchScreen For Arduino LVGL With SD-Port/ QMI8658C 6-Axis Sensor SP3232EEN Computer AI Deepseek Mechanical Voice Keyboard Linux 10x0.85inch LCD Screen Customize keys + 2.01 inch Secondary Display Pi5 Pure- Raspberry Pi 5 UPS HAT E 4-Port For 21700-Li-Battery (NOT includ) 5V6A Uninterruptible Power Supply 1.54inch OLED user guide Raspberry Pi Compute Module 5 CM5 Cortex A76 BCM2712 With/Without Wi-Fi RAM 2/4/8/16GB eMMC Lite/8/16/32/64GB Sipeed Lichee Tang Nano 20K FPGA RISCV Open-Source Retro-Game Linux MINI Development Board GW2AR-18 WiFi Wireless ESP32 DDSM Motor Driver HAT For Direct Drive Servo Hub Motors For Raspberry Pi Intel 11th Arduino Board Managers Tutorial User Guide IR Thermal Imaging Camera Raspberry Pi 8 inch DSI MIPI LCD TouchScreen Display 8inch 800x1280 For Luckfox Lyra RK3506/ESP32-P4/Luckfox Omni3576 Raspberry Pi Pico Camera Raspberry Pi 5 PCIe to M.2 NanoKVM-USB-Development