2017-04-25 14:41:48 +02:00
|
|
|
<HTML>
|
|
|
|
|
<HEAD>
|
|
|
|
|
<STYLE type="text/css">
|
|
|
|
|
H1 {color: black }
|
|
|
|
|
H2 {color: maroon }
|
|
|
|
|
H3 {color: #007090 }
|
|
|
|
|
A.head:link {color: #0060a0 }
|
|
|
|
|
A.head:visited {color: #3040c0 }
|
|
|
|
|
A.head:active {color: white }
|
|
|
|
|
A.head:hover {color: yellow }
|
|
|
|
|
A.red:link {color: red }
|
|
|
|
|
A.red:visited {color: maroon }
|
|
|
|
|
A.red:active {color: yellow }
|
|
|
|
|
</STYLE>
|
|
|
|
|
</HEAD>
|
2024-01-09 22:37:00 +01:00
|
|
|
<TITLE>Magic-8.3 Command Reference</TITLE>
|
2017-04-25 14:41:48 +02:00
|
|
|
<BODY BACKGROUND=graphics/blpaper.gif>
|
2024-01-09 22:37:00 +01:00
|
|
|
<H1> <IMG SRC=graphics/magic_title8_3.png ALT="Magic VLSI Layout Tool Version 8.3">
|
2017-04-25 14:41:48 +02:00
|
|
|
<IMG SRC=graphics/magic_OGL_sm.gif ALIGN="top" ALT="*"> </H1>
|
|
|
|
|
|
|
|
|
|
<H2>extresist</H2>
|
|
|
|
|
<HR>
|
|
|
|
|
Patch the extraction <TT>.ext</TT> files with detailed route resistance
|
|
|
|
|
information.
|
|
|
|
|
<HR>
|
|
|
|
|
|
|
|
|
|
<H3>Usage:</H3>
|
|
|
|
|
<BLOCKQUOTE>
|
|
|
|
|
<B>extresist</B> <I>option</I> <BR><BR>
|
|
|
|
|
<BLOCKQUOTE>
|
|
|
|
|
where <I>option</I> may be one of the following:
|
|
|
|
|
<DL>
|
|
|
|
|
<DT> <B>all</B>
|
|
|
|
|
<DD> Extract all the nets.
|
2026-05-29 17:47:01 +02:00
|
|
|
<DT> <B>threshold</B> [<I>value</I>]
|
|
|
|
|
<DD> With no value given, returns the current lumped resistance
|
|
|
|
|
threshold used to determine if a network will or will not be
|
|
|
|
|
analyzed for resistance extraction, in milliohms. The default
|
|
|
|
|
<B>threshold</B> value is 10000 milliohms (10 ohms). If
|
|
|
|
|
<I>value</I> is given, then set the lumped resistance threshold
|
|
|
|
|
to <I>value</I> milliohms.
|
|
|
|
|
<DT> <B>mindelay</B> [<I>value</I>]
|
|
|
|
|
<DD> With no value given, returns the current delay time threshold
|
|
|
|
|
used to determine if a network will or will not be analyzed for
|
|
|
|
|
resistance extraction, in picoseconds. The default
|
|
|
|
|
<B>mindelay</B> value is zero, indicating that delay time is
|
|
|
|
|
not used for determining extraction. If <I>value</I> is given,
|
|
|
|
|
then set the delay threshold to <I>value</I> picoseconds.
|
|
|
|
|
<DT> <B>minres</B> [<I>value</I>]
|
|
|
|
|
<DD> With no value given, returns the current absolute resistance
|
|
|
|
|
threshold used to prune small resistances from a network when
|
|
|
|
|
simplifying, in milliohms. The default <B>minres</B> value
|
|
|
|
|
is 1000 milliohms (1 ohm). If <I>value</I> is given, then set
|
|
|
|
|
the absolute resistance threshold to <I>value</I> milliohms.
|
|
|
|
|
Note that resistances smaller than <I>value</I> may still
|
|
|
|
|
appear in the output netlist if the algorithm is unable to
|
|
|
|
|
simplify the network around the resistor.
|
2017-04-25 14:41:48 +02:00
|
|
|
<DT> <B>simplify</B> [<B>on</B>|<B>off</B>]
|
|
|
|
|
<DD> Turn on/off simplification of resistor nets.
|
|
|
|
|
<DT> <B>extout</B> [<B>on</B>|<B>off</B>]
|
|
|
|
|
<DD> Turn on/off writing of the <TT>.res.ext</TT> file.
|
|
|
|
|
<DT> <B>lumped</B> [<B>on</B>|<B>off</B>]
|
|
|
|
|
<DD> Turn on/off writing of updated lumped resistances.
|
|
|
|
|
<DT> <B>silent</B> [<B>on</B>|<B>off</B>]
|
|
|
|
|
<DD> Turn off/on printing of net statistics.
|
|
|
|
|
<DT> <B>skip</B> <I>mask</I>
|
|
|
|
|
<DD> Don't extract types indicated in the comma-separated list <I>mask</I>
|
2022-01-21 16:44:13 +01:00
|
|
|
<DT> <B>ignore</B> [<I>netname</I>|<B>none</B>]
|
|
|
|
|
<DD> Don't extract the net named <I>netname</I>. The list of ignored
|
|
|
|
|
nets is global, cumulative, and persistent; it will only be cleared
|
|
|
|
|
when the <B>extresist ignore none</B> command is issued
|
|
|
|
|
(option available from version 8.3.207).
|
|
|
|
|
<DT> <B>include</B> [<I>netname</I>|<B>all</B>]
|
|
|
|
|
<DD> Extract the net named <I>netname</I>. When this option is called
|
|
|
|
|
at least once, the behavior of the extraction changes to extract
|
|
|
|
|
only the nets that have been specified by <B>extresist include</B>
|
|
|
|
|
commands. The list of included nets is global, cumulative, and
|
|
|
|
|
persistent; it will only be cleared when the <B>extresist include
|
|
|
|
|
all</B> command is issued (option available from version 8.3.213).
|
2017-04-25 14:41:48 +02:00
|
|
|
<DT> <B>box</B> <I>type</I>
|
|
|
|
|
<DD> Extract the signal under the cursor box on layer <I>type</I>
|
|
|
|
|
<DT> <B>cell</B> <I>cellname</I>
|
|
|
|
|
<DD> Extract the network for the cell named <I>cellname</I>
|
|
|
|
|
<DT> <B>geometry</B>
|
|
|
|
|
<DD> Extract network geometry and present as a collection of line
|
|
|
|
|
elements on the layout.
|
|
|
|
|
<DT> <B>fasthenry</B> [<I>freq</I>]
|
|
|
|
|
<DD> Extract subcircuit network geometry into a <B>fasthenry</B>-format
|
|
|
|
|
<TT>.fh</TT> file. If <I>freq</I> is specified, the file will
|
|
|
|
|
be customized for <B>fasthenry</B> analysis at the indicated
|
|
|
|
|
frequency (in Hz).
|
2026-05-29 17:47:01 +02:00
|
|
|
<DT> <B>tolerance</B> <I>value</I>
|
|
|
|
|
<DD> <I>Deprecated!</I> This option is no longer used by extresist.
|
2017-04-25 14:41:48 +02:00
|
|
|
<DT> <B>help</B>
|
|
|
|
|
<DD> Print help information
|
|
|
|
|
</DL>
|
|
|
|
|
</BLOCKQUOTE>
|
|
|
|
|
</BLOCKQUOTE>
|
|
|
|
|
|
|
|
|
|
<H3>Summary:</H3>
|
|
|
|
|
<BLOCKQUOTE>
|
|
|
|
|
The normal flow through layout extraction into a simulation file
|
|
|
|
|
treats routes as nonphysical entities, that is, with infinitesimal
|
2026-05-29 17:47:01 +02:00
|
|
|
impedence through the wires. Standard extraction generates "lumped
|
|
|
|
|
resistance" values, a single resistance per network node that, along
|
|
|
|
|
with the node capacitance
|
2017-04-25 14:41:48 +02:00
|
|
|
to substrate, provides an <I>RC</I> time constant to approximately
|
|
|
|
|
model the delay from point to point in the network node. The
|
|
|
|
|
lumped resistance model is inappropriate for analog (i.e., SPICE)
|
|
|
|
|
simulation, and for digital simulation, is a poor approximation
|
|
|
|
|
for branching networks, where the delay between endpoints is
|
|
|
|
|
different for each pair of endpoints in the network node. <P>
|
|
|
|
|
|
|
|
|
|
The <B>extresist</B> command provides a method for generating
|
|
|
|
|
a more detailed model of resistance, in which long network
|
|
|
|
|
routes and branching routes are replaced with resistor devices
|
2026-01-28 23:05:00 +01:00
|
|
|
and device networks. This is known as "full R-C extraction". <P>
|
2017-04-25 14:41:48 +02:00
|
|
|
|
2026-01-28 23:05:00 +01:00
|
|
|
Using <B>extresist</B> as a standalone command is a multi-step
|
|
|
|
|
process. It is first necessary to run <B>extract</B> to get
|
2026-05-29 17:47:01 +02:00
|
|
|
the initial netlist. After a <TT>.ext</TT> file has been generated,
|
|
|
|
|
the <B>extresist</B> command may be run. The output is a file
|
|
|
|
|
<TT>.res.ext</TT> for each cell in the hierarchy.
|
2026-01-28 23:05:00 +01:00
|
|
|
Finally, with the option <B>extresist on</B> set, <B>ext2spice</B>
|
|
|
|
|
will generate the final, detailed simulation file. <P>
|
|
|
|
|
|
|
|
|
|
Prior to magic version 8.3.597, it was also necessary to run
|
|
|
|
|
<B>ext2sim labels on</B> and <B>ext2sim</B> to write out a
|
|
|
|
|
<TT>.sim</TT> and a <TT>.node</TT> file before running
|
|
|
|
|
<B>extresist</B>. This is no longer necessary. There is since
|
|
|
|
|
magic version 8.3.597 an option <B>extract do resistance</B>
|
|
|
|
|
that runs the resistance extraction in sequence with the regular
|
|
|
|
|
extraction, producing both the <TT>.ext</TT> and <TT>.res.ext</TT>
|
2026-05-29 17:47:01 +02:00
|
|
|
files. When <B>extract do resistance</B> is used, there is no need
|
|
|
|
|
to run <B>extresist</B> as a separate command. However,
|
|
|
|
|
<B>extresist</B> may be run prior to <B>extract</B> to set the
|
|
|
|
|
options that affect resistance network extraction, such as
|
|
|
|
|
<B>extresist threshold</B>, <B>extresist minres</B>, etc. <P>
|
|
|
|
|
|
|
|
|
|
As of magic version 8.3.653, the <B>extresist tolerance</B> option
|
|
|
|
|
is deprecated and has no effect on network resistance extraction.
|
|
|
|
|
Instead, extraction is controlled by three main options: <P>
|
|
|
|
|
|
|
|
|
|
<B>extresist threshold</B> (value in milliohms) sets a cutoff for
|
|
|
|
|
considering a network for detailed resistance extraction based on
|
|
|
|
|
the lumped resistance estimate (see above). For point-to-point
|
|
|
|
|
wires, the lumped resistance is approximately equal to the actual
|
|
|
|
|
wire resistance. For branching networks, it will generally be an
|
|
|
|
|
over-estimate. The default <B>threshold</B> value is set to
|
|
|
|
|
10 ohms. <P>
|
|
|
|
|
|
|
|
|
|
<B>extresist minres</B> (value in milliohms) sets a cutoff for
|
|
|
|
|
individual resistors in the detailed resistor network. Resistors
|
|
|
|
|
below this threshold will get pruned out of the network if the
|
|
|
|
|
simplification algorithm is able to remove them. The default
|
|
|
|
|
<B>minres</B> value is set to 1 ohm. <P>
|
|
|
|
|
|
|
|
|
|
<B>extresist mindelay</B> (value in picoseconds) sets a cutoff for
|
|
|
|
|
considering a network for detailed resistance extraction based on
|
|
|
|
|
the end-to-end delay calculated from the lumped resistance
|
|
|
|
|
estimate. Once the network has been extracted, the <B>mindelay</B>
|
|
|
|
|
value is again evaluated against a revised calculation of the
|
|
|
|
|
delay to determine if the extracted detailed network should be
|
|
|
|
|
output. The default <B>mindelay<B> value is set to 0, indicating
|
|
|
|
|
that only the lumped resistance threshold should be used for
|
|
|
|
|
determining when to extract a detailed resistance network.
|
|
|
|
|
<B>mindelay</B> may be used in place of <B>threshold</B>, or both
|
|
|
|
|
may be used together, in which case a network is only extracted
|
|
|
|
|
if both <B>threshold</B> and <B>mindelay</B> are exceeded. <P>
|
2017-04-25 14:41:48 +02:00
|
|
|
|
|
|
|
|
More details on using <B>extresist</B> can be found in
|
|
|
|
|
<B>magic</B> Tutorial number 8.
|
|
|
|
|
</BLOCKQUOTE>
|
|
|
|
|
|
|
|
|
|
<H3>Implementation Notes:</H3>
|
|
|
|
|
<BLOCKQUOTE>
|
|
|
|
|
<B>extresist</B> is implemented as a built-in command in <B>magic</B>.
|
|
|
|
|
</BLOCKQUOTE>
|
|
|
|
|
|
|
|
|
|
<H3>See Also:</H3>
|
|
|
|
|
<BLOCKQUOTE>
|
|
|
|
|
<A HREF=extract.html><B>extract</B></A> <BR>
|
|
|
|
|
<A HREF=ext2sim.html><B>ext2sim</B></A> <BR>
|
2026-01-28 23:05:00 +01:00
|
|
|
<A HREF=ext2spice.html><B>ext2spice</B></A> <BR>
|
2017-04-25 14:41:48 +02:00
|
|
|
</BLOCKQUOTE>
|
|
|
|
|
|
|
|
|
|
<P><IMG SRC=graphics/line1.gif><P>
|
|
|
|
|
<TABLE BORDER=0>
|
|
|
|
|
<TR>
|
|
|
|
|
<TD> <A HREF=commands.html>Return to command index</A>
|
|
|
|
|
</TR>
|
|
|
|
|
</TABLE>
|
2026-05-29 17:47:01 +02:00
|
|
|
<P><I>Last updated:</I> May 29, 2026 at 11:33am <P>
|
2017-04-25 14:41:48 +02:00
|
|
|
</BODY>
|
|
|
|
|
</HTML>
|