[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: gEDA-user: Missing the printable docs for gschem
On Nov 29, 2007, at 6:49 AM, Ben Jackson wrote:
On Thu, Nov 29, 2007 at 06:46:02AM +0900, John Doty wrote:
Make a symbol representing the subcircuit. Include the attribute
source=whatever.sch, where whatever.sch is the schematic of the
subcircuit. In whatever.sch, attach input and output symbols from the
"io" symbol library.
I was thinking gschem could use a 'make symbol' wizard for that. It'd
be nice if you could draw a subcircuit and just have the IO pins turn
into a simple boxsym automatically. It would make it much easier to
build hierarchical schematics that have a nice, clear toplevel block
diagram as the first sheet.
How would it know how to arrange the pins?
The example symbol I posted started as a tragesym description:
# This is the template file for creating symbols with tragesym
# every line starting with '#' is a comment line.
[options]
# wordswap swaps labels if the pin is on the right side an looks like this:
# "PB1 (CLK)". That's useful for micro controller port labels
# rotate_labels rotates the pintext of top and bottom pins
# this is useful for large symbols like FPGAs with more than 100 pins
# sort_labels will sort the pins by it's labels
# useful for address ports, busses, ...
wordswap=yes
rotate_labels=yes
sort_labels=no
generate_pinseq=yes
sym_width=1400
pinwidthvertical=300
pinwidthhorizontal=300
[geda_attr]
# name will be printed in the top of the symbol
# name is only some graphical text, not an attribute
# version specifies a gschem version.
# if you have a device with slots, you'll have to use slot= and slotdef=
# use comment= if there are special information you want to add
version=20071026
name=SeqCell
device=SeqCell
refdes=X?
footprint=unknown
description=Sequencer building block
documentation=
author=jpd
dist-license=Creative Commons Share Alike
use-license=Creative Commons Share Alike
numslots=0
#slot=1
#slotdef=1:
#slotdef=2:
#slotdef=3:
#slotdef=4:
#comment=
#comment=
#comment=
[pins]
# tabseparated list of pin descriptions
# ----------------------------------------
# pinnr is the physical number of the pin
# seq is the pinseq= attribute, leave it blank if it doesn't matter
# type can be (in, out, io, oc, oe, pas, tp, tri, clk, pwr)
# style can be (line,dot,clk,dotclk,none). none if only want to add a net
# posit. can be (l,r,t,b) or empty for nets
# net specifies the name of the net. Vcc or GND for example.
# label represents the pinlabel.
# negation lines can be added with "\_" example: \_enable\_
# if you want to write a "\" use "\\" as escape sequence
#-----------------------------------------------------
#pinnr seq type style posit. net label
#-----------------------------------------------------
1 1 in dot l \_J1A\_
2 2 in dot l \_J1B\_
3 3 in dot l \_K1A\_
4 4 in dot l \_K1B\_
5 5 in dotclk l \_CLK\_
6 6 in dot l \_J2A\_
7 7 in dot l \_J2B\_
8 8 in dot l \_K2A\_
9 9 in dot l \_K2B\_
10 10 out line r Q1
11 11 out line r Q2
12 12 pwr line t +3.3D
13 13 pwr line b Gnd
I note that another interesting use of this gschem/gnetlist feature
is to keep all of those hidden power and ground nets organized, since
nets in a subcircuit instance are separate from others of the same
name unless you connect them explicitly (as I did in this example).
--
Ben Jackson AD7GD
<ben@xxxxxxx>
http://www.ben.com/
_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user
John Doty Noqsi Aerospace, Ltd.
http://www.noqsi.com/
jpd@xxxxxxxxx
_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user