Skip to content

nathsou/yodl

Repository files navigation

yodl

Yet anOther (hardware) Description Language

Parallel Game Of Life

Quick links

Installation

The JS build of Yodl can be installed from npm:

$ npm install --global yodl

To compile FIRRTL outputs to SystemVerilog, install firtool

Usage

$ yodl examples/Hello.yodl "write_firrtl Hello.fir"
$ firtool --format=fir --verilog Hello.fir -o Hello.sv

Development

Install Moonbit:

$ curl -fsSL https://cli.moonbitlang.com/install/unix.sh | bash -s '0.1.20250324+371b0cfef'

Checklist

  • FIRRTL export
  • Generic multi-port memories
  • Imports (TODO: unqualified imports)
  • Verilator + SDL graphics simulation example
  • Multi-dimensional vectors (uint<16>[4][8])
  • Optional module parameters (and register initial value)
  • Arbitrary port types
  • Type parameters
  • Source Maps
  • Test Benches
  • KiCad schematics export
  • Web tour/playground