Uploaded by Sathya SaiBaba (Great Unified Field)

Astro™ User Guide: Parameters

advertisement
Astro™
User Guide: Parameters
Version Z-2007.03, September 2007
Comments?
Send comments on the documentation by going
to http://solvnet.synopsys.com, then clicking
“Enter a Call to the Support Center.”
Copyright Notice and Proprietary Information
Copyright © 2007 Synopsys, Inc. All rights reserved. This software and documentation contain confidential and proprietary
information that is the property of Synopsys, Inc. The software and documentation are furnished under a license agreement and
may be used or copied only in accordance with the terms of the license agreement. No part of the software and documentation may
be reproduced, transmitted, or translated, in any form or by any means, electronic, mechanical, manual, optical, or otherwise,
without prior written permission of Synopsys, Inc., or as expressly provided by the license agreement.
Right to Copy Documentation
The license agreement with Synopsys permits licensee to make copies of the documentation for its internal use only.
Each copy shall include all copyrights, trademarks, service marks, and proprietary rights notices, if any. Licensee must
assign sequential numbers to all copies. These copies shall contain the following legend on the cover page:
“This document is duplicated with the permission of Synopsys, Inc., for the exclusive use of
__________________________________________ and its employees. This is copy number __________.”
Destination Control Statement
All technical data contained in this publication is subject to the export control laws of the United States of America.
Disclosure to nationals of other countries contrary to United States law is prohibited. It is the reader’s responsibility to
determine the applicable regulations and to comply with them.
Disclaimer
SYNOPSYS, INC., AND ITS LICENSORS MAKE NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH
REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
Registered Trademarks (®)
Synopsys, AMPS, Cadabra, CATS, CRITIC, CSim, Design Compiler, DesignPower, DesignWare, EPIC, Formality, HSIM,
HSPICE, iN-Phase, in-Sync, Leda, MAST, ModelTools, NanoSim, OpenVera, PathMill, Photolynx, Physical Compiler,
PrimeTime, SiVL, SNUG, SolvNet, System Compiler, TetraMAX, VCS, Vera, and YIELDirector are registered trademarks
of Synopsys, Inc.
Trademarks (™)
AFGen, Apollo, Astro, Astro-Rail, Astro-Xtalk, Aurora, AvanWaves, Columbia, Columbia-CE, Cosmos,
CosmosEnterprise, CosmosLE, CosmosScope, CosmosSE, DC Expert, DC Professional, DC Ultra, Design Analyzer,
Design Vision, DesignerHDL, Direct Silicon Access, Discovery, Encore, Galaxy, HANEX, HDL Compiler, Hercules,
plus
Hierarchical Optimization Technology, HSIM
, HSPICE-Link, i-Virtual Stepper, iN-Tandem, Jupiter, Jupiter-DP,
JupiterXT, JupiterXT-ASIC, Liberty, Libra-Passport, Library Compiler, Magellan, Mars, Mars-Xtalk, Milkyway,
ModelSource, Module Compiler, Planet, Planet-PL, Polaris, Power Compiler, Raphael, Raphael-NES, Saturn, Scirocco,
Scirocco-i, Star-RCXT, Star-SimXT, Taurus, TSUPREM-4, VCS Express, VCSi, VHDL Compiler, VirSim, and VMC are
trademarks of Synopsys, Inc.
Service Marks (SM)
MAP-in, SVP Café, and TAP-in are service marks of Synopsys, Inc.
SystemC is a trademark of the Open SystemC Initiative and is used under license.
ARM and AMBA are registered trademarks of ARM Limited.
Saber is a registered trademark of SabreMark Limited Partnership and is used under license.
All other product or company names may be trademarks of their respective owners.
Astro User Guide: Parameters, version Z-2007.03
ii
Contents
1.
What’s New in This Release . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
xxxii
About This Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
xxxii
Customer Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
xxxvi
Clock Tree Parameters
Clock Tree Synthesis General Behavior Parameters . . . . . . . . . . . . . . . . . . . . . . . .
best condition, typical condition, worst condition . . . . . . . . . . . . . . . . . . . . . . . .
cto: buffer sizing
cto: buffer relocation
cto: cell sizing
cto: cell relocation
cto: level adjustment
cto: delay insertion
cto: dummy load insertion
cto: reconfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
delay insertion before gate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gated clock tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
move clock gates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
size up clock gates. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Clock Tree Synthesis Legalization-Controlling
Placement Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ECO placement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ECO weight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
legalize placement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-3
1-4
1-5
1-7
1-8
1-9
1-9
1-10
1-11
1-11
1-12
1-13
iii
iv
set OV maximum displacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-13
Clock Tree Synthesis Effort-Related Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . .
clustering effort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
reclustering iterations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
synthesis effort. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-14
1-15
1-16
1-16
Clock Tree Synthesis Clock Constraint Targets Parameters . . . . . . . . . . . . . . . . . . .
target: best transition delay fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
target: best transition delay rise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
target: clock insertion delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
target: clock skew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
target: load capacitance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
target fanout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
target load relax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
target: transition delay fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
target: transition delay rise. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
target: worst transition delay fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
target: worst transition delay rise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-17
1-18
1-19
1-20
1-20
1-21
1-21
1-22
1-22
1-23
1-24
1-25
Clock Tree Synthesis Clock Constraint Rules Parameters . . . . . . . . . . . . . . . . . . . .
rule: maximum capacitance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
rule: maximum insertion delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
rule: maximum skew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
rule: maximum transition delay fall. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
rule: maximum transition delay rise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
rule: maximum wire length. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
rule: minimum insertion delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
rule: minimum transition delay fall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
rule: minimum transition delay rise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
rule maximum buffer levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
rule maximum fanout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-26
1-27
1-28
1-28
1-29
1-29
1-30
1-31
1-31
1-32
1-32
1-33
Clock Optimization Parameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
cto: FF relocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
cto: FF sizing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
cto: latch relocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
cto: latch sizing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
optimization level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-34
1-34
1-35
1-35
1-35
1-36
Clock Routing Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ECO Route . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
set default route rule on bottom level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
set default route rule on leaf net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-37
1-37
1-38
1-38
Stand-Alone Clock Optimization Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
delay balance: clock skew offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
delay balance: insertion delay offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
fix load cap violation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
fix transition violation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
minimize placement changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
minimize placement changes effort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-39
1-39
1-40
1-40
1-41
1-41
1-42
Other Clock Tree Synthesis Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
clock tree root minimum fanout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CTA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
explore clock tree. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
fix ignore pins violations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
leaf net transition constraint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
length fixed buffer insertion on top. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
logic level balance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
number of hookup pins per cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
real clock useful skew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
skew type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
update congestion map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
use global route . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
wire capacitance accuracy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-43
1-44
1-44
1-45
1-46
1-46
1-47
1-47
1-48
1-48
1-49
1-49
1-50
1-51
Changing Standard Naming Convention Parameters . . . . . . . . . . . . . . . . . . . . . . . .
bottom level buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
buffer instance prefix name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
configuration output file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
file name: buffer instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
file name: clock tree timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
file name: cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
file name: FF relationship . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
file name: re-synthesis nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
file name: synthesized clock tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-52
1-53
1-53
1-54
1-54
1-55
1-56
1-56
1-56
1-57
v
2.
3.
vi
file name: synthesized nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
net prefix name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-57
1-58
Changing Default Interpretation of Clock Constraint
Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ignore library constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ignore library maximum capacitance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ignore library maximum fanout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ignore library maximum transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ignore SDC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ignore SDC maximum capacitance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ignore SDC maximum fanout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ignore SDC maximum transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ignore set_clock_latency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ignore set_clock_transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ignore set_clock_uncertainty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-59
1-60
1-60
1-61
1-61
1-62
1-62
1-63
1-63
1-63
1-64
1-65
Common Graph Parameters
CGHIER_ENABLE_FAST_REPAIR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-3
cg_opt_context_flag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-3
disable_escape_char . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-4
dont_touch_nets_connecting_ls_and_io . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-4
dont_use_means_dont_touch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-5
enable_ibt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-5
enable_connection_class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-6
max_boolean_syntax_warnings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-6
optimize_mix_signal_net. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-7
replace_backslash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-7
save_cell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-8
Crosstalk Parameters
xtDeltaDelayScale. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3
xtDeltaTransScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3
4.
xtEnableRailToRailDeltaDelay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-4
xtNoAdaptiveInMediumEffort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-5
xtNumOfTopAggr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-6
xtTimingWindowHighEffort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-6
xtUseAdaptiveDetailWvfmThresh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-7
xtUseNoiseWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-9
xtXtalkDetailWvfmThreshold. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-10
Detail Route Parameters
accessPolyPin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-24
accumFloatingWireArea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-24
adjustLineViaArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-25
advancedRouteLoops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-26
advRouteLoop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-27
areaNeedDoubleVia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-28
areaNeedDoubleViaDRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-29
areaSrLoop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-29
autoSaveInterval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-30
autoSrLoop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-31
avoidWireOverlap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-32
blockageAsFatWire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-33
breakAntennaToTopPin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-34
checkAntennaOnPG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-35
checkCellPinMinArea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-36
checkIsoViaByNetType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-38
checkMergedFatWire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-38
checkTopPinMinArea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-40
checkViaArrayMaxStackLevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-41
vii
viii
connBrokenNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-42
connTieOff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-43
connTieRail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-44
cornerSpacingMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-45
defaultDiodeProtect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-45
defaultGateSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-46
defaultTopPinExtAntennaArea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-47
defaultTopPinExtGateSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-47
defaultViaExceedFatContactThreshold. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-48
defaultWidthForStub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-49
diagonalDRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-50
diagonalMinWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-51
doAntennaConx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-52
doMaxCapConx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-54
doMaxTransConx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-55
dontMakePinFat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-55
dontMergeGateForAntenna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-57
dontRotateVia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-57
dontShortDiffEEQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-59
doProbeConx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-59
doSelectedNetAntennaConx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-60
doXtalkConx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-61
dropVia1InsideM1Pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-61
ecoListToFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-62
ecoMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-63
ecoScope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-64
ecoSrLoop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-65
eolEnclosureOnVia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-66
expandFillTracks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-67
fatSpacingToSameNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-68
feedThruPinTaper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-69
fillDataType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-70
fillEndByMinSpcPercent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-71
fillMetalCloseToMinDensityValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-72
fillMetalUniformly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-73
fillNotch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-73
fillViaDataType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-74
fixMinEdgeLengthByFilling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-75
floatingWireIsGateDischarge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-76
floatingWireMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-77
followPolyTrkForPolyFill . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-78
groupSrLoop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-78
hardMaxLayerConx. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-79
hardMinLayerConx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-80
highEffortViaDoubling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-81
ignoreFloatingWireSpacing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-82
ignoreFloatingWireToBlockageSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-83
ignoreFrozenNetDRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-84
ignoreMetalExtensionRule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-85
ignoreNotchDRC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-86
ignoreSameNetAdjacentViaDRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-87
ignoreTopBndy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-87
ignoreVarSpacingToPG. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-88
ignoreViaRegion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-90
isolatedViaQuadrantSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-91
isolatedViaSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-92
ix
x
layerLengthLimit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-92
lessMinAreaStackCost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-93
limitPolyLength
limitM1Length
limitM2Length
limitM3Length
limitM4Length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-94
lineViaFollowPrefDir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-96
lowSkewClkRoute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-97
M1EolTip2SideSpacing
M2EolTip2SideSpacing
M3EolTip2SideSpacing
M4EolTip2SideSpacing
M5EolTip2SideSpacing
M6EolTip2SideSpacing
M7EolTip2SideSpacing
M8EolTip2SideSpacing
M9EolTip2SideSpacing
M10EolTip2SideSpacing
M11EolTip2SideSpacing
M12EolTip2SideSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-97
m1FloatingWireArea
m2FloatingWireArea
m3FloatingWireArea
m3FloatingWireArea
m4FloatingWireArea
m5FloatingWireArea
m6FloatingWireArea
m7FloatingWireArea
m8FloatingWireArea
m9FloatingWireArea
m10FloatingWireArea
m11FloatingWireArea
m12FloatingWireArea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-99
M1FloatingWirePLength1
M2FloatingWirePLength1
M3FloatingWirePLength1
M4FloatingWirePLength1
M5FloatingWirePLength1
M6FloatingWirePLength1
M7FloatingWirePLength1
M8FloatingWirePLength1
M9FloatingWirePLength1
M10FloatingWirePLength1
M11FloatingWirePLength1
M12FloatingWirePLength1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-100
M1FloatingWirePLength2
M2FloatingWirePLength2
M3FloatingWirePLength2
M4FloatingWirePLength2
M5FloatingWirePLength2
M6FloatingWirePLength2
M7FloatingWirePLength2
M8FloatingWirePLength2
M9FloatingWirePLength2
M10FloatingWirePLength2
M11FloatingWirePLength2
M12FloatingWirePLength2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-102
M1FloatingWirePLength3
M2FloatingWirePLength3
M3FloatingWirePLength3
M4FloatingWirePLength3
M5FloatingWirePLength3
M6FloatingWirePLength3
M7FloatingWirePLength3
M8FloatingWirePLength3
M9FloatingWirePLength3
M10FloatingWirePLength3
M11FloatingWirePLength3
M12FloatingWirePLength3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-104
xi
xii
M1FloatingWirePLength4
M2FloatingWirePLength4
M3FloatingWirePLength4
M4FloatingWirePLength4
M5FloatingWirePLength4
M6FloatingWirePLength4
M7FloatingWirePLength4
M8FloatingWirePLength4
M9FloatingWirePLength4
M10FloatingWirePLength4
M11FloatingWirePLength4
M12FloatingWirePLength4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-106
M1FloatingWirePLength5
M2FloatingWirePLength5
M3FloatingWirePLength5
M4FloatingWirePLength5
M5FloatingWirePLength5
M6FloatingWirePLength5
M7FloatingWirePLength5
M8FloatingWirePLength5
M9FloatingWirePLength5
M10FloatingWirePLength5
M11FloatingWirePLength5
M12FloatingWirePLength5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-108
M1FloatingWirePLMinSpc1
M2FloatingWirePLMinSpc1
M3FloatingWirePLMinSpc1
M4FloatingWirePLMinSpc1
M5FloatingWirePLMinSpc1
M6FloatingWirePLMinSpc1
M7FloatingWirePLMinSpc1
M8FloatingWirePLMinSpc1
M9FloatingWirePLMinSpc1
M10FloatingWirePLMinSpc1
M11FloatingWirePLMinSpc1
M12FloatingWirePLMinSpc1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-110
M1FloatingWirePLMinSpc2
M2FloatingWirePLMinSpc2
M3FloatingWirePLMinSpc2
M4FloatingWirePLMinSpc2
M5FloatingWirePLMinSpc2
M6FloatingWirePLMinSpc2
M7FloatingWirePLMinSpc2
M8FloatingWirePLMinSpc2
M9FloatingWirePLMinSpc2
M10FloatingWirePLMinSpc2
M11FloatingWirePLMinSpc2
M12FloatingWirePLMinSpc2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-112
M1FloatingWirePLMinSpc3
M2FloatingWirePLMinSpc3
M3FloatingWirePLMinSpc3
M4FloatingWirePLMinSpc3
M5FloatingWirePLMinSpc3
M6FloatingWirePLMinSpc3
M7FloatingWirePLMinSpc3
M8FloatingWirePLMinSpc3
M9FloatingWirePLMinSpc3
M10FloatingWirePLMinSpc3
M11FloatingWirePLMinSpc3
M12FloatingWirePLMinSpc3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-114
M1FloatingWirePLMinSpc4
M2FloatingWirePLMinSpc4
M3FloatingWirePLMinSpc4
M4FloatingWirePLMinSpc4
M5FloatingWirePLMinSpc4
M6FloatingWirePLMinSpc4
M7FloatingWirePLMinSpc4
M8FloatingWirePLMinSpc4
M9FloatingWirePLMinSpc4
M10FloatingWirePLMinSpc4
M11FloatingWirePLMinSpc4
M12FloatingWirePLMinSpc4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-116
xiii
xiv
M1FloatingWirePLMinSpc5
M2FloatingWirePLMinSpc5
M3FloatingWirePLMinSpc5
M4FloatingWirePLMinSpc5
M5FloatingWirePLMinSpc5
M6FloatingWirePLMinSpc5
M7FloatingWirePLMinSpc5
M8FloatingWirePLMinSpc5
M9FloatingWirePLMinSpc5
M10FloatingWirePLMinSpc5
M11FloatingWirePLMinSpc5
M12FloatingWirePLMinSpc5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-118
m1FloatingWireSpacing
m2FloatingWireSpacing
m3FloatingWireSpacing
m4FloatingWireSpacing
m5FloatingWireSpacing
m6FloatingWireSpacing
m7FloatingWireSpacing
m8FloatingWireSpacing
m9FloatingWireSpacing
m10FloatingWireSpacing
m11FloatingWireSpacing
m12FloatingWireSpacing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-120
m1PinNoOffsetVia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-121
M1StubMode
M2StubMode
M3StubMode
M4StubMode
M5StubMode
M6StubMode
M7StubMode
M8StubMode
M9StubMode
M10StubMode
M11StubMode
M12StubMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-122
m1WireCost
m2WireCost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-124
macroPinCenterConn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-125
maxAntennaPinCount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-126
maxAntennaRatio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-127
maxAntennaRatioScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-128
maxCutAntennaRatio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-129
maxOffGridTrack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-130
maxStackRange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-131
maxTieOffDistance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-132
metalFillDensityIncrement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-133
minAntennaRatioScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-133
minLengthCheckCutMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-134
minShieldLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-135
neighboringLayerFatExtensionRange. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-136
neighboringLayerFatThreshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-137
neighboringLayerM1RecommendedSpacing
neighboringLayerM2RecommendedSpacing
neighboringLayerM3RecommendedSpacing
neighboringLayerM4RecommendedSpacing
neighboringLayerM5RecommendedSpacing
neighboringLayerM6RecommendedSpacing
neighboringLayerM7RecommendedSpacing
neighboringLayerM8RecommendedSpacing
neighboringLayerM9RecommendedSpacing
neighboringLayerM10RecommendedSpacing
neighboringLayerM11RecommendedSpacing
neighboringLayerM12RecommendedSpacing. . . . . . . . . . . . . . . . . . . . . . . . . .
4-138
noOffGridRouting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-140
noOffsetFatVia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-142
numCPUs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-143
offGridCost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-143
offsetFillTrack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-144
optDelaySlackTarget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-145
optDelaySrLoop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-145
optimizeRouteGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-146
xv
xvi
optSetup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-147
optSrLoop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-148
optViaHoldTimeThreshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-149
optViaReportExcludedNets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-150
optViaSetupSlackThreshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-151
optViaSrLoop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-152
optViaTimingDriven. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-152
outputPinDischarge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-153
parallelLengthMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-154
pinTaperLengthLimit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-155
pinTaperMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-156
polyContIsolatedViaQuadrantSpacing
via1IsolatedViaQuadrantSpacing
via2IsolatedViaQuadrantSpacing
via3IsolatedViaQuadrantSpacing
via4IsolatedViaQuadrantSpacing
via51IsolatedViaQuadrantSpacing
via6IsolatedViaQuadrantSpacing
via7IsolatedViaQuadrantSpacing
via8IsolatedViaQuadrantSpacing
via9IsolatedViaQuadrantSpacing
via10IsolatedViaQuadrantSpacing
via11IsolatedViaQuadrantSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-157
polyContIsolatedViaSpacing
via1IsolatedViaSpacing
via2IsolatedViaSpacing
via3IsolatedViaSpacing
via4IsolatedViaSpacing
via5IsolatedViaSpacing
via6IsolatedViaSpacing
via7IsolatedViaSpacing
via81IsolatedViaSpacing
via9IsolatedViaSpacing
via10IsolatedViaSpacing
via11IsolatedViaSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-158
polycontMacroDensity
via1MacroDensity
via2MacroDensity
via3MacroDensity
via4MacroDensity
via5MacroDensity
via6MacroDensity
via7MacroDensity
via8MacroDensity
via9MacroDensity
via10MacroDensity
via11MacroDensity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-160
polyMacroDensity
m1MacroDensity
m2MacroDensity
m3MacroDensity
m4MacroDensity
m5MacroDensity
m6MacroDensity
m7MacroDensity
m8MacroDensity
m9MacroDensity
m10MacroDensity
m11MacroDensity
m12MacroDensity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-161
polyWireCost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-163
portSingleConn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-164
readMetalBlockageLayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-165
removeObsoleteStub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-166
reportLimit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-166
rerouteUserWire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-167
rerunDRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-168
resetMinMaxLayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-168
rotateLineViaArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-169
shieldRerouteSignalNets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-170
shieldViaMinSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-171
shiftVarWidthWire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-172
xvii
xviii
smallJogMinLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-173
srLoop. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-173
stdCellBlockageAsThin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-174
stopIfNoLicense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-176
stub2stubOnly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-177
timeLimit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-177
timingDriven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-178
timingSpace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-179
topAntennaFixRange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-180
treatTiedFillAsFillToFillSpacing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-181
trimUserAntenna. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-182
ultraWideWireMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-183
useSideWallForAntenna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-183
V1NoOffGridRouting
V2NoOffGridRouting
V3NoOffGridRouting
V4NoOffGridRouting
V5NoOffGridRouting
V6NoOffGridRouting
V7NoOffGridRouting
V8NoOffGridRouting
V9NoOffGridRouting
V10NoOffGridRouting
V11NoOffGridRouting
V12NoOffGridRouting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-184
varSpacingToSameNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-186
viaOverMaxLayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-187
wideMacroPinAsFatWire. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-188
wideWireToInputPin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-189
wideWireToMacroPin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-190
wideWireToOutputPin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-191
wideWireToPadPin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-192
5.
wideWireToTopPin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-193
wideWireWidthAsMin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-194
wireWidenForceWrongWay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-195
wireWidenIgnoreMinEdgeLengthVio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-196
wireWidenPieceWise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-197
wireWidenSrLoop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-198
wireWidenTimingDriven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-198
wireWidenWidthScheme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-199
wrongWayExtraCost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-200
wrongWayNoVia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-201
Global Route Parameters
accessPolyPin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-6
avoidCouplingUser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-6
avoidXtalk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-7
blncdToSkewCntrlRatio. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-8
blockEdgeAccess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-8
brokenNetsThresholdPercent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-9
clockBalanced. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-9
clockComb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-10
combDistance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-10
combMaxConnections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-11
compactMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-12
congestionWeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-12
densityDriven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-13
detourLimitMinNetLen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-14
extraCostsApplyPercent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-14
extraWireLengthOpt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-15
xix
xx
forceUpperLayersForCritNets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-15
horReserveTracks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-16
ignoreViaBlockage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-16
incremental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-17
macroBndryDir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-18
macroBndryExt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-19
macroBndryTrkUtil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-19
macroBndryWidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-20
macroCornerTrkUtil. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-21
mapOnly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-21
maxDetourPercent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-22
netCriticality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-22
noTopLevelBusFeedThroughs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-23
paEqPinNetMaxPort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-24
powerDriven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-24
rcOptByLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-25
reportDemandOnly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-25
reportEffectiveOverflow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-26
reportGCellDensity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-26
reportNetOrdering. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-27
reserveTracksForPowerFile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-28
skewControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-28
skewControlNetBBLowBound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-29
skewControlWeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-29
speed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-30
timingDriven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-31
timingWeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-31
turboMode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-32
6.
VABoundaryToLSWeight. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-32
verReserveTracks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-33
xtalkWeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-33
Layout Parasitic Extraction Parameters
BlockEdgeAccess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-4
capMultiplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-4
diaGlinkRCMultFactor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-5
drOptContEstimate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-5
ekIgnoreShieldNDRinDR
ekShieldNDRinDRPro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-6
ignoreVrClockNetSpanScalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-7
ignoreVrNetSpanLengthScalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-8
includePinGeomRes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-8
incRCExtraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-9
lengthPerVia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-10
longPinGeomSpec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-10
MetalnUtil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-11
mixedRCExtraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-12
orthCoupleMultiplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-12
paraCoupleMultiplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-13
resMultiplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-13
split . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-14
splitThreshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-14
starRCExtraction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-15
usePreCalCap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-16
usePreroutedSegsInVR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-16
useRouteSegsFileInVR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-17
useRuleCapTab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-18
xxi
7.
xxii
viasPerEdge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-18
vrCheckUseLumpPinBoxNumLimit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-19
Placement-Driven Synthesis Optimization Parameters
aggOpt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-5
buf_ins_hold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-5
flag_cr_opt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-6
hfn_fanout_threshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-6
hfn_max_fanouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-7
max_iteration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-7
max_level_buffer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-8
max_runtime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-8
max_utilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-9
move_flip_flop. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-9
no_new_instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-10
ov_max_displaced_cells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-10
ov_max_displacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-11
pds_message_level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-11
pr_use_fpclass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-12
routeOpt_fast_level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-13
slack_range_hold_max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-13
slack_range_hold_min . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-14
slack_range_setup_max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-14
slack_range_setup_min . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-15
target_hold_slack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-16
target_setup_slack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-16
target_utilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-17
topo_only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-17
8.
use_child_router . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-18
use_global_cost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-19
wire_delay_model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-19
xtalk_noise_limit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-20
Placement Parameters
allowOnSoftMacro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-10
autoMacroPadding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-10
clockMode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-11
clusterGap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-12
clusterMaxMove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-12
clusterOn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-13
clusterSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-13
congDriven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-14
cornerProtect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-14
createMap. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-15
detailMap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-16
doMove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-16
doSwap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-17
ecoBalance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-18
ecoHonorPadding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-18
ecoMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-19
ecoWinsize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-20
enableLefDefRows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-20
extraSpaceM2Strap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-21
extraSpaceM3Strap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-22
fcNetWeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-22
fcSMNetWeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-23
xxiii
xxiv
firstCut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-23
fixMHTile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-24
gradPlaceInForce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-25
gradPlaceMove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-25
gradPlaceMoveMethod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-26
gradPlaceResolution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-27
gradPlaceRestoreBest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-28
gradPlacerIter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-28
gradPlacerOutForce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-29
guardBandX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-29
guardBandY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-30
highlightCell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-31
horIOPinLayer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-31
idealSlack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-32
includeSoft . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-32
instPadding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-33
IOnetWeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-34
ioPlace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-34
ipoRegionByConn. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-35
macroExpandFactor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-36
macroNetWeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-36
macroPadBlkType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-37
magnetPlacebyWt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-37
magnetPlaceForce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-38
magnetPlaceIgnoreSoftBlk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-39
magnetPlaceLevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-39
magnetPlaceMoveFix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-40
magnetPlaceMoveSoftFix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-40
magnetPlaceStatus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-41
magnetPlaceStopPullingAtSeq. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-42
mapOffsetH. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-42
mapOffsetV. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-43
markCellSoftFix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-43
masterPadding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-44
maxSorIter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-45
minLocalUtil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-46
minMacroGap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-46
minMacroPad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-47
NetlistOpt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-47
noCellUnderM0
noCellUnderM1
noCellUnderM2
noCellUnderM3
noCellUnderM4
noCellUnderM5
noCellUnderM6
noCellUnderM7
noCellUnderM8
noCellUnderM9
noCellUnderM10
noCellUnderM11
noCellUnderM12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-48
noCellUnderV01
noCellUnderV12
noCellUnderV23
noCellUnderV34
noCellUnderV45
noCellUnderV56
noCellUnderV67
noCellUnderV78
noCellUnderV87
noCellUnderV98
noCellUnderV1011
noCellUnderV1112 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-49
xxv
xxvi
noShortAtM0
noShortAtM1
noShortAtM2
noShortAtM3
noShortAtM4
noShortAtM5
noShortAtM6
noShortAtM7
noShortAtM8
noShortAtM9
noShortAtM10
noShortAtM11
noShortAtM12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-50
noUserSetPinUnderM1
noUserSetPinUnderM2
noUserSetPinUnderM3
noUserSetPinUnderM4
noUserSetPinUnderM5
noUserSetPinUnderM6
noUserSetPinUnderM7
noUserSetPinUnderM8
noUserSetPinUnderM9
noUserSetPinUnderM10
noUserSetPinUnderM11
noUserSetPinUnderM12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-51
oneSMPerIsland . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-53
onGrid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-53
optPinHorLayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-54
optPinVerLayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-54
padMacro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-55
partUtilMinUpperBound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-55
pinAccessHorz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-56
pinAccessVert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-56
placeFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-57
predictPgStackVia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-58
preRouteMergeLimit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-58
preserveCouplingMap. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-59
readPlanGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-59
regionConst . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-60
regRigidity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-61
reportECO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-61
restoreFillerSnapShot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-62
secondCut. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-63
seeBus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-63
seeClkRing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-64
seeClkStrap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-65
seeContactArr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-66
seePath. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-66
seePGPinCon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-67
seePGRing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-68
seePGStrap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-69
seeRect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-69
seeUser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-70
skipPrelim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-71
slackTarget . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-71
sortObjByID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-72
spacingWeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-72
speed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-73
strongExclusiveness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-73
summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-74
thermConduct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-75
timingDriven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-75
timingWeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-76
triNetWeight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-76
unitTileOrient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-77
xxvii
9.
useDHCell. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-77
verIOPinLayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-78
voltDriven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-79
windowOV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-79
Rectilinear Parameters
allowMovePG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-4
controlparameter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-4
core2Bottom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-5
core2Left. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-6
core2Right . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-6
core2Top . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-7
doubleBack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-7
flipfirst . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-8
forceTrackAlignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-8
lengthMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-9
macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-9
rotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-10
rowDirction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-11
rowRatio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-11
rpinECO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-12
startfirst . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-12
stdcells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-13
utilization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-13
10. Timing Parameters
all_macro_as_VR_block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-5
ata_crp_transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-5
ata_crpr_threshold_ps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-6
xxviii
capture_path_propagate_worst_slew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-7
case_analysis_disable_entire_path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-8
case_analysis_sequential_propagation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-9
clock_cell_has_multiple_edge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-9
clock_gating_propagate_enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-10
disable_cond_default_arcs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-11
driving_cell_include_cell_delay. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-12
early_launch_at_borrowing_latches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-12
group_path_opt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-14
late_recycle_memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-14
max_RG_size_multiplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-15
multicycle_hold_follow_setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-16
non_unate_clock_compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-17
print_Clock_Timing_For_Mixed_Edges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-17
pulse_latch_as_ICG_cell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-18
rc_degrade_min_slew_when_rd_less_than_rnet . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-19
remove_Escape_From_Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-19
report_timing_through_sync_pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-20
rpt_max_cap_multiplier. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-21
rpt_max_tran_multiplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-21
rpt_min_cap_multiplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-22
rpt_min_tran_multiplier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-22
splitEK. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10-23
11. Track Assignment Parameters
densityDriven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-3
evenSpaceAdjustment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-4
m n LayerLengthLimit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-4
xxix
xxx
minimizeJog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-5
netLayerLengthLimit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-5
noiseThreshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-6
noOffGridRouting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-7
parallelLimit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-7
parallelLimitMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-8
runTimeMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-8
runTimingMode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-9
runXTalkIter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-10
runXTalkMode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-10
timingCost. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-11
tryGlobalLayerFirst . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-12
tryGlobalLayerOnly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-12
variableWidthAdjustment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-13
XTalkParam. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11-14
Preface
FIX ME!
This preface includes the following sections:
•
What’s New in This Release
•
About This Guide
•
Customer Support
xxxi
What’s New in This Release
Information about new features, enhancements, and changes;
known problems and limitations; and resolved Synopsys Technical
Action Requests (STARs) is available in the Astro Release Notes in
SolvNet.
To see the Astro Release Notes,
1. Go to http://solvnet.synopsys.com/ReleaseNotes. (If prompted,
enter your user name and password. If you do not have a
Synopsys user name and password, follow the instructions to
register with SolvNet.)
2. Click Astro, then click the release you want in the list that appears
at the bottom.
About This Guide
This user guide describes the Astro parameters. Astro is an
advanced physical design system for optimization, placement, and
routing from Synopsys. It uses a specialized architecture that
concurrently accounts for physical effects while optimizing the
design.
Audience
This user guide is for design engineers who use Astro to implement
designs. To use Astro,
•
Preface
xxxii
You need to have general knowledge of the Scheme
programming language or the tool command language (Tcl)
•
You need to be familiar with physical design principles
•
You must be familiar with the UNIX operation system
Using Swish-e With Physical Implementation Online
Help
The Swish-e program, which is provided for online Help, is not
“Licensed Software” or “Licensed Product” in your license
agreement with Synopsys. The Swish-e program is subject to the
license provisions found at http://swish-e.org, where you can also
find the source code for Swish-e.
Related Publications
For additional information about Astro, see
•
Synopsys Online Documentation (SOLD), which is included with
the software for CD users or is available to download through the
Synopsys Electronic Software Transfer (EST) system
•
Documentation on the Web, which is available through SolvNet
at http://solvnet.synopsys.com
•
The Synopsys MediaDocs Shop, from which you can order
printed copies of Synopsys documents, at
http://mediadocs.synopsys.com
You might also want to refer to the documentation for Milkyway and
the following related Synopsys products:
•
Library Compiler
•
Design Compiler
Preface
xxxiii
•
IC Compiler
•
Physical Compiler
•
PrimeTime
•
Astro-Rail and PrimeRail
•
Astro Interactive Ultra
•
Star-RCXT
•
JupiterXT
See also Physical Implementation Online Help, the Astro User
Guide, and the Astro User Guide: Advanced Topics.
Preface
xxxiv
Conventions
The following conventions are used in Synopsys documentation.
Convention
Description
Courier
Indicates command syntax.
Courier italic
Indicates a user-defined value in Synopsys
syntax, such as object_name. (A user-defined
value that is not Synopsys syntax, such as a
user-defined value in a Verilog or VHDL
statement, is indicated by regular text font
italic.)
Courier bold
Indicates user input—text you type verbatim—
in Synopsys syntax and examples. (User input
that is not Synopsys syntax, such as a user
name or password you enter in a GUI, is
indicated by regular text font bold.)
[]
Denotes optional parameters, such as
pin1 [pin2 ... pinN]
|
Indicates a choice among alternatives, such as
low | medium | high
(This example indicates that you can enter one
of three possible values for an option:
low, medium, or high.)
_
Connects terms that are read as a single term
by the system, such as
set_annotated_delay
Control-c
Indicates a keyboard combination, such as
holding down the Control key and pressing c.
\
Indicates a continuation of a command line.
/
Indicates levels of directory structure.
Edit > Copy
Indicates a path to a menu command, such as
opening the Edit menu and choosing Copy.
Preface
xxxv
Customer Support
Customer support is available through SolvNet online customer
support and through contacting the Synopsys Technical Support
Center.
Accessing SolvNet
SolvNet includes an electronic knowledge base of technical articles
and answers to frequently asked questions about Synopsys tools.
SolvNet also gives you access to a wide range of Synopsys online
services including software downloads, documentation on the Web,
and “Enter a Call With the Support Center.”
To access SolvNet,
1. Go to the SolvNet Web page at http://solvnet.synopsys.com.
2. If prompted, enter your user name and password. (If you do not
have a Synopsys user name and password, follow the
instructions to register with SolvNet.)
If you need help using SolvNet, click HELP in the top-right menu bar
or in the footer.
Preface
xxxvi
Contacting the Synopsys Technical Support Center
If you have problems, questions, or suggestions, you can contact the
Synopsys Technical Support Center in the following ways:
•
Open a call to your local support center from the Web by going to
http://solvnet.synopsys.com (Synopsys user name and
password required), then clicking “Enter a Call With the Support
Center.”
•
Send an e-mail message to your local support center.
- E-mail support_center@synopsys.com from within North
America.
- Find other local support center e-mail addresses at
http://www.synopsys.com/support/support_ctr.
•
Telephone your local support center.
- Call (800) 245-8005 from within the continental United States.
- Call (650) 584-4200 from Canada.
- Find other local support center telephone numbers at
http://www.synopsys.com/support/support_ctr.
Preface
xxxvii
Preface
xxxviii
1
Clock Tree Parameters
1
You use the clock tree parameters to fine-tune the clock tree
synthesis, clock tree optimization, and clock net routing processes,
as well to define the constraints that affect clock tree synthesis and
optimization and the naming conventions that affect clock tree
synthesis.
This chapter contains the following sections:
•
Clock Tree Synthesis General Behavior Parameters
•
Clock Tree Synthesis Legalization-Controlling Placement
Parameters
•
Clock Tree Synthesis Effort-Related Parameters
•
Clock Tree Synthesis Clock Constraint Targets Parameters
•
Clock Tree Synthesis Clock Constraint Rules Parameters
1-1
•
Clock Optimization Parameters
•
Clock Routing Parameters
•
Stand-Alone Clock Optimization Parameters
•
Other Clock Tree Synthesis Parameters
•
Changing Standard Naming Convention Parameters
•
Changing Default Interpretation of Clock Constraint Parameters
Chapter 1: Clock Tree Parameters
1-2
Clock Tree Synthesis General Behavior Parameters
Table 1-1 summarizes the clock tree synthesis general behavior
parameters specific to Astro. Detailed descriptions of the parameters
follow in alphabetical order.
Table 1-1 Clock Tree Synthesis General Behavior Parameters
Parameter
Description
best condition
typical condition
worst condition
The best condition parameter optimizes the
skew for best operating conditions.
The typical condition parameter optimizes
the skew for typical operating conditions.
The worst condition parameter optimizes the
skew for worst operating conditions.
cto: buffer sizing
cto: buffer relocation
cto: cell sizing
cto: cell relocation
cto: level adjustment
cto: delay insertion
cto: dummy load insertion
cto: reconfiguration
These parameters determine the order of
operations during embedded clock tree
optimization.
delay insertion before gate
Enables or disables clock tree synthesis to add
any delay cells before clock gate.
gated clock tree
Turns gated clock tree synthesis on or off.
move clock gates
When set to 1, forces all clock gates to move to
the center of their fanout.
size up clock gates
When set to 1, forces all clock gates to the
largest size.
Clock Tree Synthesis General Behavior Parameters
1-3
best condition, typical condition, worst condition
The best condition parameter optimizes the skew for best
operating conditions.
The typical condition parameter optimizes the skew for typical
operating conditions.
The worst condition parameter optimizes the skew for worst
conditions.
These three parameters determine the relative weight given to each
operating condition. A value of nonzero means that skew needs to be
optimized for the corresponding condition during clock tree
synthesis. A value of zero means that no optimization effort is
expended for the corresponding condition.
Note:
If an operating condition is deselected in the clock tree synthesis
dialog box, its weight will be set to zero irrespective of the setting
in this parameter.
These three parameter values indicate relative priority among the
three conditions during clock tree synthesis, with higher values
indicating higher priority. The absolute value of the parameters
carries no meaning; only the order of the values affects the behavior
of the tool.
Usage
axSetIntParam "acts" "best condition" 1
axSetIntParam "acts" "typical condition" 1
axSetIntParam "acts" "worst condition" 1
Chapter 1: Clock Tree Parameters
1-4
Range
The valid values of best condition, typical condition, and
worst condition range between 0 and 999999. The default is 1.
cto: buffer sizing
cto: buffer relocation
cto: cell sizing
cto: cell relocation
cto: level adjustment
cto: delay insertion
cto: dummy load insertion
cto: reconfiguration
These parameters determine the order of operations in embedded
clock tree synthesis:
•
The cto: buffer sizing parameter sets the order of buffer
sizing in optimization.
•
The cto: buffer relocation parameter sets the order of
buffer relocation in optimization.
•
The cto: cell sizing parameter sets the order of cell sizing
in optimization.
•
The cto: cell relocation parameter sets the order of cell
relocation in optimization.
•
The cto: level adjustment parameter sets the order of
level adjustment in optimization.
•
The cto: delay insertion parameter sets the order of delay
insertion in optimization.
Clock Tree Synthesis General Behavior Parameters
1-5
•
The cto: dummy load insertion parameter sets the order
of dummy load insertion in optimization.
•
The cto: reconfiguration parameter sets the order of
reconfiguration in optimization.
The value of each parameter determines the order of the
corresponding operation in optimization. If -1 or 8 is set, the
corresponding type of optimization is not performed.
If more than one of these parameters have the same value, the
highest priority operation among them, as determined by this list, is
performed: BS>CS>BR>CR>LA>DI>ReCon>DL. The other
operations with the same value will be omitted.
These parameters are only for embedded clock tree optimization.
Usage
axSetIntParam "acts" "cto: buffer sizing" 4
axSetIntParam "acts" "cto: buffer relocation" 6
axSetIntParam "acts" "cto: cell sizing" 3
axSetIntParam "acts" "cto: cell relocation" 5
axSetIntParam "acts" "cto: level adjustment" 0
axSetIntParam "acts" "cto: delay insertion" 1
axSetIntParam "acts" "cto: dummy load insertion" 7
axSetIntParam "acts" "cto: reconfiguration" 2
Range
The valid values of all these parameters range between -1 and 8.
Chapter 1: Clock Tree Parameters
1-6
Table 1-2 lists the default values of these parameters.
Table 1-2 Default Values of Parameters
Parameter name
Default value
cto: buffer sizing
4
cto: buffer relocation
6
cto: cell sizing
3
cto: cell relocation
5
cto: level adjustment
0
cto: delay insertion
1
cto: dummy load
insertion
7
cto: reconfiguration
2
delay insertion before gate
The delay insertion before gate parameter enables or
disables clock tree synthesis to add any delay cells before clock gate.
Astro clock tree synthesis builds the clock tree one gate level at a
time. That is, for every clock-gating cell pre-existing in the clock tree,
Astro clock tree synthesis will first do a clock tree synthesis of its
fanout and hook up the clock-gating cell to the next higher level
subtree as appropriate. These clock-gating cells, as well as any cells
that are connected to the clock tree having a synchronous pin but not
being a register or latch, are called hookup pins.
Clock Tree Synthesis General Behavior Parameters
1-7
When this parameter is set to 0, clock tree synthesis is not allowed
to add any delay cells before a hookup pin, which it might otherwise
do in order to delay-balance the buffer-level driving the hookup pin;
all hookup pins will be connected directly to the driver of that buffer
level.
Usage
To enable clock tree synthesis to add delay cells before a clock gate,
enter the following:
axSetIntParam "acts" "delay insertion before gate" 1
Range
The valid values are 0 or 1. The default is 1.
gated clock tree
The gated clock tree parameter can be used to turn on or turn
off gated clock tree synthesis. If it is turned off, all cells in the fanout
of the root clock net will be treated as clock sinks.
Usage
To turn on gated clock tree synthesis, enter the following:
axSetIntParam "acts" "gated clock tree" 1
When set to 0, gated clock tree synthesis is turned off.
Range
The valid values are 0 or 1. The default is 1.
Chapter 1: Clock Tree Parameters
1-8
move clock gates
When set to 1, the move clock gates parameter forces all clock
gates to move to the center of their fanout. It can be used to
preprocess the clock tree for pre-existing gates.
The effect of this parameter is different from the Clock Common
Options dialog box setting for gate relocation.
Using this parameter, all gating cells in the clock tree are moved and
then located at the center of their fanout before any other processing.
With the dialog box option, the clock gates will be moved only if
necessary.
Usage
To force all clock gates to move to the center of their fanout, enter the
following:
axSetIntParam "acts" "move clock gates" 1
Range
The valid values are 0 or 1. The default is 1.
size up clock gates
When set to 1, the size up clock gates parameter forces all
clock gates to the largest available size. It can be used to preprocess
the clock tree for pre-existing gates.
The effect of this parameter is different from the Clock Common
Options dialog box setting for gate sizing.
Clock Tree Synthesis General Behavior Parameters
1-9
Using this parameter, all gating cells in the clock tree are sized to
their largest available drive strength before any other processing.
Using the dialog box option, the clock gates will be sized only if
necessary.
Usage
To force all clock gates to the largest size, enter the following:
axSetIntParam "acts" "size up clock gates" 1
Range
The valid values are 0 or 1. The default is 1.
Clock Tree Synthesis Legalization-Controlling
Placement Parameters
Table 1-3 summarizes the clock tree synthesis
legalization-controlling placement parameters specific to Astro.
Detailed descriptions of the parameters follow in alphabetical order.
Table 1-3 Legalization-Controlling Placement Parameters
Parameter
Description
ECO placement
Used to perform a global ECO placement after
initial clock tree synthesis.
ECO weight
Defines an ECO weight that is given to all cells
connected to the clock tree.
legalize placement
Controls whether placement legalization for
cells added by clock tree synthesis is
performed.
Chapter 1: Clock Tree Parameters
1-10
Table 1-3 Legalization-Controlling Placement Parameters (Continued)
Parameter
Description
OV
Controls whether overlap removal is used to
legalize clock buffers added by Astro.
set OV maximum displacement
Sets the maximum displacement during
overlap.
ECO placement
The ECO placement parameter is used to perform a global ECO
placement after initial clock tree synthesis; that is, before embedded
clock tree optimization. While this parameter is set to 1 by default, the
ECO placement may not actually be performed because the overlap
removal switch is also set to 1 by default—which turns off the effect
of this parameter.
Usage
To perform a global ECO placement after initial clock tree synthesis,
enter the following:
axSetIntParam "acts" "ECO placement" 1
Range
The valid values are 0 or 1. The default is 1.
ECO weight
The ECO weight parameter defines an ECO weight that is given to
all cells connected to the clock tree (sinks, inverters, or buffers) to
give preference to clock-related cells during overlap removal.
Clock Tree Synthesis Legalization-Controlling Placement Parameters
1-11
Usage
axSetIntParam "acts" "ECO weight" 2
Range
The valid values of this parameter range between 0 and 6. The
default is 2.
legalize placement
The legalize placement parameter controls whether placement
legalization for cells added by clock tree synthesis is performed or
not. Disabling legalization makes the switches for overlap and ECO
placement ineffective.
Without legalization, buffers will be dropped exactly at the location
deemed optimal by clock tree synthesis. Therefore, not performing
legalization can be useful for debugging to get an upper bound on
quality of results (QoR) and to separate legalization problems from
other issues.
Usage
To control whether placement legalization is performed for the cells
added by clock tree synthesis, use the following syntax:
axSetIntParam "acts" "legalize placement" 1
Range
The valid values are 0 or 1. The default is 1.
Chapter 1: Clock Tree Parameters
1-12
OV
The OV parameter controls whether overlap removal is used to
legalize clock buffers added by Astro. If overlap removal is used,
every buffer will be individually legalized as soon as it gets created.
If overlap removal is turned on, ECO placement will be automatically
turned off.
If legalize placement is turned on but overlap removal is turned
off, the lock buffer locations will be chosen to take advantage of
available space but no legalization will be performed to move other
cells.
Usage
To control whether overlap removal is used to legalize clock buffers
added by Astro, use the following syntax:
axSetIntParam "acts" "OV" 1
Range
The valid values are 0 or 1. The default is 1.
set OV maximum displacement
The set OV maximum displacement parameter sets the
maximum displacement during overlap. The unit is μm in the
database.
Clock Tree Synthesis Legalization-Controlling Placement Parameters
1-13
Usage
To set the maximum displacement during overlap, use the following
syntax:
axSetIntParam "acts" "set OV maximum displacement"
2147483647
Range
The valid values of this parameter range between 0 and 999999999.
The default is 2147483647.
Clock Tree Synthesis Effort-Related Parameters
Table 1-4 summarizes the clock tree synthesis effort-related
parameters specific to Astro. Detailed descriptions of the parameters
follow in alphabetical order.
Table 1-4 Effort-Related Parameters
Parameter
Description
clustering effort
Sets the clustering effort during clock tree
synthesis.
reclustering iterations
Sets the minimum number of iterations that the
clustering algorithm takes during clock tree
construction.
synthesis effort
The value of this parameter is multiplied by the
reclustering iterations to determine the number of
reclustering iterations actually used.
Chapter 1: Clock Tree Parameters
1-14
clustering effort
The clustering effort parameter sets the clustering effort
during clock tree synthesis. Clustering effort is orthogonal to the
number of reclustering iterations. For example, if effort is set to high,
the high-effort clustering will be executed for the number of iterations
determined by the reclustering iterations and synthesis
effort parameters.
Low and medium effort are the same. If high effort is selected, a
more involved clustering algorithm based on pairing is invoked.
Usage
To set the effort to low, enter the following:
axSetIntParam "acts" "clustering effort" 1
Range
The valid values of this parameter range between 1 and 3. The
default is 1.
Table 1-5 lists the valid values of the clustering effort
parameter.
Table 1-5 Valid Values of the clustering effort Parameter
Value
Description
1
Low effort
2
Medium effort
3
High effort
Clock Tree Synthesis Effort-Related Parameters
1-15
reclustering iterations
The reclustering iterations parameter sets the minimum
number of iterations that the clustering algorithm takes during clock
tree construction. The actual number of iterations is determined by
the product of synthesis effort and reclustering
iterations.
Usage
To set the minimum number of iterations taken by the clustering
algorithm during clock tree construction, use the following syntax:
axSetIntParam "acts" "reclustering iterations" 4
Range
The valid values of this parameter range between 0 and 999999. The
default is 4.
synthesis effort
The synthesis effort parameter sets the synthesis effort. This
parameter is equivalent to the Synthesis Effort option in the Clock
Common Options dialog box.
Setting the value in the Clock Common Options dialog box
overwrites the value of the parameter and setting the parameter after
using the dialog box overwrites the dialog box value.
The value of this parameter is multiplied by the value of
reclustering iterations to determine the number of
reclustering iterations actually used.
Chapter 1: Clock Tree Parameters
1-16
Usage
To set a value for synthesis effort, use the following syntax:
axSetIntParam "acts" "synthesis effort" 2
Range
The valid values of this parameter range between 1 and 3. The
default is 2.
Clock Tree Synthesis Clock Constraint Targets
Parameters
Table 1-6 summarizes the clock constraint targets parameters
specific to Astro. Detailed descriptions of the parameters follow in
alphabetical order.
Table 1-6 Clock Constraint Targets Parameters
Parameter
Description
target: best transition delay fall
Sets the target of the best transition delay
fall of each clock net.
target: best transition delay rise
Sets the target of the best rise transition
time of each clock net.
target: clock insertion delay
Sets a target for the overall insertion delay
of the clock tree.
target: clock skew
Sets a target for the overall skew of the
clock tree.
target: load capacitance
Sets the load capacitance target.
target fanout
Sets the fanout target.
target load relax
Enables (or disables) relaxation of the
target load with each buffer level.
Clock Tree Synthesis Clock Constraint Targets Parameters
1-17
Table 1-6 Clock Constraint Targets Parameters (Continued)
Parameter
Description
target: transition delay fall
Sets the target of the fall transition time of
each clock net.
target: transition delay rise
Sets the target of the rise transition time of
each clock net.
target: worst transition delay fall
Sets the target of the worst fall transition
time of each clock net.
target: worst transition delay rise
Sets the target of the worst rise transition
time of each clock net.
target: best transition delay fall
The target: best transition delay fall parameter sets
the target of the best transition delay fall of each clock net. It is
directly used by clock tree synthesis when creating the tree topology.
The clustering and buffer-level creation will be done such that each
resulting clock net has a transition time close to the target. This
means that the actual transition time can be slightly bigger or smaller
than the target.
If the clock tree analyzer is used, the target transition value will be
overridden by clock tree analyzer. This best fall transition target will
override the target: transition delay fall.
Usage
To set the target of the best transition delay fall of each clock net, use
the following syntax:
axSetRealParam "acts" "target: best transition delay fall"
0.000
Chapter 1: Clock Tree Parameters
1-18
Range
The valid values range between 0.000 and 999999.000. The default
is 0.0.
target: best transition delay rise
The target: best transition delay rise parameter sets the
target of the best rise transition time of each clock net. It is directly
used by clock tree synthesis when creating the tree topology. The
clustering and buffer-level creation is done such that each resulting
clock net has a transition time close to the target. This means that
the actual transition time can be slightly bigger or smaller than the
target.
If the clock tree analyzer is used, the target transition value will be
overridden by the clock tree analyzer. This best rise transition target
will override the target: transition delay rise.
Usage
To set the target of the best rise transition time of each clock net, use
the following syntax:
axSetRealParam "acts" "target: best transition delay rise"
0.000
Range
The valid values range between 0.000 and 999999.000. The default
is 0.0.
Clock Tree Synthesis Clock Constraint Targets Parameters
1-19
target: clock insertion delay
This target: clock insertion delay parameter sets the
clock insertion delay target. It is equivalent to the Clock Common
Options dialog box setting for clock insertion delay.
This parameter is used as a target for the overall insertion delay of
the clock tree; that is, if the tree generated by clock tree synthesis
has smaller insertion delay, delay insertion will be performed to meet
the target. This target value will be overridden by a target specified
through the set_clock_latency setting in the Synopsys Design
Contraints (SDC) file.
Usage
To set the clock insertion delay, use the following syntax:
axSetRealParam "acts" "target: clock insertion delay" 0.000
Range
The valid values range between 0.000 and 999999.000. The default
is 0.0.
target: clock skew
The target: clock skew parameter sets the clock skew target.
It is equivalent to the Clock Common Options dialog box setting for
skew target. It is used as a target for the overall skew of the clock
tree. However, it has an effect only if the clock tree analyzer is used.
If the SDC file specifies the set_clock_uncertainty constraint,
the smaller of the targets in the dialog box and the SDC file is used.
Chapter 1: Clock Tree Parameters
1-20
Usage
To set the skew target, use the following syntax:
axSetRealParam "acts" "target: clock skew" 0.000
Range
The valid values range between 0.000 and 999999.000. The default
is 0.0.
target: load capacitance
The target: load capacitance parameter sets the load
capacitance target. It is directly used by clock tree synthesis when
creating the tree topology. The clustering and buffer-level creation is
done such that the load capacitance (wire and pin) of each clock
buffer is close to the target. This means that the actual load can
deviate by a few units from the specified target.
Usage
axSetRealParam "acts" "target: load capacitance" 0.000
Range
The valid values range between 0.000 and 999999.000. The default
is 0.0.
target fanout
The target fanout parameter sets the fanout target. It can be
used directly by clock tree synthesis when creating the tree topology.
The clustering and buffer-level creation will be done such that the
fanout of each clock buffer is close to the target. This means that the
actual fanout can deviate by a few fanouts from the specified target.
Clock Tree Synthesis Clock Constraint Targets Parameters
1-21
Usage
To set the fanout target, use the following syntax:
axSetIntParam "acts" "target fanout" 32
Range
The valid values range between 0 and 999999. The default is 32.
target load relax
The target load relax parameter turns controls relaxation of
the target load with each buffer level. When this parameter is set, the
target load is used only for the leaf level of the clock tree. For all
higher buffer levels, the actual target load is calculated as
target load actual = target
load*(1+targetLoad_relax(buffer_level-1))
Usage
To control relaxation of the target load with each buffer level, use the
following syntax:
axSetRealParam "acts" "target load relax" 1.000
Range
The valid values range between 0.000 and 999999.000. The default
is 0.0.
target: transition delay fall
The target: transition delay fall parameter sets the
target of the fall transition time of each clock net. It is directly used by
clock tree synthesis when creating the tree topology. The clustering
Chapter 1: Clock Tree Parameters
1-22
and buffer-level creation is done such that each resulting clock net
has a transition time close to the target. This means that the actual
transition time can be slightly bigger or smaller than the target.
If the clock tree analyzer is used, the target transition value will be
overridden by the clock tree analyzer. This fall transition target will be
overridden if the fall targets for best and worst are specified
separately.
Usage
axSetRealParam "acts" "target: transition delay fall" 0.000
Range
The valid values range between 0.000 and 999999.000. The default
is 0.0.
target: transition delay rise
The target: transition delay rise parameter sets the
target of the rise transition time of each clock net. It is directly used
by clock tree synthesis when creating the tree topology. The
clustering and buffer-level creation will be done such that each
resulting clock net has a transition time close to the target. This
means that the actual transition time can be slightly bigger or smaller
than the target.
If the clock tree analyzer is used, the target transition value will be
overridden by the clock tree analyzer. This rise transition target will
be overridden if the rise targets for best and worst are specified
separately.
Clock Tree Synthesis Clock Constraint Targets Parameters
1-23
Usage
To set the target of the rise transition time of each clock net, use the
following syntax:
axSetRealParam "acts" "target: transition delay rise" 0.000
Range
The valid values range between 0.000 and 999999.000. The default
is 0.0.
target: worst transition delay fall
The target: worst transition delay fall parameter sets
the target of the worst fall transition time of each clock net. It is
directly used by clock tree synthesis when creating the tree topology.
The clustering and buffer-level creation is done such that each
resulting clock net has a transition time close to the target. This
means that the actual transition time can be slightly bigger or smaller
than the target.
If the clock tree analyzer is used, the target transition value will be
overridden by the clock tree analyzer. This worst fall transition target
will override target: transition delay fall.
Usage
To set the target of the worst fall transition time of each clock net, use
the following syntax:
axSetRealParam "acts" "target: worst transition delay fall"
0.000
Chapter 1: Clock Tree Parameters
1-24
Range
The valid values range between 0.000 and 999999.000. The default
is 0.0.
target: worst transition delay rise
The target: worst transition delay rise parameter sets
the target of the worst rise transition time of each clock net. It is
directly used by clock tree synthesis when creating the tree topology.
The clustering and buffer-level creation will be done such that each
resulting clock net has a transition time close to the target. This
means that the actual transition time can be slightly bigger or smaller
than the target.
If the clock tree analyzer is used, the target transition value will be
overridden by the clock tree analyzer. This worst rise transition target
will override target: transition delay rise.
Usage
To set the target of the worst rise transition time of each clock net,
use the following syntax:
axSetRealParam "acts" "target: worst transition delay rise"
0.000
Range
The valid values range between 0.000 and 999999.000. The default
is 0.0.
Clock Tree Synthesis Clock Constraint Targets Parameters
1-25
Clock Tree Synthesis Clock Constraint Rules
Parameters
Table 1-7 summarizes the clock constraints rules parameters
specific to Astro. Detailed descriptions of the parameters follow in
alphabetical order.
Table 1-7 Clock Constraint Rules Parameters
Parameter
Description
rule: maximum capacitance
Limits the load capacitance (wire and pin)
each buffer in the clock tree may drive.
rule: maximum insertion delay
Limits the maximum insertion delay time of
each clock net.
rule: maximum skew
Sets one of the global timing/clock tree
constraints.
rule: maximum transition delay fall
Limits the maximum fall transition time of
each clock net.
rule: maximum transition delay rise
Limits the maximum rise transition time of
each clock net.
rule: maximum wire length
Used in topology-based buffer insertion
with global route.
rule: minimum insertion delay
Limits the minimum insertion delay time of
each clock net.
rule: minimum transition delay fall
Limits the minimum fall transition time of
each clock net.
rule: minimum transition delay rise
Limits the minimum rise transition time of
each clock net.
Chapter 1: Clock Tree Parameters
1-26
Table 1-7 Clock Constraint Rules Parameters (Continued)
Parameter
Description
rule maximum buffer levels
Limits the level of buffers clock tree
synthesis might add to the value specified.
rule maximum fanout
Limits the fanout each buffer in the clock
tree may drive.
rule: maximum capacitance
The rule: maximum capacitance parameter limits the load
capacitance (wire and pin) each buffer in the clock tree may drive.
This parameter is equivalent to the Maximum Load Capacitance
option in the Clock Tree Constraints dialog box.
If rule: maximum capacitance is smaller than the target load
capacitance, the rule: maximum capacitance parameter will be
used as the target capacitance. Target will be 80 percent of
constraint if the constraint is smaller than the target.
Usage
To limit the load capacitance (wire and pin) each buffer in the clock
tree may drive, use the following syntax:
axSetRealParam "acts" "rule: maximum capacitance" -0.500
Range
The valid values of this parameter range between 0.000 and
999999.000. The default is -0.5.
Clock Tree Synthesis Clock Constraint Rules Parameters
1-27
rule: maximum insertion delay
The rule: maximum insertion delay parameter limits the
maximum insertion delay time of each clock net. It is overwritten by
the Maximum Insertion Delay option in the Clock Tree Constraints
dialog box.
Usage
To limit the maximum insertion delay time of each clock net, use the
following syntax:
axSetRealParam "acts" "rule: maximum insertion delay" 0.000
Range
The valid values of this parameter range between 0.000 and
999999.000. The default is 0.0.
rule: maximum skew
The rule: maximum skew parameter sets one of the global timing/
clock tree constraints.
Usage
To set one of the global timing/clock tree constraints, use the
following syntax:
axSetRealParam "acts" "rule: maximum skew" 0.000
Range
The valid values of this parameter range between 0.000 and
999999.000. The default is 0.0.
Chapter 1: Clock Tree Parameters
1-28
rule: maximum transition delay fall
The rule: maximum transition delay fall parameter limits
the maximum fall transition time of each clock net. It is overwritten by
the Maximum Transition Delay option in the Clock Tree Constraints
dialog box.
If rule: maximum transition delay fall is smaller than the
target transition time, then rule: maximum transition delay
fall will be used as target transition time. Target will be 80 percent
of constraint if the constraint is smaller than the target.
Usage
To limit the maximum fall transition time of each clock net, use the
following syntax:
axSetRealParam "acts" "rule: maximum transition delay fall"
-0.500
Range
The valid values of this parameter range between 0.000 and
999999.000. The default is -0.5.
rule: maximum transition delay rise
The rule: maximum transition delay rise parameter limits
the maximum rise transition time of each clock net. It is overwritten
by the Maximum Transition Delay option in the Clock Tree
Constraints dialog box.
Clock Tree Synthesis Clock Constraint Rules Parameters
1-29
If rule: maximum transition delay rise is smaller than the
target transition time, then rule: maximum transition delay
rise will be used as target transition time. Target will be 80 percent
of constraint if the constraint is smaller than the target.
Usage
To limit the maximum rise transition time of each clock net, use the
following syntax:
axSetRealParam "acts" "rule: maximum transition delay rise"
-0.500
Range
The valid values of this parameter range between 0.000 and
999999.000. The default is -0.5.
rule: maximum wire length
The rule: maximum wire length parameter is used in
topology-based buffer insertion with global route.
Usage
To use topology-based buffer insertion with global route, use the
following syntax:
axSetRealParam "acts" "rule: maximum wire length" 0.000
Range
The valid values of this parameter range between 0.000 and
999999.000. The default is 0, which will use a default value (2000
μm).
Chapter 1: Clock Tree Parameters
1-30
rule: minimum insertion delay
The rule: minimum insertion delay parameter limits the
minimum insertion delay time of each clock net. It is overwritten by
the Minimum Insertion Delay option in the Clock Tree Constraints
dialog box.
Usage
To limit the minimum insertion delay time of each clock net, use the
following syntax:
axSetRealParam "acts" "rule: minimum insertion delay" 0.000
Range
The valid values of this parameter range between 0.000 and
999999.000. The default is 0.
rule: minimum transition delay fall
The rule: minimum transition delay fall parameter limits
the minimum fall transition time of each clock net.
Usage
To limit the minimum fall transition time of each clock net, use the
following syntax:
axSetRealParam "acts" "rule: minimum transition delay fall"
0.000
Range
The valid values of this parameter range between 0.000 and
999999.000. The default is 0.0.
Clock Tree Synthesis Clock Constraint Rules Parameters
1-31
rule: minimum transition delay rise
The rule: minimum transition delay rise parameter limits
the minimum rise transition time of each clock net.
Usage
To limit the minimum rise transition time of each clock net, use the
following syntax:
axSetRealParam "acts" "rule: minimum transition delay rise"
0.000
Range
The valid values of this parameter range between 0.000 and
999999.000. The default is 0.0.
rule maximum buffer levels
The rule maximum buffer levels parameter specifies the
maximum number of buffer levels that clock tree synthesis is allowed
to add. It is equivalent to the Maximum Buffer Level option in the
Clock Tree Constraints dialog box. It is important to understand that
this constraint will be applied per gate level; that is, if your clock tree
has several serial gating cells, each subtree can have up to 99 rule
maximum buffer levels levels.
Another thing to note is that when the maximum number of levels is
reached clock tree synthesis will stop any further processing; that is,
if an unrealistic constraint is specified, the resulting tree will still
contain DRC violations.
Chapter 1: Clock Tree Parameters
1-32
Usage
To limit the level of buffers clock tree synthesis might add, use the
following syntax:
axSetIntParam "acts" "rule maximum buffer levels" 20
Range
The valid values range between 0 and 99. The default is 20.
rule maximum fanout
The rule maximum fanout parameter limits the fanout that each
buffer in the clock tree may drive. It is equivalent to the Maximum
Fanout option in the Clock Tree Constraints dialog box.
If rule maximum fanout is smaller than the target fanout, the
rule maximum fanout parameter will be used as target fanout.
Usage
To limit the fanout that each buffer in the clock tree may drive, use the
following syntax:
axSetIntParam "acts" "rule maximum fanout" 64
Range
The valid values range between 0 and 999999. The default is 64.
Clock Tree Synthesis Clock Constraint Rules Parameters
1-33
Clock Optimization Parameters
Table 1-8 summarizes the clock optimization parameters specific to
Astro. Detailed descriptions of the parameters follow in alphabetical
order.
Table 1-8 Clock Optimization Parameters
Parameter
Description
cto: FF relocation
Enables (or disables) flip-flop relocation during
optimization.
cto: FF sizing
Enables (or disables) flip-flop sizing during
optimization.
cto: latch relocation
Enables (or disables) latch relocation during
optimization.
cto: latch sizing
Enables (or disables) latch sizing during
optimization.
optimization level
Sets the optimization level.
cto: FF relocation
The cto: FF relocation parameter enables or disables flip-flop
relocation during optimization. This parameter is used only for
embedded clock tree optimization.
Usage
To turn on flip-flop relocation during optimization, enter the following:
axSetIntParam "acts" "cto: FF relocation" 1
Range
The valid values are 0 or 1. The default is 0.
Chapter 1: Clock Tree Parameters
1-34
cto: FF sizing
The cto: FF sizing parameter enables or disables flip-flop sizing
during optimization. This parameter is used only for embedded clock
tree optimization.
Usage
To turn on flip-flop sizing during optimization, enter the following:
axSetIntParam "acts" "cto: FF sizing" 1
Range
The valid values are 0 or 1. The default is 0.
cto: latch relocation
The cto: latch relocation parameter enables or disables
latch relocation during optimization. This parameter is used only for
embedded clock tree optimization.
Usage
To turn on latch relocation during optimization, enter the following:
axSetIntParam "acts" "cto: latch relocation" 1
Range
The valid values are 0 or 1. The default is 0.
cto: latch sizing
The cto: latch sizing parameter enables or disables latch
sizing during optimization. This parameter is used only for
embedded clock tree optimization.
Clock Optimization Parameters
1-35
Usage
To turn on latch sizing during optimization, enter the following:
axSetIntParam "acts" "cto: latch sizing" 1
Range
The valid values are 0 or 1. The default is 0.
optimization level
The optimization level parameter sets the optimization level.
It is the same as the Optimization Effort option in the Clock Common
Options dialog box. Higher values correspond to higher effort.
Usage
To set the optimization level, use the following syntax:
axSetIntParam "acts" "optimization level" 3
Range
The valid values of this parameter range between 0 and 999999. The
default is 3.
Chapter 1: Clock Tree Parameters
1-36
Clock Routing Parameters
Table 1-9 summarizes the clock routing parameters specific to Astro.
Detailed descriptions of the parameters follow in alphabetical order.
Table 1-9 Clock Routing Parameters
Parameter
Description
ECO Route
Determines whether ECO route is
performed after postroute clock tree
optimization.
set default route rule on bottom level
Resets the variable route rule applied to
the sub clock tree nets for the bottom n
nets.
set default route rule on leaf net
Resets the variable route rule applied to
the sub clock tree nets for the lowest-level
nets (leaf nets) only.
ECO Route
The ECO Route parameter determines whether ECO route is
performed after postroute clock tree optimization.
Usage
To perform ECO route after postroute clock tree optimization, enter
the following:
axSetIntParam "acts" "ECO Route" 1
Range
The valid values are 0 or 1. The default is 0.
Clock Routing Parameters
1-37
set default route rule on bottom level
By default, clock tree synthesis propagates a variable route rule
applied to the root clock net before clock tree synthesis to all its sub
clock tree nets. The set default route rule on bottom
level parameter resets the variable route rule applied to the sub
clock tree nets for the bottom n nets, where n is the value of the
parameter.
Usage
axSetIntParam "acts" "set default route rule on bottom level"
0
Range
The valid values of this parameter range between 0 and 999999. The
default is 0.
set default route rule on leaf net
By default, clock tree synthesis propagates a variable route rule
applied to the root clock net before clock tree synthesis to all its sub
clock tree nets. The set default route rule on leaf net
parameter resets the variable route rule applied to the sub clock tree
nets for the lowest-level nets (leaf nets) only.
Usage
axSetIntParam "acts" "set default route rule on leaf net" 0
Range
The valid values are 0 or 1. The default is 0.
Chapter 1: Clock Tree Parameters
1-38
Stand-Alone Clock Optimization Parameters
Table 1-10 summarizes the stand-alone clock optimization
parameters specific to Astro. Detailed descriptions of the parameters
follow in alphabetical order.
Table 1-10
Stand-alone Clock Optimization Parameters
Parameter
Description
delay balance: clock skew offset
Sets stand-alone CTO allowed
percentage change of individual clock's
skew for delay balance.
delay balance: insertion delay offset
Sets stand-alone clock tree optimization
allowed insertion delay offset
(percentage) difference for delay
balance.
fix load cap violation
Turns on (or off) stand-alone clock tree
optimization to fix load capacitance
violations.
fix transition violation
Turns on (or off) stand-alone clock tree
optimization to fix transition violations.
minimize placement changes
Turns on (or off) stand-alone clock tree
optimization to minimize placement
changes.
minimize placement changes effort
Sets effort for minimizing placement
changes.
delay balance: clock skew offset
The delay balance: clock skew offset parameter sets the
allowed percentage change of individual clock's skew for delay
balance during stand-alone clock tree optimization.
Stand-Alone Clock Optimization Parameters
1-39
Usage
axSetRealParam "aco" "delay balance: clock skew offset" 0.050
Range
The valid values of this parameter range between 0.000 and 1.000.
The default is 0.05.
delay balance: insertion delay offset
The delay balance: insertion delay offset parameter
sets the allowed insertion delay offset (percentage) difference for
delay balance during stand-alone clock tree optimization.
Usage
axSetRealParam "aco" "delay balance: insertion delay offset"
0.010
Range
The valid values of this parameter range between 0.000 and 1.000.
The default is 0.01.
fix load cap violation
The fix load cap violation parameter turns on (or off)
stand-alone clock tree optimization to fix load capacitance violations.
Usage
To turn on stand-alone clock tree optimization to fix load capacitance
violation, enter the following:
axSetIntParam "aco" "fix load cap violation" 1
Chapter 1: Clock Tree Parameters
1-40
Range
The valid values are 0 or 1. The default is 1.
fix transition violation
The fix transition violation parameter turns on (or off)
stand-alone clock tree optimization to fix transition violations.
Usage
To turn on stand-alone clock tree optimization to fix transition
violations, enter the following:
axSetIntParam "aco" "fix transition violation" 1
Range
The valid values are 0 or 1. The default is 1.
minimize placement changes
The minimize placement changes parameter turns on (or off)
stand-alone clock tree optimization to minimize placement changes.
Usage
To turn on stand-alone clock tree optimization to minimize placement
changes, enter the following:
axSetIntParam "aco" "minimize placement changes" 1
Range
The valid values are 0 or 1. The default is 1.
Stand-Alone Clock Optimization Parameters
1-41
minimize placement changes effort
The minimize placement changes effort parameter sets the
level of effort for minimizing placement changes.
Usage
To set medium effort for minimizing placement changes, enter the
following:
axSetIntParam "aco" "minimize placement changes effort" 2
Range
The valid values of this parameter range between 0 and 3. The
default is 2.
Table 1-11 lists the valid values of the minimize placement
changes effort parameter and their description.
Table 1-11
Valid Values of the minimize placement changes effort
Parameter
Value
Description
1
Low effort
2
Medium effort
3
High effort
Chapter 1: Clock Tree Parameters
1-42
Other Clock Tree Synthesis Parameters
Table 1-12 summarizes other clock tree synthesis parameters
specific to Astro. Detailed descriptions of the parameters follow in
alphabetical order.
Table 1-12
Other Clock Tree Synthesis Parameters
Parameter
Description
clock tree root minimum fanout
Used as part of the stop criteria for
clustering when building the tree.
CTA
Enables or disables the clock tree
analyzer.
explore clock tree
Set to turn on clock tree synthesis
search for the optimal buffer and target
load to be used by a search of the
solution space.
fix ignore pins violations
Enables or disables DRC fixing beyond
an implicit ignore pin on data-mixing
clock gate.
leaf net transition constraint
Uses the tightest clock transition of the
leaf net.
length fixed buffer insertion on top
Set to run the top-mode clock tree
synthesis.
logic level balance
Set to use logic-level balance for clock
tree synthesis.
number of hookup pins per cluster
Sets the maximum number of hookup
pins per cluster.
real clock useful skew
Enables useful clock skew for clock tree
synthesis.
skew type
Sets the skew type.
Other Clock Tree Synthesis Parameters
1-43
Table 1-12
Other Clock Tree Synthesis Parameters (Continued)
Parameter
Description
update congestion map
Set to force clock tree synthesis to
update the placement-based
congestion map at various points while
it runs.
use global route
Set to use global route for clock tree
synthesis.
wire capacitance accuracy
Toggles to and from less accurate
capacitance estimation.
clock tree root minimum fanout
The clock tree root minimum fanout parameter is used as
one of the stop criteria for clustering when building the tree. No
further buffer levels are added to the tree if number of fanouts at the
current level is already smaller than this minimum fanout.
Usage
axSetIntParam "acts" "clock tree root minimum fanout" 1
Range
The valid values range between 0 and 99999999. The default is 1.
CTA
The CTA parameter enables or disables the clock tree analyzer.
Clock tree synthesis buffer selection and clustering is driven by
target capacitance and target transition parameters. If the CTA
parameter is set to 1, the user-supplied targets for skew and
Chapter 1: Clock Tree Parameters
1-44
insertion delay will be converted to target transition and target
capacitance values that meet the skew and insertion delay targets
with the best overall QoR of the tree.
If the CTA parameter is turned off, the user-supplied or default
settings for target capacitance and target transition will be used.
Usage
To enable the clock tree analyzer, enter the following:
axSetIntParam "acts" "CTA" 1
Range
The valid values are 0 or 1. The default is 1.
explore clock tree
The explore clock tree parameter turns on (or off) clock tree
synthesis search for the optimal buffer and target load to be used by
a search of the solution space. For each buffer available as a clock
buffer according to dialog box settings and astSetClockCell, you
can explore eight different target capacitance values between a
minimum of two x input capacitance of the buffer and a maximum
defined by max_capacitance for the buffer. The default is disabled
because of runtimes.
Usage
To turn on clock tree synthesis search for the optimal buffer and
target load, enter the following:
axSetIntParam "acts" "explore clock tree" 1
Other Clock Tree Synthesis Parameters
1-45
Range
The valid values are 0 or 1. The default is 0.
fix ignore pins violations
The fix ignore pins violations parameter enables or
disables DRC fixing beyond an implicit ignore pin on data-mixing
clock gate.
If some deep combinational logic is hooked up to the clock tree (for
example, in clock data mixing), and clock tree synthesis cannot trace
to the next sync/ignore/stop pin, it will identify an implicit ignore pin
automatically. This allows clock tree synthesis to proceed. However,
other optimizations will consider all cells and nets in the transitive
fanout of the implicit ignore pin as clocks and will not touch them. If
the fix ignore pins violations parameter is set to 1, clock
tree synthesis will do a DRC fix for these nets and cells.
Usage
To enable DRC fixing beyond an implicit ignore pin on data mixing
clock gate, enter the following:
axSetIntParam "acts" "fix ignore pins violations" 1
Range
The valid values are 0 or 1. The default is 1.
leaf net transition constraint
The leaf net transition constraint parameter uses the
tightest clock transition of the leaf net.
Chapter 1: Clock Tree Parameters
1-46
Usage
To use the tightest clock transition of the leaf net, enter the following:
axSetIntParam "acts" "leaf net transition constraint" 1
Range
The valid values are 0 or 1. The default is 0.
length fixed buffer insertion on top
The length fixed buffer insertion on top parameter is
set to run the top mode clock tree synthesis as it runs in version
V-2004.06 and earlier.
Usage
To run the top mode clock tree synthesis, enter the following:
axSetIntParam "acts" "length fixed buffer insertion on top" 1
Range
The valid values are 0 or 1. The default is 0.
logic level balance
The logic level balance parameter is set to use logic-level
balance for clock tree synthesis.
Usage
To use logic-level balance for clock tree synthesis, enter the
following:
axSetIntParam "acts" "logic level balance" 1
Other Clock Tree Synthesis Parameters
1-47
Range
The valid values are 0 or 1. The default is 0.
number of hookup pins per cluster
The number of hookup pins per cluster parameter sets the
maximum number of hookup pins per cluster.
Usage
To set the maximum number of hookup pins per cluster as 32, enter
the following:
axSetIntParam "acts" "number of hookup pins per cluster" 32
Range
The valid values range between 0 and 999999. The default is 32.
real clock useful skew
The real clock useful skew parameter enables or disables
useful clock skew for clock tree synthesis. In the case of useful skew,
it is actually executed only if both this switch and the skew type
switch are set for useful skew. The Clock Tree Synthesis dialog box
sets both switches if useful skew is selected.
Usage
To enable useful clock skew for clock tree synthesis, enter the
following:
axSetIntParam "acts" "real clock useful skew" 1
Chapter 1: Clock Tree Parameters
1-48
Range
The valid values are 0 or 1. The default is 1.
skew type
The skew type parameter used to set the skew type. It is equivalent
to the skew type selection in the Clock Tree Synthesis dialog box.
Usage
To set the skew type as global, enter the following:
axSetIntParam "acts" "skew type" 0
Range
The valid values of this parameter range between 0 and 2. The
default is 0.
Table 1-13 lists the valid values of the skew type parameter and their
description.
Table 1-13
Valid Values of the skew type Parameter
Value
Description
0
Global
1
Local
2
Useful
update congestion map
The update congestion map parameter, when set to 1, forces
clock tree synthesis to update the placement-based congestion map
at various points while it runs. This decreases capacitance
Other Clock Tree Synthesis Parameters
1-49
estimation error induced by congestion map and layout getting out of
sync by added clock tree synthesis buffers. It increases the chance
of convergence issues and causes longer runtime, especially for
clock tree optimization.
If switched on, the congestion map is updated after initial clock tree
synthesis and after embedded clock tree optimization. However, if
the debug mode parameter is on, the congestion map will always be
updated at the end of clock tree synthesis.
Usage
To force clock tree synthesis to update the placement-based
congestion map at various points, enter the following:
axSetIntParam "acts" "update congestion map" 1
Range
The valid values are 0 or 1. The default is 0.
use global route
The use global route parameter is set to use global route for
clock tree synthesis.
Usage
To use global route for clock tree synthesis, enter the following:
axSetIntParam "acts" "use global route" 1
Range
The valid values are 0 or 1. The default is 1.
Chapter 1: Clock Tree Parameters
1-50
wire capacitance accuracy
The wire capacitance accuracy parameter determines the
accuracy of capacitance estimation. For medium and high effort,
there is no difference and clock tree synthesis calls the Astro
extraction engine to perform net capacitance estimation from a
virtual route. For low effort, a crude estimation based on Steiner
weights and bounding box of net fanout is used.
Usage
To control the accuracy of capacitance estimation, use the following
syntax:
axSetIntParam "acts" "wire capacitance accuracy" 2
Range
The valid values of this parameter range between 1 and 3. The
default is 2.
Table 1-14 lists the valid values of the wire capacitance
accuracy parameter and their description.
Table 1-14
Valid Values of the wire capacitance accuracy Parameter
Value
Description
1
Low
2
Medium
3
High
Other Clock Tree Synthesis Parameters
1-51
Changing Standard Naming Convention Parameters
Table 1-15 summarizes the standard naming convention parameters
specific to Astro. Detailed descriptions of the parameters follow in
alphabetical order.
Table 1-15
Standard Naming Convention Parameters
Parameter
Description
bottom level buffer
Determines the cell master used to build the
lowest-level buffers.
buffer instance prefix name
Sets a prefix for naming the clock buffers
inserted by clock tree synthesis.
configuration output file
If the configuration output file
parameter is set to specify a file name, clock
tree synthesis will dump a hard configuration
file specifying the tree it created.
file name: buffer instances
Sets the output file name for additional buffers
and inverters that are created to build the clock
tree during clock tree synthesis.
file name: clock tree timing
Sets the output file name of the detailed timing
report of the tree created after clock tree
synthesis.
file name: cluster
When this parameter is set, clock tree
synthesis will dump a file with the coordinates
of the bounding boxes of the clusters it used in
its internal clustering.
file name: FF relationship
If this parameter is set to specify a file name,
clock tree synthesis will dump a file with the
data dependency graph outlining which
flip-flops are related via a datapath for local
skew.
Chapter 1: Clock Tree Parameters
1-52
Table 1-15
Standard Naming Convention Parameters (Continued)
Parameter
Description
file name: re-synthesis nets
Used to specify a file with a list of root clock
nets for which clock tree synthesis should be
performed even if the clock tree had already
been synthesized earlier.
file name: synthesized clock tree
By default, clock tree synthesis dumps the
structure of the tree it created to a file called
tree.acts after clock tree synthesis is
completed. Using the file name:
synthesized clock tree parameter, the file
name can be changed.
file name: synthesized nets
During clock tree synthesis, additional nets are
created to build the clock tree. After these nets
are created, all these nets are dumped into a
file. By default the file is called net.acts.
Using the file name: synthesized nets
parameter, this file name can be changed.
net prefix name
Sets a prefix for naming the clock nets added
by clock tree synthesis.
bottom level buffer
The bottom level buffer parameter is set to the name of a cell
master such that the lowest-level buffers in the tree are built only by
using this cell master.
Usage
axSetStringParam "acts" "bottom level buffer" ""
buffer instance prefix name
The buffer instance prefix name parameter sets a prefix for
naming the clock buffers inserted by clock tree synthesis.
Changing Standard Naming Convention Parameters
1-53
By default clock tree synthesis uses local_name = cell master
name*gatelevel*bufferlevel*index as the name for newly
added instances. If this variable is set to a value prefix, the new
instances will be called prefix*local_name.
This parameter is deprecated. Use the Scheme variable
actBufferNameFormat instead.
Usage
axSetStringParam "acts" "buffer instance prefix name" ""
configuration output file
If the configuration output file parameter is set to specify
a file name, clock tree synthesis will dump a hard configuration file
specifying the tree it created. This file can be used to recreate exactly
the same tree in incremental runs.
This parameter is deprecated. Use the Scheme variable
actFileNameConfigurationOutput instead.
Usage
axSetStringParam "acts" "configuration output file" ""
file name: buffer instances
The file name: buffer instances parameter sets the output
file name for additional buffers and inverters that are created to build
the clock tree during clock tree synthesis. When a clock tree is
created, it dumps a file with all these instances. By default, the file is
called buffer.acts.
Chapter 1: Clock Tree Parameters
1-54
This feature might be particularly useful if executing several clock
tree synthesis runs to avoid having files from different runs overwrite
each other.
This parameter is deprecated. Use the Scheme variable
actFileNameBufferInstances instead.
Usage
axSetStringParam "acts" "file name: buffer instances"
"buffer.acts"
file name: clock tree timing
The file name: clock tree timing parameter sets the output
file name of the detailed timing report of the tree created after clock
tree synthesis. By default, the detailed timing report of the tree
created after clock tree synthesis is dumped to a file called
timing.acts. This report is identical to the report you get from
astDumpClockTiming. Using the file name: clock tree
timing parameter, the file name can be changed.
This feature might be particularly useful if executing several clock
tree synthesis runs to avoid having files from different runs overwrite
each other.
This parameter is deprecated. Use the Scheme variable
actFileNameClockTreeTiming instead.
Usage
axSetStringParam "acts" "file name: clock tree timing"
"timing.acts"
Changing Standard Naming Convention Parameters
1-55
file name: cluster
If the file name: cluster parameter is set to specify a file name,
clock tree synthesis will dump a file with the coordinates of the
bounding boxes of the clusters it used in its internal clustering. This
feature might be particularly useful if executing several clock tree
synthesis runs to avoid having files from different runs overwrite each
other.
This parameter is deprecated. Use the Scheme variable
actFileNameCluster instead.
Usage
axSetStringParam "acts" "file name: cluster" ""
file name: FF relationship
If this parameter is set to specify a file name, clock tree synthesis will
dump a file with the data dependency graph outlining which flip-flops
are related via a datapath for local skew.
This parameter is deprecated, use the Scheme variable
actFileNameFFRelationship instead.
Usage
axSetStringParam "acts" "file name: FF relationship" ""
file name: re-synthesis nets
The file name: re-synthesis nets parameter can be used
to specify a file with a list of root clock nets for which clock tree
synthesis should be performed even if the clock tree had already
been synthesized earlier.
Chapter 1: Clock Tree Parameters
1-56
This parameter is deprecated. Use the Scheme variable
actFileNameResynthesisNets instead.
Usage
axSetStringParam "acts" "file name: re-synthesis nets" ""
file name: synthesized clock tree
The file name: synthesized clock tree parameter sets the
output file name of clock tree structure created by clock tree
synthesis. By default, clock tree synthesis dumps the structure of the
tree it created to a file called tree.acts after clock tree synthesis
is completed. Using the file name: synthesized clock tree
parameter, the file name can be changed.
This feature might be particularly useful if executing several clock
tree synthesis runs to avoid having files from different runs overwrite
each other.
This parameter is deprecated. Use the Scheme variable
actFileNameSynthesizedClockTree instead.
Usage
axSetStringParam "acts" "file name: synthesized clock tree"
"tree.acts"
file name: synthesized nets
During clock tree synthesis, additional nets are created to build the
clock tree. After these nets are created, all these nets are dumped
into a file. By default the file is called net.acts. Using the file
name: synthesized nets parameter, this file name can be
changed.
Changing Standard Naming Convention Parameters
1-57
This feature might be particularly useful if executing several clock
tree synthesis runs and to avoid having files from different runs
overwrite each other.
This parameter is deprecated. Use the Scheme variable
actFileNameSynthesizedNets instead.
Usage
axSetStringParam "acts" "file name: synthesized nets"
"net.acts"
net prefix name
The net prefix name parameter sets a prefix for naming the clock
nets added by clock tree synthesis.
By default, clock tree synthesis uses
local_name=gatelevel*bufferlevel*index as the name for
newly added clock nets. If this variable is set to a value prefix, the
new instances will be called prefix*local_name.
If the root clock net has the form of a bus, local_name will be bus
base name=gatelevel*bufferlevel*index[busindex].
This parameter is deprecated. Use the Scheme variable
actNetNameFormat instead.
Usage
axSetStringParam "acts" "net prefix name" ""
Chapter 1: Clock Tree Parameters
1-58
Changing Default Interpretation of Clock Constraint
Parameters
Table 1-16 summarizes the clock constraint parameters specific to
Astro. Detailed descriptions of the parameters follow in alphabetical
order.
Table 1-16
Clock Constraint Parameters
Parameter
Description
ignore library constraints
Using this parameter, the DRC
constraints coming from the library can
be switched off.
ignore library maximum capacitance
Ignores the maximum capacitance set
in a library.
ignore library maximum fanout
Ignores the maximum fanout set in a
library.
ignore library maximum transition
Ignore the maximum transition set in a
library.
ignore SDC
Ignores the constraint setting in the
SDC file.
ignore SDC maximum capacitance
Ignores maximum capacitance set in
the SDC file.
ignore SDC maximum fanout
Ignores the maximum fanout set in the
SDC file.
ignore SDC maximum transition
Ignores the maximum transition set in
the SDC file.
ignore set_clock_latency
Ignores the clock latency set in the SDC
file.
Changing Default Interpretation of Clock Constraint Parameters
1-59
Table 1-16
Clock Constraint Parameters (Continued)
Parameter
Description
ignore set_clock_transition
Ignores the clock latency set in the SDC
file.
ignore set_clock_uncertainty
Ignores the clock latency set in the SDC
file.
ignore library constraints
By default, clock tree synthesis will respect any maximum transition,
capacitance, and fanout constraint set in the library. In some cases,
this might not be desired for clock tree synthesis. Using the ignore
library constraints parameter, the DRC constraints coming
from the library can be turned off.
Usage
To turn off DRC constraints coming from the library, enter the
following:
axSetIntParam "acts" "ignore library constraints" 1\
Range
The valid values are 0 or 1. The default is 0.
ignore library maximum capacitance
The ignore library maximum capacitance parameter is set
to ignore the maximum capacitance set in a library.
Chapter 1: Clock Tree Parameters
1-60
Usage
To ignore the maximum capacitance set in a library, enter the
following:
axSetIntParam "acts" "ignore library maximum capacitance" 1
Range
The valid values are 0 or 1. The default is 0.
ignore library maximum fanout
The ignore library maximum fanout parameter is set to
ignore the maximum fanout set in a library.
Usage
To ignore the maximum fanout set in a library, enter the following:
axSetIntParam "acts" "ignore library maximum fanout" 1
Range
The valid values are 0 or 1. The default is 1.
ignore library maximum transition
The ignore library maximum transition parameter is used
to ignore the maximum transition set in a library.
Usage
To ignore the maximum transition set in a library, enter the following:
axSetIntParam "acts" "ignore library maximum transition" 1
Changing Default Interpretation of Clock Constraint Parameters
1-61
Range
The valid values are 0 or 1. The default is 0.
ignore SDC
The ignore SDC parameter is set to ignore the constraint setting in
the SDC file (DRC set_max_xxx and target values
set_clock_xxx).
Usage
To ignore constraint setting in the SDC file, enter the following:
axSetIntParam "acts" "ignore SDC" 1
Range
The valid values are 0 or 1. The default is 0.
ignore SDC maximum capacitance
The ignore SDC maximum capacitance parameter is set to
ignore maximum capacitance set in the SDC file.
Usage
To ignore maximum capacitance set in the SDC file, enter the
following:
axSetIntParam "acts" "ignore SDC maximum capacitance" 1
Range
The valid values are 0 or 1. The default is 0.
Chapter 1: Clock Tree Parameters
1-62
ignore SDC maximum fanout
The ignore SDC maximum fanout parameter is set to ignore
maximum fanout set in the SDC file.
Usage
To ignore maximum fanout set in the SDC file, enter the following:
axSetIntParam "acts" "ignore SDC maximum fanout" 1
Range
The valid values are 0 or 1. The default is 1.
ignore SDC maximum transition
The ignore SDC maximum transition parameter is set to
ignore the maximum transition set in the SDC file.
Usage
To ignore the maximum transition set in the SDC file, enter the
following:
axSetIntParam "acts" "ignore SDC maximum transition" 1
Range
The valid values are 0 or 1. The default is 0.
ignore set_clock_latency
When set to 1, the ignore set_clock_latency parameter
causes the clock latency set in the SDC file to be ignored. Clock tree
synthesis can use set_clock_latency to specify an insertion
delay target for clock tree synthesis. If the ignore
Changing Default Interpretation of Clock Constraint Parameters
1-63
set_clock_latency parameter is set to 1, this target will not be
applied and the insertion delay will be minimized or the target
specified in the dialog box will be used.
This feature is useful to achieve delay balancing and to avoid pre- to
post-clock tree synthesis differences in IO timing. If both the dialog
box and SDC target are given and this parameter is set to 0, the SDC
setting will override the dialog box.
Usage
To ignore the clock latency set in the SDC file, enter the following:
axSetIntParam "acts" "ignore set_clock_latency" 1
Range
The valid values are 0 or 1. The default is 0.
ignore set_clock_transition
When set to 1, the ignore set_clock_transition parameter
causes the clock transition set in the SDC file to be ignored. Clock
tree synthesis can use set_clock_transition to specify a target
for the clock net transition times clock tree synthesis needs to
achieve at the sink pins.
If the ignore set_clock_transition parameter is set to 1, the
target will not be applied and transition times are built according to
the cell library and global limits. In other words, the transition times
at the clock buffers in the tree will adhere only to the rule: max
transition value and stay close to the target: max
transition value.
Even if the parameter is set to 1, the set_clock_transition
value will be considered only at the clock sink pins.
Chapter 1: Clock Tree Parameters
1-64
Usage
To ignore the clock transition set in the SDC file, enter the following:
axSetIntParam "acts" "ignore set_clock_transition" 1
Range
The valid values are 0 or 1. The default is 0.
ignore set_clock_uncertainty
When set to 1, the ignore set_clock_uncertainty parameter
causes the clock uncertainty set in the SDC file to be ignored. Clock
tree synthesis can use set_clock_uncertainty to specify a
skew target for clock tree synthesis. If the ignore
set_clock_uncertainity parameter is set to 1, the target will
not be applied and the skew will be minimized. If using the
set_clock_uncertainty from SDC is turned on, the SDC
constraint and the dialog box setting are compared, and the tighter
constraint is applied. Therefore, to ensure that the SDC value is
used, set the dialog box to a large dummy value.
Usage
To ignore clock uncertainty set in the SDC file, enter the following:
axSetIntParam "acts" "ignore set_clock_uncertainty" 1
Range
The valid values are 0 or 1. The default is 1.
Changing Default Interpretation of Clock Constraint Parameters
1-65
Chapter 1: Clock Tree Parameters
1-66
2
Common Graph Parameters
2
You use the common graph parameters to fine-tune the common
graph information in the database during the design flow, such as
hierarchy preservation, placement, clock tree synthesis, saving the
design, and so on.
Table 2-1 summarizes common graph parameters specific to Astro.
Detailed descriptions of the parameters follow in alphabetical order.
Table 2-1
Common Graph Parameters Summary
Parameter
Description
CGHIER_ENABLE_FAST_REPAIR
Determines whether to skip the
hierarchy net uniqueness check and
hierarchy cell unification during
astRepairHierPreservation.
cg_opt_context_flag
Controls connection class constraint
and instance-based target library
usage in optimization.
2-1
Table 2-1
Common Graph Parameters Summary (Continued)
Parameter
Description
disable_escape_char
Determines whether the enable/
disable escape character is added to
the local name of a hierarchy net.
dont_touch_nets_connecting_ls_and_io
Controls the marking of
level_shifter/isolation_cell
connected flat nets as dont_touch.
dont_use_means_dont_touch
Determines whether to size cell
instances whose masters are
marked as dont_use to other usable
cells.
enable_ibt
Controls instance-based target
usage in Astro.
enable_connection_class
Controls connection class constraint
usage in Astro.
max_boolean_syntax_warnings
Sets a threshold number of warnings
before a summary warning message
is issued.
optimize_mix_signal_net
Turned on when optimization needs
to take care of the mixed-signal
paths.
replace_backslash
Determines whether to replace a
backslash (\) with an underscore (_)
during postroute optimization.
save_cell
Determines whether to save cells.
Chapter 2: Common Graph Parameters
2-2
CGHIER_ENABLE_FAST_REPAIR
The CGHIER_ENABLE_FAST_REPAIR parameter is set to skip the
hierarchy net uniqueness check and hierarchy cell unification during
astRepairHierPreservation.
Usage
axSetIntParam "cg" "CGHIER_ENABLE_FAST_REPAIR" 0
Range
The valid values are 0 or 1. The default is 0.
cg_opt_context_flag
The cg_opt_context_flag parameter controls connection class
constraint and instance-based target library usage in optimization.
Usage
To turn on the connection class constraint in optimization, enter the
following:
axSetIntParam "cg" "cg_opt_context_flag" 1
Range
The valid values of this parameter range between 0 and 3. The
default is 0.
CGHIER_ENABLE_FAST_REPAIR
2-3
Table 2-2 lists the valid values of this parameter and their
description.
Table 2-2
Valid Values of the cg_opt_context_flag Parameter
Value
Description
0
Turn off the connection class constraint and instance-based target
1
Turn on the connection class constraint
2
Turn on instance-based target
3
Turn on both the connection class constraint and instance-based target
disable_escape_char
The disable_escape_char parameter determines whether the
enable/disable escape character will be added to the local name of
a hierarchy net. When set to 1, the escape character is added. The
escape character is “\” by default.
Usage
axSetIntParam "cg" "disable_escape_char" 0
Range
The valid values are 0 and 1. The default is 0.
dont_touch_nets_connecting_ls_and_io
The dont_touch_nets_connecting_ls_and_io parameter
controls the marking of level_shifter/isolation_cell
connected flat nets as dont_touch.
Chapter 2: Common Graph Parameters
2-4
Usage
To mark level_shifter/isolation_cell connected flat nets
as dont_touch, enter the following:
axSetIntParam "cg" "dont_touch_nets_connecting_ls_and_io" 1
Range
The valid values are 0 or 1. The default is 0.
dont_use_means_dont_touch
When the dont_use_means_dont_touch parameter is set to 0,
the cell instances whose masters are marked as dont_use are
sized to other usable cells.
Usage
axSetIntParam "cg" "dont_use_means_dont_touch" 1
Range
The valid values are 0 or 1. The default is 1.
enable_ibt
The enable_ibt parameter controls instance-based target usage
in Astro.
Usage
To turn on instance-based target usage, enter the following:
axSetIntParam "cg" "enable_ibt" 1
dont_use_means_dont_touch
2-5
When set to 0, instance-based target usage is turned off. Setting this
parameter to 1 has the same effect as setting
cg_opt_context_flag to 2.
Range
The valid values are 0 or 1. The default is 0.
enable_connection_class
The enable_connection_class parameter controls connection
class constraint usage in Astro.
Usage
To turn on connection class constraint usage, enter the following:
axSetIntParam "cg" "enable_connection_class" 1
When this parameter is set to 1, the effect is the same as setting
cg_opt_context_flag to 1.
Range
The valid values are 0 or 1. The default is 0.
max_boolean_syntax_warnings
The max_boolean_syntax_warnings parameter causes a
warning message to be printed if the number of warnings is greater
than the specified value. The following warning message appears as
a result of setting this parameter:
"CG: warn_number Invalid syntax warnings."
Chapter 2: Common Graph Parameters
2-6
Usage
axSetIntParam "cg" "max_boolean_syntax_warnings" 5
Range
The valid values of this parameter range between 0 and 1000000.
The default is 5.
optimize_mix_signal_net
The optimize_mix_signal_net parameter is turned on to
consider mixed-signal paths during optimization.
Usage
To consider mixed-signal paths during optimization, enter the
following:
axSetIntParam "cg" "optimize_mix_signal_net" 1
Range
The valid values are 0 or 1. The default is 0.
replace_backslash
The replace_backslash parameter determines whether to
replace a backslash (\) with an underscore (_) in bus net names
during postroute optimization. This is done for compatibility with
PrimeTime.
optimize_mix_signal_net
2-7
Usage
To replace a backslash (\) with an underscore (_) during postroute
optimization, enter the following:
axSetIntParam "cg" "replace_backslash" 1
Range
The valid values are 0 or 1. The default is 0.
save_cell
The save_cell parameter determines whether to save cells.
Usage
To save cells, enter the following:
axSetIntParam "cg" "save_cell" 1
When set to 0, common graph does not save any cell.
Range
The valid values are 0 or 1. The default is 1.
Chapter 2: Common Graph Parameters
2-8
3
Crosstalk Parameters
3
You use the crosstalk parameters to fine-tune the settings used by
crosstalk analysis.
Table 3-1 summarizes crosstalk parameters specific to Astro.
Detailed descriptions of the parameters follow in alphabetical order.
Table 3-1
Crosstalk Parameters Summary
Parameter
Description
xtDeltaDelayScale
Controls delta delay scaling.
xtDeltaTransScale
Controls delta transition time scaling.
xtEnableRailToRailDeltaDelay
Multiplies delta delay by 1/
(upper_slew_threshold lower_slew_threshold).
xtNoAdaptiveInMediumEffort
Lets crosstalk analysis run faster in the
medium-effort mode.
3-1
Table 3-1
Crosstalk Parameters Summary (Continued)
Parameter
Description
xtNumOfTopAggr
Controls the number of effective aggressors
to be included in crosstalk analysis.
xtTimingWindowHighEffort
Invokes crosstalk-induced delay analysis
with better timing correlation, which
requires more runtime.
xtUseAdaptiveDetailWvfmThresh
Improves the transition time correlation with
PrimeTime SI.
xtUseNoiseWidth
Controls whether noise width is used in the
noise prune.
xtXtalkDetailWvfmThreshold
Controls the switching noise bump height
threshold above which a net qualifies for
detailed waveform-based crosstalk
analysis.
Chapter 3: Crosstalk Parameters
3-2
xtDeltaDelayScale
The xtDeltaDelayScale parameter is used to control delta delay
scaling. It works only in the low-effort mode during crosstalk-induced
delay calculation. In the low-effort mode, the scaling factor is 1.0 by
default, which means no adjustment on delta delay. In the
medium-effort mode, the delta delay is calculated more accurately
and this parameter setting is not required.
You can set the scaling factor between 0.0 and 1.0 for better
correlation with PrimeTime SI.
Syntax
axSetRealParam "xt" "xtDeltaDelayScale" float
The valid values of this parameter range between 0.0 to 1.0. The
default is 1.0.
Example
To set the delta delay scaling to 0.3, enter
axSetRealParam "xt" "xtDeltaDelayScale" 0.3
xtDeltaTransScale
The xtDeltaTransScale parameter controls the delta transition
time scaling. It works only in the low-effort mode during
crosstalk-induced delay calculation. In the low-effort mode, the
scaling factor is zero by default, which indicates no delta transition
time. In the medium-effort mode, the delta transition is calculated
more accurately and this parameter setting is not required.
xtDeltaDelayScale
3-3
Beginning with version W-2004.12-SP5, you can set the scaling
factor between 0.0 and 1000.0 for better correlation with PrimeTime
SI.
Syntax
axSetRealParam "xt" "xtDeltaTransScale" float
The valid values of this parameter range between 0.0 and 1000.0.
The default is 0.0.
Example
To set the delta transition time scaling factor to 600, enter
axSetRealParam "xt" "xtDeltaTransScale" 600
xtEnableRailToRailDeltaDelay
The xtEnableRailToRailDeltaDelay parameter multiplies
delta delay by 1/(upper_slew_threshold lower_slew_threshold).
This option is turned off by default. When the design’s slew
thresholds are really close (such as 40 percent-60 percent) and
PrimeTime SI is more pessimistic than Astro, setting this parameter
to 1 improves correlation.
Syntax
axSetIntParam "xt" "xtEnableRailToRailDeltaDelay" value
The valid values are 0 or 1. The default is 0.
Chapter 3: Crosstalk Parameters
3-4
Example
To enable this parameter, enter
axSetIntParam "xt" "xtEnableRailToRailDeltaDelay" 1
xtNoAdaptiveInMediumEffort
The xtNoAdaptiveInMediumEffort parameter lets crosstalk
analysis run faster in the medium-effort mode and provides equally
accurate results. This is achieved by choosing the right model
adaptively. This was the medium effort used in W-2004.12 and
earlier versions.
Syntax
axSetIntParam "xt" "xtNoAdaptiveInMediumEffort" value
Value
Description
0
Normal medium effort is used (the
default).
1
Adaptive medium effort is used
which runs faster.
Example
To switch to adaptive medium effort, enter
axSetIntParam "xt" "xtNoAdaptiveInMediumEffort" 1
xtNoAdaptiveInMediumEffort
3-5
xtNumOfTopAggr
The xtNumOfTopAggr parameter controls the number of effective
aggressors to be included in crosstalk noise analysis or induced
delay analysis.
Syntax
axSetIntParam "xt" "xtNumOfTopAggr" value
The valid values of this parameter range between 0 and
2147483647. The default is 0. When set to a nonzero value, n, only
the top n effective aggressors are included. When set to zero, all
effective aggressors are included in crosstalk analysis.
Example
To specify that only top four aggressors are to be included in the
crosstalk noise or induced delay analysis, enter
axSetIntParam "xt" "xtNumOfTopAggr" 4
xtTimingWindowHighEffort
The xtTimingWindowHighEffort parameter is used to perform
crosstalk-induced delay analysis with better timing window
correlation. This requires more runtime. This parameter is effective
only when timing window is turned on during crosstalk analysis.
Chapter 3: Crosstalk Parameters
3-6
Syntax
axSetIntParam "xt" "xtTimingWindowHighEffort" value
Value
Description
0
Turns off the high-effort mode of
the timing window during crosstalk
analysis (the default).
1
- The tool performs two iterations of
timing propagation with crosstalk
effect.
- Infinite timing window is used
during first iteration.
Example
To perform crosstalk-induced delay analysis with better timing
window correlation, enter
axSetIntParam "xt" "xtTimingWindowHighEffort" 1
xtUseAdaptiveDetailWvfmThresh
The xtUseAdaptiveDetailWvfmThresh parameter is used to
improve transition time correlation with PrimeTime SI. It is effective
in both low and medium effort crosstalk models.
Syntax
axSetIntParam "xt" "xtUseAdaptiveDetailWvfmThresh"
Value
Description
0
This parameter is turned off (the
default).
1
Improves the transition time
correlation with PrimeTime SI.
value
xtUseAdaptiveDetailWvfmThresh
3-7
Low effort: The potentially optimistic delta transition of low effort is a
known problem of Astro-Xtalk. Optimistic estimates tend to occur
more often in maximum corner calculations when the switching noise
bumps are large, for example, 0.35.
When the xtUseAdaptiveDetailWvfmThresh parameter is set
to 1, Astro-Xtalk calculates the delta transition based on waveforms,
on qualified nets. A net is qualified for the new calculation when the
switching noise bump height is greater than the absolute difference
of the transition upper threshold and the delay threshold. This
variable is effective only in maximum corner calculations.
With this parameter set to 1, it is guaranteed that the delta transition
is more pessimistic than the default mode. For low effort, the variable
is effective to treat optimism of delta transitions for maximum corner
only and there is no noticeable performance penalty.
Medium effort: The xtUseAdaptiveDetailWvfmThresh
parameter is used to provide better correlation with PrimeTime SI on
both delta delay and delta transition. In medium effort, qualification
of a net for detailed waveform calculation is based on the absolute
difference between upper transition threshold and the delay
threshold for maximum corner, and the difference between lower
transition threshold and the delay threshold for minimum corner.
When the switching noise bump height is larger than the difference,
the delta delay and delta slew are calculated based on the detailed
waveform. Enabling the xtUseAdaptiveDetailWvfmThresh
parameter might slow down the medium effort by 20 percent
depending on the library thresholds. When this parameter is turned
off, the detailed waveform calculation is activated only when the
switching bump height is larger than 0.35. However, there is a way
to change this default value (see
xtXtalkDetailWvfmThreshold).
Chapter 3: Crosstalk Parameters
3-8
For medium effort, the variable is effective for both delta delay and
delta transition in both minimum and maximum corners and it has
some runtime penalty.
Example
To enable this parameter, enter
axSetIntParam "xt" "xtUseAdaptiveDetailWvfmThresh"
1
xtUseNoiseWidth
The xtUseNoiseWidth parameter controls whether noise width is
used during noise prune. It works only in the low-effort mode. In low
effort, the noise width is not calculated by default. In medium effort,
the noise width is always calculated and used for pruning when
information is available.
Syntax
axSetIntParam "xt" "xtUseNoiseWidth" value
Value
Description
0
Noise width is not used in the noise
pruning operation.
1
Noise width is used in the noise
pruning operation (the default).
Example
To specify that the noise width is to be estimated and checked
against the internal estimated noise width constraints for pruning,
enter
axSetIntParam "xt" "xtUseNoiseWidth" 1
xtUseNoiseWidth
3-9
xtXtalkDetailWvfmThreshold
The xtXtalkDetailWvfmThreshold parameter controls the
switching noise bump height threshold above which a net qualifies
for detailed waveform-based crosstalk analysis. This parameter is
effective only in the medium-effort mode.
Syntax
axSetRealParam "xt" "xtXtalkDetailWvfmThreshold" value
The valid values are 0.000 to 1.000. The default is 0.35
Example
To change the value of switching noise bump height as 0.35, enter
axSetRealParam "xt" "xtXtalkDetailWvfmThreshold" 0.35
With this setting, all the nets with switching noise bump height
greater than 0.35 are analyzed with detailed waveform-based
crosstalk analysis.
If xtUseAdaptiveDetailWvfmThresh is set to 1, the algorithm is
activated when the switching noise bump height is greater than
minimum (the slew and trip point difference,
xtXtalkDetailWvfmThreshold).
Chapter 3: Crosstalk Parameters
3-10
4
Detail Route Parameters
4
You use detail parameters to fine-tune the detail routing process.
Detail routing uses the general pathways suggested by the global
routing and track assignment processes to route the nets.
Table 4-1 summarizes detail route parameters specific to Astro.
Detailed descriptions of the parameters follow in alphabetical order.
Table 4-1
Detail Route Parameters Summary
Parameter
Description
accessPolyPin
Specifies whether poly pins can
be used during detail routing for
connections
accumFloatingWireArea
Specifies maximum allowable
accumulated area for floating
wire antenna.
adjustLineViaArray
Specifies how to connect to
line-shaped via arrays.
4-1
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
advancedRouteLoops
Specifies number of loops for the
IC Compiler command
route_advanced.
advRouteLoop
Specifies number of loops for
Astro command
axgAdvRouteOpt and
astPostRouteOpt in advanced
routing.
areaNeedDoubleVia
Specifies the area that requires
100% double via coverage.
areaNeedDoubleViaDRC
Specifies whether to insert
redundant via and then check
DRC violations or check DRC
violations only.
areaSrLoop
Specifies the number of search
and repair loops during area
optimization and routing in the
axgAreaRoute command.
autoSaveInterval
Specifies how frequent
checkpoints (intermediate
results) are saved during detail
routing.
autoSrLoop
Sets the number of search and
repair loops to be carried out
after initial routing.
avoidWireOverlap
Specifies whether overlapping
same-net parallel wires is
allowed.
blockageAsFatWire
Specifies whether fat blockages
in macros and pads are to be
treated as fat wires for spacing
calculation.
Chapter 4: Detail Route Parameters
4-2
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
breakAntennaToTopPin
Specifies how top-level pins are
to be treated for antenna
considerations.
checkAntennaOnPG
Turns on or off antenna check
and fixing on power and ground
nets.
checkCellPinMinArea
Specifies how minimum area
rules are checked against cell
pins in current design.
checkIsoViaByNetType
Specifies the net types for
isolated vias checking and fixing.
checkMergedFatWire
Specifies what types of wires can
be merged to form fat wires for
fat wire spacing check.
checkTopPinMinArea
Specifies whether top-level pins
in current design are subject to
minimum-area rule check.
checkViaArrayMaxStackLevel
Specifies whether to include via
arrays when checking
maxStackLevel DRC violation.
connBrokenNet
Specifies whether broken nets
are to be left broken or are to be
reconnected.
connTieOff
Specifies whether power/ground/
clock tie-offs are to be connected
by detail routing.
connTieRail
Specifies where to connect
tie-off pins.
cornerSpacingMode
Specifies diagonal or Manhattan
mode to check corner spacing.
4-3
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
defaultDiodeProtect
Specifies the default diode
protection value for all
unspecified output ports except
top cell ports.
defaultGateSize
Specifies the default gate size for
all unspecifies input ports.
defaultTopPinExtAntennaArea
Specifies the default
extAntennaArea (external
antenna area) value for top cell
pins without
defineExtAntennaArea in TDF.
defaultTopPinExtGateSize
Specifies default extGateSize
(external gate size) value for top
cell pins without
defineExtGateSize in TDF.
defaultViaExceedFatContactThreshold
Specifies whether to merge
metals to check fat contact rule.
defaultWidthForStub
Specifies the stub width to be
used.
diagonalDRC
Specifies whether diagonal
distance or rectilinear distance is
to be used for DRC violation
analysis.
diagonalMinWidth
Specifies how shape width is
measured when checked against
the minimum width rule.
doAntennaConx
Enables and disables the
antenna check and fixing, and
sets the antenna checking mode
when enabled.
Chapter 4: Detail Route Parameters
4-4
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
doMaxCapConx
Specifies whether maximum
capacitance constraints should
be met during in-route
optimization.
doMaxTransConx
Specifies whether maximum
transition constraints should be
met during in-route optimization.
dontMakePinFat
Specifies whether wires and vias
connecting to pins are allowed to
create new fat shapes that might
trigger fat via rule violations or
minimum enclosed area (metal
hole) violations.
dontMergeGateForAntenna
Specifies whether connected
gate areas are to be added
together in antenna ratio
computation.
dontRotateVia
Specifies whether rotated vias
can be used to access standard
cell pins.
dontShortDiffEEQ
Specifies if pins from different
EEQ classes can be connected
together.
doProbeConx
Specifies whether nets with
top-layer probe constraints are to
be routed to top layer for probing.
doSelectedNetAntennaConx
Controls whether all antenna
violations should be fixed or
antenna violations for specified
nets only should be fixed.
4-5
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
doXtalkConx
Specifies whether crosstalk
constraints (such as static noise
voltage constraints and
capacitance constraints) are to
be honored during inroute
optimization.
dropVia1InsideM1Pin
Specifies whether force to via1 is
being dropped inside Metal1
(M1) pin or not.
ecoListToFile
Specifies whether to save
routing ECO list to the
ecoRoute.list file
ecoMode
Specifies what nets are to be
routed in the ECO mode, and
how they are to be rerouted.
ecoScope
Specifies whether to use global
or local scope during ECO
routing.
ecoSrLoop
Sets the number of search and
repair loops to be carried out
after ECO routing in the
axgECORouteDesign or
astPostRT command
eolEnclosureOnVia
Specifies when
endOfLineEnclosure from
technology file, and the
DesignRule section needs to be
applied to vias.
expandFillTracks
Chapter 4: Detail Route Parameters
4-6
Specifies whether track region
for metal fill should be expanded
or not.
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
fatSpacingToSameNet
Specifies whether to apply fat
metal spacing rules on the same
nets.
feedThruPinTaper
Specifies whether pin tapering is
needed for pins with multiple
connections (using pins as
feedthroughs).
fillDataType
Specifies the audiotape of filled
metals. The value N is the
audiotape of filled metals.
fillEndByMinSpcPercent
Specifies the spacing
requirement between the routing
wires and the ends of fill metal.
fillMetalCloseToMinDensityValue
Specifies the target metal
density for metal fill insertion.
fillMetalUniformly
Specifies whether to fill dummy
metals uniformly.
fillNotch
Specifies whether metal shapes
can be used to fill notch or
minimum edge violations.
fillViaDataType
Specifies the data type of filled
vias.
fixMinEdgeLengthByFilling
Specifies whether to allow filling
metals to fix minEdgeLength
violations during search and
repair.
floatingWireIsGateDischarge
Specifies whether to treat gate
as discharge path.
floatingWireMode
Specifies whether to fix floating
wire antennas.
4-7
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
followPolyTrkForPolyFill
Specifies whether tracks on poly
layer are used for poly fills.
groupSrLoop
Specifies the number of search
and repair loops in the
axgRouteGroup command.
hardMaxLayerConx
Specifies the allowed wire usage
above maximum routing layer
(maxLayer) set in top cell.
hardMinLayerConx
Specifies the allowed wire usage
below minimum routing layer
(minLayer) set in top cell.
highEffortViaDoubling
Specifies whether double via
array should be shifted to
improve double via coverage.
ignoreFloatingWireSpacing
Specifies whether to check
spacing for the floating wire
antenna.
ignoreFloatingWireToBlockageSpacing
Specifies whether to check
spacing to blockages for the
floating wire antenna.
ignoreFrozenNetDRC
Specifies whether to check same
net DRCs and opens for frozen
nets.
ignoreMetalExtensionRule
Specifies whether to ignore
endOfLineEncTbl and
eolTShapeEnc rules.
ignoreNotchDRC
Specifies whether notch
violations are to be ignored or
resolved in coming routing steps.
Chapter 4: Detail Route Parameters
4-8
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
ignoreSameNetAdjacentViaDRC
Specifies whether vias on same
net are included or not when
counting adjacent vias
ignoreTopBndy
Specifies whether top cell
boundary constrains routing
wires and contacts, and if they
do, how it constrains routing
wires and contacts.
ignoreVarSpacingToPG
Specifies whether the variable
spacing rule defined in
varRouteRule is to be applied
between signal and clock nets,
and power and ground nets.
ignoreViaRegion
Specifies whether via regions
defined on pins are to be ignored
during routing.
isolatedViaQuadrantSpacing
Defines an isolated via rule by
specifying spacing between an
isolated via and its adjacent vias.
It requires adjacent vias to cover
all four quadrants within a certain
distance from isolated via.
isolatedViaSpacing
Specifies maximum spacing
between an isolated via and its
adjacent vias.
layerLengthLimit
Sets the total length limit on the
flagged routing layers for each
two point connection by routing
search.
lessMinAreaStackCost
Specifies stacked via usage and
cost when stacked via does not
satisfy minimum area rules.
4-9
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
limitPolyLength limitM1Length limitM2Length
limitM3Length limitM4Length
Specifies the layers that should
be included for
layerLengthLimit constraint
computation
lineViaFollowPrefDir
Specifies default orientation of a
line via array.
lowSkewClkRoute
Specifies how many changes are
allowed on nets from clock tree
synthesis during detail routing.
M1EolTip2SideSpacing
M2EolTip2SideSpacing
M3EolTip2SideSpacing
M4EolTip2SideSpacing
M5EolTip2SideSpacing
M6EolTip2SideSpacing
M7EolTip2SideSpacing
M8EolTip2SideSpacing
M9EolTip2SideSpacing
M10EolTip2SideSpacing
M11EolTip2SideSpacing
M12EolTip2SideSpacing
Specifies spacing between
line-end and line-side for metalx
layer
m1FloatingWireArea m2FloatingWireArea
m3FloatingWireArea m3FloatingWireArea
m4FloatingWireArea m5FloatingWireArea
m6FloatingWireArea m7FloatingWireArea
m8FloatingWireArea m9FloatingWireArea
m10FloatingWireArea m11FloatingWireArea
m12FloatingWireArea
Specifies maximum allowable
metal area for floating wire
antenna.
Chapter 4: Detail Route Parameters
4-10
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
M1FloatingWirePLength1
M2FloatingWirePLength1
M3FloatingWirePLength1
M4FloatingWirePLength1
M5FloatingWirePLength1
M6FloatingWirePLength1
M7FloatingWirePLength1
M8FloatingWirePLength1
M9FloatingWirePLength1
M10FloatingWirePLength1
M11FloatingWirePLength1
M12FloatingWirePLength1
Specifies the value of floating
wire parallel length1 for metalx
layer.
M1FloatingWirePLength2
M2FloatingWirePLength2
M3FloatingWirePLength2
M4FloatingWirePLength2
M5FloatingWirePLength2
M6FloatingWirePLength2
M7FloatingWirePLength2
M8FloatingWirePLength2
M9FloatingWirePLength2
M10FloatingWirePLength2
M11FloatingWirePLength2
M12FloatingWirePLength2
Specifies the value of floating
wire parallel length2 for metalx
layer.
M1FloatingWirePLength3
M2FloatingWirePLength3
M3FloatingWirePLength3
M4FloatingWirePLength3
M5FloatingWirePLength3
M6FloatingWirePLength3
M7FloatingWirePLength3
M8FloatingWirePLength3
M9FloatingWirePLength3
M10FloatingWirePLength3
M11FloatingWirePLength3
M12FloatingWirePLength3
Specifies the value of floating
wire parallel length3 for metalx
layer.
4-11
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
M1FloatingWirePLength4
M2FloatingWirePLength4
M3FloatingWirePLength4
M4FloatingWirePLength4
M5FloatingWirePLength4
M6FloatingWirePLength4
M7FloatingWirePLength4
M8FloatingWirePLength4
M9FloatingWirePLength4
M10FloatingWirePLength4
M11FloatingWirePLength4
M12FloatingWirePLength4
Specifies the value of floating
wire parallel length4 for metalx
layer.
M1FloatingWirePLength5
M2FloatingWirePLength5
M3FloatingWirePLength5
M4FloatingWirePLength5
M5FloatingWirePLength5
M6FloatingWirePLength5
M7FloatingWirePLength5
M8FloatingWirePLength5
M9FloatingWirePLength5
M10FloatingWirePLength5
M11FloatingWirePLength5
M12FloatingWirePLength5
Specifies the value of floating
wire parallel length5 for metalx
layer.
M1FloatingWirePLMinSpc1
M2FloatingWirePLMinSpc1
M3FloatingWirePLMinSpc1
M4FloatingWirePLMinSpc1
M5FloatingWirePLMinSpc1
M6FloatingWirePLMinSpc1
M7FloatingWirePLMinSpc1
M8FloatingWirePLMinSpc1
M9FloatingWirePLMinSpc1
M10FloatingWirePLMinSpc1
M11FloatingWirePLMinSpc1
M12FloatingWirePLMinSpc1
Specifies the value of floating
wire parallel length spacing1 for
metalx layer.
Chapter 4: Detail Route Parameters
4-12
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
M1FloatingWirePLMinSpc2
M2FloatingWirePLMinSpc2
M3FloatingWirePLMinSpc2
M4FloatingWirePLMinSpc2
M5FloatingWirePLMinSpc2
M6FloatingWirePLMinSpc2
M7FloatingWirePLMinSpc2
M8FloatingWirePLMinSpc2
M9FloatingWirePLMinSpc2
M10FloatingWirePLMinSpc2
M11FloatingWirePLMinSpc2
M12FloatingWirePLMinSpc2
Specifies the value of floating
wire parallel length spacing2 for
metalx layer.
M1FloatingWirePLMinSpc3
M2FloatingWirePLMinSpc3
M3FloatingWirePLMinSpc3
M4FloatingWirePLMinSpc3
M5FloatingWirePLMinSpc3
M6FloatingWirePLMinSpc3
M7FloatingWirePLMinSpc3
M8FloatingWirePLMinSpc3
M9FloatingWirePLMinSpc3
M10FloatingWirePLMinSpc3
M11FloatingWirePLMinSpc3
M12FloatingWirePLMinSpc3
Specifies the value of floating
wire parallel length spacing3 for
metalx layer.
M1FloatingWirePLMinSpc4
M2FloatingWirePLMinSpc4
M3FloatingWirePLMinSpc4
M4FloatingWirePLMinSpc4
M5FloatingWirePLMinSpc4
M6FloatingWirePLMinSpc4
M7FloatingWirePLMinSpc4
M8FloatingWirePLMinSpc4
M9FloatingWirePLMinSpc4
M10FloatingWirePLMinSpc4
M11FloatingWirePLMinSpc4
M12FloatingWirePLMinSpc4
Specifies the value of floating
wire parallel length spacing4 for
metalx layer.
4-13
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
M1FloatingWirePLMinSpc5
M2FloatingWirePLMinSpc5
M3FloatingWirePLMinSpc5
M4FloatingWirePLMinSpc5
M5FloatingWirePLMinSpc5
M6FloatingWirePLMinSpc5
M7FloatingWirePLMinSpc5
M8FloatingWirePLMinSpc5
M9FloatingWirePLMinSpc5
M10FloatingWirePLMinSpc5
M11FloatingWirePLMinSpc5
M12FloatingWirePLMinSpc5
Specifies the value of floating
wire parallel length spacing5 for
metalx layer.
m1FloatingWireSpacing
m2FloatingWireSpacing
m3FloatingWireSpacing
m4FloatingWireSpacing
m5FloatingWireSpacing
m6FloatingWireSpacing
m7FloatingWireSpacing
m8FloatingWireSpacing
m9FloatingWireSpacing
m10FloatingWireSpacing
m11FloatingWireSpacing
m12FloatingWireSpacing
Specifies metal spacing for
floating wire antenna.
m1PinNoOffsetVia
Specifies whether to allow offset
via on m1 pin.
M1StubMode M2StubMode M3StubMode
M4StubMode M5StubMode M6StubMode
M7StubMode M8StubMode M9StubMode
M10StubMode M11StubMode M12StubMode
Specifies how to check
end-of-line spacing rule for each
metal layer.
m1WireCost m2WireCost
Specifies metal layer usage and
wire cost for metal1 and metal2
layers
macroPinCenterConn
Specifies how macro and pad
cell pins are connected.
Chapter 4: Detail Route Parameters
4-14
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
maxAntennaPinCount
Specifies pin count threshold for
a net to be considered for
antenna checking and fixing.
maxAntennaRatio
Specifies the maximum tolerable
antenna ratio.
maxAntennaRatioScale
Specifies maximum antenna
ratio scale for diode mode 11 and
diode mode 12.
maxCutAntennaRatio
Enables and disables the cut
antenna check and fix.
maxOffGridTrack
Specifies how off-grid tracks are
to be added for off-grid pins and
off-grid feedthroughs.
maxStackRange
Specifies the separating
distance between two cuts to be
considered as stacking when
checking for maxStackLevel
constraint from technology file.
metalFillDensityIncrement
Specifies increment value for
metal fill.
minAntennaRatioScale
Specifies minimum antenna ratio
scale for diode mode 11 and
diode mode 12.
minLengthCheckCutMode
Specifies how to compute
minimum length when a polygon
completely encloses a via.
minShieldLength
Specifies minimum length for a
wire to be shielded in the unit of
pitches.
4-15
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
neighboringLayerFatExtensionRange
Specifies the fat extension range
for recommended metal spacing
on adjacent upper layer.
neighboringLayerFatThreshold
Specifies the fat threshold for
metal spacing on adjacent upper
layer.
neighboringLayerM1RecommendedSpacing
neighboringLayerM2RecommendedSpacing
neighboringLayerM3RecommendedSpacing
neighboringLayerM4RecommendedSpacing
neighboringLayerM5RecommendedSpacing
neighboringLayerM6RecommendedSpacing
neighboringLayerM7RecommendedSpacing
neighboringLayerM8RecommendedSpacing
neighboringLayerM9RecommendedSpacing
neighboringLayerM10RecommendedSpacing
neighboringLayerM11RecommendedSpacing
neighboringLayerM12RecommendedSpacing
Specifies recommended spacing
for wires on neighboring upper
layer.
noOffGridRouting
Specifies the type of off-grid
routing.
noOffsetFatVia
Specifies the relative positions of
fat vias and wires that they land
on.
numCPUs
Specifies the number of CPUs to
be used for distributed routing.
offGridCost
Specifies extra off-grid routing
cost.
offsetFillTrack
Specifies how to offset metal fill
track.
optDelaySlackTarget
Specifies slack target for delay
optimization during in-route
optimization.
Chapter 4: Detail Route Parameters
4-16
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
optDelaySrLoop
Specifies the number of search
and repair loops after delay
optimization in axgAdvRouteOpt
or astPostRouteOpt command.
optimizeRouteGroup
Specifies whether optimization is
to be run in axgRouteGroup
command.
optSetup
Specifies whether setup slack is
to be maintained or improved
during in-route optimization.
optSrLoop
Specifies the number of search
and repair loops after route
optimization in axgRoutOpt
command.
optViaHoldTimeThreshold
Specifies the hold time threshold
for contact optimization.
optViaReportExcludedNets
Specifies whether to report the
timing-critical nets during contact
optimization.
optViaSetupSlackThreshold
Specifies the setup slack
threshold for contact
optimization.
optViaSrLoop
Specifies search and repair
loops after contact optimization.
optViaTimingDriven
Specifies whether to preserve
timing for critical nets with timing
violations.
outputPinDischarge
Flags whether output pins and
diodes can discharge unlimited
static charge, or cannot
discharge any static charge at
all.
4-17
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
parallelLengthMode
Specifies how to compute
parallel length for fat metal
spacing rule.
pinTaperLengthLimit
Specifies the limit for pin tapering
length.
pinTaperMode
Specifies pin tapering width. If
the value is set to 0, the tapering
width is the default width.
polyContIsolatedViaQuadrantSpacing
via1IsolatedViaQuadrantSpacing
via2IsolatedViaQuadrantSpacing
via3IsolatedViaQuadrantSpacing
via4IsolatedViaQuadrantSpacing
via51IsolatedViaQuadrantSpacing
via6IsolatedViaQuadrantSpacing
via7IsolatedViaQuadrantSpacing
via8IsolatedViaQuadrantSpacing
via9IsolatedViaQuadrantSpacing
via10IsolatedViaQuadrantSpacing
via11IsolatedViaQuadrantSpacing
Specifies maximum spacing
between an isolated via and its
adjacent vias.
polyContIsolatedViaSpacing
via1IsolatedViaSpacing
via2IsolatedViaSpacing
via3IsolatedViaSpacing
via4IsolatedViaSpacing
via5IsolatedViaSpacing
via6IsolatedViaSpacing
via7IsolatedViaSpacing
via81IsolatedViaSpacing
via9IsolatedViaSpacing
via10IsolatedViaSpacing
via11IsolatedViaSpacing
Specifies maximum spacing
between an isolated via and its
adjacent vias.
Chapter 4: Detail Route Parameters
4-18
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
polycontMacroDensity via1MacroDensity
via2MacroDensity via3MacroDensity
via4MacroDensity via5MacroDensity
via6MacroDensity via7MacroDensity
via8MacroDensity via9MacroDensity
via10MacroDensity via11MacroDensity
Specifies macro’s via density.
polyMacroDensity m1MacroDensity
m2MacroDensity m3MacroDensity
m4MacroDensity m5MacroDensity
m6MacroDensity m7MacroDensity
m8MacroDensity m9MacroDensity
m10MacroDensity m11MacroDensity
m12MacroDensity
Specifies macro’s metal density.
polyWireCost
Specifies poly layer usage and
poly wire cost during routing.
portSingleConn
Specifies how many points a port
can be connected to routes.
readMetalBlockageLayer
Specifies whether shapes on
user-created metal blockage
layers are to be read in or
ignored.
removeObsoleteStub
Specifies whether to remove the
obsolete stub.
reportLimit
Specifies the maximum number
of DRC violations that the router
reports.
rerouteUserWire
Specifies whether user-created
wires and vias are to be treated
as fixed or reroutable.
rerunDRC
Specifies whether DRC
violations are regenerated
before search and repair.
4-19
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
resetMinMaxLayer
Resets minimum-maximum rule
constraints defined by
axgSetMinMaxLayer and
axgSetNetConstraint
commands before search and
repair.
rotateLineViaArray
Specifies how line-shaped via
arrays are rotated.
shieldRerouteSignalNets
Specifies whether to re-route
signal nets during shielding.
shieldViaMinSpacing
Specifies the spacing
requirement on shielded vias.
shiftVarWidthWire
Specifies whether wide wires are
to be put on routing tracks, or to
be shifted by half pitch if it
improves routability.
smallJogMinLength
Specifies the minimum length of
a small jog.
srLoop
Sets the number of search and
repair loops in search and repair
phase in axgSearchRepair
command.
stdCellBlockageAsThin
Specifies whether fat blockages
in standard cells are to be
treated as fat wires for spacing
calculation.
stopIfNoLicense
Flags whether to stop the router
or continue if the tool cannot
obtain the option license.
stub2stubOnly
Specifies the shapes to which
stubSpacing is applied.
Chapter 4: Detail Route Parameters
4-20
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
timeLimit
Specifies corresponding detail
routing step runtime limit.
timingDriven
Specifies whether timing-critical
nets with setup violations are to
be optimized during initial detail
routing.
timingSpace
Specifies whether detailed router
should try to allocate extra same
layer spacing to timing-critical
net wires.
topAntennaFixRange
Specifies when to resolve top
routing layer antenna violation by
pushing down top-level wires.
treatTiedFillAsFillToFillSpacing
Specifies whether fill-to-fill
spacing is applied to tied fills.
trimUserAntenna
Determines how user-created
dangling wires are handled.
ultraWideWireMode
Specifies the routing grids used
for ultra wide wire routing.
useSideWallForAntenna
Specifies whether wire top area
or side wall area is used for
antenna ratio computation.
V1NoOffGridRouting V2NoOffGridRouting
V3NoOffGridRouting V4NoOffGridRouting
V5NoOffGridRouting V6NoOffGridRouting
V7NoOffGridRouting V8NoOffGridRouting
V9NoOffGridRouting V10NoOffGridRouting
V11NoOffGridRouting V12NoOffGridRouting
Specifies whether to allow
off-grid routing for vias.
varSpacingToSameNet
Specifies whether variable
spacing rule defined in
varRouteRule is to be applied to
same-net shapes
4-21
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
viaOverMaxLayer
Specifies the allowed via usage
above maximum routing layer
(maxLayer) set in top cell
wideMacroPinAsFatWire
Specifies how macro and pad
cell pin shapes are treated for fat
wire spacing computation.
wideWireToInputPin
Specifies the wires and vias to
be used to connect to input pins
wideWireToMacroPin
Specifies the wires and vias to
be used to connect to macro cell
pins.
wideWireToOutputPin
Specifies the wires and vias to
be used to connect to output pins
wideWireToPadPin
Specifies the wires and vias to
be used to connect to pad cell
pins.
wideWireToTopPin
Specifies the wires and vias to
be used to connect to top cell
pins.
wideWireWidthAsMin
Specifies how to handle wide
wire width rule with
varRouteRule if it is specifies for
a net.
wireWidenForceWrongWay
Specifies whether to force
widened wires on wrong way.
wireWidenIgnoreMinEdgeLengthVio
Specifies whether to ignore
minimum edge length rule during
wire widening.
wireWidenPieceWise
Specifies whether to widen a
wire segment uniformly or to
widen it piece by piece.
Chapter 4: Detail Route Parameters
4-22
Table 4-1
Detail Route Parameters Summary (Continued)
Parameter
Description
wireWidenSrLoop
Specifies number of search and
repair loops after wire widening.
wireWidenTimingDriven
Specifies whether to widen wires
on timing-critical nets.
wireWidenWidthScheme
Specifies how many different
widths are used for wire
widening.
wrongWayExtraCost
Specifies extra wrong-way wire
cost.
wrongWayNoVia
Specifies whether contacts can
be used to connect to wrong-way
wires.
4-23
accessPolyPin
The accessPolyPin parameter specifies whether poly pins can be
used during detail routing for connections.
This parameter has no effect if the current design does not contain
poly pins, which is the case in most designs.
Syntax
axSetIntParam "droute" "accessPolyPin" value
Value
Description
0
Ignores poly pins.
1
Accesses poly pins (the default)
Example
To enable the router to use poly pins during detail routing, enter
axSetIntParam "droute" "accessPolyPin" 1
If the value is set to 0, router cannot use poly pins.
See Also
polyWireCost
accumFloatingWireArea
The accumFloatingWireArea parameter specifies maximum
allowable accumulated area for floating wire antenna. If the value is
set to N, it means that N is the maximum allowable accumulated area
for floating wire antenna.
Chapter 4: Detail Route Parameters
4-24
Syntax
axSetRealParam "droute" "accumFloatingWireArea" value
The valid values of this parameter range between 0 and 1,000,000.
The default is 0.
Example
To specify maximum allowable accumulated area for floating wire
antenna as 100, enter
axSetRealParam "droute" "accumFloatingWireArea" 100
See Also
m1FloatingWireArea m2FloatingWireArea m3FloatingWireArea
m3FloatingWireArea m4FloatingWireArea m5FloatingWireArea
m6FloatingWireArea m7FloatingWireArea m8FloatingWireArea
m9FloatingWireArea m10FloatingWireArea m11FloatingWireArea
m12FloatingWireArea, m1FloatingWireSpacing
m2FloatingWireSpacing m3FloatingWireSpacing
m4FloatingWireSpacing m5FloatingWireSpacing
m6FloatingWireSpacing m7FloatingWireSpacing
m8FloatingWireSpacing m9FloatingWireSpacing
m10FloatingWireSpacing m11FloatingWireSpacing
m12FloatingWireSpacing
adjustLineViaArray
The adjustLineViaArray parameter specifies how to connect to
line-shaped via arrays. A line-shaped via array is a via array of size
1 by N or N by 1. If the value is set to 0, the connections are made
to the center of line-shaped via arrays.
adjustLineViaArray
4-25
If the value is set to 1, the line-shaped via arrays are shifted and/or
rotated to optimize the connection. The rotation of via arrays
depends on the value of the rotateLineViaArray parameter.
Syntax
axSetIntParam "droute" "adjustLineViaArray" value
Value
Description
0
Connects to the center of line-shaped (1 x N and x 1) via array
for nets with VarRouteRule (the default).
1
Shifts and/or rotates the line-shaped via array to optimize
connection.
Example
To shift and/or rotate line-shaped via arrays for optimizing
connection, enter the following:
axSetIntParam "droute" "adjustLineViaArray" 1
When set to 0, connection is done to the center of line-shaped (1 x
N and N x 1) via arrays for nets with VarRouteRule.
See Also
rotateLineViaArray, lineViaFollowPrefDir
advancedRouteLoops
The advancedRouteLoops parameter specifies the number of
loops for the IC Compiler command route_advanced.
If the value is set to N, it means that the route_advanced
command stops after N loops.
Chapter 4: Detail Route Parameters
4-26
Syntax
axSetIntParam "droute" "advancedRouteLoops" value
The valid values of this parameter range between 0 and 50. The
default is 3.
Example
To stop route_advanced after 15 loops, enter
axSetIntParam "droute" "advancedRouteLoops" 15
See Also
advRouteLoop
advRouteLoop
The advRouteLoop parameter specifies the number of loops for
Astro command axgAdvRouteOpt and astPostRouteOpt in
advanced routing. If the value is set to N, it means that the Astro
command axgAdvRouteOpt and astPostRouteOpt stop after N
loops.
Syntax
axSetIntParam "droute" "advRouteLoop" value
The valid values of this parameter range between 0 and 50. The
default is 10.
Example
To ensure that Astro commands stop after 25 loops, enter
axSetIntParam "droute" "advRouteLoop" 25
advRouteLoop
4-27
See Also
advancedRouteLoops
areaNeedDoubleVia
The areaNeedDoubleVia parameter specifies the area that
requires 100 percent double via coverage. If the value is set to 0,
there is no restriction on the double via in the specified area. If the
value is set to 1, the router reports a violation if there is a single via
in the area defined by the route guide.
Syntax
axSetIntParam "droute" "areaNeedDoubleVia" value
Value
Description
0
No restriction on double via in
terms of area (the default).
1
The area defined by route guide
that needs 100 percent double
vias. Reports violation if single via
found.
Example
To specify the area that requires 100 percent double via coverage,
enter
axSetIntParam "droute" "areaNeedDoubleVia" 1
See Also
areaNeedDoubleViaDRC
Chapter 4: Detail Route Parameters
4-28
areaNeedDoubleViaDRC
The areaNeedDoubleViaDRC parameter specifies whether to
insert redundant via and then check DRC violations or check DRC
violatons only. If the value is set to 0, the router inserts redundant via
and check DRCs. If the value is set to 1, the router skips inserting
redundant via and only checks the DRCs if there is needDoubleVia
route guides in a design.
Syntax
axSetIntParam "droute" "areaNeedDoubleViaDRC" value
Value
Description
0
Insert redundant via first and then
do DRC check (the default).
1
Skip the redundant via insertion
and perform DRC check if there
are needDoubleVia route guides.
Example
To skip the redundant via insertion and perform DRC check, enter
axSetIntParam "droute" "areaNeedDoubleViaDRC" 1
See Also
areaNeedDoubleVia
areaSrLoop
The areaSrLoop parameter specifies the number of search and
repair loops during area optimization and routing in the
axgAreaRoute command.
areaNeedDoubleViaDRC
4-29
The search and repair loop terminates if DRC count reaches 0 even
if the specified number of iterations are not reached.
If the DRC number is still converging (reducing) after reaching the
specified number of iterations, specifying more iterations could help
reducing DRC count further, at the cost of more runtime.
Syntax
axSetIntParam "droute" "areaSrLoop" value
The valid values of this parameter range between 0 and 200. The
default is 20.
Example
To specify the number of search and repair loops during area
optimization and routing as 50, enter
axSetIntParam "droute" "areaSrLoop" 50
See Also
autoSrLoop, ecoSrLoop, optSrLoop, srLoop, optDelaySrLoop,
groupSrLoop
autoSaveInterval
The autoSaveInterval parameter specifies how frequent
checkpoints (intermediate results) are saved during detail routing. If
the value is set to 0, no checkpoint is saved during detail routing.
Otherwise, the parameter sets the time interval in minutes for each
checkpoint to be saved.
Syntax
axSetIntParam "droute" "autoSaveInterval" value
Chapter 4: Detail Route Parameters
4-30
The valid values of this parameter range between 0 and 14400. The
default is 120.
Example
To specify how frequent checkpoints (intermediate results) are saved
during detail routing, enter
axSetIntParam "droute" "autoSaveInterval" 150
autoSrLoop
The autoSrLoop parameter sets the number of search and repair
loops to be carried out after initial routing.
The search and repair loop terminates if a DRC violation count
reaches 0 even if the specified number of iterations is not reached.
If the DRC violation number is still converging (reducing) after
reaching the specified number of iterations, specifying more
iterations could further help in reducing the DRC violation count at
the cost of more runtime.
Syntax
axSetIntParam "droute" "autoSrLoop" value
The valid values of this parameter range between 0 and 500. The
default is 0.
Example
To set the number of search and repair loops to be carried out after
initial routing as 100, enter
axSetIntParam "droute" "autoSrLoop" 100
autoSrLoop
4-31
See Also
autoSrLoop, ecoSrLoop, optSrLoop, srLoop, optDelaySrLoop,
groupSrLoop
avoidWireOverlap
The avoidWireOverlap parameter specifies whether overlapping
of same-net-parallel wires is allowed. If the value is set to 0,
overlapping same-net parallel wires is allowed. If the value is set to
1, overlapping same-net parallel wires is not allowed.
Note that by allowing overlapping same-net parallel wires, the router
still generates DRC violation clean designs with respect to the final
merged polygons. For example, if two overlapping same-net parallel
wires form a fat wire, the fat wire spacing rule is observed on the
resulting wires.
It is recommended to leave avoidWireOverlap with its default
value of 0 to give the router more flexibility to find routing solutions.
Syntax
axSetIntParam "droute" "avoidWireOverlap" value
Value
Description
0
Allows same-net parallel wires to
overlap (the default).
1
Does not allow parallel wires to
overlap.
Chapter 4: Detail Route Parameters
4-32
Example
To allow same-net parallel wires to overlap, enter the following:
axSetIntParam "droute" "avoidWireOverlap" 0
When set to 1, the parallel wires are not allowed to overlap.
blockageAsFatWire
The blockageAsFatWire parameter specifies whether fat
blockages in macros and pads are to be treated as fat wires for the
spacing calculation.
Note that this flag applies only to blockages in macros and pads, and
it has no effect on standard cell blockages. Blockage types set in
FRAM view overwrites the value by blockageAsFatWire.
This flag is not relevant if there is no fat spacing rule in the design.
If you know that the fat blockage shapes do not correspond to any
fat wires, blockageAsFatWire can be set to 0 to avoid
unnecessary spacing around blockages. Otherwise, this flag should
be left to its default value of 1 to guarantee proper spacing, even
though it might be conservative in certain cases.
blockageAsFatWire
4-33
Syntax
axSetIntParam "droute" "blockageAsFatWire" value
Value
Description
0
The router treats fat blockages in
macros/pads as thin wires
1
The router treats fat blockages in
macros/pads as fat wires (the
default).
Example
To treat fat blockages in macro/pad as fat wires, enter the following:
axSetIntParam "droute" "blockageAsFatWire" 1
When set to 0, fat blockages are treated as thin wires in macro/pad.
See Also
stdCellBlockageAsThin, wideMacroPinAsFatWire,
checkMergedFatWire
breakAntennaToTopPin
The breakAntennaToTopPin parameter specifies how top-level
pins are to be treated for antenna considerations. If the value is set
to 0, top-level pins are treated as floating wires. If the value is set to
1, top-level pins are treated as a huge antenna, which need to be
broken with a wire jumper at the net top metal layer. If the value is
set to 2, input pins can only be connected to top-level pins through
the highest routing layer of the nets.
Chapter 4: Detail Route Parameters
4-34
Syntax
axSetIntParam "droute" "breakAntennaToTopPin" value
The valid values of this parameter range between 0 and 2. The
default is 0.
Value
Description
0
Top-level pins are treated as floating (the default)
1
Top-level pins are treated as connected to a huge antenna and
break the antenna (requiring a jumper at top metal layer)
2
All the input pins can be connected to top-level pins only through
the highest routing layer of the net.
Example
To ensure that all the input pins can be connected to top-level pins
only through the highest routing layer of the net, enter
axSetIntParam "droute" "breakAntennaToTopPin" 2
See Also
doAntennaConx, checkAntennaOnPG, maxAntennaPinCount,
maxAntennaRatio, maxCutAntennaRatio, useSideWallForAntenna,
dontMergeGateForAntenna, outputPinDischarge,
defaultTopPinExtAntennaArea.
checkAntennaOnPG
The checkAntennaOnPG parameter turns on or off antenna check
and fixing on power and ground nets. If the value is set to 0, antenna
checking and fixing is turned off for power and ground nets. If the
value is set to 1, antenna checking and fixing is turned on for power
and ground nets.
checkAntennaOnPG
4-35
This parameter overwrites maxAntennaPinCount for power and
ground nets. For some large fanout nets like power and ground nets,
antenna analysis can take an excessive amount of time, and
antennas are usually prevented by using diodes during net
construction. It is best to skip antenna analysis and fixing for such
nets.
Syntax
axSetIntParam "droute" "checkAntennaOnPG" value
Value
Description
0
Does not check antenna on power
and ground nets (the default).
1
Checks antenna on power and
ground nets.
Example
To check the antenna on power and ground nets, enter the following:
axSetIntParam "droute" "checkAntennaOnPG" 1
checkCellPinMinArea
The checkCellPinMinArea parameter specifies how minimum
-area rules are checked against cell pins in current design. If the
value is set to 0, it is assumed that cell pins always satisfy
minimum-area rules, and minimum-area rules are not checked
against cell pins and the wires connecting to pins on the same layer.
If the value is set to 1, minimum-area rules are checked against
non-floating pins (pins have wires and vias connected to them) and
respective connecting wires.
Chapter 4: Detail Route Parameters
4-36
Note that even when the value is set to 1, the minimum-area rules
are not checked against floating pins (pins with no connection to
them). In most libraries, the minimum-area rules are already satisfied
in cells, and checkCellPinMinArea should be left at its default
value of 0 for these libraries. If minimum-area rules might be violated
on cell pins in the library, you might want to set
checkCellPinMinArea to 1.
Note that pins might not include all connected wires in cells, and
minimum-area rule check on cell pins at design level might be
conservative and can give false minimum-area rule violations.
Syntax
axSetIntParam "droute" "checkCellPinMinArea" value
Value
Description
0
Assumes pins on cell instance
always meet minimum-area rules
(the default).
1
Checks minimum-area violation of
non-floating pins of cell instances.
Example
To check minimum-area violation of non-floating pins of cell
instances, enter the following:
axSetIntParam "droute" "checkCellPinMinArea" 1
When set to 0, it is assumed that pins on cell instance always meet
minimum-area rules.
See Also
checkTopPinMinArea
checkCellPinMinArea
4-37
checkIsoViaByNetType
The checkIsoViaByNetType parameter specifies the net types
for isolated vias checking and fixing. If the value is set to 0, the router
checks and fixes isolated vias for all nets.
If the value is set to 1, the router checks and fixes isolated vias for
power and ground nets only. If the value is set to 2, the router checks
and fixes isolated vias for clock nets only.
Syntax
axSetIntParam "droute" "checkIsoViaByNetType" value
Value
Description
0
Checks and fixes isolated vias for all net type (the default)
1
Checks and fixes isolated vias for power and ground nets
2
Checks and fixes isolated vias for clock nets
Example
To check and fix isolated vias for power and ground nets, enter
axSetIntParam "droute" "checkIsoViaByNetType" 1
checkMergedFatWire
The checkMergedFatWire parameter specifies what types of
wires can be merged to form fat wires for fat wire spacing check. If
the value is set to 0, wires are not merged to form fat wires (for
example, if there are two thin wires abutting each other, they are not
Chapter 4: Detail Route Parameters
4-38
merged to form a fat wire). If the value is set to 1, only fixed preroute
wires are merged to form fat wires. If the value is set to 2, wires of all
types are merged to form fat wires.
If the value is set to 3, metal blockages inside standard cell are also
merged to form fat wires. This flag is not relevant if there is no fat
spacing rule in the design. In general, to allow a proper fat wire
spacing check, this flag should be left with the default value of 2,
which allows all types of wires to be merged. In previous releases,
the router ran slower with value 2 so this parameter was created. The
overhead of using value 2 in the latest router should be minimized,
and it is the default setting now.
Syntax
axSetIntParam "droute" "checkMergedFatWire" value
Value
Description
0
Does not merge thin wires into fat wires
1
Checks fat wires formed by merging two or more fixed preroute wires
2
Checks fat wires formed by merging two or more signal wires (the
default)
3
Checks fat wires formed by merging blockages between standard cells
Example
To check fat wires formed by merging two or more fixed preroute
wires, enter the following:
axSetIntParam "droute" "checkMergedFatWire" 1
See Also
stdCellBlockageAsThin, blockageAsFatWire,
wideMacroPinAsFatWire, parallelLengthMode
checkMergedFatWire
4-39
checkTopPinMinArea
The checkTopPinMinArea parameter specifies whether top-level
pins in current design are subject to minimum-area rule check. If the
value is set to 0, minimum-area rules are not checked against
top-level pins. If the value is set to 1, the minimum-area rules are
checked against top-level pins.
This parameter is applied only to non-floating pins (connected to
wires), and minimum-area rules are not checked on floating pins. For
most block level designs, the top-level pins represent crossing points
for wires going across block boundaries, and the block pins are
deleted once the design is flattened in the top-level design. In such
cases, you might not want to worry about minimum-area violations
on block-level pins (for example, minimum-area rules might be
satisfied on the top level), and can set checkTopPinMinArea to 0.
Syntax
axSetIntParam "droute" "checkTopPinMinArea" value
Value
Description
0
Ignores minimum-area violation of
top-cell pins.
1
Checks minimum-area violation of
top-cell pins (the default).
Example
To ignore minimum-area violation of top-cell pins, enter the following:
axSetIntParam "droute" "checkTopPinMinArea" 0
See Also
checkCellPinMinArea
Chapter 4: Detail Route Parameters
4-40
checkViaArrayMaxStackLevel
The checkViaArrayMaxStackLevel parameter specifies
whether to include via arrays when checking maxStackLevel DRC
violation. If the value is set to 0, it ignores the maxStackLevel DRC
violation if all stacked vias are via arrays. If the value is set to 1, it
includes stacked via arrays for maxStackLevel checking. If the
value is set to 2, it ignores the maxStackLevel DRC violation if at
least one stacked via is via array. If the value is set to 3, it ignores
maxStackLevel DRC violation if all stacked vias are aligned with
the via array (overlapped with at least two cuts).
Syntax
axSetIntParam "droute" "checkViaArrayMaxStackLevel" value
Value
Description
0
Ignores the maxStackLevel DRC violation if all stacked vias are
via arrays (the default)
1
Checks the maxStackLevel DRC violation for stacked via arrays
2
Ignores the maxStackLevel DRC violation if at least one stacked
via is a via array
3
Ignores the maxStackLevel DRC violation if all stacked vias are
aligned with the via array (overlapped with at least two cuts)
Example
To ignore the maxStackLevel DRC violation if all stacked vias are
via arrays, enter
axSetIntParam "droute" "checkViaArrayMaxStackLevel" 0
checkViaArrayMaxStackLevel
4-41
connBrokenNet
The connBrokenNet parameter specifies whether broken nets are
to be left broken or are to be reconnected. A broken net is a net that
is not totally connected by glinks, preroutes, wires, or vias. If the
value is set to 0, broken nets are ignored during detail routing. If the
value is set to 1, broken nets are to be reconnected by detail routing.
This parameter does not affect tie-off connections, which are
controlled by the connTieOff parameter.
Syntax
axSetIntParam "droute" "connBrokenNet" value
Value
Description
0
Ignores broken nets
1
Reconnects broken nets (the
default)
Example
To ignore broken nets, enter
axSetIntParam "droute" "connBrokenNet" 0
When set to 1, the broken nets are reconnected.
See Also
connTieOff, connTieRail
Chapter 4: Detail Route Parameters
4-42
connTieOff
The connTieOff parameter specifies whether power and ground
power and ground/clock tie-offs are to be connected by detail
routing. In normal flow, tie-offs are not connected before detail
routing. If the value is set to 0, power/ground/clock tie-off
connections are skipped during detail routing. If the value is set to 1,
power/ground/clock tie-offs are connected during detail routing even
if they are not connected during global routing.
Syntax
axSetIntParam "droute" "connTieOff" value
Value
Description
0
Skips tie-off for power and ground
clock nets.
1
Performs tie-off for power and
ground clock nets (the default).
Example
To skip tie-off for power and ground clock nets, enter
axSetIntParam "droute" "connTieOff" 0
When set to 1, tie-off is done.
See Also
connBrokenNet, connTieRail
connTieOff
4-43
connTieRail
The connTieRail parameter specifies where to connect tie-off
pins. If the value is set to 0, the router connects tie-off pins anywhere
on power and ground nets. If the value is set to 1, the router connects
tie-off pins to power and ground rails and power and ground pins
only.
Syntax
axSetIntParam "droute" "connTieRail" value
Value
Description
0
Connects tie-off pins anywhere
(the default).
1
Connects tie pins only to power
and ground rail, and power and
ground pins.
Example
To connect tie pins only to power and ground rails and power and
ground pins, enter
axSetIntParam "droute" "connTieRail" 1
When set to 0, the tie-off pins can be connected anywhere.
See Also
connBrokenNet, connTieOff
Chapter 4: Detail Route Parameters
4-44
cornerSpacingMode
The cornerSpacingMode parameter specifies diagonal or
Manhattan mode to check corner spacing. If the value is set to 0, the
router checks corner spacing by diagonal distance. If the value is set
to 1, the router checks corner spacing by Manhattan distance.
Syntax
axSetIntParam "droute" "cornerSpacingMode" value
Value
Description
0
Checks corner spacing by diagonal
distance (the default).
1
Checks corner spacing by
Manhattan distance.
Example
To check corner spacing by Manhattan distance, enter
axSetIntParam "droute" "cornerSpacingMode" 1
defaultDiodeProtect
The defaultDiodeProtect parameter specifies default diode
protection value for all unspecified output ports except top-cell ports.
If an output port has its diode protection value set, the value of
defaultDiodeProtect is ignored for this port. This parameter is
used only when doAntennaConx is set to 4.
Syntax
axSetRealParam "droute" "defaultDiodeProtect" value
cornerSpacingMode
4-45
The valid values of this parameter range between 0 and 1,000,000.
The default is 0.
Example
To specify default diode protection value for all unspecified output
ports except top cell ports, enter
axSetRealParam "droute" "defaultDiodeProtect" 50.000
See Also
doAntennaConx, defaultGateSize, defaultTopPinExtGateSize,
defaultTopPinExtAntennaArea
defaultGateSize
The defaultGateSize parameter specifies the default gate size
for all unspecifies input ports. If the gate size for an input port is set,
the value of defaultGateSize is ignored for this gate.
Syntax
axSetRealParam "droute" "defaultGateSize" value
The valid values of this parameter range between 0 and 1,000,000.
The default is 0.
Example
To specify the gate size for all unspecifies input ports as 100, enter
xSetRealParam "droute" "defaultGateSize" 100
See Also
doAntennaConx, defaultDiodeProtect, defaultTopPinExtGateSize,
defaultTopPinExtAntennaArea
Chapter 4: Detail Route Parameters
4-46
defaultTopPinExtAntennaArea
The defaultTopPinExtAntennaArea parameter specifies
default extAntennaArea (external antenna area) value for top-cell
pins without defineExtAntennaArea in TDF. If a top cell pin has
its definExtAntennaArea in TDF, the
defaultTopPinExtAntennaArea value is ignored for this pin.
Syntax
axSetRealParam "droute" "defaultTopPinExtAntennaArea" value
The valid values of this parameter range between 0 and 1,000,000.
The default is 0.
Example
To specify default extAntennaArea value for top cell pins without
defineExtAntennaArea in TDF, enter
axSetRealParam "droute" "defaultTopPinExtAntennaArea" 100
See Also
breakAntennaToTopPin, doAntennaConx, defaultDiodeProtect,
defaultGateSize, defaultTopPinExtGateSize.
defaultTopPinExtGateSize
The defaultTopPinExtGateSize parameter specifies default
extGateSize (external gate size) value for top cell pins without
defineExtGateSize in TDF. If a top cell pin has its extGateSize
in TDF, the defaultTopPinExtGateSize value is ignored for this
pin.
defaultTopPinExtAntennaArea
4-47
Syntax
axSetRealParam "droute" "defaultTopPinExtGateSize" value
The valid values of this parameter range between 0 and 1,000,000.
The default is 0.
Example
To specify the default extGateSize value for top cell pins without
defineExtGateSize in TDF, enter
axSetRealParam "droute" "defaultTopPinExtGateSize" 100
See Also
doAntennaConx, defaultDiodeProtect, defaultGateSize,
defaultTopPinExtAntennaArea.
defaultViaExceedFatContactThreshold
The defaultViaExceedFatContactThreshold parameter
specifies whether to merge metals for checking fat contact rule.
If the value is set to 0, the router merges all metals (including via’s
metal enclosures and wires) to check fat contact rule. If the value is
set to 1, the router checks the rule for wires only.
Chapter 4: Detail Route Parameters
4-48
Syntax
axSetIntParam "droute"
"defaultViaExceedFatContactThreshold" value
Value
Description
0
Uses merged metal to check the
NeedFatContact rule (the default).
1
Uses only wires to check the
NeedFatContact rule.
Example
To use only wires to check the NeedFatContact rule, enter
axSetIntParam "droute"
"defaultViaExceedFatContactThreshold"1
defaultWidthForStub
The defaultWidthForStub parameter specifies the stub width to
be used. The stub is a piece of metal added to contact metal to
satisfy minimum area rules. If the value is set to 0, the stub width is
defined to the contact metal width. If the value is set to 1, the stub
width is defined to be the default metal width.
If the default metal width is the same as the default contact metal
width, this parameter does not affect the results. Otherwise, it
depends on technology; setting it one way or the other might make
a difference in routing results.
defaultWidthForStub
4-49
Syntax
axSetIntParam "droute" "defaultWidthForStub" value
Value
Description
0
Uses stubs with contact metal
width to fix minimum area
violations (the default).
1
Uses stubs with default metal width
to fix minimum area violations.
Example
To use stubs with default metal width to fix minimum area violations,
enter
axSetIntParam "droute" "defaultWidthForStub" 1
See Also
lessMinAreaStackCost
diagonalDRC
The diagonalDRC parameter specifies whether diagonal distance
or rectilinear distance is to be used for DRC violation analysis. If the
value is set to 0, the rectilinear distance is used. If the value is set to
1, the diagonal distance is used.
When the rectilinear distance is used for DRC violation analysis, the
distances in at least one of the X and Y directions need to satisfy
spacing requirement to avoid a DRC violation.
Chapter 4: Detail Route Parameters
4-50
Rectilinear measurement is more restrictive than diagonal
measurement at the corners of shapes, and could lead to routing
difficulty and more DRC violations in some designs. This might be
especially noticeable if the library cells are designed assuming
diagonal spacing.
Using diagonal spacing can lead to some runtime increase in detail
routing. If technology permits, it is recommended to leave
diagonalDRC to its default value of 1 to give the router more
flexibility to avoid DRC violations.
Syntax
axSetIntParam "droute" "diagonalDRC" value
Value
Description
0
Checks violations with Manhattan (X and Y) distance.
1
Checks violations with diagonal distance (the default).
Example
To check violations with diagonal distance, enter
axSetIntParam "droute" "diagonalDRC" 1
See Also
diagonalMinWidth
diagonalMinWidth
The diagonalMinWidth parameter specifies how shape width is
measured when checked against the minimum width rule.
diagonalMinWidth
4-51
When the rectilinear width is measured, the minimum width rule is
violated if both X and Y direction widths are less than minimum width
requirements. The rectilinear width measurement is more
conservative than diagonal width measurement, and could trigger
more minimum width violations.
If technology permits, it is recommended to leave
diagonalMinWidth to its default value of 1.
Syntax
axSetIntParam "droute" "diagonalMinWidth" value
Value
Description
0
Checks minimum width for Manhattan (X and Y) size .
1
Checks min-width for diagonal size if (diagonalDRC == 1) (the default).
Example
To check the minimum width for Manhattan size, enter
axSetIntParam "droute" "diagonalMinWidth" 0
See Also
diagonalDRC
doAntennaConx
The doAntennaConx parameter enables and disables the antenna
check and fixing, and sets the antenna checking mode when
enabled. If the value is set to 0, antenna checking and fixing is
disabled. Otherwise, antenna checking and fixing is enabled.
Chapter 4: Detail Route Parameters
4-52
If the value is set to 1, only the wires on the current layer with a direct
connection path to the input pin with intermediate layers no higher
than the current layer are used to check for antenna violation. This
mode is the least constraining antenna check (best for routability). If
the value is set to 2, the wires on the current layer and below the
direct connection path to the input pin with intermediate layers no
higher than the current layer are used to check for antenna violation.
If the value is set to 3, the wires on the current layer and below with
a direct connection path to the input pin with intermediate layers no
higher than the current layer are used to check for antenna violation,
and this mode is the most aggressive antenna check (worst for
routability). If the value is set to 4, a combination of antenna rules in
mode 1, 2, and 3 defined in design libraries is used to check for
antenna violation, and limited diode protection mode can be
assumed.
It is assumed that output pins and diodes offer either unlimited
discharging capability or zero discharging capability in mode 1 to 3,
set by outputPinDischarge.
Syntax
axSetIntParam "droute" "doAntennaConx" value
Value
Description
0
No charge-collecting antenna checking (the default)
1
Ignores all lower-layer segments
2
Includes lower-layer segments to the input pins
3
Includes all lower-layer segments
4
Uses antenna rules defined in libraries
doAntennaConx
4-53
Example
To ignore all lower-layer segments, enter
axSetIntParam "droute" "doAntennaConx" 1
doMaxCapConx
The doMaxCapConx parameter specifies whether maximum
capacitance constraints should be met or ignored during in-route
optimization (axgAdvRouteOpt). If the value is set to 0, the
maximum capacitance constraints are ignored during in-route
optimization. If the value is set to 1, in-route optimization tries to
meet maximum capacitance constraints.
Syntax
axSetIntParam "droute" "doMaxCapConx" value
Value
Description
0
Ignores maximum capacitance
constraints.
1
Tries to meet maximum
capacitance constraints during
in-route optimization (the default).
Example
To ignore maximum capacitance constraints, enter
axSetIntParam "droute" "doMaxCapConx" 0
See Also
optSetup, doXtalkConx, doMaxTransConx, optDelaySlackTarget
Chapter 4: Detail Route Parameters
4-54
doMaxTransConx
The doMaxTransConx parameter specifies whether maximum
transition constraints should be met or ignored during in-route
optimization (axgAdvRouteOpt). If the value is set to 0, the
maximum transition constraints are ignored during in-route
optimization. If the value is set to 1, in-route optimization tries to
meet maximum transition constraints.
Syntax
axSetIntParam "droute" "doMaxTransConx" value
Value
Description
0
Ignores the maximum transition constraints.
1
Tries to meet the maximum transition constraints
during in-route optimization (the default).
Example
To ignore maximum transition constraints, enter
axSetIntParam "droute" "doMaxTransConx" 0
See Also
optSetup, doXtalkConx, doMaxCapConx, optDelaySlackTarget
dontMakePinFat
The dontMakePinFat parameter specifies whether wires and vias
connecting to pins are allowed to create new fat shapes that might
trigger fat via rule violations or minimum enclosed area (metal hole)
violations. If the value is set to 0, it is allowed to add wires and vias
doMaxTransConx
4-55
that might trigger above violations. If the value is set to a value other
than 0, it is not allowed to add wires and vias that might trigger above
violations.
It is recommended to leave this parameter at its default value 0 to
start. If the router creates many DRC violations related to fat via rule
violations and minimum enclosed area violations close to pins, you
can try to set the value of this parameter to other values to see if the
situation improves.
Syntax
axSetIntParam "droute" "dontMakePinFat" value
Value
Description
0
Performs normal checking only (the default)
1
Checks all the pin connections to avoid creating new
fat-shapes that may cause fatVia or minEnclosedArea
rule violations
2
Checks only standard cell pin connections to avoid
creating new fat shapes
3
Flags violation only if the fat degree of pin increases
Example
To check only standard cell pin connections to avoid creating new fat
shapes, enter
axSetIntParam "droute" "dontMakePinFat" 0
Chapter 4: Detail Route Parameters
4-56
dontMergeGateForAntenna
The dontMergeGateForAntenna parameter specifies whether
connected gate areas are to be added together in antenna ratio
computation. If the value is set to 0, the areas are added together in
antenna ratio computation if the gates are connected by wires and
vias no higher than the layer that is being analyzed. If the value is set
to 1, the areas are not added together. The value of 1 is more
constraining than the value of 0 for antenna analysis and fixing.
Syntax
axSetIntParam "droute" "dontMergeGateForAntenna" value
Value
Description
0
When 2 or more input gates are connected
together, the router adds their areas together in
computing antenna ratio. (the default).
1
The router does not add the areas of connected
input gates.
Example
To disable the addition of connected input gates by the router, enter
axSetIntParam "droute" "dontMergeGateForAntenna" 1
dontRotateVia
The dontRotateVia parameter specifies whether rotated vias can
be used to access standard cell pins. If the value is set to 0, rotated
vias can be used to access pins if necessary. If the value is set to 1,
only the default via can be used to access pins.
dontMergeGateForAntenna
4-57
Allowing rotated vias gives the router more flexibility in accessing
pins, and it is recommended to leave this parameter at its default
value if technology permits. Some libraries are designed with tight
space around pins, and forbidding rotated via can introduce
irresolvable DRC violations for certain designs.
Note that this parameter applies only to vias that are connected to
standard cell pins which have via regions extracted from BPV for via
rotation. For the vias connecting wires, no rotated vias are allowed.
Syntax
axSetIntParam "droute" "dontRotateVia" value
Value
Description
0
Uses rotated via to access pins if
necessary. (the default).
1
Uses only default via to access
pins.
Example
To use only the default via to access pins, enter
axSetIntParam "droute" "dontRotateVia" 1
When set to 0, rotated vias are used to access pins if necessary.
Chapter 4: Detail Route Parameters
4-58
dontShortDiffEEQ
The dontShortDiffEEQ parameter specifies if pins from different
EEQ classes can be connected together. If the value is set to 0, pins
from different EEQ classes can be connected together. If the value
is set to 1, pins from different EEQ classes cannot be connected
together.
Syntax
axSetIntParam "droute" "dontShortDiffEEQ" value
Value
Description
0
Connects pins from different EEQ
classes (the default).
1
Does not connect different EEQ
pins together.
Example
To prevent connecting the pins together, enter
axSetIntParam "droute" "dontShortDiffEEQ" 1
When set to 0, pins from different EEQ classes can be connected
together.
doProbeConx
The doProbeConx parameter specifies whether nets with top-layer
probe constraints are to be routed to top layer for probing.
dontShortDiffEEQ
4-59
Syntax
axSetIntParam "droute" "doProbeConx" value
Value
Description
0
Ignores top-layer probe constraints
(the default).
1
Nets with top-layer probe
constraints are routed to top layer
for probing.
Example
To route the nets with top-layer probe constraints to the top layer for
probing, enter
axSetIntParam "droute" "doProbeConx" 1
doSelectedNetAntennaConx
The doSelectedNetAntennaConx parameter controls whether all
antenna violations should be fixed or whether only antenna
violations for specified nets should be fixed.
Syntax
axSetIntParam "droute" "doSelectedNetAntennaConx" value
Value
Description
0
Fixes all antenna violations (the
default)
1
Fixes antenna violations only for
the specified nets
Chapter 4: Detail Route Parameters
4-60
Example
To fix antenna violation for specified nets only, enter
axSetIntParam "droute" "doSelectedNetAntennaConx" 1
doXtalkConx
The doXtalkConx parameter specifies whether crosstalk
constraints (such as static noise voltage constraints and capacitance
constraints) are to be honored during in-route optimization
(axgAdvRouteOpt).
Syntax
axSetIntParam "droute" "doXtalkConx" value
Value
Description
0
Ignores crosstalk constraints (the
default).
1
Honors crosstalk constraints.
Example
To honor cross-talk constraints, enter
axSetIntParam "droute" "doXtalkConx" 1
dropVia1InsideM1Pin
The dropVia1InsideM1Pin parameter specifies whether force to
via1 is being dropped inside the M1 pin or not. If the value is set to
0, the router does not force via1 to be dropped inside the M1 pin. If
doXtalkConx
4-61
the value is set to 1, the router forces via1 to be dropped inside the
M1 pins and via’s M1 enclosure is completely enclosed within the M1
pin.
Syntax
axSetIntParam "droute" "dropVia1InsideM1Pin" value
Value
Description
0
The via region may cause via1
outside M1 pin (the default)
1
The via region is totally covered by
M1 pin
Example
To ensure that the via region is totally covered by the M1 pin, enter
axSetIntParam "droute" "dropVia1InsideM1Pin" 1
When set to 0, the via region might cause via1 to be placed outside
M1 pin.
See Also
ignoreViaRegion
ecoListToFile
The ecoListToFile parameter specifies whether to save the
routing ECO list to the ecoRoute.list file.
Chapter 4: Detail Route Parameters
4-62
Syntax
axSetIntParam "droute" "ecoListToFile" value
Value
Description
0
Routing ECO list is not saved to the file, but
it can still be found in the log file (the default).
1
Routing ECO list is output to the
ecoRoute.list file.
Example
To dump a list of modified nets to the ecoRoute.list file, enter
axSetIntParam "droute" "ecoListToFile" 1
ecoMode
The ecoMode parameter specifies what nets are to be routed in ECO
mode, and how they are rerouted. If the value is set to 0, only
modified nets can be rerouted. If the value is set to 1, modified nets
are rerouted first, and other nets can be rerouted later. If the value is
set to 2, any nets can be rerouted in any order. Mode 0 produces
minimum routing change, but offers you the least freedom to resolve
DRC violations. Mode 2 offers the most freedom to resolve DRC
violations, but can introduce significant changes in the routing
solution.
ecoMode
4-63
Syntax
axSetIntParam "droute" "ecoMode" value
Value
Description
0
Reroutes modified nets only
1
Reroutes modified nets first, then
tries other nets later
2
Reroutes any nets freely; best for
routability (the default)
Example
To reroute modified nets only, enter
axSetIntParam "droute" "ecoMode" 0
See Also
ecoScope
ecoScope
The ecoScope parameter specifies whether to use global or local
scope during ECO routing. If the value set to 0, the router uses global
scope mode. If the value is set to 1, the router uses local scope. Set
this value to 0 if design has many violations. Set it to 1 to get better
runtime if the design has very few violations.
Chapter 4: Detail Route Parameters
4-64
Syntax
axSetIntParam "droute" "ecoScope" value
Value
Description
0
Uses global scope if there are many violations all
over the design (the default).
1
Uses local scope if there are very few localized
violations (better runtime)
Example
To use local scope if there are very few localized violations, enter
axSetIntParam "droute" "ecoScope" 1
See Also
ecoMode
ecoSrLoop
The ecoSrLoop parameter sets the number of search and repair
loops to be carried out after ECO routing in the
axgECORouteDesign or astPostRT command.
The search and repair loop terminates if DRC violation count
reaches 0 even if the specified number of iterations are not reached.
If the DRC violation number is still converging (reducing) after
reaching specified number of iterations, specifying more iterations
could help further reduce DRC violation count at the cost of more
runtime.
Syntax
axSetIntParam "droute" "ecoSrLoop" value
ecoSrLoop
4-65
The valid values of this parameter range between 0 and 500. The
default is 20.
Example
To set the number of search and repair loops to be carried out after
eco routing in axgECORouteDesign or astPostRT command as
90, enter the following:
axSetIntParam "droute" "ecoSrLoop" 90
See Also
autoSrLoop, areaSrLoop, optSrLoop, srLoop, optDelaySrLoop,
groupSrLoop
eolEnclosureOnVia
The eolEnclosureOnVia parameter specifies when
endOfLineEnclosure from technology file, DesignRule section
needs to be applied to vias. If the value is set to 0,
endOfLineEnclosure applies only to vias with wires connecting
to them. If the value is set to 1, endOfLineEnclosure applies to
all vias.
In most technologies, endOfLineEnclosure needs to apply only
to vias with wires connecting to them, and vias with no wires (stacked
vias) usually have different rules.
Chapter 4: Detail Route Parameters
4-66
Syntax
axSetIntParam "droute" "eolEnclosureOnVia" value
Value
Description
0
endOfLineEnclosure from
technology file applies only to vias
with wires (the default).
1
endOfLineEnclosure applies to
vias with no wire at both sides.
Example
To specify that endOfLineEnclosure applies to vias with no wire
at both sides, enter
axSetIntParam "droute" "eolEnclosureOnVia" 1
When set to 0, endOfLineEnclosure from the technology file
applies only to vias with wires.
expandFillTracks
The expandFillTracks parameter specifies whether the track
region for metal fill should be expanded or not.
expandFillTracks
4-67
Syntax
axSetIntParam "droute" "expandFillTracks" value
Value
Description
0
The router inserts metal fills in core
area only (the default).
1
The router expands track region for
metal fill to cover whole design
area.
Example
To enable the router to expand the track region to cover the entire
design area for metal fill, enter
axSetIntParam "droute" "expandFillTracks" 1
See Also
offsetFillTrack, fillEndByMinSpcPercent
fatSpacingToSameNet
The fatSpacingToSameNet parameter specifies whether to apply
fat metal spacing rules on the same nets. If the value is set to 0, the
router uses default spacing rule to check the same nets. If the value
is set to 1, the router applies fat metal spacing rule for the same nets.
Chapter 4: Detail Route Parameters
4-68
Syntax
axSetIntParam "droute" "fatSpacingToSameNet" value
Value
Description
0
Uses default spacing rules instead of fat spacing
rules for the same net.
1
Applies fat spacing rules between shapes of the
same net (the default).
Example
To apply fat spacing rules between shapes of the same net, enter
axSetIntParam "droute" "fatSpacingToSameNet" 1
When set to 0, the default spacing rules are used for the same net
instead of fat spacing rules.
feedThruPinTaper
The feedThruPinTaper parameter specifies whether pin tapering
is needed for pins with multiple connections (using pins as
feedthroughs). If the value is set to 0, pin tapering is not needed for
pins with multiple connections. If the value is set to 1, pin tapering is
required even for pins with multiple connections.
Be careful about allowing pin tapering while allowing multiple
connections to the same pins because it might not be desirable for
wire width to be small in the middle of a connection path.
feedThruPinTaper
4-69
Syntax
axSetIntParam "droute" "feedThruPinTaper" value
Value
Description
0
No pin tapering on pins with
multiple connections (the default).
1
Allows pin tapering on pins with
multiple connections
Example
To allow pin tapering on pins with multiple connections, enter
axSetIntParam "droute" "feedThruPinTaper" 1
When set to 0, there is no pin tapering on pins with multiple
connections.
fillDataType
The fillDataType parameter specifies a data type of filled metals.
The value N is the data type of filled metals.
Syntax
axSetIntParam "droute" "fillDataType" value
The valid values of this parameter range between 0 and 256. The
default is 0.
Example
To specify the data type of filled metals as 90, enter
axSetIntParam "droute" "fillDataType" 90
Chapter 4: Detail Route Parameters
4-70
See Also
fillViaDataType
fillEndByMinSpcPercent
The fillEndByMinSpcPercent parameter specifies the spacing
requirement between the routing wires and the ends of fill metal. If
the value is set to -1, the normal required spacing is used between
the routing wires and the ends of fill metal. Otherwise, the value sets
the percentage of normal required spacing to be used between the
routing wires and the ends of fill metal.
Normally, this value is to be left at its default value of -1. It should only
be changed if the user understands the impact of it on the yield, and
the final verification should be set accordingly.
Syntax
axSetIntParam "droute" "fillEndByMinSpcPercent" value
The valid values of this parameter range between -1 and 10,000.
The default is -1.
Example
To use the same spacing for all sides between fill metal and routing
wires as 500, enter
axSetIntParam "droute" "fillEndByMinSpcPercent" 500
See Also
offsetFillTrack, expandFillTracks
fillEndByMinSpcPercent
4-71
fillMetalCloseToMinDensityValue
The fillMetalCloseToMinDensityValue parameter specifies
the target metal density for metal fill insertion. If the value is set to 0,
the router tries to maximize dummy metals as long as maximum
density is not violated. If the value is set to 1, the router tries to
minimize dummy metals as long as minimum density is met.
Syntax
axSetIntParam "droute" "fillMetalCloseToMinDensityValue"
value
Value
Description
0
Fills metal to have metal density a
little less than the maximum
density value (the default).
1
Fills metal to have metal density a
little more than the minimum
density value.
Example
For fill metal to have metal density a little more than minimum density
value, enter
axSetIntParam "droute" "fillMetalCloseToMinDensityValue" 1
See Also
fillMetalUniformly, metalFillDensityIncrement
Chapter 4: Detail Route Parameters
4-72
fillMetalUniformly
The fillMetalUniformly parameter specifies whether to fill
dummy metal uniformly. If the value is set to 0, the router fills dummy
metal in contiguous tracks. If the value is set to 1, the router tries to
fills dummy metal uniformly in each window to meet the density rule.
Syntax
axSetIntParam "droute" "fillMetalUniformly" value
Value
Description
0
Fills metal in contiguous tracks to
meet density rule (the default).
1
Fills metal uniformly in each
window to meet density rule.
Example
To specify fill metal uniformly in each window to meet the density
rule, enter
axSetIntParam "droute" "fillMetalUniformly" 1
See Also
fillMetalCloseToMinDensityValue, metalFillDensityIncrement
fillNotch
The fillNotch parameter specifies whether metal shapes can be
used to fill notch or minimum edge violations. The value 0 disables
notch filling, and 1 enables notch filling.
fillMetalUniformly
4-73
If ignoreNotchDRC is enabled, metals are not used to fill notch
violations, but might still be used to fill minimum edge violations if
fillNotch is set to 1. If both ignoreNotchDRC and fillNotch
are disabled, notch violation will be fixed by ripup and reroute.
Syntax
axSetIntParam "droute" "fillNotch" value
Value
Description
0
Does not use wire to fill notch or
minimum edge violations.
1
Allows the router to use wire to fill
notch or minimum edge violations
(the default).
Example
To allow the router to use wire to fill notch or minimum edge
violations, enter
axSetIntParam "droute" "fillNotch" 1
When set to 0, notch filling is disabled.
See Also
ignoreNotchDRC
fillViaDataType
The fillViaDataType parameter specifies a data type of filled
vias. If the value set to N, N is the data type of filled via.
Chapter 4: Detail Route Parameters
4-74
Syntax
axSetIntParam "droute" "fillViaDataType" value
The valid values of this parameter range between 0 and 256. The
default is 0.
Example
To specify the data type of filled vias, enter
axSetIntParam "droute" "fillViaDataType" 70
See Also
fillDataType
fixMinEdgeLengthByFilling
The fixMinEdgeLengthByFilling parameter specifies whether
to allow filling metals to fix minEdgeLength violations during search
and repair.
Syntax
axSetIntParam "droute" "fixMinEdgeLengthByFilling" value
Value
Description
0
No filling to resolve non-pin minEdgeLength violations during
search and repair (the default).
1
Allow filling to resolve non-pin minEdgeLength violations
during search and repair.
fixMinEdgeLengthByFilling
4-75
Example
To allow filling for resolving non-pin minEdgeLength violations
during search and repair, enter
axSetIntParam "droute" "fixMinEdgeLengthByFilling" 1
floatingWireIsGateDischarge
The floatingWireIsGateDischarge parameter specifies
whether to treat the gate as the discharge path.
Syntax
axSetIntParam "droute" "floatingWireIsGateDischarge" value
Value
Description
0
Gate is not discharge path (may be
floating) (the default).
1
Gate is discharge path (is not
floating).
Example
To treat gate as discharge path, enter
axSetIntParam "droute" "floatingWireIsGateDischarge" 1
When set to 0, the gate is not treated as the discharge path.
See Also
floatingWireMode
Chapter 4: Detail Route Parameters
4-76
floatingWireMode
The floatingWireMode parameter specifies whether to fix floating
wire antennas. If the value is set to 0, the router does not fix floating
wire antennas. If the value is set to 1, the router tries to fix floating
wire antennas. If the value is set to 2, the router fixes floating wire
antennas but ignores floating antenna violations on user routes.
When this mode is enabled, all other antenna checking and fixing is
disabled; only floating antenna violations are checked and fixed.
Syntax
axSetIntParam "droute" "floatingWireMode" value
Table 4-2
Valid Values of the breakAntennaToTopPin Parameter
Value
Description
0
Fixing based on antenna constraints (if any)
1
Fixing based on floating antenna constraints only
2
Fixing based on floating antenna constraints only (ignore violations on
user routes)
Example
To fix floating wire antennas based on floating antenna constraints
only, enter
axSetIntParam "droute" "floatingWireMode" 1
See Also
floatingWireIsGateDischarge
floatingWireMode
4-77
followPolyTrkForPolyFill
The followPolyTrkForPolyFill parameter specifies to
whether tracks on poly layer are used for poly fills. If the value is set
to 0, the router follows M2 tracks to fill poly layer. If the value is set
to 1, the router follows poly tracks to fill poly layer.
Syntax
axSetIntParam "droute" "followPolyTrkForPolyFill" value
Value
Description
0
Follows M2 tracks for metal fill on
poly layer (the default).
1
Follows poly tracks for metal fill on
poly layer.
Example
To specify whether the router should follow poly tracks for metal fill
on the poly layer, enter
axSetIntParam "droute" "followPolyTrkForPolyFill" 1
groupSrLoop
The groupSrLoop parameter specifies the number of search and
repair loops in the axgRouteGroup command.
The search and repair loop terminates if DRC violation count
reaches 0 even if the specified number of iterations are not reached.
If the DRC violation number is still converging (reducing) after
Chapter 4: Detail Route Parameters
4-78
reaching specifies number of iterations, specifying more iterations
could help reducing DRC violation count further at the cost of more
runtime.
Syntax
axSetIntParam "droute" "groupSrLoop" value
The valid values of this parameter range between 0 and 200. The
default is 5.
Example
To specify five search and repair loops in the axgRouteGroup
command, enter
axSetIntParam "droute" "groupSrLoop" 5
See Also
autoSrLoop, areaSrLoop, optSrLoop, srLoop, optDelaySrLoop,
ecoSrLoop
hardMaxLayerConx
The hardMaxLayerConx parameter specifies the allowed wire
usage above the maximum routing layer (maxLayer) set in top cell.
If the value is set to 0, wires can be routed above maxLayer with
some extra cost. If the value is set to 1, wires can only connect to
pins above maxLayer with monotonically increasing layers.
If the value is set to 2, no wires are allowed above maxLayer. This
parameter has no effect if there is no pin or preroute in the design
above maxLayer. The smaller the value, the more flexibility the
router has to connect to pins and preroutes above maxLayer.
hardMaxLayerConx
4-79
Syntax
axSetIntParam "droute" "hardMaxLayerConx" value
Value
Description
0
The maxLayer constraints are soft.
1
No wires are allowed above maxLayer except for pin
connections.
2
No wires are allowed above maxLayer even for pin
connections (the default).
Example
To specify that no wires are allowed above maxLayer except for pin
connections, enter
axSetIntParam "droute" "hardMaxLayerConx" 1
See Also
viaOverMaxLayer, hardMinLayerConx
hardMinLayerConx
The hardMinLayerConx parameter specifies the allowed wire
usage below the minimum routing layer (minLayer) set in the top
cell. If the value is set to 0, wires can be routed below minLayer with
some extra cost. If the value is set to 1, wires can only connect to
pins below minLayer with monotonically decreasing layers.
If the value is set to 2, no wires are allowed below minLayer. This
parameter has no effect if there is no pin or preroute in the design
below minLayer. The smaller the value, the more flexibility the
router has to connect to pins and preroutes below minLayer.
Chapter 4: Detail Route Parameters
4-80
Syntax
axSetIntParam "droute" "hardMinLayerConx" value
Value
Description
0
The minLayer constraints are soft (the default)
1
No wires are allowed below minLayer except for pin
connections
2
No wires are allowed below minLayer even for pin
connections
Example
To ensure that no wires are allowed below minLayer except for pin
connections, enter
axSetIntParam "droute" "hardMinLayerConx" 1
See Also
hardMaxLayerConx
highEffortViaDoubling
The highEffortViaDoubling parameter specifies whether to
shift the double via array to improve double via coverage. If the value
is set to 0, the router does not shift the double via array. If the value
is set to 1, the router tries to shift the the double via array to improve
double via coverage. The shifted double via array might cause
routing pattern lithography issues.
highEffortViaDoubling
4-81
Syntax
axSetIntParam "droute" "highEffortViaDoubling" value
Value
Description
0
No high effort (side shift) to avoid
lithography issue.
1
Uses high effort (side shift) while
inserting redundant via (the
default).
Example
To specify that the router does not shift double via array, enter
axSetIntParam "droute" "highEffortViaDoubling" 0
ignoreFloatingWireSpacing
The ignoreFloatingWireSpacing parameter specifies whether
to check spacing for the floating wire antenna. If the value is set to 0,
the router checks spacing for the floating wire antenna. If the value
is set to 1, the router does not check it.
Syntax
axSetIntParam "droute" "ignoreFloatingWireSpacing" value
Value
Description
0
Checks spacing for the floating
wire antenna (the default).
1
Does not check spacing for the
floating wire antenna.
Chapter 4: Detail Route Parameters
4-82
Example
To check spacing for the floating wire antenna, enter
axSetIntParam "droute" "ignoreFloatingWireSpacing" 0
When set to 1, spacing is not checked for the floating wire antenna.
See Also
ignoreFloatingWireToBlockageSpacing
ignoreFloatingWireToBlockageSpacing
The ignoreFloatingWireToBlockageSpacing parameter
specifies whether to check spacing to blockages for the floating wire
antenna. If the value is set to 0, the router checks spacing to
blockages for the floating wire antenna. If the value is set to 1, the
router does not check it.
Syntax
axSetIntParam "droute"
"ignoreFloatingWireToBlockageSpacing" value
Value
Description
0
Checks spacing to blockages for the floating wire antenna
(the default).
1
Does not check spacing to blockages for the floating wire
antenna.
ignoreFloatingWireToBlockageSpacing
4-83
Example
To check spacing to blockages for the floating wire antenna, enter
the following:
axSetIntParam "droute"
"ignoreFloatingWireToBlockageSpacing" 0
When set to 1, spacing to blockages is not checked for the floating
wire antenna.
See Also
ignoreFloatingWireSpacing
ignoreFrozenNetDRC
The ignoreFrozenNetDRC parameter specifies whether to check
same net DRC violations and opens for frozen nets. If the value is
set to 0, router checks same net DRC violations and opens for frozen
nets. If the value is set to 1, router does not check same-net DRC
violations and opens for frozen nets.
Syntax
axSetIntParam "droute" " ignoreFrozenNetDRC" value
Value
Description
0
Checks the same-net DRC violation and opens for frozen
nets.
1
Does not check same-net DRC violation and opens for
frozen nets.
Chapter 4: Detail Route Parameters
4-84
Example
To specify whether to check same net DRCs and opens for frozen
nets, enter
axSetIntParam "droute" "ignoreFrozenNetDRC" 0
ignoreMetalExtensionRule
The ignoreMetalExtensionRule parameter specifies whether
to ignore endOfLineEncTbl and eolTShapeEnc rules. If the
value is set to 0, the router honors these two rules that are defined
in the technology file. If the value is set to 1, the router ignores these
two rules.
Syntax
axSetIntParam "droute" "ignoreMetalExtensionRule" value
Value
Description
0
The endOfLineEncTbl and eolTShapeEnc rules
from technology file will apply to single vias (the
default).
1
The endOfLineEncTbl and eolTShapeEnc rules
will be ignored.
Example
To ignore endOfLineEncTbl and eolTShapeEnc, enter
axSetIntParam "droute" "ignoreMetalExtensionRule" 1
When set to 0, the endOfLineEncTbl and eolTShapeEnc rules
from the technology file apply to single vias.
ignoreMetalExtensionRule
4-85
ignoreNotchDRC
The ignoreNotchDRC parameter specifies whether notch
violations are to be ignored or resolved in upcoming routing steps. If
the value is set to 0, notch violations will be flagged and resolved. If
the value is set to 1, notch violations will be ignored. In this case,
some later explicit step is needed to fill the notches if they need to be
fixed.
Note that unlike the fillNotch parameter, ignoreNotchDRC only
apply to notch violations, not minimum edge violations.
Syntax
axSetIntParam "droute" "ignoreNotchDRC" value
Value
Description
0
Resolves notch violation (the
default).
1
Ignore notch violations.
Example
To resolve notch violations, enter
axSetIntParam "droute" "ignoreNotchDRC" 0
See Also
fillNotch
Chapter 4: Detail Route Parameters
4-86
ignoreSameNetAdjacentViaDRC
The ignoreSameNetAdjacentViaDRC parameter specifies
whether vias on same net are included or not when counting
adjacent vias. If the value is set to 0, the router checks all vias.
If the value is set to 1, the router does not check same-net vias when
counting adjacent vias.
Syntax
axSetIntParam "droute" "ignoreSameNetAdjacentViaDRC" value
Value
Description
0
All vias will be included when counting the adjacent vias
(the default).
1
The same-net vias are excluded when counting the
adjacent vias.
Example
To specify that the same-net vias are excluded when counting the
adjacent vias, enter
axSetIntParam "droute" "ignoreSameNetAdjacentViaDRC" 1
ignoreTopBndy
The ignoreTopBndy parameter specifies whether the top-cell
boundary constrains routing wires and contacts, and if so, how it
constrains routing wires and contacts.
ignoreSameNetAdjacentViaDRC
4-87
If the value is set to -1, all wires and contacts need to stay at least
half minimum spacing inside the top cell boundary. If the value is set
to 0, wires and contacts need to stay inside the top cell boundary, but
can go all the way to the cell boundary. If the value is set to 1, wires
and contacts are allowed to go outside the top cell boundary to
access pins.
It is important for cells at different levels to have consistent
assumptions about cell boundary constraints to guarantee the final
design will be free of DRC violations across cell boundaries.
Syntax
axSetIntParam "droute" "ignoreTopBndy" value
Value
Description
-1
Wires/contacts need to stay half minimum spacing
inside top cell boundary
0
Wires/contacts not allowed outside top cell boundary
(the default)
1
Wires/contacts can go outside top cell boundary
Example
To specify whether wires/contacts can go outside the top cell
boundary, enter
axSetIntParam "droute" "ignoreTopBndy" 1
ignoreVarSpacingToPG
The ignoreVarSpacingToPG parameter specifies whether the
variable spacing rule defined in varRouteRule is to be applied
between the signal and clock nets, and the power and ground nets.
Chapter 4: Detail Route Parameters
4-88
If the value is set to 0, the variable spacing rule is to be applied from
the specified nets to the power and ground nets. If the value is set to
1, the default spacing rule is used between the non-power and
ground nets, and the power and ground nets. If the value is set to 2,
the default spacing rule is used between the non-power and ground
nets to power and ground nets and blockages.
Note that tie-low nets and tie-high nets that are routed during signal
routing are treated as signal nets.
Syntax
axSetIntParam "droute" "ignoreVarSpacingToPG" value
Value
Description
0
Forces variable spacing rule on the specified net to power and
ground nets (the default).
1
Does not apply variable spacing rule between nets and power
and ground nets.
2
Does not apply variable spacing rule between nets, power and
ground nets, and blockage.
Example
To disable variable spacing rule between the specified nets and the
power and ground nets, enter
axSetIntParam "droute" "ignoreVarSpacingToPG" 0
See Also
varSpacingToSameNet
ignoreVarSpacingToPG
4-89
ignoreViaRegion
The ignoreViaRegion parameter specifies whether via regions
defined on pins are to be ignored during routing. If the value is set to
0, via regions are used during routing to connect to pins. If the value
is set to 1, via regions are ignored during routing to connect to pins.
In general, via regions generated by BVP are helpful to the router to
connect to pins, and it is recommended to leave the value of the
parameter to 0 so via regions are used during routing.
Syntax
axSetIntParam "droute" "ignoreViaRegion" value
Value
Description
0
Reads via region (the default).
1
Does not use via region to connect
to pins.
Example
If you do not want to use the via region to connect to pins, enter
axSetIntParam "droute" "ignoreViaRegion" 1
When set to 0, the via region is read.
See Also
dropVia1InsideM1Pin
Chapter 4: Detail Route Parameters
4-90
isolatedViaQuadrantSpacing
The isolatedViaQuadrantSpacing parameter specifies
maximum spacing between an isolated via and its adjacent vias. If
the value is set to N, adjacent vias are required within distance N
from isolated via. The adjacent vias must cover all four quadrants.
The parameter, once defined, applies to all via layers.
Syntax
axSetRealParam "droute" "isolatedViaQuadrantSpacing" value
The valid values of this parameter range between 0.000 and 50.000.
The default is 10.000.
Example
To define isolated via rule by specifying spacing between an isolated
via and its adjacent vias as 45, enter
axSetRealParam "droute" "isolatedViaQuadrantSpacing" 45.000
See Also
polyContIsolatedViaQuadrantSpacing
via1IsolatedViaQuadrantSpacing via2IsolatedViaQuadrantSpacing
via3IsolatedViaQuadrantSpacing via4IsolatedViaQuadrantSpacing
via51IsolatedViaQuadrantSpacing via6IsolatedViaQuadrantSpacing
via7IsolatedViaQuadrantSpacing via8IsolatedViaQuadrantSpacing
via9IsolatedViaQuadrantSpacing via10IsolatedViaQuadrantSpacing
via11IsolatedViaQuadrantSpacing
isolatedViaQuadrantSpacing
4-91
isolatedViaSpacing
The isolatedViaSpacing parameter specifies maximum spacing
between an isolated via and its adjacent vias. If the value is set to N,
at least one adjacent via is required within distance N from isolated
via. The parameter, after being defined, applies to all metal layers.
Syntax
axSetIntParam "droute" "isolatedViaSpacing" value
The valid values of this parameter range between 0.000 and 20.000.
The default is 1.
Example
To define isolated via rule by specifying spacing as 15 between an
isolated via and its adjacent vias, enter
axSetRealParam "droute" "isolatedViaSpacing" 15.000
See Also
polyContIsolatedViaSpacing via1IsolatedViaSpacing
via2IsolatedViaSpacing via3IsolatedViaSpacing
via4IsolatedViaSpacing via5IsolatedViaSpacing
via6IsolatedViaSpacing via7IsolatedViaSpacing
via81IsolatedViaSpacing via9IsolatedViaSpacing
via10IsolatedViaSpacing via11IsolatedViaSpacing
layerLengthLimit
The layerLengthLimit parameter sets the total length limit on the
flagged routing layers for each two point connection by routing
search. If the value is set to -1, there is no length limit for the design.
Chapter 4: Detail Route Parameters
4-92
Otherwise, the value sets the length limit. The included routing layers
are flags by limitPolyLength, limitM1Length,
limitM2Length, limitM3Length, and limitM4Length.
Syntax
axSetIntParam "droute" "layerLengthLimit" value
The valid values of this parameter range between are -1 and
1073741824. The default is -1.
Example
To remove any limit on poly/metal wire length, enter
axSetIntParam "droute" "layerLengthLimit" -1
See Also
limitPolyLength limitM1Length limitM2Length limitM3Length
limitM4Length
lessMinAreaStackCost
The lessMinAreaStackCost parameter specifies stacked via
usage and cost when the stacked via does not satisfy minimum area
rules. If the value is set to -1, the stacked via is not allowed if the
stacked via does not satisfy minimum area rule in the middle layer. If
the value is set to 0, stacked vias are used freely even when
minimum area rules are violated, and the violations are fixed with
extra metal stubs. If the value is set to N (between 1 and 10), stacked
vias that violate minimum area rules can be used at increased cost
of N with respect to the default value of 1, and the violations are fixed
with extra metal stubs.
lessMinAreaStackCost
4-93
In general, it is recommended to leave this parameter at its default
value. If you see excessive DRC violations caused by minimum area
rule stubs on stacked vias in the end results, you can set this
parameter to a larger value to discourage usage of stacked vias with
minimum area rule violations.
Syntax
axSetIntParam "droute" "lessMinAreaStackCost" value
The valid values of this parameter range between -1 and 10. The
default is 0.
Example
To ensure that there is no via stacking when minimum-area rule
cannot be met, enter the following:
axSetIntParam "droute" "lessMinAreaStackCost" -1
See Also
defaultWidthForStub
limitPolyLength
limitM1Length
limitM2Length
limitM3Length
limitM4Length
These parameters specify the layers that should be included for
layerLengthLimit constraint computation. If the value is set to 0,
the corresponding layer is not included in wire length computation
that is constrained by layerLengthLimit. If the value is set to 1,
the corresponding layer is included in wire length computation that is
Chapter 4: Detail Route Parameters
4-94
constrained by layerLengthLimit. The length is measured for
each two point connection by routing search, which is constrained by
layerLengthLimit. For multiple nets, multiple connections are
made to connect all pins, and wires from multiple connections can
add up to more than the length set by layerLengthLimit.
Syntax
axSetIntParam "droute" "limitPolyLength" value
axSetIntParam "droute" "limitM1Length" value
axSetIntParam "droute" "limitM2Length" value
axSetIntParam "droute" "limitM3Length" value
axSetIntParam "droute" "limitM4Length" value
Value
Description
0
No limits on poly wire and metal
wire length (the default).
1
Limits the length of poly and metal
wires.
Example
To limit the length of wires, enter the following:
axSetIntParam "droute" "limitPolyLength" 1
axSetIntParam "droute" "limitM1Length" 1
axSetIntParam "droute" "limitM2Length" 1
axSetIntParam "droute" "limitM3Length" 1
When set to 0, there is no limit on the wire length.
limitPolyLength limitM1Length limitM2Length limitM3Length limitM4Length
4-95
lineViaFollowPrefDir
The lineViaFollowPrefDir parameter specifies the default
orientation of a line via array. If the value set to 0, the line via array
is 1 X N (column X row). If the value is set to 1, the orientation of the
line via array follows the preferred direction of the lower metal layer.
Syntax
axSetIntParam "droute" "lineViaFollowPrefDir" value
Value
Description
0
Orientation of the line via array is 1 X N (the default).
1
Orientation of the line via array follows the preferred
direction of the lower metal layer.
Example
To specify that the orientation of the line via array follows the
direction of the lower metal layer, enter
axSetIntParam "droute" "lineViaFollowPrefDir" 1
When set to 0, the orientation is 1 X N.
See Also
layerLengthLimit
Chapter 4: Detail Route Parameters
4-96
lowSkewClkRoute
The lowSkewClkRoute parameter specifies how many changes
are allowed on nets from clock tree synthesis during detail routing.If
the value is set to 0, nets from clock tree synthesis are treated the
same as other nets. If the value is set to 1, minimal changes are to
be made to nets from clock tree synthesis, if necessary.
Syntax
axSetIntParam "droute" "lowSkewClkRoute" value
Value
Description
0
Normal routing.
1
Minimize changes on nets from
clock tree synthesis (the default).
Example
For normal routing, enter
axSetIntParam "droute" "lowSkewClkRoute" 0
See Also
Reroute0SkewClk
M1EolTip2SideSpacing
M2EolTip2SideSpacing
M3EolTip2SideSpacing
M4EolTip2SideSpacing
M5EolTip2SideSpacing
M6EolTip2SideSpacing
lowSkewClkRoute
4-97
M7EolTip2SideSpacing
M8EolTip2SideSpacing
M9EolTip2SideSpacing
M10EolTip2SideSpacing
M11EolTip2SideSpacing
M12EolTip2SideSpacing
These parameters specify spacing between line-end and line-side
for the metalx layer. If the value is set to N, spacing N is required
between line-end and line-side on metalx during signal routing.
Syntax
axSetRealParam "droute" "M1EolTip2SideSpacing" value
axSetRealParam "droute" "M2EolTip2SideSpacing" value
axSetRealParam "droute" "M3EolTip2SideSpacing" value
axSetRealParam "droute" "M4EolTip2SideSpacing" value
axSetRealParam "droute" "M5EolTip2SideSpacing" value
axSetRealParam "droute" "M6EolTip2SideSpacing" value
axSetRealParam "droute" "M7EolTip2SideSpacing" value
axSetRealParam "droute" "M8EolTip2SideSpacing" value
axSetRealParam "droute" "M9EolTip2SideSpacing" value
axSetRealParam "droute" "M10EolTip2SideSpacing" value
axSetRealParam "droute" "M11EolTip2SideSpacing" value
axSetRealParam "droute" "M12EolTip2SideSpacing" value
The valid values of this parameter range between 0.000 and 10.000.
The default is 0.000.
Example
To specify spacing between line-end and line-side for the metalx
layer as 9, enter
axSetRealParam "droute" "M5EolTip2SideSpacing" 9.000
Chapter 4: Detail Route Parameters
4-98
m1FloatingWireArea
m2FloatingWireArea
m3FloatingWireArea
m3FloatingWireArea
m4FloatingWireArea
m5FloatingWireArea
m6FloatingWireArea
m7FloatingWireArea
m8FloatingWireArea
m9FloatingWireArea
m10FloatingWireArea
m11FloatingWireArea
m12FloatingWireArea
These parameters specify maximum allowable metal area for
floating wire antenna. If the value is set to N, N means maximum
allowable metal area for the floating wire antenna.
Syntax
axSetRealParam "droute" "m1FloatingWireArea" value
axSetRealParam "droute" "m2FloatingWireArea" value
axSetRealParam "droute" "m3FloatingWireArea" value
axSetRealParam "droute" "m4FloatingWireArea" value
axSetRealParam "droute" "m5FloatingWireArea" value
axSetRealParam "droute" "m6FloatingWireArea" value
axSetRealParam "droute" "m7FloatingWireArea" value
axSetRealParam "droute" "m8FloatingWireArea" value
axSetRealParam "droute" "m9FloatingWireArea" value
axSetRealParam "droute" "m10FloatingWireArea" value
axSetRealParam "droute" "m11FloatingWireArea" value
axSetRealParam "droute" "m12FloatingWireArea" value
The valid values of this parameter range between 0 and 1,000,000.
The default is 0.000.
m1FloatingWireArea m2FloatingWireArea m3FloatingWireArea m3FloatingWireArea m4FloatingWireArea
4-99
Example
To specify the maximum allowable metal area for floating wire
antenna as 200, enter
axSetRealParam "droute" "m2FloatingWireArea" 200
See Also
m1FloatingWireSpacing m2FloatingWireSpacing
m3FloatingWireSpacing m4FloatingWireSpacing
m5FloatingWireSpacing m6FloatingWireSpacing
m7FloatingWireSpacing m8FloatingWireSpacing
m9FloatingWireSpacing m10FloatingWireSpacing
m11FloatingWireSpacing m12FloatingWireSpacing
M1FloatingWirePLength1
M2FloatingWirePLength1
M3FloatingWirePLength1
M4FloatingWirePLength1
M5FloatingWirePLength1
M6FloatingWirePLength1
M7FloatingWirePLength1
M8FloatingWirePLength1
M9FloatingWirePLength1
M10FloatingWirePLength1
M11FloatingWirePLength1
M12FloatingWirePLength1
These parameters specify the value of floating wire parallel length1
for the metalx layer.
Chapter 4: Detail Route Parameters
4-100
Syntax
axSetRealParam "droute" "M1FloatingWirePLength1" value
axSetRealParam "droute" "M2FloatingWirePLength1" value
axSetRealParam "droute" "M3FloatingWirePLength1" value
axSetRealParam "droute" "M4FloatingWirePLength1" value
axSetRealParam "droute" "M5FloatingWirePLength1" value
axSetRealParam "droute" "M6FloatingWirePLength1" value
axSetRealParam "droute" "M7FloatingWirePLength1" value
axSetRealParam "droute" "M8FloatingWirePLength1" value
axSetRealParam "droute" "M9FloatingWirePLength1" value
axSetRealParam "droute" "M10FloatingWirePLength1" value
axSetRealParam "droute" "M11FloatingWirePLength1" value
axSetRealParam "droute" "M12FloatingWirePLength1" value
The valid values of this parameter range between 0.000 and 10.000.
The default is 0.000.
Example
To specify the value of floating wire parallel length1 for the M9 layer,
enter
axSetRealParam "droute" "M9FloatingWirePLength1" 6.000
See Also
M1FloatingWirePLength2 M2FloatingWirePLength2
M3FloatingWirePLength2 M4FloatingWirePLength2
M5FloatingWirePLength2 M6FloatingWirePLength2
M7FloatingWirePLength2 M8FloatingWirePLength2
M9FloatingWirePLength2 M10FloatingWirePLength2
M11FloatingWirePLength2 M12FloatingWirePLength2,
M1FloatingWirePLength3 M2FloatingWirePLength3
M3FloatingWirePLength3 M4FloatingWirePLength3
M5FloatingWirePLength3 M6FloatingWirePLength3
M7FloatingWirePLength3 M8FloatingWirePLength3
M9FloatingWirePLength3 M10FloatingWirePLength3
M11FloatingWirePLength3 M12FloatingWirePLength3,
M1FloatingWirePLength1 M2FloatingWirePLength1 M3FloatingWirePLength1 M4FloatingWirePLength1
4-101
M1FloatingWirePLength4 M2FloatingWirePLength4
M3FloatingWirePLength4 M4FloatingWirePLength4
M5FloatingWirePLength4 M6FloatingWirePLength4
M7FloatingWirePLength4 M8FloatingWirePLength4
M9FloatingWirePLength4 M10FloatingWirePLength4
M11FloatingWirePLength4 M12FloatingWirePLength4,
M1FloatingWirePLength5 M2FloatingWirePLength5
M3FloatingWirePLength5 M4FloatingWirePLength5
M5FloatingWirePLength5 M6FloatingWirePLength5
M7FloatingWirePLength5 M8FloatingWirePLength5
M9FloatingWirePLength5 M10FloatingWirePLength5
M11FloatingWirePLength5 M12FloatingWirePLength5
M1FloatingWirePLength2
M2FloatingWirePLength2
M3FloatingWirePLength2
M4FloatingWirePLength2
M5FloatingWirePLength2
M6FloatingWirePLength2
M7FloatingWirePLength2
M8FloatingWirePLength2
M9FloatingWirePLength2
M10FloatingWirePLength2
M11FloatingWirePLength2
M12FloatingWirePLength2
These parameters specify the value of floating wire parallel length2
for the metalx layer.
Chapter 4: Detail Route Parameters
4-102
Syntax
axSetRealParam "droute" "M1FloatingWirePLength2" value
axSetRealParam "droute" "M2FloatingWirePLength2" value
axSetRealParam "droute" "M3FloatingWirePLength2" value
axSetRealParam "droute" "M4FloatingWirePLength2" value
axSetRealParam "droute" "M5FloatingWirePLength2" value
axSetRealParam "droute" "M6FloatingWirePLength2" value
axSetRealParam "droute" "M7FloatingWirePLength2" value
axSetRealParam "droute" "M8FloatingWirePLength2" value
axSetRealParam "droute" "M9FloatingWirePLength2" value
axSetRealParam "droute" "M10FloatingWirePLength2" value
axSetRealParam "droute" "M11FloatingWirePLength2" value
axSetRealParam "droute" "M12FloatingWirePLength2" value
The valid values of this parameter range between 0.000 and 10.000.
The default is 0.000.
Example
To specify the value of floating wire parallel length1 for the M9 layer
as 4, enter
axSetRealParam "droute" "M9FloatingWirePLength2" 4.000
See Also
M1FloatingWirePLength1 M2FloatingWirePLength1
M3FloatingWirePLength1 M4FloatingWirePLength1
M5FloatingWirePLength1 M6FloatingWirePLength1
M7FloatingWirePLength1 M8FloatingWirePLength1
M9FloatingWirePLength1 M10FloatingWirePLength1
M11FloatingWirePLength1 M12FloatingWirePLength1
M1FloatingWirePLength3 M2FloatingWirePLength3
M3FloatingWirePLength3 M4FloatingWirePLength3
M5FloatingWirePLength3 M6FloatingWirePLength3
M7FloatingWirePLength3 M8FloatingWirePLength3
M9FloatingWirePLength3 M10FloatingWirePLength3
M11FloatingWirePLength3 M12FloatingWirePLength3
M1FloatingWirePLength2 M2FloatingWirePLength2 M3FloatingWirePLength2 M4FloatingWirePLength2
4-103
M1FloatingWirePLength4 M2FloatingWirePLength4
M3FloatingWirePLength4 M4FloatingWirePLength4
M5FloatingWirePLength4 M6FloatingWirePLength4
M7FloatingWirePLength4 M8FloatingWirePLength4
M9FloatingWirePLength4 M10FloatingWirePLength4
M11FloatingWirePLength4 M12FloatingWirePLength4,
M1FloatingWirePLength5 M2FloatingWirePLength5
M3FloatingWirePLength5 M4FloatingWirePLength5
M5FloatingWirePLength5 M6FloatingWirePLength5
M7FloatingWirePLength5 M8FloatingWirePLength5
M9FloatingWirePLength5 M10FloatingWirePLength5
M11FloatingWirePLength5 M12FloatingWirePLength5
M1FloatingWirePLength3
M2FloatingWirePLength3
M3FloatingWirePLength3
M4FloatingWirePLength3
M5FloatingWirePLength3
M6FloatingWirePLength3
M7FloatingWirePLength3
M8FloatingWirePLength3
M9FloatingWirePLength3
M10FloatingWirePLength3
M11FloatingWirePLength3
M12FloatingWirePLength3
These parameters specify the value of floating wire parallel length3
for the metalx layer.
Chapter 4: Detail Route Parameters
4-104
Syntax
axSetRealParam "droute" "M1FloatingWirePLength3" value
axSetRealParam "droute" "M2FloatingWirePLength3" value
axSetRealParam "droute" "M3FloatingWirePLength3" value
axSetRealParam "droute" "M4FloatingWirePLength3" value
axSetRealParam "droute" "M5FloatingWirePLength3" value
axSetRealParam "droute" "M6FloatingWirePLength3" value
axSetRealParam "droute" "M7FloatingWirePLength3" value
axSetRealParam "droute" "M8FloatingWirePLength3" value
axSetRealParam "droute" "M9FloatingWirePLength3" value
axSetRealParam "droute" "M10FloatingWirePLength3" value
axSetRealParam "droute" "M11FloatingWirePLength3" value
axSetRealParam "droute" "M12FloatingWirePLength3" value
The valid values of this parameter range between 0.000 and 10.000.
The default is 0.000.
Example
To specify the value of floating wire parallel length3 for the M9 layer
as 6, enter
axSetRealParam "droute" "M9FloatingWirePLength3" 6.000
See Also
M1FloatingWirePLength1 M2FloatingWirePLength1
M3FloatingWirePLength1 M4FloatingWirePLength1
M5FloatingWirePLength1 M6FloatingWirePLength1
M7FloatingWirePLength1 M8FloatingWirePLength1
M9FloatingWirePLength1 M10FloatingWirePLength1
M11FloatingWirePLength1 M12FloatingWirePLength1
M1FloatingWirePLength2 M2FloatingWirePLength2
M3FloatingWirePLength2 M4FloatingWirePLength2
M5FloatingWirePLength2 M6FloatingWirePLength2
M7FloatingWirePLength2 M8FloatingWirePLength2
M9FloatingWirePLength2 M10FloatingWirePLength2
M11FloatingWirePLength2 M12FloatingWirePLength2
M1FloatingWirePLength3 M2FloatingWirePLength3 M3FloatingWirePLength3 M4FloatingWirePLength3
4-105
M1FloatingWirePLength4 M2FloatingWirePLength4
M3FloatingWirePLength4 M4FloatingWirePLength4
M5FloatingWirePLength4 M6FloatingWirePLength4
M7FloatingWirePLength4 M8FloatingWirePLength4
M9FloatingWirePLength4 M10FloatingWirePLength4
M11FloatingWirePLength4 M12FloatingWirePLength4,
M1FloatingWirePLength5 M2FloatingWirePLength5
M3FloatingWirePLength5 M4FloatingWirePLength5
M5FloatingWirePLength5 M6FloatingWirePLength5
M7FloatingWirePLength5 M8FloatingWirePLength5
M9FloatingWirePLength5 M10FloatingWirePLength5
M11FloatingWirePLength5 M12FloatingWirePLength5
M1FloatingWirePLength4
M2FloatingWirePLength4
M3FloatingWirePLength4
M4FloatingWirePLength4
M5FloatingWirePLength4
M6FloatingWirePLength4
M7FloatingWirePLength4
M8FloatingWirePLength4
M9FloatingWirePLength4
M10FloatingWirePLength4
M11FloatingWirePLength4
M12FloatingWirePLength4
These parameters specify the value of floating wire parallel length4
for the metalx layer.
Chapter 4: Detail Route Parameters
4-106
Syntax
axSetRealParam "droute" "M1FloatingWirePLength4" value
axSetRealParam "droute" "M2FloatingWirePLength4" value
axSetRealParam "droute" "M3FloatingWirePLength4" value
axSetRealParam "droute" "M4FloatingWirePLength4" value
axSetRealParam "droute" "M5FloatingWirePLength4" value
axSetRealParam "droute" "M6FloatingWirePLength4" value
axSetRealParam "droute" "M7FloatingWirePLength4" value
axSetRealParam "droute" "M8FloatingWirePLength4" value
axSetRealParam "droute" "M9FloatingWirePLength4" value
axSetRealParam "droute" "M10FloatingWirePLength4" value
axSetRealParam "droute" "M11FloatingWirePLength4" value
axSetRealParam "droute" "M12FloatingWirePLength4" value
The valid values of this parameter range between 0.000 and 10.000.
The default is 0.000.
Example
To specify the value of floating wire parallel length4 for the M9 layer
as 6, enter
axSetRealParam "droute" "M9FloatingWirePLength4" 6.000
See Also
M1FloatingWirePLength1 M2FloatingWirePLength1
M3FloatingWirePLength1 M4FloatingWirePLength1
M5FloatingWirePLength1 M6FloatingWirePLength1
M7FloatingWirePLength1 M8FloatingWirePLength1
M9FloatingWirePLength1 M10FloatingWirePLength1
M11FloatingWirePLength1 M12FloatingWirePLength1,
M1FloatingWirePLength2 M2FloatingWirePLength2
M3FloatingWirePLength2 M4FloatingWirePLength2
M5FloatingWirePLength2 M6FloatingWirePLength2
M7FloatingWirePLength2 M8FloatingWirePLength2
M9FloatingWirePLength2 M10FloatingWirePLength2
M11FloatingWirePLength2 M12FloatingWirePLength2,
M1FloatingWirePLength4 M2FloatingWirePLength4 M3FloatingWirePLength4 M4FloatingWirePLength4
4-107
M1FloatingWirePLength3 M2FloatingWirePLength3
M3FloatingWirePLength3 M4FloatingWirePLength3
M5FloatingWirePLength3 M6FloatingWirePLength3
M7FloatingWirePLength3 M8FloatingWirePLength3
M9FloatingWirePLength3 M10FloatingWirePLength3
M11FloatingWirePLength3 M12FloatingWirePLength3,
M1FloatingWirePLength5 M2FloatingWirePLength5
M3FloatingWirePLength5 M4FloatingWirePLength5
M5FloatingWirePLength5 M6FloatingWirePLength5
M7FloatingWirePLength5 M8FloatingWirePLength5
M9FloatingWirePLength5 M10FloatingWirePLength5
M11FloatingWirePLength5 M12FloatingWirePLength5
M1FloatingWirePLength5
M2FloatingWirePLength5
M3FloatingWirePLength5
M4FloatingWirePLength5
M5FloatingWirePLength5
M6FloatingWirePLength5
M7FloatingWirePLength5
M8FloatingWirePLength5
M9FloatingWirePLength5
M10FloatingWirePLength5
M11FloatingWirePLength5
M12FloatingWirePLength5
These parameters specify the value of floating wire parallel length5
for the metalx layer.
Chapter 4: Detail Route Parameters
4-108
Syntax
axSetRealParam "droute" "M1FloatingWirePLength5" value
axSetRealParam "droute" "M2FloatingWirePLength5" value
axSetRealParam "droute" "M3FloatingWirePLength5" value
axSetRealParam "droute" "M4FloatingWirePLength5" value
axSetRealParam "droute" "M5FloatingWirePLength5" value
axSetRealParam "droute" "M6FloatingWirePLength5" value
axSetRealParam "droute" "M7FloatingWirePLength5" value
axSetRealParam "droute" "M8FloatingWirePLength5" value
axSetRealParam "droute" "M9FloatingWirePLength5" value
axSetRealParam "droute" "M10FloatingWirePLength5" value
axSetRealParam "droute" "M11FloatingWirePLength5" value
axSetRealParam "droute" "M12FloatingWirePLength5" value
The valid values of this parameter range between 0.000 and 10.000.
The default is 0.000.
Example
To specify the value of floating wire parallel length5 for the M9 layer
as 3, enter
axSetRealParam "droute" "M9FloatingWirePLength5" 3.000
See Also
M1FloatingWirePLength1 M2FloatingWirePLength1
M3FloatingWirePLength1 M4FloatingWirePLength1
M5FloatingWirePLength1 M6FloatingWirePLength1
M7FloatingWirePLength1 M8FloatingWirePLength1
M9FloatingWirePLength1 M10FloatingWirePLength1
M11FloatingWirePLength1 M12FloatingWirePLength1,
M1FloatingWirePLength2 M2FloatingWirePLength2
M3FloatingWirePLength2 M4FloatingWirePLength2
M5FloatingWirePLength2 M6FloatingWirePLength2
M7FloatingWirePLength2 M8FloatingWirePLength2
M9FloatingWirePLength2 M10FloatingWirePLength2
M11FloatingWirePLength2 M12FloatingWirePLength2,
M1FloatingWirePLength5 M2FloatingWirePLength5 M3FloatingWirePLength5 M4FloatingWirePLength5
4-109
M1FloatingWirePLength3 M2FloatingWirePLength3
M3FloatingWirePLength3 M4FloatingWirePLength3
M5FloatingWirePLength3 M6FloatingWirePLength3
M7FloatingWirePLength3 M8FloatingWirePLength3
M9FloatingWirePLength3 M10FloatingWirePLength3
M11FloatingWirePLength3 M12FloatingWirePLength3,
M1FloatingWirePLength4 M2FloatingWirePLength4
M3FloatingWirePLength4 M4FloatingWirePLength4
M5FloatingWirePLength4 M6FloatingWirePLength4
M7FloatingWirePLength4 M8FloatingWirePLength4
M9FloatingWirePLength4 M10FloatingWirePLength4
M11FloatingWirePLength4 M12FloatingWirePLength4
M1FloatingWirePLMinSpc1
M2FloatingWirePLMinSpc1
M3FloatingWirePLMinSpc1
M4FloatingWirePLMinSpc1
M5FloatingWirePLMinSpc1
M6FloatingWirePLMinSpc1
M7FloatingWirePLMinSpc1
M8FloatingWirePLMinSpc1
M9FloatingWirePLMinSpc1
M10FloatingWirePLMinSpc1
M11FloatingWirePLMinSpc1
M12FloatingWirePLMinSpc1
These parameters specify the value of floating wire parallel length
spacing 1 for the metalx layer.
Chapter 4: Detail Route Parameters
4-110
Syntax
axSetRealParam "droute" "M1FloatingWirePLMinSpc1" value
axSetRealParam "droute" "M2FloatingWirePLMinSpc1" value
axSetRealParam "droute" "M3FloatingWirePLMinSpc1" value
axSetRealParam "droute" "M4FloatingWirePLMinSpc1" value
axSetRealParam "droute" "M5FloatingWirePLMinSpc1" value
axSetRealParam "droute" "M6FloatingWirePLMinSpc1" value
axSetRealParam "droute" "M7FloatingWirePLMinSpc1" value
axSetRealParam "droute" "M8FloatingWirePLMinSpc1" value
axSetRealParam "droute" "M9FloatingWirePLMinSpc1" value
axSetRealParam "droute" "M10FloatingWirePLMinSpc1" value
axSetRealParam "droute" "M11FloatingWirePLMinSpc1" value
axSetRealParam "droute" "M12FloatingWirePLMinSpc1" value
The valid values of this parameter range between 0 and 10.00. The
default is 0.00.
Example
To specify the value of floating wire parallel length spacing 1 for the
M11 layer as 7, enter
axSetRealParam "droute" "M11FloatingWirePLMinSpc1" 7
See Also
M1FloatingWirePLMinSpc2 M2FloatingWirePLMinSpc2
M3FloatingWirePLMinSpc2 M4FloatingWirePLMinSpc2
M5FloatingWirePLMinSpc2 M6FloatingWirePLMinSpc2
M7FloatingWirePLMinSpc2 M8FloatingWirePLMinSpc2
M9FloatingWirePLMinSpc2 M10FloatingWirePLMinSpc2
M11FloatingWirePLMinSpc2 M12FloatingWirePLMinSpc2,
M1FloatingWirePLMinSpc3 M2FloatingWirePLMinSpc3
M3FloatingWirePLMinSpc3 M4FloatingWirePLMinSpc3
M5FloatingWirePLMinSpc3 M6FloatingWirePLMinSpc3
M7FloatingWirePLMinSpc3 M8FloatingWirePLMinSpc3
M9FloatingWirePLMinSpc3 M10FloatingWirePLMinSpc3
M11FloatingWirePLMinSpc3 M12FloatingWirePLMinSpc3,
M1FloatingWirePLMinSpc1 M2FloatingWirePLMinSpc1 M3FloatingWirePLMinSpc1
4-111
M1FloatingWirePLMinSpc4 M2FloatingWirePLMinSpc4
M3FloatingWirePLMinSpc4 M4FloatingWirePLMinSpc4
M5FloatingWirePLMinSpc4 M6FloatingWirePLMinSpc4
M7FloatingWirePLMinSpc4 M8FloatingWirePLMinSpc4
M9FloatingWirePLMinSpc4 M10FloatingWirePLMinSpc4
M11FloatingWirePLMinSpc4 M12FloatingWirePLMinSpc4,
M1FloatingWirePLMinSpc5 M2FloatingWirePLMinSpc5
M3FloatingWirePLMinSpc5 M4FloatingWirePLMinSpc5
M5FloatingWirePLMinSpc5 M6FloatingWirePLMinSpc5
M7FloatingWirePLMinSpc5 M8FloatingWirePLMinSpc5
M9FloatingWirePLMinSpc5 M10FloatingWirePLMinSpc5
M11FloatingWirePLMinSpc5 M12FloatingWirePLMinSpc5
M1FloatingWirePLMinSpc2
M2FloatingWirePLMinSpc2
M3FloatingWirePLMinSpc2
M4FloatingWirePLMinSpc2
M5FloatingWirePLMinSpc2
M6FloatingWirePLMinSpc2
M7FloatingWirePLMinSpc2
M8FloatingWirePLMinSpc2
M9FloatingWirePLMinSpc2
M10FloatingWirePLMinSpc2
M11FloatingWirePLMinSpc2
M12FloatingWirePLMinSpc2
These parameters specify the value of floating wire parallel length
spacing2 for the metalx layer.
Chapter 4: Detail Route Parameters
4-112
Syntax
axSetRealParam "droute" "M1FloatingWirePLMinSpc2" value
axSetRealParam "droute" "M2FloatingWirePLMinSpc2" value
axSetRealParam "droute" "M3FloatingWirePLMinSpc2" value
axSetRealParam "droute" "M4FloatingWirePLMinSpc2" value
axSetRealParam "droute" "M5FloatingWirePLMinSpc2" value
axSetRealParam "droute" "M6FloatingWirePLMinSpc2" value
axSetRealParam "droute" "M7FloatingWirePLMinSpc2" value
axSetRealParam "droute" "M8FloatingWirePLMinSpc2" value
axSetRealParam "droute" "M9FloatingWirePLMinSpc2" value
axSetRealParam "droute" "M10FloatingWirePLMinSpc2" value
axSetRealParam "droute" "M11FloatingWirePLMinSpc2" value
axSetRealParam "droute" "M12FloatingWirePLMinSpc2" value
The valid values of this parameter range between 0 and 10.00. The
default is 0.00.
Example
To specify the value of floating wire parallel length spacing2 for the
M11 layer as 6, enter
axSetRealParam "droute" "M11FloatingWirePLMinSpc2" 6
See Also
M1FloatingWirePLMinSpc1 M2FloatingWirePLMinSpc1
M3FloatingWirePLMinSpc1 M4FloatingWirePLMinSpc1
M5FloatingWirePLMinSpc1 M6FloatingWirePLMinSpc1
M7FloatingWirePLMinSpc1 M8FloatingWirePLMinSpc1
M9FloatingWirePLMinSpc1 M10FloatingWirePLMinSpc1
M11FloatingWirePLMinSpc1 M12FloatingWirePLMinSpc1,
M1FloatingWirePLMinSpc3 M2FloatingWirePLMinSpc3
M3FloatingWirePLMinSpc3 M4FloatingWirePLMinSpc3
M5FloatingWirePLMinSpc3 M6FloatingWirePLMinSpc3
M7FloatingWirePLMinSpc3 M8FloatingWirePLMinSpc3
M9FloatingWirePLMinSpc3 M10FloatingWirePLMinSpc3
M11FloatingWirePLMinSpc3 M12FloatingWirePLMinSpc3,
M1FloatingWirePLMinSpc2 M2FloatingWirePLMinSpc2 M3FloatingWirePLMinSpc2
4-113
M1FloatingWirePLMinSpc4 M2FloatingWirePLMinSpc4
M3FloatingWirePLMinSpc4 M4FloatingWirePLMinSpc4
M5FloatingWirePLMinSpc4 M6FloatingWirePLMinSpc4
M7FloatingWirePLMinSpc4 M8FloatingWirePLMinSpc4
M9FloatingWirePLMinSpc4 M10FloatingWirePLMinSpc4
M11FloatingWirePLMinSpc4 M12FloatingWirePLMinSpc4,
M1FloatingWirePLMinSpc5 M2FloatingWirePLMinSpc5
M3FloatingWirePLMinSpc5 M4FloatingWirePLMinSpc5
M5FloatingWirePLMinSpc5 M6FloatingWirePLMinSpc5
M7FloatingWirePLMinSpc5 M8FloatingWirePLMinSpc5
M9FloatingWirePLMinSpc5 M10FloatingWirePLMinSpc5
M11FloatingWirePLMinSpc5 M12FloatingWirePLMinSpc5
M1FloatingWirePLMinSpc3
M2FloatingWirePLMinSpc3
M3FloatingWirePLMinSpc3
M4FloatingWirePLMinSpc3
M5FloatingWirePLMinSpc3
M6FloatingWirePLMinSpc3
M7FloatingWirePLMinSpc3
M8FloatingWirePLMinSpc3
M9FloatingWirePLMinSpc3
M10FloatingWirePLMinSpc3
M11FloatingWirePLMinSpc3
M12FloatingWirePLMinSpc3
These parameters specify the value of floating wire parallel length
spacing3 for the metalx layer.
Chapter 4: Detail Route Parameters
4-114
Syntax
axSetRealParam "droute" "M1FloatingWirePLMinSpc3" value
axSetRealParam "droute" "M2FloatingWirePLMinSpc3" value
axSetRealParam "droute" "M3FloatingWirePLMinSpc3" value
axSetRealParam "droute" "M4FloatingWirePLMinSpc3" value
axSetRealParam "droute" "M5FloatingWirePLMinSpc3" value
axSetRealParam "droute" "M6FloatingWirePLMinSpc3" value
axSetRealParam "droute" "M7FloatingWirePLMinSpc3" value
axSetRealParam "droute" "M8FloatingWirePLMinSpc3" value
axSetRealParam "droute" "M9FloatingWirePLMinSpc3" value
axSetRealParam "droute" "M10FloatingWirePLMinSpc3" value
axSetRealParam "droute" "M11FloatingWirePLMinSpc3" value
axSetRealParam "droute" "M12FloatingWirePLMinSpc3" value
The valid values of this parameter range between 0.00 and 10.00.
The default is 0.00.
Example
To specify the value of floating wire parallel length spacing3 for the
M11 layer as 9, enter
axSetRealParam "droute" "M11FloatingWirePLMinSpc3" 9
See Also
M1FloatingWirePLMinSpc2 M2FloatingWirePLMinSpc2
M3FloatingWirePLMinSpc2 M4FloatingWirePLMinSpc2
M5FloatingWirePLMinSpc2 M6FloatingWirePLMinSpc2
M7FloatingWirePLMinSpc2 M8FloatingWirePLMinSpc2
M9FloatingWirePLMinSpc2 M10FloatingWirePLMinSpc2
M11FloatingWirePLMinSpc2 M12FloatingWirePLMinSpc2,
M1FloatingWirePLMinSpc1 M2FloatingWirePLMinSpc1
M3FloatingWirePLMinSpc1 M4FloatingWirePLMinSpc1
M5FloatingWirePLMinSpc1 M6FloatingWirePLMinSpc1
M7FloatingWirePLMinSpc1 M8FloatingWirePLMinSpc1
M9FloatingWirePLMinSpc1 M10FloatingWirePLMinSpc1
M11FloatingWirePLMinSpc1 M12FloatingWirePLMinSpc1,
M1FloatingWirePLMinSpc3 M2FloatingWirePLMinSpc3 M3FloatingWirePLMinSpc3
4-115
M1FloatingWirePLMinSpc4 M2FloatingWirePLMinSpc4
M3FloatingWirePLMinSpc4 M4FloatingWirePLMinSpc4
M5FloatingWirePLMinSpc4 M6FloatingWirePLMinSpc4
M7FloatingWirePLMinSpc4 M8FloatingWirePLMinSpc4
M9FloatingWirePLMinSpc4 M10FloatingWirePLMinSpc4
M11FloatingWirePLMinSpc4 M12FloatingWirePLMinSpc4,
M1FloatingWirePLMinSpc5 M2FloatingWirePLMinSpc5
M3FloatingWirePLMinSpc5 M4FloatingWirePLMinSpc5
M5FloatingWirePLMinSpc5 M6FloatingWirePLMinSpc5
M7FloatingWirePLMinSpc5 M8FloatingWirePLMinSpc5
M9FloatingWirePLMinSpc5 M10FloatingWirePLMinSpc5
M11FloatingWirePLMinSpc5 M12FloatingWirePLMinSpc5
M1FloatingWirePLMinSpc4
M2FloatingWirePLMinSpc4
M3FloatingWirePLMinSpc4
M4FloatingWirePLMinSpc4
M5FloatingWirePLMinSpc4
M6FloatingWirePLMinSpc4
M7FloatingWirePLMinSpc4
M8FloatingWirePLMinSpc4
M9FloatingWirePLMinSpc4
M10FloatingWirePLMinSpc4
M11FloatingWirePLMinSpc4
M12FloatingWirePLMinSpc4
These parameters specify the value of floating wire parallel length
spacing 4 for the metalx layer.
Chapter 4: Detail Route Parameters
4-116
Syntax
axSetRealParam "droute" "M1FloatingWirePLMinSpc4" value
axSetRealParam "droute" "M2FloatingWirePLMinSpc4" value
axSetRealParam "droute" "M3FloatingWirePLMinSpc4" value
axSetRealParam "droute" "M4FloatingWirePLMinSpc4" value
axSetRealParam "droute" "M5FloatingWirePLMinSpc4" value
axSetRealParam "droute" "M6FloatingWirePLMinSpc4" value
axSetRealParam "droute" "M7FloatingWirePLMinSpc4" value
axSetRealParam "droute" "M8FloatingWirePLMinSpc4" value
axSetRealParam "droute" "M9FloatingWirePLMinSpc4" value
axSetRealParam "droute" "M10FloatingWirePLMinSpc4" value
axSetRealParam "droute" "M11FloatingWirePLMinSpc4" value
axSetRealParam "droute" "M12FloatingWirePLMinSpc4" value
The valid values of this parameter range between 0.00 and 10.00.
The default is 0.00.
Example
To specify the value of floating wire parallel length spacing 4 for M10
layer as 2, enter
axSetRealParam "droute" "M10FloatingWirePLMinSpc4" 2
See Also
M1FloatingWirePLMinSpc2 M2FloatingWirePLMinSpc2
M3FloatingWirePLMinSpc2 M4FloatingWirePLMinSpc2
M5FloatingWirePLMinSpc2 M6FloatingWirePLMinSpc2
M7FloatingWirePLMinSpc2 M8FloatingWirePLMinSpc2
M9FloatingWirePLMinSpc2 M10FloatingWirePLMinSpc2
M11FloatingWirePLMinSpc2 M12FloatingWirePLMinSpc2,
M1FloatingWirePLMinSpc3 M2FloatingWirePLMinSpc3
M3FloatingWirePLMinSpc3 M4FloatingWirePLMinSpc3
M5FloatingWirePLMinSpc3 M6FloatingWirePLMinSpc3
M7FloatingWirePLMinSpc3 M8FloatingWirePLMinSpc3
M9FloatingWirePLMinSpc3 M10FloatingWirePLMinSpc3
M11FloatingWirePLMinSpc3 M12FloatingWirePLMinSpc3,
M1FloatingWirePLMinSpc4 M2FloatingWirePLMinSpc4 M3FloatingWirePLMinSpc4
4-117
M1FloatingWirePLMinSpc1 M2FloatingWirePLMinSpc1
M3FloatingWirePLMinSpc1 M4FloatingWirePLMinSpc1
M5FloatingWirePLMinSpc1 M6FloatingWirePLMinSpc1
M7FloatingWirePLMinSpc1 M8FloatingWirePLMinSpc1
M9FloatingWirePLMinSpc1 M10FloatingWirePLMinSpc1
M11FloatingWirePLMinSpc1 M12FloatingWirePLMinSpc1,
M1FloatingWirePLMinSpc5 M2FloatingWirePLMinSpc5
M3FloatingWirePLMinSpc5 M4FloatingWirePLMinSpc5
M5FloatingWirePLMinSpc5 M6FloatingWirePLMinSpc5
M7FloatingWirePLMinSpc5 M8FloatingWirePLMinSpc5
M9FloatingWirePLMinSpc5 M10FloatingWirePLMinSpc5
M11FloatingWirePLMinSpc5 M12FloatingWirePLMinSpc5
M1FloatingWirePLMinSpc5
M2FloatingWirePLMinSpc5
M3FloatingWirePLMinSpc5
M4FloatingWirePLMinSpc5
M5FloatingWirePLMinSpc5
M6FloatingWirePLMinSpc5
M7FloatingWirePLMinSpc5
M8FloatingWirePLMinSpc5
M9FloatingWirePLMinSpc5
M10FloatingWirePLMinSpc5
M11FloatingWirePLMinSpc5
M12FloatingWirePLMinSpc5
These parameters specify the value of floating wire parallel length
spacing 5 for the metalx layer.
Chapter 4: Detail Route Parameters
4-118
Syntax
axSetRealParam "droute" "M1FloatingWirePLMinSpc5" value
axSetRealParam "droute" "M2FloatingWirePLMinSpc5" value
axSetRealParam "droute" "M3FloatingWirePLMinSpc5" value
axSetRealParam "droute" "M4FloatingWirePLMinSpc5" value
axSetRealParam "droute" "M5FloatingWirePLMinSpc5" value
axSetRealParam "droute" "M6FloatingWirePLMinSpc5" value
axSetRealParam "droute" "M7FloatingWirePLMinSpc5" value
axSetRealParam "droute" "M8FloatingWirePLMinSpc5" value
axSetRealParam "droute" "M9FloatingWirePLMinSpc5" value
axSetRealParam "droute" "M10FloatingWirePLMinSpc5" value
axSetRealParam "droute" "M11FloatingWirePLMinSpc5" value
axSetRealParam "droute" "M12FloatingWirePLMinSpc5" value
The valid values of this parameter range between 0.00 and 10.00.
The default is 0.00.
Example
To specify the value of floating wire parallel length spacing 5 for the
M10 layer as 1, enter
axSetRealParam "droute" "M10FloatingWirePLMinSpc5" 1
See Also
M1FloatingWirePLMinSpc2 M2FloatingWirePLMinSpc2
M3FloatingWirePLMinSpc2 M4FloatingWirePLMinSpc2
M5FloatingWirePLMinSpc2 M6FloatingWirePLMinSpc2
M7FloatingWirePLMinSpc2 M8FloatingWirePLMinSpc2
M9FloatingWirePLMinSpc2 M10FloatingWirePLMinSpc2
M11FloatingWirePLMinSpc2 M12FloatingWirePLMinSpc2,
M1FloatingWirePLMinSpc3 M2FloatingWirePLMinSpc3
M3FloatingWirePLMinSpc3 M4FloatingWirePLMinSpc3
M5FloatingWirePLMinSpc3 M6FloatingWirePLMinSpc3
M7FloatingWirePLMinSpc3 M8FloatingWirePLMinSpc3
M9FloatingWirePLMinSpc3 M10FloatingWirePLMinSpc3
M11FloatingWirePLMinSpc3 M12FloatingWirePLMinSpc3
M1FloatingWirePLMinSpc5 M2FloatingWirePLMinSpc5 M3FloatingWirePLMinSpc5
4-119
M1FloatingWirePLMinSpc4 M2FloatingWirePLMinSpc4
M3FloatingWirePLMinSpc4 M4FloatingWirePLMinSpc4
M5FloatingWirePLMinSpc4 M6FloatingWirePLMinSpc4
M7FloatingWirePLMinSpc4 M8FloatingWirePLMinSpc4
M9FloatingWirePLMinSpc4 M10FloatingWirePLMinSpc4
M11FloatingWirePLMinSpc4 M12FloatingWirePLMinSpc4
M1FloatingWirePLMinSpc1 M2FloatingWirePLMinSpc1
M3FloatingWirePLMinSpc1 M4FloatingWirePLMinSpc1
M5FloatingWirePLMinSpc1 M6FloatingWirePLMinSpc1
M7FloatingWirePLMinSpc1 M8FloatingWirePLMinSpc1
M9FloatingWirePLMinSpc1 M10FloatingWirePLMinSpc1
M11FloatingWirePLMinSpc1 M12FloatingWirePLMinSpc1
m1FloatingWireSpacing
m2FloatingWireSpacing
m3FloatingWireSpacing
m4FloatingWireSpacing
m5FloatingWireSpacing
m6FloatingWireSpacing
m7FloatingWireSpacing
m8FloatingWireSpacing
m9FloatingWireSpacing
m10FloatingWireSpacing
m11FloatingWireSpacing
m12FloatingWireSpacing
These parameters specify metal spacing for the floating wire
antenna. If the value is set to N, N means metal spacing for the
floating wire antenna.
Chapter 4: Detail Route Parameters
4-120
Syntax
axSetRealParam "droute" "m1FloatingWireSpacing" value
axSetRealParam "droute" "m2FloatingWireSpacing" value
axSetRealParam "droute" "m3FloatingWireSpacing" value
axSetRealParam "droute" "m4FloatingWireSpacing" value
axSetRealParam "droute" "m5FloatingWireSpacing" value
axSetRealParam "droute" "m6FloatingWireSpacing" value
axSetRealParam "droute" "m7FloatingWireSpacing" value
axSetRealParam "droute" "m8FloatingWireSpacing" value
axSetRealParam "droute" "m9FloatingWireSpacing" value
axSetRealParam "droute" "m10FloatingWireSpacing" value
axSetRealParam "droute" "m11FloatingWireSpacing" value
axSetRealParam "droute" "m12FloatingWireSpacing" value
The valid values of this parameter range between 0 and 1,000,000.
The default is 0.
Example
To specify metal spacing for floating wire antenna as 500, enter
axSetRealParam "droute" "m4FloatingWireSpacing" 500
See Also
accumFloatingWireArea, m1FloatingWireArea m2FloatingWireArea
m3FloatingWireArea m3FloatingWireArea m4FloatingWireArea
m5FloatingWireArea m6FloatingWireArea m7FloatingWireArea
m8FloatingWireArea m9FloatingWireArea m10FloatingWireArea
m11FloatingWireArea m12FloatingWireArea
m1PinNoOffsetVia
The m1PinNoOffsetVia parameter specifies whether to allow an
offset via on the m1 pin. If the value set to 0, an offset via on the m1
pin is allowed. If the value is set to 1, an offset via on m1 is not
allowed.
m1PinNoOffsetVia
4-121
Syntax
axSetIntParam "droute" "m1PinNoOffsetVia" value
Value
Description
0
Offset via on m1 pin is allowed (the
default).
1
Offset via on m1 pin is not allowed
Example
To allow an offset via on the m1 pin, enter
axSetIntParam "droute" "m1PinNoOffsetVia" 0
When set to 1, an offset via on m1 pin is not allowed.
See Also
noOffsetFatVia
M1StubMode
M2StubMode
M3StubMode
M4StubMode
M5StubMode
M6StubMode
M7StubMode
M8StubMode
M9StubMode
Chapter 4: Detail Route Parameters
4-122
M10StubMode
M11StubMode
M12StubMode
These parameters specify how to check the end-of-line spacing rule
for each metal layer. If the value is set to 0, the router does not check
the end-of-line spacing rule for the metalx layer. If the value is set to
1, the router checks the end-of-line spacing rule for metalx. If the
value is set to 2, the router checks one side spacing for metalx. If the
value is set to 3, the router checks two sides spacing for metalx. If
the value is set to 4, the router checks one side and corner spacings
for metalx.
Syntax
axSetIntParam "droute" "M1StubMode" value
axSetIntParam "droute" "M2StubMode" value
axSetIntParam "droute" "M3StubMode" value
axSetIntParam "droute" "M4StubMode" value
axSetIntParam "droute" "M5StubMode" value
axSetIntParam "droute" "M6StubMode" value
axSetIntParam "droute" "M7StubMode" value
axSetIntParam "droute" "M8StubMode" value
axSetIntParam "droute" "M9StubMode" value
axSetIntParam "droute" "M10StubMode" value
axSetIntParam "droute" "M11StubMode" value
axSetIntParam "droute" "M12StubMode" value
Value
Description
0
No end of line spacing for metal layer (the default)
1
End of line spacing for metal layer
2
End of line spacing with one side spacing for metal layer
3
End of line spacing with two side spacing for metal layer
4
End of line spacing with one side spacing and corner
check for metal layer
M1StubMode M2StubMode M3StubMode M4StubMode M5StubMode M6StubMode M7StubMode
4-123
Example
To ensure that there is end-of-line spacing for metal layer 1 to metal
layer 12, enter
axSetIntParam "droute" "M1StubMode" 1
axSetIntParam "droute" "M2StubMode" 1
axSetIntParam "droute" "M3StubMode" 1
axSetIntParam "droute" "M4StubMode" 1
axSetIntParam "droute" "M5StubMode" 1
axSetIntParam "droute" "M6StubMode" 1
axSetIntParam "droute" "M7StubMode" 1
axSetIntParam "droute" "M8StubMode" 1
axSetIntParam "droute" "M9StubMode" 1
axSetIntParam "droute" "M10StubMode" 1
axSetIntParam "droute" "M11StubMode" 1
axSetIntParam "droute" "M12StubMode" 1
m1WireCost
m2WireCost
These parameters specify metal layer usage and wire cost for metal1
and metal2 layers. If the value is set to 0, wires on the corresponding
layer are forbidden during routing, but vias can still be dropped to the
corresponding layer. Positive integer between 1 and 5 specifies the
relative wire cost to the default wire cost (which is 1).
For example, if m1WireCost is set to 3, metal1 wire cost is set to be
three times the default wire cost.
These parameters are useful to discourage or forbid metal usage on
metal1 and metal2 layers.
Syntax
axSetIntParam "droute" "m1WireCost" value
axSetIntParam "droute" "m2WireCost" value
Chapter 4: Detail Route Parameters
4-124
The valid values of this parameter range between 0 and 5. The
default is 1.
Example
To specify the metal layer usage and wire cost for metal1 layer and
metal2 layer, enter
axSetIntParam "droute" "m1WireCost" 1
axSetIntParam "droute" "m2WireCost" 1
When set to 0, the metal wires are not created.
See Also
polyWireCost
macroPinCenterConn
The macroPinCenterConn parameter specifies how connections
to macro and pad cell pins are to be made. If the value is set to 0,
connections to macro and pad cell pins can be made with offset. If
the value is set to 1, connections to macro and pad cell pins must be
centered on the pins. If the value is set to 2, and connections to
macro and pad cell pins must be centered on the pins, and only one
wire can touch each pin.
Syntax
axSetIntParam "droute" "macroPinCenterConn" value
Value
Description
0
Macro/pad pins can be connected with offset (the default)
1
Connection to macro/pad pins has to be centered.
macroPinCenterConn
4-125
Value
Description
2
Enforce stronger rule so only one wire can touch the pin
Example
To enforce a stronger rule to specify that only one wire can touch the
pin, enter
axSetIntParam "droute" "macroPinCenterConn" 2
See Also
portSingleConn
maxAntennaPinCount
The maxAntennaPinCount parameter specifies pin count
threshold for a net to be considered for antenna checking and fixing.
If the value is set to -1, all nets are considered for antenna checking
and fixing. If the value is set to N between 0 and 1,000,000, only the
nets with less than and equal to N pins are checked and fixed for
antenna violations.
For some clock nets, antenna analysis can take an excessive
amount of time, and antennas are usually prevented by using diodes
during net construction. For these nets, it is best to skip antenna
analysis and fixing.
Syntax
axSetIntParam "droute" "maxAntennaPinCount" value
The valid values of this parameter range between -1 and 1,000,000.
The default is -1.
Chapter 4: Detail Route Parameters
4-126
Example
To check antennas on all nets, enter the following:
axSetIntParam "droute" "maxAntennaPinCount" -1
See Also
doAntennaConx, checkAntennaOnPG, maxAntennaRatio,
maxCutAntennaRatio, useSideWallForAntenna,
dontMergeGateForAntenna, outputPinDischarge,
breakAntennaToTopPin.
maxAntennaRatio
The maxAntennaRatio parameter specifies the maximum
tolerable antenna ratio. The antenna ratio is defined to be the ratio
between the total charge-collecting antenna wire area to the total
gate size. This ratio is used only when doAntennaConx has a value
between 1 and 3, and it is ignored if doAntennaConx has value of
4, where the ratio is defined in its own combination rules. The
maxAntennaRatio parameter should be set to be larger than 0.
Note that the antenna ratio can be overwritten by
maxPolyAntennaRatio.
Syntax
axSetIntParam "droute" "maxAntennaRatio" value
The valid values of this parameter range between 0 and 1000000.
The default is 1.
maxAntennaRatio
4-127
Example
To specify the maximum tolerable antenna ratio, enter
axSetIntParam "droute" "maxAntennaRatio" 1000000
See Also
doAntennaConx, checkAntennaOnPG, maxAntennaPinCount,
maxCutAntennaRatio, useSideWallForAntenna,
dontMergeGateForAntenna, outputPinDischarge,
breakAntennaToTopPin.
maxAntennaRatioScale
The maxAntennaRatioScale parameter specifies the maximum
antenna ratio scale for diode mode 11 and diode mode 12. If the
value is set to N, N means maximum antenna ratio scale.
Syntax
axSetRealParam "droute" "maxAntennaRatioScale" value
The valid values are 0 and 1. The default is 1.
Example
If you do not want to specify the maximum antenna ratio scale for
diode mode11 and diode mode12, enter
axSetRealParam "droute" "maxAntennaRatioScale" 0.000
See Also
minAntennaRatioScale
Chapter 4: Detail Route Parameters
4-128
maxCutAntennaRatio
The maxCutAntennaRatio parameter enables and disables the
cut antenna check and fix. It specifies the maximum tolerable cut
antenna ratio when antenna check and fix is enabled, and when
doAntennaConx is not set to 4. The cut antenna ratio is defined to
be the ratio between the total charges collecting antenna cut area to
the total gate size. This ratio is used only when doAntennaConx
has a value between 1 and 3, and it is ignored if doAntennaConx
has value of 4, where the ratio is defined in its own combination
rules.
Syntax
axSetIntParam "droute" "maxCutAntennaRatio" value
The valid values of this parameter range between 0 and 1000000.
The default is 0.
Example
To ignore computing the cut area, enter
axSetIntParam "droute" "maxCutAntennaRatio" 0
See Also
doAntennaConx, checkAntennaOnPG, maxAntennaPinCount,
maxAntennaRatio, useSideWallForAntenna,
dontMergeGateForAntenna, outputPinDischarge,
breakAntennaToTopPin.
maxCutAntennaRatio
4-129
maxOffGridTrack
The maxOffGridTrack parameter specifies how off-grid tracks are
to be added for off-grid pins and off-grid feedthroughs. If the value is
set to 0, off-grid tracks are added selectively in via regions, which are
determined by the router. If the value is set to 1, as many off-grid
tracks as possible are added for off-grid pins. If the value is set to 2,
3, or 4, more off-grid tracks are aggressively added in increasing
order for off-grid feedthroughs and pins.
By creating as many off-grid tracks as possible for off-grid pins, the
router has the maximum flexibility in accessing these pins, at the
cost of more routing time.
It is recommended to leave maxOffGridTrack parameter at the
default value of 0 to start with if the you do not know how bad the
off-grid situation is, and gradually increase the value if the results
suffer from off-grid pin access or off-grid feedthrough usage. If you
know beforehand that there will be off-grid difficulty from previous
experience, maxOffGridTrack can be set to higher value to start
with.
You can also set the value to -1. This lets the router start from 0 and
then automatically and gradually increase to 1, 2, 3, 4 during search
and repair. The side effect of setting maxOffGridTrack to a higher
value is increased runtime.
Chapter 4: Detail Route Parameters
4-130
Syntax
axSetIntParam "droute" "maxOffGridTrack" value
Value
Description
-1
This is a combination from 0 to 4.
0
Selectively adds off-grid tracks (the default)
1
Adds as many off-grid tracks as possible for off-grid pins.
This should resolve problems caused by hard-to-access
pins.
2
Adds more off-grid tracks for off-grid feedthroughs
3,4
Adds even more off-grid tracks for off-grid feedthroughs
Example
To selectively add off-grid tracks, enter
axSetIntParam "droute" "maxOffGridTrack" 0
See Also
noOffGridRouting, offGridCost
maxStackRange
The maxStackRange parameter specifies the separating distance
between two cuts to be considered as stacking when checking for
maxStackLevel constraint from technology file. If two cuts are less
than the specified distance, they are considered as stacking. The
unit of distance is a database unit.
Syntax
axSetIntParam "droute" "maxStackRange" value
maxStackRange
4-131
The valid values of this parameter range between 0 and
1073741824. The default is 0.
Example
To specify the separating distance between two cuts as 9000, enter
axSetIntParam "droute" "maxStackRange" 9000
maxTieOffDistance
The maxTieOffDistance parameter specifies the search distance
to connect tieoffs. If the value is set to -1, there is no search distance
limit to connect tieoffs. Otherwise, the parameter specifies the
search distance for the search engine to use in number of gcells to
connect tieoffs.
Syntax
axSetIntParam "droute" "maxTieOffDistance" value
The valid values of this parameter range between -1 and 20,000.
The default is 10.
Example
To specify no limit on the search distance, enter
axSetIntParam "droute" "maxTieOffDistance" -1
Chapter 4: Detail Route Parameters
4-132
metalFillDensityIncrement
The metalFillDensityIncrement parameter specifies
increment value for metal fill. If the value is set to N, the router targets
metal density N percent higher than minimum density during dummy
metal insertion.
The value N specifies the increment from minDensity value for
metal fill. It is used when fillMetalCloseToMinDensityValue
is enabled. For example, if minDensity (in the technology file) is 20
percent and metalFillDensityIncrement is set as 10 percent,
target density of metal fill will be 30 percent.
Syntax
axSetIntParam "droute" "metalFillDensityIncrement" value
The valid values of this parameter range between 0 and 100. The
default is 10.
Example
To specify increment value for metal fill as 50, enter
axSetIntParam "droute" "metalFillDensityIncrement" 50
See Also
fillMetalCloseToMinDensityValue, fillMetalUniformly
minAntennaRatioScale
The minAntennaRatioScale parameter specifies minimum
antenna ratio scale for diode mode 11 and diode mode 12. If the
value is set to N, N means minimum antenna ratio scale.
metalFillDensityIncrement
4-133
Syntax
axSetRealParam "droute" "minAntennaRatioScale" value
The valid values are 0 or 1. The default is 0.
Example
To specify minimum antenna ratio scale for diode mode 11 and diode
mode 12, enter
axSetRealParam "droute" "minAntennaRatioScale" 1.000
See Also
maxAntennaRatioScale
minLengthCheckCutMode
The minLengthCheckCutMode parameter specifies how to
compute minimum length when a polygon completely encloses a via.
If the value is set to 0, the router does not check whether a wire
completely encloses via. If the value is set to 1, the router checks
whether a wire completely encloses via.
When a via connects more than one wire segment on the same
metal layer, minimum length is checked against the longest wire that
completely encloses the via. When a via connects only to single wire
segment on one metal layer, the wire needs to be checked for
minimum length rule.
Chapter 4: Detail Route Parameters
4-134
Syntax
axSetIntParam "droute" "minLengthCheckCutMode" value
Value
Description
0
Does not check overlapping cuts
(the default).
1
Checks overlapping cuts on less
than minLength segments.
Example
To check overlapping cuts on less than minimum length segments,
enter
axSetIntParam "droute" "minLengthCheckCutMode" 1
When set to 0, the overlapping cuts are not checked.
minShieldLength
The minShieldLength parameter specifies minimum length for a
wire to be shielded in the unit of pitches. For example, if the
parameter is left at its default value of 4, only the wires longer than 4
pitches are shielded.
Syntax
axSetIntParam "droute" "minShieldLength" value
The valid values of this parameter range between 0 and 100. The
default is 4.
minShieldLength
4-135
Example
To specify the minimum length for a wire to be shielded as 20, enter
axSetIntParam "droute" "minShieldLength" 20
See Also
shieldViaMinSpacing
neighboringLayerFatExtensionRange
The neighboringLayerFatExtensionRange parameter
specifies the fat extension range for recommended metal spacing on
the adjacent upper layer. If the value is set to N, the fat spacing rule
on adjacent upper layer is recommended if wires on the adjacent
upper layer are within extension range N of the fat wire. For example,
if wires on metal3 locate within the extension range of the fat wire on
metal2, fat spacing is recommended for those wires on metal3.
Syntax
axSetRealParam "droute"
"neighboringLayerFatExtensionRange" value
The valid values of this parameter range between 0.000 and
100.000. The default is 0.000.
Example
To specify the fat extension range for recommended metal spacing
on the adjacent upper layer, enter
axSetRealParam "droute"
"neighboringLayerFatExtensionRange" 60.000
Chapter 4: Detail Route Parameters
4-136
See Also
neighboringLayerFatThreshold,
neighboringLayerM1RecommendedSpacing
neighboringLayerM2RecommendedSpacing
neighboringLayerM3RecommendedSpacing
neighboringLayerM4RecommendedSpacing
neighboringLayerM5RecommendedSpacing
neighboringLayerM6RecommendedSpacing
neighboringLayerM7RecommendedSpacing
neighboringLayerM8RecommendedSpacing
neighboringLayerM9RecommendedSpacing
neighboringLayerM10RecommendedSpacing
neighboringLayerM11RecommendedSpacing
neighboringLayerM12RecommendedSpacing
neighboringLayerFatThreshold
The neighboringLayerFatThreshold parameter specifies the
the fat threshold for metal spacing on the adjacent upper layer. If the
value is set to N, the recommended fat spacing rule on the adjacent
upper layer is triggered when wire width is larger than N. For
example, if a wire on M2 layer is wider than N, fat spacing is
recommended for wires on M3 if they are above the fat wire on M2.
Syntax
axSetRealParam "droute" "neighboringLayerFatThreshold"
value
The valid values of this parameter range between 0.000 and
100.000. The default is 0.000.
neighboringLayerFatThreshold
4-137
Example
To specify the fat threshold for metal spacing on the adjacent upper
layer, enter
axSetRealParam "droute" "neighboringLayerFatThreshold"
80.000
See Also
neighboringLayerFatExtensionRange,
neighboringLayerM1RecommendedSpacing
neighboringLayerM2RecommendedSpacing
neighboringLayerM3RecommendedSpacing
neighboringLayerM4RecommendedSpacing
neighboringLayerM5RecommendedSpacing
neighboringLayerM6RecommendedSpacing
neighboringLayerM7RecommendedSpacing
neighboringLayerM8RecommendedSpacing
neighboringLayerM9RecommendedSpacing
neighboringLayerM10RecommendedSpacing
neighboringLayerM11RecommendedSpacing
neighboringLayerM12RecommendedSpacing
neighboringLayerM1RecommendedSpacing
neighboringLayerM2RecommendedSpacing
neighboringLayerM3RecommendedSpacing
neighboringLayerM4RecommendedSpacing
neighboringLayerM5RecommendedSpacing
neighboringLayerM6RecommendedSpacing
neighboringLayerM7RecommendedSpacing
neighboringLayerM8RecommendedSpacing
neighboringLayerM9RecommendedSpacing
Chapter 4: Detail Route Parameters
4-138
neighboringLayerM10RecommendedSpacing
neighboringLayerM11RecommendedSpacing
neighboringLayerM12RecommendedSpacing
These parameters specify recommended spacing for wires on the
neighboring upper layer. If the value is set to N, spacing N between
wires on adjacent upper layer is recommended if they are directly
above or within extension range of the fat wire.
Syntax
axSetRealParam "droute"
"neighboringLayerM1RecommendedSpacing" value
axSetRealParam "droute"
"neighboringLayerM2RecommendedSpacing" value
axSetRealParam "droute"
"neighboringLayerM3RecommendedSpacing" value
axSetRealParam "droute"
"neighboringLayerM4RecommendedSpacing" value
axSetRealParam "droute"
"neighboringLayerM5RecommendedSpacing" value
axSetRealParam "droute"
"neighboringLayerM6RecommendedSpacing" value
axSetRealParam "droute"
"neighboringLayerM7RecommendedSpacing" value
axSetRealParam "droute"
"neighboringLayerM8RecommendedSpacing" value
axSetRealParam "droute"
"neighboringLayerM9RecommendedSpacing" value
axSetRealParam "droute"
"neighboringLayerM10RecommendedSpacing" value
axSetRealParam "droute"
"neighboringLayerM11RecommendedSpacing" value
axSetRealParam "droute"
"neighboringLayerM12RecommendedSpacing" value
The valid values of this parameter range between 0.000 and
100.000.
neighboringLayerM1RecommendedSpacing neighboringLayerM2RecommendedSpacing
4-139
Example
To specify recommended spacing on the adjacent upper layer as 90,
enter
axSetRealParam "droute"
"neighboringLayerM1RecommendedSpacing" 90.000
See Also
neighboringLayerFatThreshold,
neighboringLayerFatExtensionRange
noOffGridRouting
The noOffGridRouting parameter specifies the type of off-grid
routing. If the value is set to 0, off-grid tracks can be used for routing.
If the value is set to 1, all wires must be on grid. If the value is set to
2, all wires must be on-grid, including the two endpoints and vias.
In general, allowing routing to go off-grid gives the router more
flexibility, and it is recommended to leave this parameter at its default
value of 0. You can use this parameter to restrict off-grid routing if
undesirable effects are being observed with off-grid routing.
If the value is set to 1, vias at the end of wires can go off grid. If the
value is set to 2, all vias must be on-grid.
Chapter 4: Detail Route Parameters
4-140
Syntax
axSetIntParam "droute" "noOffGridRouting" value
Value
Description
-1
Off-grid tracks can be used for routing but zrgMisalignedTrack
must be disabled. So, all unified grids (all layers) will be used in
maze route.
0
Off-grid tracks can be used for routing (the default)
1
Entire routing takes place on grid
2
All wires must be on-grid, including the two endpoints
3
All wires and vias must be on-grid, and the vias may not be shifted
4
All vias must be on-grid (pref-pref)
5
All vias must be on grid (pref-pref), wires must be on grid
(centerline)
6
All vias must be on-grid (pref-pref), non-stub wires must be on
-grid (center line and end points)
Example
To ensure that all the wires including two end points must be on grid,
enter
axSetIntParam "droute" "noOffGridRouting" 2
See Also
offGridCost, maxOffGridTrack, V1NoOffGridRouting
V2NoOffGridRouting V3NoOffGridRouting V4NoOffGridRouting
V5NoOffGridRouting V6NoOffGridRouting V7NoOffGridRouting
V8NoOffGridRouting V9NoOffGridRouting V10NoOffGridRouting
V11NoOffGridRouting V12NoOffGridRouting
noOffGridRouting
4-141
noOffsetFatVia
The noOffsetFatVia parameter specifies the relative positions of
fat vias and wires that they land on. If the value is set to 0, fat vias
can overlap with fat preroute or pins with any offset. If the value is set
to 1, fat vias have to be completely inside fat preroutes or pins. If the
value is set to 2, fat vias have to be completely inside fat preroutes
or pins, and no offset vias are allowed on thin straps as well.
Do not specify value 2 if the shapes that the fat vias tap into are
narrower than the fat vias.
Syntax
axSetIntParam "droute" "noOffsetFatVia" value
Value
Description
0
Fat via overlaps with fat preroute or pin with any offset
(the default)
1
Fat via has to be completely inside fat preroute or pin
2
Fat via has to be completely inside fat preroute or pin
and also no offset via on thin straps.
Example
To specify that the fat via can overlap with the fat preroute or pin with
any offset, enter
axSetIntParam "droute" "noOffsetFatVia" 0
See Also
m1PinNoOffsetVia
Chapter 4: Detail Route Parameters
4-142
numCPUs
The numCPUs parameter specifies the number of CPUs to be used
for distributed routing.
Syntax
axSetIntParam "droute" "numCPUs" value
The valid values of this parameter range between 0 and 63. The
default is 0.
Example
To use a single CPU mode, enter
axSetIntParam "droute" "numCPUs" 1
offGridCost
The offGridCost parameter specifies extra off-grid routing cost.
The default on-grid unit wire cost is 1. Therefore, if the value is set to
0, off-grid routes have the same cost as on-grid cost, and wires are
routed as in a gridless router. If the value is set to N, off grid unit wire
cost becomes 1 + N.
This parameter can be used to encourage or discourage off-grid
routing against on-grid routing.
Syntax
axSetIntParam "droute" "offGridCost" value
The valid values of this parameter range between 0 and 5. The
default is 1.
numCPUs
4-143
Example
To route as a gridless router, enter
axSetIntParam "droute" "offGridCost" 0
See Also
noOffGridRouting, maxOffGridTrack
offsetFillTrack
The offsetFillTrack parameter specifies how to offset the metal
fill track.
Syntax
axSetIntParam "droute" "offsetFillTrack" value
Value
Description
0
The router automatically
determines the initial track for
metal fill (the default).
1
The router offsets initial track by
half fill-pitch.
Example
To enable the router to offset the initial track by half fill-pitch, enter
axSetIntParam "droute" "offsetFillTrack" 1
See Also
expandFillTracks, fillEndByMinSpcPercent
Chapter 4: Detail Route Parameters
4-144
optDelaySlackTarget
The optDelaySlackTarget parameter specifies slack target for
delay optimization during in-route optimization (axgAdvRouteOpt).
Syntax
axSetRealParam "droute" "optDelaySlackTarget" value
The valid values of this parameter range between -100.000 and
100.000. The default is 0.100.
Example
To specify slack target for delay optimization during in-route
optimization as 90, enter
axSetRealParam "droute" "optDelaySlackTarget" 90.000
See Also
optSetup, doXtalkConx, doMaxTransConx, doMaxCapConx.
optDelaySrLoop
The optDelaySrLoop parameter specifies the number of search
and repair loops after delay optimization in the axgAdvRouteOpt or
astPostRouteOpt command.
The search and repair loop terminates if DRC violation count
reaches 0 even if the specified number of iterations is not reached.
If the DRC violation number is still converging (reducing) after
reaching the specified number of iterations, specifying more
iterations could help reduce DRC violation count further at the cost
of more runtime.
optDelaySlackTarget
4-145
Syntax
axSetIntParam "droute" "optDelaySrLoop" value
The valid values of this parameter range between 0 and 200. The
default is 5.
Example
To specify the number of search and repair loops as 5 after delay
optimization in axgAdvRouteOpt or astPostRouteOpt
command, enter the following:
axSetIntParam "droute" "optDelaySrLoop" 5
See Also
autoSrLoop, ecoSrLoop, optSrLoop, srLoop, areaSrLoop,
groupSrLoop
optimizeRouteGroup
The optimizeRouteGroup parameter specifies whether
optimization is to be run in the axgRouteGroup command.
Skipping optimization at the end of the route net group could save
some runtime.
Chapter 4: Detail Route Parameters
4-146
Syntax
axSetIntParam "droute" "optimizeRouteGroup" value
Value
Description
0
Optimization is skipped at the end
of route net group command.
1
Optimization is run at the end of
route net group command (the
default).
Example
To skip optimization at the end of the route net group command,
enter
axSetIntParam "droute" "optimizeRouteGroup" 0
optSetup
The optSetup parameter specifies whether setup slack is to be
maintained or improved during in-route optimization. If the value is
set to 0, the router tries to maintain setup slack, and does not try to
improve the slack. If the value is set to 1, the router tries to improve
setup slack.
optSetup
4-147
Syntax
axSetIntParam "droute" "optSetup" value
Value
Description
0
The router tries to maintain setup
slack, and does not try to improve
the slack.
1
The router tries to improve setup
slack (the default).
Example
To maintain setup slack, enter
axSetIntParam "droute" "optSetup" 0
See Also
optDelaySlackTarget, doXtalkConx, doMaxTransConx,
doMaxCapConx
optSrLoop
The optSrLoop parameter specifies the number of search and
repair loops after route optimization in axgRoutOpt command.
The search and repair loop terminates if DRC violation count
reaches 0 even if the specified number of iterations is not reached.
If the DRC violation number is still converging (reducing) after
reaching specified number of iterations, specifying more iterations
could help reduce DRC violation count further at the cost of more
runtime.
Chapter 4: Detail Route Parameters
4-148
Syntax
axSetIntParam "droute" "optSrLoop" value
The valid values of this parameter range between 0 and 200. The
default is 20.
Example
To specify the number of search and repair loops after route
optimization as 20, enter
axSetIntParam "droute" "optSrLoop" 20
See Also
autoSrLoop, ecoSrLoop, optDelaySrLoop, srLoop, areaSrLoop,
groupSrLoop
optViaHoldTimeThreshold
The optViaHoldTimeThreshold parameter specifies the hold
time threshold for contact optimization. If the value is set to N, the
router tries to preserve hold time by not inserting redundant vias for
the nets whose hold time is worse than N.
Syntax
axSetRealParam "droute" "optViaHoldTimeThreshold" value
The valid values of this parameter range between -1000000.000 and
1000000.000. The default is 0.000.
optViaHoldTimeThreshold
4-149
Example
To specify the hold time threshold for contact optimization as 800,
enter
axSetRealParam "droute" "optViaHoldTimeThreshold" 800.000
See Also
optViaSetupSlackThreshold
optViaReportExcludedNets
The optViaReportExcludedNets parameter specifies whether
to report the timing-critical nets excluded during contact optimization.
If the value set to 0, the router does not report the excluded
timing-critical nets. If the value is set to 1, the router lists the names
of all excluded timing-critical nets in the log file.
Syntax
axSetIntParam "droute" "optViaReportExcludedNets" value
Value
Description
0
Does not report excluded
timing-critical nets (the default).
1
Lists the names of all excluded
timing-critical nets.
Example
To list the names of all excluded timing-critical nets, enter
axSetIntParam "droute" "optViaReportExcludedNets" 1
When set to 0, the excluded timing-critical nets are not reported.
Chapter 4: Detail Route Parameters
4-150
See Also
optViaSrLoop, optViaTimingDriven, optViaSetupSlackThreshold,
optViaHoldTimeThreshold
optViaSetupSlackThreshold
The optViaSetupSlackThreshold parameter specifies the
setup slack threshold for contact optimization. If the value is set to N,
the router tries to preserve setup time by not inserting redundant vias
for the nets whose setup slack is worse than N.
Syntax
axSetRealParam "droute" "optViaSetupSlackThreshold" value
The valid values of this parameter range between -1000000.000 and
1000000.000. The default is -0.100.
Example
To specify the setup slack threshold for contact optimization as -800,
enter
axSetRealParam "droute" "optViaSetupSlackThreshold"
-800.000
See Also
optViaHoldTimeThreshold
optViaSetupSlackThreshold
4-151
optViaSrLoop
The optViaSrLoop parameter specifies search and repair loops
after contact optimization. If the value set to N, the router runs N
loops of search and repair after contact optimization.
Syntax
axSetIntParam "droute" "optViaSrLoop" value
The valid values of this parameter range between 0 and 100. The
default is 1.
Example
To specify search and repair loops after contact optimization as 40,
enter
axSetIntParam "droute" "optViaSrLoop" 40
See Also
optViaTimingDriven,
optViaSetupSlackThreshold,optViaReportExcludedNets
optViaHoldTimeThreshold
optViaTimingDriven
The optViaTimingDriven parameter specifies whether to
preserve timing for critical nets with timing violations. If the value is
set to 0, the router does contact optimization for all nets. If the value
is set to 1, the router tries to preserve timing for critical nets by not
doing contact optimization on those nets.
Chapter 4: Detail Route Parameters
4-152
Syntax
axSetIntParam "droute" "optViaTimingDriven" value
Value
Description
0
Performs contact optimization for
all nets (the default).
1
The router tries to preserve timing
for critical nets by not doing contact
optimization on those nets.
Example
To perform contact optimization for all nets, enter the following:
axSetIntParam "droute" "optViaTimingDriven" 0
See Also
optViaSrLoop,
optViaSetupSlackThreshold,optViaReportExcludedNets
optViaHoldTimeThreshold
outputPinDischarge
The outputPinDischarge parameter flags whether output pins
and diodes can discharge unlimited static charge, or cannot
discharge any static charge at all. If the value is set to 0, zero
discharging capability is assumed. If the value is set to 1, unlimited
discharging capability is assumed. This parameter is ignored if
doAntennaConx is set to 4, where limited discharging can be
modeled in its own rules.
Note that limited discharging is not supported when
doAntennaConx is set to 1, 2, or 3.
outputPinDischarge
4-153
Syntax
axSetIntParam "droute" "outputPinDischarge" value
Value
Description
0
Assumes output pin cannot
discharge any static charge.
1
Assumes output pin can discharge
unlimited static charge (the
default).
Example
To enable the output pin discharge unlimited static charge, enter
axSetIntParam "droute" "outputPinDischarge" 1
When set to 0, the output pin cannot discharge any static charge.
See Also
doAntennaConx, checkAntennaOnPG, maxAntennaPinCount,
maxAntennaRatio, useSideWallForAntenna,
dontMergeGateForAntenna, maxCutAntennaRatio,
breakAntennaToTopPin.
parallelLengthMode
The parallelLengthMode parameter specifies how to compute
parallel length for the fat metal spacing rule. If the value is set to 0,
the router merges fat neighboring shapes only and determines
parallel length based on the merged fat wire. If the value is set to 1,
the router merges all neighboring (fat and thin) shapes and the total
length of the merged wire will be used to compute the parallel length.
Chapter 4: Detail Route Parameters
4-154
Syntax
axSetIntParam "droute" "parallelLengthMode" value
Value
Description
0
Merges with fat neighboring
shapes only (the default).
1
Merges with all neighboring
shapes.
Example
To merge the router with all neighboring shapes, enter
axSetIntParam "droute" "parallelLengthMode" 1
When set to 0, the router merges with fat neighboring shapes only.
See Also
checkMergedFatWire
pinTaperLengthLimit
The pinTaperLengthLimit parameter specifies the limit for pin
tapering length. If the value is set to -1, there is no limit for tapering
length, and tapering should go all the way to the Steiner point.
Otherwise, this parameter specifies the tapering length limit in the
units of routing pitches.
Syntax
axSetIntParam "droute" "pinTaperLengthLimit" value
The valid values of this parameter range between -1 and 1,000,000.
The default is 10.
pinTaperLengthLimit
4-155
Example
To specify the limit for pin tapering length as 20, enter
axSetIntParam "droute" "pinTaperLengthLimit" 20
See Also
pinTaperMode
pinTaperMode
The pinTaperMode parameter specifies pin tapering width. If the
value is set to 0, the tapering width is the default width. If the value
is set to 1, the tapering width is the pin width.
Syntax
axSetIntParam "droute" "pinTaperMode" value
Value
Description
0
Tapers to default width.
1
Tapers to pin width (the default).
Example
To specify tapering width as the default width, enter
axSetIntParam "droute" "pinTaperMode" 0
See Also
pinTaperLengthLimit
Chapter 4: Detail Route Parameters
4-156
polyContIsolatedViaQuadrantSpacing
via1IsolatedViaQuadrantSpacing
via2IsolatedViaQuadrantSpacing
via3IsolatedViaQuadrantSpacing
via4IsolatedViaQuadrantSpacing
via51IsolatedViaQuadrantSpacing
via6IsolatedViaQuadrantSpacing
via7IsolatedViaQuadrantSpacing
via8IsolatedViaQuadrantSpacing
via9IsolatedViaQuadrantSpacing
via10IsolatedViaQuadrantSpacing
via11IsolatedViaQuadrantSpacing
These parameters specify maximum spacing between an isolated
via and its adjacent vias. If the value is set to N, adjacent vias are
required within distance N from the isolated via. The adjacent vias
must cover all four quadrants. The difference between these
parameters and isolatedViaQuadrantSpacing is that they are
defined on a per layer basis while
isolatedViaQuadrantSpacing is applied to all via layers.
Syntax
axSetRealParam "droute"
"polyContIsolatedViaQuadrantSpacing" value
axSetRealParam "droute" "via1IsolatedViaQuadrantSpacing"
value
axSetRealParam "droute" "via2IsolatedViaQuadrantSpacing"
value
axSetRealParam "droute" "via3IsolatedViaQuadrantSpacing"
value
axSetRealParam "droute" "via4IsolatedViaQuadrantSpacing"
value
axSetRealParam "droute" "via5IsolatedViaQuadrantSpacing"
value
polyContIsolatedViaQuadrantSpacing via1IsolatedViaQuadrantSpacing via2IsolatedViaQuadrantSpacing
4-157
axSetRealParam "droute" "via6IsolatedViaQuadrantSpacing"
value
axSetRealParam "droute" "via7IsolatedViaQuadrantSpacing"
value
axSetRealParam "droute" "via8IsolatedViaQuadrantSpacing"
value
axSetRealParam "droute" "via9IsolatedViaQuadrantSpacing"
value
axSetRealParam "droute" "via10IsolatedViaQuadrantSpacing"
value
axSetRealParam "droute" "via11IsolatedViaQuadrantSpacing"
value
The valid values of this parameter range between 0.000 and 50.000.
The default is 0.000.
Example
To define the isolated via rule by specifying spacing between an
isolated via and its adjacent vias on a per-layer basis as 20, enter
axSetRealParam "droute" "via2IsolatedViaQuadrantSpacing"
20.000
See Also
isolatedViaQuadrantSpacing
polyContIsolatedViaSpacing
via1IsolatedViaSpacing
via2IsolatedViaSpacing
via3IsolatedViaSpacing
via4IsolatedViaSpacing
via5IsolatedViaSpacing
via6IsolatedViaSpacing
via7IsolatedViaSpacing
Chapter 4: Detail Route Parameters
4-158
via81IsolatedViaSpacing
via9IsolatedViaSpacing
via10IsolatedViaSpacing
via11IsolatedViaSpacing
These parameters specify maximum spacing between an isolated
via and its adjacent vias. If the value is set to N, at least one adjacent
via is required within distance N from isolated via. The difference
between these parameters and isolatedViaSpacing is that they
are defined per layer basis while isolatedViaSpacing is applied
to all via layers.
Syntax
axSetRealParam "droute" "polyContIsolatedViaSpacing" value
axSetRealParam "droute" "via1IsolatedViaSpacing" value
axSetRealParam "droute" "via2IsolatedViaSpacing" value
axSetRealParam "droute" "via3IsolatedViaSpacing" value
axSetRealParam "droute" "via4IsolatedViaSpacing" value
axSetRealParam "droute" "via5IsolatedViaSpacing" value
axSetRealParam "droute" "via6IsolatedViaSpacing" value
axSetRealParam "droute" "via7IsolatedViaSpacing" value
axSetRealParam "droute" "via8IsolatedViaSpacing" value
axSetRealParam "droute" "via9IsolatedViaSpacing" value
axSetRealParam "droute" "via10IsolatedViaSpacing" value
axSetRealParam "droute" "via11IsolatedViaSpacing" value
The valid values of this parameter range between 0.000 and 20.000.
The default is 0.
Example
To define isolated via rule by specifying spacing between an isolated
via and its adjacent vias on a per-layer basis as 10, enter
axSetRealParam "droute" "via2IsolatedViaSpacing" 10.000
polyContIsolatedViaSpacing via1IsolatedViaSpacing via2IsolatedViaSpacing via3IsolatedViaSpacing
4-159
See Also
isolatedViaSpacing
polycontMacroDensity
via1MacroDensity
via2MacroDensity
via3MacroDensity
via4MacroDensity
via5MacroDensity
via6MacroDensity
via7MacroDensity
via8MacroDensity
via9MacroDensity
via10MacroDensity
via11MacroDensity
These parameters specify the macro’s via density. If the value is set
to N, the router counts the macro’s via density as N percent when
computing via density.
Syntax
axSetRealParam "droute" "polycontMacroDensity" value
axSetRealParam "droute" "via1MacroDensity" value
axSetRealParam "droute" "via2MacroDensity" value
axSetRealParam "droute" "via3MacroDensity" value
axSetRealParam "droute" "via4MacroDensity" value
axSetRealParam "droute" "via5MacroDensity" value
axSetRealParam "droute" "via6MacroDensity" value
axSetRealParam "droute" "via7MacroDensity" value
axSetRealParam "droute" "via8MacroDensity" value
axSetRealParam "droute" "via9MacroDensity" value
axSetRealParam "droute" "via10MacroDensity" value
axSetRealParam "droute" "via11MacroDensity" value
Chapter 4: Detail Route Parameters
4-160
The valid values of this parameter range between -1.000 and
100.000. The default is -1.000.
Example
To specify the macro’s via density as 80, enter
axSetRealParam "droute" "via2MacroDensity" 80.000
See Also
polyMacroDensity m1MacroDensity m2MacroDensity
m3MacroDensity m4MacroDensity m5MacroDensity
m6MacroDensity m7MacroDensity m8MacroDensity
m9MacroDensity m10MacroDensity m11MacroDensity
m12MacroDensity
polyMacroDensity
m1MacroDensity
m2MacroDensity
m3MacroDensity
m4MacroDensity
m5MacroDensity
m6MacroDensity
m7MacroDensity
m8MacroDensity
m9MacroDensity
polyMacroDensity m1MacroDensity m2MacroDensity m3MacroDensity m4MacroDensity m5MacroDensity
4-161
m10MacroDensity
m11MacroDensity
m12MacroDensity
These parameters specify macro’s metal density. If the value is set
to N, the router counts macro’s metal density as N percent when
computing metal density.
Syntax
axSetRealParam "droute" "polyMacroDensity" value
axSetRealParam "droute" "m1MacroDensity" value
axSetRealParam "droute" "m2MacroDensity" value
axSetRealParam "droute" "m3MacroDensity" value
axSetRealParam "droute" "m4MacroDensity" value
axSetRealParam "droute" "m5MacroDensity" value
axSetRealParam "droute" "m6MacroDensity" value
axSetRealParam "droute" "m7MacroDensity" value
axSetRealParam "droute" "m8MacroDensity" value
axSetRealParam "droute" "m9MacroDensity" value
axSetRealParam "droute" "m10MacroDensity" value
axSetRealParam "droute" "m11MacroDensity" value
axSetRealParam "droute" "m12MacroDensity" value
The valid values of this parameter range between -1.000 and
100.000. The default is -1.000.
Example
To specify macro’s metal density as 60, enter
axSetRealParam "droute" "m3MacroDensity" 60.000
See Also
polycontMacroDensity via1MacroDensity via2MacroDensity
via3MacroDensity via4MacroDensity via5MacroDensity
via6MacroDensity via7MacroDensity via8MacroDensity
via9MacroDensity via10MacroDensity via11MacroDensity
Chapter 4: Detail Route Parameters
4-162
polyWireCost
The polyWireCost parameter specifies poly layer usage and poly
wire cost during routing.
If the value is set to -1, poly wires are forbidden during routing, and
all poly contacts to connect to poly pins must be completely enclosed
in poly pins. If the value is set to 0, poly wires are forbidden, but poly
contacts that connect to poly pins do not have to be completely
enclosed in poly pins. Otherwise, the parameter specifies the relative
poly wire cost to default metal wire cost (which is 1).
For example, if the value is set to 1, poly wires have the same default
cost as metal wires.
You should be careful about setting the usage of poly layer, as poly
wires are highly resistive. Also, if the user wants to allow any poly
usage that goes outside poly pins, user should be sure that poly layer
blockages are extracted properly in the cells.
Syntax
axSetIntParam "droute" "polyWireCost" value
The valid values of this parameter range between -1 and 9. The
default is 0.
Example
To treat poly as metal layer as 1, enter
axSetIntParam "droute" "polyWireCost" 1
See Also
m1WireCost m2WireCost, accessPolyPin
polyWireCost
4-163
portSingleConn
The portSingleConn parameter specifies how many points at
which a port can be connected to routes. If the value is set to 0, the
port can connect to routes at multiple points, with port shapes as part
of connecting shapes. If the value is set to 1, each port (of standard
cells, macros, and pad cells) can only have only one connection
point. If the value is set to 2, all standard cell ports can have one
connection point, while other ports can still connect to routes at
multiple points.
Using value 0 gives the router more flexibility in completing routing.
However, due to electronic requirements, more later libraries are
beginning to require single port connection.
User can overwrite this option by CLF command:
DefinePortFeedthru "cellname" "portname" #t
Syntax
axSetIntParam "droute" "portSingleConn" value
Value
Description
0
One port can be connected at multiple points, with its
internal routing used as feedthrough (the default).
1
Each port can have only one connection point.
2
All standard cell ports can have only one connection
point
Example
To specify that each port can have only one connection point, enter
axSetIntParam "droute" "portSingleConn" 1
Chapter 4: Detail Route Parameters
4-164
See Also
macroPinCenterConn
readMetalBlockageLayer
The readMetalBlockageLayer parameter specifies whether
shapes on user-created metal blockage layers are to be read in or
ignored. If the value is set to 0, shapes on metalBlockage layers
are ignored. If the value is set to 1, shapes on metalBlockage
layers are read and honored.
Syntax
axSetIntParam "droute" "readMetalBlockageLayer" value
Value
Description
0
Ignores shapes on metal blockage
layers (212, 218, 219, ..) (the
default).
1
Read shapes on metal Blockage
layers.
Example
To read shapes on metalBlockage layers, enter
axSetIntParam "droute" "readMetalBlockageLayer" 1
When set to 0, shapes on metalBlockage layers (212, 218, 219,
..) are ignored.
readMetalBlockageLayer
4-165
removeObsoleteStub
The removeObsoleteStub parameter specifies whether to
remove the obsolete stub. If the value is set to 0, the router leaves
obsolete stubs in routing solution. If the value is set to 1, the router
removes obsolete stubs at the end of each switch box routing.
Syntax
axSetIntParam "droute" "removeObsoleteStub" value
Value
Description
0
Leaves obsolete stubs in routing
solution (the default).
1
Tries to remove obsolete stubs at
the end of each switch box routing.
Example
To try removing obsolete stubs at the end of each switch box routing,
enter
axSetIntParam "droute" "removeObsoleteStub" 1
When set to 0, obsolete stubs are left in routing solution.
reportLimit
The reportLimit parameter specifies the maximum number of
DRC violations that the router reports.
Chapter 4: Detail Route Parameters
4-166
If the value is set to -1, no limit is set, and the router reports all DRC
violations. Otherwise, the value specifies the maximum number of
DRC violations to be reported.
Syntax
axSetIntParam "droute" "reportLimit" value
The valid values of this parameter range between -1 and 10,000.
The default is 200.
Example
To report 500 DRC violations, enter
axSetIntParam "droute" "reportLimit" 500
rerouteUserWire
The rerouteUserWire parameter specifies whether user-created
wires and vias are to be treated as fixed or reroutable.
Syntax
axSetIntParam "droute" "rerouteUserWire" value
Value
Description
0
User-created wires and vias (such as the wires
created in layout editor) are treated as fixed (the
default).
1
User-created wires and vias are reroutable.
Example
To reroute user-created wires, enter
axSetIntParam "droute" "rerouteUserWire" 1
rerouteUserWire
4-167
rerunDRC
The rerunDRC parameter specifies whether DRC violations are
regenerated before search and repair.
Syntax
axSetIntParam "droute" "rerunDRC" value
Value
Description
0
DRC violations from previous
results are used by search and
repair (the default).
1
DRC violations are regenerated
before search and repair.
Example
To recheck violations before search and repair, enter
axSetIntParam "droute" "rerunDRC" 1
resetMinMaxLayer
The resetMinMaxLayer parameter resets minimum-maximum
rule constraints defined by axgSetMinMaxLayer and
axgSetNetConstraint commands before search and repair.
Chapter 4: Detail Route Parameters
4-168
Syntax
axSetIntParam "droute" "resetMinMaxLayer" value
Value
Description
0
Does not change layer of wires before
search and repair (the default).
1
Resets the layer of all wires based on the
minimum and maximum rule before
starting search and repair.
Example
To reset the layer of all wires based on the minimum-maximum rule
before starting search and repair, enter
axSetIntParam "droute" "resetMinMaxLayer" 1
rotateLineViaArray
This parameter specifies how line-shaped via arrays are rotated. A
line-shaped via array is a via array of size 1 by N or N by 1. If the
value is set to 0, 1 by N via array is treated as the rotated via array
of N by 1 via array. If the value is set to 1, the line-shaped via arrays
are physically rotated, including the cuts in the via arrays. The value
of rotateLineViaArray affects the rotated via array usage in
adjustLineViaArray and axDrouteOptimizeContact.
rotateLineViaArray
4-169
Syntax
axSetIntParam "droute" "rotateLineViaArray" value
Value
Description
0
Uses 1 x N and N x 1 via array as rotated equivalent via
(the default).
1
Rotates line-via array, instead of swapping row/column
numbers for both adjustLineViaArray and
axDrouteOptimizeContact.
Example
To use 1 by N and N by 1 via array as rotated equivalent via, enter
axSetIntParam "droute" "rotateLineViaArray" 0
When set to 1, line-via array is rotated instead of swapping row/
column numbers for both adjustLineViaArray and
axDrouteOptimizeContact.
See Also
adjustLineViaArray, lineViaFollowPrefDir
shieldRerouteSignalNets
The shieldRerouteSignalNets parameter specifies whether to
reroute signal nets during shielding. If the value is set to 0, the router
does not reroute signal nets to improve shielding coverage. If the
value is set to 1, the router reroutes signal nets and possibly creates
minimized DRC violations as a tradeoff of improved shielding
coverage. You need to run search and repair after shielding if DRC
violations are created on signal nets.
Chapter 4: Detail Route Parameters
4-170
Syntax
axSetIntParam "droute" "shieldRerouteSignalNets" value
Value
Description
0
The router does not reroute signal nets to improve shielding
coverage (the default).
1
The router reroutes signal nets and possibly creates
minimized DRC violations as a trade-off of improved shielding
coverage.
Example
To enable the router reroute signal nets and possibly create
minimized DRC violations as a trade-off of improved shielding
coverage, enter
axSetIntParam "droute" "shieldRerouteSignalNets" 1
shieldViaMinSpacing
The shieldViaMinSpacing parameter specifies the spacing
requirement on shielded vias. If the value is set to 0, the specified
spacing from the GUI form for shielding wires is used to shield vias.
If the value is set to 1, minimum spacing is used to shield vias to
minimize routing resource usage.
Syntax
axSetIntParam "droute" "shieldViaMinSpacing" value
Value
Description
0
Shields via with specifies spacing same as wires (the
default).
1
Shields via with min-spacing only to minimize overhead.
shieldViaMinSpacing
4-171
Example
To shield vias with minimum spacing only to minimize overhead,
enter
axSetIntParam "droute" "shieldViaMinSpacing" 1
See Also
minShieldLength
shiftVarWidthWire
The shiftVarWidthWire parameter specifies whether wide wires
are to be put on routing tracks, or to be shifted by half pitch if doing
so improves routability. If the value is set to 0, wide wires are placed
on tracks just like regular wires. If the value is set to 1, wide wires
may be shifted by half pitch if doing so blocks less tracks. If the value
is set to 2, the NDR wires are shifted to optimize for minimum space,
maximum space, and metal fill.
Note that this is an experimental feature. The idea behind it is that a
wide wire can block adjacent tracks on both sides. By shifting the
wide wire, fewer tracks might be blocked thereby possibly creating
more usable routing resources.
Syntax
axSetIntParam "droute" "shiftVarWidthWire" value
Value
Description
0
Puts wide wires on routing tracks (the default).
1
Wide wires are shifted by half pitch if necessary to
improve routing.
Chapter 4: Detail Route Parameters
4-172
Value
Description
2
NDR wires are shifted to optimize for minimum space,
maximum space, and metal fill.
Example
To shift wide wires by half pitch if necessary to improve routing, enter
axSetIntParam "droute" "shiftVarWidthWire" 1
smallJogMinLength
The smallJogMinLength parameter specifies the minimum length
of a small jog. If the value is set to 0, the router does consider the
small jog recommended rule. If the value is set to N, the router
reports and fixes the small jog violation if the jog length is less than
(N) times a quarter pitch.
Syntax
axSetIntParam "droute" "smallJogMinLength" value
The valid values of this parameter range between 0 and 2. The
default is 0.
Example
To specify the minimum length of a small jog as 1, enter
axSetIntParam "droute" "smallJogMinLength" 1
srLoop
The srLoop parameter sets the number of search and repair loops
in the search and repair phase in axgSearchRepair command.
smallJogMinLength
4-173
The search and repair loop terminates if DRC violation count
reaches 0 even if the specified number of iterations is not reached.
If the DRC violation number is still converging (reducing) after
reaching specified number of iterations, specifying more iterations
could help further reduce DRC violation count at the cost of more
runtime.
Syntax
axSetIntParam "droute" "srLoop" value
The valid values of this parameter range between 0 and 1000. The
default is 50.
Example
To set the number of search and repair loops as 50 in the search and
repair phase in axgSearchRepair command, enter
axSetIntParam "droute" "srLoop" 50
See Also
autoSrLoop, ecoSrLoop, optSrLoop, areaSrLoop, optDelaySrLoop,
groupSrLoop
stdCellBlockageAsThin
The stdCellBlockageAsThin parameter specifies whether fat
blockages in standard cells are to be treated as fat wires for spacing
calculation. If the value is set to 0, the router treats fat blockages in
standard cells as fat wires. If the value is set to 1, the router treats fat
blockages in standard cells as thin wires.
Chapter 4: Detail Route Parameters
4-174
Note that this flag applies only to blockages in the standard cells, and
it has no effect on macro cell and pad cell blockages. This flag is not
relevant if there is no fat spacing rule in the design.
If blockages directly correspond to wires in standard cell, you should
not set stdCellBlockageAsThin to 1 as it can lead to missed fat
wire spacing violations. If you know that there is no fat wire in
standard cell, and blockages might cover more than wires in the
cells, you can set this flag to avoid unnecessary spacing around fat
blockages.
Note that the blockage types in standard cells might be set by BPV
when the FRAM cells are generated, and
stdCellBlockageAsThin overwrites the value set in standard
cell blockages.
Syntax
axSetIntParam "droute" "stdCellBlockageAsThin" value
Value
Description
0
Treats fat blockages in standard cell as fat wires (the default).
1
Treats fat blockages in standard cell as thin wires.
Example
To treat fat blockages in standard cells as thin wires, enter
axSetIntParam "droute" "stdCellBlockageAsThin" 0
When set to 1, fat blockages are treated as fat wires in standard
cells.
stdCellBlockageAsThin
4-175
See Also
blockageAsFatWire, checkMergedFatWire,
wideMacroPinAsFatWire
stopIfNoLicense
The stopIfNoLicense parameter flags whether to stop the router
or continue if the tool cannot obtain the option license. If the value is
set to 0, the router continues by ignoring certain constraints if the
router fails to get the corresponding option license. If the value is set
to 1, the router will exit if it fails to get the needed option license.
Syntax
axSetIntParam "droute" "stopIfNoLicense" value
Value
Description
0
Continues by ignoring certain constraints if the
router fails to get option license (the default).
1
Exits router if the router fails to get option license.
Example
To ensure that the router exits if it fails to get the needed option
license, enter
axSetIntParam "droute" "stopIfNoLicense" 1
Chapter 4: Detail Route Parameters
4-176
stub2stubOnly
The stub2stubOnly parameter specifies the shapes to which
stubSpacing is applied. If the value is set to 0, stubSpacing
applies to spacing between stub and all other shapes. If the value is
set to 1, stubSpacing applies to spacing between the stubs only.
The stubSpacing is defined in the technology file, which can be
smaller than the normal spacing requirement. By using
stubSpacing, it is possible to pack stubs closer to shapes,
therefore using less routing resources. Because stubs are usually
small, doing so usually does not hurt yield much.
Syntax
axSetIntParam "droute" "stub2stubOnly" value
Value
Description
0
Ensures that stubSpacing applies to spacing
between stub and anything (the default).
1
stubSpacing applies to spacing between stub
and stub only.
Example
To ensure that stubSpacing applies to spacing between stub and
stub only, enter the following:
axSetIntParam "droute" "stub2stubOnly" 1
timeLimit
The timeLimit parameter specifies the corresponding detail
routing step runtime limit.
stub2stubOnly
4-177
If the value is set to -1, no runtime limit is set. Otherwise, the
parameter sets the runtime limits in minutes.
This is a very useful parameter if you have a time limit and do not
care about the final number of DRC violations as much. For
example, you might want to get the feeling of how "routable" a design
is in a given amount of time.
Not all detail routing steps support time limits, such as
axgAutoRoute and axgGlobalRoute. You can check the GUI
form to see which routing steps support time limits.
Syntax
axSetIntParam "droute" "timeLimit" value
The valid values of this parameter range between -1 and 14400. The
default is -1.
Example
To specify the corresponding detail routing step runtime limit as
1000, enter
axSetIntParam "droute" "timeLimit" 1000
timingDriven
The timingDriven parameter specifies whether timing-critical
nets with setup violations are to be optimized during initial detail
routing. If the value is set to 0, timing-critical nets with setup
violations are not optimized. If the value is set to 1, timing-critical nets
with setup violations are optimized.
Chapter 4: Detail Route Parameters
4-178
By setting the value to 1, initial detail routing tries to generate routes
with less resistance and capacitance (shorter wires and fewer vias)
for timing-critical nets.
Syntax
axSetIntParam "droute" "timingDriven" value
Value
Description
0
Regular routing (the default).
1
Optimizes timing-critical (setup
slack) nets.
Example
For regular routing, enter
axSetIntParam "droute" "timingDriven" 1
timingSpace
The timingSpace parameter specifies whether the detailed router
should try to allocate extra same-layer spacing to timing-critical net
wires.
Syntax
axSetIntParam "droute" "timingSpace" value
Value
Description
0
Normal routing (the default).
1
Reduce intra-layer capacitance on
critical nets.
timingSpace
4-179
Example
To reduce intra-layer capacitance on critical nets, enter
axSetIntParam "droute" "timingSpace" 1
topAntennaFixRange
The topAntennaFixRange parameter specifies when to resolve a
top routing layer antenna violation by pushing down top-level wires.
If the value is set to -1, the top layer antenna violation is fixed by
pushing top-layer wires down. If the value is set to N, the top-layer
antenna violation is fixed by pushing top layer wires down if its ratio
is less than safeRatio * (1 + 0.1 * N).
The basic idea is to set a threshold for top metal wires to be pushed
down to resolve top layer antenna violations. If the top layer antenna
ratio is too big compared to safeRatio, try to resolve top-layer
antenna violation by diode insertion instead of pushing down top
layer wires. The bigger the value of N, the more aggressively the
router will push down top layer wires to resolve top-layer antenna
violations.
This parameter is ignored if doAntennaConx is set to 1, 2, or 3
because there could be no antenna problem on the top layer due to
unlimited discharging capability.
Syntax
axSetIntParam "droute" "topAntennaFixRange" value
The valid values of this parameter range between -1 and 10. The
default is -1.
Chapter 4: Detail Route Parameters
4-180
Example
To fix all top-layer antenna violations by pushing wires down, enter
the following:
axSetIntParam "droute" "topAntennaFixRange" -1
See Also
doAntennaConx, checkAntennaOnPG, maxAntennaPinCount,
maxAntennaRatio, outputPinDischarge,
dontMergeGateForAntenna, maxCutAntennaRatio,
breakAntennaToTopPin.
treatTiedFillAsFillToFillSpacing
The treatTiedFillAsFillToFillSpacing parameter
specifies whether fill-to-fill spacing is applied to tied fills. If the value
is set to 0, the router follows fill-to-route spacing for tied fills during
metal fill. If the value is set to 1, the router follows fill-to-fill spacing
for tied fills.
Syntax
axSetIntParam "droute" "treatTiedFillAsFillToFillSpacing"
value
Value
Description
0
Uses fill2-route spacing for existing tied fill during metal fill
(the default).
1
Uses fill2-fill spacing for existing tied fill during metal fill.
treatTiedFillAsFillToFillSpacing
4-181
Example
To use fill2-fill spacing for existing tied fill during metal fill, enter
axSetIntParam "droute" "treatTiedFillAsFillToFillSpacing" 1
trimUserAntenna
The trimUserAntenna parameter determines how user-created
dangling wires are handled.
This is useful for creating a long bus, and the router can trim the
unused part after connecting pins to the bus.
Note that antenna here means dangling wires.
Syntax
axSetIntParam "droute" "trimUserAntenna" value
Value
Description
0
User-created dangling wires are not deleted (the
default).
1
User-created dangling wires (for example,
prerouted bus) are trimmed after search and repair
or route-net group.
Example
To trim user-created dangling wires after search and repair, enter
axSetIntParam "droute" "trimUserAntenna" 1
Chapter 4: Detail Route Parameters
4-182
ultraWideWireMode
The ultraWideWireMode parameter specifies the routing grids
used for ultra wide wire routing. If the value is set to 0, regular routing
grids are used. If the value is set to 1, wide routing grids are used. If
the value is set to a larger value, even wider grids are used.
Setting a large value for ultra wide wires can lead to fast routing time
due to coarser grids for them. This is useful for the flip-chip designs.
Syntax
axSetIntParam "droute" "ultraWideWireMode" value
Value
Description
0
Regular routing (the default).
1
Uses wide grids to route ultra-wide
wires.
2-4
Use even wider grids
Example
To use wide grids to route ultra-wide wires, enter
axSetIntParam "droute" "ultraWideWireMode" 1
useSideWallForAntenna
The useSideWallForAntenna parameter specifies whether the
wire top area or side wall area is used for antenna ratio computation.
If the value is set to 0, the wire top area is used for antenna ratio
computation. If the value is set to 1, the wire side wall is used for
ultraWideWireMode
4-183
antenna ratio computation. If the side wall area is used for antenna
ratio computation, wire thickness is obtained from the technology
file.
Note that this parameter is ignored if doAntennaConx is set to 4,
where the combination rules specify their own parameters.
Syntax
axSetIntParam "droute" "useSideWallForAntenna" value
Value
Description
0
Uses the wire area to compute antenna ratio (the default).
1
Uses the wire side-wall to compute antenna ratio.
Example
To use the wire side-wall to compute antenna ratio, enter
axSetIntParam "droute" "useSideWallForAntenna" 1
See Also
doAntennaConx, checkAntennaOnPG, maxAntennaPinCount,
maxAntennaRatio, outputPinDischarge,
dontMergeGateForAntenna, maxCutAntennaRatio,
breakAntennaToTopPin.
V1NoOffGridRouting
V2NoOffGridRouting
V3NoOffGridRouting
V4NoOffGridRouting
V5NoOffGridRouting
V6NoOffGridRouting
Chapter 4: Detail Route Parameters
4-184
V7NoOffGridRouting
V8NoOffGridRouting
V9NoOffGridRouting
V10NoOffGridRouting
V11NoOffGridRouting
V12NoOffGridRouting
This parameter specifies whether to allow off-grid routing for vias. If
the value is set to 0, the router allows off-grid routing for vias. If the
value is set to 1, the router forces all vias on vias layer on-grid.
Syntax
axSetIntParam "droute" "V1NoOffGridRouting" value
axSetIntParam "droute" "V2NoOffGridRouting" value
axSetIntParam "droute" "V3NoOffGridRouting" value
axSetIntParam "droute" "V4NoOffGridRouting" value
axSetIntParam "droute" "V5NoOffGridRouting" value
axSetIntParam "droute" "V6NoOffGridRouting" value
axSetIntParam "droute" "V7NoOffGridRouting" value
axSetIntParam "droute" "V8NoOffGridRouting" value
axSetIntParam "droute" "V9NoOffGridRouting" value
axSetIntParam "droute" "V10NoOffGridRouting" value
axSetIntParam "droute" "V11NoOffGridRouting" value
Value
Description
0
Enables off-grid routing for the V1
to V11 vias (the default).
1
The off-grid routing is disabled for
these vias.
Example
To disable off-grid routing for V1 to V11 vias, enter
axSetIntParam "droute" "V1NoOffGridRouting" 1
axSetIntParam "droute" "V2NoOffGridRouting" 1
axSetIntParam "droute" "V3NoOffGridRouting" 1
V1NoOffGridRouting V2NoOffGridRouting V3NoOffGridRouting V4NoOffGridRouting V5NoOffGridRouting
4-185
axSetIntParam "droute" "V4NoOffGridRouting" 1
axSetIntParam "droute" "V5NoOffGridRouting" 1
axSetIntParam "droute" "V6NoOffGridRouting" 1
axSetIntParam "droute" "V7NoOffGridRouting" 1
axSetIntParam "droute" "V8NoOffGridRouting" 1
axSetIntParam "droute" "V9NoOffGridRouting" 1
axSetIntParam "droute" "V10NoOffGridRouting" 1
axSetIntParam "droute" "V11NoOffGridRouting" 1
When set to1, the off-grid routing is disabled for these vias.
See Also
noOffGridRouting
varSpacingToSameNet
This parameter specifies whether the variable spacing rule defined
in varRouteRule is to be applied to same net shapes. If the value
is set to 0, default spacing rule is to be applied to same net shapes.
If the value is set to 1, variable spacing rule is to be applied to same
net shapes.
Syntax
axSetIntParam "droute" "varSpacingToSameNet" value
Value
Description
0
The default spacing rules are used for the same net
instead of variable spacing rules (the default).
1
Applies variable spacing rule between shapes of the
same net.
Chapter 4: Detail Route Parameters
4-186
Example
To apply variable spacing rule between shapes of the same net,
enter
axSetIntParam "droute" "varSpacingToSameNet" 1
See Also
ignoreVarSpacingToPG
viaOverMaxLayer
The viaOverMaxLayer parameter specifies the allowed via usage
above the maximum routing layer (maxLayer) set in the top cell. If
the value is set to 0, no via is allowed above maxLayer. Value N
(between 1 and 4) specifies the maximum level of stacked via that
can be used to access pre-wires or pins above maxLayer.
This parameter has no effect if there is no pin or preroute in the
design above maxLayer. The larger the value, the more flexibility
the router has to connect to pins and preroutes above maxLayer.
Syntax
axSetIntParam "droute" "viaOverMaxLayer" value
The valid values of this parameter range between 0 and 4. The
default is 1.
Example
To access pre-wire/pins over maxLayer with one stacked via, enter
axSetIntParam "droute" "viaOverMaxLayer" 1
viaOverMaxLayer
4-187
See Also
hardMaxLayerConx
wideMacroPinAsFatWire
The wideMacroPinAsFatWire parameter specifies how macro
and pad cell pin shapes are treated for fat wire spacing computation.
If the value is set to 0, the pin shape’s original dimension is used for
spacing computation. If the value is set to 1, the pin shape’s depth is
assumed to be at least as much as its width. In other words, if the pin
shape width is fat, the pin shape is treated as fat despite the value of
its depth.
This flag is not relevant if there is no fat spacing rule in the design. If
macro and pad cells are extracted in such a way that a fat wire
shape’s depth can be trimmed to become thin wire, then set this
parameter to 1.
Syntax
axSetIntParam "droute" "wideMacroPinAsFatWire" value
Value
Description
0
Treats the macro/pad pin as is (the default).
1
Assumes wide macro/pad pin has implicit depth same as its
width so it will be treated as fat-wire even its depth is not 'fat'.
Example
To treat the macro/pad pin as is, enter
axSetIntParam "droute" "wideMacroPinAsFatWire" 0
Chapter 4: Detail Route Parameters
4-188
See Also
stdCellBlockageAsThin, blockageAsFatWire, checkMergedFatWire
wideWireToInputPin
The wideWireToInputPin parameter specifies the wires and vias
that are to be used to connect to input pins. If the value is set to 0,
default wires and vias can be used to connect input pins, depending
on the DRC violation. If the value is set to 1, wide wires and vias from
varRouteRule must be used to connect input pins. If a net does not
have varRouteRule defined for it, the default rule is used for the
net.
Syntax
axSetIntParam "droute" "wideWireToInputPin" value
Value
Description
0
Default wire/via can be also used
to connect input pins (the default).
1
Only wide wire/via can be used.
Example
To use wide wire or via, enter the following:
axSetIntParam "droute" "wideWireToInputPin" 1
When set to 0, the default wire/via can be also used to connect input
pins.
wideWireToInputPin
4-189
See Also
wideWireToMacroPin, wideWireToOutputPin, wideWireToPadPin,
wideWireToTopPin
wideWireToMacroPin
The wideWireToMacroPin parameter specifies the wires and vias
to be used to connect to macro cell pins. If the value is set to 0,
default wires and vias can be used to connect macro cell pins,
depending on the DRC violation. If the value is set to 1, wide wires
and vias from varRouteRule must be used to connect macro cell
pins. If a net does not have varRouteRule defined for it, the default
rule is used for the net.
Syntax
axSetIntParam "droute" "wideWireToMacroPin" value
Value
Description
0
Default wire/via can be also used to connect pins of the
macro cells, pads, and top cells (the default).
1
Uses wide wire or via.
Example
To use wide wire or via, enter
axSetIntParam "droute" "wideWireToMacroPin" 1
When set to 0, default wire or via can be also used to connect pins
of the macro cells.
Chapter 4: Detail Route Parameters
4-190
See Also
wideWireToInputPin, wideWireToOutputPin, wideWireToPadPin,
wideWireToTopPin
wideWireToOutputPin
The wideWireToOutputPin parameter specifies the wires and
vias to be used to connect to output pins. If the value is set to 0,
default wires and vias can be used to connect output pins,
depending on the DRC violation. If the value is set to 1, wide wires
and vias from varRouteRule must be used to connect output pins.
If a net does not have varRouteRule defined for it, the default rule
is used for the net.
Syntax
axSetIntParam "droute" "wideWireToOutputPin" value
Value
Description
0
Default wire/via can be also used to connect output pins
(the default).
1
Uses wide wire or via.
Example
To use wide wire or via, enter
axSetIntParam "droute" "wideWireToOutputPin" 1
When set to 0, default wire/via can be also used to connect output
pins.
wideWireToOutputPin
4-191
See Also
wideWireToInputPin, wideWireToMacroPin, wideWireToPadPin,
wideWireToTopPin
wideWireToPadPin
The wideWireToPadPin parameter specifies the wires and vias to
be used to connect to pad cell pins. If the value is set to -1, wires and
vias to pad cell pins connection are controlled by the
wideWireToMacroPin parameter. If the value is set to 0, default
wires and vias can be used to connect pad cell pins, depending on
the DRC violation. If the value is set to 1, wide wires and vias from
varRouteRule must be used to connect pad cell pins. If a net does
not have varRouteRule defined for it, default rule is used for the
net.
Syntax
axSetIntParam "droute" "wideWireToPadPin" value
Table 4-3
Valid Values of the wideWireToPadPin Parameter
Value
Description
-1
Value is controlled by wideWireToMacroPin (the default)
0
Default wire/via can be also used to connect pins of pad
cells
1
Only wide wire/via can be used
Example
To ensure that value is controlled by wideWireToMacroPin, enter
axSetIntParam "droute" "wideWireToPadPin" -1
Chapter 4: Detail Route Parameters
4-192
See Also
wideWireToInputPin, wideWireToMacroPin, wideWireToOutputPin,
wideWireToTopPin
wideWireToTopPin
The wideWireToTopPin parameter specifies the wires and vias to
be used to connect to top cell pins. If the value is set to -1, wires and
vias to top cell pin connection are controlled by the
wideWireToMacroPin parameter. If the value is set to 0, default
wires and vias can be used to connect top cell pins, depending on
the DRC violation. If the value is set to 1, wide wires and vias from
varRouteRule must be used to connect top cell pins. If a net does
not have varRouteRule defined for it, the default rule is used for
the net.
Syntax
axSetIntParam "droute" "wideWireToTopPin" value
The valid values of this parameter range between -1 and 1. The
default is -1.
Value
Description
-1
Value is controlled by wideWireToMacroPin (the default)
0
Default wire/via can be also used to connect pins of top cells
1
Only wide wire/via can be used
Example
To use wide wire or via, enter
axSetIntParam "droute" "wideWireToTopPin" 1
wideWireToTopPin
4-193
See Also
wideWireToInputPin, wideWireToMacroPin, wideWireToPadPin,
wideWireToOutputPin
wideWireWidthAsMin
The wideWireWidthAsMin parameter specifies how to handle
wide-wire width rule with varRouteRule if it is specified for a net. If
the value is set to 0, the default minimum width specified in
technology file is used to check for the wire width requirement. If the
value is set to 1, width requirement in varRouteRule is used to
check for width, including places such as wide-wire turns and pin
connections.
Syntax
axSetIntParam "droute" "wideWireWidthAsMin" value
Value
Description
0
Minimum width from technology file is used (the
default).
1
Ensures the width of all wide-wire turn and pin
connections meet the wire width, not just minimum
width from the technology file.
Example
To ensure that the width of all wide-wire turn and pin connections
meet the wire width, enter
axSetIntParam "droute" "wideWireWidthAsMin" 1
When set to 0, the minimum width from the technology file is used.
Chapter 4: Detail Route Parameters
4-194
wireWidenForceWrongWay
The wireWidenForceWrongWay parameter specifies whether to
force widened wrong-way wires. If the value is set to 0, the router
does not force widened wrong-way wires. If the values is set to 1, the
router forces widened wrong-way wires to improve coverage of
widened wires.
Syntax
axSetIntParam "droute" "wireWidenForceWrongWay" value
Value
Description
0
Does not force widen wrong way wires (the default).
1
Force widen wrong way wires.
Example
To force widening wrong way wires, enter
axSetIntParam "droute" "wireWidenForceWrongWay" 1
See Also
wireWidenIgnoreMinEdgeLengthVio, wireWidenPieceWise,
wireWidenSrLoop, wireWidenTimingDriven,
wireWidenWidthScheme
wireWidenForceWrongWay
4-195
wireWidenIgnoreMinEdgeLengthVio
The wireWidenIgnoreMinEdgeLengthVio parameter specifies
whether to ignore the minimum edge length rule during wire
widening. If the value is set to 0, the router checks all DRC violations
during wire widening. If the value is set to 1, the router does not
check the minimum edge length violation during wire widening.
Syntax
axSetIntParam "droute" "wireWidenIgnoreMinEdgeLengthVio"
value
Value
Description
0
Uses try mode to detect DRC violation when widening wire.
Checks all DRC violation types (the default).
1
Closes minimum edge length DRC violation checking in try
mode.
Example
To close minimum edge length DRC violation checking in try mode,
enter
axSetIntParam "droute" "wireWidenIgnoreMinEdgeLengthVio" 1
See Also
wireWidenForceWrongWay, wireWidenPieceWise,
wireWidenSrLoop, wireWidenTimingDriven,
wireWidenWidthScheme
Chapter 4: Detail Route Parameters
4-196
wireWidenPieceWise
The wireWidenPieceWise parameter specifies whether to widen
a wire segment uniformly or to widen it piece by piece. If the value is
set to 0, the router will widen a wire segment uniformly. If the value
is set to 1, the router first breaks a wire into several pieces according
to its neighboring routing objects, then tries to widen each piece with
different width. This nonuniform widening can improve coverage of
widened wires.
Syntax
axSetIntParam "droute" "wireWidenPieceWise" value
Value
Description
0
Uniformly widens a wire (the default).
1
Breaks a wire according to its neighboring routing
objects. Then it tries to widen each segment with
different width.
Example
To break a wire according to its neighboring routing objects and then
widen each segment with different width, enter
axSetIntParam "droute" "wireWidenPieceWise" 1
See Also
wireWidenIgnoreMinEdgeLengthVio, wireWidenForceWrongWay,
wireWidenSrLoop, wireWidenTimingDriven,
wireWidenWidthScheme
wireWidenPieceWise
4-197
wireWidenSrLoop
The wireWidenSrLoop parameter specifies the number of search
and repair loops after wire widening. If the value is set to N, the router
runs N loops of search and repair after wire widening to fix DRC
violations created during wire widening.
Syntax
axSetIntParam "droute" "wireWidenSrLoop" value
The valid values of this parameter range between 0 and 100. The
default is 10.
Example
To specify 20 search and repair loops after wire widening, enter
axSetIntParam "droute" "wireWidenSrLoop" 20
See Also
wireWidenIgnoreMinEdgeLengthVio, wireWidenForceWrongWay,
wireWidenPieceWise, wireWidenTimingDriven,
wireWidenWidthScheme
wireWidenTimingDriven
The wireWidenTimingDriven parameter specifies whether to
widen wires on timing-critical nets. If the value is set to 0, the router
does wire widening on all signal wires. If the value is set to 1, the
router does not widen wires on timing-critical nets.
Chapter 4: Detail Route Parameters
4-198
Syntax
axSetIntParam "droute" "wireWidenTimingDriven" value
Value
Description
0
Does wire widening on all signal wires (the default).
1
Freezes timing-critical nets when wire widening.
Example
To enable the router to freeze timing-critical nets while widening
wires, enter
axSetIntParam "droute" "wireWidenTimingDriven" 1
See Also
wireWidenIgnoreMinEdgeLengthVio, wireWidenForceWrongWay,
wireWidenPieceWise, wireWidenSrLoop, wireWidenWidthScheme
wireWidenWidthScheme
The wireWidenWidthScheme parameter specifies how many
different widths are used for wire widening. If the value is set to N,
the router tries N different widths during wire widening.
Syntax
axSetIntParam "droute" "wireWidenWidthScheme" value
The valid values of this parameter ranges between 1 and 5. The
default is 2.
wireWidenWidthScheme
4-199
Example
To specify four different widths during wire widening, enter
axSetIntParam "droute" "wireWidenWidthScheme" 4
See Also
wireWidenIgnoreMinEdgeLengthVio, wireWidenForceWrongWay,
wireWidenPieceWise, wireWidenSrLoop, wireWidenTimingDriven
wrongWayExtraCost
The wrongWayExtraCost parameter specifies extra wrong-way
wire cost. The default wrong-way unit distance cost is 2 (versus
default right-way unit distance cost of 1).
If the value is set to 0, no extra wrong-way cost is added. Otherwise,
if the value is set to N, the wrong-way unit distance cost is 2 + N.
Therefore, if the value is set to 2, the wrong-way cost is four times
the right-way unit distance cost.
This parameter can be used to further discourage wrong-way
direction routing. It can be especially useful if you observe excessive
wrong-way direction routing during the route net group
command, where most nets are not routed yet.
Syntax
axSetIntParam "droute" "wrongWayExtraCost" value
The valid values of this parameter range between 0 and 100. The
default is 0.
Chapter 4: Detail Route Parameters
4-200
Example
To specify extra wrong-way wire cost as 40, enter
axSetIntParam "droute" "wrongWayExtraCost" 40
wrongWayNoVia
The wrongWayNoVia parameter specifies whether contacts can be
used to connect to wrong way wires. If the value is set to 0, contacts
can be used to connect to wrong way wires. If the value is set to 1,
contacts cannot be used to connect to wrong-way wires.
This parameter is normally used to avoid creating T-shaped
connection to meet certain end-of-line rules.
Syntax
axSetIntParam "droute" "wrongWayNoVia" value
Value
Description
0
Contact can be used freely. (the default).
1
Does not drop contact to wrong-way routing
wires, normally used to avoid creating T-shape
connection when cross contacts are used.
Example
To use the contact freely for connecting wires, enter
axSetIntParam "droute" "wrongWayNoVia" 0
When set to 1, the contact to wrong-way routing wires is not dropped.
wrongWayNoVia
4-201
Chapter 4: Detail Route Parameters
4-202
5
Global Route Parameters
5
You use the global route parameters to fine-tune the global routing
process. Global routing maps general pathways through the design
for each unrouted net (signal nets and clock nets). The global router
uses a two-dimensional array of global routing cells to model the
demand and capacity of global routing.
Table 5-1 summarizes the global route parameters specific to Astro.
Detailed descriptions of the parameters follow in alphabetical order
Table 5-1
Global Route Parameters Summary
Parameter
Description
accessPolyPin
Specifies whether poly pins can be used
during global routing for connections.
avoidCouplingUser
Enables the global router to space nets
during routing.
avoidXtalk
Turns on or off crosstalk prevention during
global routing.
5-1
Table 5-1
Global Route Parameters Summary (Continued)
Parameter
Description
blncdToSkewCntrlRatio
Sets a threshold for skew control mode,
based on net aspect ratio.
blockEdgeAccess
Enables the global router to access pins on
edges of hard macros.
brokenNetsThresholdPercent
Specifies whether incremental global
routing should be performed.
clockBalanced
Turns on or off balanced routing over clock
nets.
clockComb
Enables the global router to connect ports
directly to the prerouted clock trunks to
minimize clock skew.
combDistance
Sets a distance threshold for clock routing
to connect clock pins directly to clock nets.
combMaxConnections
Controls the number of direct connections
allowed to the clock pins from the same
clock trunk.
compactMode
Determines the size of gcell used for global
routing.
congestionWeight
Controls the effort to balance routing
congestion relative to wire length.
densityDriven
Turns on or off density-driven global
routing.
detourLimitMinNetLen
Controls the way the global router
implements maxDetourPercent on nets.
extraCostsApplyPercent
Applies the wireCost and viaCost
settings on the top n percent of nets in the
design.
extraWireLengthOpt
Tells the global router to run an additional
rerouting phase to reduce wire length on
nets that have no congestion.
Chapter 5: Global Route Parameters
5-2
Table 5-1
Global Route Parameters Summary (Continued)
Parameter
Description
forceUpperLayersForCritNets
Specifies the mode for upper layers usage.
horReserveTracks
Determines the number of horizontal free
tracks reserved in each gcell.
ignoreViaBlockage
Specifies whether to honor a via blockage.
incremental
Controls whether the global router runs
incrementally.
macroBndryDir
Controls the use of macroBndryTrkUtil
differently for layers in different directions.
macroBndryExt
Defines the area in which the global router
obeys macroCornerTrkUtil and
macroBndryTrkUtil.
macroBndryTrkUtil
Sets the percentage of tracks available in
the gcells near a macro boundary.
macroBndryWidth
Defines the distance from the corners of the
macros.
macroCornerTrkUtil
Sets the percentage of tracks available in
the gcells near a macro corner.
mapOnly
Specifies whether the router generates a
congestion map based on global routing
without creating the global wires.
maxDetourPercent
Directs the global router to have no more
than the specified percentage of detours on
any net.
netCriticality
Determines the order in which the global
router routes the nets during initial route.
noTopLevelBusFeedThroughs
Specifies whether to allow feedthroughs on
bus signals.
paEqPinNetMaxPort
Creates equivalent pins for nets with no
more than n ports.
5-3
Table 5-1
Global Route Parameters Summary (Continued)
Parameter
Description
powerDriven
Turns on or off power-driven global routing.
rcOptByLength
Controls the choice of layers for the global
router to reduce RC.
reportDemandOnly
Specifies whether to report demand only.
reportEffectiveOverflow
Specifies whether to generate an effective
overflow report.
reportGCellDensity
Specifies whether to report gcell density for
each layer.
reportNetOrdering
Specifies the number of nets to report,
according to the routing order.
reserveTracksForPowerFile
Defines the percentage of routing tracks on
each layer reserved for power routing.
skewControl
Turns on or off skew control during global
routing.
skewControlNetBBLowBound
Determines the nets considered for skew
control during global routing.
skewControlWeight
Determines the importance given to skew
control on the net during global routing.
speed
Specifies the effort at which the global
router should run.
timingDriven
Turns on or off timing-driven global routing.
timingWeight
Sets the weight given to timing relative to
wire length during global routing.
turboMode
Improves runtime.
VABoundaryToLSWeight
Specifies the value to adjust the cost for
level-shifter connection when switching
from one voltage area to another.
Chapter 5: Global Route Parameters
5-4
Table 5-1
Global Route Parameters Summary (Continued)
Parameter
Description
verReserveTracks
Determines the number of vertical free
tracks reserved in each gcell.
xtalkWeight
Defines the weight given to crosstalk
prevention during global routing.
5-5
accessPolyPin
The accessPolyPin parameter specifies whether poly pins can be
used during global routing for connections. If the value is set to 1, the
router can route to poly pins. If the value is set to 0, the router cannot
use poly pins. This parameter has no effect if the current design does
not contain poly pins, as is the case in most designs.
Usage
To access poly pins, enter the following:
axSetIntParam "groute" "accessPolyPin" 1
When set to 0, the poly pins cannot be accessed.
Range
The valid values are 0 or 1. The default is 1.
Note:
This is the only global route parameter that is saved into the
Milkyway CEL view. It is persistent across different sessions.
avoidCouplingUser
The avoidCouplingUser parameter enables the global router to
space nets during routing. The nets to be considered need to be set
with the Set Net Constraints command. If this parameter is set to 1,
timing spacing will be honored.
Chapter 5: Global Route Parameters
5-6
Usage
To turn on coupling avoidance on user selected nets, enter the
following:
axSetIntParam "groute" "avoidCouplingUser" 1
When set to 0, coupling avoidance is turned off on user selected
nets.
Range
The valid values are 0 or 1. The default is 0.
avoidXtalk
The avoidXtalk parameter turns on/disables crosstalk prevention
during global routing. If this parameter is set to 1, the global router
tries to avoid assigning nets with coupling to the same gcell.
Usage
To turn on the crosstalk avoidance, enter the following:
axSetIntParam "groute" "avoidXtalk" 1
When set to 0, crosstalk avoidance is turned off.
Range
The valid values are 0 or 1. The default is 0.
avoidXtalk
5-7
blncdToSkewCntrlRatio
The blncdToSkewCntrlRatio parameter sets a threshold for
turning on the balanced skew control mode. For nets with an aspect
ratio smaller than the parameter value, balanced skew control mode
is enabled. The aspect ratio is calculated based on the bounding box
formed by enclosing the pins.
Usage
To set the aspect-ratio threshold for balanced mode skew control,
use the following syntax:
axSetIntParam "groute" "blncdToSkewCntrlRatio" 3
Range
The valid values of this parameter range between 0 and 100. The
default is 3.
blockEdgeAccess
The blockEdgeAccess parameter allows the global router to
access pins on edges of hard macros. By default, the global router
reaches pins on edges of hard macros. When the parameter is set to
1, it allows the global router is allowed to access or drop vias on
whole macro pins without edges limitation.
Usage
To turn on only macro block edge access, enter the following:
axSetIntParam "groute" "blockEdgeAccess" 1
When set to 0, macro block edge access is turned off.
Chapter 5: Global Route Parameters
5-8
Range
The valid values are 0 or 1. The default is 1.
brokenNetsThresholdPercent
The brokenNetsThresholdPercent parameter specifies a
threshold for incremental global routing to be performed. This is
effective when incremental is set to 1.
Usage
To specify the maximum broken nets for incremental global route,
enter the following:
axSetIntParam "groute" "brokenNetsThresholdPercent" -1
Range
The valid values of this parameter range between -1 and 100. The
default is -1.
clockBalanced
The clockBalanced parameter turns balanced routing on clock
nets on and off.
Usage
To turn on balanced routing for clock tree synthesized nets, enter the
following:
axSetIntParam "groute" "clockBalanced" 1
brokenNetsThresholdPercent
5-9
When set to 0, balanced routing is turned off for clock tree
synthesized nets.
Range
The valid values are 0 or 1. The default is 0.
clockComb
The clockComb parameter enables the global router to connect
ports directly to the prerouted clock trunks to minimize clock skew.
Be aware that this requires greater routing resources, if the clock
pins are not close to the clock trunks.
The Comb mode works on designs with pre-existing clock nets.
Usage
To turn on comb routing for clock nets with mesh or trunk, enter the
following:
axSetIntParam "groute" "clockComb" 1
When set to 0, comb routing for clock nets with mesh or trunk is
turned off.
Range
The valid values are 0 or 1. The default is 0.
combDistance
The combDistance parameter sets a distance threshold, in gcell
units, for clock routing to connect clock pins directly to clock nets.
Chapter 5: Global Route Parameters
5-10
Usage
To set the threshold for connecting clock pins directly to clock nets,
use the following syntax:
axSetIntParam "groute" "combDistance" 2
Range
The valid values of this parameter range between 0 and 50. The
default is 2.
combMaxConnections
The combMaxConnections parameter limits the number of direct
connections allowed to the clock pins from the same clock trunk. The
default value of -1 allows a clock net to be connected to any number
of clock pins.
Usage
To specify the maximum number of pin connections to any clock
strap, use the following syntax:
axSetIntParam "groute" "combMaxConnections" -1
Range
The valid values of this parameter range between -1 and 1000. The
default is -1.
combMaxConnections
5-11
compactMode
The compactMode parameter determines the size of gcell used for
global routing. If it is set to 0, gcells of 1 cellrow height will be created.
If it is set to 1, the global router automatically adjusts the global route
cell size.
Increasing the size of gcell will complete the global routing faster at
the cost of quality as routing becomes coarser.
Usage
To specify the mode to adjust gcell size, enter the following:
axSetIntParam "groute" "compactMode" 1
Range
The valid values of this parameter range between -1 and 10. The
default is 1.
congestionWeight
The congestionWeight parameter specifies the relative
importance of routing congestion versus wire length. As the
parameter value increases, the router tries harder to avoid routing
congestion at the cost of increased wire length.
Usage
To balance routing congestion relative to the wire length, use the
following syntax:
axSetIntParam "groute" "congestionWeight" 4
Chapter 5: Global Route Parameters
5-12
Range
The valid values of this parameter range between 1 and 12. The
default is 4.
densityDriven
The densityDriven parameter turns density-driven global routing
on or off. In the default mode, the router decides the weight given to
density relative to wire length during global routing. If timing driven
or crosstalk is turned on, global route turns on the densityDriven
automatically.
Usage
To turn on the density-driven mode, enter the following:
axSetIntParam "groute" "densityDriven" 1
Range
The valid values of this parameter range between -1 and 2. The
default is -1.
Table 5-2 lists the valid values of this parameter and their effect.
Table 5-2
Valid Values of the densityDriven Parameter
Value
Description
-1
Program decides whether density-driven mode should be used
0
Turn off the density-driven mode
1
Turn on the density-driven mode
2
Turn on high effort density-driven mode
densityDriven
5-13
detourLimitMinNetLen
The detourLimitMinNetLen parameter controls the way the
global router implements maxDetourPercent on nets. If the value
is set to 0, the router forces maxDetourPercent on all nets. If the
value is set to n, maxDetourPercent is applied only to nets of
length greater than n gcells.
Usage
To apply maxDetourPercent to all nets, enter the following:
axSetIntParam "groute" "detourLimitMinNetLen" 0
Range
The valid values of this parameter range between 0 and 1000000.
The default is 0.
extraCostsApplyPercent
The extraCostsApplyPercent parameter applies the
wireCost and viaCost settings to the top n percent of nets in the
design. The wireCost and viaCost parameters are route
parameters. The route extra cost applies to global routing, track
assignment and detail routing. This parameter applies the extra cost
percentage only for global route.
Usage
To specify extra cost apply percentage on a wire and via, use the
following syntax:
axSetIntParam "groute" "extraCostsApplyPercent" 50
Chapter 5: Global Route Parameters
5-14
Range
The valid values of this parameter range between 0 and 100. The
default is 50.
extraWireLengthOpt
The extraWireLengthOpt parameter instructs the global router to
run an additional rerouting phase to reduce wire length on nets that
have no congestion. It does not perform any optimization.
Usage
To run an extra pass for optimizing the wire length, enter the
following:
axSetIntParam "groute" "extraWireLengthOpt" 1
When set to 0, no extra pass is performed to optimize wire length.
Range
The valid values are 0 or 1. The default is 0.
forceUpperLayersForCritNets
The forceUpperLayersForCritNets parameter specifies the
mode for upper layers usage. To improve timing, Astro will route
timing-critical nets on upper layers that have lower RC.
extraWireLengthOpt
5-15
Usage
To specify the mode for upper layers usage on critical nets, enter the
following:
axSetIntParam "groute" "forceUpperLayersForCritNets" 1
Range
The valid values are 0 or 1. The default is 0.
horReserveTracks
The horReserveTracks parameter determines the number of
horizontal free tracks reserved in each gcell.
Usage
To specify the number of horizontal free tracks reserved in each
gcell, use the following syntax:
axSetIntParam "groute" "horReserveTracks" 2
Range
The valid values of this parameter range between 0 and 20. The
default is 2.
ignoreViaBlockage
The ignoreViaBlockage parameter specifies the mode to honor
a via blockage. By default, global route ignores via blockage.
Chapter 5: Global Route Parameters
5-16
Usage
To ignore via blockage, enter the following:
axSetIntParam "groute" "ignoreViaBlockage" 1
When set to 0, via blockages are honored.
Range
The valid values are 0 or1. The default is 1.
incremental
The incremental parameter controls whether global router runs
incrementally.
Usage
To specify the global route incremental mode, enter the following:
axSetIntParam "groute" "incremental" 1
Range
The valid values of this parameter range between 0 and 2. The
default is 0.
Table 5-3 provides the list of valid values of this parameter and their
description.
Table 5-3
Valid Values of the incremental Parameter
Value
Description
0
No incremental global routing
1
Performs incremental routing
incremental
5-17
Table 5-3
Valid Values of the incremental Parameter
Value
Description
2
Route only broken nets
macroBndryDir
The macroBndryDir parameter controls the use of
macroBndryTrkUtil for layers in different directions. If the value
is set to 1, macroBndryTrkUtil will be applied to layers in both
directions.
Usage
To apply macroBndryTrkUtil to the layers in both directions,
enter the following:
axSetIntParam "groute" "macroBndryDir" 1
If the value is set to 0, only the horizontal layers will have
macroBndryTrkUtil applied at top and bottom sides and only the
vertical layers will have macroBndryTrkUtil applied at the left
and right sides.
Range
The valid values are 0 or 1. The default is 0.
Chapter 5: Global Route Parameters
5-18
macroBndryExt
The macroBndryExt parameter along with the
macroBndryWidth defines the area in which the global router
obeys macroCornerTrkUtil and macroBndryTrkUtil. By
default, one row or column of gcells is included in the macro
boundary.
This value basically forms the width of the area, where length is
defined by macroBndryWidth.
Usage
To define the area in which the global router obeys
macroCornerTrkUtil and macroBndryTrkUtil, use the
following syntax:
axSetIntParam "groute" "macroBndryExt" -1
Range
The valid values of this parameter range between -5 and 20. The
default is -1.
macroBndryTrkUtil
The macroBndryTrkUtil parameter limits the utilization of tracks
available in the gcells near a macro boundary to a specified
percentage. This parameter is used to control the accessibility of
pins and congestion at the macro boundaries. By default, the router
uses 100 percent of available tracks in the macro boundary width.
macroBndryExt
5-19
Usage
To set the percent usage of tracks available in the gcells near the
macro boundary, use the following syntax:
axSetIntParam "groute" "macroBndryTrkUtil" 100
Range
The valid values of this parameter range between 0 and 100. The
default is 100.
macroBndryWidth
The macroBndryWidth parameter specifies a distance from the
corners of macros. Within this distance, the global router obeys the
limits on track utilization specified by macroCornerTrkUtil and
macroBndryTrkUtil. By default, one row or column of gcells is
considered from the corners of the macro.
Usage
To specify the distance from the corners of the macros within which
limits on track utilization apply, use the following syntax:
axSetIntParam "groute" "macroBndryWidth" 1
Range
The valid values of this parameter range between -1 and 20. The
default is 1.
Chapter 5: Global Route Parameters
5-20
macroCornerTrkUtil
The macroCornerTrkUtil parameter limits the utilization of
tracks available in the gcells near a macro corner to a specified
percentage. This parameter is used to control the accessibility of
pins and congestion at the macro corners. By default, the router uses
100 percent of available tracks in the macro boundary width.
Usage
To set the percent usage of tracks available in the gcells near the
macro corner, use the following syntax:
axSetIntParam "groute" "macroCornerTrkUtil" 100
Range
The valid values of this parameter range between 0 and 100. The
default is 100.
mapOnly
The mapOnly parameter specifies whether the router generates the
congestion map based on global routing without creating the global
wires.
Usage
To generate the congestion map and the glinks, enter the following:
axSetIntParam "groute" "mapOnly" 0
When set to 1, the router will not generate the glinks.
macroCornerTrkUtil
5-21
Range
The valid values are 0 or 1. The default is 0.
maxDetourPercent
The maxDetourPercent parameter directs the global router to
have no more than the specified percentage of detours on any net.
If the value is set to -1, the router is free to make any number of
detours (or none).
Usage
To direct the global router to have no more than the specified
percentage of detours on any net, use the following syntax:
axSetIntParam "groute" "maxDetourPercent" -1
Range
The valid values of this parameter range between -1 and 1000. The
default is -1.
netCriticality
The netCriticality parameter determines the order in which the
global router routes the nets during initial route. Net criticality can be
set on nets in the design by using the Scheme function
dbSetNetCriticality.
If this parameter is set to 1, the global router first routes the nets with
higher criticality value. If the value is set to 0, net criticality has no
effect on routing order. However, net criticality always has an effect
on the congestion cost.
Chapter 5: Global Route Parameters
5-22
Usage
To turn on the net-criticality mode, enter the following:
axSetIntParam "groute" "netCriticality" 1
When set to 0, the net-criticality mode is turned off.
Range
The valid values are 0 or 1. The default is 1.
noTopLevelBusFeedThroughs
The noTopLevelBusFeedThroughs parameter determines
whether feedthroughs are allowed on bus signals.
Usage
To allow feedthroughs on bus signals during pin assignment, enter
the following:
axSetIntParam "groute" "noTopLevelBusFeedThroughs" 1
When set to 0, feedthroughs are not allowed on bus signals during
pin assignment.
Range
The default values are 0 or 1. The default is 0.
noTopLevelBusFeedThroughs
5-23
paEqPinNetMaxPort
Setting the paEqPinNetMaxPort parameter to 1 creates
equivalent pins for nets with no more than n ports.
Usage
To specify the number of ports on nets, use the following syntax:
axSetIntParam "groute" "paEqPinNetMaxPort" 20
Range
The valid values of this parameter range between 0 and 1000. The
default is 20.
powerDriven
The powerDriven parameter turns power-driven global routing on
or off.
Usage
To turn on the power-driven mode, enter the following:
axSetIntParam "groute" "powerDriven" 1
When set to 0, the power-driven mode is turned off.
Range
The valid values are 0 or 1. The default is 0.
Chapter 5: Global Route Parameters
5-24
rcOptByLength
The rcOptByLength parameter controls the choice of layers for
global router to reduce RC. The global router chooses layers with
lower RC values based on the value of this parameter.
Usage
To turn on RC-based layer bias mode, enter the following:
axSetIntParam "groute" "rcOptByLength" 1
Range
The valid values of this parameter range between 0 and 2. The
default is 1.
Table 5-4 lists the valid values of this parameter and their effect.
Table 5-4
Valid Values of the rcOptbyLength Parameter
Value
Description
0
Turn off RC-based layer bias mode
1
Turn on RC-based layer bias mode
2
Turn on RC-based layer bias mode (strong)
reportDemandOnly
The reportDemandOnly parameter specifies the mode to report
demand only. In this mode, Astro performs virtual route only, with no
reroute phases. In the log file, it reports average gcell capacity per
layer.
rcOptByLength
5-25
Usage
To report demand, enter the following:
axSetIntParam "groute" "reportDemandOnly" 0
Range
The valid values are 0 or 1. The default is 0.
reportEffectiveOverflow
The reportEffectiveOverflow parameter specifies the mode
for generating an effective overflow report.
Usage
To report effective overflow, enter the following:
axSetIntParam "groute" "reportEffectiveOverflow" 1
When set to 0, effective overflow is not reported.
Range
The valid values are 0 or 1. The default is 0.
reportGCellDensity
The reportGCellDensity parameter controls reporting of gcell
density for each layer. In density-driven mode, the router generates
a report of gcell density. However, this parameter is independent of
the density-driven switch.
Chapter 5: Global Route Parameters
5-26
Usage
To specify the mode to generate a gcell density report, enter the
following:
axSetIntParam "groute" "reportGCellDensity" 1
When set to 0, gcell density is not reported.
Range
The valid values are 0 or 1. The default is 0.
reportNetOrdering
The reportNetOrdering parameter specifies the number of nets
to be reported according to the routing order. By default, the global
router does not report on net ordering. If this parameter is set to n,
global route will report the first n nets in the order of routing.
Usage
To turn off report net ordering, enter the following:
axSetIntParam "groute" "reportNetOrdering" -1
When set to 0, net ordering is reported for the first 100 nets.
Range
The valid values of this parameter range between -1 and 1000. The
default is -1.
reportNetOrdering
5-27
reserveTracksForPowerFile
The file indicated by the reserveTracksForPowerFile
parameter is used to define the percentage of routing tracks on each
layer that are reserved for power routing. For example,
reserveTracksForPowerFile = "reservedTracks.rc"
Suppose the reservedTracks.rc file defines METAL1 layer as
20. Then, the router reserves 20 percent of available routing tracks
in METAL1 for power routing later. Therefore, global route uses only
80 percent of the routing tracks.
skewControl
The skewControl parameter turns skew control on or off during
global routing. If the value is set to 1, the global router tries to
minimize the gross delay in net skew. Skew control applies to all
signal nets (except for small nets) but skew control for clock nets
occurs only when clockBalanced is set to 1.
Usage
To turn on skew control pattern routing, enter the following:
axSetIntParam "groute" "skewControl" 1
When set to 0, the skew control pattern routing is turned off.
Range
The valid values are 0 or 1. The default is 0.
Chapter 5: Global Route Parameters
5-28
skewControlNetBBLowBound
The skewControlNetBBLowBound parameter determines which
nets are considered for skew control during global routing. The
choice is made based on the size of the net measured in number of
gcells. Only nets with size greater than the specified value will be
considered for skew control.
Usage
To specify the minimum size (in gcells) for nets to be subject to skew
control, use the following syntax:
axSetIntParam "groute" "skewControlNetBBLowBound" 5
Range
The valid values of this parameter range between 1 and 100. The
default is 5.
skewControlWeight
The skewControlWeight parameter determines the importance
given to skew control on the net during global routing. You can set
the skew control weight from 1 to 10 based on net criticality.
Usage
To specify the weight of skew control, enter the following:
axSetIntParam "groute" "skewControlWeight" 5
Range
The valid values of this parameter range between 0 and 10. The
default is 5.
skewControlNetBBLowBound
5-29
speed
The speed parameter specifies the effort at which the global router
should run. The global router runs a different number of phases,
depending on the specified value. It is recommended you run the
router in default mode.
Usage
To perform global routing in the medium-effort mode, enter the
following:
axSetIntParam "groute" "speed" 2
Range
The valid values of this parameter range between 0 and 3. The
default is 2.
Table 5-5 lists the default values of this parameter and their effect.
Table 5-5
Valid Values of the speed Parameter
Value
Description
0
Router performs initial global routing only
1
Router performs initial global routing and one rerouting phase
2
Router performs initial global routing and four rerouting phases
3
Router performs initial global routing and eight rerouting phases
Chapter 5: Global Route Parameters
5-30
timingDriven
The timingDriven parameter turns timing-driven global routing on
or off. The timingWeight parameter controls the trade-off between
timing and wire length during global routing. By default, timing-driven
mode is turned off.
Usage
To turn on timing-driven mode, enter the following:
axSetIntParam "groute" "timingDriven" 1
When set to 0, timing-driven mode is turned off.
Range
The valid values are 0 or 1. The default is 0.
timingWeight
The timingWeight parameter sets the weight given to the timing
relative to wire length during global routing. This parameter is
effective only in timing-driven mode.
Usage
To set the timing weight to 4, enter the following:
axSetIntParam "groute" "timingWeight" 4
Range
The valid values of this parameter range between 1 and 7. The
default is 4.
timingDriven
5-31
turboMode
The turboMode parameter is used to improve runtime.
Usage
To turn on turbo mode, enter the following:
axSetIntParam "groute" "turboMode" 1
Range
The valid values of this parameter range between 0 and 3. The
default is 1.
Table 5-6 lists the values of this parameter and their effect.
Table 5-6
Valid Values of the turboMode Parameter
Value
Description
0
Turns off the turbo mode
1
Turns on the turbo mode
3
Special turbo mode for congested designs (runs slower)
VABoundaryToLSWeight
The VABoundaryToLSWeight parameter is used in multivoltage
mode. It specifies the value to adjust the cost for a level-shifter
connection when switching voltage area from one to another.
Chapter 5: Global Route Parameters
5-32
Usage
To specify the cost value for level-shifter connection, enter the
following:
axSetIntParam "groute" "VABoundaryToLSWeight" 0
Range
The valid values of this parameter range between 0 and 10, The
default is 0.
verReserveTracks
The verReserveTracks parameter determines the number of
vertical free tracks reserved in each gcell.
Usage
To specify the number of vertical free tracks reserved in each gcell,
use the following syntax:
axSetIntParam "groute" "verReserveTracks" 2
Range
The valid values of this parameter range between 0 and 20. The
default is 2.
xtalkWeight
The xtalkWeight parameter defines the weight given to crosstalk
prevention during global routing.
verReserveTracks
5-33
Usage
To specify the weight given to crosstalk prevention during global
routing, use the following syntax:
axSetIntParam "groute" "xtalkWeight" 4
Range
The valid values of this parameter range between 0 and 64. The
default is 4.
Chapter 5: Global Route Parameters
5-34
6
Layout Parasitic Extraction Parameters
6
You use the layout parasitic extraction (LPE) parameters to fine-tune
the setting of layout parasitic extraction.
Table 6-1 summarizes LPE parameters specific to Astro. Detailed
descriptions of the parameters follow in alphabetical order.
Table 6-1
LPE Parameters Summary
Parameter
Description
BlockEdgeAccess
Controls pin access
capMultiplier
It is the capacitance multiplier for
prerouting estimation.
diaGlinkRCMultFactor
Specifies the diagonal glink RC
multiplication factor.
drOptContEstimate
Estimates the increase of capacitance
when using the axDrouteOptContact
command.
6-1
Table 6-1
LPE Parameters Summary (Continued)
Parameter
Description
ekIgnoreShieldNDRinDR
ekShieldNDRinDRPro
Enables the support of virtual shielding for
capacitance extraction in virtual routing,
global routing, track assignment, and detail
routing modes.
ignoreVrClockNetSpanScalar
Uses the Steiner tree span length scale for
clock nets.
ignoreVrNetSpanLengthScalar
Uses the Steiner tree span length scale.
includePinGeomRes
Extracts the pin geometry resistance.
incRCExtraction
Controls the extraction mode.
lengthPerVia
Specifies the length of vias for prerouting
estimation.
longPinGeomSpec
Specifies the long pin geometry.
MetalnUtil
Specifies the utilization of metal tracks for
prerouting estimation.
mixedRCExtraction
Specifies the utilization of metal tracks for
prerouting estimation.
orthCoupleMultiplier
Specifies orthogonal coupling ratio
multiplier for prerouting estimation.
paraCoupleMultiplier
Specifies parallel coupling ratio multiplier
for prerouting estimation.
resMultiplier
It is the resistance multiplier for prerouting
estimation.
split
Splits the extraction kernel.
splitThreshold
Splits the extraction threshold.
starRCExtraction
Controls the extraction mode.
usePreCalCap
Precalculates gcell-based capacitance.
Chapter 6: Layout Parasitic Extraction Parameters
6-2
Table 6-1
LPE Parameters Summary (Continued)
Parameter
Description
usePreroutedSegsInVR
Switches to use the preroute wires while
constructing the virtual route topology.
useRouteSegsFileInVR
Passes the prerouted segments found in
the named file to virtual routing in virtual
RC mode.
useRuleCapTab
Uses the dynamically calculated
rule_cap_tab for capacitance
calculation.
viasPerEdge
Specifies the number of vias per edge for
prerouting estimation.
vrCheckUseLumpPinBoxNumLimit
Triggers to check if lump pin box is to be
used or not.
6-3
BlockEdgeAccess
The BlockEdgeAccess parameter is used to control pin access.
Syntax
axSetIntParam "ek" "BlockEdgeAccess" value
Value
Description
0
Does not control pin access.
1
Controls pin access (the default).
Example
To disable controlling pin access, enter
axSetIntParam "ek" "BlockEdgeAccess" 0
capMultiplier
The capMultiplier parameter is the capacitance multiplier for
prerouting estimation. Change this value to control prerouting
optimism versus postrouting pessimism from the capacitance point
of view.
Syntax
axSetRealParam "ek" "capMultiplier" value
The valid values of this parameter range between 0 and 10.0. The
default is 1.05.
Chapter 6: Layout Parasitic Extraction Parameters
6-4
Example
To multiply the capacitance for prerouting estimation, enter
axSetRealParam "ek" "capMultiplier" 5
diaGlinkRCMultFactor
The diaGlinkRCMultFactor parameter is used to specify the
diagonal glink RC multiplication factor.
Syntax
axSetRealParam "ek" "diaGlinkRCMultFactor" value
The valid values of this parameter range between 0 and 10. The
default is 1.0.
Example
To specify the diagonal glink RC multiplication factor, enter
axSetRealParam "ek" "diaGlinkRCMultFactor" 7.0
drOptContEstimate
The drOptContEstimate parameter is used to estimate the
increase of capacitance when using the axDrouteOptContact
command.
diaGlinkRCMultFactor
6-5
Syntax
axSetIntParam "ek" "drOptContEstimate" value
Value
Description
0
No estimation is done (the default).
1
Estimates the increase of
capacitance while using the
axDrouteOptContact command.
Example
To estimate the increase of capacitance while using the
axDrouteOptContact command, enter
axSetIntParam "ek" "drOptContEstimate" 1
ekIgnoreShieldNDRinDR
ekShieldNDRinDRPro
These parameters enable the support of virtual shielding for
capacitance extraction in virtual routing, global routing, track
assignment, and detail routing modes.
Chapter 6: Layout Parasitic Extraction Parameters
6-6
Syntax
axSetIntParam "ek" "ekIgnoreShieldNDRinDR" value
axSetIntParam "ek" "ekShieldNDRinDRPro" value
Value
Description
0
Disables the support of virtual shielding for capacitance
extraction in virtual routing, global routing, track
assignment, and detail routing modes (the default).
1
Enables the support of virtual shielding for capacitance
extraction in virtual routing, global routing, track
assignment, and detail routing modes
Example
To enable the support of virtual shielding for capacitance extraction
in virtual routing, global routing, track assignment, and detail routing
modes, enter
axSetIntParam "ek" "ekIgnoreShieldNDRinDR" 1
axSetIntParam "ek" "ekShieldNDRinDRPro" 1
ignoreVrClockNetSpanScalar
The ignoreVrClockNetSpanScalar parameter uses the Steiner
tree span length scale for clock nets.
Syntax
axSetIntParam "ek" "ignoreVrClockNetSpanScalar" value
Value
Description
0
Uses the Steiner tree span length
scale for clock nets (the default).
1
Ignores Steiner tree span length
scale for clock nets.
ignoreVrClockNetSpanScalar
6-7
Example
To ignore the Steiner tree span length scale for clock nets, enter
axSetIntParam "ek" "ignoreVrClockNetSpanScalar" 1
ignoreVrNetSpanLengthScalar
The ignoreVrNetSpanLengthScalar parameter uses the
Steiner tree span length scale.
Syntax
axSetIntParam "ek" "ignoreVrNetSpanLengthScalar" value
Value
Description
0
Use Steiner tree span length scale
(the default).
1
Ignores Steiner tree span length
scale.
Example
To ignore the Steiner tree span length scale, enter
axSetIntParam "ek" "ignoreVrNetSpanLengthScalar" 1
includePinGeomRes
The includePinGeomRes parameter is used to extract the pin
geometry resistance.
Chapter 6: Layout Parasitic Extraction Parameters
6-8
Syntax
axSetIntParam "ek" "includePinGeomRes" value
Value
Description
0
Does not extract the pin geometry
resistance (the default).
1
Extracts the pin geometry
resistance.
Example
To extract the pin geometry resistance, enter
axSetIntParam "ek" "includePinGeomRes" 1
incRCExtraction
The inRCExtraction parameter is used to control the extraction
mode.
Syntax
axSetIntParam "ek" "incRCExtraction" value
Value
Description
0
Does not use the incremental RC
extraction in real RC mode(the
default).
1
Uses incremental RC extraction in
real RC mode.
incRCExtraction
6-9
Example
To use incremental RC extraction in the real RC mode, enter
axSetIntParam "ek" "incRCExtraction" 1
lengthPerVia
The lengthPerVia parameter specifies the length of vias for
prerouting estimation.
Syntax
axSetIntParam "ek" "lengthPerVia" value
The valid values of this parameter range between 0 and 100000. The
default is 100000.
Example
To specify the length of vias for prerouting estimation as 50000, enter
axSetIntParam "ek" "lengthPerVia" 50000
longPinGeomSpec
The longPinGeomSpec parameter is used to specify the long pin
geometry.
Syntax
axSetRealParam "ek" "longPinGeomSpec" value
The valid values of this parameter range between 5.0 and 40.0. The
default is 40.0.
Chapter 6: Layout Parasitic Extraction Parameters
6-10
Example
To specify the long pin geometry as 30.0, enter
axSetRealParam "ek" "longPinGeomSpec" 30.0
MetalnUtil
The MetalnUtil parameter is used to specify the utilization of
metal tracks for prerouting estimation. The value N represents the
metal layers from 1 to 12.
Syntax
axSetRealParam "ek" "MetalnUtil" value
The valid values of this parameter range between -1 and 1.0. The
default is -1.
Example
To specify the utilization of the metal layers from Metal1 to Metal12,
enter
axSetRealParam "ek" "Metal1Util" 0.0
axSetRealParam "ek" "Metal2Util" 1.0
axSetRealParam "ek" "Metal3Util" -1.0
axSetRealParam "ek" "Metal4Util" 0.0
axSetRealParam "ek" "Metal5Util" 1.0
axSetRealParam "ek" "Metal6Util" 1.0
axSetRealParam "ek" "Metal7Util" 1.0
axSetRealParam "ek" "Metal8Util" 1.0
axSetRealParam "ek" "Metal9Util" 1.0
axSetRealParam "ek" "Metal10Util" 0.0
axSetRealParam "ek" "Metal11Util" 0.0
axSetRealParam "ek" "Metal12Util" -1.0
MetalnUtil
6-11
mixedRCExtraction
The mixedRCextraction parameter is used to extract the open
nets by reconnecting the net wiring topology using virtual route.
Syntax
axSetIntParam "ek" "mixedRCExtraction" value
Value
Description
0
Extracts the open nets (the default).
1
Extracts the open nets by reconnecting the net
wiring topology using virtual route.
Example
To extract the open nets by reconnecting the net wiring topology
using virtual route, enter
axSetIntParam "ek" "mixedRCExtraction" 1
orthCoupleMultiplier
The orthCoupleMultiplier parameter specifies the orthogonal
coupling ratio multiplier for prerouting estimation.
Syntax
axSetRealParam "ek" "orthCoupleMultiplier" value
The valid values of this parameter range between -1.0 and 10.0. The
default is -1.0.
Chapter 6: Layout Parasitic Extraction Parameters
6-12
Example
To specify orthogonal coupling ratio multiplier for prerouting
estimation, enter
axSetRealParam "ek" "orthCoupleMultiplier" 9.0
paraCoupleMultiplier
The paraCoupleMultiplier parameter specifies parallel
coupling ratio multiplier for prerouting estimation.
Syntax
axSetRealParam "ek" "paraCoupleMultiplier" value
The valid values of this parameter range between -1.0 and 10.0. The
default is -1.0.
Example
To specify parallel coupling ratio multiplier for prerouting estimation,
enter
axSetRealParam "ek" "paraCoupleMultiplier" 8.0
resMultiplier
The resMultiplier parameter is the resistance multiplier for
prerouting estimation. Change this value to control prerouting
optimism versus postrouting pessimism from the resistance point of
view.
Syntax
axSetRealParam "ek" "resMultiplier" value
paraCoupleMultiplier
6-13
The valid values of this parameter range between 0 and 10.0. The
default is 1.05.
Example
To multiply the resistance for prerouting estimation as 5, enter
axSetRealParam "ek" "resMultiplier" 5
split
The split parameter is used to split the extraction kernel. Splitting
the process will reduce the peak memory used by the Astro tool.
Syntax
axSetIntParam "ek" "split" value
Value
Description
0
Turns off the split process.
1
Turns on the split process (the
default)
Example
To turn off the split process, enter
axSetIntParam "ek" "split" 0
splitThreshold
The splitThreshold parameter is used to split extraction
threshold. It tells the tool when to split the extraction kernel process,
by default for designs containing more than 150000 instances.
Chapter 6: Layout Parasitic Extraction Parameters
6-14
Syntax
axSetIntParam "ek" "splitThreshold" value
The valid values of this parameter range between 0 and 150000. The
default is 150000.
Example
To split the extraction threshold for a design containing 50000
instances, enter
axSetIntParam "ek" "splitThreshold" 50000
starRCExtraction
The starRCExtraction parameter is used to control the
extraction mode.
Syntax
axSetIntParam "ek" "starRCExtraction" value
Value
Description
0
Does not use the Star-RCXT
extraction in real RC mode(the
default).
1
Uses Star-RCXT extraction in real
RC mode.
Example
To use Star-RCXT extraction in real RC mode, enter
axSetIntParam "ek" "starRCExtraction" 1
starRCExtraction
6-15
usePreCalCap
The usePreCalCap parameter is used to precalculate gcell-based
capacitance.
Syntax
axSetIntParam "ek" "usePreCalCap" value
Value
Description
0
Does not precalculate gcell-based
capacitance.
1
Precalculates gcell-based
capacitance (the default).
Example
To ignore precalculating the gcell-based capacitance, enter
axSetIntParam "ek" "usePreCalCap" 0
usePreroutedSegsInVR
The usePreroutedSegsInVR parameter switches to use the
preroute wires while constructing the virtual route topology.
Chapter 6: Layout Parasitic Extraction Parameters
6-16
Syntax
axSetIntParam "ek" "usePreroutedSegsInVR" value
Value
Description
0
Does not attempt to use the prerouted wires while
constructing the virtual routing topology (the
default).
1
Attempts to use the prerouted wires while
constructing the virtual routing topology.
Example
To use the preroute wires while constructing the virtual route
topology, enter
axSetIntParam "ek" "usePreroutedSegsInVR" 1
useRouteSegsFileInVR
The useRouteSegsFileInVR parameter passes the prerouted
segments found in the named file to virtual routing in virtual RC
mode.
Syntax
axSetIntParam "ek" "useRouteSegsFileInVR "file_name"
Example
To pass the prerouted segments found in the myfile file to virtual
routing in virtual RC mode, enter
axSetIntParam "ek" "useRouteSegsFileInVR "myfile"
useRouteSegsFileInVR
6-17
useRuleCapTab
The useRuleCapTab command uses the dynamically calculated
rule_cap_tab for capacitance calculation.
Syntax
axSetIntParam "ek" "useRuleCapTab" value
Value
Description
0
Does not use the dynamically calculated rule_cap_tab for the
capacitance calculation.
1
Uses the dynamically calculated rule_cap_tab for the capacitance
calculation (the default).
Example
To enable extraction not to use the calculated rule_cap_tab for
capacitance calculation, enter
axSetIntParam "ek" "useRuleCapTab" 0
viasPerEdge
The viasPerEdge parameter specifies the number of vias per edge
for prerouting estimation.
Syntax
axSetRealParam "ek" "viasPerEdge" value
The valid values of this parameter range between 0.0 and 10.00. The
default is 2.2.
Chapter 6: Layout Parasitic Extraction Parameters
6-18
Example
To number the vias per edge for prerouting estimation as 7.2, enter
axSetRealParam "ek" "viasPerEdge" 7.2
vrCheckUseLumpPinBoxNumLimit
The vrCheckUseLumpPinBoxNumLimit parameter triggers to
check if lump pin box is to be used or not. When a port has multiple
pins, these pins will be lumped together and treated as a big pin in
the following extraction.
Syntax
axSetIntParam "ek" "vrCheckUseLumpPinBoxNumLimit" value
The valid values of this parameter range between 0 and 100000. The
default is 10.
Example
To ignore lump pins, enter
axSetIntParam "ek" "vrCheckUseLumpPinBoxNumLimit" 0
vrCheckUseLumpPinBoxNumLimit
6-19
Chapter 6: Layout Parasitic Extraction Parameters
6-20
7
Placement-Driven Synthesis Optimization
Parameters
7
You use the placement-driven synthesis (PDS) optimization
parameters to fine-tune the PDS optimization settings.
Table 7-1 summarizes PDS optimization parameters specific to
Astro. Detailed descriptions of the parameters follow in alphabetical
order
Table 7-1
Optimization Parameters Summary
Parameter
Description
aggOpt
Determines whether aggressors are
optimized during postroute
optimization signal integrity flow.
buf_ins_hold
Determines whether buffers are
inserted during hold optimization.
7-1
Table 7-1
Optimization Parameters Summary (Continued)
Parameter
Description
flag_cr_opt
Determines whether critical regions
are fixed during placement
optimization.
hfn_fanout_threshold
Sets the threshold value for the
number of fanouts to trigger
high-fanout optimization.
hfn_max_fanouts
Sets the maximum number of
fanouts for a buffer used for
high-fanout optimization.
max_iteration
Sets the maximum number of
iterations for setup and hold fixing
while running astPostPS,
astSetUpFix, astHoldFix, and
pdsMoveCell.
max_level_buffer
Sets the maximum number of levels
of buffers inserted in high-fanout
optimization.
max_runtime
Sets a maximum runtime for setup
and hold fixing while running
astPostPS, astSetUpFix,
astHoldFix, and pdsMoveCell.
max_utilization
Sets the maximum utilization of the
design before PDS optimization
stops.
move_flip_flop
Determines whether flip-flop
movement is allowed for
placement-driven synthesis
optimization.
no_new_instance
Controls the addition of new
instances while running astPostPS,
astTranFix, astCapFix, and
astHoldFix.
Chapter 7: Placement-Driven Synthesis Optimization Parameters
7-2
Table 7-1
Optimization Parameters Summary (Continued)
Parameter
Description
ov_max_displaced_cells
Specifies the maximum number of
cells to be moved during overlap.
ov_max_displacement
Specifies the distance of maximum
displacement (in microns) during
overlap.
pds_message_level
Controls the level of detail in the
messaging report in the log file
during optimization.
pr_use_fpclass
Set when you to want to use the
footprint class.
slack_range_hold_max
Sets the maximum hold slack for
slack range optimization.
slack_range_hold_min
Sets the minimum hold slack for
slack range optimization.
slack_range_setup_max
Sets the maximum setup slack for
slack range optimization.
slack_range_setup_min
Sets the minimum setup slack value
for slack range optimization.
target_hold_slack
Sets the target hold time value for
PDS optimization to stop.
target_setup_slack
Sets the target setup time value.
target_utilization
Sets the target utilization value for
the area recovery to stop.
topo_only
Controls the use of topology-based
techniques during postroute
optimization flow.
7-3
Table 7-1
Optimization Parameters Summary (Continued)
Parameter
Description
use_child_router
Controls the use of a child router, to
reduce peak memory usage in the
routing engine when it is called
during optimization.
use_global_cost
Turns the global cost function for
astPostRouteOpt on or off.
wire_delay_model
Sets a wire delay model during
optimization.
xtalk_noise_limit
Sets the noise limit value used by
crosstalk optimization during pre/
post-placement optimization and
post-clock tree synthesis
optimization.
Chapter 7: Placement-Driven Synthesis Optimization Parameters
7-4
aggOpt
The aggOpt parameter determines whether aggressors are
optimized during postroute optimization signal integrity flow.
Usage
To optimize the aggressors during postroute optimization signal
integrity flow, enter the following:
axSetIntParam "pds" "aggOpt" 1
Range
The valid values are 0 or 1. The default is 1.
buf_ins_hold
The buf_ins_hold parameter controls the insertion of buffers
during hold optimization that is performed in postroute optimization.
Usage
To insert buffers during hold optimization, enter the following:
axSetIntParam "pds" "buf_ins_hold" 1
When set to 0, buffers are not inserted.
Range
The valid values are 0 or 1. The default is 0.
aggOpt
7-5
flag_cr_opt
The flag_cr_opt parameter controls whether critical regions are
fixed during placement optimization. When this parameter is set,
additional buffers are inserted.
Usage
To fix critical regions during placement optimization, enter the
following:
axSetIntParam "pds" "flag_cr_opt" 1
When set to 0, the critical regions are not fixed.
Range
The valid values are 0 or 1. The default is 1.
hfn_fanout_threshold
The hfn_fanout_threshold parameter sets the threshold value
for the number of fanouts sufficient to trigger high-fanout
optimization. This value is persistent and stored in the CEL view.
Usage
To specify the threshold value for the number of fanouts to trigger
high-fanout optimization, use the following syntax:
axSetIntParam "pds" "hfn_fanout_threshold" 40
Range
The valid values of this parameter range between 2 and 10000000.
The default is 40.
Chapter 7: Placement-Driven Synthesis Optimization Parameters
7-6
hfn_max_fanouts
The hfn_max_fanouts parameter is used to set the maximum
number of fanouts for a buffer used for high-fanout optimization.
Usage
To specify the maximum number of fanouts for a buffer used for
high-fanout optimization, use the following syntax:
axSetIntParam "pds" "hfn_max_fanouts" 40
Range
The valid values of this parameter range between 4 and 100. The
default is 40.
max_iteration
The max_iteration parameter sets the maximum number of
iterations for setup and hold fixing while running astPostPS,
astSetUpFix, astHoldFix, and pdsMoveCell. Setup and hold
fixing stops when the specified maximum number of iterations is
reached.
Usage
To set the maximum number of iterations for setup and hold fixing,
enter the following:
axSetIntParam "pds" "max_iteration" 100000
Range
The valid values range between 0 and 100000. The default is
100000.
hfn_max_fanouts
7-7
max_level_buffer
The max_level_buffer parameter is used to set the maximum
number of levels of buffers inserted in high-fanout optimization. Do
not change the default value of this parameter without specific
design requirement.
Usage
To specify the level of buffers inserted in the high-fanout
optimization, use the following syntax:
axSetIntParam "pds" "max_level_buffer" 6
Range
The valid values of this parameter range between 1 and 100. The
default is 6.
max_runtime
The max_runtime parameter sets a maximum runtime for setup
and hold fixing while running astPostPS, astSetupFix,
astHoldFix, and pdsMoveCell. Setup and hold fixing stops on
reaching the specified maximum runtime.
Usage
To set a maximum runtime for setup and hold fixing while running
astPostPS, astSetupFix, astHoldFix, and pdsMoveCell,
use the following syntax:
axSetRealParam "pds" "max_runtime" 604800.000
Chapter 7: Placement-Driven Synthesis Optimization Parameters
7-8
Range
The valid values range between 0.0 and 2419200.0. The default is
604800.0.
max_utilization
The max_utilization parameter sets a maximum utilization of
the design before PDS optimization stops. You can control this
parameter value if the chip design and congestion requirements are
stringent.
Usage
To set maximum utilization of the design before PDS optimization
stops, use the following syntax:
axSetRealParam "pds" "max_utilization" 95.000
Range
The valid values of this parameter range between 5.000 to 100.000.
The default is 95.000.
move_flip_flop
The move_flip_flop parameter determines whether flip-flop
movement is allowed for placement-driven synthesis (PDS)
optimization (after clock tree synthesis). The flip-flop movement
changes the clock tree; therefore, do not use this parameter after the
clock tree is created.
max_utilization
7-9
Usage
To allow flip-flop movement for PDS optimization, enter the following:
axSetIntParam "pds" "move_flip_flop" 1
When set to 0, the flip-flops do not move.
Range
The valid values are 0 or 1. The default is 0.
no_new_instance
The no_new_instance parameter is used to prevent the addition
of new instances while running astPostPS, astTranFix,
astCapFix, and astHoldFix.
Usage
To prevent the addition of new instances while running astPostPS,
astTranFix, astCapFix, and astHoldFix, enter the following:
axSetIntParam "pds" "no_new_instance" 0
Range
The valid values are 0 or 1. The default is 0.
ov_max_displaced_cells
The ov_max_displaced_cells parameter specifies the
maximum number of cells to be moved during overlap.
Chapter 7: Placement-Driven Synthesis Optimization Parameters
7-10
Usage
To specify the maximum number of cells to be moved during overlap,
use the following syntax:
axSetIntParam "pds" "ov_max_displacement" 500
Range
The valid values range between -1 and 500. The default is -1.
ov_max_displacement
The ov_max_displacement parameter specifies the distance of
maximum displacement (in microns) during overlap.
Usage
To define the distance of maximum displacement during overlap, use
the following syntax:
axSetIntParam "pds" "ov_max_displacement" 1000
Range
The valid values range between -1 and 1000. The default is -1
pds_message_level
The pds_message_level parameter controls the level of detail in
the messaging report in the log file during optimization.
ov_max_displacement
7-11
Usage
To receive a messaging report in the log file during optimization for
every buffer insertion, deletion, cell sizing, and so on, enter the
following:
axSetIntParam "pds" "pds_message_level" -1
Range
The valid values range between -1 and 10. The default is -1.
pr_use_fpclass
Set the pr_use_fpclass parameter to 1 when you to want to use
the footprint class.
Two cells are defined as footprint-equivalent if they have identical
physical layout, that is, the pin locations and names are identical,
vias and blockages are identical, and they are of the same size.
Usage
To use the footprint class, enter the following:
axSetIntParam "pds" "pr_use_fpclass" 1
By default, the LEQ classes are used.
Range
The valid values are 0 or 1. The default is 0.
Chapter 7: Placement-Driven Synthesis Optimization Parameters
7-12
routeOpt_fast_level
The routeOpt_fast_level parameter reduces postroute
optimization runtime in setup-fixing iterations.
Note that this parameter can be used only after the detail route stage
of route optimization. There can be a slight impact on the QoR and
there has been a significant improvement in the runtime reduction for
the designs with higher setup violations.
Usage
To avoid reducing postroute optimization runtime in setup fixing
iterations, enter the following:
axSetIntParam "pds" "routeOpt_fast_level" 1
Range
The valid values are 0 or 1. The default is 0.
slack_range_hold_max
The slack_range_hold_max parameter sets the maximum hold
slack for slack range optimization.
Usage
To set the maximum hold slack for slack range optimization, use the
following syntax:
axSetRealParam "pds" "slack_range_hold_max" 0.000
routeOpt_fast_level
7-13
Range
The valid values of this parameter range between
-99999996802856924650656260769173209088.000 and
99999996802856924650656260769173209088.000. The default is
0.000.
slack_range_hold_min
The slack_range_hold_min parameter sets the minimum hold
slack for slack range optimization.
Usage
To set the minimum hold slack for slack range optimization, use the
following syntax:
axSetRealParam "pds" "slack_range_hold_min" -100.000
Range
The valid values of this parameter range between
-99999996802856924650656260769173209088.000 and
99999996802856924650656260769173209088. The default is
-100.000.
slack_range_setup_max
The slack_range_setup_max parameter sets the maximum
setup slack for slack range optimization.
Chapter 7: Placement-Driven Synthesis Optimization Parameters
7-14
Usage
To set the maximum setup slack for slack range optimization, use the
following syntax:
axSetRealParam "pds" "slack_range_setup_max" 0.100
Range
The valid values of this parameter range between
-99999996802856924650656260769173209088.000 and
99999996802856924650656260769173209088.000. The default is
0.100.
slack_range_setup_min
The slack_range_setup_min parameter sets the minimum setup
slack value for slack range optimization.
Usage
To set the minimum setup slack value for slack range optimization,
use the following syntax:
axSetRealParam "pds" "slack_range_setup_min" -100.000
Range
The valid values of this parameter range between
-99999996802856924650656260769173209088.000 and
99999996802856924650656260769173209088. The default is
-100.000.
slack_range_setup_min
7-15
target_hold_slack
The target_hold_slack parameter sets the target hold time
value for PDS optimization to stop.
Usage
To specify the target slack in hold time for PDS optimization to stop,
use the following syntax:
axSetRealParam "pds" "target_hold_slack" 0.000
Range
The valid values of this parameter range between -1000.000 to
1000.000. The default is 0.000.
target_setup_slack
The target_setup_slack parameter specifies the target setup
time value. This value controls PDS optimization that is
recommended to do iterative change according to the slack
requirement of the design during postrouting /postplacement
optimization.
Usage
To specify the target slack in setup time for PDS optimization to stop,
use the following syntax:
axSetRealParam "pds" "target_setup_slack" 0.100
Range
The valid values of this parameter range between -1000.000 to
1000.000. The default is 0.100.
Chapter 7: Placement-Driven Synthesis Optimization Parameters
7-16
target_utilization
The target_utilization parameter sets the target utilization
value for area recovery to stop. In some cases, it can be used for
controlling the congestion distribution effectively.
Usage
To set the target utilization for area recovery to stop, use the
following syntax:
axSetRealParam "pds" "target_utilization" 50.000
Range
The valid values of target_utilization range between 0.000
and 100.000. The default is 50.
topo_only
The topo_only parameter controls the use of topology-based
techniques during postroute optimization flow.
Usage
To use topology-based techniques during postroute optimization
flow, enter the following:
axSetIntParam "pds" "topo_only" 1
When set to 0, the topology-based technique is not used.
Range
The valid values are 0 or 1. The default is 1.
target_utilization
7-17
use_child_router
The use_child_router parameter controls the use of a child
router to reduce peak memory usage in the routing engine when it is
called during optimization. For example, as in ECO routing during
postroute optimization.
Usage
To reduce peak memory usage in the routing engine when it is called
during optimization, enter the following:
axSetIntParam "pds" "use_child_router" 0
Range
The valid values range between 0 and 2. The default is 0.
Table 7-2 provides a description of the valid values of the
use_child_router parameter.
Table 7-2
Valid Values of the use_child_router Parameter
Value
Description
0
This is the default value.
The child router is invoked only
- on x32-bit machines as x64-bit machines allows you to access or
utilize the entire accessible memory.
- when the number of nets is above a certain threshold value.
1
When the value of the use_child_router parameter is set to 1, the
child router is turned off.
2
When the value of the use_child_router parameter is set to 2, The
child router is turned on.
Chapter 7: Placement-Driven Synthesis Optimization Parameters
7-18
use_global_cost
When set to 1, the use_global_cost parameter turns on the
global cost function for astPostRouteOpt. Using this parameter,
Astro performs optimization based on a cost function with each
metric, such as setup, hold, trans, cap, and so on.
The use_global_cost parameter performs optimization to accept
or reject certain transforms. It can used only before
astPostRouteOpt and does not have any user control to change
the cost.
Usage
To turn on the global cost function for the astPostRouteOpt
command, enter the following:
axSetIntParam "pds" "use_global_cost" 1
Range
The valid values are 0 or 1. The default is 0.
wire_delay_model
The wire_delay_model parameter sets a wire delay model during
optimization. It overrides the GUI option in the Timing Setup dialog
box. When the optimization is completed, the original delay model is
restored.
use_global_cost
7-19
The wire_delay_model parameter can be changed in each stage
of optimization. As timing setup automatically takes care of the delay
models to be used in each design stage, changing this parameter is
not recommended. This parameter is persistent and stored in the
CEL view.
Usage
To set a wire delay model during optimization, use the following
syntax:
axSetIntParam "pds" "wire_delay_model" 0
Range
The valid values of this parameter range between 0 and 2. The
default is 0.
Table 7-3 lists the valid values of wire_delay_model and their
associated delay models.
Table 7-3
Valid Values of the wire_delay_model parameter
Value
Description
0
ATA_ELMORE_WIREDELAY
1
ATA_AWE_WIREDELAY
2
ATA_ARNOLDI_WIREDELAY
xtalk_noise_limit
The xtalk_noise_limit parameter determines the noise limit
value used by crosstalk optimization during pre/postplacement
optimization and post-clock tree synthesis optimization. It controls
area recovery during these stages.
Chapter 7: Placement-Driven Synthesis Optimization Parameters
7-20
Usage
To set the noise limit value used by crosstalk optimization during pre/
postplacement optimization and post-clock tree synthesis
optimization, use the following syntax:
axSetRealParam "pds" "xtalk_noise_limit" 0.450
Range
The valid values of this parameter range between 0.000 and 1.000.
The default is 0.450.
xtalk_noise_limit
7-21
Chapter 7: Placement-Driven Synthesis Optimization Parameters
7-22
8
Placement Parameters
8
You use the placement parameters to fine-tune the placement
optimizations, including preplacement, in-placement, and
postplacement optimization.
Table 8-1 summarizes placement parameters specific to Astro.
Detailed descriptions of the parameters follow in alphabetical order.
Table 8-1
Placement Parameters Summary
Parameter
Description
allowOnSoftMacro
Controls whether cell instances are to be
placed on the top of soft macros
autoMacroPadding
Enables or disables automatic macro
padding
clockMode
Enables or disables the tree for constructing
clock nets
clusterGap
Specifies the flip-chip cluster gap
8-1
Table 8-1
Placement Parameters Summary (Continued)
Parameter
Description
clusterMaxMove
Specifies the maximum flip-chip move to
form a cluster
clusterOn
Enables or disables the flip-chip cluster
placement
clusterSize
Specifies the flip-chip cluster size
congDriven
Enables or disables congestion reduction
cornerProtect
Enables or disables the macro corner
protection
createMap
Enables or disables the creation and
updating of congestion maps, timing maps,
and so on
detailMap
Enables or disables the creation of a
detailed but slower placement congestion
map
doMove
Enables or disables the movement of cell
instances during detail placement.
doSwap
Enables or disables cell instance swapping
during detail placement
ecoBalance
Enables or disables the global cell density
overflow balancing.
ecoHonorPadding
Enables or disables the overlap/ECO
padding
ecoMode
Specifies the ECO mode to be used or
specifies that Astro determines the mode.
ecoWinsize
Specifies the ECO window size
enableLefDefRows
Enables or disables the LEF/DEF rows
Chapter 8: Placement Parameters
8-2
Table 8-1
Placement Parameters Summary (Continued)
Parameter
Description
extraSpaceM2Strap
Specifies the reservation of extra M2 tracks
next to the M2 strap
extraSpaceM3Strap
Specifies extra M3 tracks next to the M3
strap
fcNetWeight
Specifies the driver bump net weight
fcSMNetWeight
Specifies the driver to soft macro net weight
firstCut
Specifies the direction of first cut or specifies
that Astro determines the direction.
fixMHTile
Specifies multiheight masters tile pattern
problem or specifies whether Astro fixes the
multiheight tile pattern problem.
gradPlaceInForce
Specifies reduction in target local utilization
for congested area during gradient
placement
gradPlaceMove
Enables or disables auto or manual gradient
placement
gradPlaceMoveMethod
Specifies the strategy of gradient placement
gradPlaceResolution
Specifies the partition size during gradient
placement
gradPlaceRestoreBest
Controls whether the best placement is
stored at the end of gradient placement
gradPlacerIter
Specifies the number of gradient placement
iteration
gradPlacerOutForce
Specifies the reduction in target local
utilization for congested area during
gradient placement.
guardBandX
Specifies the flip-chip cluster guardband
width X
8-3
Table 8-1
Placement Parameters Summary (Continued)
Parameter
Description
guardBandY
Specifies the flip-chip cluster guardband
width Y
highlightCell
Controls whether moved cells are
highlighted during ECO placement
horIOPinLayer
Specifies I/O pin placement by database
layer
idealSlack
Specifies the importance of imposing
weights on nets violating ideal slack
includeSoft
Enables or disables soft-fixed cell instances
during overlap removal
instPadding
Specifies the instance padding or specifies
that Astro determines the instance padding.
IOnetWeight
Specifies the weight of I/O nets
ioPlace
Enables or disables I/O pin placement with
given side constraints
ipoRegionByConn
Enables or disables new cell assignment to
the region by connectivity during in-place
optimization
macroExpandFactor
Specifies the macro cell expansion by unit
tile size
macroNetWeight
Specifies the weight of all macro nets
macroPadBlkType
Enables or disables space by soft blockage
magnetPlacebyWt
Controls whether magnet place honors net
weight
magnetPlaceForce
Specifies the placement status of magnet
placement
magnetPlaceIgnoreSoftBlk
Specifies whether magnet place honors soft
blockage
Chapter 8: Placement Parameters
8-4
Table 8-1
Placement Parameters Summary (Continued)
Parameter
Description
magnetPlaceLevel
Specifies the logical level of magnet
placement
magnetPlaceMoveFix
Specifies whether magnetplace moves fixed
cells
magnetPlaceMoveSoftFix
Controls whether magnet placement moves
fixed cells
magnetPlaceStatus
Controls whether magnet placement moves
soft-fixed cells
magnetPlaceStopPullingAtSeq
Controls whether sequential cells need to be
pulled in magnet placement
mapOffsetH
Specifies horizontal adjustment to
placement congestion map when placer
creates it
mapOffsetV
Specifies vertical adjustment to placement
congestion map when placer creates it
markCellSoftFix
Specifies whether magnet place marks cells
under soft blockage as soft fixed or not
masterPadding
Enables or disables master padding
minLocalUtil
Specifies minimum local utilization for
congestion-driven placement
minMacroGap
Specifies the gap elimination among macros
minMacroPad
Specifies the minimum protection area
around macros over macro size 0.05
NetlistOpt
Enables or disables netlist optimization
during timing-driven design placement
8-5
Table 8-1
Placement Parameters Summary (Continued)
Parameter
Description
noCellUnderM0 noCellUnderM1
noCellUnderM2 noCellUnderM3
noCellUnderM4 noCellUnderM5
noCellUnderM6 noCellUnderM7
noCellUnderM8 noCellUnderM9
noCellUnderM10 noCellUnderM11
noCellUnderM12
Enables or disables cell placement under
poly pre-wires and M1 to M12 pre-wires
noCellUnderV01 noCellUnderV12
noCellUnderV23 noCellUnderV34
noCellUnderV45 noCellUnderV56
noCellUnderV67 noCellUnderV78
noCellUnderV87 noCellUnderV98
noCellUnderV1011
noCellUnderV1112
Enables or disables cell placement under
the following vias: via0, via12, via23, via34,
via45, via56, via67, via 78, via 87, via98,
via1011, and via1112
noShortAtM0 noShortAtM1
noShortAtM2 noShortAtM3
noShortAtM4 noShortAtM5
noShortAtM6 noShortAtM7
noShortAtM8 noShortAtM9
noShortAtM10 noShortAtM11
noShortAtM12
Controls whether short checking is
performed against M0 to M12 pre-wires
noUserSetPinUnderM1
noUserSetPinUnderM2
noUserSetPinUnderM3
noUserSetPinUnderM4
noUserSetPinUnderM5
noUserSetPinUnderM6
noUserSetPinUnderM7
noUserSetPinUnderM8
noUserSetPinUnderM9
noUserSetPinUnderM10
noUserSetPinUnderM11
noUserSetPinUnderM12
Enables or disables pin placement under
poly pre-wires and M1 to M12 pre-wires
oneSMPerIsland
Enables or disables connection of drivers to
the softmacro
onGrid
Enables or disables the off-grid via region
Chapter 8: Placement Parameters
8-6
Table 8-1
Placement Parameters Summary (Continued)
Parameter
Description
optPinHorLayer
Controls the horizontal layer of
axgOptimizePinLoc
optPinVerLayer
Controls the vertical layer of
axgOptimizePinLoc.
padMacro
Enables or disables space reservation at
macro proximity
partUtilMinUpperBound
Specifies the minimum upper bound for
partitioning
pinAccessHorz
Specifies the horizontal pin access blockage
value.
pinAccessVert
Specifies the vertical pin access blockage
value
placeFC
Enables or disables flip-chip placement
predictPgStackVia
Controls whether to predict the effects of
power and ground stacks via in placement
congestion map even when the stacked vias
do not exist.
preRouteMergeLimit
Specifies whether M2 tracks between two
preroutes should be merged as one for
pin-accessibility check
preserveCouplingMap
Specifies whether to preserve the coupling
map if less than N percent placement has
changed.
readPlanGroup
Specifies whether all plan group objects
should be read.
reportECO
Enables or disables reporting ECO changes
during placement in a text file place.eco.rpt
restoreFillerSnapShot
Controls whether the filler snapshot is to be
restored
8-7
Table 8-1
Placement Parameters Summary (Continued)
Parameter
Description
secondCut
Specifies the direction of second cut or
specifies that Astro determines the direction
seeBus
Controls whether all nets are considered as
BUS type
seeClkRing
Controls whether CLK nets are considered
as RING type
seeClkStrap
Controls whether CLK nets are considered
as STRAP type
seeContactArr
Enables or disables all contact arrays
seePath
Controls whether all nets are considered as
PATH type
seePGPinCon
Controls whether the power and ground nets
are considered as PIN CON type
seePGRing
Controls whether power and ground nets
are considered as RING type
seePGStrap
Controls whether the power and ground nets
are considered as STRAP type
seeRect
Considers all metal rectangles
seeUser
Controls whether all signal net are
considered as USER type
skipPrelim
Specifies whether the preliminary plain
placement is skipped during timing-driven
optimization
slackTarget
Specifies the slack target adjustment
sortObjByID
Enables or disables object sorting by DB
indices
spacingWeight
Specifies the linear factor that affects cell
spacing optimization
Chapter 8: Placement Parameters
8-8
Table 8-1
Placement Parameters Summary (Continued)
Parameter
Description
speed
Specifies the placement runtime
strongExclusiveness
Controls whether the cell can enter the
exclusive region during overlap
summary
Controls whether to print long/short version
of placement summary
thermConduct
Specifies thermal conductivity considering
the silicon material and packaging
timingDriven
Specifies timing optimization during
placement
timingWeight
Specifies the timing weight
triNetWeight
Specifies the weight of all tri-state nets
unitTileOrient
Specifies the orientation of unit tiles
useDHCell
Controls whether double cells are used
during optimization
verIOPinLayer
Specifies I/O pin placement by DB layer
voltDriven
Enables or disables IR drop optimization
during placement
windowOV
Enables or disables windows-based overlap
8-9
allowOnSoftMacro
The allowOnSoftMacro parameter controls whether cell
instances can be placed on the top of soft macros.
Syntax
axSetIntParam "place" "allowOnSoftMacro" value
Value
Description
0
No cell instances can be placed on
soft macros (the default).
1
Cell instances are allowed to be
placed on top of soft macros.
Example
To control whether cell instances can be placed on the top of soft
macros, enter
axSetIntParam "place" "allowOnSoftMacro"
1
autoMacroPadding
The autoMacroPadding parameter enables or disables automatic
macro padding. When this parameter is set to 1, Astro automatically
creates the placement blockage on the external edges of the
macros’ boundaries.
Chapter 8: Placement Parameters
8-10
Syntax
axSetIntParam "place" "autoMacroPadding" value
Value
Description
0
No automatic macro padding.
1
Automatic macro padding (the
default).
Example
To disable automatic macro padding, enter
axSetIntParam "place" "autoMacroPadding" 0
clockMode
The clockMode parameter enables or disables the tree for
constructing clock nets.
Syntax
axSetIntParam "place" "clockMode" value
Value
Description
0
Uses mesh to construct clock nets
(the default).
1
Uses tree to construct clock nets.
Example
To use the tree for constructing clock nets, enter
axSetIntParam "place" "clockMode" 1
clockMode
8-11
clusterGap
The clusterGap parameter specifies the flip-chip cluster gap.
Cluster gap is the distance between two clusters. When two drivers
are within this distance, they are considered in the same cluster.
Syntax
axSetIntParam "place" "clusterGap" value
The valid values range between 0 and 100000. The default is 0.
Example
To specify the flip-chip cluster gap as 500, enter
axSetIntParam "place" "clusterGap" 500
clusterMaxMove
The clusterMaxMove parameter specifies the maximum distance
a flip-chip can move to form a cluster (as multiple to clusterGap).
ClusterMaxMove is the maximum distance to move a driver from
its ideal location to form a cluster.
Syntax
axSetIntParam "place" "clusterMaxMove" value
The valid values range between 0 and 100000. The default is 0.
Example
To specify the distance the flip-chip moves to form a cluster as 4000,
enter
axSetIntParam "place" "clusterMaxMove" 4000
Chapter 8: Placement Parameters
8-12
clusterOn
The clusterOn parameter enables or disables the flip-chip cluster
placement.
Syntax
axSetIntParam "place" "clusterOn" value
Value
Description
0
Disables the cluster flip-chip placement (the
default).
1
Enables the cluster flip-chip placement. When
set to 1, it enables cluster size, cluster gap, and
the maximum number of flip-chips in the cluster.
Example
To perform cluster flip-chip placement, enter
axSetIntParam "place" "clusterOn" 1
clusterSize
The clusterSize parameter specifies the flip-chip cluster size.
Syntax
axSetIntParam "place" "clusterSize" value
The valid values range between 1 and 100. The default is 1.
clusterOn
8-13
Example
To specify the flip-chip cluster size as 80, enter
axSetIntParam "place" "clusterSize" 80
congDriven
The congDriven parameter enables or disables the congestion
reduction.
Syntax
axSetIntParam "place" "congDriven" value
Value
Description
0
Disables all congestion-driven
options.
1
Uses means to reduce congestion
(the default).
Example
To disable all congestion-driven options, enter
axSetIntParam "place" "congDriven" 0
cornerProtect
The cornerProtect parameter enables or disables the macro
corner protection.
Chapter 8: Placement Parameters
8-14
Syntax
axSetIntParam "place" "cornerProtect" value
Value
Description
0
Macro corner is not protected.
1
Used to protect macro corner to macro dimension and
position (the default).
When set to 1, Astro will add padding to the corner of
macros for the protection during astMacroPadding.
The blockage can be edited manually.
Example
To disable the macro corner protection, enter
axSetIntParam "place" "cornerProtect" 1
createMap
The createMap parameter enables or disables the creation and
updating of congestion maps, timing maps, and so on.
Syntax
axSetIntParam "place" "createMap" value
Value
Description
0
Maps are not created
1
Congestion maps and timing maps
are created (the default)
createMap
8-15
Example
To disable the creation of congestion and timing maps, enter
axSetIntParam "place" "createMap" 1
detailMap
The detailMap parameter enables or disables the creation of detail
placement congestion map.
Syntax
axSetIntParam "place" "detailMap" value
Value
Description
0
Creates fast placement congestion
map (the default).
1
Creates a detailed but slower
placement congestion map.
Example
To create a detail placement congestion map, enter
axSetIntParam "place" "detailMap" 1
doMove
The doMove parameter enables or disables the movement of cell
instances during detail placement.
Chapter 8: Placement Parameters
8-16
Syntax
axSetIntParam "place" "doMove" value
Value
Description
0
Does not move cell instances.
1
Moves cell instances during detail
placement (the default).
Example
To disable the movement of cell instances during detail placement,
enter
axSetIntParam "place" "doMove" 0
doSwap
The doSwap parameter enables or disables the cell instance
swapping during detail placement. Astro will swap two cell instances
during the detail placement, ECO and optimization to achieve better
timing.
Syntax
axSetIntParam "place" "doSwap" value
Value
Description
1
Swaps two cell instances during
the detail placement, ECO and
optimization to achieve better
timing (the default)
0
Disables the cell instance
swapping.
doSwap
8-17
Example
To disable swapping cell instances during detail placement, enter
axSetIntParam "place" "doSwap" 0
ecoBalance
The ecoBalance parameter enables or disables the global cell
(gcell) density overflow balancing.
Syntax
axSetIntParam "place" "ecoBalance" value
Value
Description
0
The global cell density overflow balancing is
disabled (the default).
1
The global cell density overflow balancing is
enabled.
Example
To enable global cell density overflow balancing, enter
axSetIntParam "place" "ecoBalance" 1
ecoHonorPadding
The ecoHonorPadding parameter enables or disables the ECO
placement and overlap to honor user padding.
Chapter 8: Placement Parameters
8-18
Syntax
axSetIntParam "place" "ecoHonorPadding" value
Value
Description
0
Disables the overlap/ECO padding
(the default).
1
Enables the overlap/ECO padding.
Example
To enable the overlap/ECO padding, enter
axSetIntParam "place" "ecoHonorPadding"
1
ecoMode
The ecoMode parameter specifies the ECO mode to be used or
specifies that Astro determines the mode.
Syntax
axSetIntParam "place" "ecoMode" value
Value
Description
-1
Automatically decides which mode to use (the
default)
0
Uses old ECO mode. Ideal for small and/or scattered
changes
1
Uses new ECO mode. Ideal for large change/or
localized changes
ecoMode
8-19
Example
To specify the old ECO mode, enter
axSetIntParam "place" "ecoMode" 0
ecoWinsize
The ecoWinsize parameter specifies the ECO window size.
Syntax
axSetIntParam "place" "ecoWinsize" value
The valid values of this parameter range between 0 and 10. The
default is 1.
Example
To specify the ECO window size as 5, enter
axSetIntParam "place" "ecoWinsize" 1
enableLefDefRows
The enableLefDefRows parameter enables or disables the LEF/
DEF rows.
Chapter 8: Placement Parameters
8-20
Syntax
axSetIntParam "place" "enableLefDefRows" value
Value
Description
0
Does not allow LEF/DEF style
overlapping site array (rows).
1
Allows LEF/DEF style overlapping
site array (rows) (the default).
Example
To disable LEF/DEF rows, enter
axSetIntParam "place" "enableLefDefRows" 0
extraSpaceM2Strap
The extraSpaceM2Strap parameter specifies the reservation of
extra M2 tracks next to the M2 strap.
Syntax
axSetIntParam "place" "extraSpaceM2Strap" value
The valid values range between 0 to 10. The default is 0.
Example
To reserve five extra M2 tracks next to M2 strap, enter
axSetIntParam "place" "extraSpaceM2Strap" 5
extraSpaceM2Strap
8-21
extraSpaceM3Strap
The extraSpaceM3Strap parameter specifies the reservation of
extra M3 tracks next to M3 strap.
Syntax
axSetIntParam "place" "extraSpaceM3Strap" value
The valid values range between 0 to 10. The default is 0.
Example
To reserve seven extra M3 tracks next to M3 strap, enter
axSetIntParam "place" "extraSpaceM3Strap" 7
fcNetWeight
The fcNetWeight parameter specifies the net weight on the nets
connecting from the driver to bump in flip-chip designs.
Syntax
axSetIntParam "place" "fcNetWeight" value
The valid values range between 0 and 1000. The default is 0.
Example
To specify the driver bump net weight as 300, enter
axSetIntParam "place" "fcNetWeight" 300
Chapter 8: Placement Parameters
8-22
fcSMNetWeight
The fcSMNetWeight parameter specifies the net weight on the
nets connecting from the driver to the soft macro in flip-chip designs.
Syntax
axSetIntParam "place" "fcSMNetWeight" value
This values range between 1 and 1000. The default is 1.
Example
To specify the driver to soft macro net weight as 550, enter
axSetIntParam "place" "fcSMNetWeight" 550
firstCut
The firstCut parameter specifies the direction of the first cut or
specifies that Astro determines the direction.
Syntax
axSetIntParam "place" "firstCut" value
Value
Description
-1
Automatically determines the
direction of first cut (the default)
0
Specifies vertical first cut.
1
Specifies horizontal first cut
fcSMNetWeight
8-23
Example
To specify the vertical first cut, enter
axSetIntParam "place" "firstCut" 0
fixMHTile
The fixMHTile parameter specifies multiheight masters tile pattern
problem or specifies that Astro fixes the multiheight tile pattern
problem.
Syntax
axSetIntParam "place" "fixMHTile" value
Value
Description
0
The placer does not automatically fix
multi-height masters tile pattern problem (the
default).
1
The placer will automatically fix the multi-height
masters tile pattern problem due to incorrect
PR_boundary setting, incorrect tile pattern
defined for the cell master, or wrong unit tile
orientation defined was defined during library
preparation.
Example
To automatically fix multi-height masters tile pattern problem, enter
axSetIntParam "place" "fixMHTile" 1
Chapter 8: Placement Parameters
8-24
gradPlaceInForce
The gradPlaceInForce parameter specifies the reduction in
target local utilization for congested area during gradient placement.
The gradient placement technique is based on the congestion
gradient information of the congestion map. It reduces the utilization
of the highly congested areas while increasing the utilization of the
uncongested areas. The gradient of the congestion map is used to
guide the migration of the cells.
Syntax
axSetIntParam "place" "gradPlacerInForce" value
The valid values of this parameter range between 0 and 1000. The
default is 250.
Example
To specify reduction in target local utilization for congested area
during gradient placement as 350, enter
axSetIntParam "place" "gradPlaceInForce"
350
gradPlaceMove
The gradPlaceMove parameter enables or disables the auto or
manual gradient placement.
gradPlaceInForce
8-25
Syntax
axSetIntParam "place" "gradPlaceMode" value
Value
Description
0
Performs auto gradient placement (the default).
1
Performs manual gradient placement.
Example
To enable the manual gradient placement, enter
axSetIntParam "place" "gradPlaceMode"
1
gradPlaceMoveMethod
The gradPlaceMoveMethod parameter specifies the strategy of
gradient placement.
Syntax
axSetIntParam "place" "gradPlaceMoveMethod" value
Value
Description
0
Best wire length, when set to 0: cell that connected to the min
wire length will be picked and moved (the default).
1
With most pins, when set to 1: cell that has the most pins will be
picked and moved.
2
With least pins, when set to 2: cell that has the least pins will be
picked and moved
Chapter 8: Placement Parameters
8-26
Value
Description
3
With big net, when set to 3: cell that connected to the max wire
length will be picked and moved
4
Randomly, when set to 4: cell will be randomly picked and
moved
Example
To specify strategy of gradient placement as reserved, enter
axSetIntParam "place" "gradPlaceMoveMethod"
5
gradPlaceResolution
The gradPlaceResolution parameter specifies the size of the
partition in which gradient placement operates. When congestion
spots are large, a larger partition is recommended. A lower value
provides smaller partitions.
Syntax
axSetIntParam "place" "gradPlaceResolution" value
The valid values of this parameter range between 1 and 100. The
default is 2.
Example
To specify the partition size during gradient placement as 80, enter
axSetIntParam "place" "gradPlaceResolution" 80
gradPlaceResolution
8-27
gradPlaceRestoreBest
The gradPlaceRestoreBest parameter controls whether the
best placement is stored at the end of gradient placement.
Syntax
axSetIntParam "place" "gradPlaceRestoreBest" value
Value
Description
0
Does not restore best placement at the end of gradient placement
(the default).
1
Restores best placement at the end of gradient placement.
Example
To restore best placement at the end of gradient placement, enter
axSetIntParam "place" "gradPlaceRestoreBest" 1
gradPlacerIter
The gradPlacerIter parameter specifies the value of gradient
placement iteration.
Syntax
axSetIntParam "place" "gradPlacerIter" value
The valid values of this parameter range between 0 and
2147483647. The default is 0.
Chapter 8: Placement Parameters
8-28
Example
To specify the number of gradient placement iterations as 5000,
enter
axSetIntParam "place" "gradPlacerIter" 5000
gradPlacerOutForce
The gradPlaceOutForce parameter specifies the reduction in
target local utilization for congested area during gradient placement.
Syntax
axSetIntParam "place" "gradPlacerOutForce" value
The valid values of this parameter range between 0 and 1000. The
default is 250.
Example
To specify reduction in target local utilization for congested area
during gradient placement as 250, enter
axSetIntParam "place" "gradPlacerOutForce"
250
guardBandX
The guardBandX parameter specifies the flip-chip cluster
guardband width X.
The guardbanding is needed when you place the flip-chip I/O drivers
inside the core. It specifies the standard cell placement keepout area
in the x direction from the driver cell boundary. This parameter will
gradPlacerOutForce
8-29
apply the guardbands during standard cell placement so that no
standard cell can be placed closer than the guardband dimensions
to isolate standard cells from the I/O driver which draws large
amount of current and generates noise. This guardband will be
automatically removed after the placement is done.
Syntax
axSetIntParam "place" "guardBandX" value
The valid values range between 0 and 100000. The default is 0.
Example
To specify the flip-chip cluster guardband width X as 5000, enter
axSetIntParam "place" "guardBandX" 5000
guardBandY
The guardBandX parameter specifies the flip-chip cluster
guardband height Y.
The guardbanding is needed when we place the flip-chip I/O drivers
inside the core. It specifies the standard cell placement keep-out
area in the y direction from the driver cell boundary. This parameter
will apply the guardbands during standard cell placement so that no
standard cell can be placed closer than the guardband dimensions
thus isolating standard cells from the I/O driver, which draws large
amount of current and generates noise. This guardband will be
automatically removed after the placement is done.
Syntax
axSetIntParam "place" "guardBandY" value
Chapter 8: Placement Parameters
8-30
The valid values range between 0 and 100000. The default is 0.
Example
To specify the flip-chip cluster height Y as 7000, enter
axSetIntParam "place" "guardBandX" 7000
highlightCell
The highlightCell parameter controls whether moved cells are
highlighted during ECO placement.
Syntax
axSetIntParam "place" "highlightCell" value
Value
Description
0
Does not highlight moved cells during ECO
placement.
1
Highlights moved cells during ECO placement (the
default).
Example
If you do not want to highlight moved cells during ECO placement,
enter
axSetIntParam "place" "highlightCell" 0
horIOPinLayer
The horIOPinLayer parameter enables the placer to place the I/O
pins by the specified DB layer.
highlightCell
8-31
Syntax
axSetIntParam "place" "horIOPinLayer" value
The valid values of this parameter range between -1 and 255. The
default is -1.
Example
To place I/O pins by DB layer, enter
axSetIntParam "place" "horIOPinLayer" -1
idealSlack
The idealSlack parameter specifies the importance of imposing
weights on nets violating ideal slack (only with in-place optimization).
Syntax
axSetRealParam "place" "idealSlack" value
The valid values of this parameter range between 0.0 and 5.0. The
default is 1.0.
Example
To specify the importance of imposing weights on nets violating ideal
slack, enter
axSetRealParam "place" "idealSlack" 3.0
includeSoft
The includeSoft parameter enables or disables the inclusion of
soft-fixed cell instances during overlap removal.
Chapter 8: Placement Parameters
8-32
Syntax
axSetIntParam "place" "includeSoft" value
Value
Description
0
Do not include soft fixed cell instances in overlap
removal (the default).
1
Include soft fixed cell instances in overlap removal
Example
To include soft-fixed cell instances in overlap removal, enter
axSetIntParam "place" "includeSoft" 1
instPadding
The instPadding parameter specifies the instance padding or
specifies that Astro determines the instance padding.
Syntax
axSetIntParam "place" "instPadding" value
Value
Description
-1
Automatically determine whether to use instance padding or not (the
default)
0
No padding on instance in a congested area
1
Pad instances in congested area, requires two passes
instPadding
8-33
Example
To ensure that there is no padding on instance in a congested area,
enter
axSetIntParam "place" "instPadding" 0
IOnetWeight
The IOnetWeight parameter specifies the weight of I/O nets.
Syntax
axSetIntParam "place" "IOnetWeight" value
The valid values of this parameter range between 1 and 1000. The
default is 1.
Example
To specify the weight of I/O nets as 500, enter
axSetIntParam "place" "IOnetWeight" 500
ioPlace
The ioPlace parameter enables or disables the I/O placement with
given side constraints such as timing driven, congestion driven,
clock driven, heat driven and power driven.
Chapter 8: Placement Parameters
8-34
Syntax
axSetIntParam "place" "ioPlace" value
Value
Description
0
Pins remain unlaced (the default)
1
Places I/O pins with given side
constraints
Example
To place I/O pins with given side constraints, enter
axSetIntParam "place" "ioPlace" 1
ipoRegionByConn
The ipoRegionByConn parameter enables or disables new cell
assignment to the region by connectivity during in-place
optimization.
Syntax
axSetIntParam "place" "ipoRegionByConn" value
Value
Description
0
Disables the assignment of new cell to region by
connectivity (the default).
1
Assigns the new cell to region by connectivity during
in-place optimization.
ipoRegionByConn
8-35
Example
To assign a new cell to region by connectivity during in-place
optimization, enter
axSetIntParam "place" "ipoRegionByConn"
1
macroExpandFactor
The macroExpandFactor parameter specifies the macro cell
expansion by unit tile size.
Syntax
axSetRealParam "place" "macroExpandFactor" value
The valid values of this parameter range between 0 and 10. The
default is 1.0.
Example
To enable the macro cell expansion by unit tile size, enter
axSetRealParam "place" "macroExpandFactor" 4.0
macroNetWeight
The macroNetWeight parameter specifies the weight of all macro
nets.
Syntax
axSetIntParam "place" "macroNetWeight" value
The valid values range between 1 and 1000. The default is 1. When
set to 0, the weight of macro nets cannot be determined.
Chapter 8: Placement Parameters
8-36
Example
To determine the weight of all macro nets, enter
axSetIntParam "place" "macroNetWeight" 600
macroPadBlkType
The macroPadBlkType parameter enables or disables space by
soft blockage.
Syntax
axSetIntParam "place" "macroPadBlkType" value
Value
Description
0
Space is reserved by hard
blockage (the default).
1
Space is reserved by soft
blockage.
Example
To enable space by soft blockage, enter
axSetIntParam "place" "macroPadBlkType" 1
magnetPlacebyWt
The magnetPlacebyWt parameter controls whether magnet place
honors net weight.
macroPadBlkType
8-37
Instead of using maximum magnetic force to pull a standard cell to
the location of the magnet, you can specify that magnet placement
takes into account net weight constraints by using the
magnetPlacebyWT parameter.
Syntax
axSetIntParam "place" "magnetPlacebyWt" value
Value
Description
0
Magnet place does not honor net weight (the default).
1
Magnet place honors net weight.
Example
To ensure that magnet place honors net weight, enter
axSetIntParam "place" "magnetPlacebyWt"
1
magnetPlaceForce
The magnetPlaceForce parameter specifies the placement value
of magnet placement. The higher the value, the closer the cells are
moved to the magnet cells.
Syntax
axSetIntParam "place" "magnetPlaceForce" value
The valid values of this parameter range between 1 and 10. The
default is 5.
Chapter 8: Placement Parameters
8-38
Example
To specify the placement status of magnet placement as 7, enter
axSetIntParam "place" "magnetPlaceForce"
7
magnetPlaceIgnoreSoftBlk
The magnetPlaceIgnoreSoftBlk parameter specifies whether
magnet place honors soft blockage.
Syntax
axSetIntParam "place" "magnetPlaceIgnoreSoftBlk" value
Value
Description
0
Magnet place does not honor soft blockage (the default).
1
Magnet place honors soft blockage. When set to 1,
astMagnetPlace will not move cells in the soft blockage.
Example
To determine whether magnet place honors soft blockage, enter
axSetIntParam "place" "magnetPlaceIgnoreSoftBlk"
1
magnetPlaceLevel
The magnetPlaceLevel parameter specifies the logical level of
magnet placement.
Syntax
axSetIntParam "place" "magnetPlaceLevel" value
magnetPlaceIgnoreSoftBlk
8-39
The valid values of this parameter range between 1 and 1000. The
default is 1.
Example
To determine the logical level of magnet placement, enter
axSetIntParam "place" "magnetPlaceLevel"
1
magnetPlaceMoveFix
The magnetPlaceMoveFix parameter controls whether
magnetplace moves fixed cells.
Syntax
axSetIntParam "place" "magnetPlaceMoveFix" value
Value
Description
0
Magnetplace does not move the fixed cell (the default).
1
Magnetplace moves the fixed cell.
Example
To specify whether magnetplace moves a fixed cell, enter
axSetIntParam "place" "magnetPlaceMoveFix" 1
magnetPlaceMoveSoftFix
The magnetPlaceMoveSoftFix parameter controls whether
placement moves soft fixed cells.
Chapter 8: Placement Parameters
8-40
Syntax
axSetIntParam "place" "magnetPlaceMoveSoftFix" value
Value
Description
0
Placement does not move soft fixed cells (the default).
1
Placement moves soft-fixed cells.
Range
To specify that placement moves soft fixed cells, enter
axSetIntParam "place" "magnetPlaceMoveSoftFix"
1
magnetPlaceStatus
The magnetPlaceStatus parameter specifies the placement
status of magnet placement.
Syntax
axSetIntParam "place" "magnetPlaceStatus" value
Value
Description
1
Status of the cells is assigned to original (the default).
2
Status of the cells is assigned to fixed.
3
Status of the cells is assigned to soft-fixed.
Example
To assign the status of the cells as fixed, enter
axSetIntParam "place" "magnetPlaceStatus"
2
magnetPlaceStatus
8-41
magnetPlaceStopPullingAtSeq
The magnetPlaceStopPullingAtSeq parameter controls
whether sequential cells need to be pulled in magnet place.
Syntax
axSetIntParam "place" "magnetPlaceStopPullingAtSeq" value
Value
Description
0
Used if you want sequential cells to be pulled in magnet place
(the default).
1
Used if you want sequential cells not to be pulled in magnet
place.
Example
If you do not want sequential cells to be pulled in magnet place, enter
axSetIntParam "place" "magnetPlaceStopPullingAtSeq"
1
mapOffsetH
The mapOffsetH parameter specifies horizontal adjustment to
placement congestion map when the placer creates it.
Syntax
axSetRealParam "place" "mapOffsetH" value
The valid values of this parameter range between -20.0 and 20.0.
The default is 0.
Chapter 8: Placement Parameters
8-42
Example
To specify the horizontal adjustment to placement congestion map
as 10, enter
axSetRealParam "place" "mapOffsetH" 10
mapOffsetV
The mapOffsetV parameter specifies vertical adjustment to
placement congestion map when placer creates it.
Syntax
axSetRealParam "place" "mapOffsetV" value
The valid values of this parameter range between -20.0 and 20.0.
The default is 0.
Example
To specify the vertical adjustment to placement congestion map as
10, enter
axSetRealParam "place" "mapOffsetV" 10
markCellSoftFix
The markCellSoftFix parameter specifies whether magnet place
marks cells under soft blockage as soft-fixed.
mapOffsetV
8-43
Syntax
axSetIntParam "place" "markCellSoftFix" value
Value
Description
0
Magnet place does not mark cells under soft blockage
as soft fixed.
1
Magnet place marks cells under soft blockage as soft
fixed (the default).
Example
To ensure that magnet place does not mark cells under soft blockage
as soft fixed, enter
axSetIntParam "place" "markCellSoftFix" 0
masterPadding
The masterPadding parameter enables or disables master
padding.
Syntax
axSetIntParam "place "masterPadding" value
Value
Description
0
No padding on masters.
1
When set to 1, it allows Astro to
automatically determine the
amount of master padding that
yields the best placement result
(the default).
Chapter 8: Placement Parameters
8-44
Range
To ensure that there is no padding on masters, enter
axSetIntParam "place "masterPadding" 0
maxSorIter
The maxSorIter parameter specifies the termination of SOR
(successive over-relaxation) solver after too many iterations. SOR is
an iterative method for solving linear equations, also known as the
generalized Gauss-Seidel method. The placement and routing
algorithms cost function (that takes into account constraints,
connectivity, wire length, and so on) needs to be minimized and it
utilizes the SOR algorithm in at least one the methods employed by
Astro.
The maxSorIter parameter allows you to control the maximum
number of the iterations. The higher value of parameter will make the
convergent criteria less strict.
Syntax
axSetIntParam "place" "maxSorIter" value
The valid values of this parameter range between 20 and
2147483647. The default is 1000.
Example
To force the termination of SOR solver after 800 iterations, enter
axSetIntParam "place" "maxSorIter" 800
maxSorIter
8-45
minLocalUtil
The minLocalUtil parameter specifies minimum local utilization
for congestion-driven placement.
Syntax
axSetRealParam "place" "minLocalUtil" value
The valid values range between 0.0 and 0.50. The default is 0.280.
Example
To specify minimum local utilization for congestion-driven placement
as 0.370, enter
axSetRealParam "place" "minLocalUtil" 0.370
minMacroGap
The minMacroGap parameter specifies the gap elimination among
macros.
Syntax
axSetIntParam "place" "minMacroGap" value
The valid values of this parameter range between 0 and 20. The
default is 3.
Example
To specify the gap allowed between macros to be 15, enter
axSetIntParam "place" "minMacroGap" 15
Chapter 8: Placement Parameters
8-46
minMacroPad
The minMacroPad parameter specifies the minimum protection
area around macros over macro size 0.05.
Syntax
axSetRealParam "place" "minMacroPad" value
The valid values of this parameter range between 0.0 and 1.0. The
default is 0.05.
Example
To specify the minimum protection area around macros over macro
size 0.07, enter
axSetRealParam "place" "minMacroPad" 0.07
NetlistOpt
The NetlistOpt parameter enables or disables netlist optimization
during timing-driven design placement.
Syntax
axSetIntParam "place" "NetlistOpt" value
Value
Description
0
Disables netlist optimization during timing-driven design placement (the
default).
1
Enables netlist optimization during timing-driven design placement.
minMacroPad
8-47
Example
To enable netlist optimization during timing-driven design placement,
enter
axSetIntParam "place" "NetlistOpt" 1
noCellUnderM0
noCellUnderM1
noCellUnderM2
noCellUnderM3
noCellUnderM4
noCellUnderM5
noCellUnderM6
noCellUnderM7
noCellUnderM8
noCellUnderM9
noCellUnderM10
noCellUnderM11
noCellUnderM12
These parameters enable or disable cell placement under poly
pre-wires and M1 to M12 pre-wires.
Syntax
axSetIntParam "place" "noCellUnderMvalue1" value2
Chapter 8: Placement Parameters
8-48
where value1 is the metal layer number and value2 is the
parameter value.
Value
Description
0
Allow cells placed under poly, M1
to M12 pre-wires.
1
Avoid cells placed under poly, M1
to M12 pre-wires.
Note:
The default values of noCellUnderM1 and noCellUnderM1 is
1. The default value of the other parameters is 0.
Example
To place cells under M2 pre-wires, enter
axSetIntParam "place" "noCellUnderM2" 1
noCellUnderV01
noCellUnderV12
noCellUnderV23
noCellUnderV34
noCellUnderV45
noCellUnderV56
noCellUnderV67
noCellUnderV78
noCellUnderV87
noCellUnderV01 noCellUnderV12 noCellUnderV23 noCellUnderV34 noCellUnderV45 noCellUnderV56
8-49
noCellUnderV98
noCellUnderV1011
noCellUnderV1112
These parameters control whether cells are placed under the
following vias: via0, via12, via23, via34, via45, via56, via67, via 78,
via 87, via98, via1011, and via1112.
Syntax
axSetIntParam "place" "noCellUnderV01" value
Value
Description
0
Enable cells to be placed under vias (the default).
1
Disable cells to be placed under vias.
Example
To disable cells to be placed under via78, enter
axSetIntParam "place" "noCellunderV78" 1
noShortAtM0
noShortAtM1
noShortAtM2
noShortAtM3
noShortAtM4
noShortAtM5
noShortAtM6
noShortAtM7
noShortAtM8
noShortAtM9
Chapter 8: Placement Parameters
8-50
noShortAtM10
noShortAtM11
noShortAtM12
These parameters control whether the short checking is performed
against M0 to M12 pre-wires.
Syntax
axSetIntParam "place" "noShortAtMvalue1" value2
where value1 is the layer number and value2 is the parameter value.
Value
Description
-1
Behavior is the opposite of noCellUnderMx (M0 to M12).
0
Skip short-checking against M0 to M12 pre-wires.
1
Ensure that there is no shorting against M0 to M12 pre-wires.
Note:
The default value of noShortAtM3, noShortAtM4,
noShortAtM5, and noShortAtM6 is 1. The default value is 0
for other parameters.
Example
To ensure that there is no shorting against M6 pre-wires, enter
axSetIntParam "place" "noShortAtM6" 1
noUserSetPinUnderM1
noUserSetPinUnderM2
noUserSetPinUnderM3
noUserSetPinUnderM4
noUserSetPinUnderM1 noUserSetPinUnderM2 noUserSetPinUnderM3 noUserSetPinUnderM4
8-51
noUserSetPinUnderM5
noUserSetPinUnderM6
noUserSetPinUnderM7
noUserSetPinUnderM8
noUserSetPinUnderM9
noUserSetPinUnderM10
noUserSetPinUnderM11
noUserSetPinUnderM12
These parameters enable or disable pin placement under M1 to M12
pre-wires.
Syntax
axSetIntParam "place" "noUserSetPinUnderMvalue1" value2
where, value1 is the layer number and value2 is the parameter
value.
Value
Description
0
Enables pin-placement under M1
to M12 pre-wires (the default).
1
Disables pin-placement under M1
to M12 pre-wires.
Example
To disable pin placement under M10 pre-wires, enter
axSetIntParam "place" "noUserSetPinUnderM10" 1
Chapter 8: Placement Parameters
8-52
oneSMPerIsland
The oneSMPerIsland parameter enables or disables the
connection of the drivers of an island to the same soft macros in
flip-chip designs.
Syntax
axSetIntParam "place" "oneSMPerIsland" value
Value
Description
0
Connects drivers to soft macros
(the default).
1
Drivers in island must connect to
the same soft macro.
Example
To enable connection between drivers in island to same soft macro,
enter
axSetIntParam "place" "oneSMPerIsland" 1
onGrid
The onGrid parameter enables or disables the off-grid via region.
Syntax
axSetIntParam "place" "onGrid" value
Value
Description
0
Enables the off-grid via region (the default).
1
Disables the off-grid via region.
oneSMPerIsland
8-53
Example
To disable the off-grid via region, enter
axSetIntParam "place" "onGrid" 1
optPinHorLayer
The optPinHorlayer parameter controls the horizontal layer of
axgOptimizePinLoc. Horizontal pin layer will be optimized and
changed to the layer number specified by the parameter.
Syntax
axSetIntParam "place" "optPinHorLayer" value
The valid values of this parameter range between 0 and 255. The
default is 1.
Example
To control the horizontal layer of axgOptimizePinLoc, enter
axSetIntParam "place" "optPinHorLayer"
1
optPinVerLayer
The optPinVerlayer parameter controls the vertical layer of
axgOptimizePinLoc. Vertical pin layer will be optimized and
changed to the layer number specified by the parameter.
Syntax
axSetIntParam "place" "optPinVerLayer" value
Chapter 8: Placement Parameters
8-54
The valid values of this parameter range between 0 and 255. The
default is 1.
Example
To control the the vertical layer of axgOptimizePinLoc, enter
axSetIntParam "place" "optPinverLayer"
1
padMacro
The padMacro parameter enables or disables space reservation at
macro proximity.
Syntax
axSetIntParam "place" "padMacro" value
Value
Description
0
No space reservation around
macros.
1
Space reservation at macro
proximity (the default).
Example
To ensure that there is no space reservation around macros, enter
axSetIntParam "place" "padMacro" 0
partUtilMinUpperBound
The partUtilMinUpperBound parameter specifies the minimum
upper bound for partitioning.
padMacro
8-55
Syntax
axSetIntParam "place" "partUtilMinUpperBound" value
The valid values of this parameter range between 0.0 and 0.950. The
default is 0.
Example
To specify the minimum upper bound for partitioning as 0.7, enter
axSetIntParam "place" "partUtilMinUpperBound" 0.7
pinAccessHorz
The pinAccessHorz parameter specifies the pin access blockage
value.
Syntax
axSetRealParam "place" "pinAccessHorz" value
The valid values of this parameter range between 0.0 and 5.0. The
default is 1.5.
Example
To specify the pin access blockage value as 3.5, enter
axSetRealParam "place" "pinAccessHorz" 3.5
pinAccessVert
The pinAccessVert parameter specifies the vertical pin access
blockage value.
Chapter 8: Placement Parameters
8-56
Syntax
axSetRealParam "place" "pinAccessVert" value
The valid values of this parameter range between 0.0 and 5.0. The
default is 1.0.
Example
To specify the vertical pin access blockage value as 4.5, enter
axSetRealParam "place" "pinAccessVert" 4.5
placeFC
The placeFC parameter enables or disables the flip-chip
placement.
Syntax
axSetIntParam "place" "placeFC" value
Value
Description
0
Does not perform the flip-chip
placement (the default).
1
Performs flip-chip placement.
Example
To enable flip-chip placement, enter
axSetIntParam "place" "placeFC" 1
placeFC
8-57
predictPgStackVia
The predictPgStackVia parameter controls whether to predict
the effects of power and ground stacked vias in placement
congestion map even when the stacked vias do not exist.
Syntax
axSetIntParam "place" "predictPgStackVia" value
Value
Description
0
Does not predict predict the effects of power and ground
stacked vias in placement congestion map (the default).
1
Predicts the effects of power and ground stacked vias in
placement congestion map even when the stacked vias do
not exist.
Example
To predict the effects of power and ground stacked vias in placement
congestion map even when the stacked vias do not exist, enter
axSetIntParam "place" "predictPgStackVia" 0
preRouteMergeLimit
The preRouteMergeLimit parameter specifies whether M2 tracks
between the two preroutes should be merged as one for
pin-accessibility check.
Syntax
axSetIntParam "place" "preRouteMergeLimit" value
Chapter 8: Placement Parameters
8-58
The valid values of this parameter range between 0 and 10. The
default is 1.
Example
To merge M2 tracks as six for pin-accessibility check, enter
axSetIntParam "place" "preRouteMergeLimit" 6
preserveCouplingMap
The preserveCouplingMap parameter specifies whether the
coupling map should be preserved if less than N percent placement
has changed.
Syntax
axSetIntParam "place" "preserveCouplingMap" value
The valid values range between 0 and 100. The default is 30.
Example
To preserve the coupling map if less than 40 percent placement has
changed, enter
axSetIntParam "place" "preserveCouplingMap"
40
readPlanGroup
The readPlanGroup parameter specifies whether all plan group
objects should be read.
preserveCouplingMap
8-59
Syntax
axSetIntParam "place" "readPlanGroup" value
Value
Description
0
Does not read plan group objects (the default).
1
Reads all plan group objects
2
Reads fixed plan group objects only (for planning)
Example
To read all plan group objects, enter
axSetIntParam "place" "readPlanGroup" 1
regionConst
The regionConst parameter allows Astro to consider the region
constraints defined in axgCreateRegion and astPlaceOptions
during placement.
Syntax
axSetIntParam "place" "regionConst" value
Value
Description
0
Does not consider any region
constraints (the default).
1 and 2
Considers region constraints
Example
To consider region constraints, enter
axSetIntParam "place" "regionConst" 2
Chapter 8: Placement Parameters
8-60
regRigidity
The regRigidity parameter specifies the region constraints. The
valid values of this parameter range between 1 to 10, with 10 being
the most rigid or hard constraint of the region or group and 1 being
the least rigid. When the value is smaller than 10, the constraints are
relaxed, and therefore, the placement can be optimized based on
connectivity.
Syntax
axSetIntParam "place" "regRigidity" value
The valid values of this parameter range between 1 and 10. The
default is 10.
Example
To specify the region constraint as 6, enter
axSetIntParam "place" "regRigidity" 6
reportECO
The reportECO parameter enables or disables reporting ECO
changes during placement in the text file place.eco.rpt.
regRigidity
8-61
Syntax
axSetIntParam "place" "reportEco" value
Value
Description
0
Does not report ECO changes during
placement in a text file (the default).
1
Reports ECO changes in placement in a text
file.
Example
To report ECO changes in placement in a text file, enter
axSetIntParam "place" "reportEco" 1
restoreFillerSnapShot
The restoreFillerSnapShot parameter controls whether the
filler snapshot is to be restored during filler cell insertion. This option
preserves the original filler cell whenever possible (stores the x, y
coordinates of the filler cells in the design database when filler cells
are deleted) and therefore, the coupling characteristics are
preserved.
Syntax
axSetIntParam "place" "restoreFillerSnapShot" value
Value
Description
0
Does not restore the filler snapshot (the default).
1
Restores the filler snapshot.
Chapter 8: Placement Parameters
8-62
Example
To restore the filler snapshot, enter
axSetIntParam "place" "restoreFillerSnapShot" 1
secondCut
The secondCut parameter specifies the direction of second cut or
specifies that Astro determines the direction.
Syntax
axSetIntParam "place" "secondCut" value
Value
Description
-1
Automatically determines the direction second cut
(the default)
0
Specifies the second cut
1
Specifies the second horizontal cut
Example
To specify the first vertical cut, enter
axSetIntParam "place" "secondCut" 0
seeBus
The seeBus parameter controls whether prerouted nets are
considered as BUS type. This parameter is equivalent to the bus
option in the location constraint section of the AstroPlace options
dialog box (astPlaceOptions).
secondCut
8-63
Syntax
axSetIntParam "place" "seeBus" value
Value
Description
0
Ignores all nets as BUS type (the
default).
1
Considers all nets as BUS type.
Example
To consider all nets as BUS type, enter
axSetIntParam "place" "seeBus" 1
seeClkRing
The seeClkRing parameter controls whether prerouted nets are
considered as Clock Ring type. This parameter is equivalent to the
“clk ring” option in the location constraint section of the
AstroPlace options dialog box (astPlaceOptions).
Syntax
axSetIntParam "place" "seeClkRing" value
Value
Description
0
Ignores CLK net as RING type.
1
Considers CLK net as RING type
(the default)
Chapter 8: Placement Parameters
8-64
Example
To ignore CLK nets as RING type, enter
axSetIntParam "place" "seeClkRing" 0
seeClkStrap
The seeClkStrap parameter controls whether prerouted nets are
considered as clock strap type. This parameter is equivalent to the
“clk strap” option in the location constraint section of the AstroPlace
options dialog box (astPlaceOptions).
Syntax
axSetIntParam "place" "seeClkStrap" value
Value
Description
0
Ignores CLK net as STRAP type .
1
Considers CLK net as STRAP type
(the default).
Example
To ignore CLK net as STRAP type, enter
axSetIntParam "place" "seeClkStrap" 0
seeClkStrap
8-65
seeContactArr
The seeContactArr parameter controls whether prerouted
contact arrays are considered as prerouted nets type. This
parameter is equivalent to the contact array option in the location
constraint section of the AstroPlace options dialog box
(astPlaceOptions).
Syntax
axSetIntParam "place" "seeContactArr" value
Value
Description
0
Ignores all contact arrays (the
default).
1
Considers all contact arrays.
Example
To consider all contact arrays, enter
axSetIntParam "place" "seeContactArr" 1
seePath
The seePath parameter controls whether prerouted nets are
considered as Path type. This parameter is equivalent to the Path
option in the location constraint section of the AstroPlace options
dialog box (astPlaceOptions).
Chapter 8: Placement Parameters
8-66
Syntax
axSetIntParam "place" "seePath" value
Value
Description
0
Ignores all nets as PATH types.
1
Considers all nets as PATH types (the
default).
Example
To ignore all nets as PATH type, enter
axSetIntParam "place" "seePath" 0
seePGPinCon
The seePGPinCon parameter controls controls whether prerouted
nets are considered as PG Pin Connection type. This parameter is
equivalent to the PG Pin Conn option in the location constraint
section of astPlaceOptions.
Syntax
axSetIntParam "place" "seePGPinCon" value
Value
Description
0
Ignores power and ground nets as
PIN CON type.
1
Considers power and ground nets
as PIN CON type (the default).
seePGPinCon
8-67
Example
To ignore power and ground nets as PIN CON type, enter
axSetIntParam "place" "seePGPinCon" 0
seePGRing
The seePGRing parameter controls whether prerouted nets are
considered as PG Ring type. This parameter is equivalent to the PG
Ring option in the location constraint section of the AstroPlace
options dialog box (astPlaceOptions).
Syntax
axSetIntParam "place" "seePGRing" value
Value
Description
0
Ignore power and ground nets nets as RING type.
1
Considers power and ground nets as RING type
(the default).
Example
To ignore power and ground nets as RING type, enter
axSetIntParam "place" "seePGRing" 1
Chapter 8: Placement Parameters
8-68
seePGStrap
The seePGStrap parameter controls whether prerouted nets are
considered as PG strap type. This parameter is equivalent to the PG
Strap option in the location constraint section oof the AstroPlace
options dialog box (astPlaceOptions).
Syntax
axSetIntParam "place" "seePGStrap" value
Value
Description
0
Ignores the power and ground net as STRAP
type.
1
Considers the power and ground net as STRAP
type (the default).
Example
To consider power and ground nets as STRAP type, enter
axSetIntParam "place" "seePGStrap" 0
seeRect
The seeRect parameter controls whether prerouted nets are
considered as Rectangle type. This parameter is equivalent to the
“rect” option in the location constraint section of the AstroPlace
options dialog box (astPlaceOptions).
seePGStrap
8-69
Syntax
axSetIntParam "place" "seeRect" value
Value
Description
0
Ignore all metal rectangles (the default).
1
Consider all metal rectangles.
Example
To consider all metal rectangles, enter
axSetIntParam "place" "seeRect" 0
seeUser
The seeUser parameter controls whether all signal nets are
considered as USER type during standard cells placement. This
parameter is equivalent to the sig.user option in the location
constraint section of the AstroPlace options dialog box
(astPlaceOptions).
Syntax
axSetIntParam "place" "seeUser" value
Value
Description
0
Ignores signal net as USER type
(the default).
1
Considers signal nets as USER
type.
Chapter 8: Placement Parameters
8-70
Example
To consider signal nets as USER type, enter
axSetIntParam "place" "seeUser" 1
skipPrelim
The skipPrelim parameter specifies whether the preliminary plain
placement is skipped during timing-driven optimization.
Syntax
axSetIntParam "place" "skipPrelim" value
The valid values range between -1 and 1. The default is -1.
Example
To skip the preliminary plain placement during timing-driven
optimization, enter
axSetIntParam "place" "skipPrelim" 1
slackTarget
The slackTarget parameter specifies the slack target adjustment.
When the value is entered, the placement optimization tries to
improve the slack timing based on the slack target.
Syntax
axSetIntParam "place" "slackTarget" value
The valid values of this parameter range between -100000.0
and100000.0. The default is 0.
skipPrelim
8-71
Example
To adjust the slack target as 500, enter
axSetIntParam "place" "slackTarget" 500
sortObjByID
The sortObjByID parameter enables or disables object sorting by
DB indices instead of the order of cells, nets and pins in the DB.
Syntax
axSetIntParam "place" "sortObjById" value
Value
Description
0
Does not sort objects by DB indices (the default).
1
Sorts objects by DB indices.
Example
To sort object by DB indices, enter
axSetIntParam "place" "sortObjById" 1
spacingWeight
The spacingWeight parameter specifies the linear factor that
affects cell spacing optimization.
Syntax
axSetRealParam "place" "spacingWeight" value
The valid values range between -1 and 2.0. The default is -1.
Chapter 8: Placement Parameters
8-72
Example
To specify the linear factor that affects cell spacing optimization as 1,
enter
axSetRealParam "place" "spacingWeight" 1
speed
The speed parameter specifies the placement runtime.
Syntax
axSetIntParam "place" "speed" value
Value
Description
0
Super-fast run time
1
Fast run time
2
Medium run time (the default)
3
Slow run time
Example
To set the fast placement runtime, enter
axSetIntParam "place" "speed" 1
strongExclusiveness
The strongExclusiveness parameter controls whether the call
can enter the exclusive region during overlap.
speed
8-73
Syntax
axSetIntParam "place" "strongExclusiveness" value
Value
Description
0
Does not allow the cell to enter exclusive region during overlap
(the default).
1
Allows the cell to enter exclusive region during overlap.
Example
To allow the cell enter exclusive region during overlap, enter
axSetIntParam "place" "strongExclusiveness"
1
summary
The summary parameter controls whether short or long version of
placement summary should be printed.
Syntax
axSetIntParam "place" "summary" value
Value
Description
0
Prints the long version of
placement summary.
1
Prints the short version of the
placement summary (the default).
Example
To print the long version of placement summary, enter
axSetIntParam "place" "summary" 0
Chapter 8: Placement Parameters
8-74
thermConduct
The thermConduct parameter specifies thermal conductivity
considering the silicon material and packaging.
Syntax
axSetRealParam "place" "thermConduct" value
The valid values of this parameter range between 0.001 to 1000. The
default is 9.820.
Example
To specify thermal conductivity considering the silicon material and
packaging as 800, enter
axSetRealParam "place" "thermConduct" 800
timingDriven
The timingDriven parameter specifies timing optimization during
placement.
Syntax
axSetIntParam "place" "timingDriven" value
Value
Description
0
No timing-driven optimization (the
default).
1
Optimizes timing during
placement.
thermConduct
8-75
Example
To optimize timing during placement, enter
axSetIntParam "place" "timingDriven" 1
timingWeight
The timingWeight parameter specifies the timing weight.
Syntax
axSetIntParam "place" "timingWeight" value
The valid values range between 1 and 10. The default is 5.
Example
To specify the timing weight as 5, enter
axSetIntParam "place" "timingWeight" 5
triNetWeight
The triNetWeight parameter specifies the weight of all tri-state
nets. A net weight is respected throughout the placer. A net weight
of 2 is twice as important as a net weight of 1, that is, a net weight 2
is equivalent to 2 nets of weight 1.
Syntax
axSetIntParam "place" "triNetWeight" value
The valid values of this parameter range between 0 and 100. The
default is 0.
Chapter 8: Placement Parameters
8-76
Example
To specify the weight of all tri-state nets as 50, enter
axSetIntParam "place" "triNetWeight" 50
unitTileOrient
The unitTileOrient parameter specifies the unit tile orientation.
Cells will be placed based on the specified parameter
unitTileOrient during the placement.
Syntax
axSetIntParam "place" "unitTileOrient" value
Value
Description
-1
Auto (the default)
0
Vertical.
1
Horizontal
Example
To specify the orientation of unit tiles as vertical, enter
axSetIntParam "place" "unitTileOrient" 0
useDHCell
The useDHCell parameter controls whether double cells are used
during optimization.
unitTileOrient
8-77
Syntax
axSetIntParam "place" "useDHCell" value
Value
Description
0
Does not use double cells in optimization (the
default).
1
Allows double cells in optimization.
Example
To allow double cell usage during optimization, enter
axSetIntParam "place" "useDHCell" 1
verIOPinLayer
The verIOPinLayer parameter specifies I/O pin placement by DB
layer.
Syntax
axSetIntParam "place" "verIOPinLayer" value
The valid values of this parameter range between -1 and 255. The
default is -1.
Example
To place I/O pins by DB layer, enter
axSetIntParam "place" "verIOPinLayer" 130
Chapter 8: Placement Parameters
8-78
voltDriven
The voltDriven parameter enables or disables IR drop
optimization during placement.
Syntax
axSetIntParam "place" "voltDriven" value
Value
Description
0
No voltage-driven placement (the default).
1
Optimizes IR drop during placement.
Example
To optimize IR drop during placement, enter
axSetIntParam "place" "vddOnTop" 1
windowOV
The windowOV parameter enables or disables the windows-based
overlap.
Syntax
axSetIntParam "place" "windowOV" value
Value
Description
0
Uses regular overlap (the default).
1
Uses window-based overlap.
voltDriven
8-79
Example
To enable windows-based overlap, enter
axSetIntParam "place" "windowOV" 1
Chapter 8: Placement Parameters
8-80
9
Rectilinear Parameters
9
You use rectlinear parameters to fine-tune the floorplan settings.
Table 9-1 summarizes rectilinear parameters specific to Astro.
Detailed descriptions of the parameters follow in alphabetical order
Table 9-1
Rectilinear Parameters Summary
Parameter
Description
allowMovePG
Controls movement of power and ground
pins on a rectilinear design.
controlparameter
Specifies the shape of a floorplan.
core2Bottom
Specifies the distance between the bottom
side of the core and top side of the
boundary.
core2Left
Specifies the distance between the left side
of the core and right side of the boundary.
9-1
Table 9-1
Rectilinear Parameters Summary (Continued)
Parameter
Description
core2Right
Specifies the distance between the right
side of the core and left side of the
boundary.
core2Top
Specifies the distance between the top side
of the core and bottom side of the
boundary.
doubleBack
Controls double-back mode, in which the
core contains pairs of cell rows, with one
row in each pair flipped.
flipfirst
Used in double-back mode; determines
whether to flip a row at the bottom of a
horizontal core area or the left side of a
vertical core area.
forceTrackAlignment
When set to 1, forces the alignment of
tracks in double-back mode.
lengthMode
Used to calculate the core utilization on a
rectilinear design.
macros
Controls movement of macros.
rotation
Used to rotate a rectilinear object
clockwise.
rowDirction
Sets the row direction as horizontal or
vertical.
rowRatio
Specifies the amount of channel space that
needs to be provided for routing between
the cell rows.
rpinECO
Controls ECO mode for rectilinear pin
placement.
Chapter 9: Rectilinear Parameters
9-2
Table 9-1
Rectilinear Parameters Summary (Continued)
Parameter
Description
startfirst
Used in double-back mode; determines
whether to put a pair of rows at the bottom
of a horizontal core area or left side of a
vertical core area.
stdcells
Controls movement of standard cells.
utilization
Sets the core utilization area for cell
placement.
9-3
allowMovePG
The allowMovePG parameter controls the movement of power and
ground pins on a rectilinear design.
Usage
To move power and ground pins, enter the following:
axSetIntParam "rectilinear" "allowMovePG" 1
When set to 0, the power and ground pins are not moved.
Range
The valid values are 0 or 1. The default is 0.
controlparameter
The controlparameter parameter specifies the shape of a
floorplan.
Usage
To add an L-shaped rectilinear object, enter the following:
axSetIntParam "rectilinear" "controlparameter" 1
Range
The valid values of this parameter range between 1 and 5. The
default is 1.
Chapter 9: Rectilinear Parameters
9-4
Table 9-2 lists the valid values of controlparameter and their
associated shapes.
Table 9-2
Valid Values of controlparameter
Value
Description
1
L shape
2
T shape
3
U shape
4
Cross shape
5
Boundary (user’s boundary shape)
core2Bottom
The core2Bottom parameter specifies the distance between the
bottom side of the core and top side of the boundary.
Usage
To specify the distance between the bottom side of the core and top
side of the boundary, use the following syntax:
axSetRealParam "rectilinear" "core2Bottom" 10.000
Range
The valid values of this parameter range between 0.0 and 100000.0.
The default is 10.0.
core2Bottom
9-5
core2Left
The core2Left parameter specifies the distance between the left
side of the core and right side of the boundary.
Usage
To specify the distance between the left side of the core and right
side of the boundary, use the following syntax:
axSetRealParam "rectilinear" "core2Left" 10.000
Range
The valid values of this parameter range between 0.0 and 100000.0.
The default is 10.0.
core2Right
The core2Right parameter specifies the distance between the
right side of the core and left side of the boundary.
Usage
To specify the distance between the right side of the core and left
side of the boundary, use the following syntax:
axSetIntParam "rectilinear" "core2Right" 10.000
Range
The valid values of this parameter range between 0.0 and 100000.0.
The default is 10.0.
Chapter 9: Rectilinear Parameters
9-6
core2Top
The core2Top parameter specifies the distance between the top
side of the core and bottom side of the boundary.
Usage
To specify the distance between the top side of the core and bottom
side of the boundary, use the following syntax:
axSetRealParam "rectilinear" "core2Top" 10.000
Range
The valid values of this parameter range between 0.0 and 100000.0.
The default is 10.0.
doubleBack
The doubleBack parameter is set when you want the core to
contain pairs of cell rows, with one row in each pair flipped.
Usage
If you want the core to contain pairs of cell rows, with one row in each
pair flipped, enter the following:
axSetIntParam "rectilinear" "doubleBack" 1
When set to 0, the double back is not set.
Range
The valid values are 0 or 1. The default is 0.
core2Top
9-7
flipfirst
The flipfirst parameter is used if you selected Double Back and
want a flipped row at the bottom of a horizontal core area or left side
of a vertical core area.
Usage
If you selected Double Back and want a flipped row at the bottom of
a horizontal core area or left side of a vertical core area, enter the
following:
axSetIntParam "rectilinear" "flipfirst" 1
Set it to 0 when you want an unflipped row at the bottom of a
horizontal core area or left side of a vertical core area.
Range
The valid values are 0 or 1. The default is 0.
forceTrackAlignment
When set to 1, the forceTrackAlignment parameter forces the
alignment of tracks in double-back mode.
Usage
To force track alignment, enter the following:
axSetIntParam "rectilinear" "forceTrackAlignment" 1
When set to 0, there is no track alignment in double-back mode.
Chapter 9: Rectilinear Parameters
9-8
Range
The valid values are 0 or 1. The default is 0.
lengthMode
The lengthMode parameter is used to calculate the core utilization
on a rectilinear design.
Usage
To calculate the core utilization on a rectilinear design, enter the
following:
axSetIntParam "rectilinear" "lengthMode" 0
When set to 1, the true size value is used.
Range
The valid values are 0 or 1. The default is 0.
macros
The macros parameter controls movement of macros.
Usage
To turn on macro movement, enter the following:
axSetIntParam "rectilinear" "macros" 0
When set to 1, macro movement is turned off.
lengthMode
9-9
Range
The valid values are 0 or 1. The default is 0.
rotation
The rotation parameter rotates a rectilinear object.
Usage
To rotate a rectilinear object by 90 degrees, enter the following:
axSetIntParam "rectilinear" "rotation" 1
When set to 0, the rectilinear object is not rotated.
Range
The valid values of this parameter range between 0 and 3. The
default is 0.
Table 9-3 lists the valid values of rotation parameter with their
description.
Table 9-3
Valid Values of the rotation Parameter
Value
Description
0
Rotation is 0 degree
1
Rotation is 90 degree
2
Rotation is 180 degree
3
Rotation is 270 degree
Chapter 9: Rectilinear Parameters
9-10
rowDirction
The rowDirction parameter sets the row direction as horizontal or
vertical.
Usage
To set the row direction as horizontal, enter the following:
axSetIntParam "rectilinear" "rowDirction" 0
When set to 1, the row direction is set as vertical.
Range
The valid values are 0 or 1. The default is 0.
rowRatio
The rowratio parameter specifies the amount of channel space
that needs to be provided for routing between cell rows. The smaller
the number, the more space Astro leaves for routing channels.
Usage
To indicate the amount of channel space that needs to be provided
for routing between the cell rows, enter the following:
axSetRealParam "rectilinear" "rowRatio" 0.00
When set to 1, no routing channel space is left.
Range
The valid values range from 0.0 to 1.0. The default is 1.0.
rowDirction
9-11
rpinECO
The rpinECO parameter controls ECO mode for rectilinear pin
placement.
Usage
To turn on ECO mode for rectilinear pin placement, enter the
following:
axSetIntParam "rectilinear" "rpinECO" 1
When set to 0, ECO mode is turned off during rectilinear pin
placement.
Range
The valid values are 0 or 1. The default is 0.
startfirst
The startfirst parameter is used if you selected Double Back
and want a pair of rows at the bottom of a horizontal core area or left
side of a vertical core area.
Usage
If you want a pair of rows at the bottom of a horizontal core area or
left side of a vertical core area, enter the following:
axSetIntParam "rectilinear" "startfirst" 1
Set it to 0, if you want a single row at the bottom of a horizontal core
area or left side of a vertical core area.
Chapter 9: Rectilinear Parameters
9-12
Range
The valid values are 0 or 1. The default is 1.
stdcells
The stdcells parameter controls movement of standard cells.
Usage
To move standard cells, enter the following:
axSetIntParam "rectilinear" "stdcells" 0
When set to 1, standard cell movement is turned off.
Range
The valid values are 0 or 1. The default is 0.
utilization
The utilization parameter specifies the core utilization area for
cell placement, as a ratio of the total cell area (standard and macro
cells) to the core area.
Usage
To set the set the smallest core utilization area value for cell
placement, enter the following:
axSetRealParam "rectilinear" "utilization" 0.0
When set to 1, the highest core utilization value is set.
stdcells
9-13
Range
The valid values of this parameter range between 0.0 and 1.0. The
default is 0.8.
Chapter 9: Rectilinear Parameters
9-14
10
Timing Parameters
10
You use timing parameters to fine-tune the timing results of your
design. After optimizing a design, you can generate reports to
analyze your timing, area, and component selection results. When
you study the reports, note any constraint violations in the design.
You might have to apply different placement and routing techniques
to improve the design’s timing results.
Table 10-1 summarizes the timing parameters specific to Astro.
Detailed descriptions of the parameters follow in alphabetical order
Table 10-1 Timing Parameters Summary
Parameter
Description
all_macro_as_VR_block
Determines whether a macro that is
not blocked on all the metal layers is
treated as a virtual route blockage.
10-1
Table 10-1 Timing Parameters Summary (Continued)
Parameter
Description
ata_crp_transition
Determines how the clock
reconvergence pessimism value is
computed in the event of a mismatch at
a common point.
ata_crpr_threshold_ps
Specifies the amount of pessimism
that CRPR is allowed to leave in the
timing report.
capture_path_propagate_worst_slew
Used for improved correlation with
PrimeTime under bc_wc timing
analysis.
case_analysis_disable_entire_path
Determines whether only the last edge
is disabled or all the edges are
disabled along a path where a constant
is propagated.
case_analysis_sequential_propagation
Determines whether case analysis is
propagated across sequential cells.
clock_cell_has_multiple_edge
Reduces the clock traverse time for
reconvergent clock networks.
clock_gating_propagate_enable
Determines whether the gating enable
signal delay and slew propagate
through the gating cell.
disable_cond_default_arcs
Enables or disables the default
nonconditional timing arcs between
pins that have conditional arcs.
driving_cell_include_cell_delay
Determines whether to include or
ignore the cell delay of a driving cell in
the timing path delay.
early_launch_at_borrowing_latches
When set to 1, removes clock latency
pessimism from the launch times for
paths that begin at the data pins of
transparent latches.
Chapter 10: Timing Parameters
10-2
Table 10-1 Timing Parameters Summary (Continued)
Parameter
Description
group_path_opt
Enables or disables optimization by
path group.
late_recycle_memory
Helps tuning the memory usage during
timing analysis.
max_RG_size_multiplier
Controls the minimum size of route
guides considered by virtual route for
RC estimation.
multicycle_hold_follow_setup
Determines whether multicycle path
exceptions defined on setup
relationships affect the hold
relationship.
non_unate_clock_compatibility
Controls the clock sense considered
for analysis in a non-unate clock
network.
print_Clock_Timing_For_Mixed_Edges
Controls whether delay and transition
values of clock path or data path is
reported for mixed-signal edges in
report_delay calculation and SDF
output.
pulse_latch_as_ICG_cell
Determines whether to consider the
pulse latch cell as an integrated clock
gating cell.
rc_degrade_min_slew_when_rd_less_t
han_rnet
Enables or disables slew degradation
through the RC network in minimum
analysis when the library-derived drive
resistance is significantly less than
dynamic RC network impedance to
ground.
remove_Escape_From_Bus
Controls the filtering of backslash in a
bus name while exporting SDF.
10-3
Table 10-1 Timing Parameters Summary (Continued)
Parameter
Description
report_timing_through_sync_pin
Used in JupiterXT during clock
planning. It controls the clock
propagation beyond sync pin.
rpt_max_cap_multiplier
Determines the maximum capacitance
constraint considered by
astReportTiming to report maximum
capacitance violations.
rpt_max_tran_multiplier
Determines the maximum transition
constraint considered by
astReportTiming to report maximum
transition violations.
rpt_min_cap_multiplier
Determines the minimum capacitance
constraint considered by
astReportTiming to report minimum
capacitance violations.
rpt_min_tran_multiplier
Determines the minimum transition
constraint considered by
astReportTiming to report minimum
transition violations.
splitEK
Determines whether to split the
extraction kernel during timing
analysis.
Chapter 10: Timing Parameters
10-4
all_macro_as_VR_block
The all_macro_as_VR_block parameter determines whether a
macro that is not blocked on all the metal layers is treated as a virtual
route blockage.
Usage
To consider all macros as virtual route blockages even if they do not
block all metal layers, enter the following:
axSetIntParam "ata" "all_macro_as_VR_block" 1
If set to 0, macros that do not block all the metal layers are not
treated as blockages.
Range
The valid values are 0 or 1. The default is 0.
ata_crp_transition
The ata_crp_transition parameter determines how the clock
reconvergence pessimism value is computed depending upon the
transition sense at common point.
Usage
To use the minimum of rise and fall clock reconvergence pessimism
values in the event of a mismatch at a common point, enter the
following:
axSetIntParam "ata" "ata_crp_transition" 0
all_macro_as_VR_block
10-5
When set to 1, zero-clock reconvergence pessimism is used in the
event of a mismatch.
Range
The valid values are 0 (normal) or 1(same_transition). The
default is 0.
Equivalent PrimeTime Parameter
The equivalent PrimeTime parameter is
timing_clock_reconvergence_pessimism.
ata_crpr_threshold_ps
The ata_crpr_threshold_ps parameter specifies amount of
pessimism that CRPR is allowed to leave in the timing report. This
parameter is measured in picoseconds (ps), regardless of the main
library units.
The larger the value, the faster the runtime when CRPR is active.
The recommended setting is about one half of the stage (gate plus
net) delay of a typical stage in the clock network. This value provides
a reasonable trade-off between accuracy and runtime in most cases.
You might want to use large values during the design phase and
small values during signoff. Experiment and try a different value
when moving to a different technology.
Usage
To specify the amount of pessimism that CRPR is allowed to leave
in a report, enter the following:
axSetRealParam "ata" "ata_crpr_threshold_ps" 20.000
Chapter 10: Timing Parameters
10-6
Range
The valid values of this parameter range between 1.0 and
99999996802856924650656260769173209088.000. The default is
20.0. The threshold values range between 1 and 1e+38
picoseconds.
Equivalent PrimeTime Parameter
The equivalent PrimeTime parameter is
timing_crpr_threshold_ps.
capture_path_propagate_worst_slew
The capture_path_propagate_worst_slew parameter is used
for improved correlation with PrimeTime under bc_wc timing
analysis. It controls the propagation of worst slew at merge points in
the capture clock path.
Usage
To improve correlation with PrimeTime under bc_wc timing analysis,
enter the following:
axSetIntParam "ata" "capture_path_propagate_worst_slew" 0
Range
The valid values are 0 or 1. The default is 1.
During bc_wc timing analysis, when the parameter is set to the
default value at slew merge points along the capture clock path,
Astro propagates the worst slew (fastest slew during max delay
capture_path_propagate_worst_slew
10-7
analysis and slowest slew in minimum delay analysis) forward. This
makes the analysis in Astro pessimistic when compared to
PrimeTime.
Set this parameter to 0 to correlate with PrimeTime.
case_analysis_disable_entire_path
The case_analysis_disable_entire_path parameter
determines whether only the last edge is disabled or all the edges
are disabled along a path where a constant is propagated.
Usage
axSetIntParam "ata" "case_analysis_disable_entire_path" 0
By default, when the parameter is set to 0, only the last edge is
disabled. So before disabled edges, the entire transition time can
inherit the transition time from the previous stage, making the value
more accurate. Consequently, Astro fixes more maximum-transition
violations.
When the parameter is set to 1, it disables all those edges along the
path until the constant does not affect the design anymore. It means
that all affected edges along the path are disabled. So, timing
information cannot propagate through those timing arcs. Therefore,
both arrival time and slope values are affected.
If an arc is disabled, both arrival time and transition time are not
propagated through the arc.
Range
The valid values are 0 or 1. The default is 0.
Chapter 10: Timing Parameters
10-8
case_analysis_sequential_propagation
The case_analysis_sequential_propagation parameter
determines whether case analysis is propagated across sequential
cells.
Usage
To enable case analysis constants to propagate across sequential
cells, enter the following:
axSetIntParam "ata" \
"case_analysis_sequential_propagation" 1
By default, case analysis is not propagated across sequential cells.
Range
The valid values are 0 or 1. The default is 0.
Equivalent PrimeTime Parameter
The equivalent PrimeTime parameter is
case_analysis_sequential_propagation
clock_cell_has_multiple_edge
The clock_cell_has_multiple_edge parameter reduces the
clock traverse time for reconvergent clock networks.
Astro supports this parameter starting from version Y-2006.06-SP3.
case_analysis_sequential_propagation
10-9
Usage
To reduce the clock traverse time for reconvergent clock networks,
enter the following:
axSetIntParam "ata" "clock_cell_has_multiple_edge" 1
Range
The valid values are 0 or 1. The default is 0.
clock_gating_propagate_enable
The clock_gating_propagate_enable parameter controls
whether the delay and slew of the clock signal or the gating signal is
propagated to the output of a cell, where clock gating occurs.
Usage
By default, when the parameter is set to 1, Astro propagates the
delay and slew of the gating signal. Setting the parameter to 1 is
recommended when the output of the gating cell goes to a data pin.
To allow the delay and slew from the clock line set the parameter to
0:
axSetIntParam "ata" "clock_gating_propagate_enable" 0
Setting the parameter to 0 produces the most desirable behavior
when the output goes to a clock pin of a sequential cell.
Range
The valid values are 0 or 1. The default is 1.
Chapter 10: Timing Parameters
10-10
Equivalent PrimeTime Parameter
The equivalent PrimeTime parameter is
timing_clock_gating_propagate_enable.
disable_cond_default_arcs
The disable_cond_default_arcs parameter enables or
disables the default nonconditional timing arcs between pins that
have conditional arcs.
Usage
To disable nonconditional timing arcs between any pair of pins that
have at least one conditional arc, enter the following:
axSetIntParam "ata" "disable_cond_default_arcs" 1
When the specified conditions cover all possible state-dependent
delays, so that the default arc is of no use, set this parameter to 1.
When set to 0, the nonconditional timing arcs are not disabled.
Range
The valid values are 0 or 1. The default is 0.
Equivalent PrimeTime Parameter
The equivalent PrimeTime parameter is
timing_disable_cond_default_arcs.
disable_cond_default_arcs
10-11
driving_cell_include_cell_delay
The driving_cell_include_cell_delay parameter
determines whether to include or ignore the cell delay of a driving cell
in the timing path delay.
Usage
To include the cell delay of a driving cell in the timing path delay,
enter the following:
axSetIntParam "ata" "driving_cell_include_cell_delay" 1
When set to 0, the cell delay of a driving cell is ignored in the timing
path delay.
Range
The valid values are 0 or 1. The default is 1.
early_launch_at_borrowing_latches
When set to 1, the early_launch_at_borrowing_latches
parameter removes clock latency pessimism from the launch times
for paths that begin at the data pins of transparent latches. This
parameter is turned off when clock reconvergence pessimism
removal (CRPR) is enabled.
Sometimes there is a difference between launching and capturing
clock latencies, either due to reconvergent paths in the clock network
or different minimum and maximum delays of cells in the clock
Chapter 10: Timing Parameters
10-12
network. For setup paths, Astro uses the late value to launch and the
early value to capture. This achieves the tightest constraint and
avoids optimism.
However, for paths starting from latch data pins (latches where time
borrowing has occurred and that are in transparent phase), this is
pessimistic since data simply passes through and therefore does not
even observe the clock edge at the latch. The
early_launch_at_borrowing_latches parameter can be
used to eliminate such pessimism by using the early clock latency to
launch such paths.
Usage
Set this parameter to 1 to use early clock latency for launching setup
paths starting from the data pin of latches. The syntax is
axSetIntParam "ata" "early_launch_at_borrowing_latches" 1
When set to 0, late clock latency is used to launch all setup paths in
the design.
This form of pessimism removal is recommended because it does
not cause the runtime of analysis to increase. CRPR may not be
applied to paths that have been launched using an early latency or
the results may be optimistic. Because CRPR is a more
sophisticated and accurate means of pessimism removal, Astro
turns off this parameter when CRPR is turned on.
Range
The valid values are 0 or 1. The default is 1.
early_launch_at_borrowing_latches
10-13
Equivalent PrimeTime Parameter
The equivalent PrimeTime parameter is
timing_early_launch_at_borrowing_latches.The default
is 1.
group_path_opt
The group_path_opt parameter controls optimization by path
group.
Usage
To enable optimization by path group, enter the following:
axSetIntParam "ata" "group_path_opt" 1
When set to 0, the optimization by path group is disabled.
Range
The valid values are 0 or 1. The default is 1.
late_recycle_memory
The late_recycle_memory parameter helps tuning the memory
usage during timing analysis.
The default value of this parameter is 1. By default, it brings about
memory reduction by recycling of memory.
Try setting the parameter to 0 to check if further memory reduction
can be obtained. Do not set it to 0 if CRPR is turned on or if there are
lot of clocks in the design.
Chapter 10: Timing Parameters
10-14
Usage
The late_recycle_memory parameter, by default, brings memory
reduction by recycling the memory. To check if further memory
reduction can be obtained, enter the following:
axSetIntParam "ata" late_recycle_memory" 0
Range
The valid values are 0 or 1. The default is 1.
max_RG_size_multiplier
The max_RG_size_multiplier parameter controls the minimum
size of the route guides considered by virtual route for RC
estimation. This parameter is used only for virtual routing and does
not affect the routing behavior.
Virtual route is used to estimate preroute RC and therefore should
consider large route guides only. Small route guides are not useful to
virtual route because their effect on RC estimation is negligible.
If you process small route guides, it results in CPU and memory
wastage. Regardless of what is done in virtual route, both large and
small route guides are handled by the router.
Usage
By default, a route guide that is smaller than two row heights is
ignored by the virtual route. To set the row height of the route guide
as 2, enter the following:
axSetRealParam "ata" "max_RG_size_multiplier" 2.0
max_RG_size_multiplier
10-15
Range
The valid values of this parameter range between 0.0 and 5.0. The
default is 2.0.
multicycle_hold_follow_setup
The multicycle_hold_follow_setup parameter determines
whether multicycle path exceptions defined on setup relationships
affect the hold relationship.
Changing the setup relationship implicitly changes the hold
relationship because all hold relationships are based on valid setup
relationships. Astro verifies that the data launched by setup launch
edge is not captured by the previous capture edge.
Usage
To specify that multicycle path exceptions defined on setup
relationships affect the hold relationship, enter the following:
axSetIntParam "ata" "multicycle_hold_follow_setup" 1
When set to 0, the setup relationship does not affect the hold
relationship.
Range
The valid values are 0 or 1. The default is 1.
Chapter 10: Timing Parameters
10-16
non_unate_clock_compatibility
The non_unate_clock_compatibility parameter controls the
clock sense considered for analysis in a non-unate clock network.
Usage
To consider only the noninverting sense of the clock, enter the
following:
axSetIntParam "ata" "non_unate_clock_compatibility" 1
When set to 0, both the inverting sense and noninverting sense of
the clock are analyzed simultaneously.
Range
The valid values are 0 or 1. The default is 1.
Equivalent PrimeTime Parameter
The equivalent PrimeTime parameter is
timing_non_unate_clock_compatibility.
print_Clock_Timing_For_Mixed_Edges
The print_Clock_Timing_For_Mixed_Edges controls whether
it is the clock path or the datapath whose delay and transition values
are reported for mixed signal edges in the report_delay
calculation and SDF output. This parameter affects report delay
calculation and SDF export.
non_unate_clock_compatibility
10-17
Usage
To obtain the clock path value report, enter the following:
axSetIntParam "ata" "print_Clock_Timing_For_Mixed_Edges" 1
Set the parameter to 0 to obtain the datapath report.
Range
The valid values are 0 or 1. The default is 0.
pulse_latch_as_ICG_cell
The pulse_latch_as_ICG_cell parameter determines whether
the pulse latch cell is considered as an integrated clock gating cell.
This parameter controls the tracing through the pulse latch.
Usage
To specify the pulse latch cell as an integrated clock-gating cell,
enter the following:
axSetIntParam "ata" "pulse_latch_as_ICG_cell" 1
By default, the pulse latch cell is not considered as an integrated
clock gating cell.
Range
The valid values are 0 or 1. The default is 0.
Chapter 10: Timing Parameters
10-18
rc_degrade_min_slew_when_rd_less_than_rnet
The rc_degrade_min_slew_when_rd_less_than_rnet
parameter enables or disables slew degradation through the RC
network in minimum analysis when the library-derived drive
resistance is significantly less than the dynamic RC network
impedance to ground.
Usage
To perform slew degradation in minimum analysis mode, enter the
following:
axSetIntParam "ata"\
"rc_degrade_min_slew_when_rd_less_than_rnet" 1
By default, when the value is 0, Astro does not degrade the transition
for minimum delay computation on affected nets.
Range
The valid values are 0 or 1. The default is 0.
Equivalent PrimeTime Parameter
The equivalent PrimeTime parameter is
rc_degrade_min_slew_when_rd_less_than_rnet
remove_Escape_From_Bus
The remove_Escape_From_Bus parameter is used to control the
filtering of backslash in a bus name while exporting SDF.
rc_degrade_min_slew_when_rd_less_than_rnet
10-19
Usage
To filter out backslashes (used as escape characters) from a bus
name while exporting SDF, enter the following:
axSetIntParam "ata" "remove_Escape_From_Bus" 1
By default, Astro writes out backslash for buses in SDF, for example,
A\/\\B\[2\]/C.
To avoid inconsistencies with the Verilog file written out of Astro and
consequent issues during mapping in PrimeTime, use this
parameter to prevent the backslash from being written out, for
example, A/\B[2]/C.
Range
The valid values are 0 or 1. The default is 0.
report_timing_through_sync_pin
The report_timing_through_sync_pin parameter is used in
JupiterXT during clock planning. This parameter controls clock
propagation beyond the synchronous pin.
Usage
To turn on the propagation at synchronous pin, enter the following:
axSetIntParam "ata" "report_timing_through_sync_pin" 1
When set to 0, the clock propagation stops at synchronous pin.
Range
The valid values are 0 or 1. The default is 1.
Chapter 10: Timing Parameters
10-20
rpt_max_cap_multiplier
The rpt_max_cap_multiplier parameter determines the
maximum capacitance constraint considered by
astReportTiming to report maximum capacitance violations.
Usage
axSetRealParam "ata" "rpt_max_cap_multiplier" 1.050
The maximum capacitance constraint multiplied by this factor is
taken as the constraint for reporting maximum capacitance
violations.
Range
The valid values of this parameter range between 0.5 and 10.0. The
default is 1.050.
rpt_max_tran_multiplier
The rpt_max_tran_multiplier parameter determines the
maximum transition constraint considered by astReportTiming to
report maximum transition violations.
Usage
axSetRealParam "ata" "rpt_max_tran_multiplier" 1.050
The maximum transition constraint multiplied by this factor is taken
as a constraint for reporting the maximum transition violations.
rpt_max_cap_multiplier
10-21
Range
The valid values of this parameter range between 0.5 and 10.0. The
default is 1.050.
rpt_min_cap_multiplier
The rpt_min_cap_multiplier parameter determines the
minimum capacitance constraint considered by astReportTiming
to report minimum capacitance violations.
Usage
axSetRealParam "ata" "rpt_min_cap_multiplier" 1.050
Minimum capacitance constraint multiplied by this factor is taken as
a constraint for reporting the minimum capacitance violations.
Range
The valid values of this parameter range between 0.5 and 10.0. The
default is 1.050.
rpt_min_tran_multiplier
The rpt_min_tran_multiplier parameter determines the
minimum transition constraint considered by astReportTiming to
report minimum transition violations.
Usage
axSetRealParam "ata" "rpt_min_tran_multiplier" 1.050
Chapter 10: Timing Parameters
10-22
The minimum transition constraint multiplied by this factor is taken as
a constraint for reporting the minimum transition violations.
Range
The valid values of this parameter range between 0.5 and 10.0. The
default is 1.050.
splitEK
The splitEK parameter determines whether to split the extraction
kernel during timing analysis. Splitting the process reduces peak
memory used by Astro.
Usage
To split the extraction kernel, enter the following:
axSetIntParam "ata" "splitEK" 1
When set to 0, the extraction kernel is not split.
When the splitEK parameter is used together with another
parameter, for example, splitThreshold, it tells the tool when to
split the extraction kernel process.
axSetIntParam "ek" "splitThreshold" 150000
;; range [0,1000000], default=150000;
In the above example, the extraction kernel process is split after the
number of instances in a design exceeds 150000.
Range
The valid values are 0 or 1. The default is 1.
splitEK
10-23
Chapter 10: Timing Parameters
10-24
11
Track Assignment Parameters
11
You use the track assignment parameters to fine-tune the track
assignment process. Track assignment specifies which tracks within
each global routing cell are to be used for each net. After track
assignment finishes all nets are routed, but not very carefully. There
are many violations, particularly where the routing connects to the
pins. The detail router works to correct the violations.
Table 11-1 summarizes track assignment parameters specific to
Astro. Detailed descriptions of the parameters follow in alphabetical
order.
11-1
Table 11-1 Track Assignment Parameters Summary
Parameter
Description
densityDriven
Specifies the mode of density driven for track
assignment.
evenSpaceAdjustment
Specifies the mode for cost calculation of wire
spreading.
m n LayerLengthLimit
Specifies the length limitation per layer; <n> is
replaced by number 0 – 12.
minimizeJog
Specifies the mode to minimize jogs.
netLayerLengthLimit
Specifies net length limit on defined layers.
noiseThreshold
Specifies the noise threshold for track assignment.
noOffGridRouting
Specifies the switch for off-grid routing on macro
pins.
parallelLimit
Specifies parallel length limit.
parallelLimitMode
Specifies the mode to break long wire for parallel
length.
runTimeMode
Specifies the runtime mode for track assignment
phases.
runTimingMode
Specifies the mode for timing-driven track
assignment.
runXTalkIter
Specifies the number of extra crosstalk iterations.
runXTalkMode
Enables or disables the crosstalk mode during
track assignment.
timingCost
Specifies the cost for timing optimization.
tryGlobalLayerFirst
Specifies the mode to use global layer first
Chapter 11: Track Assignment Parameters
11-2
Table 11-1 Track Assignment Parameters Summary (Continued)
Parameter
Description
tryGlobalLayerOnly
Specify the mode to only use global layer in track
assignment
variableWidthAdjustment
Specifies the width adjustment for fat wire tracks
XTalkParam
Specifies the cost for crosstalk in track assignment
densityDriven
The densityDriven parameter specifies the mode of density
driven for track assignment.
Syntax
axSetIntParam "trackAssign" "densityDriven" value
Value
Description
-1
Tries to spread wires looking at one extra track if timing or crosstalk is
enabled (the default)
0
Does not perform spreading
1
Tries to spread wires looking at one extra track
2
Should only be set when design is lower than 60% utilization because
this will use more CPU. Misusing this when design is not sparse can
cause negative impact.
Example
To spread wires looking at one extra track, enter
axSetIntParam "trackAssign" "densityDriven" 1
densityDriven
11-3
evenSpaceAdjustment
The evenSpaceAdjustment parameter specifies the mode of cost
calculation for wire spreading.
Syntax
axSetIntParam "trackAssign" "evenSpaceAdjustment" value
Value
Description
1
Tries every track sequentially.
2
Tries every other track first (the default)
3
Tries every third track first
Example
To try every third track first, enter
axSetIntParam "trackAssign" "evenSpaceAdjustment" 3
m n LayerLengthLimit
The mn LayerLengthLimit parameter is used to specify length
limitation per layer. The number n is replaced by number 0 to 12.
Syntax
axSetIntParam "trackAssign" "m n LayerLenghtLimit" value
The valid values of this parameter range between 0 and 10000000.
The default is 0.
Chapter 11: Track Assignment Parameters
11-4
Example
To specify length limitation per layer as 3000, enter
axSetIntParam "trackAssign" "m1LayerLengthLimit" 3000
minimizeJog
The minimizeJog parameter specifies the mode to minimize jogs.
Syntax
axSetIntParam "trackAssign" "minimizeJog" value
Value
Description
0
Normal operation (the default).
1
Minimizes jogs near
nonstandard-cell pins.
Example
To minimize jogs near the nonstandard-cell pins, enter
axSetIntParam "trackAssign" "minimizeJog" 1
netLayerLengthLimit
The netLayerLengthLimit parameter allows you to control layer
assignment based on the net length. You define net length constraint
in the trackAssignNetLLL.file file.
For example,
net1 M1 300000 M3 400000
net2 M1 250000 M4 300000
minimizeJog
11-5
Syntax
axSetIntParam "trackAssign" "netLayerLengthLimit" value
Value
Description
0
No layer length limit for any net (the default)
1
Layer length limit for some nets in
trackAssignNetLLL.file
Example
To specify layer length limit for some nets in the
trackAssignNetLLL.file, enter
axSetIntParam "trackAssign" "netLayerLengthLimit" 1
noiseThreshold
The noiseThreshold parameter specifies the noise threshold for
track assignment.
Syntax
axSetIntParam "trackAssign" "noiseThreshold" value
The valid values of this parameter range between 0.000 and 1.000.
The default is 0.450.
Example
To specify the noise threshold for track assignment as 0.350, enter
axSetIntParam "trackAssign" "noiseThreshold" 0.350
Chapter 11: Track Assignment Parameters
11-6
noOffGridRouting
The noOffGridRouting parameter specifies the switch for off-grid
routing on macro pins.
Syntax
axSetIntParam "trackAssign" "noOffGridRouting" value
Value
Description
0
Automatically uses off grid for macro pins (the default)
1
Puts all the wires on grid
Example
To put all the wires on grid, enter
axSetIntParam "trackAssign" "noOffGridRouting" 1
parallelLimit
The parallelLimit parameter is used to specify parallel lengths
limit. Use this parameter when parallelLimitMode is enabled.
Syntax
axSetIntParam "trackAssign" "parallelLimit" value
The valid values of this parameter range between 0 and 10000000.
The default is 0.
Example
To specify parallel length limit as 500, enter
axSetIntParam "trackAssign" "parallelLimit" 500
noOffGridRouting
11-7
parallelLimitMode
The parallelLimitMode parameter is set to break long wire
mode on or off. When it is on, track assignment breaks the long wire
if it exceeds the parallel length or the capacitance limit.
Syntax
axSetIntParam "trackAssign" "parallelLimitMode" value
Value
Description
0
Does not check parallel lengths (the default).
1
Limits the parallel length of any two wires to 'n' user unit.
Example
To ignore breaking long wires even when parallel length or
capacitance limit is exceeded, enter
axSetIntParam "trackAssign" "parallelLimitMode" 0
runTimeMode
The runTimeMode parameter is used to select the number of track
assignment phases and determines whether to do jogging in track
assignment step.
Chapter 11: Track Assignment Parameters
11-8
Syntax
axSetIntParam "trackAssign" "runTimeMode" value
Value
Description
0
Fast mode: does one phase assignment
1
Second fast mode: does two phases assignment with jogging (the
default)
2
First slow mode: does three phases assignment, last phase no jogging.
3
Second slow mode: does three phases assignment, last phase
jogging.
Example
To specify the first slow mode for track assignment phase, enter
axSetIntParam "trackAssign" "runTimeMode" 2
runTimingMode
The runTimingMode parameter turns enables or disables the
timing-driven track assignment. A value set to timing cost decides
the importance of timing relative to wire length during track
assignment. By default timing-driven track assignment is disabled.
Syntax
axSetIntParam "trackAssign" "runTimingMode" value
Value
Description
0
Does not perform timing-driven track assignment (the
default)
1
Performs timing-driven track assignment
runTimingMode
11-9
Example
To perform timing-driven track assignment, enter
axSetIntParam "trackAssign" "runTimingMode" 1
runXTalkIter
The runXTalkIter parameter allows you to specify the number of
extra iterations for crosstalk during track assignment. The default
number of iterations are determined automatically. Use this
parameter when runXTalkMode is enabled.
Syntax
axSetIntParam "trackAssign" "runXTalkIter" value
The valid values of this parameter range between -1 and 5. The
default is -1.
Example
To specify the number of extra iterations for crosstalk in track
assignment, enter
axSetIntParam "trackAssign" "runXTalkIter" 4
runXTalkMode
The runXTalkMode parameter is used to enable or disable the
crosstalk mode during track assignment.
Chapter 11: Track Assignment Parameters
11-10
Syntax
axSetIntParam "trackAssign" "runXTalkMode" value
Value
Description
0
Does not try to minimize crosstalk (the default).
1
Minimizes crosstalk-induced delay and noise.
Example
To minimize crosstalk-induced delay and noise, enter
axSetIntParam "trackAssign" "runXTalkMode" 1
timingCost
The timingCost parameter sets the weight given to timing relative
to the wire length during track assignment. This parameter is
effective only when runTimingMode is set to 1, which runs track
assignment in timing-driven mode.
Syntax
axSetIntParam "trackAssign" "timingCost" value
The valid values of this parameter range between 1 and 10. The
default is 1.
Example
To specify the cost for timing optimization, enter
axSetIntParam "trackAssign" "timingCost" 6
timingCost
11-11
tryGlobalLayerFirst
The tryGlobalLayerFirst parameter specifies the mode to use
global layer first.
Syntax
axSetIntParam "trackAssign" "tryGlobalLayerFirst" value
Value
Description
0
Do not try to use global layer.
1
Try to use global layer in the first
iteration (the default).
Example
To ignore using global layer, enter
axSetIntParam "trackAssign" "tryGlobalLayerFirst" 0
tryGlobalLayerOnly
The tryGlobalLayerOnly parameter specifies the mode to use
only global layer during track assignment.
Syntax
axSetIntParam "trackAssign" "tryGlobalLayerOnly" value
Value
Description
-1
Try the global layers only if timing or crosstalk is enabled
(the default)
Chapter 11: Track Assignment Parameters
11-12
Value
Description
0
Allow to try layers other than global layers in second phase.
1
Try only the global layers.
variableWidthAdjustment
The variableWidthAdjustment parameter specifies the width
adjustment for fat wire tracks. The calculation of number of tracks for
a fat wire will occupy is sometime too conservative, that is, track
assignment will reserve too many tracks for each fat wire. The
variableWidthAdjustment parameter can help reduce the
demand and pack the fat wires more tightly.
Syntax
axSetIntParam "trackAssign" "variableWidthAdjustment" value
Value
Description
0
Uses the track count from detail route(the
default).
1
Uses the track count from detail route -1
2
Uses the track count from detail route -2
3
Uses the track count from detail route -3
4
Uses the track count from detail route -4
5
Uses the track count from detail route -5
Example
To specify the width adjustment for fat wire tracks, enter
axSetIntParam "trackAssign" "variableWidthAdjustment" 2
variableWidthAdjustment
11-13
XTalkParam
The XTalkParam parameter defines the cost for crosstalk
prevention. Use this parameter when runXTalkMode is enabled.
Syntax
axSetIntParam "trackAssign" "XTalkParam" value
The valid values of this parameter range between 1 and 4. The
default is 1.
Example
To define the cost for crosstalk prevention, enter
axSetIntParam "trackAssign" "XTalkParam" 3
Chapter 11: Track Assignment Parameters
11-14
Download