1 .TH gnetlist 1 "August 30th, 2009" Version 1.5.4.20090830
3 gnetlist - gEDA/gaf Netlist extraction/generation
6 [-e] [-i] [-I] [-q] [-s] [-v] [-l schem_file] [-m schem_file ] [-n] [ -O option ] [-h | --help] [-g guile_procedure] [-c scheme_string ] [-o output_filename] schematic1 [... schematicN]
9 \fIgnetlist\fP is the netlist extraction/generation program which is part gEDA
10 (GPL Electronic Design Automation) toolset. This program takes a schematic
11 for its input and outputs a netlist.
13 gnetlist depends heavily on guile (a scheme based scripting language). It
14 uses guile to define the output format. Basically gnetlist reads a schematic,
15 creates an internal representation of the various connections, and then a
16 guile script extracts the connections into some netlist format.
18 gnetlist is very much so a work in progress. Currently it supports the
22 Allegro netlist format (-g allegro)
24 BOM / BOM2 - Bill of Materials (-g bom and -g bom2)
26 Partslist 1,2,3 - More Bill of Materials (-g partslist[1-3])
28 DRC - Start of a design rule checker (-g drc)
30 DRC2 - A second design rule checker (-g drc2)
32 gEDA - native format, mainly used for testing (-g geda)
34 Gossip netlist format (-g gossip)
36 PADS netlist format (-g pads)
38 PCB / PCBboard (-g PCB and -g PCBboard)
40 PCB actions file for forward annotating pin/pad names from
41 schematic to layout (-g pcbpins)
43 gsch2pcb backend (-g gsch2pcb)
45 ProtelII netlist format (-g protelII)
47 Spice compatible netlist format (-g spice)
49 Enhanced spice compatible netlist format (-g spice-sdb)
51 Tango netlist format (-g tango)
53 Verilog code (-g verilog)
57 VIPEC netlist format (-g vipec)
59 Bartels Autoengineer netlist format (-g bae)
61 GOSSIP system simulation system netlist format (-g gossip)
63 MAXASCII netlist format (-g maxascii)
65 VHDL-AMS netlist format (-g vams)
67 Futurenet2 netlist format (-g futurenet2)
69 SWITCAP switched capacitor simulator netlist format (-g switcap)
71 RF Cascade netlist format (-g cascade)
73 RACAL-REDAC netlist format (-g redac)
75 SystemC netlist backend (-g systemc)
77 Calay format netlist backend (-g calay)
79 Osmond format netlist backend (-g osmond)
81 Eagle netlist format (-g eagle)
83 Netlister for symbolic circuit analysis using Mathematica (-g mathematica)
85 LiquidPCB format netlist backend (-g liquidpcb)
87 For more info on these formats please look at the README.*
89 Please read the official documentation on how to use
90 gnetlist, since this man page just describes the command line arguments
91 and a few examples on how to run gnetlist.
95 \fIgnelist\fP accepts the following options:
98 Quiet mode on. This mode turns off all warnings/notes/messages. (optional)
101 Verbose mode on. This mode gives as much feedback to the user as possible. (optional)
103 .B -g guile_procedure
104 Specify the guile procedure which is executed to create the netlist. Use "-g help" to display a list of available backends.
106 .B -o output_filename
107 Specify the filename which will contain the netlist generated by gnetlist. If this option is not specified the default filename is "output.net".
110 Specify a filename which contains scheme code to be loaded and
111 execute before any backend is loaded or any guile procedure (using -g flag)
112 is executed. This flag can be specified multiple times and can be used to
113 pass information to backends.
116 Force embedding contents of .include file when using the spice-sdb backend.
119 Pass the given option to the specified backend.
122 Specify a filename which contains scheme code to be loaded and
123 execute after the backend is loaded but still before any guile procedure
124 (using -g flag) is executed. This flag can be specified multiple times
125 and can be used to pass information to backends. This flag, for example,
126 allows the user to override variables inside of the backends (such as paths).
129 Do not autocorrect the refdes attributes. Only applies to the spice-sdb backend.
132 Pass the specified string to the guile interpreter. This allows you to
133 execute arbitrary guile scripts from the command line. Be sure to surround
134 the string with either single or double quotes to satisfy your shell. The
135 string is execute before any init or netlist backend scheme code is
139 Put .INCLUDE <filename> in output file instead of model file's contents.
142 Print out short command line help.
145 Interactive mode. After the schematic is read in and parsed then go into
146 interactive mode. Interactive mode allows the user to execute guile
150 Sort output netlist (for Gnucap)
152 schematic1 [... schematicN]
153 At least one schematic file must be specified. If multiple schematics are
154 specified then they are sequentially read in and parsed with the assumption
155 that they are all part of the same design. It is important that the
156 schematic(s) follow all the options (ie last).
159 These examples assume that you have a stack_1.sch in the current directory.
161 gnetlist requires that at least one schematic to be specified on the command line:
164 ./gnetlist stack_1.sch
167 This is not very useful since it does not direct gnetlist to do
170 Specify a guile procedure name to get gnetlist to output a netlist:
173 ./gnetlist -g geda stack_1.sch
176 The netlist output will be written to a file called "output.net"
177 in the current working directory.
179 You can specify the output filename by using the -o flag:
182 ./gnetlist -g geda stack_1.sch -o stack.netlist
185 The spice backend is run against the schematic(s) if you specify
186 -g spice and the tango backend is run if you specify -g tango.
188 To interact with the guile interpreter:
191 ./gnetlist -i stack_1.sch
194 You will get a prompt where you can execute guile procedures.
196 To get a more verbose feedback as to what gnetlist is doing run
200 ./gnetlist -v -g geda stack_1.sch
204 \fIgnetlist\fP respects the following environment variable:
208 Specifies where the various required scheme and rc files are located
209 (the default is ${prefix}/share/gEDA). This environment variables does
210 not need to be set by the end user unless they are moving the executables
211 to a new install ${prefix}.
214 Ales Hvezda and many others
220 Copyright \(co 1999-2008 Ales Hvezda
222 This document can be freely redistributed according to the terms of the
223 GNU General Public License version 2.0.