News for hackers. Stuff that matters.
Re:Awesome Lattice FPGA Boards by analog31 on Thursday September 02, 2021 @10:17PM (#28399735)
What would folks recommend for a beginner (electronics and coding experience but new to fpga)? Prefer open source toolchain if possible. Not too expensive. Starter tutorials would be nice.
Re:Awesome Lattice FPGA Boards by krasin on Thursday September 02, 2021 @10:49PM (#28399904)
TinyFPGA BX ([1]) and nmigen/yosys as the fully open source toolchain for generating logic with Python and formally verifying it ([2], [3]). There is a good nMigen tutorial by Robert Baruch ([4]. [5]).

Alternatively, if you really want to try Verilog first (not a bad idea), I enjoyed reading a book "Designing Video Game Hardware in Verilog" ([6]).

1. https://tinyfpga.com/

2. https://m-labs.hk/gateware/nmigen/

3. http://www.clifford.at/yosys/

4. https://github.com/RobertBaruch/nmigen-tutorial

5. https://www.youtube.com/watch?v=85ZCTuekjGA&list=PLEeZWGE3Pw...

6. https://www.amazon.com/gp/product/1728619440/ref=ppx_yo_dt_b...

Re:Awesome Lattice FPGA Boards by edwinbalani on Friday September 03, 2021 @05:14AM (#28402003)
Worth knowing that are two "nmigen"s nowadays - the one originated in M-Labs and one under a project also called nmigen:

https://github.com/nmigen/nmigen

It's a fork, made for reasons, but more actively developed. whitequark (long time author/contributor) works on this fork, and no longer the M-Labs version.

Re:Awesome Lattice FPGA Boards by krasin on Friday September 03, 2021 @11:44AM (#28405690)
Oh! I was not aware of that development. Yes, please, use the github version.
Re:Awesome Lattice FPGA Boards by bb88 on Friday September 03, 2021 @06:26PM (#28410104)
Robert Baruch has a good tutorial where he writes a 6502 nMigen here:

https://github.com/RobertBaruch/n6800

Re:Awesome Lattice FPGA Boards by 555dreams on Friday September 03, 2021 @07:38AM (#28402850)
To iterate on what other people have been saying, nMigen is great! But I probably wouldn't learn it as my first intro to HDLs because in my opinion it's best thought of as a macro-generator for Verilog.

I'd first go through the HDLbits online tutorials for Verilog (https://hdlbits.01xz.net/wiki/Problem_sets). They're a nice interactive intro to Verilog (and HDLs in general) and can be simulated directly in your browser without having to download any software. Even if you only plan to write nMigen, learning Verilog will be helpful when you inevitably need to inspect the nMigen generated Verilog.

Re:Awesome Lattice FPGA Boards by stefanpie on Friday September 03, 2021 @08:39AM (#28403336)
I would say if you have the money for it, the Icebreaker FPGA dev board is really nice and integrates with the open source tools well. When prototyping I either use Verilog + Iverilog for simulation + yosys and icestrom tools for building, or more recently, I've been messing around with the active nmigen fork for python and doing design and simulation all in there which also links to the other tools for build as well. Honestly what software you like just depends on what you find best.
Re:Awesome Lattice FPGA Boards by bb88 on Friday September 03, 2021 @06:02PM (#28409909)
I recommend NMigen instead of verilog.

There's some good resources to look if you're trying to get into nmigen.

Here's a 6502 written in Nmigen.

https://github.com/mmagm/m6502

Re:Awesome Lattice FPGA Boards by sneak on Friday September 03, 2021 @07:50AM (#28402944)
AFAIK the Lattice stuff is the only option if you want a full open source toolchain.
Re:Awesome Lattice FPGA Boards by krasin on Friday September 03, 2021 @11:48AM (#28405743)
Two options, actually: Lattice and QuickLogic
Re:Awesome Lattice FPGA Boards by tmitchel2 on Friday September 03, 2021 @03:43AM (#28401462)
I went for a ULX3S to try and learn spinalHDL. I find it much easier to understand than vanilla verilog, however it still is a steep learning curve...