Matthias Koefferlein
7143e75310
Some refactoring: cell variant collector isn't a big template anymore
2019-02-19 19:16:55 +01:00
Matthias Koefferlein
a69e27b769
Clean up resources in DRC.
2019-02-18 23:44:14 +01:00
Matthias Koefferlein
3918172c6a
Fixed a nasty issue with editable mode.
2019-02-18 23:34:46 +01:00
Matthias Koefferlein
7f71cc3a56
Some bug fixes, added tests for hier DRC (at least for what is there yet)
2019-02-18 22:24:34 +01:00
Matthias Koefferlein
0bed4615aa
Fixed unit tests.
2019-02-18 21:01:19 +01:00
Matthias Koefferlein
9ec6b44c93
Added some tests for the previous commit.
2019-02-18 00:15:26 +01:00
Matthias Koefferlein
b91edbabde
Enabled deep mode for DRC
2019-02-17 23:21:23 +01:00
Matthias Koefferlein
311318c578
Ported edge/edge DRC functions to hierarchical mode.
2019-02-17 18:54:33 +01:00
Matthias Koefferlein
c40f147dc7
Edge/edge and edge/polygon interaction test ported to hierarchical mode.
2019-02-17 18:36:15 +01:00
Matthias Koefferlein
7ef0451ca8
Partial segments of edges converted to hierarchical operations.
2019-02-17 17:53:21 +01:00
Matthias Koefferlein
74006b6208
Hierarchical implementation of extended method for edges
2019-02-17 17:34:31 +01:00
Matthias Koefferlein
ae783a2245
Hiearchical implementation of edge filter.
2019-02-17 16:18:24 +01:00
Matthias Koefferlein
61d766bd4c
Hierarchical implementation of edge to region operations.
2019-02-17 16:05:39 +01:00
Matthias Koefferlein
e6ee1c064e
Hierarchical implementation of edge/edge booleans.
2019-02-17 15:07:16 +01:00
Matthias Koefferlein
8e5bffcf18
Hierarchical angle check.
2019-02-17 11:42:30 +01:00
Matthias Koefferlein
a7bfaac424
Cell variant resolution by propagation, grid check now implementation hierarchically (with propagation)
2019-02-17 10:59:04 +01:00
Matthias Koefferlein
5dc833970b
Hierarchical implementation DRC functions (measurements)
2019-02-16 22:34:36 +01:00
Matthias Koefferlein
5a994fef6d
First steps towards hiearchical DRC - needs testing.
2019-02-16 00:35:29 +01:00
Matthias Koefferlein
6e35e80963
Hierarchical implementation of polygon vs. edge interact
2019-02-15 23:43:45 +01:00
Matthias Koefferlein
78617930dd
Hierarchical implementation of self-overlap merge.
2019-02-13 22:41:12 +01:00
Matthias Koefferlein
ddcfda8761
Some optimization: keep merged state in deep region.
2019-02-13 17:17:03 +01:00
Matthias Koefferlein
b0fc2be96e
Deep regions: some more operations implemented hierarchically
...
- snap (!) - but only for gx == gy
- filtering
- interact/inside/outside/overlap + not_... variants
- edges
2019-02-13 01:07:32 +01:00
Matthias Koefferlein
10f9de8b66
Added test for edge-based clusters, edge connectivity modes
2019-02-12 22:14:50 +01:00
Matthias Koefferlein
98864b1eda
Some refactoring (removed code copies)
2019-02-12 21:27:17 +01:00
Matthias Koefferlein
4b5736ba6a
Added result type template parameter to local hier processor.
2019-02-12 20:32:07 +01:00
Matthias Koefferlein
6404ca6b1d
WIP: Deep edge pairs
2019-02-12 00:08:47 +01:00
Matthias Koefferlein
43014d6923
WIP: some testing and bug fixes for hierarchical report db generation.
2019-02-11 00:22:19 +01:00
Matthias Koefferlein
2d9a3aaaa6
WIP: Hierarchical production of error db's. Needs testing.
2019-02-11 00:11:03 +01:00
Matthias Koefferlein
dd4fcd9e36
WIP: templatized local hierarchical processor.
2019-02-10 18:39:32 +01:00
Matthias Koefferlein
a81a8cdbc8
Modified edge transformation to maintain the orientation paradigm
...
When the transformation is mirroring, edges now swap their
points to maintain the right-is-inside paradigm.
2019-02-10 16:03:46 +01:00
Matthias Koefferlein
a14ca01bac
WIP: more on deep edge collections.
2019-02-10 15:33:14 +01:00
Matthias Koefferlein
f22217b6c4
WIP: deep edges and edge pairs.
2019-02-10 10:22:47 +01:00
Matthias Koefferlein
4abc38a5cc
Test for deep/flat collaboration
2019-02-10 08:28:48 +01:00
Matthias Koefferlein
e8e45b7272
Some tests, smooth and round method of deep region
2019-02-09 23:51:35 +01:00
Matthias Koefferlein
7a86f0d878
Bugfix: size method needs to produce polygon refs so the output is usable as input for booleans too.
2019-02-09 22:55:34 +01:00
Matthias Koefferlein
b6dd149f53
Changed variant suffix to to be consistent with cell name suffix generation in KLayout.
2019-02-09 19:21:14 +01:00
Matthias Koefferlein
1f3af7bbfe
Hierarchical area and perimeter and sizing
...
Area and perimeter computation happens hierarchically
now. Magnified instances are supported.
Sizing is implemented hierarchically.
For anisotropic sizing, orientation variants may be
generated. For both isotropic and anisotropic
magnification variants will be created.
2019-02-09 19:13:54 +01:00
Matthias Koefferlein
bbf7b2768b
WIP: cell variant collecting and building.
2019-02-09 16:29:34 +01:00
Matthias Koefferlein
50c8c067d5
WIP: cell variant formation utility class.
2019-02-07 23:13:23 +01:00
Matthias Koefferlein
decc5ede13
Robustification of Region
...
- Tests for merge
- Locking the layout when writing back the data for
performance improvement
2019-02-05 23:39:31 +01:00
Matthias Koefferlein
7c043dbb99
WIP: fixed DeepRegion implementation somewhat. Needs testing.
2019-02-05 00:25:32 +01:00
Matthias Koefferlein
981d668161
WIP: introduced hierarchical merge and some other hierarchical operations.
2019-02-04 23:43:19 +01:00
Matthias Koefferlein
9c0123df20
Implemented implicit joining of nets with the same label.
2019-02-03 21:34:23 +01:00
Matthias Koefferlein
3f1cd226a5
Made net name optional in l2n format.
2019-02-03 13:33:58 +01:00
Matthias Koefferlein
f9c33733b9
l2n format writer and reader: more compact output
2019-02-03 01:49:48 +01:00
Matthias Koefferlein
1ea687d7b7
More details control over verbosity of region ops
...
Plus: the region op control attributes (threads,
min_coherence etc.) got lost when replacing the
delegate of a region. Now they are maintained in
most cases.
2019-02-03 01:48:14 +01:00
Matthias Koefferlein
99f111fe01
Attempt to achieve reproducibility between MSVC and gcc
...
Applies to dbHierProcessor.cc:
The issue was related to std::unordered_set/map which
(as the name says) is not ordered. The output of the
boolean core computation step is currently dependent
on the order (it's single pass), hence the order of
the contexts matters.
Using ordered sets where possible and explicit
sorting might help.
2019-02-02 22:43:42 +01:00
Matthias Koefferlein
5daf34ed76
Merge remote-tracking branch 'origin/windows-compat' into dvb
2019-02-02 02:36:14 +01:00
klayoutmatthias
1a080cc4d7
Windows build compatibility.
2019-02-02 02:33:48 +01:00
Matthias Koefferlein
c90f7e4af9
Introduced perimeter parameters for MOS3/MOS4
2019-02-02 01:29:28 +01:00