• 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 5 PCIe FFC Connector to Standard PCIe x1 Slot (C) Expansion Board Jetson Orin 4G/3G/2G expansion board GNSS GPS SIM7600G-H-M.2 Raspberry Pi DS3231 ESP32 2 inch Capacitive TouchScreen LCD Display ST7789 CST816D 240x320 For Arduino/Raspberry Pi/Pico Raspberry Pi LCD Display Screen 1.3inch LCD with Game Button AND Audio Buzzer For Zero 2W / 3B / 4B / PI5 / RP2040-PiZero Raspberry Pi Secondary Screen Spotpear Luckfox Development Board RP2040 Raspberry Pi 5 PD Power MPW7 Raspberry Pi 5 PCIe to WIFI7 Adapter Board HAT Pi5 For Google TPU BE200 AX210 AI Raspberry Pi LCD display screen 1.3inch ST7789 with Game Button A How to Use Product ROS2 TTL To CAN Mini Raspberry Pi Pico 2 RP2350 ETH CH9120 TCP/UDP Ethernet Network For Arduino ESP32-S3 Development Board 1.85 inch Round LCD N16R8 DeepSeek AI Voice Chat Robot BOX Magnetic-charging DAPLINK Computer Secondary Screen LCD Screen Driver Board