printed circuit boards

life cycle of pcb design

  • schematics are the high level interface of what components exist, how they are connected other components. there is no specifications on the physical location of the components or the shapes of the traces between the components
  • PCBs are the actual implementation of the schematic. they define where on the board components sit & the way the traces are routed between them. PCBs are what actually get fabricated into the end product

how do you “compile” your pcb design and verify that it works/is correct?

  • at the ECAD/software level, you can use a design rule checker (DRC)
  • but ultimately to know your PCB is correct you need to fabricate it and test it
    • usually you’d use tools like oscilloscope, multi-meters, power supplies

why pcbs have multiple layers

  • just like how highway overpasses allow us to route roads on top of other roads, having multiple layers on a PCB allows you to route traces on top of each other

random

  • most of PCB design is done via a GUI. popular electronic computer aided design (ECAD) tool like kicad
  • how does version control on a PCB design work?
    • because PCB designs are stored as files on disk, you can literally just use git
  • however, these designs are internally represented/stored as some sort of file
    • each ECAD software has different ways of representing the design data internally. for example, a pcb design file designed in inxpedition cannot be opened in kicad. as a result, there is major vendor lock-in the EDA space
      • translation tools between these different between these file formats do not exist
  • language models are not (currently) very good at PCB design, though many people are working on this