On 14.07.2014 22:12, Jean-Paul Louis wrote:
To me, the netlist is one representation of the design.
The schematic is an electrical engineering view of the netlist,
The BOARD is the physical instance of the netlist.
Yep, but it needs not hold the netlist as a separate entity (which would
have to be updated every time something gets changed on the board).
> So the BOARD needs to know about the net list for connectivity of the
> elements, and other constraints like impedances, crosstalk, EMI, etc..
Both schematic and BOARD objects constitute a netlist, but for
forward/backannotation we need much less information than what is stored
in them. That IMHO justifies the need for a generic NETLIST class,
understandable by both eeschema and pcbnew.
Cheers,
Tom
My $0.02,
Jean-Paul
AC9GH
On Jul 14, 2014, at 3:49 PM, Tomasz Wlostowski <[email protected]>
wrote:
On 14.07.2014 19:59, Dick Hollenbeck wrote:
Specifically in this case, the question should have been asked:
"does the BOARD need to know about the NETLIST, or does the NETLIST need to
know about the
BOARD?'
Dick,
IMHO neither needs to know about the existence of the other.
NETLIST can be extracted from the board by a separate entity (say,
BOARD_NETLISTER). Same for the schematic netlist.
BOARD can be updated by looking at the differences between NETLISTs made by these
two entities. Same for the schematic - the differences just trigger different
actions. Change of a footprint in SCH->PCB direction would trigger a reload of
the footprint and replacing corresponding primitives in the BOARD. In reverse
direction, it would merely change the FPID attribute of the schematic part.
IMHO it's just a matter of refactoring the BOARD::ReloadNetlist into smaller
chunks (each of them responding for a particular change, with the knowledge of
how to update the underlying model) and writing a much simpler (just doing
pin/part swaps + footprint backannotation) class for eeschema.
No files involved, just as you said.
Cheers,
Tom
_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kicad-developers
More help : https://help.launchpad.net/ListHelp
_______________________________________________
Mailing list: https://launchpad.net/~kicad-developers
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kicad-developers
More help : https://help.launchpad.net/ListHelp