← Back to team overview

kicad-developers team mailing list archive

Re: About scripts and central program



On Fri, 06 Aug 2010, Lorenzo Marcantonio wrote:

> - Realtime netlist handling would be really tricky... especially if done
>   in realtime. Just think about what would be done when renaming a label
>   or breaking a wire to join it somewhere else. Add complex hierarchies
>   to the picture, then... A useful intermediate functionality would be
>   a 'netlist need rebuild' flag and on-the-fly rebuild when asked for
>   pcbnew (it would ask for an updated netlist when picking a signal for
>   ratnesting, I think that's the important point in the flow). At least
>   it would delay the recomputation for when it's actually needed.

I derived BOARD_ITEM from a DIRTY class with hierarchy of dirtiness
and categories of 'dirtiness'.  Making a child dirty dirties the
also the parent.  DIRTY has a Cleanup virtual that allows a BOARD_ITEM
to clean itself and its children.  Individual subtrees can be cleaned,
and cleaning the entire board consists of calling BOARD::Cleanup().

This does a little more than just deferring calculations, it only
performs the calculations on things that have changed.

> I'd even put netclass assignment to eeschema (I find it more
> useful in that way: now you have to label the net, load it in pcbnew and
> assign the netclass).

I wish for this.  I have not done any work in that regard, however,
a capturing busses, differential pairs, busses of differential pairs,
stubs and precise logic standards (e.g. SSTL, HSTL, LVDS, etc.) would
be usefull.  I have included this in PCBNEW for the purpose of
calculating 2.5D eletromagnetic approximations; however, I agree
that a mechanism for identifying these from EESCHEMA is the way to
go.  It should not be too difficult to extend the bus concept to
include differential pairs and to have busses extend to PCBNEW with
more meaning that simple schematic organization.


Brian F. G. Bidulock    ¦ The reasonable man adapts himself to the ¦
bidulock@xxxxxxxxxxx    ¦ world; the unreasonable one persists in  ¦
http://www.openss7.org/ ¦ trying  to adapt the  world  to himself. ¦
                        ¦ Therefore  all  progress  depends on the ¦
                        ¦ unreasonable man. -- George Bernard Shaw ¦