Matthias Köfferlein
33ebcb43f3
Issue 1008 ( #1010 )
...
* PyPI deployment: corrected branch filter
* skip redundant points in partial edit, but not colinear ones
* Polygon transformation now preserves raw points
2022-03-01 17:17:30 +01:00
Matthias Koefferlein
ff3bc38aea
Merge branch 'master' into wip
2022-02-19 00:14:57 +01:00
Matthias Köfferlein
cee33a0099
Merge pull request #992 from KLayout/api-enhancements
...
Api enhancements
2022-02-18 23:28:28 +01:00
Matthias Koefferlein
c5da9c717d
scale_and_snap: separate handling of shapes with properties and without
2022-02-18 18:49:00 +01:00
Matthias Koefferlein
a133a8f43b
Reverted some changes, removed idle code
2022-02-18 18:43:02 +01:00
Matthias Koefferlein
834dfa6614
Bug fixes, enhancements, tests for snap and scale improvements.
2022-02-18 14:22:16 +01:00
Matthias Koefferlein
e9d86822df
Scale and snap improvements
...
* edge and edge pair support
* property support
* no expanding of on-grid arrays
* more inline processing, better performance
2022-02-18 00:03:14 +01:00
Matthias Koefferlein
d2c2a875dd
Removed debug output
2022-02-13 23:39:09 +01:00
Matthias Köfferlein
11a91300bd
issue-996 Providing a "refresh" function for triggering a refresh from inside t… ( #998 )
...
* Providing a "refresh" function for triggering a refresh from inside the lib
Some other glitches were fixed too:
* LibraryManager wasn't thread-safe
* Library destructor wasn't unregistering
* Crash when re-registering the same library again
* In LibrariesTest normalization of layouts must not include
re-creation of library references to avoid side effects.
Save without context.
* Added missing files
* Fixed unit tests.
2022-02-12 21:26:28 +01:00
Matthias Koefferlein
72d0f717fe
Fixed units tests
2022-02-12 18:20:38 +01:00
Matthias Köfferlein
0199192e83
Fixed #989 (cannot convert <defunct> cell to static cell) ( #1002 )
...
Fixed some more glitches while doing so:
* cell.name (gsi) was giving "basic_name", now it's changed to the
internal name to be consistent with "name=". The "functional name"
is still available as "basic_name".
* The basic name was rendering "<defunct>..." for defunct cells
and has been changed to the functional name. Otherwise this
is not accessible.
2022-02-12 17:05:12 +01:00
Matthias Köfferlein
60aab8b3fd
Fixed #995 (new topcell after load) ( #1000 )
2022-02-12 16:51:01 +01:00
Matthias Koefferlein
2ed572e684
Merge branch 'api-enhancements'
2022-02-11 19:10:21 +01:00
Matthias Koefferlein
75aaf10512
Query parser is somewhat more restrictive now and doesn't read everything as cell expression.
2022-02-11 00:30:08 +01:00
Matthias Koefferlein
3f2ca1dfbe
micrometer-unit properties (ddbox, path_dtrans, dtrans etc) for custom queries
2022-02-10 23:14:08 +01:00
Matthias Koefferlein
98dd0de139
clip method variants with dboxes and cell references in Layout
2022-02-08 23:49:28 +01:00
Matthias Koefferlein
3a422f2c38
Trans: mapping ctrans to * for harmonization
2022-02-08 23:13:37 +01:00
Matthias Koefferlein
a5e7395d10
Convenience initializer for CellInstArray and DCellInstArray that takes a vector instead of a transformation
2022-02-08 22:56:58 +01:00
Matthias Koefferlein
1a53cd00d2
Convenience 'each' for recursive shape iterator / recursive instance iterator
2022-02-08 22:28:09 +01:00
Matthias Köfferlein
285a5e9fca
Issue 983 ( #986 )
...
* WIP: first attempt to fix issue-983
* WIP: bugfixes
* Fixed a problem with displaying empty cell dimensions, one warning
* Another fix: don't allow proxy cells to be selected in the instance properties dialog. This creates a confusing behaviour
* Fixed a few flaws in the cell selection scheme on the instance properties dialog.
* Early warning when trying to build a recursive hierarchy.
* Another fix: avoid too much undo in case of errors thrown during 'apply' followed by 'cancel'
* Fixed issue-983 solution
* Fixed the modification status of PCell parameters for 'apply to all'
2022-02-08 19:06:27 +01:00
Matthias Koefferlein
e49b189f64
Doc clarification for Layout#create_cell
2022-02-07 23:27:10 +01:00
Matthias Koefferlein
88c56d8b64
Introducing unique_cell_name in Layout, fixed the RBA unit tests
2022-02-07 23:05:53 +01:00
Matthias Koefferlein
0bb0f400bf
Introducing world box.
2022-02-07 22:44:35 +01:00
Matthias Koefferlein
79be9aba41
RecursiveInstanceIterator uses weak pointer to Layout too
2022-02-07 22:09:57 +01:00
Matthias Koefferlein
c0b38f3706
Using a weak Layout pointer to avoid segfaults in RecursiveShapeIterator
2022-02-07 21:56:37 +01:00
Matthias Koefferlein
e2c6e7aedc
size/sized versions with Vector/DVector
...
Adds variants to size/sized which take a vector instead
of dx, dy and where the mode parameter is optional. So far
anisotropic sizing had to come with a mode argument.
2022-02-07 20:59:09 +01:00
Matthias Koefferlein
de98a30f38
Text/DText enhancements
...
* Enums for alignment values.
* bbox
* position
* typos fixed
2022-02-07 19:46:13 +01:00
Matthias Koefferlein
95b6af4bc6
Merge branch 'master' into qt6
2022-01-21 15:43:33 +01:00
Matthias Koefferlein
df60f49276
Fixed issue-969 plus a Qt warning
2022-01-12 22:49:20 +01:00
Matthias Koefferlein
12fd26663d
Merge branch 'qt6'
2022-01-06 21:48:02 +01:00
Matthias Koefferlein
10456516db
Updated copyright to 2022, preparations for 0.27.6 (was delayed due to code signing certificate issues)
2022-01-04 21:20:04 +01:00
Matthias Köfferlein
460ba9813a
Merge pull request #957 from KLayout/issue-954
...
Bugfix for #954
2021-12-26 19:14:44 +01:00
Matthias Koefferlein
e1cd6aaeb1
Bugfix for #954
...
The bug was that while iterating a Region during the gate traversal,
the "select_interacting" was triggering a sort() which changed the
order.
Solution is to pre-sort when iterators are issued also when the
iterator is non-region selecting. This way, plain and region query
iterators can be used together. In addition, the dirty flag scheme
of Cell+Shapes was cleaned up a little for bboxes.
2021-12-26 01:12:36 +01:00
Matthias Koefferlein
9cd77e5cec
WIP: expose a new method of PCellDeclaration called 'wants_lazy_evaluation'
2021-12-25 18:03:30 +01:00
klayoutmatthias
edd5884a1a
WIP: enabling build on MSVC2019 with Qt6
2021-12-15 00:31:13 +01:00
Matthias Koefferlein
279342e61a
Added more declarations for gcc in release mode
2021-12-12 16:48:44 +01:00
Matthias Koefferlein
ef62a126d4
WIP: format string problem fixed in 2.5d view
2021-12-05 00:08:08 +01:00
Matthias Koefferlein
125543957d
WIP: Fixed GSI to some extent, some tests
2021-12-04 00:31:01 +01:00
Matthias Koefferlein
6b49386b67
WIP: fixed some build errors
2021-11-29 23:27:26 +01:00
Matthias Koefferlein
132ad2ed8d
WIP: removing need to tl::type_traits
2021-11-29 22:54:28 +01:00
Matthias Koefferlein
ecc83aa579
Solved #879 : PCellDeclaration now knows the layout and layout knows the library
2021-11-14 17:45:52 +01:00
Matthias Koefferlein
0ca82001ed
#935 fixed (checking for valid cell index)
2021-11-13 01:03:54 +01:00
Matthias Koefferlein
719eb0bce8
Fixed a potential crash on application exit
2021-11-13 00:48:27 +01:00
Matthias Koefferlein
d2478881b5
Bugfix: threading issue - multiple threads accessed the same object
2021-11-10 22:30:32 +01:00
Matthias Koefferlein
379a22c86a
Restored performance of some checks
2021-11-09 21:55:55 +01:00
Matthias Koefferlein
319efc1f95
Bugfix: negative output wasn't working properly for enclosing and overlap.
2021-11-09 00:32:07 +01:00
Matthias Koefferlein
4a44329e38
Enabling 'enclosed' as a (sometimes) more efficient way of implementing an enclosing check.
2021-11-08 23:18:01 +01:00
Matthias Koefferlein
9fa82f01d8
WIP (code reduction and performance enhancement of basic DRC checks)
2021-11-07 21:46:18 +01:00
Matthias Koefferlein
a0367c1530
More specific clip variants after bounding boxes have been reduced in RecursiveShapeIterator
2021-11-01 17:27:52 +01:00
Matthias Koefferlein
bc54ba3b99
Merge branch 'performance' into head
2021-11-01 14:32:31 +01:00
Matthias Koefferlein
d244d5aac6
Debugging plus enhancments
...
Basic change: DeepShapeStore+CellMapping uses (new) hier_generation_id of Layout to figure out
if the hierarchy has changed and the cache needs update.
2021-11-01 13:49:00 +01:00
Matthias Koefferlein
64a6b3acdc
WIP
2021-11-01 09:53:51 +01:00
Matthias Koefferlein
902375cc4d
WIP: trying to reduce the number of DSS-internal cell mappings by caching cell maps
2021-10-31 00:59:42 +02:00
Matthias Koefferlein
455c40ced6
More consistent verbosity levels for cell mapping
2021-10-30 21:31:05 +02:00
Matthias Koefferlein
ebe38912a6
Tests and documentation for dbTrans#is_complex?
2021-10-27 23:36:58 +02:00
Matthias Koefferlein
20f3733c58
WIP: lean recursive shape touch check
2021-10-27 00:38:12 +02:00
Matthias Koefferlein
596080669d
WIP
2021-10-26 23:10:29 +02:00
Matthias Koefferlein
7881c0953c
WIP
2021-10-24 20:28:15 +02:00
Matthias Koefferlein
c6bd856331
WIP
2021-10-24 00:05:50 +02:00
Matthias Koefferlein
09df614d8a
Bugfix: array iterator must not iterate on empty search box.
2021-10-22 23:52:35 +02:00
Matthias Koefferlein
abe40ae99f
Bugfix plus more tests
2021-10-19 20:48:13 +02:00
Matthias Koefferlein
451f57bb25
Fixed #909 (Crash on DRC)
2021-09-21 23:37:57 +02:00
Matthias Köfferlein
80fd5b79be
Merge pull request #908 from KLayout/netlist-compare-performance2
...
Improving netist compare performance for array case + some enhancements
2021-09-21 22:43:37 +02:00
Matthias Köfferlein
f1e59a7dc6
Merge pull request #907 from KLayout/issue-905
...
Fixed #905 (Crash while deleting a Library)
2021-09-21 22:43:22 +02:00
Matthias Koefferlein
ceb0b2298f
Some cleanup, updated tests
2021-09-19 19:05:09 +02:00
Matthias Koefferlein
b7827f7b5f
Maybe found a solution for the matrix arrangement runtime problem
2021-09-19 18:29:57 +02:00
Matthias Koefferlein
930423bcc7
WIP
2021-09-19 17:26:28 +02:00
Matthias Koefferlein
a42d761e95
Some small refactoring
2021-09-17 22:46:56 +02:00
Matthias Koefferlein
71b5695344
Fixed #905
2021-09-15 00:09:56 +02:00
Matthias Koefferlein
0f4b0e4826
Ported some enhancements from WIP branch (debug output, capturing easy wins when max depth is exhausted)
2021-09-14 22:31:24 +02:00
Matthias Koefferlein
b671b1843b
Fixed a problem with net compare config - depth first wasn't considered in all cases
2021-09-12 22:35:08 +02:00
Matthias Koefferlein
89052660ee
Refactoring of the netlist compare code
2021-09-12 22:35:03 +02:00
Matthias Koefferlein
822709dd5a
Refactoring of the netlist compare code
2021-09-12 22:34:59 +02:00
Matthias Koefferlein
52c79feeed
Refactoring of the netlist compare code
2021-09-12 22:34:55 +02:00
Matthias Koefferlein
ab3bceda75
Fixed #898 (netlist reader ignores last list)
2021-08-29 21:12:04 +02:00
Matthias Köfferlein
225d3ab32d
issue-892 ( #895 )
2021-08-24 21:37:02 +02:00
Matthias Köfferlein
1916a4f683
Merge pull request #884 from KLayout/issue-881
...
Fixed #881 (typo in separation check and others)
2021-07-31 11:01:55 +02:00
Matthias Koefferlein
d7438b43ae
Fixed #881 (typo in separation check and others)
2021-07-30 23:13:24 +02:00
Matthias Koefferlein
9543cea952
Fixed tests
2021-07-29 22:24:22 +02:00
Matthias Koefferlein
8b970039c0
Using primary(layout) netlist as reference for primary parameters and compare delegate - this also removes some potential glitches
2021-07-29 01:15:35 +02:00
Matthias Koefferlein
a90e14b692
Some tests added.
2021-07-27 23:08:34 +02:00
Matthias Koefferlein
42b7290fe5
Device parameter comparer now also compares other (primary) parameters, parameters primary in both netlists are considered to be compared by default, 'ignore' feature in tolerance
2021-07-27 22:15:59 +02:00
Matthias Koefferlein
37457aa02f
Spice reader flags existing parameters as primary
2021-07-27 22:13:45 +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
722b45b721
Fixed tests
2021-07-19 07:47:41 +02:00
Matthias Koefferlein
bc74f189f8
Introducing asymmetric ambiguity groups for better matching of black box circuits with optional pins.
2021-07-18 23:33:01 +02:00
Matthias Koefferlein
70f4c7e2b5
A small refactoring.
2021-07-18 23:09:51 +02:00
Matthias Koefferlein
2c8d065eb3
Some enhancments + test update
...
1. Be more careful with net names
Net names are used now for sorting the graph nodes, but not for
strict compare. This is useful to derive swappable pins for
blackbox circuits.
2. Be more careful with pins from schematic netlist
Pins from schematic netlist without a corresponding pin on the layer
side are treated as mandatory unless connected to a trivial net.
Pins connecting to non-trivial nets inside the subcircuit are always
considered mandatory.
This way schematic pins enforce corresponding layout pins.
On the other hand, layout pins connecting to trivial nets inside
the subcircuit are considered non-mandatory.
2021-07-18 22:34:02 +02:00
Matthias Koefferlein
51d117e379
Refined black box pin heuristics
...
Pins are required to match if they are passive inside the
subcircuit but connected to a non-trivial net in the calling circuit.
2021-07-18 20:39:19 +02:00
Matthias Koefferlein
05386668b4
Re-introducing pin name mapping for net assignment
2021-07-18 20:20:23 +02:00
Matthias Koefferlein
23bea5dc07
Using real pin IDs for printing nodes in netlist compare debug output
2021-07-18 17:39:32 +02:00
Matthias Koefferlein
d018805c23
Some refactoring.
2021-07-18 16:54:27 +02:00
Matthias Koefferlein
2f3e113db0
Added missing subcircuit mismatch events to netlist compare
2021-07-17 22:06:06 +02:00
Matthias Koefferlein
3f3f4c9173
Fixed some compiler warnings.
2021-07-17 22:03:22 +02:00
Matthias Köfferlein
054bfa3be4
Merge pull request #865 from KLayout/issue-864
...
Fixed #864 (Shapes#copy_shapes does not support undo/redo)
2021-07-17 13:44:15 +02:00
Matthias Köfferlein
19f2769137
Merge pull request #862 from KLayout/matching-of-blackbox-circuits
...
Enhanced matching of blackbox/pin ambiguities
2021-07-17 13:43:59 +02:00
klayoutmatthias
1555daf68c
Adjustments for Windows build with MSVC2019 (VC 16.10.31419.357)
...
1. removed some duplicate symbol linker error
2. removed many compiler warnings (mainly size_t/int compatibility)
3. consistent definition of db::pcell_id_type
4. removed UTF-8 character codes from string constants
5. float constants for float arguments
6. timeout in tlHttp when no openssl lib is found (instead of stalling
app)
2021-07-17 00:20:55 +02:00
Matthias Koefferlein
2fee924103
Updated the solution
2021-07-15 23:39:02 +02:00
Matthias Koefferlein
d14892382c
Fixed #864 (Shapes#copy_shapes does not support undo/redo)
...
While doing so changed the following things too:
- Instance and Shapes methods raise an exception if not
in editable mode and with undo/redo
- Faster and leaner undo/redo on Shapes#clear
2021-07-15 00:44:28 +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 Koefferlein
bad3232415
Trying to fix a linker problem.
2021-07-07 08:03:07 +02:00
Matthias Koefferlein
4e54715d64
Merge branch 'wip-lvs'
2021-07-06 23:40:44 +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
720057e071
Added a #include which was missing
2021-07-06 21:16:57 +02:00
Matthias Koefferlein
8f65ab099f
Fixed DeviceClass assignment operator
2021-07-06 07:56:27 +02:00
Matthias Koefferlein
4e0d8d92ef
Updated doc, reverted netlist writer to write all parameters - it will only write primary parameters for R, L and C
2021-07-05 22:45:40 +02:00
Matthias Koefferlein
e34fc8967a
Some enhancements
...
* Device#net_for_terminal with terminal name
* Spice writer now dumps all parameters for resistors and caps (also secondary)
* Enabled Spice writer delegate in LVS (spice_format(...))
* Device class factories for built-in device extractors
2021-07-05 22:22:13 +02:00
Matthias Koefferlein
ba35ac9bfe
Doc update, some tests
2021-07-05 21:06:02 +02:00
Matthias Koefferlein
c62592ede1
Added test for device class factory.
2021-07-05 19:55:55 +02:00
Matthias Koefferlein
4303e1ab73
Revert change of making spice parameters primary - will create problems in swappable parameters such as AD and AS
2021-07-04 19:58:15 +02:00
Matthias Koefferlein
ae6f77f45f
Serialization of custom device classes
2021-07-04 19:14:37 +02:00
Matthias Koefferlein
3220bdf60d
Added device class templates for CapWithBulk and ResWithBulk
2021-07-04 19:14:11 +02:00
Matthias Koefferlein
ce61145f1c
More control over primary/secondary flag of parameters in device extraction
...
- Spice reader will set primary flag for all (known) parameters
read from a Spice netlist
- "extract_devices" will return the device class object
- primary/secondary flag can be set on device class objects
through "enable_devices"
2021-07-04 17:05:17 +02:00
Matthias Koefferlein
1a0b05e663
Updated test data
2021-07-02 23:38:38 +02:00
Matthias Koefferlein
79c552b300
Fixed #858 (+ line continuation after blanks in Spice reader)
2021-07-02 23:31:54 +02:00
Matthias Koefferlein
fd5efe9f92
Fixed #854
2021-07-02 00:46:22 +02:00
Matthias Koefferlein
6f63fa09bf
Fixed #856
2021-07-02 00:44:17 +02:00
Matthias Koefferlein
3d6119f2a6
Updated tests, sloppy 'same_nets' in non-must-match mode
2021-06-29 08:43:28 +02:00
Matthias Koefferlein
ab70c42c68
Some enhancements for strong matching of nets
...
* same_nets! method for strong matching
* same_nets and same_nets! except glob pattern to circuits and nets
* both observe case sensitivity
* helper functions for case sensitivity Netlist#is_case_sensitive?, Netlist#case_sensitive=
* Netlist#nets_by_name to get nets from pattern
2021-06-28 22:33:46 +02:00
Matthias Koefferlein
72dc94197e
New method: Circuit#nets_by_name
2021-06-28 20:29:40 +02:00
Matthias Koefferlein
e0ccb4f980
Fixed a typo
2021-06-28 18:57:09 +02:00
Matthias Koefferlein
24afd571f0
LVS: can be used anywhere now: tolerance and join_symmetric_nets
2021-06-28 18:56:07 +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
d65148ed0b
Fixed #846
2021-06-27 17:29:41 +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
5251520876
Added more filters for edge pairs: with_area, with_internal_angle. Added tests
2021-06-21 23:44:48 +02:00
Matthias Koefferlein
6e7c9192d4
Implemented #818
2021-06-20 21:45:51 +02:00
Matthias Koefferlein
2bbf6b6998
Merge branch 'clipped-25d-view'
2021-06-20 21:02:40 +02:00
Matthias Koefferlein
5fb2f024dc
Fixed some typos
2021-06-19 23:12:59 +02:00
Matthias Koefferlein
71e290b50e
Added test for the last commit
2021-06-13 23:02:53 +02:00
Matthias Koefferlein
d1f38a36b1
Not directly related (initially so): EdgeProcessor can restart now.
2021-06-13 23:02:09 +02:00
Matthias Koefferlein
3b22bc0a42
Fixed the fix: considering the case of non-layout hosted Shapes container too
2021-06-12 23:34:32 +02:00
Matthias Koefferlein
115593575d
Merge branch 'master' of github.com:KLayout/klayout into issue-835
2021-06-12 09:47:31 +02:00
Matthias Koefferlein
6f583b1b21
Fixed #835
2021-06-12 09:45:02 +02:00
Matthias Köfferlein
8bd58be534
Merge pull request #830 from KLayout/issue-824
...
Issue 824
2021-06-12 08:58:00 +02:00
Matthias Koefferlein
43c941004a
Fixed embarrassing typo: Minkowsky -> Minkowski (Hermann Minkowski, 22 June 1864 – 12 January 1909)
2021-06-10 23:33:49 +02:00
Eugene Zelenko
ed27447ce0
Fix misspellings in db.
2021-06-07 18:21:02 -07:00
Matthias Koefferlein
8b528a8a7a
Refactored the compound op node cache for multithreading support
2021-06-07 22:46:15 +02:00
Matthias Koefferlein
02ec262df0
Normalized resistor contact polygons for better test reproducibility.
2021-06-03 23:43:00 +02:00
Matthias Koefferlein
7aaddcf205
Normalize S/D choice on MOS transistor extraction for better test reproducability
2021-06-03 17:32:38 +02:00
Matthias Koefferlein
a762797d58
Typos fixed.
2021-06-01 21:32:24 +02:00
Matthias Koefferlein
ef01bbf81b
Restored merge behavior for DRC 'or' also in deep mode
2021-05-31 18:24:00 +02:00
Matthias Köfferlein
63f4d727e9
Merge pull request #813 from KLayout/wip
...
Wip
2021-05-29 23:59:44 +02:00
Matthias Koefferlein
83685a3715
Fixed a build issue.
2021-05-29 22:06:13 +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
e57d573a42
Tests, so bug fixes, some refactoring
2021-05-29 09:43:12 +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
fcb966393a
Fixed #806 : first, the internal error gone. Second, the implementation of custom comparers is simplified as the 'equals' method does not need to be implemented.
2021-05-26 22:39:28 +02:00
Matthias Koefferlein
ef22ead019
Fixed a bug in the Spice writer implementation (res3 not considered)
2021-05-26 22:27:42 +02:00
Niko Savola
ff90c476c3
Fix typos systemically in gsiDecl*.cc
2021-05-26 13:18:23 +03:00
Niko Savola
99ef222f50
Fix more typos in gsiDeclDbLayoutToNetlist.cc
...
\\make_incluidelayer -> \\make_includelayer
sqaure -> square
2021-05-26 12:37:24 +03:00
Niko Savola
b27e5de023
Fix typo in gsiDeclDbLayoutToNetlist
...
reprfesenting -> representing
2021-05-26 12:31:46 +03:00
Niko Savola
bc16c4ad31
Fix missing 'to' typo
...
from another cell this cell -> from another cell to this cell
2021-05-26 10:33:07 +03: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
19b28982e7
WIP: updated test data (bugfix: bulk does not have layer properties), Fixed Region::count and Region::hier_count (was counting non-polygons too)
2021-05-25 23:08:38 +02:00
Matthias Koefferlein
3789e38ce3
WIP: avoid one more segfault.
2021-05-25 22:45:19 +02:00
Matthias Koefferlein
0d6ce92d6b
WIP: fixed a potential segfault
2021-05-25 21:41:27 +02:00
Matthias Koefferlein
0452e91e8c
WIP: Some hardening against internal state changes in RecursiveShapeIterator, tests fixed
2021-05-25 21:36:54 +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
58afc47071
WIP: reduced space runtimes (OpenRAM sample) by selective edge processing
2021-05-24 18:27:16 +02:00
Matthias Koefferlein
05b1023fd5
Updated tests.
2021-05-24 16:49:00 +02:00
Matthias Koefferlein
2fc301a0b6
More efficient shape counts on OriginalLayer
2021-05-23 12:21:18 +02:00
Matthias Koefferlein
4bc665cbf3
Mapping deep-mode 'or' (DRC) to 'add' to avoid flat processing.
2021-05-22 22:32:29 +02:00
Matthias Koefferlein
560234cacb
Less noisy output with verbose debug mode
2021-05-22 22:29:57 +02:00
Matthias Koefferlein
6cfe14a418
Typo corrected
2021-05-22 22:29:10 +02:00
Niko Savola
feb5e7eece
Fix documentation typo in gsiDeclDbCell.cc
2021-05-21 14:35:21 +03:00
Matthias Koefferlein
aea8c4d1ad
3-terminal C's and R's for Spice writer too, using different default models for 2- and 3-terminal R and C
2021-05-13 21:13:41 +02:00
Matthias Koefferlein
4eb8f69a22
Spice reader: Support for resistance, capacitance and inductance values within parameters, basic support for 3-terminal resistors, more flexibility in SpiceReaderDelegate.
2021-05-13 20:40:28 +02:00
Matthias Köfferlein
9c5542d3d2
Merge pull request #788 from KLayout/issue-787
...
Issue 787 fixed
2021-05-08 22:26:10 +02:00
Matthias Koefferlein
70864e41af
Implemented Edge#cut_point for GSI (was missing)
2021-05-04 21:12:46 +02:00
Matthias Koefferlein
31cc8f32e2
Fixed #787 - the results of const reference return values need to be copied as the holder object may go out of scope
2021-05-02 23:00:38 +02:00
Matthias Koefferlein
1285868546
Skip private-only tests without private data access
2021-05-01 21:36:52 +02:00
Matthias Koefferlein
7c3c631515
Merge branch 'master' into feedback
2021-04-29 23:53:47 +02:00
Matthias Koefferlein
281681fffb
Limit hier processor instance/instance and instance/cluster cache depth to 20 entries per cell pair to avoid memory explosion
2021-04-28 22:51:00 +02:00
Matthias Koefferlein
855e8a3518
WIP: some enhancements with the effect of reducing instance interaction caching overhead and improving performance. More memory and cache metrics.
2021-04-27 22:27:22 +02:00
Matthias Koefferlein
2f204eaa21
Some refactoring of the instance-to-instance test in hier processor: gives some performance improvement with less memory for cache.
2021-04-26 23:15:27 +02:00
Matthias Koefferlein
6e52e6f0c6
WIP: introducing memory metrics for netlist/l2n
2021-04-26 22:26:31 +02:00
Matthias Koefferlein
7d8825a9fb
Ghost cells are not renamed in blend mode 'rename'
2021-04-24 21:30:03 +02:00
Matthias Köfferlein
f8e7e3b6e1
Merge pull request #770 from KLayout/lvs-enhancement
...
Lvs enhancement
2021-04-14 23:24:30 +02:00
Matthias Koefferlein
6ea04d6c27
Small LVS enhancement: reject backtracking branch if it leads to ambiguous name conflicts
2021-04-13 22:57:08 +02:00
Matthias Koefferlein
a02c2c8eeb
Merge branch 'master' into hierarchical-edges
2021-04-11 22:47:38 +02:00
Matthias Koefferlein
870fd2e0bd
Fixed some valgrind issues.
2021-04-08 23:30:47 +02:00
Matthias Koefferlein
c4e5310c95
Bugfix: holes and hulls are not neccessarily merged
2021-04-08 00:32:03 +02:00
Matthias Koefferlein
217f957d60
Some more safety against accessing deleted user objects (stored point in temporary UserObject or DUserObject gets destroyed on destruction of the holder) - using C++ move semantics (overdue)
2021-04-07 22:16:52 +02:00
Matthias Koefferlein
9b7879b2a9
Faster hierarchical edges.
2021-04-06 21:05:02 +02:00
Matthias Köfferlein
85448966d8
Merge pull request #763 from KLayout/25d-enhancements
...
25d enhancements
2021-04-03 15:33:57 +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
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
25b978f39f
Doc clarification.
2021-04-01 18:41:37 +02:00
Matthias Koefferlein
e66c8046db
Limited lvs stack depth to 500 to prevent stack overflow.
2021-03-31 23:04:35 +02:00
Matthias Koefferlein
cf51130339
Fixed some build issues that appeared during merge
2021-03-30 23:20:39 +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
8fda92a9c4
Merge branch 'drc-enhancements' into fill-enhancements
2021-03-29 15:07:47 +02:00
Matthias Koefferlein
76982a3206
DRC support for fill, experimental
2021-03-29 13:28:43 +02:00
Matthias Koefferlein
cefc2eeddb
Bug fixes.
2021-03-29 01:05:53 +02:00
Matthias Koefferlein
abd96c8400
Deep mode: avoid flattening by FlatRegion/FlatEdges poisoning
2021-03-28 23:19:14 +02:00