gEDA-dev: Thoughts on buses in gschem
Cesar Strauss
cstrauss at cea.inpe.br
Wed Jul 12 13:55:43 EDT 2006
DJ Delorie wrote:
>> via a bus splitter to another piece of bus
>>
>
> Hey, no fair invoking magic here :-)
>
> If different segments of a bus could be labelled differently, that
> would be cool. Say, every three-way intersection allows for a label
> on one or three branches. Two would be underspecified, but a label
> could be "inherited" from a pin.
>
>
> +-----------+ +-----------+
> | | [1] [2] | |
> | A[0-23] |===============+===##======================| A[0-7] |
> | | | || | |
> | | | ||
> | BHE |----. | || +-----------+
> | | | | || A[1-18] | |
> | | | | ``=================| A[0-17] |
> | | A0 | |
> | `----------------------| BLE |
> | BHE | |
> `---------------------------------| BHE |
> | |
>
> [1] This sub-bus is implicitly labelled "A[0-23]" from its pin
> connection on the left.
>
> [2] This sub-bus is implicitly labelled "A[1-18]" from its pin
> connection on the right.
>
> I'm OK with mandatory explicit labelling for the first pass, though.
>
>
> _______________________________________________
> geda-dev mailing list
> geda-dev at moria.seul.org
> http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev
>
How about something based on C struct sintax:
+-----------+ +-----------+
| | ADDR.A[0-23] ADDR ADDR.A[1-8] | |
| A[0-23] |=============+=====##======================| A[0-7] |
| | | || | |
| | ADDR.BHE | ||
| BHE |-------------/ || +-----------+
| | || ADDR.A[1-18] | |
| | ||`================| A[0-17] |
|| ADDR.A[0] | |
||`----------------| BLE |
|| ADDR.BHE | |
`----------------| BHE |
| |
If bit ordering is important, use attributes:
CON_JTAG
device=CONNECTOR[5]
JTAG +-----+
====== JTAG_OUT | |
`============| |
pin[0]=JTAG.TDO | |
pin[1]=JTAG.TDI | |
pin[2]=JTAG.TCK +-----+
pin[3]=VCC
pin[4]=GND
Cesar
More information about the geda-dev
mailing list