Live data from Hacker News

FPGA dev board that's cheap, simple and supported by OSS toolchain

github.com

11–20 of 77 posts

Re: FPGA dev board that's cheap, simple and supported by OSS toolchain

#11

How does this compare to alternatives for learning FPGA? What's the significance of the duino suffix? When would you choose FPGA over something like an STM32? From what an internet search leads to, they can be faster / do more things in parallel for the price. And you can add capabilities (More timers? More op amps?) with firmware updates. Is this at the core of when you'd choose one? I've no experience with FPGA, bu…

As their name implies, FPGAs are field programmable[a] gate arrays[b].

[a]: They can be reconfigured (like flash program code in your PIC) instead of being write-once (like ye old PALs and GALs)

[b]: Essentially a configurable array of transistors (technically the transistor interconnects)

On a big scale, an STM (or whatever SoC you choose) is designed for running code. You tell it what to do. FPGAs, OTOH, are for when you want to tell the individual transistors how to connect to each other. When you just need to make an IOT widget, use a SoC. If you need to prototype an ASIC, use an FPGA. FPGAs allow more real time parallel applications by their nature of not being processors.

Then there’s the whole issue of FPGA vendors being terrible about interoperability. Want to use a Lattice part? You need Lattice’s toolchain. Want to use a Cyclone part? You need Intel’s “Quartus” toolchain. And those toolchains are multi-gigabyte monsters. Contrast that with a PIC where you can use pretty much any retargetable compiler and any USB-COM tool.

Re: FPGA dev board that's cheap, simple and supported by OSS toolchain

#12

How does this compare to alternatives for learning FPGA? What's the significance of the duino suffix? When would you choose FPGA over something like an STM32? From what an internet search leads to, they can be faster / do more things in parallel for the price. And you can add capabilities (More timers? More op amps?) with firmware updates. Is this at the core of when you'd choose one? I've no experience with FPGA, bu…

-duino typically means that it's physically drop in compatible with Arduino devices, so you can (physically) connect it to anything you'd connect to an Arduino without needing to make any (physical) modifications.

Of course, you still have to make the FGPA do something. An advantage of an FPGA over an STM32 would be if you're willing to invest some time in hardware description languages (HDLs) like VHDL or Verilog to design your own system, or want to drop in novel cores (like RISC-V) that aren't physically available yet or are still in a state of flux. RISC-V isn't fully specified yet so a "soft" core version on an FPGA offers you the ability to upgrade your device without needing to actually purchase a new one, and remove and replace the old one.

In theory, an Arduino compatible FPGA-based device could be used to develop applications totally sans software (that is, all the logic is encoded in the HDL) as well, which can be advantageous in prototyping, and maybe in performance depending on the FPGA in question.

Re: FPGA dev board that's cheap, simple and supported by OSS toolchain

#13
post #9

I had fun playing with the Lattice ICE40 Ultra Plus Breakout board. I wouldn't call it expensive (~$60) and it's pretty simple. The toolchain by Lattice however is not the best

nMigen supports the Lattice ICE40. However, instead of writing you Verilog/VHDL, you write Python that generates the Verilog.

Re: FPGA dev board that's cheap, simple and supported by OSS toolchain

#14
post #9

I had fun playing with the Lattice ICE40 Ultra Plus Breakout board. I wouldn't call it expensive (~$60) and it's pretty simple. The toolchain by Lattice however is not the best

nMigen supports the Lattice ICE40. However, instead of writing you Verilog/VHDL, you write Python that generates the Verilog.

nMigen still requires toolchains, perhaps you mean that iCE40 is just supported by Yosys+nextpnr?

Re: FPGA dev board that's cheap, simple and supported by OSS toolchain

#15
post #14

Earlier quoted context omitted.

nMigen supports the Lattice ICE40. However, instead of writing you Verilog/VHDL, you write Python that generates the Verilog.

nMigen still requires toolchains, perhaps you mean that iCE40 is just supported by Yosys+nextpnr?

I’m assuming one would use nMigen with Yosys instead of Lattice’s bloated toolchain. That wasn’t clear.

Re: FPGA dev board that's cheap, simple and supported by OSS toolchain

#17
post #10

How does this compare to alternatives for learning FPGA? What's the significance of the duino suffix? When would you choose FPGA over something like an STM32? From what an internet search leads to, they can be faster / do more things in parallel for the price. And you can add capabilities (More timers? More op amps?) with firmware updates. Is this at the core of when you'd choose one? I've no experience with FPGA, bu…

> When would you choose FPGA over something like an STM32? The answer is "almost never". Qualifications below. Learn the Cortex-M4 ecosystem first . You can do a remarkable amount of stuff by abusing microcontroller systems in weird ways. The tools for dealing with microcontrollers are MUCH better than the FPGA ecosystem tools (which suck--and that's on a good day). If you need an FPGA, generally you know it. The fir…

>Use the manufacturer tools (which, in this instance, are free) as using an "open-source toolchain" is NOT for beginners.

As someone who learned the ropes with the open toolchain, I have to strongly disagree.

It's perfectly feasible, and from what I've seen (videos and such), the closed toolchains are way messier and do not provide much in terms of tools unless you pay for time-limited licenses. No thanks.

Re: FPGA dev board that's cheap, simple and supported by OSS toolchain

#18
post #9

I had fun playing with the Lattice ICE40 Ultra Plus Breakout board. I wouldn't call it expensive (~$60) and it's pretty simple. The toolchain by Lattice however is not the best

iCE40 and/or ecp5, with yosys+nextpnr, is absolutely the way to go.

Re: FPGA dev board that's cheap, simple and supported by OSS toolchain

#19
I'm the author of the blog . Not trying to promote myself but since you posted, the v3 of the board is available on the tinyvision.ai and tindie stores. I discontinued v2 as it was a terrible design that I couldn't stand behind.

There are many reasons to learn about fpga's. Yes micros have their place as well and are very capable and cheap like the Nxp RT series.

Re: FPGA dev board that's cheap, simple and supported by OSS toolchain

#20
post #17
post #10

Earlier quoted context omitted.

> When would you choose FPGA over something like an STM32? The answer is "almost never". Qualifications below. Learn the Cortex-M4 ecosystem first . You can do a remarkable amount of stuff by abusing microcontroller systems in weird ways. The tools for dealing with microcontrollers are MUCH better than the FPGA ecosystem tools (which suck--and that's on a good day). If you need an FPGA, generally you know it. The fir…

>Use the manufacturer tools (which, in this instance, are free) as using an "open-source toolchain" is NOT for beginners. As someone who learned the ropes with the open toolchain, I have to strongly disagree. It's perfectly feasible, and from what I've seen (videos and such), the closed toolchains are way messier and do not provide much in terms of tools unless you pay for time-limited licenses. No thanks.

I disagree, but please don't downvote stuff like this--respond with a thought out comment, thanks. I upvoted you.

Perhaps Xilinx-land is different, but I have seen an intern go from blank Windows machine to "blink an LED" on an Altera board in about an hour or so with no Verlog/VHDL.

I have never seen this with the open-source toolchains.

Your experience differs. YMMV. Disclaimers. etc.

Post reply on HN