Scope
This page explains the main tools in the wafer.space digital flow. Version pins belong on Version Management. Symptom-and-remedy procedures belong under Troubleshooting.
Tool roles
- LibreLane: drives the digital flow and its ordered steps. Project Template 1.4.0 moved to LibreLane 3.0 on 2026-03-26. Evidence (Discord)
- Yosys: synthesizes RTL and performs synthesis checks. Check details appear in
yosys-synthesis.lognearExecuting CHECK pass, and may appear inreports/pre_synth_chk.rpt. Evidence (Discord) - OpenROAD: performs physical-design work such as clock-tree synthesis, routing, STA, GUI inspection, and ECO operations. The recorded hold-failure procedure used OpenROAD post-PNR reports and LibreLane ECO insertion. Evidence (Discord)
- KLayout: runs the principal rule deck, displays marker databases, and can run a reduced cell through the same deck. An exact single-cell command was recorded on 2025-11-27. Evidence (Discord)
- Magic and Netgen: Magic imports or streams layout and extracts LVS data; Netgen reports the comparison. In one investigation,
lvs.netgen.rptcontained more useful detail than the final summary. Evidence (Discord) open_pdksand Ciel: Project Template 1.5.0 used Ciel to manage theopen_pdksbuild and exposed SCL, pad, and SRAM choices. Evidence (Discord)- Nix: pins the flow environment. A local-versus-CI investigation compared
flake.nixandflake.lock, tested the vanilla template, and usednix flake updateonly when changing the pins intentionally. Evidence (Discord)
Current dated baseline
- Confirmed fact — 2026-05-27: wafer.space PDK changes had been upstreamed to
open_pdks; Ciel adoption and experimental community IP support were being added to the project template. Evidence (Discord) - Confirmed fact — 2026-06-03: Template 1.5.0 added a parallel DRC runner. Its rule was
threads * workers = hardware threads; users could reduce workers when memory use was too high. Evidence (Discord) - Decision — inferred record rule: Save the template tag, LibreLane commit, PDK commit,
flake.lock, tool versions, precheck image or tag, and GDS hash as one build record. This rule is inferred from the PDK transition and a local-versus-CI mismatch; it is not a quoted wafer.space policy. PDK evidence (Discord) Nix evidence (Discord)
Boundaries
- Obsolete guidance: The old wafer.space PDK fork was required by the October 2025 precheck/template path. It is historical for new projects after the 2026
open_pdkstransition, but may still be needed to reproduce an old run. Old fork evidence (Discord) Replacement evidence (Discord) - Open question: Exact current tool and image versions are not established by the archive. Use the pins in the chosen current template, then record them with the result. This caution follows from a case where local KLayout XOR failed while GitHub CI passed. Evidence (Discord)
Related pages
Sources
1486728700518203616— 2026-03-26T14:09:04.287+00:00 — Leo Moser (mole99) (@mole99) — LibreLane 3.0 transition. Evidence (Discord)1440439686526144552— 2025-11-18T20:33:03.343+00:00 — aedancullen — Yosys log and report locations. Evidence (Discord)1445872535160885409— 2025-12-03T20:21:15.395+00:00 — Lofty (@ravenslofty) — OpenROAD STA reports and ECO. Evidence (Discord)1443614548182568971— 2025-11-27T14:48:49.348+00:00 — tnt (@246tnt) — reduced KLayout cell run. Evidence (Discord)1446665494374646050— 2025-12-06T00:52:11.604+00:00 — bailey (@bailey8889) — detailed Netgen report. Evidence (Discord)1509176448223674489— 2026-05-27T12:48:24.399+00:00 — Leo Moser (mole99) (@mole99) — upstreamopen_pdkstransition. Evidence (Discord)1511722026648338514— 2026-06-03T13:23:37.59+00:00 — Leo Moser (mole99) (@mole99) — Template 1.5.0, Ciel, libraries, and parallel DRC. Evidence (Discord)1512740258649870336— 2026-06-06T08:49:43.017+00:00 — Leo Moser (mole99) (@mole99);1512912751641628845— 2026-06-06T20:15:08.551+00:00 — RebelMike (@rebelmike) — Nix lock and local-versus-CI diagnosis. Evidence 1 (Discord) Evidence 2 (Discord)1433880759130783755— 2025-10-31T18:10:13.193+00:00 — Leo Moser (mole99) (@mole99) — old wafer.space PDK fork requirement. Evidence (Discord)