Matthias Koefferlein
75d686a63f
Changing default "is_merged" status for Edges and Region to false.
...
This was a problem with universal DRC which does not specifically
set the merged status. Furthermore, the default for DeepRegion and
DeepEdges was "false" already and now is aligned.
2022-07-04 00:52:55 +02:00
Matthias Köfferlein
e9c5782c51
Issue 1011 ( #1027 ) - DRC violation on texts in deep mode
...
* Fixed issue-1011 by using single-point polygons for texts in deep mode. Tests need fixing.
* Updated tests (text become a single point)
* Added test for issue-1011
2022-03-15 21:13:57 +01:00
Matthias Koefferlein
92f6f2fb67
New tests
2021-12-26 21:20:58 +01:00
Matthias Koefferlein
7ca01cdae9
Updated test data
2021-11-11 23:05:28 +01:00
Matthias Koefferlein
ac1167278e
Updated tests with 'enclosed' rule
2021-11-09 00:32:23 +01:00
Matthias Koefferlein
29384bf3f3
Convenience: simple version of DRC layer.with_holes and layer.without_holes
2021-09-20 21:36:46 +02:00
Matthias Koefferlein
7a37a6b7ed
Implemented extent(cell_filter) for DRC, added Layout#cells with name filter
2021-07-21 18:31:51 +02:00
Matthias Koefferlein
2b447854f9
Enhanced matching of blackbox/pin ambiguities
...
Previously: matching of blackbox pins was enforced
by using pin names for passive nets in the compare.
Problem: no match was achieved when pins are not
named or not named consistently.
In this case, it's desirable to treat them as
ambiguous.
The new solution is to let the ambiguity resolver handle
that using an extended definition of the net names:
it will take the pin name into account if an unnamed net
is attached to a pin.
In addition, net ambiguities are projected to pin
equivalence now. This also will propagate symmetry
through nested blocks (dbNetlistCompareTests:20_BusLikeConnections).
2021-07-08 23:54:20 +02:00
Matthias Köfferlein
e78d0d81ae
Merge pull request #849 from KLayout/lvs-blackbox
...
Lvs blackbox
2021-07-06 23:38:21 +02:00
Matthias Koefferlein
c24c0933bf
Bugfix: blackbox mode/abstract pins
...
Abstract pins are created when pins are not attached to any or only to passive nets
(passive nets are those without device terminals or subcircuit pins).
1. Such pins were treated swappable. Now named pins will not be treated
swappable but are mapped by name. This enables blackbox models where
the pins are labelled and must correspond to schematic pins.
2. A bug was present which lead to incorrect handling of abstract
nets in net compare.
2021-06-27 22:56:28 +02:00
Matthias Koefferlein
881e0010d5
Implemented with(out)_angle, with(out)_area on edge pairs (DRC, GSI). Deprecated 'with(out)_angle' on polygon layers (DRC) as this is now redundant with 'corners'
2021-06-27 14:18:04 +02:00
Matthias Koefferlein
15c97123b5
Changed test data to OASIS for better compression
2021-06-07 23:03:26 +02:00
Matthias Koefferlein
bfc534fa45
Fixed #826 - added test
2021-06-07 23:01:05 +02:00
Matthias Koefferlein
378a3b9045
Updated test data
2021-05-31 18:47:52 +02:00
Matthias Koefferlein
eeaab8a417
Bugfix: Region#flatten and Edges#flatten did not update the merged cache to flat and Region#flatten did not produce PolygonRefs
2021-05-29 19:28:56 +02:00
Matthias Koefferlein
5ceeafc0ff
Implemented #808 (Feature suggestion: DRC to report edges attached to corners as edge pairs). Solution is available for DRC layers and universal DRC expressions.
2021-05-29 17:57:38 +02:00
Matthias Koefferlein
fd1e206c56
Provide a solution for #809 (density goes outside the area)
2021-05-29 10:16:30 +02:00
Matthias Koefferlein
c8548709bb
Implemented edge pair filters, DRC: with(out)_angle, with(out)_length and with(out)_distance
2021-05-28 23:46:52 +02:00
Matthias Koefferlein
2e63628ddd
Fixed #805 - introducing layer.count and layout.hier_count for DRC
2021-05-26 22:11:47 +02:00
Matthias Koefferlein
660b723678
Updated test data because of non-merging hierarchical 'or'
2021-05-26 00:35:32 +02:00
Matthias Koefferlein
224c1b614b
Added missing file.
2021-05-26 00:28:08 +02:00
Matthias Koefferlein
6ad8ec5662
Bugfix: whole edge output for fragmented second input. No way to fix that for the compound ops. Restrict negative output for two-layer checks on first layer for the same reason.
2021-05-26 00:27:13 +02:00
Matthias Koefferlein
1c8442f485
Fixed #807 - now supporting incremental connect and clear_connections in DRC/LVS
2021-05-24 21:56:57 +02:00
Matthias Koefferlein
05b1023fd5
Updated tests.
2021-05-24 16:49:00 +02:00
Matthias Koefferlein
55bdd904cb
Implemented #801 : update, added test case
2021-05-19 22:25:59 +02:00
Matthias Koefferlein
9b7879b2a9
Faster hierarchical edges.
2021-04-06 21:05:02 +02:00
Matthias Koefferlein
892f940166
Fill feature: enhancements and debugging
...
- added "multi_origin" mode for repeated fill
- enhanced fill coverage by better separation of islands in auto-origin mode
2021-04-01 23:29:45 +02:00
Matthias Koefferlein
94556c1448
Merge branch 'master' into lvs-enhancements
2021-03-30 18:56:27 +02:00
Matthias Koefferlein
47a845884d
Added tests
2021-03-29 22:44:39 +02:00
Matthias Koefferlein
3f37b0e5a4
Fill cell box introduced as a concept, added tests, overlapping fill cells supported.
2021-03-29 22:12:47 +02:00
Matthias Koefferlein
74d3251ff7
Updated test data
2021-03-29 21:03:21 +02:00
Matthias Koefferlein
b725f5fb0f
fill_with_left, implementation + tests
2021-03-29 20:58:16 +02:00
Matthias Koefferlein
8fda92a9c4
Merge branch 'drc-enhancements' into fill-enhancements
2021-03-29 15:07:47 +02:00
Matthias Koefferlein
dc3fa096d3
Renamed DRC tests to reduce merge conflicts.
2021-03-29 15:03:37 +02:00
Matthias Koefferlein
cefc2eeddb
Bug fixes.
2021-03-29 01:05:53 +02:00
Matthias Koefferlein
1ae109f90d
DRC: deep mode region input does not flatten the layout on clip
2021-03-21 23:54:13 +01:00
Matthias Koefferlein
866ee9bd81
DRC: tiling mode with global transformation, debug + tested
2021-03-21 23:27:42 +01:00
Matthias Koefferlein
afdc50d05a
Global transformations for DRC and RecursiveShapeIterator
2021-03-21 23:09:09 +01:00
Matthias Koefferlein
cf6145d60c
Unit test robustness against OS and compiler variations
2021-03-15 19:07:06 +01:00
Matthias Koefferlein
e639c30570
split_* operations in DRC (interacting/non_interacting in one step), doc, tests.
2021-03-01 21:04:57 +01:00
Matthias Koefferlein
aad393d7c9
DRC density check: updated doc, added tile_count option
2021-02-28 18:46:14 +01:00
Matthias Koefferlein
cfc86ad62f
Implemented density check: 'with_density', 'without_density'
2021-02-28 18:21:05 +01:00
Matthias Koefferlein
b3685c6722
Implemented with_holes for generic DRC too
2021-02-08 21:29:41 +01:00
Matthias Koefferlein
1c8eca50bf
Added test case files.
2021-02-08 20:59:48 +01:00
Matthias Köfferlein
e31d7afb64
Reduce risk of DRC polygon split artefacts in deep mode ( #722 )
...
* Fixed a segfault with simple 'klayout -v'
* is_halfmanhattan polygon predicate, confine polygon splitting to halfmanhattan
Splitting any-angle polygons for area reduction in the
deep processor creates a risk of introducing grid-snap
artefacts. Hence we avoid this.
2021-02-05 23:28:04 +01:00
Matthias Koefferlein
618e1134c4
More robustness against test variations on different platforms.
2021-01-19 22:23:02 +01:00
Matthias Koefferlein
63d19bdb4c
More robustness against test variations on different platforms.
2021-01-19 21:49:38 +01:00
Matthias Koefferlein
66ea75e643
Fixed unbounded ranges compatibility for Ruby < 2.7
2021-01-19 21:16:03 +01:00
Matthias Koefferlein
73485a5061
More robustness against differences on different platforms.
2021-01-19 20:36:25 +01:00
Matthias Koefferlein
abcac4896b
Updated test data
2021-01-17 19:31:47 +01:00