Show HN: Manta – A tool for FPGA Debugging and Rapid Prototyping (fischermoseley.github.io)
This was originally my Master's Thesis at MIT, where I developed it for our course on FPGA design. We needed an alternative to vendor debugging tools, which only supported x86 machines running Windows or Linux. We were able to patch in macOS support with VMs, but as more students came bringing ARM-based devices, we needed a new tool.
So I developed this. It's called Manta, and I've just released v1.0.0. It's written in Python using Amaranth HDL, which allows it to run on nearly any machine, and export vendor-agnostic Verilog-2001. It lets you read and write to arbitrary registers and memory on the FPGA, and provides an integrated logic analyzer. It's modular, so you can use any number of these functionalities in any combination, as long as you've got a UART or Ethernet connection to the FPGA.
Next up on the docket is adding support for more advanced interfaces like Wishbone, AXI, AHB, and Avalon. And maybe even adding a Web UI for debugging with a logic analyzer in the browser. Or peeking and poking at individual registers. Or issuing arbitrary AHB3 transactions.
I'd be super curious to hear your thoughts on the tool! And if you want to kick the tires, be my guest :)
5 comments
[ 0.30 ms ] story [ 21.8 ms ] threadHow does Manta compare to the free and open source https://github.com/enjoy-digital/litescope?
That said, I spun Manta out into a separate project for a few reasons: - LiteX is written in nMigen, which has now spun off into Amaranth, and I wanted to use a language that's undergoing more active development. - I wanted to provide better support for non-SoC workflows. LiteScope is awesome when you're already using LiteX for your design, but it's a pretty steep barrier to entry if you're just trying to debug a class project real quick. - I wanted to provide a _lot_ of documentation! The original audience for the docs was undergraduate students that are new to the field and don't have a lot of time, so I wanted getting started to be as easy as possible.
I know the Amaranth project is working on it's own SoC tool, and I'll be curious to see how Manta evolves as the effort behind that ramps up.
P.S. I've just recalled recently news from one new cheap FPGA (from Europe).
"Cologne Chip releases an open-source integrated logic analyser (ILA) for GateMate FPGA chips" (23.01.2024)
https://www.cnx-software.com/2024/01/23/cologne-chip-open-so...
https://github.com/colognechip/gatemate_ila