summaryrefslogtreecommitdiff
path: root/static/unix-v10/man5/fizz.10.5
diff options
context:
space:
mode:
Diffstat (limited to 'static/unix-v10/man5/fizz.10.5')
-rw-r--r--static/unix-v10/man5/fizz.10.5459
1 files changed, 459 insertions, 0 deletions
diff --git a/static/unix-v10/man5/fizz.10.5 b/static/unix-v10/man5/fizz.10.5
new file mode 100644
index 00000000..7e8bfb9a
--- /dev/null
+++ b/static/unix-v10/man5/fizz.10.5
@@ -0,0 +1,459 @@
+.TH FIZZ 10.5 UCDS
+.de Cs
+.sp
+.ne 3
+.nf
+.ft L
+..
+.de Ce
+.fi
+.ft R
+..
+.SH NAME
+fizz \- physical layout input language
+.SH DESCRIPTION
+.I Fizz
+is a set of tools to build circuit boards from a circuit description.
+This section describes the input format for the various
+.I fizz
+commands.
+Most of the UCDS tools produce files in
+.IR cdl (10.5)
+format;
+these need to be converted into
+.I fizz
+format by
+.I "fizz cvt" .
+.SS Concepts
+Types, signals and chips are identified by name.
+Pins are identified by name and number.
+A
+.I name
+is a string of letters,
+digits or any of the characters
+.BR +-.$/:<=>[]\(ul .
+Sometimes, the first character
+may not be a digit.
+A name may not be longer than 137 characters.
+.PP
+The physical design
+consists of a
+.I board
+containing
+.IR pin-holes .
+The description details the positions of the pin-holes and the
+position and orientation of the chips.
+I/O connectors may beconsidered as chips with unmoveable packages.
+.PP
+The coordinate system for the board has
+.I x
+increasing to the right and
+.I y
+increasing upwards.
+The origin is at the lower left corner;
+no coordinate should ever be negative.
+The circuit board and components mounted on it are described
+as rectangles.
+They are positioned so that their sides are parallel to one or other
+of the axes.
+Measurements are integers measuring 0.001 inch.
+Coordinates are expressed as pairs of integers separated by
+.B /
+with
+the
+.I x
+coordinate appearing first.
+All rectangular regions are half open;
+the upper and right edges are outside the rectangle.
+.SS Syntax
+The input is a sequence of items.
+An item consists of a item-type followed by a number of fields.
+Multiple fields are indicated by a trailing
+.B {
+on the keyword line and terminated by a line containing a single
+.B } .
+Fields are a keyword followed by the value for that field.
+Certain values are spread over multiple lines between
+.B {}
+as described above.
+.PP
+It is sometimes necessary to provide a list of
+coordinates.
+Invariably each coordinate is associated with a numbered object
+(say, a pin number).
+A one coordinate list consists of the index
+number followed by its coordinates as in
+.RS
+.PP
+.B
+28 1700/2500
+.RE
+A series of equally spaced
+and consecutively numbered coordinates can be described by
+giving the first and last coordinates and separating the
+two with
+.B -
+as in
+.RS
+.PP
+.B
+28 1700/2500 - 30 1900/2000
+.RE
+Coordinate 29 is 1800/2250.
+If the index numbers are equally spaced but not consecutive
+a step size can follow the `\fB-\fR' as in
+.RS
+.PP
+.B
+12 2000/7000 -9 147 2000/1000
+.RE
+This describes coordinates numbered 12, 21, 30, and so on.
+If a letter follows the coordinate specifications,
+it specifies the drill to be used for the pinholes.
+The known drill types are
+.RS
+.PD 0
+.TP
+.B A
+33
+.TP
+.B B
+34
+.TP
+.B C
+39
+.TP
+.B D
+42
+.TP
+.B E
+50
+.TP
+.B F
+62
+.TP
+.B G
+106
+.TP
+.B H
+107
+.TP
+.B I
+108
+.TP
+.B J
+20
+.TP
+.B K
+110
+.TP
+.B L
+111
+.TP
+.B M
+112
+.TP
+.B N
+113
+.TP
+.B O
+114
+.TP
+.B P
+115
+.TP
+.B Q
+116
+.TP
+.B R
+117
+.TP
+.B S
+118
+.TP
+.B T
+119
+.TP
+.B U
+100
+.TP
+.B V
+20
+.TP
+.B W
+122
+.TP
+.B X
+123
+.TP
+.B Y
+124
+.TP
+.B Z
+125
+.PD
+.RE
+.SS Items
+In the following descriptions,
+each item has a sample input defining all possible fields.
+Some fields are optional; mandatory fields are marked by
+.B **
+which is
+.I not
+part of the actual input.
+.Cs
+Board{
+ name board_name
+ align 1600/2000 9600/1700 1400/7100 9600/6600
+ layer signalside 1
+ plane 1 + VCC 2000 2000 8000 8000
+ datums 100/100 135 100/8000 45 10000/100 45
+}
+.Ce
+The board name is set to
+.IR board_name .
+The alignment points are used by
+.B "wrap -s"
+to align the board in Joe's semi-automatic wire wrapping machine.
+All four alignment points must be given.
+The
+.I layer
+field associates a layer number with a name to be used in XY artwork output.
+The layer numbers
+.B 0
+and
+.B 1
+are the two outside layers.
+The
+.B plane
+fields represent signal planes for circuit boards.
+The format is
+.IR "layer sense signame minx miny maxx maxy" .
+.I Sense
+is a character
+meaning add
+.RB ( + )
+or subtract
+.RB ( - )
+the rectangle for the signal
+.IR signame .
+The planes can be viewed with
+.IR place (10.1).
+Note that multiple signals can be present in one layer.
+The
+.I datums
+field sets the positions and orientations of the three datums
+(alignment marks for artwork).
+The orientation is the angle formed by the two squares in the datum.
+.Cs
+Package{
+** name DIP20
+** br -600 0 9600 3000
+** pins 1 20{
+ 1 0/0 - 10 9000/0 V
+ 11 9000/3000 - 20 0/3000 V
+ }
+ drills 1 2{
+ 1 500/1500 - 2 8500/1500 V
+ }
+ keepout 0 - VCC -1000 -4000 10000 3400
+ plane 0 - VCC -1000 -4000 10000 3400
+ plane 0 + VDD -500 -3500 9500 2900
+ xymask clump {
+ arbitrary XY mask stuff
+ }
+}
+.Ce
+Each package definition may have an arbitrary origin.
+The bounding rectangle
+.B br
+is used for placement;
+the values are ll.x, ll.y, ur.x, ur.y.
+The
+.B drills
+field is for mounting bolts etc;
+it does not affect placement.
+Both the
+.B pins
+and
+.B drills
+fields take a minimum and maximum pin number.
+Placement of a package involves both its pins and rectangle.
+The rectangle must not intersect any other placed package,
+and there must be a pin-hole for each of the pins.
+The
+.B keepout
+field looks like a plane definition (the sense is always set to
+.BR - ).
+Multiwire wiring will not enter the specified plane.
+The
+.B plane
+fields are similar to those in
+.B Board
+but are instantiated for every chip using this package.
+The
+.B xymask
+field denotes the clump name
+.RI ( clump )
+for this package and some optional XY mask input
+(used by
+.I artwork (10.1)).
+The XY mask input has leading tabs deleted, not white space, as blanks
+are significant to XY mask.
+.Cs
+Chip{
+** name miscinv
+** type 74F240
+}
+.Ce
+This simply specifies the chip type.
+.Cs
+Type{
+** name 74F240
+** pkg DIP20
+ tt ii3i3i3i3gi3i3i3i3iv
+}
+.Ce
+The
+.B tt
+field must have a letter for every pin of the package.
+Any pin whose letter is one of
+.B gvwxyz
+or
+.B GVWXYZ
+will be automatically attached to special signal 0,1,2,3,4,5 respectively.
+Other letters are ignored (they are used by other tools).
+.Cs
+Net port 4{
+ select 8
+ miscinv 14
+ syncff 13
+ ackff 1
+}
+.Ce
+Signal nets have the net name and number of points on the item line.
+All other lines are simple
+.IR chipname , pinnumber
+pairs.
+Net descriptions are normally produced by
+.I "fizz cvt"
+from the output of
+.I cdm
+or
+.I cdmglob .
+.Cs
+Route{
+** name port
+** alg hand
+ route{
+ ackff 1
+ miscinv 14
+ select 8
+ syncff 13
+ }
+}
+.Ce
+This describes the routing for net
+.IR name .
+The algorithm must be one of
+.B tsp
+(normal travelling salesman),
+.B tspe
+(travelling salesman specifying one end),
+.B mst
+(minimal spanning tree),
+.B mst3
+(minimal spanning tree of degree three),
+.B default
+(whatever is specified in the
+.I wrap
+command)
+and
+.B hand
+(the exact order is given).
+The routing is a list of
+.IR chipname , pinnumber
+pairs.
+.Cs
+Positions{
+ select 3200/2300 0 0
+ miscinv 4900/1700 0 0
+ syncff 2400/2700 0 0
+}
+.Ce
+Specify the position data for each chip.
+Each line has the form
+.IR "chipname coord orientation flags" .
+The orientation is the number of right angles clockwise to
+rotate the package.
+The following bits in
+.I flags
+have a defined meaning:
+.RS
+.PD 0
+.TP
+.B 4
+this chip is unplaced
+.TP
+.B 8
+the bounding rectangle is ignored in placement
+.TP
+.B 16
+the pinholes are ignored in placement.
+.B 32
+the names are ignored in the silk screen output.
+.br
+.I Flags
+should be initialised to zero.
+.RE
+.PD
+.Cs
+Pinholes{
+ 1400/6900 3200 300 10 V
+ 6650/6900 3200 300 10 V
+ 1600/1700 8100 1000 10/30 V
+ 1600/2700 8100 1000 10/30 V
+}
+.Ce
+Each pinhole specification has the form
+.IR "coord lx ly spacing diam"
+which defines a rectangular array of pin-holes with diameter of
+.IR diam .
+The lower left corner of the rectangle is
+.IR coord ,
+and the width and height are
+.I lx,ly
+respectively.
+The pins are placed
+.I spacing
+apart.
+If
+.I spacing
+is of the form
+.IR sx / sy ,
+the spacings in the
+.IR x and y
+directions are set independently.
+.Cs
+Vsig 0{
+ name GND
+ pins 96{
+ 1 1800/2100 - 16 9300/2100 A
+ 17 1800/3100 - 32 9300/3100 A
+ 33 1800/4100 - 48 9300/4100 A
+ 49 1800/5100 - 64 9300/5100 A
+ 65 1800/6100 - 80 9300/6100 A
+ 81 1800/6700 - 96 9300/6700 A
+ }
+}
+.Ce
+This defines the special signals.
+The special signal number follows
+.BR Vsig .
+Pins are numbered from 1;
+the number of pins is given in the
+.B pins
+field line.
+A warning is given if any pins are not specified.
+.SH SEE ALSO
+.IR fizz (10.1)