Every command below was run on macOS and Ubuntu; WSL is a Linux environment inside Windows and should behave like Ubuntu, but it has not been tested. Run the tool and make commands from the example project folder, where the Makefile lives.
Command | What it does | Caution |
|---|---|---|
| Shows the folder you are in. | If the answer surprises you, move back before running anything. |
| Lists the files in the folder. | Dotfiles stay hidden unless asked for. |
| Moves to another folder. |
|
| Creates a folder and any missing parents. | Without |
| Shows a whole file. | For long files the start scrolls away; read in parts. |
| Searches files for a text pattern. | Quote the pattern so the shell does not expand it. |
| Lists files by name under a folder. | Point it at one folder, not the whole disk. |
Command | What it does | Caution |
|---|---|---|
| Starts version tracking in a folder. | Run once per project; a second one in a subfolder nests repos. |
| Shows changed and staged files. | Read it before every commit. |
| Stages files for the next commit. | Stage the files you changed, not everything. |
| Saves staged work as one snapshot. | Say what changed and why. |
| Shows unstaged changes line by line. | Diff before you add, status after. |
| Lists past commits. | Long histories scroll; read the top first. |
| Undoes changes to a file. | Restore discards work for good; commit first if unsure. |
Command | What it does | Caution |
|---|---|---|
| Compiles the RTL and testbench into a simulation file. | A file without a timescale draws a |
| Runs the compiled simulation and shows the testbench result. | When the testbench hits |
| Lints the RTL without running it. | A clean lint does not mean the design works; simulation still has to run. |
| Builds a simulation binary with timing and assertion checking, used for the assertion testbench. | Icarus cannot run concurrent assertions, so this step uses Verilator. |
| Reads the RTL, builds the hierarchy, optimizes, checks and reports. The script runs | Plain |
Command | What it does | Caution |
|---|---|---|
| Runs lint, then sim, then synth. | Stops at the first failing step. |
| Compiles with | A failing testbench fails the target; read the log. |
| Lints the RTL with Verilator. | Fix lint warnings before simulating. |
| Runs the Yosys check script into | Read the log even when it passes; warnings point at real hardware. |
| Removes the build folder. | Run it when stale outputs confuse a rerun. |
| Prints each tool version; exits 1 when a tool is missing. | Run it first on a new machine, before |