package hardcaml_verilator

  1. Overview
  2. Docs
Hardcaml Verilator Simulation Backend

Install

Dune Dependency

Authors

Maintainers

Sources

v0.17.0.tar.gz
sha256=76f944f35c445eeb3028ff9e73dcdf1778937078ad655c1e949278d23d888251

Description

Very fast verilator-based simulations of Hardcaml circuits.

This library transparently compiles a verilator-based shared library, and links it back to the running executable to be used as a Cyclesim simulation.

Published: 26 May 2024

README

"Hardcaml Verilator"

Hardcaml_verilator converts Hardcaml designs to verilog and compiles them with verilator. This produces a very high performance, cycle accurate, simulation model of the design.

The library transparently compiles the verilator simulation model to a shared library and loads it into the running program. It exposes a simulation API compatible with [Hardcaml.Cyclesim].

Compiling the verilator simulation model can take significant time - therefore a simple caching scheme is implemented so that the shared library can be reused on the second and subsequent runs if the design does not change.

Dependencies (9)

  1. dune >= "3.11.0"
  2. ctypes-foreign
  3. ctypes >= "0.18.0"
  4. ppx_jane >= "v0.17" & < "v0.18"
  5. ppx_hardcaml >= "v0.17" & < "v0.18"
  6. hardcaml >= "v0.17" & < "v0.18"
  7. core_unix >= "v0.17" & < "v0.18"
  8. core >= "v0.17" & < "v0.18"
  9. ocaml >= "5.1.0"

Dev Dependencies

None

Used by

None

Conflicts

None

OCaml

Innovation. Community. Security.