If you want to get up and running with a SoC without a lot of headache I’d recommend LiteX github.com/enjoy-digital/lit…
You can then add peripherals on the bus, memory map CSRs, or custom CPU instructions or whatever you want in verilog, nMigen, Spinal, etc.
Interesting to see a nMigen version! If I read it correctly, it seems entirely combinational using 32 bits regs. How is Fmax? (my combinational version runs fine but fmax is below 25 MHz).
Question for my FPGA folks: what are the smallest pipelined RISC-V, in term of lines of code? and, is there any CPU written in migen (I mean no nmigen or amaranth)?
I'm using nMigen (hardware description language for FPGA) interfacing design clues to create bindings for a GPU acceleration library for radio telescopes. What a great time to be alive.
Python is probably not the natural initial choice to describe RTL, but using it to describe your logic (with Migen, nMigen or Amaranth) has the advantage
of providing you a very powerful pre-processor for your RTL a common language for almost all the tasks of your project.
Automatic conversion from verilog to CflexHDL: 6X faster simulation than with verilator!
Soruce 8bitworkshop.com/v3.10.0/?pl…
Parsing by the great yosys tool, so I also tested conversion from VHDL and nMigen
Working now on @BrunoLevy01's FemtoRV RISC-V and @matthewvenn's VGA clock
Thinking of using Python for an FPGA book. I started writing with Verilog but it’s a painful language, and I am reconsidering.🙂 Any thoughts on nMigen or MyHDL? Are there other frameworks based on Python? Thanks for any suggestions!
amaranth HDL (alias nmigen) board support for the QMTech Kintex board has arrived. My board is still on the way, so I could not test physically yet, but here it is, ir you want to give it a try:
github.com/amaranth-communit…
Anyhow, once again looking for a gig doing RTL (Verilog, VHDL, Amaranth/nMigen, Chisel/SpinalHDL) or embedded firmware (C, C , Rust) or Python.
Experienced with ARM Cortex-M (including Nordic nRF52, Kinetis, TI, Renesas, STM32, Atmel SAM)
5/
Opět jsem se po roce seznámil zlehka s Verilogem a video 7:1 serializer v #GoWin FPGA mi začíná generovat správný průběh dat. Zatím na každém datovém vodiči mám nastavený 1 bit, abych správně zkontroloval zarovnání framu. Ten začíná v polovině logické 1 hodinového pulzu.
Hi nMigen-users, nMigen has been renamed to amaranth HDL. Consequently I updated all my projects. I also created a new space on GitHub for the amaranth community to share cores with each other:
github.com/amaranth-communit…