• 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: ESP32 P4 Development Board 7inch Display 7 inch TouchScreen Onboard ESP32-C6/Camera-Port/Speaker-Port Raspberry Pi Pico 2 RP2350-One Mini Board Type-A RP2350A 4.26inch-e-Paper 15.6 inch Dual LCD Computer PC Monitor Display Double Secondary Screen Type C Mini HDMI 1080P For Windows/MacOS Pi5 Raspberry Pi Pico rp2040 Display image 1.3inch LCD ST7789 change bmp to hex Raspberry Pi 5 PCIe USB HUB 3.2 Gen1 HAT+ High Speed Pi5 ESP32 1.54 inch E-Paper Smart Watch display Screen 200x200 Ultra-low power For Arduino/Micropython/RTOS For Watchy Industrial UART USB TO 8CH RS485 Isolated Converter For 35mm standard rail and stacked installation JSON Command Meaning OPS Computer ESP32 desktop trinket 3.5 inch LCD Computer CPU GPU RAM Monitor PC USB Secondary Display Screen Raspberry Pi 5 inch DSI Display MIPI LCD (C) Capacitive TouchScreen 1024x600 ESP32 Thermal imaging Raspberry Pi 5 PCIe to M.2 Raspberry Pi 5 ESP32-S3 IR Infrared Thermal Imaging Camera B 45/90 80×62 ESP32-S3-WROOM Raspberry Pi 21.5inch FHD LCD 1080x1920 Capacitive TouchScreen Display For Raspberry Pi/Jetson Nano/ EchoEar ESP32 S3 AI Development Board with 1.85-inch LCD Display Cute Cat Pet Chatting Robot N32R16