Skip to content

ujamjar/hardcaml

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
js
 
 
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Hardcaml Has A New Home!

Hardcaml is now developed at Jane Street!

Various hardcaml libraries that lived under the ujamjar organisation have been updated, improved and released by Jane Street.

Deprecated version

Build Status

HardCaml is an OCaml library for designing hardware.

  • Express hardware designs in OCaml
  • Make generic designs using higher order functions, lists, maps, functors...
  • Simulate designs in OCaml
  • Convert to VHDL, Verilog, C
  • Write new modules to transform or analyse circuits, or provide new backends

Try it online!

Build

With opam

$ opam install hardcaml

The package (optionally) depends on camlp4 for the syntax extension and ctypes-foreign for the C based simulator. The js_of_ocaml library requires lwt and js_of_ocaml

To build locally use

$ ocaml pkg/pkg.ml build --with-camlp4 [true|false] --with-ctypes-foreigh [true|false] --with-lwt [true|false] --with-js_of_ocaml [true|false]

An IOcamlJS notebook kernel can also be built with

$ ocamlbuild kernel.hardcaml.js

Related tools

Other projects

About

[Deprecated see github.com/janestreet/hardcaml] Register Transfer Level Hardware Design in OCaml

Resources

License

Stars

Watchers

Forks

Packages

No packages published