This is a VERY simple 32-bit MIPS CPU with 8 basic instructions (add, sub, and, or, lw, sw, beq and j), implemented in Clash, a language based on Haskell for hardware design.
$ stack buildThen you can read the document generated by Haddock:
$ stack haddock --open lambda-machineThe easiest way to generate HDL model from Clash is load a single file in clashi. A composed file is prepared at ./test/lambda-machine.hs. Run
$ clashiand then
Clash.Prelude> :l lambda-machine.hs
*Machine> :verilog
*Machine> :systemverilog
*Machine> :vhdlAfter loading source file in clashi, you can also try functions defined in Machine.Debug. And an initial system state is defined in Machine module.