Introduction
Why PCB Design?
A Printed Circuit Board (PCB) is the physical substrate that connects electronic components. Designing one correctly requires understanding electrical engineering at every layer: how copper carries current, how signals propagate, how parasitic inductance and capacitance affect high-speed signals, and how to prevent noise from corrupting your circuits.
This course implements the key PCB engineering formulas in JavaScript. You will compute real numbers used by professional PCB designers and EDA tools every day.
You will implement:
- Trace Design — Resistance, current capacity (IPC-2221), and propagation delay
- Impedance Control — Microstrip, stripline, and differential pair characteristic impedance — the math behind 50Ω and 100Ω traces used in USB, PCIe, and Ethernet
- Via Design — Via resistance and inductance, and why vias become problematic at GHz frequencies
- Power Integrity — Self-resonant frequency, decoupling capacitor impedance, target impedance, and parallel capacitor strategies
- Signal Integrity — Rise time, bandwidth, critical trace length, skin effect, and design rule checking
This is the engineering behind tools like tscircuit — where PCB layouts are generated from TypeScript and React components.