cli · simrun your testbench

dewfpga sim

What does its help text say?

dewfpga sim | bit | flash | clean [top]
                                 work on the .sv files in the current folder. top = the module nothing else
                                 instantiates (or name it: a module or a file). pins = <top>.xdc or the only .xdc
                                 In a Vivado project (a folder with one .xpr, or anywhere under its .srcs): the
                                 project's enabled files, its top module, its .xdc; outputs land next to the .xpr

From dewfpga --help, as bin/dewfpga prints it.

What does the README say?

Run reads the chosen file and the modules it uses from the other .sv/.v files of its folder (with the package files they name), never a file the design does not use. Run on a submodule's file builds the one top that uses it. Inside a Vivado project, Run builds the project: its files, its top, its .xdc. Literal include/data paths must be relative, without spaces or ... dewfpga sim runs a separate testbench. Short setup guide.

dewfpga sim|bit|flash|clean [top]   build a flat folder or a Vivado project

For coding agents, check, sim, bit and flash accept --json, for example dewfpga sim --json --timeout=180. Standard output contains one dewfpga/result@1 object; the process exit matches exit_code. Read diagnostics for source locations, error codes and fix links, and log.tail when no structured diagnostic is available. artifacts distinguishes new, cached and stale outputs; an old .bit is not proof that the current build succeeded. Full protocol and limits: agent interface.

test/fuzz/run.sh <first seed> <count> is separate from the suite: gen.py writes a random design per seed in the SystemVerilog DDCA teaches (every feature a switch, --list names them), dewfpga sim and dewfpga bit run on it, the netlist is simulated with the same testbench, and the two traces are compared bit by bit. Its last line counts the outcomes (ok, silent-wrong, refused-coded, refused-uncoded, crash, sim-refused).

From the README.

What does the guide say?

dewfpga new blink    # prints: blink/ ready:  cd blink && dewfpga flash    (VS Code: ⌘⇧B)
cd blink
dewfpga sim          # simulation
dewfpga bit          # .sv -> .bit
dewfpga flash        # .bit -> the board; runs bit first when the .bit is missing or older than the .sv

What each one prints when it works. dewfpga sim:

dewfpga sim|bit|flash|clean [top]   build a flat folder or a Vivado project

From section 2, How do you install it in one line?.

How does a coding agent call it?

dewfpga check --json, dewfpga sim [top] --json, dewfpga bit [top] --json and dewfpga flash [top] --json print exactly one JSON object on stdout. Text commands retain their existing output. flash programs attached hardware; request it only when the user has authorized programming the board.

Tool Arguments Behavior
sim absolute project, optional testbench, timeout_s run the testbench; default 120 s, max 600 s

From the agent interface: the machine-readable CLI and the MCP server.

Which errors can it stop with?

32 codes in the error catalog.

Which patch notes name it?

What does dewfpga clean do?

The help text above lists it with dewfpga sim.

What does the guide say?

From section 2, How do you install it in one line?.


previous: dewfpga run
next: dewfpga bit
Every command: dewfpga install · dewfpga check · dewfpga run · dewfpga sim · dewfpga bit · dewfpga flash · dewfpga clean · dewfpga tops · dewfpga new · dewfpga uninstall · dewfpga vscode · dewfpga … --json · dewfpga mcp