[Sevan Janiyan] shares their research on putting an open FPGA toolchain together. Specifically, this is an open toolchain for the Sipeed Nano Tang FPGAs, which are relatively cheap offerings by Sipeed from China. The official toolchain is proprietary and requires you to apply for a license that’s to be renewed every year. There’s a limited educational version you can use more freely, but of course, that’s not necessarily sufficient for comfortable work.
This toolchain relies on the apicula project, an effort to reverse-engineer, reimplement and document the Gowin FPGA bitstream format, as well as the gowin integration for nextpnr (an open tool for FPGA place-and-route). With a combination of yosys, apicula, nextpnr and openFPGAloader, [Sevan] put together a set of commands you can use to build gateware for your Nano Tang FPGAs – without any proprietary limitations blocking your way. They show a basic blinkie demo, and also a demo that successfully operates a parallel LCD connected to the board.
The availability of open toolchains for FPGAs has always been somewhat of a sore point. Wondering about open FPGA toolchains? This Supercon 2019 talk by Tim [Mithro] Ansell will get you up to speed!
We thank [feinfinger (sneezing)] for sharing this with us!
Not true: “The official toolchain is proprietary and pay-to-use”
It’s proprietary and you have to register “apply license” yearly but it’s free.
https://www.gowinsemi.com/en/support/faq/
Nothing wrong with open source alternatives, but the situation is not as bad is this implies.
ouch! thank you for letting me know, fixed!
Given the speed at which this area is developing, I don’t think any talk from 2019 can bring you up to speed. FPGAs are one of the most exciting areas of open source / free development!
I wonder if this work will see the Nano series added to Icestudio as target boards one day?
https://hackaday.com/2019/11/03/the-5-fpga/
oh cool! missed that one – definitely something I could’ve used as background for this article! Thank you!
I’ve been using just this toolchain! I have a 4k and 9k on my desk right now that I’ve been playing around with.
nothing works, most of Gowin’s IDEs don’t work and it’s very difficult to install them. Linux versions are broken or always need workarounds, they work on few versions of Linux and not for ARM.
Furthermore, the account access to their site sometimes works and sometimes doesn’t.
To complete, there are too many boards with the same name which are confusing, and each one has different manufacturers and they implement their own MCUs and each time you have to read their documentation which is constantly changing.
It’s getting CRAZY to program them without SERIOUS STABLE DOCUMENTATION.
Necro post, but 100%. only I think you are exaggerating when you say “most”, most all links don’t work. All the tools crash left right and centre on modern Linuxes. I think the issue is you are meant to be running windowsXP or Ubuntu 10.
The whole world of FPGA toolchains is like train crash, all vendors, top to bottom.