delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2016/01/16/14:20:42

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
Message-ID: <569A97BF.80501@iee.org>
Date: Sat, 16 Jan 2016 19:19:27 +0000
From: "M. J. Everitt (m DOT j DOT everitt AT iee DOT org) [via geda-user AT delorie DOT com]" <geda-user AT delorie DOT com>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0
MIME-Version: 1.0
To: geda-user AT delorie DOT com
Subject: Re: [geda-user] first attempt at bus support in gnetlist for pcb
References: <201601080714 DOT u087Ejj5032766 AT envy DOT delorie DOT com> <F723B760-53BB-467C-8595-20EB5FC50E47 AT noqsi DOT com>
In-Reply-To: <F723B760-53BB-467C-8595-20EB5FC50E47@noqsi.com>
X-Provags-ID: V03:K0:UTdw51wYHiQhF/Pb4RbNNrwKAQWlbNGcJSA8c2I/7yUCB97L3DO
UNvNiErx8nTvf3qWr12kXztTDFrLMMaJxdqb56Nr8mmf6C+Im2HpjgxhlqMmH7J9b+dua6d
TJlaFLd23T24lqw3y/BktmGefBIptJLOFTUqKgYgGfWGEnt3mRX9xTzS/Po9+Z6gdAnE+ay
2tmzHmu9NLQlexGrCdk1Q==
X-UI-Out-Filterresults: notjunk:1;V01:K0:OCEmWXb/sLw=:y8AH5x2lE8STgwOkCshyPT
sHhcZYjw69M1oW8puMAo2JOkP5LUp6miFkDibpjSEAAm4qkMJokVgkPxshQ/TAOIG5kqTF/gF
s17rzFsZasDgb7327eo0076xiuA3+ycsWdqxmGWzeeJFjhLQdTAm2KsjhTwSPxXmdUf+LTo9/
Q7JFovNvGivky5mR+3/4LTlKhShCPeP5jbmEsxIDAyrj/SiVFHnov14sNfOzISxj2Hk1Ah8vI
zQCOuAk3+BJf3FovXoqeejtZoIWM84bX3Pm2BIcDiR5OoW7dOev3OxLARpVnyMbwZfzXSecP4
XufDtnPt5PJMnPSV/dE6PXKl385r1by5VaypqvPjFpx5TDenZyVFgLoK/8epRPrON/wEB/Eql
oSqCMjg8lwqjHapeZ53cGWbuNcMUNLXRIrCmH/RVfll0GqNHjAixsAhKbT0d9gxhmtZxxHBNq
7sIspjsyBSP/pb5aXEOJol1HtpxrrvhfF3spZS3Lc/deOewBE4OV1PfjtvTt5hSmdM8hfAuDZ
mZZJBVNpI+FBocOELKfkgmJcPULv/nYvoS+2sVgrM6GuG1XqpLzMaK7biGW5Lo/YTnzoYZDGm
aYD14j/Y9H66Z1NAS/4M/HrOXnc4Bf9DKRzeSNVh1ay2lX3wAr4ZwJCpyhthVHJgRBiqO9Dqa
oT3e+6hnaoGP1wUZiztEQfLEp4QI5jE2VWk7FkM1S/f7lgQMtiFP+Pvkw3wkRf7xnm6T3fnX8
FFHOf4PwTMxypq6z
Reply-To: geda-user AT delorie DOT com

On 16/01/16 19:03, John Doty wrote:
> Been playing around with this as a general-purpose plug in for more than just a subset of gpcb flows. Difficulties:
>
> 1. For netlists flattened by gnetlist, we have a configurable syntax for net renaming before the Scheme stuff gets the data. The bus syntax here will have some difficulty with that.
>
> 2. For genuinely hierarchical netlists, there’s probably not a single one-size-fits-all plug in solution. Not today.
>
> 3. For pinseq-centered netlisting (SPICE), it needs to expand pinseqs, too.
>
> Another issue is that “-“ seems a little strange as a range token. “:” would match Verilog and some programming languages for more user familiarity.
I think "-" dash works as a human-readable token. I'm not sure many
people would directly understand what 8:1 means - that could potentially
mean section 8 paragraph 1 or many other things (taken out of context, I
appreciate). I don't know many programs that have difficulty with this
syntax, think of printing multiple (but not All) pages from a document -
the print dialog easily handles pages 1-3,5,7-9 etc ...
> I suggest using Dirac-style angle brackets to designate a bus definition, so a typical example might be "<nBL,A[8:2]>”. While I think a sufficiently aware gnetlist plugin could navigate this without the extra tokens, we’ve historically exploited the transparency of our formats to process schematics with other tools as well. The extra tokens will help.
>
> On Jan 8, 2016, at 12:14 AM, DJ Delorie <dj AT delorie DOT com> wrote:
>
>> http://www.delorie.com/pcb/gnet-pcbfwd-bus.scm
>>
>> This is a replacement for gnet-pcbfwd.scm which PCB's File->Import uses.
>>
>> (If the scheme coding itself bothers you, you may use that as an
>> argument in the scheme debate - whether for or against is up to you.
>> Keep in mind this took me many nights to figure out :-))
>>
>> It expands lists in netnames and pin numbers like this:
>>
>> 4-7 becomes 4,5,6,7
>> 7-4 becomes 7,6,5,4
>>
>> -then-
>>
>> sym[1,2,3] becomes sym1,sym2,sym3
>>
>> -then-
>>
>> assignments between lists of netnames to lists of pinnumbers are
>> matched up one-to-one.
>>
>> assignments between one netname and a list of pinnumbers are matched
>> up one-to-many.
>>
>> Likewise for pin numbers and pin labels.
>>
>> The net result of this is that you can assign a net named "nBL,A[8-2]" to
>> a pin labelled "A[0-7]" and numbered "1-4,10-7" and they'll all get
>> hooked up as appropriate.
>>
>> You can also have a pin named "GND" and numbered "1,15,18" connected
>> to net "GND" and it will connect all three pins to the one net.
>>
>>
>> Constructive feedback welcome!
>>
>> DJ
>>
> John Doty              Noqsi Aerospace, Ltd.
> http://www.noqsi.com/
> jpd AT noqsi DOT com
>
>

- Raw text -


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