Commit Graph

750 Commits

Author SHA1 Message Date
Tim Edwards aecda68370 Merge branch 'master' into magic-8.2 2020-04-01 03:00:05 -04:00
Tim Edwards f689366553 Updated VERSION with commit. 2020-03-31 09:35:25 -04:00
Tim Edwards 688f07d302 Changed mallocMagic() argument to size_t. However, this is probably
not useful so long as Tcl_Alloc() has (unsigned int) for an argument.
The more important investigation is probably to determine if there is
a way to keep csa2_list from growing to absurdly large sizes on
connectivity checks.
2020-03-31 09:31:49 -04:00
Tim Edwards 7f6571f621 Merge branch 'master' into magic-8.2 2020-03-31 03:00:04 -04:00
Tim Edwards b5e06455c5 Corrected LEF read routine so as not to truncate LEF "CLASS" to a
single token (LEF CLASS records may have a subclass, such as "PAD
INPUT").
2020-03-30 09:36:24 -04:00
Tim Edwards 637d3f27d5 Merge branch 'master' into magic-8.2 2020-03-29 03:00:05 -04:00
Tim Edwards 70613a3778 Modified line in DBconnect.c to cast csa2_size to type (size_t), as
magic crashed when the conSrArea array exceeded the size of a 32-bit
int during the antenna rule check.  Should be good for another four
orders of magnitude.
2020-03-28 20:11:22 -04:00
Tim Edwards 2f00f2a057 Merge branch 'master' into magic-8.2 2020-03-28 03:00:04 -04:00
Tim Edwards 2a7e2ab110 Updated version with the last fix. 2020-03-27 17:14:20 -04:00
Tim Edwards d6b4b014d6 Corrected bad reference to GDS_FILE property when it may not exist. 2020-03-27 16:51:23 -04:00
Tim Edwards 74ea0a29b4 Corrected problem with ResSimple where extresist was not handling
non-manhattan geometry in device types.
2020-03-26 10:39:37 -04:00
Tim Edwards 1f5374bdf7 Merge branch 'master' into magic-8.2 2020-03-26 03:00:06 -04:00
Tim Edwards 521efeb929 Corrected uninitialized variable problem in lefWrite. 2020-03-25 15:21:05 -04:00
Tim Edwards 151f1fb470 Quick fix to last commit. 2020-03-25 12:07:14 -04:00
Tim Edwards c433534f4c Modified GDS read to assign the same port index to incoming port
labels with the same text.
2020-03-25 12:01:06 -04:00
Tim Edwards 195e096d64 Modified lefWrite to ensure maximum spacing per all widespacing rules
for any gap between a pin touching the cell boundary and the internal
obstruction layer.
2020-03-25 11:07:54 -04:00
Tim Edwards 6bae7c25c4 Enhanced the "lef write -hide" command option to check for metal
wide spacing rules; should result in LEF views that can import
back into magic without DRC errors.
2020-03-25 09:29:16 -04:00
Tim Edwards ed6c164a0e Merge branch 'master' into magic-8.2 2020-03-25 03:00:06 -04:00
Tim Edwards 5bf2a6ec69 Updated VERSION to revision 202. 2020-03-24 13:59:03 -04:00
Tim Edwards 00e1c01d8d Missed one instance of extFileOpen() in the implementation of the
"extract do local" command option.
2020-03-24 13:57:46 -04:00
Tim Edwards 1a28453992 Merge branch 'master' into magic-8.2 2020-03-24 03:00:06 -04:00
Tim Edwards fe727cc6f2 Found that the "crash save" command in tools.tcl also disrupts
redirected command-line entry from the layout window;  fixed.
2020-03-23 11:52:31 -04:00
Tim Edwards 7ec87864a6 Corrected the "save" ("writeall") command, which after the fixes of
the last couple of days, was left in a state where it keeps appending
".mag" to the filename if "save" or "writeall" is executed more than
once in the same edit session.  Also, added ext2sim.sh and ext2spice.sh
to the CLEANS list in tcltk, and added both to .gitignore so they are
not tracked.  Removed them from git to stop the current tracking.
2020-03-23 10:19:34 -04:00
Tim Edwards eaf1ad4827 Merge branch 'master' into magic-8.2 2020-03-22 03:00:06 -04:00
Tim Edwards c2bf9a8fb4 Added new command option "extract do local" to force all .ext files
to be written to the local directory instead of the directory where
the .mag file is located.
2020-03-21 20:57:11 -04:00
Tim Edwards ae6b627df7 One more change to add back the .mag extension when writing the
file from the contents of def->cd_file.
2020-03-21 15:34:41 -04:00
Tim Edwards 276bf1d78a Corrected a bad error from a few commits ago, probably 198, which
can deallocate the cell name and causes all sorts of unexpected and
unwanted behavior.
2020-03-21 12:40:35 -04:00
Tim Edwards fe8e229920 Corrected the DEF read routine's ROWCOL parsing. It was not treated
as an optional argument (which it is), and so defaults were not
applied, potentially leading to the wrong number of rows/columns in
a generated via if ROWCOL is not present in the DEF file.
2020-03-21 10:16:33 -04:00
Tim Edwards d03d814c48 Merge branch 'master' into magic-8.2 2020-03-21 03:00:06 -04:00
Tim Edwards a1ee1720f1 Corrected the "lef write -hide" method to keep a list of the areas
of the pin port geometry and using those areas to create the
spacing between them and the obstruction layer.  Otherwise, the
existing method used different databases (source vs. flattened) to
find the pin area, and they did not always agree on the exact
dimensions, leading to spacing errors within the LEF view.
2020-03-20 21:29:29 -04:00
Tim Edwards ad13e48a07 Corrected ext2spice for the case where a port has been given more
than one name, because in that case one of the port records ends
up with a null pointer to a node, and causes a crash condition.
This can happen inadvertently, as when a connected node is not
specifically designated a port, but is forced to be a port
because of the connection.
2020-03-20 14:50:56 -04:00
Tim Edwards 4a0ad45627 Added a "move" command option "move origin" which will move the
coordinate system origin to the specified (current) location.
This is a much more efficient method than selecting everything in
a layout and moving it, especially for very large layouts where
selection and moving becomes prohibitive.
2020-03-20 13:40:16 -04:00
Tim Edwards 53ef179fe2 Merge branch 'master' into magic-8.2 2020-03-20 03:00:07 -04:00
Tim Edwards 43506e62ae Updated revision. 2020-03-19 09:23:50 -04:00
Tim Edwards 1e4c020b1e Corrected an error in which the "save" command attempts to overwrite
an allocated Tcl argument, and can cause a crash for a filename of
sufficient length.
2020-03-19 09:20:50 -04:00
Tim Edwards ba55865520 Merge branch 'master' into magic-8.2 2020-03-18 03:00:06 -04:00
Tim Edwards f4174d3670 Fixed a recent addition to the extraction method that prevents
generating duplicate devices that may have parts overlaid in
different subcells;  this failed to filter the check by plane of
the device, and so if any two devices exist at the same point in
two different planes (e.g., metal resistor and a transistor), one
of them would get eliminated.
2020-03-17 21:26:46 -04:00
Tim Edwards bab2aa1ca6 Merge branch 'master' into magic-8.2 2020-03-15 03:00:05 -04:00
Tim Edwards 4f8ac38b27 Substantially enhanced the "lef write" methods. This now preserves
multiple ports;  also, when using the "-hide" option, the obstruction
area is computed from layer geometry, not from the bounding box.
Still left to do:  Ensure minimum width on pins, and remove slivers
of obstruction that are below minimum width.
2020-03-14 13:00:03 -04:00
Tim Edwards ea339ba367 Updated version so critical fix will get into a new tarball. 2020-03-14 09:51:34 -04:00
Tim Edwards 1a882bf2d7 Corrected careless error from yesterday's commit that causes "gds read"
to crash.
2020-03-14 09:50:36 -04:00
Tim Edwards 56675d306e Merge branch 'master' into magic-8.2 2020-03-14 03:00:13 -04:00
Tim Edwards 80fa495103 Removed the Depend files, which were being tracked with .gitignore
pointing to Depend instead of */Depend.
2020-03-13 15:39:08 -04:00
Tim Edwards 49c5e215c4 Updated revision to 195. 2020-03-13 12:22:26 -04:00
Tim Edwards 2fee1a8c9a Missed one place to flag the substrate extraction; fixed now. 2020-03-13 12:18:56 -04:00
Tim Edwards 2788fd70ab One more change to the extraction method to avoid extracting the
substrate more than once for the same subcell, since the substrate
extraction method scans the entire plane area;  this was making
large standard cell layouts extract very slowly, as every component
cell was causing the substrate search to be repeated.
2020-03-13 11:36:42 -04:00
Tim Edwards 2569a06c1f Substantial improvements on several fronts, mostly to do with
extraction:  Fixed a problem causing long extraction times, at
least some of which had to do with a poor string hash function
implementation.  Fixed a huge problem in ext2spice, where the
node merge function was particularly poorly implemented, causing
exponentially increasing processing times with layout size.
Corrected a minor issue with ext2spice where arguments were
improperly specified, causing unnecessary error messages to be
issued.  Fixed an error in the "load -dereference" command option,
which again caused unnecessary error messages to be issued.
Changed .gitignore to ignore Depend files, which are now regenerated
on every build.
2020-03-13 10:33:44 -04:00
Tim Edwards 2c28a37101 Merge branch 'master' into magic-8.2 2020-03-10 03:00:14 -04:00
Tim Edwards aa738bb350 Corrected an obscure error in GDS generation caused by an
uninitialized variable, with the result that writing GDS would
claim that it cannot scale down enough and that the output units
are either wrong or the output style must have "units angstroms".
Using angstrom units would solve the problem but did not treat
the root of the problem.
2020-03-09 20:44:03 -04:00
Tim Edwards ab0f5686bf Merge branch 'master' into magic-8.2 2020-03-07 03:00:04 -05:00