What’s The Difference Between Tang 9K And 20K (It Isn’t 11…)

[Grug Huhler] has been working with the Tang Nano 9K FPGA board. They are inexpensive, and he noticed there is a 20K version, so he picked one up. Of course, you’d expect the 20K board has a different FPGA with more gates than the 9K, but there are also a number of differences in the host board. [Grug] was kind enough to document the differences in the video below.

In addition to the differences, there’s a good demo of the boards hosting a system-on-chip design. The little DIP package is handy for breadboarding. All of the 20K pins are 3.3 V, according to the documentation. The 9K does have some 1.8 V pins. There are more external devices on the 20K board but that eats up more uncommitted pins. Depending on your design, that may or may not be a problem.

We keep meaning to pick some of these up to play with. The Verilog is easy enough, and the tools look adequate. If you need a refresher on Verilog, we have a boot camp for you that would probably port easily enough to the Tang system. We’ve been following [Grug’s] work on these chips lately, and you should, too.

18 thoughts on “What’s The Difference Between Tang 9K And 20K (It Isn’t 11…)

        1. As always, it depends. The FOSS side is still pretty rudimentary for these. OTOH the Gowin IDE works quite well under Linux. Yes it does actually work, very little if any weird quirks. I know, still can’t really believe it myself. It’s not all roses, under Linux you have to use the openFPGAloader to push stuff onto the board. Still quite happy with it, free (as in beer) IDE that works under Linux and an FPGA board (with integrated programmer !) for that kind of price? Literally unheard of before, “Arduino of FPGA” territory IMHO.

        2. @Stappers said: “Is the ecosystem of four years ago annoying or recent version of ecosystem annoying?”

          Exactly my (still unanswered) question. Thanks Stappers.

      1. I’ve just started playing with the Tang Nano 9K and found the Lushay Labs website which provides good beginner friendly tutorials and a VS Code extension (Lushay Code) which make programming the FPGA a one click action just like an Arduino :)

  1. The 1.8v pins are somewhat annoying for my use cases, but really you just have to read the datasheet and know which ones to avoid. I have a 20k sitting in a drawer but haven’t pushed the limits of the 9k yet. I also like the picorv32 on it. I’m hoping to transplant the IC onto a custom flight controller board sometime this year, but first I need to port ELRS firmware to RV32i and my UART peripheral.

  2. I found them quite easy to get going.

    Far easier than my experience. Some decades ago with Cyclone/Max and Quartus or Spartan and ISE.

    Then again that just means I came to Tang and Gowin with experience….

    They do welcome edits to the wiki which is also a great sign and now Sipeed also provide a shared license server to skip having to register with Gowin for their IDE. Even though that was quick and easy.

    1. IDK, I built a 12bit R2R ladder DAC. Nice to have enough pins where still plenty are left over. Implementing the DDS itself isn’t too bad, it’s interfacing to the outside world where the real work kicks in. I had it output a hard coded frequency, good project to get one’s teeth wet. “Parallel RGB” LCD display is another one that can eat like 20 pins at once. Or have 3 ladder DAC’s and output analog RGB?

        1. Well, that flew right over my head. I blame the amazing ability of the human brain to “show” us what we expect to see. Just one “k” difference, give or take.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.