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
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
Matthias Koefferlein
11cfe36ed1
Some MSVC build issues fixed (hopefully)
2019-02-01 23:18:54 +01:00
Matthias Koefferlein
f2fff5cca1
Fixed compile issue.
2019-02-01 00:00:10 +01:00
Matthias Koefferlein
efe06046aa
Bugfixes (dbu, global nets)
...
1.) Fixed bug on build_nets when DBU's of target
and source layout were different
2.) Global nets of subcircuits need to be considered
also when they are already connected through other
connections.
2019-01-31 23:50:34 +01:00
Matthias Koefferlein
57305977a4
Spice writer delegate fix
...
- Changed to const & objects in the Spice writer delegate
to non-const & for Ruby/Python reimplementation (as const/non-const
ambiguity is an issue for Ruby/Python we cannot efficiently
work with const refs)
- Updated test data because the previous implementation wasn't
using refs but rather copies of device and device class
objects.
2019-01-31 22:23:58 +01:00
Matthias Koefferlein
4068478887
Implemented SPICE writer + tests.
2019-01-31 00:07:10 +01:00
Matthias Koefferlein
7d06ea83c1
Bugfix: a segfault happened during net cluster formation because make_path was messing up the memory layout of the cluster collections.
2019-01-28 21:29:34 +01:00
Matthias Koefferlein
7e42ff83cd
More fine-tuning of verbosity of log output for local processor.
2019-01-28 21:28:23 +01:00
Matthias Koefferlein
da8b2854de
Some fine-tuning of the timer output verbosity of the edge processor.
2019-01-28 21:27:41 +01:00
Matthias Koefferlein
2da7b218b4
Print errors on log when running device extractor.
2019-01-27 22:01:29 +01:00
Matthias Koefferlein
794c31329a
Bugfix: internal error when running netlist extraction.
2019-01-27 22:00:30 +01:00
Matthias Koefferlein
458d00969c
Fixed issue #228
...
Reason for the problem: the interaction test
has to keep separate "inside" records for both
below and above the scanline, not just once.
With the single record, the step in the
left polygon erased the "inside" condition.
2019-01-27 00:04:15 +01:00
Matthias Koefferlein
863c6ba8de
Fixed a hierarchy traversal bug in the hier processor.
2019-01-26 21:53:44 +01:00
Matthias Koefferlein
4712ee0f29
Activated DeviceAbstract for GSI.
2019-01-25 22:40:41 +01:00
Matthias Koefferlein
29264013b0
WIP: more consistent handling of polygon splitting parameters.
2019-01-25 22:28:25 +01:00
Matthias Koefferlein
12aaa2db20
Refactoring: unified handling of splitting parameters.
2019-01-25 21:48:56 +01:00
Matthias Koefferlein
6da9bc5e85
Updated tests after switching to boolean core.
2019-01-25 21:38:45 +01:00
Matthias Koefferlein
707c761bac
WIP: local hierarchical operations: take boolean core rather than shape ref core -> better hierarchical quality. Tests need to be fixed.
2019-01-25 00:21:01 +01:00
Matthias Koefferlein
a635435899
Moved some code
2019-01-23 23:39:43 +01:00
Matthias Koefferlein
1cfa3251ce
Better reproducibility of results in hier processor: hash function of shape ref takes object hash, not pointer hash
2019-01-23 22:19:28 +01:00
Matthias Koefferlein
fba5bed2a3
Performance improvement of device extractor (taking out a O(N**2) loop)
2019-01-23 01:02:22 +01:00
Matthias Koefferlein
68fe668567
WIP: performance improvement.
2019-01-22 07:42:44 +01:00
Matthias Koefferlein
81bf47688e
Renamed device model -> device abstract
2019-01-21 22:37:13 +01:00
Matthias Koefferlein
d79a448eaa
Some performance improvement by eliminating empty objects in the box scanner.
2019-01-21 22:37:02 +01:00