magic/doc/html/def.html

121 lines
4.8 KiB
HTML
Raw Normal View History

<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>
<TITLE>Magic-8.3 Command Reference</TITLE>
<BODY BACKGROUND=graphics/blpaper.gif>
<H1> <IMG SRC=graphics/magic_title8_3.png ALT="Magic VLSI Layout Tool Version 8.3">
<IMG SRC=graphics/magic_OGL_sm.gif ALIGN="top" ALT="*"> </H1>
<H2>def</H2>
<HR>
Read or write DEF format files.
<HR>
<H3>Usage:</H3>
<BLOCKQUOTE>
<B>def</B> <I>option</I> <BR><BR>
<BLOCKQUOTE>
where <I>option</I> is one of the following:
<DL>
<DT> <B>read</B> <I>filename</I> [<B>-labels</B>] [<B>-annotate</B>]
[<B>-noblockage</B>]
<DD> Read a DEF file <I>filename</I>[<B>.def</B>]
<DT> <B>write</B> [<I>cell</I>] [<B>-units</B> <I>value</I>] [<B>-anal</B>]
<DD> Write DEF for current or indicated cell named <I>cell</I>
<DT> <B>help</B>
<DD> Print help information (command summary)
</DL>
</BLOCKQUOTE>
</BLOCKQUOTE>
<H3>Summary:</H3>
<BLOCKQUOTE>
The <B>def</B> command reads and writes DEF format files. These
files are generally assumed to be digital standard-cell based
layouts. The DEF format has no real concept of hierarchy. To
generate a valid DEF file that may be recognized by other
software, it is necessary to have a layout with standard cells
using the <B>port</B> method to declare input and output ports.
In particular, the <B>port class</B> and <B>port use</B> are
designed to work with the DEF read and write routines. <P>
The technology file should have a <B>lef</B> section
describing how LEF and DEF files should be written. However, if
an appropriate LEF file exists and is read prior to writing a
DEF format file, the technology will be initialized from the
file if it is not declared in the technology file. <P>
Normally the DEF file is written in units of nanometers according to
the active GDS output scale (UNITS DISTANCE MICRONS 1000). If option
"<B>-units</B> <I>value</I>" is used, then the units indicated by
<I>value</I> are used instead of 1000. This option can be used, for
example, to preserve units when re-writing a DEF file that was read
with "<B>def read</B>". There is no guarantee that values can be
accurately represented at the specified scale. The <B>-units</B>
option was introduced in magic version 8.2.113. <P>
The "<B>-labels</B>" option to the "<B>def read</B>" command
causes each net in the NETS and SPECIALNETS sections of the DEF
file to be annotated with a label having the net name as the label
text. <P>
The "<B>-annotate</B>" option will add labels to a layout from a
DEF file, but will not add layer geometry or subcells. This is
useful for labeling all of the regular nets if the DEF file was
previously read without the <B>-labels</B> option. <P>
The "<B>-noblockage</B>" option will ignore all BLOCKAGES sections
in the DEF file, in effect producing only mask layer geometry. If
not specified, then layer BLOCKAGES in the DEF file are treated
like obstructions in LEF files, and translated into obstruction
layers in magic (per the definition of obstruction layers in either
the "lef" section of the magic technology file, or in a technology
LEF file read prior to reading the DEF file). <P>
The "<B>-anal</B>" option for "<B>def write</B>" satisfies the
(very dubious) rule interpretation that "NONDEFAULT RULE" blocks
must contain a rule for every metal layer. This is based on a
ridiculous interpretation of a specification that is poorly
worded and ambiguous. The interpretation makes no sense
whatsoever. But some tools will not accept the more rational
interpretation. <P>
</BLOCKQUOTE>
<H3>Implementation Notes:</H3>
<BLOCKQUOTE>
<B>def</B> is implemented as a built-in <B>magic</B> command.
Only the critical part of the DEF definition has been
implemented. Some uncommon forms of syntax such as
wire extensions are not implemented. This is largely due
to the incomplete nature of the LEF/DEF spec. It is unlikely
that such forms will be encountered in third-party input.
</BLOCKQUOTE>
<H3>See Also:</H3>
<BLOCKQUOTE>
<A HREF=lef.html><B>lef</B></A> <BR>
<A HREF=port.html><B>port</B></A> <BR>
</BLOCKQUOTE>
<P><IMG SRC=graphics/line1.gif><P>
<TABLE BORDER=0>
<TR>
<TD> <A HREF=commands.html>Return to command index</A>
</TR>
</TABLE>
<P><I>Last updated:</I> March 30, 2022 at 5:31pm <P>
</BODY>
</HTML>