Mail Archives: geda-user/2022/12/19/10:39:35
Roland:
> On Mon, 19 Dec 2022, karl AT aspodata DOT se [via geda-user AT delorie DOT com] wrote:
> > wiki.geda-project.org/geda:gschem_ug:pins_nets_buses
> >
> > says otherwise:
> >
> > Nets are made up of straight net segments, and net connections are
> > formed either where two net segment ends meet, or where a net
> > segment end meets a net segment midpoint.
>
> Then the documentation is incorrect. :-/
Yes, how about:
Nets are made up of:
a, net segments (N lines in the sch file) joined at their endpoints
b, any net segment with a endpoint on a horizontal or vertical net
segment
c, any net segment with identical netname attribute
d, any net segment with an endpoint at the active end of a pin (of a
symbol) where the pin has a net name assigned to it by a net
attribute in the symbol
e, ?? what about pin:xxx when there is no corresponding pin
is something like that correct ?
When a third party trying to write software to extract nets, point b
leeds unnecessesary code and computations, which could easily be
avoided if gschem/lepton saved point b cases as split net segments.
That is why I consider b a bad feature, and I would like it to be
removed.
> > It just sounds like an undocumented, illogical and unnecessary feature.
> Unfortunately, it's a feature existing schematics may rely on.
Yes, I know.
> Imagine
> someone connecting some parts of a schematic under time pressure and just
> drawing a diagonal net across the page. If a connection happens to fall
> exactly on this net, changing gnetlist behavior would mean an incorrect
> netlist is generated for this schematic. (I'm not saying connecting
> things this way is good practice, just people may conceivably do it.)
Uhh? If you do a mistake you do a mistake.
> > Just as two N's be merged to one if they can be,
> > a single N could easily be split in two when a new
> > connection is made ?
> >
> > I suggest that nets are only made via the net endpoints.
>
> There is something to be said in favor of this, and I wouldn't be opposed
> to changing gschem behavior so it splits slanted nets when trying to
> connect to them.
Well, if gschem/lepton starts doing that when the user is drawing, old
files would still work. And saving files with that would still work on
older versions of the program. So there would be no compatibility
problem.
> I had the impression slanted nets are a rare exception,
> though. Do you use them on a regular basis?
Sometimes useful, tend to save space in some cases. See e.g.
http://aspodata.se/electronic/sd_esd_and_conn.sch.pdf
http://aspodata.se/electronic/smarc_iMX8MM_serial_5V.sch.pdf
(made from:
http://aspodata.se/git/openhw/share/gschem/_sub_page/sd_esd_and_conn.sch
http://aspodata.se/git/openhw/share/gschem/_design_parts/smarc_iMX8MM_serial_5V.sch)
Regardless, one should be able to write programs reading
any syntatically correct sch/sym file without great problems,
the file syntax and semantics should be well defined.
Regards,
/Karl Hammar
- Raw text -