Matthias Koefferlein
53f2c0e28f
Doc for 2.5d view
2021-04-03 00:17:28 +02:00
Matthias Koefferlein
9c1ef3c6dd
Enhanced 2.5d navigation
2021-04-02 22:58:39 +02:00
Matthias Koefferlein
173ba147b1
Rework for D25 tech management - compilation happens dynamically now.
2021-04-02 18:48:00 +02:00
Matthias Koefferlein
773fcb6b67
z Stack description language enhanced.
2021-04-02 17:27:38 +02:00
Matthias Koefferlein
94556c1448
Merge branch 'master' into lvs-enhancements
2021-03-30 18:56:27 +02:00
Matthias Köfferlein
8cb73c2daa
Merge pull request #759 from KLayout/fill-enhancements
...
Fill enhancements
2021-03-30 12:36:48 +02:00
Matthias Köfferlein
9f26cffa23
Fixed issue #750 ( #752 )
2021-03-30 12:36:29 +02:00
Matthias Koefferlein
9f295523e4
explicit net joining - preparations
2021-03-27 21:56:53 +01:00
Matthias Koefferlein
dbeee1531e
Matrix2d and Matrix3d generalized for integer coordinates, added transformation methods for polygons, regions, boxes, edges, etc. Fill enhancements basically implemented. Needs testing.
2021-03-05 15:31:40 +01:00
Matthias Koefferlein
44baeea362
Disable view25d plugin if OpenGL is not enabled.
2021-03-02 22:01:08 +01:00
Matthias Koefferlein
be5714607f
Added a build dependency for safer building
2021-02-27 19:08:43 +01:00
Matthias Köfferlein
8b2ecf41df
Fixed issue by providing a compatibility bridge between tl::Stream (abstract paths) and tl::URI ( #734 )
2021-02-25 21:28:48 +01:00
Matthias Köfferlein
483f67307c
Merge pull request #732 from KLayout/lefdef-enhancements
...
Lefdef enhancements
2021-02-25 21:28:02 +01:00
Matthias Köfferlein
9d5636a89d
Merge pull request #729 from KLayout/search-improvements
...
Search improvements
2021-02-25 21:27:25 +01:00
Matthias Koefferlein
3db1db831f
Test update after update of LEF/DEF reader.
2021-02-21 21:23:45 +01:00
Matthias Koefferlein
eda1992a7d
Added VIA size selectors for LEF/DEF .map files.
2021-02-21 21:00:55 +01:00
Matthias Koefferlein
898dbf07e9
Implemented FILLS support for LEF/DEF
2021-02-21 18:27:25 +01:00
Matthias Koefferlein
96e3570c6d
LEF/DEF: preparations for FILLS support, UI rearrangement.
2021-02-21 17:28:58 +01:00
Matthias Koefferlein
b1fc6008d9
WIP: better progress when reading OASIS irregular repetitions.
2021-02-21 08:36:45 +01:00
Matthias Koefferlein
71a7326fe9
Enhancements to cell name search feature. Needs more debugging.
2021-02-10 00:17:01 +01:00
Matthias Koefferlein
d1e6845ae4
Replaced std::auto_ptr by std::unique_ptr because the latter is deprecated
2021-01-23 21:55:51 +01:00
Matthias Koefferlein
d7986c4849
Merge branch 'master' into opengl-fix
2021-01-23 16:22:56 +01:00
Matthias Koefferlein
1a3675956e
Ported to OpenGL 3.2 for Windows compatibility.
2021-01-23 15:54:02 +01:00
Matthias Köfferlein
41094ab839
Fixed #704 (DXF reader: rational splines not supported) ( #705 )
...
* Fixed issue #704 . TODO: replace algorithm by De Boor, check if accuracy is still maintained.
* Switch spline interpolation algorithm to De Boor for better numerical stability.
* Updated tests with DXF accuracy test, provide a warning for unsupported SPLINE types.
2021-01-21 07:48:08 +01:00
Matthias Koefferlein
dc40f9a885
Trying to fix OpenGL compatibility issue.
2021-01-20 22:25:16 +01:00
Matthias Koefferlein
618e1134c4
More robustness against test variations on different platforms.
2021-01-19 22:23:02 +01:00
Matthias Koefferlein
e1312d7a0c
Merge branch 'master' of github.com:KLayout/klayout into complex_drc_ops
2021-01-17 22:45:40 +01:00
Matthias Köfferlein
a026da9bf8
Merge pull request #699 from KLayout/oas-reader-issue
...
Fixed an issue with the OASIS reader (unused cells popped up as dummy…
2021-01-17 22:45:01 +01:00
Matthias Koefferlein
7d4310d343
Updated copyright to 2021
2021-01-05 22:57:48 +01:00
Matthias Koefferlein
dd84e64446
Fixed an issue with the OASIS reader (unused cells popped up as dummy top levels)
...
This happens when OASIS declares a cell name without actually using it.
The intended behavior is to drop such cells.
2020-12-30 23:37:01 +01:00
Matthias Koefferlein
cd73987b30
More consistent behavior of the preset views (front, top ...)
2020-12-28 21:13:07 +01:00
Matthias Koefferlein
a0d05753ad
No segfault on OpenGL initialization failure but nice error screen.
2020-12-28 00:09:27 +01:00
Matthias Koefferlein
45a8f7aa20
Merge branch 'master' into complex_drc_ops
2020-12-20 23:50:54 +01:00
Matthias Koefferlein
db19e92083
Fixed some merge issues.
2020-12-20 20:53:43 +01:00
Matthias Koefferlein
cfe38aab42
Merge branch 'lefdef'
2020-12-20 19:26:51 +01:00
Matthias Koefferlein
b6f710a9fe
WIP: Fixed DXF reader
2020-12-19 23:37:37 +01:00
Matthias Koefferlein
953367f3c1
Multi-mapping for layer map files for LEF/DEF reader
2020-12-19 22:11:23 +01:00
Matthias Koefferlein
9688da9ffd
WIP: test for multimapping in LEF/DEF
2020-12-19 21:28:22 +01:00
Matthias Koefferlein
d4b5dab0db
WIP: bugfix.
2020-12-19 20:35:58 +01:00
Matthias Koefferlein
8cc75438b0
WIP: LEF/DEF multi-mapping.
2020-12-19 19:42:40 +01:00
Matthias Koefferlein
2b61b48164
WIP: multi-mapping for named layer readers, bugfix for GDS/OASIS
2020-12-19 18:25:53 +01:00
Matthias Koefferlein
a1eb8c121b
WIP: implementation for GDS2 and OASIS, added tests.
2020-12-19 15:36:03 +01:00
Matthias Koefferlein
f86c13689b
WIP: some refactoring to simplify multi-mapping implementation
2020-12-19 13:21:33 +01:00
Matthias Koefferlein
1f635015ce
WIP: backward compatible implementation of multi-map capability of layer mapping.
2020-12-15 23:05:34 +01:00
Matthias Koefferlein
b5c0193a0a
LEF/DEF reader: Macro resolution mode is only effective now when reading DEF. Not when reading LEF.
2020-12-14 22:46:07 +01:00
Matthias Koefferlein
85311d414c
Implemented LEF DENSITY statement properly
2020-12-14 22:20:29 +01:00
Matthias Koefferlein
ab36a660fb
WIP: cold references - keep reference information while libraries are not there or cells are missing.
2020-12-13 19:11:12 +01:00
Matthias Koefferlein
78695f9c23
WIP: new technology management scheme, libraries can be tech specific, update of technology in layout updates library references
2020-12-13 12:13:21 +01:00
Matthias Koefferlein
db6b3d280e
Merge branch 'master' into complex_drc_ops
2020-11-22 09:31:15 +01:00
Matthias Koefferlein
96898d31d7
LEF/DEF layer map reader test case added.
2020-11-21 21:58:34 +01:00
Matthias Koefferlein
3b61255d9b
Bugfix, restore previous behavior for empty tech component suffix
2020-11-21 21:06:05 +01:00
Matthias Koefferlein
b0f25dd61e
Fixed DEF layer mapping for compatibility with 0.26
...
Problem was: general layers (e.g. OUTLINE) were not routed through
the layer map.
2020-11-21 20:39:31 +01:00
Matthias Koefferlein
6eac98907f
WIP: bugfix.
2020-11-21 01:00:28 +01:00
Matthias Koefferlein
2300c391ae
Better alignment DEF layer map reader with specification (still some options are ignore).
2020-11-21 00:38:25 +01:00
Matthias Köfferlein
248168ea67
Merge pull request #677 from KLayout/issue-666
...
Issue 666
2020-11-14 20:55:28 +01:00
Matthias Koefferlein
50dc53615c
Merge branch 'master' of https://github.com/KLayout/klayout into usability-enhancements
2020-11-13 02:09:42 +01:00
Matthias Koefferlein
4f0b9118c3
Added test for the collect modes, bugfixed the new modes.
2020-11-13 00:31:56 +01:00
Matthias Koefferlein
6c8f802444
Correct production of ghost cells for OASIS
2020-11-12 00:27:49 +01:00
Matthias Koefferlein
61696f1ae7
Don't emit CELLNAME records for cells which are not written. This was confusing the new implementation of the OASIS reader.
2020-11-03 23:10:50 +01:00
Matthias Koefferlein
2ef3290f65
WIP: updated some golden data (only sequence of cells), restored old error messages, proper reporting of cell names in OASIS error messages
2020-11-03 21:18:47 +01:00
Matthias Koefferlein
a92ebd0e17
WIP: cell name conflict resolution modes, bugfixed first implementation
2020-11-03 00:13:55 +01:00
Matthias Koefferlein
eb3600d620
WIP: First implementation. Needs testing.
2020-11-02 01:23:27 +01:00
Matthias Koefferlein
f1c7e2e8e1
Refactoring of the containers (Edges, Region, EdgePairs, Texts): size -> count, added hier_count. Added SRegion for shape iterator as generic polygonizable things
2020-10-11 17:51:54 +02:00
Matthias Koefferlein
15985c4ca8
Removed a duplicate definition
2020-09-16 22:23:43 +02:00
Matthias Koefferlein
b5e158a6b6
Merge branch 'master' into 2.5d-view-devel
2020-09-14 20:48:46 +02:00
Matthias Koefferlein
5c6d3775cb
Fixed a compilation issue for a shader program.
2020-08-31 00:45:49 +02:00
Matthias Koefferlein
1dc9d11745
Merge branch 'master' into 2.5d-view-devel
2020-08-30 23:40:54 +02:00
Matthias Koefferlein
be6a351385
Updated testdata after unused vias do no longer show up in imported DEF files.
2020-08-30 23:29:44 +02:00
Matthias Koefferlein
28cf0853b1
Restored previous behavior for FOREIGN cell resolution.
2020-08-30 02:15:30 +02:00
Matthias Koefferlein
b99cbb50e2
Provide better feedback on invalid layer and property specs in LEF/DEF reader options
2020-08-30 01:57:49 +02:00
Matthias Koefferlein
a6e750b088
Added a configuration option for providing macro substitution layouts (not through UI, only scripting so far)
2020-08-30 01:37:14 +02:00
Matthias Koefferlein
213eb9f1e8
Ignore COMP .. statements in LEF/DEF map file, "outline" renamed to "die area"
2020-08-29 08:57:21 +02:00
Matthias Koefferlein
1eea4e32b1
Provide scroll bars for rule-based part of LEF/DEF options.
2020-08-29 08:56:43 +02:00
Matthias Koefferlein
be15e2dbf6
Updated priority of map file purposes according to Stefan's suggestions.
2020-08-23 19:44:38 +02:00
Matthias Koefferlein
56dead9662
LEF/DEF component maskshift: some implementation tuning and test updates.
2020-08-23 19:20:53 +02:00
Matthias Koefferlein
af2bfce051
Tests and bug fixes for component maskshift implementation
2020-08-23 18:58:52 +02:00
Matthias Koefferlein
af7d8bba89
WIP: provide a LEF reader mode where all macros are read. For DEF only those macros which are used are read.
2020-08-23 01:29:10 +02:00
Matthias Koefferlein
dcc99060fc
WIP: further preparations for MASKSHIFT components.
2020-08-23 00:40:28 +02:00
Matthias Koefferlein
5b472f33ac
WIP: Bugfix.
2020-08-22 21:58:07 +02:00
Matthias Koefferlein
77164ea879
WIP: preparations for mask shift in components.
2020-08-22 21:15:39 +02:00
Matthias Koefferlein
608824fb36
Added LEF/DEF options to strm* buddies
2020-08-22 19:09:30 +02:00
Matthias Koefferlein
35249ef0b5
Reading LEF/DEF map files such that MASK is applied to previous entries too.
2020-08-19 23:47:25 +02:00
Matthias Koefferlein
d7fab925a0
Added an option for not reading all LEF files along with DEF files, but only selected ones.
2020-08-19 23:06:46 +02:00
Matthias Koefferlein
3da56815a0
Improved generation of MASKs for geometry-defined VIAs
2020-08-18 23:02:01 +02:00
Matthias Koefferlein
0caf468ad9
via cell name prefix wasn't persisted
2020-08-02 12:10:04 +02:00
Matthias Koefferlein
23ec53e1b2
Abbreviated LEF/DEF layer names for map files.
2020-08-02 12:01:28 +02:00
Matthias Koefferlein
84573a21ce
Skip END LIBRARY, so LEF files can be cat together
2020-08-02 11:31:37 +02:00
Matthias Koefferlein
404799bdfd
Bugfixed map file reader for mask case, added test
2020-08-02 00:56:55 +02:00
Matthias Koefferlein
440b2b122b
Fixed test cases - main reason is the different assignment of layer numbers, mainly for the auxiliary layers such as OUTLINE
2020-08-02 00:09:20 +02:00
Matthias Koefferlein
f4e75aaa74
WIP: reworked layer mapping scheme, needs fixing
2020-07-30 23:53:34 +02:00
Matthias Koefferlein
d069dde98e
WIP: first test case for mask support - needs testing.
2020-07-27 23:13:15 +02:00
Matthias Koefferlein
5c7862d8cd
Bugfix, update of golden data.
2020-07-25 23:28:38 +02:00
Matthias Koefferlein
974ce6c960
unused vias are not generated anymore - golden layouts updated.
2020-07-25 23:23:57 +02:00
Matthias Koefferlein
a9719ad78e
WIP: bug fixing.
2020-07-25 22:54:25 +02:00
Matthias Koefferlein
dbe5e19017
First implementation of masks for vias. Needs debugging.
2020-07-25 22:15:09 +02:00
Matthias Koefferlein
0d52da77ee
WIP: first version of reading with MASK
2020-07-18 22:59:02 +02:00
Matthias Koefferlein
b9c49f0603
Mask specific suffixes, datatypes for LEF/DEF reader.
2020-07-18 22:28:14 +02:00
Matthias Koefferlein
f17e3d50f0
Added doc link and manual page for layer specifications.
2020-07-18 18:46:42 +02:00
Matthias Koefferlein
de12c6247c
Removed confusing LEF import option - there is only import LEF macros or don't
2020-07-18 18:08:50 +02:00
Matthias Koefferlein
89745fd0de
Merge branch 'master' into lefdef-enhancments
2020-07-18 09:21:16 +02:00
Matthias Köfferlein
5dce0d8384
Implemented #603 (Coordinates for adjust origin) ( #604 )
2020-07-05 18:42:08 +02:00
Matthias Köfferlein
54cca8912b
Implemented #586 (issues with duplicate cell names) ( #605 )
...
As discussed in the ticket, the implementation will
check for unique cell names upon *writing* of a layout
file.
2020-07-05 18:41:44 +02:00
Matthias Köfferlein
e744eb32d1
Merge pull request #580 from KLayout/drawing-performance2
...
Drawing performance2
2020-06-28 16:14:48 +02:00
Matthias Koefferlein
d462a442a8
LEF/DEF reader
...
More consistently ignore the settings from the "Rule based layer mapping".
So if a map file is given, the map file statements shall not be overridden
by rules from the rule-based mapping tab.
2020-06-13 15:39:41 +02:00
Matthias Koefferlein
5992a9b509
Merge branch 'master' into lefdef-enhancments
2020-06-05 14:05:13 +02:00
Matthias Köfferlein
8db1e3577f
Fixed issue #578 (CIF writer issue with arbitrary angle) ( #581 )
...
* Fixed isse #578 (CIF writer issue with arbitrary angle)
* Added missing files.
2020-06-05 10:57:14 +02:00
Matthias Koefferlein
339a2a6fd7
Maybe fixed a performance issue (layout object needs to be locked)
2020-06-05 00:34:07 +02:00
Matthias Koefferlein
233574598b
Support for LEF via definition properties (syntax wise, not semantics wise)
2020-06-04 17:55:06 +02:00
Matthias Koefferlein
999c065262
Introducing iterated arrays for instances
...
Iterated instances are created for OASIS files
using irregular repetitions in viewer mode.
Reason: this way, the same drawing optimization
than for iterated shape arrays can be applied.
As this is a new API feature, some adjustments
had to be made to incorporate them into the
code.
2020-06-04 12:17:34 +02:00
Matthias Koefferlein
4aa1364e4b
Fixed DEF reader, updated golden test data.
2020-06-01 15:04:25 +02:00
Matthias Koefferlein
d7af7fc5c0
Merge branch 'lefdef-enhancments'
2020-06-01 13:37:45 +02:00
Matthias Koefferlein
82c6a5bc6b
WIP: fixed more gcc-9 warnings.
2020-05-31 21:50:10 +02:00
Matthias Köfferlein
ba46ffb276
Merge pull request #563 from KLayout/issue-487
...
Fix #487 (True text object support for DRC/LVS)
2020-05-26 22:44:53 +02:00
Matthias Köfferlein
a046457cc5
Fixed bug #568 (CIF writer issue with small rotation angles) ( #569 )
...
* Fixed bug #568 (CIF writer issue with small rotation angles)
* Fixed the reader bug too which created the rounding issue.
2020-05-25 22:10:06 +02:00
Matthias Koefferlein
c682cc85d0
Generalized concept of region, texts etc. into 'shape collections'. Fixed LVS and DRC tests.
2020-05-21 23:59:30 +02:00
Matthias Koefferlein
5fd60e0d49
Planning LEF/DEF enhancements for 0.27 now as this is a too big change.
2020-05-02 13:22:04 +02:00
Matthias Koefferlein
99ec635e5a
Start LEF browser in tech base dir in the context of a technology
2020-05-02 13:19:26 +02:00
Matthias Koefferlein
fd63d1017f
Added tests for LEF/DEF mapfile, fixed a few bugs.
2020-05-02 09:30:17 +02:00
Matthias Koefferlein
97022a3a87
Layer mapping scheme enhancements, UI enhancements
...
* A map file can now be specified and should be read relative
to the technology
* Giving a map file will disable the pattern-based mapping
* UI enhanced accordingly
* Added UI option to configure macro resolution mode
* Bugfix: LEF files have not been read relative to the tech
* Bugfix: Some options where not persistent
2020-05-02 00:14:06 +02:00
Matthias Koefferlein
0e68b910fa
Merge branch 'master' into lefdef-enhancments
2020-05-01 16:00:58 +02:00
Matthias Koefferlein
751340c963
LEF/DEF: Fixed placement of FOREIGN cell
2020-05-01 15:16:08 +02:00
Matthias Koefferlein
3d3bdb001f
Some patches for sonarqube
2020-04-26 10:25:46 +02:00
Matthias Koefferlein
c6b5d2f8d2
DXF reader code change suggested by clang-analyze
2020-04-26 08:42:50 +02:00
Matthias Koefferlein
3a7d9d0b0f
Fixed copyright/license topic.
2020-04-25 23:30:48 +02:00
Matthias Koefferlein
061e5d7286
Added LEF reading timer (LEF next to DEF)
2020-04-25 22:05:01 +02:00
Matthias Koefferlein
c602871e0e
Implemented Stefan's solution #3 for FOREIGN != MACRO in LEF
2020-04-25 21:08:11 +02:00
Matthias Koefferlein
f6140055d6
Modified reader scheme for FOREIGNCELL
2020-04-24 23:21:27 +02:00
Matthias Koefferlein
c7de542070
Some more refactoring of DEF layer mapping
2020-04-19 20:14:12 +02:00
Matthias Koefferlein
71906a5681
WIP: some further refactoring of the layer mapping scheme.
2020-04-19 19:12:03 +02:00
Matthias Koefferlein
040af426dc
WIP: refactoring of map file reading.
2020-04-19 16:54:41 +02:00
Matthias Koefferlein
e51f15b116
New layer flavors: special nets, LEF pins.
2020-04-19 14:38:14 +02:00
Matthias Koefferlein
9825245e0c
Implemented LEF MACRO FOREIGN
2020-04-19 12:16:55 +02:00
Matthias Koefferlein
d93ef3ff97
Timing reports for stream writers too, reporting file names for reader and writer timing.
2020-04-19 10:39:27 +02:00
Matthias Koefferlein
9a7f0a9c2a
Fixed a LEF/DEF reader bug (was '+ RECT' or '+ POLYGON' in SPECIALNETS)
2020-04-18 18:48:25 +02:00
Matthias Koefferlein
70d8334f8c
Merge branch 'lefdef-enhancments' of https://github.com/KLayout/klayout into lefdef-enhancments
2020-04-18 18:00:54 +02:00
Matthias Koefferlein
54cf57c772
LEF/DEF enhancements (via cellname suffix configurable, group separation disabled by default)
...
Two new reader options:
1.) via cell name prefix (default is "VIA_"). This name is put in front of the via name to form the cell cell name
2.) group separation disabled by default. Groups are not put into individual parent cells by default.
2020-04-18 17:58:50 +02:00
Matthias Koefferlein
d117e024f0
Removed TODO markers
2020-04-18 00:38:25 +02:00
Matthias Koefferlein
07ecaac598
Enhancements.
2020-04-18 00:17:17 +02:00
Matthias Koefferlein
747184beef
Using background color as configured.
2020-04-17 23:46:02 +02:00
Matthias Koefferlein
1604c089dc
Link between tech comp and 2.5d view
2020-04-17 19:02:13 +02:00
Matthias Koefferlein
b2216ec372
WIP: tech component + editor.
2020-04-17 11:15:50 +02:00
Matthias Koefferlein
7884446da1
Orientation cube, some refinement.
2020-04-17 00:25:21 +02:00
Matthias Koefferlein
f9aa89a0b3
WIP: bugfixes, refactoring.
2020-04-16 23:14:22 +02:00
Matthias Koefferlein
921af52643
DEF reader bugfix: wasn't reading SPECIALNETS + ROUTED + RECT
2020-04-14 23:15:08 +02:00
Matthias Koefferlein
61714090e3
Maybe fixed performance issue: usually it's not a good idea to iterate the layout's hierarchy while deleting something from it.
2020-04-14 22:48:18 +02:00
Matthias Koefferlein
2ec712b104
Implementation starts to make sense. TODO: major refactoring, a lot of utility functions like fit, ...
2020-04-13 22:18:52 +02:00
Matthias Koefferlein
9c00568301
WIP: compass, navigation, bug fixes.
2020-04-13 21:34:32 +02:00
Matthias Koefferlein
fd2749895c
WIP: foreground light, enhanced navigation ...
2020-04-13 18:13:17 +02:00
Matthias Koefferlein
194a2747e6
WIP: better hit point detection
2020-04-12 19:15:11 +02:00
Matthias Koefferlein
75b1b4dc54
WIP.
2020-04-12 18:38:39 +02:00
Matthias Koefferlein
55e79ef78f
WIP.
2020-04-12 16:56:30 +02:00
Matthias Koefferlein
d37608dac1
WIP.
2020-04-12 10:32:23 +02:00
Matthias Koefferlein
7077bac647
WIP.
2020-04-11 22:46:35 +02:00
Matthias Koefferlein
56d406aaad
WIP
2020-04-11 12:02:30 +02:00
Matthias Koefferlein
b5a51f15d0
WIP
2020-04-11 11:21:59 +02:00
Matthias Koefferlein
731dfffe1e
WIP
2020-04-11 11:21:36 +02:00
Matthias Koefferlein
7472bd4955
WIP: experiments on OpenGL view.
2020-04-10 22:40:53 +02:00
Matthias Koefferlein
a4c2cd34cf
Fixed some bugs.
2020-04-06 23:55:30 +02:00
Matthias Koefferlein
b7eb150f03
Fixed some bugs.
2020-04-06 23:52:51 +02:00
Matthias Koefferlein
1e2601d154
Fixed some build errors
2020-04-06 23:22:24 +02:00
Matthias Koefferlein
c4e5367b8a
First setup.
2020-04-06 23:22:24 +02:00
Matthias Koefferlein
9c62bb015f
Include BLOCKAGE in map file LEF/DEF, becoming case insensitive for purpose
2020-04-05 23:56:43 +02:00
Matthias Koefferlein
3ada29d606
Some bugfixes for LEF/DEF reader for special nets (extension handling)
2020-04-05 23:49:19 +02:00
Matthias Koefferlein
df7c530013
Bugfix for the net reader of DEF - wasn't properly reading diagonal parts.
2020-04-05 22:56:04 +02:00
Matthias Koefferlein
cd801206bc
Some refactoring - DEF scanner more modular (5)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
4757ad5044
Some refactoring - DEF scanner more modular (4)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
dea3743d59
Some refactoring - DEF scanner more modular (3)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
9df6d29761
Some refactoring - DEF scanner more modular (2)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
99af144d98
Some refactoring - DEF scanner more modular
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
f11a3a0dd5
Bugfix: MINWIDTH ... WRONGDIRECTION wasn't considering DIRECTION VERTICAL
...
Added/updated some tests, some refactoring.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
4a24b727d5
Tried to implement MINWIDTH .. WRONGDIRECTION in LEF58_MINWIDTH property
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
bcaf28c94c
Bugfix LEF/DEF reader: via needs to change the layer also if it's inside a DEF. Added more test cases.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
2c60338ae8
Added DO .. BY .. STEP to vias in SPECIALNETS in DEF reader, added one more private testcase
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
0ae97279d8
Added optional MASK specification to VIA's RECT and POLYGON elements
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
8796b65ddb
DEF reader patched: after via continue with the new metal layer with the width given by the rule.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
ee3ee5bd8e
Another update of the map file reader for LEF/DEF
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
dd63b727f8
Another update of the map file reader for LEF/DEF
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
67a1c0ba25
Updated implementation of mapping file reader for LEF/DEF.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
e15d99e4da
LEF reader fix: determine routing layers for vias without VIARULE from involved layers
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
d328901799
DEF reader fix: TAPER has to disable NONDEFAULTRULE for the segment
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
44503facea
Attempt to auto-import .map files for LEF/DEF reader. Probably needs adjustment.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
99d3610a6a
Implemented #527 (wildcard layer mapping targets)
...
commit d77702cd86066f3a97d740a95923fa598c2ff07b
Author: Matthias Koefferlein <matthias@koefferlein.de>
Date: Sat Mar 28 21:28:39 2020 +0100
Wildcard expansion feature on layer mapping
Finished feature, added doc and test.
The solution is to use placeholder indexes for the
layer mapping which are substituted by the real
layers when they are encountered.
commit af60b5f18acfe3c5e2f1d4e6bc6ee752a246dc0d
Author: Matthias Koefferlein <matthias@koefferlein.de>
Date: Sat Mar 28 19:11:32 2020 +0100
Preparations for new feature: introduce relative and wildcard target layer specs
2020-03-28 22:49:57 +01:00
Matthias Koefferlein
c10ccccdf7
Merge branch 'app-refactoring' into doc-args
2020-03-15 21:32:39 +01:00
Matthias Koefferlein
53c81cc572
Got rid of most of the @args
2020-03-14 21:50:47 +01:00
Matthias Koefferlein
04ae4d5d28
Updated fix (wasn't correctly representing some via pattern)
2020-03-02 00:20:15 +01:00
Matthias Koefferlein
cec1910bf0
Added tests.
2020-03-02 00:13:44 +01:00
Matthias Koefferlein
c9955d39a6
Fixed issue-517
2020-03-02 00:09:41 +01:00
Matthias Koefferlein
58de38739a
WIP: some refactoring, debugging output for netlist compare
...
Abstraction: a central getenv() feature to wrap all the system-specific things
Netlist compare debug and options can be enabled through environment variables:
KLAYOUT_NETLIST_COMPARE_DEBUG_NETCOMPARE=1: print netlist compare debug info
KLAYOUT_NETLIST_COMPARE_DEBUG_NETGRAPH=1: print net grapg
KLAYOUT_NETLIST_COMPARE_CASE_SENSITIVE=1: make netlist compare case sensitive
2020-02-27 00:51:55 +01:00
Matthias Koefferlein
d01759aa60
Implemented #500 (limit number of shapes in net tracer)
2020-02-23 11:02:15 +01:00
Matthias Köfferlein
1992fc762a
Issue #489 (Pin names as shape properties) ( #507 )
...
* Fixed #489 (LEF/DEF reader provides pin names as properties)
* Removed vi swap file
* #489 fixed (LEF pins also get properties, added tests)
2020-02-23 00:29:12 +01:00
Matthias Koefferlein
68472e6e14
WIP: refactoring ongoing.
2020-02-07 01:27:24 +01:00
Matthias Koefferlein
0f69c24e79
WIP: avoids a segfault because of missing manager
2020-02-04 20:50:46 +01:00
Matthias Koefferlein
cc37ecfd17
Fixed titles of file dialogs.
2020-01-28 23:45:40 +01:00
Matthias Koefferlein
b8c82c4f8b
Updated copyright notice to 2020
2020-01-05 00:59:43 +01:00
Matthias Koefferlein
91b7d6a2df
Fixed compatibility issue of MAG reader on Windows
2019-12-08 22:06:47 +01:00
Matthias Koefferlein
8916dd12a9
Small bugfix for MAG writer + tests.
2019-12-08 20:25:25 +01:00
Matthias Köfferlein
2fa545d80b
Merge pull request #435 from KLayout/issue-429
...
Issue 429
2019-12-02 21:15:05 +01:00
Matthias Köfferlein
e061a0a932
Merge pull request #433 from KLayout/wip
...
Some enhancements
2019-12-02 21:14:35 +01:00
Matthias Koefferlein
904bbf15a1
Refinement of tech management and MAG reading
...
- The MAG reader now has access to the details of the proposed
technology (set in KLayout), specifically inside library paths
($(tech_name), $(tech_dir)). This allows setting the MAG reader
path relative to the technology path.
- If no specific technology is set before MAG files are read and
the technology listed there is found in KLayout, KLayout will
attach the layout to this technology.
2019-12-01 18:19:55 +01:00
Matthias Koefferlein
baffb940d1
Implemented #429 : final touches to doc and tests for RBA/pya API.
2019-12-01 16:41:27 +01:00
Matthias Koefferlein
152dc87682
Implemented a dummy arrangement of cells when the MAG output file isn't corresponding to a existing cell - useful for obtaining a cell overview
2019-12-01 10:13:11 +01:00
Matthias Koefferlein
c49bc17e6a
CIF writer: only layer names should be forced to upper case. Cell names don't need this.
2019-11-30 22:53:29 +01:00
Matthias Koefferlein
9eb09c3a5d
Enhancements to implementation
...
- OASIS layers are turned into pure layer name (not lxdy_name) for
MAG output
- Boxes of instances had been incorrect
- consistent naming of cell files in presence of special chars
2019-11-30 22:30:28 +01:00
Matthias Koefferlein
f8743e7411
Added PearlRiver die Magic files as test case.
2019-11-30 21:16:31 +01:00
Matthias Koefferlein
f16a5085c5
WIP: some implementation refinement
...
- MAG writer output name does not need to match a cell name
(this file is not written in this case, but the path and extension
are taken from it). A warning is issued in this case.
- Strings for layer and cell names are normalized (special chars, UTF8)
- Cell duplicates won't be produced but existing cells are reused.
This enables "incremental reads".
2019-11-30 19:04:54 +01:00
Matthias Koefferlein
c6ede46fd0
WIP: substantial changes
...
- force lower-case layer names to allow CIF/MAG loop (CIF needs
upper-case layer names, MAG doesn't)
- reverted CIF reader to standard
- new options for writer: tech, "zero timestamp".
- file name MUST be consistent with one cell name.
Reason: it's not possible to derive the initial
cell from the given options, so without the file name
being consistent, we can't know what to write there.
Basically the file name rather supplies the path.
2019-11-30 00:09:44 +01:00
Matthias Koefferlein
9fb73a3928
A small enhancement for CIF / less ignorant reader
...
The change is to allow lower-case cell and layer names when they
are separated from the command with a blank. So
"Layername XZY;": "L" is the command, "ayername" is ignored
BUT:
"L xyz;": "xyz" is not part of the command, but the layername.
Same for "DS".
This is a deviation from the "standard", but a useful one. Otherwise
case sensitivity cannot be maintained anymore in a CIF/Magic loop.
2019-11-29 01:15:06 +01:00
Matthias Koefferlein
0796b20c2d
Added a first test for Magic reader/writer
2019-11-29 01:14:41 +01:00
Matthias Koefferlein
3f9dd59593
WIP: MAG reader now is compliant with writer (and Magic I hope)
2019-11-29 00:25:28 +01:00
Matthias Koefferlein
3283219b0f
WIP: writer functionality debugged and enhanced (triangles, correct arrays etc.)
2019-11-28 23:58:19 +01:00
Matthias Koefferlein
cef868d774
WIP: ongoing development.
2019-11-28 01:03:25 +01:00
Matthias Koefferlein
11e3209d4a
WIP: removed traces of CIF copy
2019-11-28 00:45:47 +01:00
Matthias Koefferlein
4ac5801cc7
WIP: Implementation draft of MAG file writer.
2019-11-28 00:20:30 +01:00
Matthias Koefferlein
5c217b90b5
WIP: starting MAG writer.
2019-11-27 22:33:50 +01:00
Matthias Koefferlein
a980332c76
Fixed MAG reader (rlabels)
2019-11-26 23:38:23 +01:00
Matthias Koefferlein
6399f4693a
Bugfixed MAG reader.
2019-11-26 23:03:55 +01:00
Matthias Koefferlein
211524a0c0
WIP: reader starts becoming functional.
2019-11-26 01:03:24 +01:00
Matthias Koefferlein
aece8b299f
WIP: generalized code.
2019-11-25 19:54:24 +01:00
Matthias Koefferlein
2acb66182a
WIP: basic framework
2019-11-25 00:07:56 +01:00
Matthias Koefferlein
6648b53822
Fixed issue #419 (multiple top circuits after flatten of netlist)
...
The problem is solved by always producing subcircuits for cell
instances, even if there are no connections.
The netlist comparer had to be adjusted too because subcircuits
without pins were used for representing "unknown" subcircuit pairing.
In addition, this patch should lead to a better matching of
parallel subcircuit configurations where two different subcircuits
are entirely parallel.
2019-11-20 21:56:12 +01:00
Matthias Koefferlein
181d5b48e6
Fixed consistent typo: PCell's -> PCells
2019-11-17 21:47:11 +01:00
Matthias Koefferlein
56084b6b59
Merge branch 'dvb'
2019-09-08 20:07:16 +02:00
Matthias Koefferlein
c95a0652cc
First implementation of deep mode for XOR tool.
2019-09-07 22:30:10 +02:00
Matthias Koefferlein
e2cc0c48b1
Provide flat and hierarchical 'trace all nets' feature, added Netlist#flatten.
2019-09-06 23:13:21 +02:00
Matthias Koefferlein
f6492c80c5
Stream import: support multiple files
...
Multiple files can now be selected for "File/Import/Other Files into current".
NOTE: performance for many files may not be excellent
due to re-sorting of hierarchy and bounding box re-computation.
2019-08-26 22:28:35 +02:00
Matthias Koefferlein
bceccd7ac0
Fixed issue #330
2019-08-21 00:38:57 +02:00
Matthias Koefferlein
e9eed3842b
Fix for layout query performance improvement: needs to check for qualified cell name (with lib), not pure cellname
2019-08-18 19:09:07 +02:00
Matthias Koefferlein
4f9208577b
Added option to configure capture range.
2019-07-25 00:06:50 +02:00
Matthias Koefferlein
8f21cdf449
Fixed issue #305 (CIF reader issue with rotated boxes)
2019-07-21 22:57:02 +02:00
Matthias Koefferlein
a4d2be7fbf
Merge remote-tracking branch 'origin/master' into dvb
2019-06-19 23:14:27 +02:00
Matthias Koefferlein
c7fe1cb189
Fixed #275 (don't write PCell context with OASIS)
...
The ability to disable PCell context on OASIS output
with the "write_context_info" option was added.
2019-06-16 16:48:30 +02:00
Matthias Koefferlein
13f4547789
More progress reporting, performance enhancements
...
Main performance enhancement: don't update layouts
between make_layer in DeepRegion
2019-06-09 09:40:45 +02:00
Matthias Koefferlein
9c6ed3e956
Merge remote-tracking branch 'origin/master' into dvb
2019-05-29 22:32:05 +02:00
Matthias Koefferlein
7b7e35d3d5
Fixed some compiler warnings.
2019-05-27 18:05:38 +02:00
Matthias Koefferlein
bfe5c7c2b9
Fixed #265 : put CIF at the end of the detection chain
...
The CIF format is kind of fuzzy and supports a high
degree of syntactic freedom. Hence the format detection
is not quite reliable. Do CIF as last resort.
2019-05-10 23:10:14 +02:00
Matthias Koefferlein
30fdb0089b
Integration of netlist extractor with net tracer plugin (-> "trace all nets")
2019-05-05 22:30:07 +02:00
Matthias Koefferlein
2aaec56adb
WIP: netlist browser - extended the net export scheme of build_net to support net annotation and flattening.
2019-05-03 23:33:37 +02:00
Matthias Koefferlein
4e15b3df92
Netlist browser: detailed info box.
2019-04-30 00:18:11 +02:00
Matthias Koefferlein
eacd5fc19d
Fixed some spelling errors (allow to, allows to)
2019-04-03 19:15:09 +02:00
Ruben Undheim
5d26cf4c77
Spelling errors in code and comments fixed
2019-03-31 15:25:18 +00:00
Matthias Koefferlein
5dc833970b
Hierarchical implementation DRC functions (measurements)
2019-02-16 22:34:36 +01:00
Matthias Koefferlein
d4d7ea8022
Updated copyright.
2019-01-08 01:09:25 +01:00
Matthias Koefferlein
cbca1fb530
Cleaned up a namespace mess (db::Net was duplicated in NetTracer and db itself) - renamed to db::NetTracerNet, but better solution would be to rename db to something else in the plugin.
2019-01-05 22:39:52 +01:00
Matthias Koefferlein
643e58f856
Merged PR #199 into pymod branch
2018-11-24 00:53:23 +01:00
Matthias Koefferlein
f4b2a015dc
Fixed #198 (DXF contour stitching renders fuzzy polygons)
2018-11-22 22:19:46 +01:00
Matthias Koefferlein
19a3f19378
Removed some misleading comments.
2018-10-09 21:24:23 +02:00
Matthias Koefferlein
a7846ead9f
Add-on to previous commit: fixes some Python issues
...
The comments for LoadLayoutOptions#layer_map, #cif_layer_map
and #dxf_layer_map have been updated to reflect the new status
of these properties (which have been methods). The tests
are updated accordingly (layer_map() -> layer_map).
2018-10-09 00:18:45 +02:00
Matthias Koefferlein
db981b0f7d
A huge patch to make Windows build functional again after recent updates
...
The issue was: for MacOS/clang, the virtual format-specific
option structs had to be embedded in one compile unit (for RTTI).
In Windows this will lead to link errors since the DLL is not
reachable at build time for the generic reader/writer configuration in
the buddy tools.
The solution is to use GSI methods (provided for scripting) to
set the reader/writer options in a generic way that does not
require linking against the plugin DLLs.
2018-10-08 23:31:22 +02:00
Matthias Koefferlein
4ffcaba5d1
Important bug fix for MacOS
...
Unlike Linux, RTTI does not work in MacOS/clang when the classes
originate from different compile units. I think that Linux's C++
runtime not only checks for identical vtable, but alternatively
for same name. On MacOS, dynamic_cast will fail instead. This fix
solves this issue by placing the important steam format option
specializations into a single specific shared object (the DB plugin).
2018-10-04 14:10:22 -07:00
Matthias Koefferlein
d03d4bec1d
Fixed build after merge.
2018-09-26 21:27:31 +02:00
Matthias Koefferlein
6795de1dbb
Merge remote-tracking branch 'remotes/origin/master' into pymod
...
Provides fixes for issue #166 and #172 .
2018-09-26 21:15:08 +02:00
Matthias Köfferlein
6a12a6a4cd
Normalize CRLF for OASIS reader test's golden data on Windows.
2018-09-11 07:35:01 +02:00
Matthias Köfferlein
99a71b771d
Fixed link issue in net tracer plugin both for Linux and Windows (hopefully)
2018-09-10 22:53:49 +02:00
Matthias Koefferlein
ad03533a7b
OASIS tests made robust against hash implementation
...
The text writer was made "normalizing": it will introduce
a certain element order (string sorting). This way, OASIS
files can be compared against golden data without
changes in the order due to different implementation of
hash containers.
2018-09-10 01:16:49 +02:00
Matthias Koefferlein
84072aa23e
Fixed a few things that got damaged in Linux build while doing MSVC compatibility.
2018-09-09 22:43:22 +02:00
Matthias Köfferlein
356a468d66
A couple of changes to make MSVC work - not done yet.
2018-09-02 00:40:35 +02:00
Matthias Köfferlein
e47a0966bd
Bugfix: net tracer memory corruption issue - missing copy ctor/assignment
2018-09-01 21:26:29 +02:00
Matthias Köfferlein
af50c0f0c3
Many warnings fixed for MSVC
2018-08-29 01:46:18 +02:00
Matthias Köfferlein
860014e3ae
MSVC builds for the first time - still a lot of patches required
...
Some suspicious compiler warnings remain.
2018-08-28 23:19:58 +02:00
Matthias Koefferlein
46b0f079cf
Skipping HTTP tests rather than disabling them
...
With this commit, tests are logged as skipped and
not just omitted, if HTTP support is not enabled
(neighter Qt nor curl)
2018-07-15 20:58:54 +02:00
Matthias Koefferlein
49fd896e68
Another fix for Windows build.
2018-07-14 09:31:40 +02:00
Matthias Koefferlein
2f99a8a67d
Another fix for Windows build.
2018-07-14 09:19:23 +02:00
Matthias Koefferlein
18782666f7
WIP: made Qt build functional again.
2018-07-09 00:03:19 +02:00
Matthias Koefferlein
260243a6d9
WIP: Fixed PCB import for non-Qt builds, added missing file.
2018-07-08 23:44:36 +02:00
Matthias Koefferlein
7ede06dca5
Build fixed, basic bugs fixed and made unit test framework work. Added tests for tlString.
2018-07-03 22:09:38 +02:00
Matthias Koefferlein
a82adbbe83
Massive reduction of Qt dependencies, but also massive refactoring.
2018-07-03 00:51:36 +02:00
Matthias Koefferlein
dd9467d097
WIP: fixed streamer headers.
2018-06-20 01:13:31 +02:00
Matthias Koefferlein
0c766150b0
WIP: Fixed install targets for plugins.
2018-06-19 21:21:44 +02:00
Matthias Koefferlein
361bc64870
WIP: fixed some build issues, removed some link dependencies which causes issues on Windows.
2018-06-19 20:31:55 +02:00
Matthias Koefferlein
8845d18c74
Renamed pykl to klayout - because of name clash with the klayout binary, the python module now sits inside 'pymod'
2018-06-19 00:50:27 +02:00
Matthias Koefferlein
4f602bb394
WIP: fixes for Windows build.
2018-06-18 00:06:38 +02:00
Matthias Koefferlein
538f8f3d53
WIP: added missing files.
2018-06-17 16:51:01 +02:00
Matthias Koefferlein
4097a5b361
WIP: turned ext module into plugins.
2018-06-17 09:43:25 +02:00
Matthias Koefferlein
7e56ce23e5
WIP: Moved net tracer into plugin, GSI is now in db module.
2018-06-16 00:56:35 +02:00
Matthias Koefferlein
381357bfcb
WIP: correctly assigned db module to LEF/DEF reader GSI declaration
2018-06-15 01:04:42 +02:00
Matthias Koefferlein
10cfac3d42
WIP: fixed linker issues.
2018-06-15 00:31:46 +02:00
Matthias Koefferlein
c360f6d4a7
WIP: first steps for making technology a db component.
2018-06-14 23:38:23 +02:00
Matthias Koefferlein
6bc1537bea
WIP: remove vim swap file.
2018-06-14 00:02:41 +02:00
Matthias Koefferlein
8045989fa3
WIP: moved PCB and LEF/DEF import from ext to db/lay namespace
2018-06-13 23:59:39 +02:00
Matthias Koefferlein
4f63f5102b
WIP: fixed PCB unit test .pro file.
2018-06-13 23:31:50 +02:00
Matthias Koefferlein
9ca011d138
WIP: turned Gerber and LEF/DEF import into plugins.
2018-06-13 23:27:16 +02:00
Matthias Koefferlein
5421f77e61
WIP: finished refactoring to plugins for CIF, DXF & OASIS too.
2018-06-13 22:23:27 +02:00
Matthias Koefferlein
9883ea5679
WIP: added streamers plugin structure (partially)
2018-06-13 21:39:39 +02:00
Matthias Koefferlein
409392d561
WIP: started refactoring the plugin structure. Goal: standalone db module with it's own plugins like LEF/DEF, Gerber, MEBES including GSI bindings.
2018-06-13 00:33:43 +02:00
Matthias Koefferlein
74ad89cf43
Two tiny fixes for Windows build.
2017-08-29 00:30:23 +02:00
Matthias Koefferlein
000917d2c9
Refactoring: moved unit tests to libraries for some libs (ut modularization)
2017-08-26 22:44:31 +02:00
Matthias Koefferlein
55e797ffaf
Provide proper INSTALL targets for .pro files
...
Plus: reduce compiler warnings
2017-08-21 02:33:45 +02:00
Matthias Koefferlein
a9b64d1e57
Refactoring and first bd tests
...
The goal of the refactoring is to support unit tests
for the db library.
For this, a distributed unit test concept has been
introduced (later to be extended to other libs).
Unit tests are shared objects called ".ut" and are
automatically loaded by the ut runner. The bd library
now has two folders - one for sources and one for the
unit tests. The sources are separated into lib and apps.
First unit tests for the writer options have been
provided.
2017-08-19 18:47:52 +02:00
Matthias Koefferlein
16852a0ea0
And another round of windows build fix ...
2017-08-12 21:55:58 +02:00
Matthias Koefferlein
d777508755
One more round of windows build fix ...
2017-08-12 21:36:59 +02:00
Matthias Koefferlein
f43592916e
Hopefully fixed the build script version for all platforms ..
2017-08-12 19:05:59 +02:00
Matthias Koefferlein
ac2b10eca5
Avoid multi-config builds to simplify build scripts.
2017-08-12 18:48:06 +02:00
Matthias Koefferlein
c479dfa7c6
Modified plugin targets for Windows compatibility.
2017-08-12 18:25:56 +02:00
Matthias Koefferlein
4e299d45f2
Provisions for self-contained plugin tests
...
Plugin tests are not placed into a "*.klp_ut" shared object
and are executed by the unit test runner.
2017-08-12 18:03:45 +02:00
Matthias Koefferlein
08676f0a01
Add private plugin data to .gitignore.
2017-02-12 16:54:05 +01:00
Matthias Koefferlein
7fa185a9b3
Added (empty) plugin directory, fixed main .pro file.
2017-02-12 14:17:18 +01:00