Commit Graph

  • 5c6bc5db34 Extended the code of the previous commit to include attaching labels to geometry defined using either the "port" or "text" options of the "label" statement in a cifinput section. Tim Edwards 2018-08-27 11:03:05 -04:00
  • 1345cc933c Merge branch 'work' into tomerge Tim Edwards 2018-08-27 11:00:51 -04:00
  • 20bad19600 Update at Mon Aug 27 11:00:50 EDT 2018 by tim Tim Edwards 2018-08-27 11:00:50 -04:00
  • 925136c652 Attempt at finishing the support of standard practices to define geometry attached to a label in GDS using specific layer:purpose pairs. The additional code maintains the order of ports when writing out text to GDS, and attempts to attach geometry to labels when the geometry is defined on the same layer:purpose pair as the text, and the cifinput style declares the purpose to be a port label. Tim Edwards 2018-08-27 10:57:51 -04:00
  • 9dcaddc67c Merge branch 'work' into tomerge 8.2.67 Tim Edwards 2018-08-26 22:42:11 -04:00
  • db2c01d30a Update at Sun Aug 26 22:42:09 EDT 2018 by tim Tim Edwards 2018-08-26 22:42:09 -04:00
  • 404629e49f Added new option "port" for the "labels" statement in cifinput. This allows text appearing on a specific GDS layer:purpose pair to be interpreted as a port. This does not quite match the intended behavior of such layers, since it is implied that any layer geometry coincident with the text should form the area of the port, which is not (yet) handled. Also, it is presumably implied that the port order matches the order in which text appears in the GDS stream, but magic does not preserve this order when re-writing any GDS output. Tim Edwards 2018-08-26 22:36:15 -04:00
  • e073394430 Applied another patch by Iain McNally that restores the obscure function that was available in versions 7.1 and earlier that allows the use of the command "erase errors" to remove DRC error paint (only when the DRC checker is off, of course). 8.2.66 Tim Edwards 2018-08-20 22:43:34 -04:00
  • 47e1713142 Merge branch 'work' into tomerge Tim Edwards 2018-08-20 22:13:33 -04:00
  • 62a25afc07 Update at Mon Aug 20 22:13:31 EDT 2018 by tim Tim Edwards 2018-08-20 22:13:31 -04:00
  • 83da1988e6 Corrected CIF import for reading CIF area labels correctly when the label causes a scale change. Thanks to Iain McNally for the patch. Same correction as made to magic-8.1. Tim Edwards 2018-08-20 22:13:16 -04:00
  • 70c3c67dc6 Merge branch 'work' into tomerge 8.2.65 Tim Edwards 2018-07-19 10:24:44 -04:00
  • 6547ca3f3f Update at Thu Jul 19 10:24:42 EDT 2018 by tim Tim Edwards 2018-07-19 10:24:42 -04:00
  • 193493a0cc Corrected an error in the DEF file read routine's check on via DRC rules, which was conflating magic and CIF tile types, resulting in incorrect reading of via layers. Tim Edwards 2018-07-19 10:23:30 -04:00
  • 1f961347e1 Merge branch 'work' into tomerge 8.2.64 Tim Edwards 2018-06-21 12:52:31 -04:00
  • 1009ca19f7 Update at Thu Jun 21 12:52:31 EDT 2018 by tim Tim Edwards 2018-06-21 12:52:31 -04:00
  • 4ae868802d Modified the LEF read routine so that it determines the LEF-to- magic conversion for making magic contact types from contact cuts from the CIF/GDS input rules rather than the output rules. This generally makes more sense, plus avoids conflicts where the output rules may be set for CIF-DRC checks and may not be appropriate for LEF input without changing the style. Tim Edwards 2018-06-21 12:50:31 -04:00
  • 3b99464080 Merge branch 'work' into tomerge 8.2.63 Tim Edwards 2018-06-17 15:12:47 -04:00
  • 645446f716 Update at Sun Jun 17 15:12:46 EDT 2018 by tim Tim Edwards 2018-06-17 15:12:46 -04:00
  • ecf27c9a17 Corrected missing include to tclmagic.h from txCommands.c, where freeMagic() is used (and is a macro to Tcl_Free()). Tim Edwards 2018-06-17 15:12:00 -04:00
  • 91a9b32c19 Merge branch 'work' into tomerge 8.2.62 Tim Edwards 2018-05-30 22:52:13 -04:00
  • 1782003370 Update at Wed May 30 22:52:11 EDT 2018 by tim Tim Edwards 2018-05-30 22:52:11 -04:00
  • 5e2874a0fa Fixed a crash condition on saving a backup file if a cellDef's cd_file entry is NULL, relying on cd_name instead. Tim Edwards 2018-05-30 22:51:13 -04:00
  • e5f5764871 Merge branch 'work' into tomerge 8.2.61 Tim Edwards 2018-05-17 09:51:41 -04:00
  • 4eb6b65f32 Update at Thu May 17 09:51:39 EDT 2018 by tim Tim Edwards 2018-05-17 09:51:39 -04:00
  • cbd279d718 Changed behavior of DEF read to flag labels as "sticky" so that the layer a label is attached to in the DEF file does not get reassigned. Tim Edwards 2018-05-17 09:50:55 -04:00
  • 33a70706ac Merge branch 'work' into tomerge 8.2.60 Tim Edwards 2018-04-24 09:31:06 -04:00
  • d5ffa9eabe Update at Tue Apr 24 09:31:03 EDT 2018 by tim Tim Edwards 2018-04-24 09:31:03 -04:00
  • c522acab33 Corrected a minor issue with the database read incorrectly generating an error message when reading uses from a .mag file. Also modified the GDS write routine to provide an error message when an abstract view points to a GDS file but the GDS file cannot be found. Tim Edwards 2018-04-24 09:29:05 -04:00
  • 1a626550ff Merge branch 'work' into tomerge 8.2.59 Tim Edwards 2018-04-19 16:15:05 -04:00
  • 8bb52fd309 Update at Thu Apr 19 16:15:03 EDT 2018 by tim Tim Edwards 2018-04-19 16:15:03 -04:00
  • 4fd3089cfc Corrected an error in which the selection definition may contain invalid pointers to a cell that was deleted while it was selected. Solution is to clear selections before deleting a cell. Tim Edwards 2018-04-19 16:14:17 -04:00
  • 5da432b821 Added ever so slightly more information to the output when handling issues with subcell loading. 8.2.58 Tim Edwards 2018-04-18 14:09:26 -04:00
  • 8fb6e50821 Merge branch 'work' into tomerge Tim Edwards 2018-04-18 14:02:25 -04:00
  • 7c4484e72e Update at Wed Apr 18 14:02:23 EDT 2018 by tim Tim Edwards 2018-04-18 14:02:23 -04:00
  • 956fefdae2 Extremely useful new GDS compositing feature: Any cell that is both an abstract view (i.e., comes from a LEF file or otherwise has been marked with the LEFview property) and a GDS_FILE property expects to insert the contents of GDS_FILE into the GDS output stream minus header and trailer, and with all internal cells renamed by prefixing them with the top-level cell name to avoid naming conflicts. Tim Edwards 2018-04-18 13:57:26 -04:00
  • 6f3d4379a5 Merge branch 'work' into tomerge 8.2.57 Tim Edwards 2018-04-17 10:10:07 -04:00
  • bf62aaeab9 Update at Tue Apr 17 10:10:04 EDT 2018 by tim Tim Edwards 2018-04-17 10:10:04 -04:00
  • 95b572715c Some minor changes to file instance handling, mostly to make output less confusing. Removed leading spaces in instance path which could cause a failure to recognize that a path was not specified for a use in an input file. Tim Edwards 2018-04-17 10:08:00 -04:00
  • e991e2cfc7 Added a fallback method to file reading so as to not create havoc from the rigorous method of versioning in case files are relocated and the use paths are no longer valid. Cells are then searched for in the search paths in the traditional manner, albeit with a stern warning. This should avoid most backwards-compatbility issues. 8.2.56 Tim Edwards 2018-04-16 21:43:35 -04:00
  • 2e9451ea19 Merge branch 'work' into tomerge Tim Edwards 2018-04-16 11:40:40 -04:00
  • 17319cc35c Update at Mon Apr 16 11:40:39 EDT 2018 by tim Tim Edwards 2018-04-16 11:40:39 -04:00
  • bb480ae31e Cleaned up the library manager a bit, making sure both columns appear, formatting headers for the columns, and adding a filter for items with matching technology and a checkbutton to turn off the filter. Tim Edwards 2018-04-16 11:39:44 -04:00
  • 79cb20cf9a Additional corrections to ensure that every cell that is read or written interprets the path of every use as either a full absolute path or a path relative to the parent cell, given the different ways that a parent cell's path could be specified (absolute or relative). 8.2.55 Tim Edwards 2018-04-06 15:09:43 -04:00
  • 5d461bf036 Merge branch 'work' into tomerge Tim Edwards 2018-04-06 13:28:10 -04:00
  • 43365a629f Update at Fri Apr 6 13:28:08 EDT 2018 by tim Tim Edwards 2018-04-06 13:28:08 -04:00
  • 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. Tim Edwards 2018-04-06 12:50:37 -04:00
  • 64d849994b Merge branch 'work' into tomerge 8.2.54 Tim Edwards 2018-04-04 10:38:12 -04:00
  • 6edd1002b4 Update at Wed Apr 4 10:38:10 EDT 2018 by tim Tim Edwards 2018-04-04 10:38:10 -04:00
  • 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. Tim Edwards 2018-04-04 10:35:18 -04:00
  • 0592b5e48d Removed swap file caused by editing a file during a push. 8.2.53 Tim Edwards 2018-04-01 22:03:27 -04:00
  • 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. Tim Edwards 2018-04-01 22:00:57 -04:00
  • 03933d7b26 Corrected problem with spacing rules. Only contact handling problem remains. Tim Edwards 2018-04-01 20:20:14 -04:00
  • 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. Tim Edwards 2018-04-01 20:05:26 -04:00
  • 48e98363d7 Merge branch 'work' into tomerge Tim Edwards 2018-04-01 14:42:27 -04:00
  • 9be534a5a6 Update at Sun Apr 1 14:42:25 EDT 2018 by tim Tim Edwards 2018-04-01 14:42:25 -04:00
  • 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. Tim Edwards 2018-04-01 14:40:10 -04:00
  • 4893d11ebc Merge branch 'work' into tomerge 8.2.52 Tim Edwards 2018-03-28 12:10:31 -04:00
  • e0e5fcb6e1 Update at Wed Mar 28 12:10:29 EDT 2018 by tim Tim Edwards 2018-03-28 12:10:29 -04:00
  • 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. Tim Edwards 2018-03-28 12:09:19 -04:00
  • f19400be1e Merge branch 'work' into tomerge 8.2.51 Tim Edwards 2018-03-27 18:20:07 -04:00
  • a576db9165 Update at Tue Mar 27 18:20:05 EDT 2018 by tim Tim Edwards 2018-03-27 18:20:05 -04:00
  • 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. Tim Edwards 2018-03-27 18:18:26 -04:00
  • 7edd4baeab Added additional handling for versioning to include relative paths and home paths. 8.2.50 Tim Edwards 2018-03-23 13:06:58 -04:00
  • 84bcfad0fd Merge branch 'work' into tomerge Tim Edwards 2018-03-23 10:55:42 -04:00
  • 480f093c3b Update at Fri Mar 23 10:55:41 EDT 2018 by tim Tim Edwards 2018-03-23 10:55:41 -04:00
  • 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. Tim Edwards 2018-03-23 10:52:57 -04:00
  • 2df755d857 Merge branch 'work' into tomerge 8.2.49 Tim Edwards 2018-03-19 15:02:09 -04:00
  • 3fb42b823d Update at Mon Mar 19 15:02:08 EDT 2018 by tim Tim Edwards 2018-03-19 15:02:08 -04:00
  • 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. Tim Edwards 2018-03-19 14:57:31 -04:00
  • cb3ea77b83 Merge branch 'work' into tomerge 8.2.48 Tim Edwards 2018-03-15 10:53:29 -04:00
  • eb4a648312 Update at Thu Mar 15 10:53:27 EDT 2018 by tim Tim Edwards 2018-03-15 10:53:27 -04:00
  • 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. Tim Edwards 2018-03-15 10:51:07 -04:00
  • 501a121ee3 Merge branch 'work' into tomerge 8.2.47 Tim Edwards 2018-02-21 10:03:00 -05:00
  • 99dfe08515 Update at Wed Feb 21 10:02:59 EST 2018 by tim Tim Edwards 2018-02-21 10:02:59 -05:00
  • 8d95a3002b Corrected an error in LEF write that will cause a segfault if a label is attached to space. Tim Edwards 2018-02-21 10:02:23 -05:00
  • 44e34fb0ad Merge branch 'work' into tomerge 8.2.46 Tim Edwards 2018-02-02 14:17:30 -05:00
  • de26b000c9 Update at Fri Feb 2 14:17:29 EST 2018 by tim Tim Edwards 2018-02-02 14:17:29 -05:00
  • ccbd6727d1 Enhanced the LEF file parser to handle many more standard keywords without throwing an error message. Tim Edwards 2018-02-02 14:16:39 -05:00
  • 393492982b Merge branch 'work' into tomerge 8.2.45 Tim Edwards 2018-01-30 10:03:05 -05:00
  • f72fd20d91 Update at Tue Jan 30 10:03:03 EST 2018 by tim Tim Edwards 2018-01-30 10:03:03 -05:00
  • 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. Tim Edwards 2018-01-30 10:01:58 -05:00
  • 944c6a5373 Merge branch 'work' into tomerge 8.2.44 Tim Edwards 2018-01-08 21:45:36 -05:00
  • 0e67aabc36 Update at Mon Jan 8 21:45:36 EST 2018 by tim Tim Edwards 2018-01-08 21:45:36 -05:00
  • 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. Tim Edwards 2018-01-08 21:45:19 -05:00
  • ec402bd57a Modified possibly incorrect use of DBSrCellDefs in extresist to ignore internal cells (select, yank, etc.). 8.2.43 Tim Edwards 2018-01-02 10:03:16 -05:00
  • 6827b13ca3 Added initialization for node location so if something goes wrong with extresist, it does not have random numbers for node locations. Tim Edwards 2018-01-02 09:46:04 -05:00
  • 83c582290c Merge branch 'work' into tomerge Tim Edwards 2018-01-02 09:38:51 -05:00
  • 414648fde9 Update at Tue Jan 2 09:38:50 EST 2018 by tim Tim Edwards 2018-01-02 09:38:50 -05:00
  • 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. Tim Edwards 2018-01-02 09:37:44 -05:00
  • c40547a47e Merge branch 'work' into tomerge 8.2.42 Tim Edwards 2017-12-18 20:24:19 -05:00
  • 1a1d6e2235 Update at Mon Dec 18 20:24:19 EST 2017 by tim Tim Edwards 2017-12-18 20:24:19 -05:00
  • 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. Tim Edwards 2017-12-18 20:24:06 -05:00
  • 6b41c3fa3e Corrected the "setlabel" command for edit-in-place cells, for which setlabel would report label properties correctly but would never alter them. 8.2.41 Tim Edwards 2017-12-14 20:21:05 -05:00
  • 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). Tim Edwards 2017-12-14 16:55:06 -05:00
  • 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. Tim Edwards 2017-12-14 16:05:32 -05:00
  • ff87869724 Merge branch 'work' into tomerge Tim Edwards 2017-12-13 11:16:45 -05:00
  • e5f8203755 Update at Wed Dec 13 11:16:44 EST 2017 by tim Tim Edwards 2017-12-13 11:16:44 -05:00
  • f4ae5d8789 Corrected extended bounding box for LEF-derived views setting FIXED_BBOX; same change made to magic version 8.1. Tim Edwards 2017-12-13 11:16:02 -05:00
  • 8dbbd71777 Merge branch 'work' into tomerge 8.2.40 Tim Edwards 2017-11-25 16:09:55 -05:00