delorie.com/archives/browse.cgi   search  
Mail Archives: geda-help/2020/12/08/03:19:18

X-Authentication-Warning: delorie.com: mail set sender to geda-help-bounces using -f
X-Recipient: geda-help AT delorie DOT com
Date: Sun, 6 Dec 2020 22:21:10 +0100 (CET)
From: Roland Lutz <rlutz AT hedmen DOT org>
To: "Klaus Rudolph (lts-rudolph AT gmx DOT de) [via geda-help AT delorie DOT com]" <geda-help AT delorie DOT com>
Subject: Re: [geda-help] using net names on multiple sub schematics used by
single symbol
In-Reply-To: <c6376b29-a72c-6ae0-1b39-081ecb97ec1c@gmx.de>
Message-ID: <alpine.DEB.2.21.2012041901490.1174@nimbus>
References: <c6376b29-a72c-6ae0-1b39-081ecb97ec1c AT gmx DOT de>
User-Agent: Alpine 2.21 (DEB 202 2017-01-01)
MIME-Version: 1.0
Reply-To: geda-help AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: geda-help AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

Hi Klaus,

On Fri, 4 Dec 2020, Klaus Rudolph (lts-rudolph AT gmx DOT de) [via 
geda-help AT delorie DOT com] wrote:
> gschem supports multiple sub schematics in a single symbol, simply by
> inserting multiple "source=xxx.sch" attributes.
>
> From gschem this works fine. Pressing "S" to go into the hierarchy
> opens the first sub schematic and navigate with "page up" "page down"
> works as expected.

yes.  This is a little-known feature which I didn't know about myself 
until I found it in the sources.  I'm happy someone is actually using it. 
:-)

> error: net name conflict across hierarchy: net name `A2/SIG1' is used by
> net `SIG1' on page `A2/' and by net `SIG1' on page `A2/'
> error: net name conflict across hierarchy: net name `A1/SIG1' is used by
> net `SIG1' on page `A1/' and by net `SIG1' on page `A1/'

There was an error in the way gnetlist handles package and refdes 
namespaces in components with multiple subschematics.  I fixed it in the 
branch `stable-1.10' on GitHub (geda-project.org appears to be down at the 
moment).  You can clone it from:

     https://github.com/rlutz/geda-gaf


BTW, port symbols aren't designed to be used with net= attributes.  There 
are two distinct kinds of connections between schematics:

   (a) one net spanning multiple same-level schematics

   (b) the pin of a component being connected to a port in a subsheet

Port symbols are used for case (b) while power symbols (or simply named 
nets) are used for case (a).

I'd recommend using "new-style" power and port symbols: instead of a 
refdes= attribute, you can specify a single netname= or portname= 
attribute which indicates the net (or port) to which the component is 
connected.

(Make sure there isn't a refdes=/net= attribute in the symbol file or 
attached to the component in this case as this would conflict with the 
netname=/portname= attribute.)

Roland

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019