v0.3.0-rc.3
Pre-release
Pre-release
Immutable
release. Only release title and notes can be modified.
Added
- Behavioral-RTL on-ramp (ADR 0021).
jacquard simandjacquard cosim
now accept behavioral Verilog / SystemVerilog directly — synthesis is
transparent and cached, run through an embedded YoWASP Yosys (with the
yosys-slangSystemVerilog frontend) via Rust +wasmtime. Built into
release binaries via thesynthfeature;--yosys-wasm <PATH>overrides
the bundled wasm. Seedocs/accepted-rtl.md. - Cell-model IR descriptors (ADR 0019). Standard-cell libraries are now
consumed as generated JSON descriptors — pin directions, combinational AIG,
sequential roles, and timing — produced from Liberty by the
liberty-to-cellirconverter and embedded at build time. Adds SKY130
(via a.lib.jsonreader) and IHP SG13G2 as a new built-in PDK with zero
per-PDK Rust; proprietary libraries simulate via--cell-descriptor
(no Jacquard build). The runtime binary is now self-contained for standard
cells — no vendored-PDK read at simulation time — and thePdkVariant
enum, per-PDK stdcell classifiers, andbuild.rspin-table generation are
retired. Seedocs/adding-a-pdk.md. - Plural QSPI memory + writable PSRAM (ADR 0013). The SPI-flash peripheral
went plural:qspi_memory: Vec<QspiMemoryConfig>with N independent
instances (the legacyflashkey folds into instance 0), N-instance GPU
kernels on Metal + CUDA + HIP with independent backing stores, and an
opt-in writable QSPI-PSRAM (RAM) mode (APS6404L-class: enter-QPI /
quad-write / quad-read). Enables post-PnR cosim of chips whose main RAM is
external QSPI PSRAM. Unset options ⇒ byte-identical to the read-only flash. - GPU frame capture (Metal).
JACQUARD_GPU_CAPTURE=<path>(with
METAL_CAPTURE_ENABLED=1) brackets anMTLCaptureManagerscope around a
bounded window of cosim batches and writes an Xcode.gputracefor
per-dispatch GPU analysis.JACQUARD_GPU_CAPTURE_SKIP/_BATCHESselect
the window. Seedocs/gpu-capture.md. (#174) - Cosim perf report.
jacquard cosimreports a per-edge CPU/GPU timing
breakdown including ground-truth GPU-execution time from device
timestamps (MetalGPUStartTime/GPUEndTime) — free of the distortion a
full GPU trace imposes on thousands of tiny dispatches per batch.
--cosim-perf-json <PATH>emits it as JSON for CI. See
docs/cosim-perf-report.md. (#175) - RTL-source provenance.
sverilogparsenow captures(* src *)
attributes and carries them through the netlist and AIG;jacquard xsources
reports the RTL source location of each design X-source. - TNS / THS timing metrics in
--timing-summaryand--timing-report.
Alongside the existing worst-single-slack WNS/WHS, the report now carries
Total Negative Slack and Total Hold Slack — the sum of every negative
setup / hold slack across the run (stats.total_setup_slack_ps/
stats.total_hold_slack_ps). Additive JSON-schema change, bumped to
1.2.0(older reports still parse via#[serde(default)]). Salvaged from
the timing logic in #17. (#9) JACQUARD_VENDOR_DIRenvironment override for the vendored-PDK root.
Changed
jacquard buildfolded intosim/cosim. The standalonebuild
subcommand is removed; behavioral RTL is synthesized transparently by
sim/cosim(see the on-ramp entry above).