1. Introduction
The Sipeed Tang Nano 20K is a compact and powerful Field-Programmable Gate Array (FPGA) single board computer designed for various applications, including open-source RISC-V development, Linux environments, retro game console emulation, and general embedded systems projects. This manual provides essential information for setting up, operating, and maintaining your Tang Nano 20K board.
2. Product Overview
2.1 Key Features
- FPGA Chip: GW2AR-18 QN88 with 20736 LUT4 logic cells and 15552 Flip-Flops.
- Onboard Debugger: BL616 supporting JTAG, USB to UART, and USB to SPI communication for FPGA.
- Clock Generation: MS5351 provides multiple clocks, including a 27MHz crystal for HDMI display.
- Display Interfaces: 40-pin RGB LCD connector and HDMI interface.
- Memory: 64Mbits Flash for bitstream storage and 64Mbits SDRAM.
- Connectivity: USB2.0 HS interface for serial communication and high-speed SPI reception.
- Applications: Suitable for game console emulators, driving RGB screens, multiple display outputs, and RISC-V soft-core experiments.
2.2 What's in the Box
The package includes the following components:

Image: Contents of the Sipeed Tang Nano 20K package.
- Sipeed Tang Nano 20K SBC (solder header) x1
- DS2 Gamepad x2
- 32GB TF Card x1
- USB Type-C Data Cable x2
- DS2 Handle Adapter Board x2
- Breadboard x1
2.3 Board Layout and Function Diagram
Familiarize yourself with the various components and interfaces on the Tang Nano 20K board using the function diagram below.

Image: Sipeed Tang Nano 20K Function Diagram.
- Speaker Out: Audio output connection.
- User Buttons: Two programmable buttons for user interaction.
- USB Debug: USB Type-C port for debugging and power.
- GA2AR-LV18 FPGA: The main FPGA chip.
- MIPI DPI Conn.: MIPI Display Parallel Interface connector.
- TMDS Video Out: HDMI video output.
- WS2812 LED: Addressable RGB LED.
- Flash: Onboard flash memory for bitstream storage.
- BL616: Onboard debugger chip.
2.4 Pin Diagram
The pin diagram illustrates the pinout configuration of the Sipeed Tang Nano 20K, crucial for connecting external components and peripherals.

Image: Sipeed Tang Nano 20K Pin Diagram.
3. Specifications
Detailed technical specifications for the Sipeed Tang Nano 20K board are provided below:

Image: Sipeed Tang Nano 20K Detailed Specifications.
| Item | Detail | Others |
|---|---|---|
| FPGA Chip | GW2A-LV18QN88C8I7 | Logic units(LUT4): 20736 Flip-Flop(FF): 15552 Shadow SRAM (S-SRAM)(bits): 41472 Block SRAM (B-SRAM)(bits): 828K Numbers of B-SRAM: 46 32Bits SDR SDRAM: 64Mbits Numbers of 18x18 Multiplier: 48 Numbers of PLLs: 2 I/O Bank: 8 |
| Onboard Debugger | BL616 | JTAG for FPGA USB to UART for FPGA USB to SPI for FPGA communication Control MS5351 generate frequency |
| Clock Generator | MS5351 | Provide extra 3 clocks for FPGA |
| Display Interface | 40Pins RGB LCD connector HDMI interface | |
| LED | 6 | Low voltage level enable |
| RGB LED | 1 | WS2812 |
| User Key | 2 | |
| TF Card Slot | 1 | |
| PCM Amplifier | 1 | MAX98357A, for audio driving |
| Storage | 64Mbits Flash | To save bitstream |
| Size | 22.55mm x 54.04mm x 5mm |
4. Setup Guide
4.1 Initial Hardware Connection
- Insert TF Card: If using, carefully insert the provided 32GB TF card into the TF card slot on the Tang Nano 20K board.
- Connect USB Power/Data: Connect one end of the USB Type-C data cable to the USB Debug port (S1 or S2, depending on the board orientation) on the Tang Nano 20K and the other end to your computer or a suitable 5V power adapter.
- Display Connection (Optional): For video output, connect an HDMI cable to the TMDS Video Out port or an RGB LCD to the 40-pin RGB LCD connector.
- Gamepad Connection (Optional): Connect the DS2 gamepads to the DS2 handle adapter boards, then connect the adapter boards to the appropriate pins on the Tang Nano 20K using jumper wires or a breadboard setup.
4.2 Software Environment Setup
For detailed instructions on setting up the development environment, including Gowin IDE, openFPGALoader, and RISC-V toolchains, please refer to the official Sipeed Tang Nano 20K Wiki and community forums. These resources provide comprehensive guides for programming the FPGA and running various applications.
- Official Wiki: dl.sipeed.com/shareURL/TANG/Nano_20K/1_Datasheet
- Community Forum: forum.youyeetoo.com/
5. Operating Instructions
5.1 Programming the FPGA
The FPGA on the Tang Nano 20K can be programmed using a bitstream file generated from your design. This typically involves:
- Developing your logic design using an HDL (e.g., Verilog, VHDL) in the Gowin IDE.
- Synthesizing and implementing the design to generate a bitstream file (.fs or .bit).
- Flashing the bitstream to the FPGA via the onboard BL616 debugger using tools like Gowin Programmer or openFPGALoader.
- The bitstream can be stored in the onboard 64Mbits Flash for persistent loading upon power-up.
5.2 Using as a Retro Game Console
The Tang Nano 20K supports running NES emulators (e.g., Nestang). To use it as a retro game console:
- Flash the appropriate game console emulator bitstream to the FPGA.
- Load game ROMs onto the TF card.
- Connect the DS2 gamepads using the adapter boards.
- Connect the board to a display via HDMI or RGB LCD.
- Power on the board and navigate the emulator interface using the connected gamepads.
5.3 User Interaction
- User Keys: The two user keys can be programmed for various functions within your FPGA design or applications.
- LEDs: The 6 low-voltage level enable LEDs and the WS2812 RGB LED can be controlled by your FPGA logic to provide visual feedback.
6. Maintenance
- Handling: Handle the board with care to avoid physical damage. Avoid touching the components directly, especially when powered.
- Storage: Store the board in an anti-static bag in a dry, cool environment when not in use.
- Cleaning: Use a soft, dry brush or compressed air to remove dust. Do not use liquid cleaners.
- Firmware Updates: Regularly check the official Sipeed and WayPonDEV resources for any firmware or software updates for improved performance and features.
7. Troubleshooting
7.1 Common Issues
- Board not powering on: Ensure the USB Type-C cable is securely connected to a reliable power source (computer USB port or 5V adapter). Check the cable for damage.
- FPGA not programming: Verify that the correct drivers for the BL616 debugger are installed on your computer. Ensure the bitstream file is valid and the programming software is configured correctly. Check the JTAG test points if using an external debugger.
- No display output: Confirm that the display cable (HDMI or RGB LCD) is properly connected. Ensure the FPGA is programmed with a design that includes display output functionality.
- Gamepads not responding: Check the physical connections of the DS2 gamepads and adapter boards. Verify that the emulator software recognizes the gamepad inputs.
7.2 Further Assistance
For more complex issues or specific technical questions, please utilize the following resources:
- WayPonDEV Support: Click "WayPonDEV" on the product page and ask a question.
- Community Forum: Visit forum.youyeetoo.com/ for community support and discussions.
8. Support & Warranty
8.1 Technical Support
For technical inquiries or assistance, please contact WayPonDEV directly through the Amazon platform by clicking on "WayPonDEV" and selecting "Ask a question." You may also find support and resources on the official community forum at forum.youyeetoo.com/.
8.2 Warranty Information
Specific warranty details for the Sipeed Tang Nano 20K are provided by WayPonDEV. Please refer to the product listing on Amazon or contact WayPonDEV support for comprehensive warranty terms and conditions.