Commit Graph

697 Commits

Author SHA1 Message Date
Tim Edwards 20a661e1ec Corrected problem in "extresist" if a port is a label with the
sticky flag set, and the type of the label does not correspond
exactly to the type under the label (e.g., label defined on m1
but is on top of a contact).
2020-01-24 17:13:59 -05:00
Tim Edwards 594fc581c5 "ocd_git_pure automatic update to repo" 2020-01-19 03:00:06 -05:00
Tim Edwards 7eb7daa48c Merge branch 'master' into magic-8.2 2020-01-19 03:00:05 -05:00
Tim Edwards 61859d152d Corrected a missing argument from the call to DBFlagMismatches()
that causes the recovery option (magic -r) to fail with a segfault
(which is definitely not helpful for recovering lost work).
2020-01-18 15:55:05 -05:00
Tim Edwards 3d595e7982 "ocd_git_pure automatic update to repo" 2020-01-18 03:00:06 -05:00
Tim Edwards 71678d4e07 Merge branch 'master' into magic-8.2 2020-01-18 03:00:06 -05:00
Tim Edwards fc4638634a Corrected the ifdef MAGIC_WRAPPER placement in the EFantenna.c file,
which should have been only around the tclmagic.h include.
2020-01-17 12:54:58 -05:00
Tim Edwards 21fef506ea "ocd_git_pure automatic update to repo" 2020-01-14 03:00:07 -05:00
Tim Edwards eded9bb913 Merge branch 'master' into magic-8.2 2020-01-14 03:00:06 -05:00
Tim Edwards afe38c55c8 Resolved some issues with working with ext2spice using abstract
views.  Because the abstract view does not necessarily represent
actual connectivity, rely on the port indexes in the .ext file
to determine the number of ports and port order.  Do not use
SpiceNodeName() to look up the node name, or unique ports that
are deemed shorted will go missing.  Also:  Modified the read-in
of .ext files so that use names may contain backslashes.  Only
backslashes that end a line will be handled differently.
2020-01-13 12:58:04 -05:00
Alex Coffin 8e6f770afa
Fixed typo 2020-01-13 05:29:20 -08:00
Tim Edwards dce525c588 "ocd_git_pure automatic update to repo" 2020-01-04 03:00:05 -05:00
Tim Edwards d3d3f9d220 Merge branch 'master' into magic-8.2 2020-01-04 03:00:05 -05:00
Tim Edwards ff2f2de046 Corrected the dereferencing code from the last commit, where the
flag definition had been put in database.h instead of database.h.in,
and so was deleted on "make clean".  Also, corrected a problem that
causes the cif output style to be lost when running DRC-CIF checks
if the first output style is the DRC style.
2020-01-03 12:21:39 -05:00
Tim Edwards 457ae2402a "ocd_git_pure automatic update to repo" 2020-01-03 03:00:07 -05:00
Tim Edwards 2311f1aee4 Merge branch 'master' into magic-8.2 2020-01-03 03:00:07 -05:00
Tim Edwards 82e33248f2 Corrected dereferencing of cell dependencies, which was being applied
only at the time of running the command "load".  But cells are generally
loaded only on an as-needed basis, so the dereferencing option must be
saved as a flag in the cell and honored whenever its subcells are expanded
or otherwise read at a later time.
2020-01-02 10:13:04 -05:00
Tim Edwards bc1bb5c846 "ocd_git_pure automatic update to repo" 2019-12-20 03:00:06 -05:00
Tim Edwards b6372775a0 Merge branch 'master' into magic-8.2 2019-12-20 03:00:05 -05:00
Tim Edwards 67866c7991 Apparently GDS format does not enforce the original string character
limit of the Calma definition, and probably has not done so for ages.
Nobody informed me of this.  The restriction has been lifted from
GDS input and output in Magic.  It can be reinstated if necessary by
setting a flag in the cifoutput section of the techfile, but it is
likely that this will not be necessary unless there are other tools
that enforce the limit and will not read a GDS file that exceeds it.
2019-12-19 17:28:06 -05:00
Tim Edwards f15ea2a135 Modified "lef writeall" to only generate output for the set of subcells
that are direct children of the top level cell.  The "-all" option was
added to enable the previous behavior, although its usefulness is
doubtful.
2019-12-19 10:33:22 -05:00
Tim Edwards e526a179f7 "ocd_git_pure automatic update to repo" 2019-12-17 03:00:05 -05:00
Tim Edwards aadc69f722 Merge branch 'master' into magic-8.2 2019-12-17 03:00:05 -05:00
Tim Edwards d0f3aaeb59 Corrected ext2hier.c so that resistance output from extresist takes
the right argument type (float, not int).  Otherwise all resistances
from extresist come out zero when doing "ext2spice extresist on"
and "ext2spice hierarchy on".  Also changed the format of the resistance
in the SPICE output to type float, since values are in standard units of
ohms, and rounding to the nearest ohm seems excessively coarse-grained.
2019-12-16 09:55:11 -05:00
Tim Edwards 7d65d6d4c2 "ocd_git_pure automatic update to repo" 2019-12-15 03:00:06 -05:00
Tim Edwards 81d7801223 Merge branch 'master' into magic-8.2 2019-12-15 03:00:06 -05:00
Tim Edwards be38dac9fb Corrected .mag file read-in so that it will not complain about
a layout being redefined if one records the full path name and
the other records the home directory tilde expression.
2019-12-14 18:30:48 -05:00
Tim Edwards 2a56630394 "ocd_git_pure automatic update to repo" 2019-12-09 03:00:06 -05:00
Tim Edwards 76dc836dca Merge branch 'master' into magic-8.2 2019-12-09 03:00:06 -05:00
Tim Edwards fd737dbf80 Overhauled the extresist code (again), this time to (1) correct for
a long-standing error (introduced with the "extresist geometry"
option) that can cause nets not to be extracted (due to the first
record not having extraction data, which was itself a long-standing
error in the code but which was not fixed correctly);  (2) handle
"device mosfet" type transistors (previously only handled the old
"fet" type extraction devices);  and (3) correct for the res.ext
file having a different scalefactor relative to the .ext file.  The
latter item was solved by forcing all input to scale like
ExtCurStyle->exts_unitsPerLambda, locally correcting all input as
needed.  Note that extresist still needs to handle other extraction
devices (e.g., resistors and capacitors) but those will require
additional handling in the routines which analyze the current path
to determine how to break up wires into paths.
2019-12-08 17:37:48 -05:00
Tim Edwards b0aa35133b "ocd_git_pure automatic update to repo" 2019-12-03 03:00:06 -05:00
Tim Edwards 1c4282b65a Merge branch 'master' into magic-8.2 2019-12-03 03:00:06 -05:00
Tim Edwards 31612b593f Added new CIF generation op "grow-min" that ensures a minimum width
for a layer.
2019-12-02 10:18:37 -05:00
Tim Edwards 584a677e9b "ocd_git_pure automatic update to repo" 2019-11-28 03:00:05 -05:00
Tim Edwards 48c033b1bf Merge branch 'master' into magic-8.2 2019-11-28 03:00:05 -05:00
Tim Edwards cfaccd973f Expanded the antenna rule violation setup and calculations to
include (1) specification of sidewall or surface to use for
each type individually, rather than a single method for all
types, and (2) specification of a linear model R = Ax + B for
the ratio limit when diodes are attached to the wire, where x
is the diode surface area (unitless, as this is a ratio).
2019-11-27 10:38:47 -05:00
Tim Edwards 7941411707 "ocd_git_pure automatic update to repo" 2019-11-27 03:00:06 -05:00
Tim Edwards acffebf380 Merge branch 'master' into magic-8.2 2019-11-27 03:00:06 -05:00
Tim Edwards a374230d88 Modified the behavior of the LEF read routine when used to annotate
an existing cell.  If the existing cell has labels but the labels
are defined as point labels (no rectangle defined using specific
layer-purpose pairs), then the LEF macro's port geometry will be
used for the labels.  Because the GDS file can define label sizes
and fonts, which the LEF file cannot, but because the LEF file may
define multiple rectangles per port, the original point label is
given the first port rectangle from the LEF file, while the
remainder of the labels in the LEF file generate new non-rendered
labels in the cell.
2019-11-26 10:57:42 -05:00
Tim Edwards 4daa652aff "ocd_git_pure automatic update to repo" 2019-11-26 03:00:07 -05:00
Tim Edwards 22a7922083 Merge branch 'master' into magic-8.2 2019-11-26 03:00:06 -05:00
Tim Edwards 46eefe8c33 Small correction on the last commit to avoid an integer overflow
error on large areas (need type dlong to encode areas in internal
units).
2019-11-25 16:37:03 -05:00
Tim Edwards 1fe128a405 Implemented new CIF operator "close", in the syntax "close <area>",
which takes the existing generated CIF plane, finds all enclosed
areas that have an area less than <area>, and fills them in.  This
satisfies a minimum hole area rule in a way that is not possible
with any of the existing CIF operators.
2019-11-25 15:14:41 -05:00
Tim Edwards b90166985d Corrected an error in the dual CIF style (output & drc) method where
the output style is not set back to what it was before if there are
no cif rules in the default DRC style.
2019-11-25 11:07:59 -05:00
Tim Edwards 6117f347d4 "ocd_git_pure automatic update to repo" 2019-11-24 03:00:11 -05:00
Tim Edwards 53c4cb5b1b Merge branch 'master' into magic-8.2 2019-11-24 03:00:11 -05:00
Tim Edwards 7373d55c55 Corrected a problem from the last commit that causes error messages
in the toolkit Tk window when any parameter is modified, due do the
use of a variable before its being defined in the dialog update.
2019-11-22 11:37:04 -05:00
Tim Edwards 2019a8a665 "ocd_git_pure automatic update to repo" 2019-11-22 03:00:07 -05:00
Tim Edwards 9939a8b874 Merge branch 'master' into magic-8.2 2019-11-22 03:00:07 -05:00
Tim Edwards 27ed2bf975 Modified the toolkit to take a selectlist with the special variable
name "gencell" and use that to create a selection that can change
between (compatible or somewhat compatible) device types.
2019-11-21 15:48:24 -05:00