jameshanlon / netlist-paths

A library and command-line tool for querying a Verilog netlist.
https://jameshanlon.github.io/netlist-paths
Apache License 2.0
26 stars 3 forks source link

Consider supporting Verible or Surelog as alternative to Verilator #3

Open mithro opened 3 years ago

mithro commented 3 years ago

You might want to consider supporting Google's Verible (https://github.com/google/verible) or Alain Marcel's Surelog (https://github.com/alainmarcel/Surelog) to enable SystemVerilog support. Surelog can even be used as the frontend for Verilator (https://github.com/alainmarcel/uhdm-integration#uhdm-verilator).

FWIW - Both libraries are C++.

jameshanlon commented 3 years ago

Thanks @mithro. I've also been looking at Slang.

Verilator was a good choice initially because of its maturity and ability to produce a flattened version of the design's AST. It does however introduce non-source-level elements with some transformations it performs, and doesn't integrate as a library.

The next big development of netlist-paths would be to fully elaborate the design to a bit-level. Moving to one of the above libraries with an AST API would likley be useful in achieving that.