Annotation of researchv10dc/man/man10/fizz.10.5, revision 1.1.1.1

1.1       root        1: .TH FIZZ 10.5 UCDS
                      2: .de Cs
                      3: .sp
                      4: .ne 3
                      5: .nf
                      6: .ft L
                      7: ..
                      8: .de Ce
                      9: .fi
                     10: .ft R
                     11: ..
                     12: .SH NAME
                     13: fizz \- physical layout input language
                     14: .SH DESCRIPTION
                     15: .I Fizz
                     16: is a set of tools to build circuit boards from a circuit description.
                     17: This section describes the input format for the various
                     18: .I fizz
                     19: commands.
                     20: Most of the UCDS tools produce files in
                     21: .IR cdl (10.5)
                     22: format;
                     23: these need to be converted into
                     24: .I fizz
                     25: format by
                     26: .I "fizz cvt" .
                     27: .SS Concepts
                     28: Types, signals and chips are identified by name.
                     29: Pins are identified by name and number.
                     30: A
                     31: .I name
                     32: is a string of letters,
                     33: digits or any of the characters
                     34: .BR +-.$/:<=>[]\(ul .
                     35: Sometimes, the first character
                     36: may not be a digit.
                     37: A name may not be longer than 137 characters.
                     38: .PP
                     39: The physical design
                     40: consists of a
                     41: .I board
                     42: containing
                     43: .IR pin-holes .
                     44: The description details the positions of the pin-holes and the
                     45: position and orientation of the chips.
                     46: I/O connectors may beconsidered as chips with unmoveable packages.
                     47: .PP
                     48: The coordinate system for the board has
                     49: .I x
                     50: increasing to the right and
                     51: .I y
                     52: increasing upwards.
                     53: The origin is at the lower left corner;
                     54: no coordinate should ever be negative.
                     55: The circuit board and components mounted on it are described
                     56: as rectangles.
                     57: They are positioned so that their sides are parallel to one or other
                     58: of the axes.
                     59: Measurements are integers measuring 0.001 inch.
                     60: Coordinates are expressed as pairs of integers separated by
                     61: .B /
                     62: with
                     63: the
                     64: .I x
                     65: coordinate appearing first.
                     66: All rectangular regions are half open;
                     67: the upper and right edges are outside the rectangle.
                     68: .SS Syntax
                     69: The input is a sequence of items.
                     70: An item consists of a item-type followed by a number of fields.
                     71: Multiple fields are indicated by a trailing
                     72: .B {
                     73: on the keyword line and terminated by a line containing a single
                     74: .B } .
                     75: Fields are a keyword followed by the value for that field.
                     76: Certain values are spread over multiple lines between
                     77: .B {}
                     78: as described above.
                     79: .PP
                     80: It is sometimes necessary to provide a list of
                     81: coordinates.
                     82: Invariably each coordinate is associated with a numbered object
                     83: (say, a pin number).
                     84: A one coordinate list consists of the index
                     85: number followed by its coordinates as in
                     86: .RS
                     87: .PP
                     88: .B
                     89: 28 1700/2500
                     90: .RE
                     91: A series of equally spaced
                     92: and consecutively numbered coordinates can be described by
                     93: giving the first and last coordinates and separating the
                     94: two with
                     95: .B -
                     96: as in
                     97: .RS
                     98: .PP
                     99: .B
                    100: 28 1700/2500 - 30 1900/2000
                    101: .RE
                    102: Coordinate 29 is 1800/2250.
                    103: If the index numbers are equally spaced but not consecutive
                    104: a step size can follow the `\fB-\fR' as in
                    105: .RS
                    106: .PP
                    107: .B
                    108: 12 2000/7000 -9 147 2000/1000
                    109: .RE
                    110: This describes coordinates numbered 12, 21, 30, and so on.
                    111: If a letter follows the coordinate specifications,
                    112: it specifies the drill to be used for the pinholes.
                    113: The known drill types are
                    114: .RS
                    115: .PD 0
                    116: .TP
                    117: .B A
                    118: 33
                    119: .TP
                    120: .B B
                    121: 34
                    122: .TP
                    123: .B C
                    124: 39
                    125: .TP
                    126: .B D
                    127: 42
                    128: .TP
                    129: .B E
                    130: 50
                    131: .TP
                    132: .B F
                    133: 62
                    134: .TP
                    135: .B G
                    136: 106
                    137: .TP
                    138: .B H
                    139: 107
                    140: .TP
                    141: .B I
                    142: 108
                    143: .TP
                    144: .B J
                    145: 20
                    146: .TP
                    147: .B K
                    148: 110
                    149: .TP
                    150: .B L
                    151: 111
                    152: .TP
                    153: .B M
                    154: 112
                    155: .TP
                    156: .B N
                    157: 113
                    158: .TP
                    159: .B O
                    160: 114
                    161: .TP
                    162: .B P
                    163: 115
                    164: .TP
                    165: .B Q
                    166: 116
                    167: .TP
                    168: .B R
                    169: 117
                    170: .TP
                    171: .B S
                    172: 118
                    173: .TP
                    174: .B T
                    175: 119
                    176: .TP
                    177: .B U
                    178: 100
                    179: .TP
                    180: .B V
                    181: 20
                    182: .TP
                    183: .B W
                    184: 122
                    185: .TP
                    186: .B X
                    187: 123
                    188: .TP
                    189: .B Y
                    190: 124
                    191: .TP
                    192: .B Z
                    193: 125
                    194: .PD
                    195: .RE
                    196: .SS Items
                    197: In the following descriptions,
                    198: each item has a sample input defining all possible fields.
                    199: Some fields are optional; mandatory fields are marked by
                    200: .B **
                    201: which is
                    202: .I not
                    203: part of the actual input.
                    204: .Cs
                    205: Board{
                    206:        name board_name
                    207:        align 1600/2000 9600/1700 1400/7100 9600/6600
                    208:        layer signalside 1
                    209:        plane 1 + VCC 2000 2000 8000 8000
                    210:        datums 100/100 135 100/8000 45 10000/100 45
                    211: }
                    212: .Ce
                    213: The board name is set to
                    214: .IR board_name .
                    215: The alignment points are used by
                    216: .B "wrap -s"
                    217: to align the board in Joe's semi-automatic wire wrapping machine.
                    218: All four alignment points must be given.
                    219: The
                    220: .I layer
                    221: field associates a layer number with a name to be used in XY artwork output.
                    222: The layer numbers
                    223: .B 0
                    224: and
                    225: .B 1
                    226: are the two outside layers.
                    227: The
                    228: .B plane
                    229: fields represent signal planes for circuit boards.
                    230: The format is
                    231: .IR "layer sense signame minx miny maxx maxy" .
                    232: .I Sense
                    233: is a character
                    234: meaning add
                    235: .RB ( + )
                    236: or subtract
                    237: .RB ( - )
                    238: the rectangle for the signal
                    239: .IR signame .
                    240: The planes can be viewed with
                    241: .IR place (10.1).
                    242: Note that multiple signals can be present in one layer.
                    243: The
                    244: .I datums
                    245: field sets the positions and orientations of the three datums
                    246: (alignment marks for artwork).
                    247: The orientation is the angle formed by the two squares in the datum.
                    248: .Cs
                    249: Package{
                    250: **     name DIP20
                    251: **     br -600 0 9600 3000
                    252: **     pins 1 20{
                    253:                1 0/0 - 10 9000/0 V
                    254:                11 9000/3000 - 20 0/3000 V
                    255:        }
                    256:        drills 1 2{
                    257:                1 500/1500 - 2 8500/1500 V
                    258:        }
                    259:        keepout 0 - VCC -1000 -4000 10000 3400
                    260:        plane 0 - VCC -1000 -4000 10000 3400
                    261:        plane 0 + VDD -500 -3500 9500 2900
                    262:        xymask clump {
                    263:                arbitrary XY mask stuff
                    264:        }
                    265: }
                    266: .Ce
                    267: Each package definition may have an arbitrary origin.
                    268: The bounding rectangle
                    269: .B br
                    270: is used for placement;
                    271: the values are ll.x, ll.y, ur.x, ur.y.
                    272: The
                    273: .B drills
                    274: field is for mounting bolts etc;
                    275: it does not affect placement.
                    276: Both the
                    277: .B pins
                    278: and
                    279: .B drills
                    280: fields take a minimum and maximum pin number.
                    281: Placement of a package involves both its pins and rectangle.
                    282: The rectangle must not intersect any other placed package,
                    283: and there must be a pin-hole for each of the pins.
                    284: The
                    285: .B keepout
                    286: field looks like a plane definition (the sense is always set to
                    287: .BR - ).
                    288: Multiwire wiring will not enter the specified plane.
                    289: The
                    290: .B plane
                    291: fields are similar to those in
                    292: .B Board
                    293: but are instantiated for every chip using this package.
                    294: The
                    295: .B xymask
                    296: field denotes the clump name
                    297: .RI ( clump )
                    298: for this package and some optional XY mask input
                    299: (used by
                    300: .I artwork (10.1)).
                    301: The XY mask input has leading tabs deleted, not white space, as blanks
                    302: are significant to XY mask.
                    303: .Cs
                    304: Chip{
                    305: **     name miscinv
                    306: **     type 74F240
                    307: }
                    308: .Ce
                    309: This simply specifies the chip type.
                    310: .Cs
                    311: Type{
                    312: **     name 74F240
                    313: **     pkg DIP20
                    314:        tt ii3i3i3i3gi3i3i3i3iv
                    315: }
                    316: .Ce
                    317: The
                    318: .B tt
                    319: field must have a letter for every pin of the package.
                    320: Any pin whose letter is one of
                    321: .B gvwxyz
                    322: or
                    323: .B GVWXYZ
                    324: will be automatically attached to special signal 0,1,2,3,4,5 respectively.
                    325: Other letters are ignored (they are used by other tools).
                    326: .Cs
                    327: Net port 4{
                    328:        select 8
                    329:        miscinv 14
                    330:        syncff 13
                    331:        ackff 1
                    332: }
                    333: .Ce
                    334: Signal nets have the net name and number of points on the item line.
                    335: All other lines are simple
                    336: .IR chipname , pinnumber
                    337: pairs.
                    338: Net descriptions are normally produced by
                    339: .I "fizz cvt"
                    340: from the output of
                    341: .I cdm
                    342: or
                    343: .I cdmglob .
                    344: .Cs
                    345: Route{
                    346: **     name port
                    347: **     alg hand
                    348:        route{
                    349:                ackff 1
                    350:                miscinv 14
                    351:                select 8
                    352:                syncff 13
                    353:        }
                    354: }
                    355: .Ce
                    356: This describes the routing for net
                    357: .IR name .
                    358: The algorithm must be one of
                    359: .B tsp
                    360: (normal travelling salesman),
                    361: .B tspe
                    362: (travelling salesman specifying one end),
                    363: .B mst
                    364: (minimal spanning tree),
                    365: .B mst3
                    366: (minimal spanning tree of degree three),
                    367: .B default
                    368: (whatever is specified in the
                    369: .I wrap
                    370: command)
                    371: and
                    372: .B hand
                    373: (the exact order is given).
                    374: The routing is a list of
                    375: .IR chipname , pinnumber
                    376: pairs.
                    377: .Cs
                    378: Positions{
                    379:        select 3200/2300 0 0
                    380:        miscinv 4900/1700 0 0
                    381:        syncff 2400/2700 0 0
                    382: }
                    383: .Ce
                    384: Specify the position data for each chip.
                    385: Each line has the form
                    386: .IR "chipname coord orientation flags" .
                    387: The orientation is the number of right angles clockwise to
                    388: rotate the package.
                    389: The following bits in
                    390: .I flags
                    391: have a defined meaning:
                    392: .RS
                    393: .PD 0
                    394: .TP
                    395: .B 4
                    396: this chip is unplaced
                    397: .TP
                    398: .B 8
                    399: the bounding rectangle is ignored in placement
                    400: .TP
                    401: .B 16
                    402: the pinholes are ignored in placement.
                    403: .B 32
                    404: the names are ignored in the silk screen output.
                    405: .br
                    406: .I Flags
                    407: should be initialised to zero.
                    408: .RE
                    409: .PD
                    410: .Cs
                    411: Pinholes{
                    412:        1400/6900 3200 300 10 V
                    413:        6650/6900 3200 300 10 V
                    414:        1600/1700 8100 1000 10/30 V
                    415:        1600/2700 8100 1000 10/30 V
                    416: }
                    417: .Ce
                    418: Each pinhole specification has the form
                    419: .IR "coord lx ly spacing diam"
                    420: which defines a rectangular array of pin-holes with diameter of
                    421: .IR diam .
                    422: The lower left corner of the rectangle is
                    423: .IR coord ,
                    424: and the width and height are
                    425: .I lx,ly
                    426: respectively.
                    427: The pins are placed
                    428: .I spacing
                    429: apart.
                    430: If
                    431: .I spacing
                    432: is of the form
                    433: .IR sx / sy ,
                    434: the spacings in the
                    435: .IR x and y
                    436: directions are set independently.
                    437: .Cs
                    438: Vsig 0{
                    439:        name GND
                    440:        pins 96{
                    441:                1 1800/2100 - 16 9300/2100 A
                    442:                17 1800/3100 - 32 9300/3100 A
                    443:                33 1800/4100 - 48 9300/4100 A
                    444:                49 1800/5100 - 64 9300/5100 A
                    445:                65 1800/6100 - 80 9300/6100 A
                    446:                81 1800/6700 - 96 9300/6700 A
                    447:        }
                    448: }
                    449: .Ce
                    450: This defines the special signals.
                    451: The special signal number follows
                    452: .BR Vsig .
                    453: Pins are numbered from 1;
                    454: the number of pins is given in the
                    455: .B pins
                    456: field line.
                    457: A warning is given if any pins are not specified.
                    458: .SH SEE ALSO
                    459: .IR fizz (10.1)

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.