Commit Graph

2310 Commits

Author SHA1 Message Date
Tim Edwards 3bf2441818 Last update contained an error in writing database files in which
the path component of the use def was interpreted as being relative
to the parent when reading the cell def but not when writing,
resulting in paths being interpreted incorrectly.
2018-04-06 12:50:37 -04:00
Tim Edwards 64d849994b Merge branch 'work' into tomerge 2018-04-04 10:38:12 -04:00
Tim Edwards 6edd1002b4 Update at Wed Apr 4 10:38:10 EDT 2018 by tim 2018-04-04 10:38:10 -04:00
Tim Edwards 3f7ab36416 Correction to cell versioning handling for the "getcell" command.
This correction allows a full path to be passed for the cellname
and will (correctly) break the path into cell name and path
components (previously was naming the cell with the full path).
To avoid name conflicts, the cell name gets modified if the path
cannot be resolved against an existing cell of the same name.
2018-04-04 10:35:18 -04:00
Tim Edwards 0592b5e48d Removed swap file caused by editing a file during a push. 2018-04-01 22:03:27 -04:00
Tim Edwards dc49771220 Finished restoring the plow function to the original capability.
However, various updates are needed to match changes in magic
over the years, including handling of non-manhattan geometry,
and handling of added DRC rules such as surround and extend.
2018-04-01 22:00:57 -04:00
Tim Edwards 03933d7b26 Corrected problem with spacing rules. Only contact handling problem
remains.
2018-04-01 20:20:14 -04:00
Tim Edwards 9d8b43c934 Corrected the plow width rules. However, plow spacing rules seem
to be not quite right, and all sets of rules need to be updated
to match the latest DRC rule parsing.  Also, plowing does not
handle contact types correctly.
2018-04-01 20:05:26 -04:00
Tim Edwards 48e98363d7 Merge branch 'work' into tomerge 2018-04-01 14:42:27 -04:00
Tim Edwards 9be534a5a6 Update at Sun Apr 1 14:42:25 EDT 2018 by tim 2018-04-01 14:42:25 -04:00
Tim Edwards 42ec70d4dc Re-implemented plow setup for the first time since about 2006,
enabling the "plow" command.  At this time, however, not all
rules are being implemented correctly given the numerous changes
to the DRC handling since the last time "plow" was working.  Fixes
are ongoing.
2018-04-01 14:40:10 -04:00
Tim Edwards 4893d11ebc Merge branch 'work' into tomerge 2018-03-28 12:10:31 -04:00
Tim Edwards e0e5fcb6e1 Update at Wed Mar 28 12:10:29 EDT 2018 by tim 2018-03-28 12:10:29 -04:00
Tim Edwards ba2db7bbd3 Option "ext2spice subcircuit top" was implemented wrong and would
cause a crash.  Corrected the implementation as well as implemented
an option for "subcircuit top auto" that generates a subcircuit
header or not depending on the presence or absense of ports in the
top level cell.
2018-03-28 12:09:19 -04:00
Tim Edwards f19400be1e Merge branch 'work' into tomerge 2018-03-27 18:20:07 -04:00
Tim Edwards a576db9165 Update at Tue Mar 27 18:20:05 EDT 2018 by tim 2018-03-27 18:20:05 -04:00
Tim Edwards 742a1dbac4 Corrected an error in which ext2spice fails on hierarchies of
cells with abstract views on all leaf nodes using the "LEFview"
property to declare the cell view to be abstract.  Such cells
were being misinterpreted as containing no active devices.
2018-03-27 18:18:26 -04:00
Tim Edwards 7edd4baeab Added additional handling for versioning to include relative paths
and home paths.
2018-03-23 13:06:58 -04:00
Tim Edwards 84bcfad0fd Merge branch 'work' into tomerge 2018-03-23 10:55:42 -04:00
Tim Edwards 480f093c3b Update at Fri Mar 23 10:55:41 EDT 2018 by tim 2018-03-23 10:55:41 -04:00
Tim Edwards e60edf3c58 Finished implementing cell versioning, which was implemented for
file writes by adding the path for each cell use, but being ignored
for file reads.  The cell path saved in the .mag file is now honored
on read-back.  If the cell needs updating, then the cell version
can be manipulated using "cellname filepath".  No UI methods are
currently implemented for managing cell versions.
2018-03-23 10:52:57 -04:00
Tim Edwards 2df755d857 Merge branch 'work' into tomerge 2018-03-19 15:02:09 -04:00
Tim Edwards 3fb42b823d Update at Mon Mar 19 15:02:08 EDT 2018 by tim 2018-03-19 15:02:08 -04:00
Tim Edwards b2b6882096 Once again reworked the DRC code. The function that clears DRC
errors from the area checked must use the same area as is used
by the interaction checker to recompute errors.  In earlier code,
both these areas were much larger than necessary.  In the last
code update, the area to make revised checks was reduced, but
the area cleared of errors was not, resulting in errors that
would disappear from the layout as paint changes were made, until
a full "drc check" was run again.  This code commit makes the
areas the same again so that no errors are lost.
2018-03-19 14:57:31 -04:00
Tim Edwards cb3ea77b83 Merge branch 'work' into tomerge 2018-03-15 10:53:29 -04:00
Tim Edwards eb4a648312 Update at Thu Mar 15 10:53:27 EDT 2018 by tim 2018-03-15 10:53:27 -04:00
Tim Edwards 6492061480 Corrected two errors in the DRC checking, one of which passed a
much larger area than necessary to the interaction check, and
the other which failed to scale the tech halo distance down
after scaling all the rules.  Both of these led to huge areas
of a layout being unnecessarily checked when even a tiny part
of the layout was modified.  Corrected behavior matches
expectations for interactive DRC response.
2018-03-15 10:51:07 -04:00
Tim Edwards 501a121ee3 Merge branch 'work' into tomerge 2018-02-21 10:03:00 -05:00
Tim Edwards 99dfe08515 Update at Wed Feb 21 10:02:59 EST 2018 by tim 2018-02-21 10:02:59 -05:00
Tim Edwards 8d95a3002b Corrected an error in LEF write that will cause a segfault if a
label is attached to space.
2018-02-21 10:02:23 -05:00
Tim Edwards 44e34fb0ad Merge branch 'work' into tomerge 2018-02-02 14:17:30 -05:00
Tim Edwards de26b000c9 Update at Fri Feb 2 14:17:29 EST 2018 by tim 2018-02-02 14:17:29 -05:00
Tim Edwards ccbd6727d1 Enhanced the LEF file parser to handle many more standard keywords
without throwing an error message.
2018-02-02 14:16:39 -05:00
Tim Edwards 393492982b Merge branch 'work' into tomerge 2018-01-30 10:03:05 -05:00
Tim Edwards f72fd20d91 Update at Tue Jan 30 10:03:03 EST 2018 by tim 2018-01-30 10:03:03 -05:00
Tim Edwards 8ef32cb8c1 Corrected an error in the DEF read that skips a line if a cell
cannot be found.  This particularly screws up the file parsing
if the "END COMPONENTS" line is skipped.
2018-01-30 10:01:58 -05:00
Tim Edwards 944c6a5373 Merge branch 'work' into tomerge 2018-01-08 21:45:36 -05:00
Tim Edwards 0e67aabc36 Update at Mon Jan 8 21:45:36 EST 2018 by tim 2018-01-08 21:45:36 -05:00
Tim Edwards aebabc0447 Corrected an error in writing out .mag files with property values
that are longer than the formerly-fixed array size 256.  This
conflicted with the recent addition of holding path data in
properties, where the path coordinates can be significantly
longer than the fixed array size.  Same change as made to magic
version 8.1.
2018-01-08 21:45:19 -05:00
Tim Edwards ec402bd57a Modified possibly incorrect use of DBSrCellDefs in extresist to
ignore internal cells (select, yank, etc.).
2018-01-02 10:03:16 -05:00
Tim Edwards 6827b13ca3 Added initialization for node location so if something goes wrong
with extresist, it does not have random numbers for node locations.
2018-01-02 09:46:04 -05:00
Tim Edwards 83c582290c Merge branch 'work' into tomerge 2018-01-02 09:38:51 -05:00
Tim Edwards 414648fde9 Update at Tue Jan 2 09:38:50 EST 2018 by tim 2018-01-02 09:38:50 -05:00
Tim Edwards c97ff198b9 Corrected an extresist error that had an incorrect interpretation
of the return code from reading the sim file and therefore failed
to read the nodes file, causing node information to go missing.
2018-01-02 09:37:44 -05:00
Tim Edwards c40547a47e Merge branch 'work' into tomerge 2017-12-18 20:24:19 -05:00
Tim Edwards 1a1d6e2235 Update at Mon Dec 18 20:24:19 EST 2017 by tim 2017-12-18 20:24:19 -05:00
Tim Edwards 5be0653afe Corrected an error in the CIF read routine, caused when adding
handling for grid subdivision.  Scaled the value of "center"
for a CIF box and then attempted to use "center" as an unscaled
value.  Same correction as made to magic-8.1.
2017-12-18 20:24:06 -05:00
Tim Edwards 6b41c3fa3e Corrected the "setlabel" command for edit-in-place cells, for which
setlabel would report label properties correctly but would never
alter them.
2017-12-14 20:21:05 -05:00
Tim Edwards 4af736b18a Corrected error in the extraction for magic-8.2 (only) that appears
to have come from an unfinished (or at least unchecked) development
effort on improving the checks for DRC interaction errors (which
also affects extraction).
2017-12-14 16:55:06 -05:00
Tim Edwards 8faf572604 Corrected the "Text..." dialog to auto-update ports after making
a port so that repeated uses of "apply" won't fail because the
port number is already used.  Corrected the "port remove" command,
which didn't work, and corrected the script to do "port exists"
before "port index" so that the latter won't complain if the label
is not a port.  Same changes made to magic-8.1.
2017-12-14 16:05:32 -05:00