As people may know, I’m a big supporter of the Migen and associated LiteX ecosystem . As of today if you are starting a new project today, I would instead recommend that you chose to use nMigen instead.
nMigen, A refreshed Python toolbox for building complex digital hardware is a project that whitequark has been working on for the last couple of years and I’m really liking the new improve syntax and the fact that it interfaces directly to Yosys .
There seems a lot of interesting things happening in the nMigen ecosystem ;