This is a Chisel project template powered by mill.
It provides a minimal setup to quickly get started with Chisel and mill-based builds, avoiding the verbosity and performance overhead of SBT.
chisel-framework/
├── build/ # Verilog output and other generated files
├── build.mill # Entry point for mill build
├── Makefile # Simplifies common mill commands
└── src/ # Source code and tests
├── main/scala/ # Chisel design sources
│ ├── Elaborate.scala
│ └── Hello.scala
└── test/scala/ # Unit tests
└── HelloSpec.scala
Follow the instructions at https://com-lihaoyi.github.io/mill.
You can install mill globally:
curl -L https://github.com/com-lihaoyi/mill/releases/download/0.11.6/0.11.6 > mill && chmod +x mill
sudo mv mill /usr/local/bin/Or use the local wrapper script ./mill if present.
To run all Chisel tests (recommended for test-driven development):
make testTo elaborate your Chisel design and generate Verilog files:
make verilogOutput will be placed in the build/ directory.
To reformat your Scala code using scalafmt:
make formatEnsure you have a .scalafmt.conf file in the root directory.
Install BSP support for editors:
make bspGenerate IntelliJ project files:
make ideaClean the generated build artifacts:
make clean- This template uses Chisel 7 and ChiselTest 6.
- If you encounter formatting issues, make sure your
scalafmtversion is compatible with Scala 2.13 and your.scalafmt.confis correctly configured. - The project structure avoids SBT and uses mill for faster incremental builds and simpler configuration.