Skip to content

nathsou/yodl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

217 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

yodl

Yet anOther (hardware) Description Language

Parallel Game Of Life

Quick links

Installation

npm

The JS build of Yodl can be installed from npm:

$ npm install --global yodl

wasm

A WASI Preview 1 build of yodl is included in this repository:

wasmtime --dir examples res/yodl-wasi.wasm examples/RISCV.yodl "write_firrtl"

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.8.2+3382e0600'

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
  • External modules
  • Source Maps
  • Test Benches
  • FIRRTL to RTLIL backend to bypass SystemVerilog generation
  • Language Server Protocol (LSP) support
  • KiCad schematics export
  • Web tour/playground

Releases

No releases published

Packages

 
 
 

Contributors