Hi All,
Thanks Dan. Great example.
Please ignore this message if some of you already know:
IMHO, gEDA current architecture can support all different
ways of doing BUS, independent of specific backends
requirements. Just look at the different ways how
gnet-verilog and gnet-VHDL backends handle BUS.
gnetlist consists of 2 parts: the C/SCM codes and the
specific backend's gnet-???.scm. Gnetlist already
provides most of the useful SCM code for any backends
to interpret the mapping between netnames and pinnumber,
except for other "net_attributes" than netname.
For example:
"gnetlist:get-pin-nets refdes" can provide you the
pinnumber to netname connections info. You can interpret
the mapping anyway you want: netname ABUS{xxx} or
BUS<xxx>; pinnumber <1:3,2,8>; pinnumber "mylist".
Just look at gnet-verilog.scm how it handles them
according to its application specific verilog format.
I suggest that we do not impose any application specific
contraint on how the mapping between netnames (or net
attributes) and pinnumber (or pin attributes). The mapping
should be upto the specific backends: gnet-xxx.scm
If several backends use the same mapping, a common "scheme"
procedures can be developed for those apps. It would be
architecturally unsound to force every backends to follow
a certain way, because there are many backends may need to
be implemented differnetly, e.g. SystemC, Verilog-AMS,
CASE, etc. which may not want to be contrained.
One of the most important and powerful gEDA architectural
feature is its "Flexible generic attributes", whose values
can be anything, it could be a formula, a variable parameter,
etc. I hope we would not reduce its capabilities.
Best Regards,
Paul Tan
-----Original Message-----
From: Dan McMahill <[email protected]>
To: gEDA developer mailing list <[email protected]>
Sent: Thu, 8 Jan 2009 4:41 pm
Subject: Re: gEDA-dev: Google Summer of Code 2009
DJ Delorie wrote:
>> Anybody else!?!?
>
> I'm willing, but I've already got the LF work to do. My pet projects
> for GSoC'09:
>
> * "bus nets" in gaf - the ability to use pin numbers like
> "[1-4,6,8,10-15]" and net names like "D[0-15]" and have them
> demultiplex into individual signals when you run the netlister.
>
you may want to see
http://archives.seul.org/geda/dev/Jul-2006/msg00039.html
for some examples of more advanced bus labeling.
-Dan
_______________________________________________
geda-dev mailing list
[email protected]
http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev
_______________________________________________
geda-dev mailing list
[email protected]
http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev