Icicle

A minimalist build tool to manage and execute commands using OSS CAD Suite.

Usage

Add a icicle.yml manifest to your project. This should include a toolchain as well as any number of scripts you wish to execute later. The toolchain should correspond to an OSS CAD Suite release.

# icicle.yml
name: sample
version: 1.0.0
toolchain: 2022-07-12
scripts:
  sys: yosys -p 'synth_ice40 -top top -json build/alhambra.json' source/*.v
  constraint: cat constraint/*.pcf > build/all.pcf
  pnr: nextpnr-ice40 --hx8k --package tq144:4k --json build/alhambra.json  --pcf
    build/all.pcf  --asc build/alhambra.asc
  pack: icepack build/alhambra.asc build/alhambra.bin
  prog: iceprog build/alhambra.bin

Running the install command will download the corresponding OSS CAD Suite version declared in the manifest.

$ icicle install

Scripts are declared as simple bash scripts that will be executed within the OSS CAD Suite executable environment. Scripts can be executed using the run command.

$ icicle run [name]

GitHub

View Github