1
Maximum text width to fit in dialog:
2
=================================================================
4
CLEAR: Clear the status terminal screen.
8
COMPILE: Compile a file creating complex cell descriptions.
10
Syntax: COMPILE filename [ECHO]
12
where "filename" is the name of the disk file to compile.
13
Note that the file name can a list of QUISC commands
14
(must be extension .sci) or an VHDL file (extension
15
.hdl) in which case the VHDL Compiler is automatically
16
invoked and a .sci file produced. If no extension is
17
specified, .sci is assumed.
19
ECHO is an optional flag which causes the echoing of
20
each command in the .sci file as it is executed.
22
CONNECT: Connect the port of a cell to another port or to power
25
Syntax: CONNECT inst1 port1 inst2 port2
26
CONNECT inst1 port1 POWER | GROUND
28
where the first form connects two ports of the same or two
29
different cells together.
30
the second form connects a port to either power or
33
Note: Not all individual connections been to be specified.
34
For example, if A is connected to B and B is connected
35
to C, the connection from A to C is implicitly
38
CREATE: Create an object in the QUISC database.
42
where 'option' is what object is to be created.
44
CREATE CELL: Create a new complex cell in QUISC.
46
Syntax: CREATE CELL name
48
where 'name' is the name for the new complex cell. Note
49
that names in QUISC are case insensitive (AND2 = and2).
51
CREATE INSTANCE: Create a new instance of a cell in the current
52
selected complex cell.
54
Syntax: CREATE INSTANCE name type
56
where 'name' is the name for the new instance. Note
57
that names in QUISC are case insensitive (AND2 = and2).
58
'type' is the name of the complex or leaf cell that
59
this is an instance of.
61
DELETE: Clears the entire QUISC database and frees the comsumed
66
ECHO: Echo a line of text.
70
where 'text' is a string within double quotes. This
71
command is mainly used within .SCI files to print
72
comments during compilation.
74
ENVIRIONMENT: Send a command to the VLSI Layout Tool environment.
76
Syntax: ENVIRONMENT command
78
where 'command' is a valid command for the VLSI Layout
81
EXPORT: Export a port within a complex cell.
83
Syntax: EXPORT instance port name type
85
where 'instance' is the name of the instance whose port is
87
'port' is the name of the port on the instance.
88
'name' is the name to be given to the exported port.
89
'type' is the type of the exported port (input,
90
output, bidirectional).
92
EXTRACT: Extract the entire netlist of connected ports by
93
searching the connection lists.
95
Syntax: EXTRACT [ECHO]
97
where 'ECHO' is an optional parameter which causes the
98
displaying of the resulting connection list.
100
LIBRARY: Read in a library of cells for use with QUISC.
102
Syntax: LIBRARY READ lib_name
104
where 'lib_name' is the name of the library to read. Note
105
that currently this library must be in binary format.
106
Note also that the normal library command can still
107
be used, but the library from which QUISC get its
108
leaf cells must be currently selected.
110
MAKE: Make a placed and routed cell in the Layout Tool Database.
114
MAKE INFORMATION: List information about layout without making.
116
Syntax: MAKE INFORMATION
118
Output: If verbose flag is not set, lists estimated X and Y
119
size of final layout (in microns) and area (in
120
square microns). If verbose flag is set, includes
121
information such as the number of cells, number of
122
feed throughs, total track length, et cetera.
124
MAKE SET-CONTROL: Set various control parameters for make.
126
Syntax: MAKE SET-CONTROL {options}
128
where 'options' is one or more of the various control
131
MAKE SET-CONTROL option = VERBOSE or NO-VERBOSE
133
Syntax: MAKE SET-CONTROL [NO-]VERBOSE
135
controls whether the output from make concerning
136
cell statistics (number of cells, total track
137
length, etc.) is detailed (VERBOSE) or terse
140
MAKE SET-CONTROL option = MIN-SPACING
142
Syntax: MAKE SET-CONTROL MIN-SPACING value
144
where 'value' is the value (in internal units) of the
145
minimum required spacing between metal layers. This
146
value is used to determine positions of routing
149
MAKE SET-CONTROL option = VIA-SIZE
151
Syntax: MAKE SET-CONTROL VIA-SIZE value
153
where 'value' is the value (in internal units) of the size
154
of vias between layer1 and layer2 track routing.
155
Note that vias are assumed to be square in shape.
157
MAKE SET-CONTROL option = L1-TRACK-WIDTH
159
Syntax: MAKE SET-CONTROL L1-TRACK-WIDTH value
161
where 'value' is the width (in internal units) of Layer 1
162
track routing. Note that layer 1 is assumed for
165
MAKE SET-CONTROL option = L2-TRACK-WIDTH
167
Syntax: MAKE SET-CONTROL L2-TRACK-WIDTH value
169
where 'value' is the width (in internal units) of Layer 2
170
track routing. Note that layer 2 is assumed for
173
MAKE SET-CONTROL option = POWER-TRACK-WIDTH
175
Syntax: MAKE SET-CONTROL POWER-TRACK-WIDTH value
177
where 'value' is the width (in internal units) of the
178
power buses used to connect power and ground ports
179
of leaf cells in the same row. Note that routing
182
MAKE SET-CONTROL option = MAIN-POWER-WIDTH
184
Syntax: MAKE SET-CONTROL MAIN-POWER-WIDTH value
186
where 'value' is the width (in internal units) of the
187
power buses used to connect the power and ground
188
buses of different rows together. Note that routing
191
MAKE SET-CONTROL option = P-WELL-SIZE
193
Syntax: MAKE SET-CONTROL P-WELL-SIZE value
195
where 'value' is the width (in internal units) of an
196
optional P-well to be placed from one end of each
197
row to the other other end. The reason for this
198
P-well is to join up the P-wells in all individual
199
cells of the row. To disable this option, set value
200
to zero. Note that the width includes the guards.
202
MAKE SET-CONTROL option = P-WELL-OFFSET
204
Syntax: MAKE SET-CONTROL P-WELL-OFFSET value
206
where 'value' is the offset (in internal units) for
207
placing the optional P-well from the bottom on the
210
MAKE SET-CONTROL option = DEFAULT
212
Syntax: MAKE SET-CONTROL DEFAULT
214
Sets all the control parameters to a default setup. This
215
setup is currently correct for the NCMOS3 technology
216
from Northern Telecom. The values are:
222
POWER-TRACK-WIDTH = 900
223
MAIN-POWER-WIDTH = 1800
227
MAKE SHOW-CONTROL: Show the current values for the various
228
control parameters used by the MAKE command.
230
Syntax: MAKE SHOW-CONTROL
232
Output: The control parameters displayed are:
235
TRUE is displayed statistics are
236
detailed, else FALSE.
237
(2) Minimum Spacing -
238
Minimum distance (in internal units)
239
required between routed metal.
241
Size of vias between Layer 1 and Layer 2
242
routing (in internal units). Note vias
243
are assumed to be square in shape.
244
(4) Layer 1 Track Width -
245
Width (in internal units) of routing
247
(5) Layer 2 Track Width -
248
Width (in internal units) of routing
250
(6) Power Track Width -
251
Width (in internal units) of power and
252
ground buses within a row of leaf cells.
253
(7) Main Power Bus width -
254
Width (in internal units) of power and
255
ground buses between rows of cells.
257
Width (in internal units) of optional
258
P-well to place from one end of the each
259
row to the other end. Set to 0 to
262
Offset (in internal units) for placing
263
optional P-well from bottom of cells.
266
ORDER: Order the ports on a leaf cell.
268
Syntax: ORDER cell_name [file_name]
270
where 'cell_name' is the name of the leaf cell whose ports
271
to order. 'file_name' is an optional name of a file
272
to be used as input instead of manual ordering.
274
Note: The ordering of ports on a leaf cell is done to
275
maintain a logical ordering between the actual list
276
of ports and the order of the ports on any tagged
279
PLACE: Activate QUISC Placement Module.
283
Creates placement information for currently selected complex
284
cell. Note that the cell must contain only leaf cells
285
(achieved by 'PULL' command).
287
PLACE SET-CONTROL: Set various control parameters of the QUISC
290
Syntax: PLACE SET-CONTROL {options}
292
where 'options' is one or more of the various control
295
PLACE SET-CONTROL option = VERBOSE or NO-VERBOSE
297
Syntax: PLACE SET-CONTROL [NO-]VERBOSE
299
controls whether the output from the Placement
300
Module concerning intermediate steps is detailed
301
(VERBOSE) or terse (NO-VERBOSE). Default is
304
PLACE SET-CONTROL option = ROWS
306
Syntax: PLACE SET-CONTROL ROWS number
308
where 'number' is the number of rows of cells of
309
approximately equal length created by the Placement
310
Alogorithm. This number directly controls the
311
aspect ratio of the resulting layout. Default is
314
PLACE SET-CONTROL option = SORT or NO-SORT
316
Syntax: PLACE SET-CONTROL [NO-]SORT
318
controls whether the Placement Modules sorting
319
algorithm to optimize placement is envoked (SORT) or
320
bypassed (NO-SORT). The sorting algorithm
321
recursively swaps subtrees of the initial placement
322
clustering tree to try and minimize total
323
routing track length. Default is SORT.
325
PLACE SET-CONTROL option = NET-BALANCE or NO-NET-BALANCE
327
Syntax: PLACE SET-CONTROL [NO-]NET-BALANCE
329
controls whether after initial placement an
330
additional placement optimization step (Net
331
Balancing) is done (NET-BALANCE) or bypassed
332
(NO-NET-BALANCE). Default is NO-NET-BALANCE.
334
PLACE SET-CONTROL option = LIMIT-NET-BALANCE
336
Syntax: PLACE SET-CONTROL LIMIT-NET-BALANCE limit
338
where 'limit' is the limit of how far (in leaf cells) an
339
individual cell can be moved during the Net
340
Balancing algorithm. The larger the number, the
341
longer the algorithm requires. The most gain is
342
with the first movement, then significantly less
343
gain of two versus one, and with little gain of
344
three versus two. The default is set to two.
346
PLACE SET-CONTROL option = VERTICAL-COST
348
Syntax: PLACE SET-CONTROL VERTICAL-COST factor
350
where 'factor' is the multiplying factor used to express
351
the cost of required vertical tracks versus
352
horizontal tracks during the Net Balancing placement
353
optimization step. Default is two.
355
PLACE SET-CONTROL option = DEFAULT
357
Syntax: PLACE SET-CONTROL DEFAULT
359
Sets all the control parameters to the default setup.
360
The current defaults are:
365
LIMIT-NET-BALANCE = 2
368
PLACE SHOW-CONTROL: Displays the current values of the Placement
371
Syntax: PLACE SHOW-CONTROL
373
Output: The control parameters displayed are:
376
TRUE if display of intermediate steps is
377
detailed, else FALSE.
379
TRUE if optimizing sorting algorithm
380
will be used, else FALSE.
382
Number of rows of cells which will be
383
use in the resulting layout.
384
(4) Net Balancing flag -
385
TRUE if Net Balancing optimization
386
algorithm will be used, else FALSE.
387
(5) Net Balancing limit -
388
Movement limit of any individual cell
389
during Net Balancing optimization.
390
(6) Vertical Cost multiplier -
391
Cost multiplier for having to route
392
tracks vertically versus horizontally.
394
PULL: Pull (flatten) the currently selected cell by bringing up
397
Syntax: PULL [INFORMATION]
399
where 'INFORMATION' is an optional flag which will cause
400
the display of status information during the
401
flattening operation.
403
ALS: Run the ALS Logic Simulator.
407
Temporarily spawn a subprocess and run ALS. This is mainly
408
used after generating a ALS .net netlist file using the
409
SIMULATION WRITE command.
411
QUIT: Exit the QUISC Silicon Compiler
415
ROUTE: Activate the QUISC Routing Module.
419
Creates routing information for the currently selected complex
420
cell. Note that the cell must have previously been placed
421
(using PLACE command). The router is designed to handle both
422
standard cells and bit slices.
424
ROUTE SET-CONTROL: Set the various control parameters used by the
427
Syntax: ROUTE SET-CONTROL {options}
429
where 'options' is one or more of the various control
432
ROUTE SET-CONTROL option = VERBOSE or NO-VERBOSE
434
Syntax: ROUTE SET-CONTROL [NO-]VERBOSE
436
Controls whether information displayed during the
437
routing algorithm is detailed (VERBOSE) or terse
438
(NO-VERBOSE). The default is NO-VERBOSE.
440
ROUTE SET-CONTROL option = FEED-THROUGH-SIZE
442
Syntax: ROUTE SET-CONTROL FEED-THROUGH-SIZE size
444
where 'size' is the size (in internal units) of the width
445
of any inserted feed throughs between adjacent cell
446
on a row. Feed throughs allow signals to be routed
447
between non-adjacent rows. The size is the bounding
448
box size so that two feed throughs can be abutted
449
and not violate any design rules.
451
ROUTE SET-CONTROL option = PORT-X-MIN-DISTANCE
453
Syntax: ROUTE SET-CONTROL PORT-X-MIN-DISTANCE min_distance
455
where 'min_distance' is the minimum required distance in
456
the horizontal direction (in internal units) between
457
two adjacent ports which must be connected to. This
458
distance is determined by the VIA centre to VIA
459
center spacing required by the technology.
461
ROUTE SET-CONTROL option = FUZZY-WINDOW-LIMIT
463
Syntax: ROUTE SET-CONTROL FUZZY-WINDOW-LIMIT limit
465
where 'limit' is a value in internal units. When the
466
router discovers a signal that must be run between
467
two non-adjacent tracks, it searches the intervening
468
rows for a port on the same signal that can be
469
routed to from both above and below and is in a
470
'target window' to use as a feed through. This
471
window is defined as the X coordinated between the
472
ports on the two non-adjacent rows. If no such
473
intervening port if found, a feed through is
474
inserted in the row. Since an inserted feed through
475
increases the area of a cell, the search window is
476
expanded by the FUZZY-WINDOW-LIMIT to see first if
477
there are any other ports on intervening rows which
480
ROUTE SET-CONTROL option = ACTIVE-DISTANCE
482
Syntax: ROUTE SET-CONTROL ACTIVE-DISTANCE active
484
where 'active' is the minimum required distance (in
485
internal units) between the active areas on adjacent
486
cells of a row. The router uses this value to
487
squeeze cells as close together as possible in the
488
horizontal direction before routing.
490
ROUTE SET-CONTROL option = DEFAULT
492
Syntax: ROUTE SET-CONTROL DEFAULT
494
Sets all the control parameters to a default setup.
495
This setup is currently correct for the NCMOS3
496
technology from Northern Telecom. The values are:
499
FEED-THROUGH-SIZE = 1600
500
PORT-X-MIN_DISTANCE = 1600
501
FUZZY-WINDOW-LIMIT = 6400
502
ACTIVE-DISTANCE = 500
504
ROUTE SHOW-CONTROL: Show the various control parameters used by
507
Syntax: ROUTE SHOW-CONTROL
509
Output: The control parameters displayed are:
512
TRUE if information displayed during
513
routing is detailed, else FALSE.
514
(2) Feed Through Size -
515
Size in internal units of inserted feed
517
(3) Port X Minimum Distance -
518
Minimum distance (in internal units)
519
required between adjacent connected
521
(4) Fuzzy Window Limit -
522
Increased window size for searching for
523
a port which can be used as a feed
524
through (in internal units).
525
(5) Minimum active Distance -
526
Minimum distance (in internal units)
527
required between the active regions of
530
SET: Set one of the various elements of the QUISC database.
534
where 'option' is the particular database element.
536
SET LEAF-CELL-NUMBERS: Set the numbers tagged to leaf cells
537
which are used by QUISC during placement
540
Syntax: SET LEAF-CELL-NUMBERS cell {option}
542
where 'cell' is the name of the leaf cell in the cell
543
library. 'option' is one or more of the following:
546
BOTTOM-ACTIVE distance
548
RIGHT-ACTIVE distance
550
where 'distance' is the distance in internal
551
units from the associated outside edge of the
552
cell to any elements such as metal or field.
553
Note these numbers exists for those layout tools
554
whose created cells may appear larger
555
than necessary (e.g. due to P-wells or guards).
557
SET NODE-NAME: Set the name of an extracted electrical node for
560
Syntax: SET NODE-NAME instance port name
562
where 'instance' is one instance the node goes to in the
564
'port' is the name of the port on the instance
565
attached to the node.
566
'name' is the name to give the node.
568
Note: Exported nodes are automatically given the name of
569
the exported port. The power node is called "power"
570
and the ground node "ground". The extracted nodes
571
are created by the EXTRACT command.
572
The SET NODE-NAME command is useful to identify
573
particular nodes when generating a ALS simulation
574
file or running the VERIFY command.
576
SET OUTPUT-DEVICE: Set the output device to a log file.
578
Syntax: SET OUTPUT-DEVICE file_name
580
where 'file_name' is the name of the file to open as a log
581
file. Note that all regular output from QUISC will
582
be written to the file only but prompts and error
583
messages will still appear on the terminal.
584
If file_name is omitted, any previously openned log
585
file is closed and output is routed to the terminal.
587
SET PORT-DIRECTION: Set the directions that a port on a leaf
588
cell can be attached to.
590
Syntax: SET PORT-DIRECTION cell_name port_name U|D|R|L
592
where 'cell_name' is the name of the leaf cell.
593
'port_name' is the name of the port on the leaf cell.
594
'U' represents connection upwards (from top).
595
'D' represents connection downwards (from bottom).
596
'R' represents connection from right side.
597
'L' represents connection from left side.
599
Note: Multiple directions can be given in one command and
600
order is not significant.
602
SELECT: Set one of the complex cells as current.
604
Syntax: SELECT cell_name
606
where 'cell_name' is the name of the complex cell to be
607
selected. The cell must be selected before placement
608
and routing can take place. Note that the last
609
created complex cell is automatically selected as
612
SHOW: Show various elements of the QUISC database.
616
where 'option' is the particular database item(s).
618
SHOW CELLS: Show the complex cells in the QUISC database.
622
Note: The currently selected cell is indicated by an arrow.
624
SHOW INSTANCES: Show the instances within a complex cell.
626
Syntax: SHOW INSTANCES [cell [ALL]]
628
where 'cell' is the optional name of a complex cell. If
629
"cell" is not specified, the currently selected cell
630
is used. if 'cell' is specified, an additional
631
parameter 'ALL' can be given which lists special
632
instances. Otherwise only instances of leaf or
633
complex cells are shown.
635
Output: inst_name TYPE = inst_type
637
where 'inst_name' is the name of the instance.
638
'inst_type' is the complex or leaf cell of this
641
SHOW NODES: Show the electrically extracted nodes for the
642
currently selected complex cell.
646
Output: NODE number name:
647
{inst_name port_name}
649
where 'number' is the number of the node.
650
'name' is the name of the node.
651
'inst_name' is the name of the instance.
652
'port_name' is the name of the port on the instance.
654
SHOW NODES output parameter = 'number'
656
'number' is a unique number of the electrical node at the
657
current level of the hierarchy. Node number 0 is reserved
658
for GROUND and Node number 1 is reserved for POWER. The rest
659
of the numbers are assigned arbitrarily.
661
SHOW NODES output parameter = 'name'
663
'name' is a alphanumeric name for the node. The ground node
664
is automatically given the name 'ground' and the power node
665
the name 'power'. Nodes which are exported at the current
666
level are given the name of the exported port. All other
667
nodes are given a name of the form:
668
'nXXX' where XXX is a unique number.
670
SHOW LEAF-CELL-NUMBERS: Show numbers tagged to leaf cells which
671
are used by QUISC during placement and
674
Syntax: SHOW LEAF-CELL-NUMBERS name
676
where 'name' is the name of a leaf cell in the current
677
library. The current numbers are:
679
- distance from top edge to active region.
680
- distance from bottom edge to active region.
681
- distance from left edge to active region.
682
- distance from right edge to active region.
684
SHOW PLACEMENT: Show the resulting placement of cells in a
685
complex cell after placement.
687
Syntax: SHOW PLACEMENT [cell]
689
where 'cell' is the name of the complex cell. If no cell
690
name is specified, the currently selected cell is
693
Output: ROW #number, SIZE xxx:
696
where 'number' is the number of the row. The bottom row
697
is number zero and the increment as you go upward.
698
'xxx' is the size of the row (length) in internal
700
'xpos' is the position of the left corner of the
701
cell in the row in internal units.
702
'cell' is the name of the leaf cell at this position.
704
SHOW PORTS: Show the ports of a complex or leaf cell.
706
Syntax: SHOW PORTS [cell]
708
where 'cell' is the name of the complex or leaf cell whose
709
ports you wish to see. If 'cell' is not specified,
710
the ports of the currently selected complex cell are
713
Output: port type direction
715
where 'port' is the name of the port.
716
'type' is the type of the port (input, output, power,
718
'direction' is the directions that the port can be
719
attached to (up, down, left, and/or right).
721
SHOW ROUTING: Show the routing channels and tracks created by
722
the QUISC Routing Module.
724
Syntax: SHOW ROUTING [cell]
726
where 'cell' is the name of the complex cell for which
727
you want to see the created routing for. If 'cell'
728
is not specified, the routing for the currently
729
selected complex cell is displayed.
731
Output: { CHANNEL #chan_num:
733
{ Node #node_num - (leftx, rightx)
734
{ PORT AT (row_num, xpos) - inst port }
739
where 'chan_num' is the number of the routing channel.
740
Number zero is the bottom channel (below row #0) and
741
the number increases as you go up.
742
'track_num' is the number of the track in the channel.
743
Number zero is the top track in the channel and
744
subsequent tracks are beneath.
745
'node_num' is the number of the electrically unique
747
'leftx' is the leftmost position of the node.
748
'rightx' is the rightmost position of the node.
749
'row_num' is the number of the row the instance being
751
'xpos' is the X position of the port being connected
753
'inst' is the name of the instance being connected
755
'port' is the name of the port on the instance.
757
SYSTEM: Execute a system command.
759
Syntax: SYSTEM [command {parameters}]
761
where 'command' is the system command to be executed.
762
'parameters' is an optional list of parameters passed
763
onto the system command.
765
Note: If no command is given, a system shell (spawned
766
process) is created which allows multiple commands to
769
SIMULATION: Set, display, or generate simulation information for
770
both complex cells and leaf cells.
772
Syntax: SIMULATION SET cell_name
773
SIMULATION SHOW cell_name
774
SIMULATION WRITE cell_name [file_name]
775
SIMULATION FORMAT type
777
where 'cell_name' is the name of the complex or leaf cell.
778
'file_name' is an optional name to call the generated
779
simulation file. If file_name is not specified, the
780
generated file has the name 'cell_name'.NET.
781
'type' is either ALS or SILOS
783
Note: Only complex cells may be specified in SIMULATION
784
WRITE command. The simulation information for leaf
785
cells is tagged to the cells and is written with the
786
cells when they are saved in a library.
788
VERIFY: Verify the cells constructed in the QUISC database.
792
This command checks all the cells created in the QUISC
793
database for the following error conditions:
795
(1) Power shorted to ground.
796
(2) More than one output driving the same node.
797
(3) Nothing driving a node.
798
(4) Two or more nodes with the same name.
800
If an error conditions is found, a warning message giving the
801
name of the cell, the error condition, and the node name is