LibrePCB / librepcb-rfcs

MOVED TO https://librepcb.discourse.group/
Apache License 2.0
3 stars 0 forks source link

Physical Design Language #10

Closed ouabache closed 5 years ago

ouabache commented 6 years ago

Most modern PCB's require a number of engineering notes in addition to the schematic in order to create a functional board. LibrePCB should develop a Physical Design Language so that that designer can create these notes in a machine readable form that can pass directly to the layout programs DRC Checks.

It should cover:

differential pairs

hi-current traces

hi-voltage traces

impedance controlled traces

component placement requirements

grid or power plane requirements

guard trace requirements

????????

Some of these can be handled with attributes. Assign a VOLTAGE attribute to each net and set a value. If it exceeds a threshold then the layout program can run a DRC check on the spacing to its neighboring traces.

Others will require that the engineer define a "leg" and set a rule. For example I will define a leg between the power pin of an IC and the power connection to it's decoupling Cap and then set a rule that the length of this leg must be less than .2". If the cap is not placed next to the IC then the DRC check will fail.

A leg can be given a current value that will fail if its trace is not wide enough to carry that much current.It will fail if you try to pass it through a single via without enough copper for the current.

What do we need to do?

Have a way to attach a name,value attribute to each net.

Have a way to assign a leg name to any segment of a net

Have a way to pass a list of rules to the layout DRC checks.

John Eaton

ubruhin commented 5 years ago

This issue was moved to https://librepcb.discourse.group/t/physical-design-language/35