PCB simulation before fab
Prev. Bloomberg · Gyfted. Systems and simulation infrastructure — the engine that runs your firmware against the circuit.
Most teams SPICE fragments of the design or emulate an MCU in isolation. Neither is “simulate the PCB.” Board-level simulation means the topology in your netlist — CS lines, shared buses, part identity — under the firmware you intend to ship.
What has to be true for pre-fab simulation to matter
Connectivity from the design of record, MPNs from the BOM, and peripherals that can NACK or stretch when silicon would. A pretty 3D board view is not simulation. Neither is a DRC clean sheet.
Failures worth finding before copper
Wrong alternate functions, two devices on one address, SPI CS on the wrong GPIO, init order that races a rail, bus timing the part will not tolerate. Those are respin-class. RF and sensor physics still need articles.
A workflow at schematic freeze
Export netlist + BOM, generate a platform, load firmware, run the bring-up checks you already planned for the lab. Keep the suite in CI so the next ECO cannot reintroduce a fixed bug.
# after HardLabs generate
(monitor) include @compiled/BMP280.cs
(monitor) mach create
(monitor) machine LoadPlatformDescription @board.repl
(monitor) sysbus LoadELF @bringup.elfHardLabs
What HardLabs does — join the design-partner pilot
We build a digital twin from your netlist, schematic, and BOM, run your real firmware against it, and fail CI when pinmux, buses, or timing contracts break — weeks before bring-up on hardware.
- A digital twin of your hardware, built from your netlist, schematic, and BOM.
- A virtual lab: scopes, logic analyzers, and firmware debuggers in simulation.
- Auto-flagging of power-sequence errors, output contention, and race conditions.
Related
- Simulate firmware without hardware
Simulate firmware without a board: where QEMU’s idealized peripherals fall short, and how board-level models catch pinmux and bus bugs before fab.
- Avoid integration respins
Avoid PCB respins caused by pinmux, bus, and timing mistakes — catch HW/FW integration bugs in simulation weeks before the first articles.
- Bring-up before the prototype
Simulate board bring-up before the first prototype: power-on assumptions, bus enumeration, and firmware init against your netlist.
- The I²C Clock-Stretch Bug We Caught Four Weeks Before Fab
