Commit Graph

5613 Commits

Author SHA1 Message Date
Matthias Koefferlein 9917978566 Merge branch 'master' into dev-polygon-graph 2025-05-28 19:01:42 +02:00
Matthias Koefferlein ad444c5552 Don't error out on missing MACRO in LEF, but create a dummy macro with size 0,0 instead and issue a warning. This will place nicely with N, but not with other orientations. 2025-05-28 18:58:28 +02:00
Matthias Koefferlein 0cb5f35659 Allowing the polygon neighborhood visitor to specify a variant type for deep mode 2025-05-27 21:07:28 +02:00
Matthias Köfferlein dfd7d8ec1f
Merge pull request #2061 from KLayout/bugfix/issue-2060
Bugfix/issue 2060
2025-05-27 19:17:45 +02:00
Matthias Köfferlein 836c50d6a0
Merge pull request #2062 from KLayout/feature/issue-2055
Feature/issue 2055
2025-05-27 19:17:33 +02:00
Matthias Koefferlein 010fa2d5ba Avoiding a segfault when trying to run Ruby from a non-Ruby thread 2025-05-27 00:48:10 +02:00
Matthias Koefferlein 13bc723831 Fix for MSVC builds 2025-05-25 23:24:38 +02:00
Matthias Koefferlein 6cccb81293 Implemented solution for #2057 (nanometer scalebar)
The scale bar switches to nm below 0.1µm. Correspondingly
it will switch to mm above 100µm.
2025-05-25 21:28:11 +02:00
Matthias Koefferlein 534b33be1c MSVC does not assume UTF-8 encoding by default, hence use explicit bytes 2025-05-25 20:40:45 +02:00
Matthias Koefferlein bfe49c22e3 Properly using 'long' and 'unsigned long' in tl::sprintf to fit Windows definition of 'long' 2025-05-25 19:42:14 +02:00
Matthias Koefferlein 329ac6c5b7 Merge branch 'master' into devel 2025-05-25 19:37:57 +02:00
Matthias Koefferlein fb16c8c6f6 Trying to fix a linker issue 2025-05-25 19:01:04 +02:00
Matthias Koefferlein 4a20a30888 Hope to fix dependency on Ruby version rgarding string encoding. 2025-05-25 18:55:52 +02:00
Matthias Koefferlein 125e06bd49 Added doc, added a warning about no pins found at top level. 2025-05-25 17:53:11 +02:00
Matthias Koefferlein ad80019b12 Adding to_s (aka str(...)) methods to RNetExtractor tech objects 2025-05-25 16:31:20 +02:00
Matthias Koefferlein dec7ad9da1 [consider merging] properly conveying string encoding for Ruby, so that UTF-8 encoding is maintained when returning such strings from C++ 2025-05-25 16:28:46 +02:00
Matthias Koefferlein 094e11897a Added the new feature: 'flag_missing_ports' 2025-05-24 22:33:18 +02:00
Matthias Koefferlein aba912107b Refined solution, so it would allow a larger coordinate range. 2025-05-24 00:09:52 +02:00
Matthias Koefferlein 6d28c78eeb Fixed issue #2060 - the precision of the check was too low. 2025-05-22 22:48:48 +02:00
Matthias Koefferlein e96f20a106 Introducing case sensitivity in circuit and netlist queries, makeing 'same_nets' more case sensitivity-aware in case of mixed sensitivity 2025-05-22 22:25:49 +02:00
Matthias Koefferlein 57c2add00a API enhancement for NetlistCrossReference: obtaining information from one object only (net, circuit), does not need a pair anymore 2025-05-22 20:54:21 +02:00
Matthias Koefferlein 90c4f654b6 API for adding log entries to LVS and L2N databases 2025-05-22 19:57:06 +02:00
Matthias Koefferlein 4dd4524da9 Fixed typo 2025-05-22 19:47:39 +02:00
Matthias Köfferlein 23b049627f
Merge pull request #2040 from KLayout/feature/maly
Feature/maly
2025-05-22 19:22:52 +02:00
Matthias Köfferlein ba640b6d04
Merge pull request #2039 from KLayout/feature/issue-2016
First attempt to implement a solution for issue #2016
2025-05-22 19:22:32 +02:00
Matthias Koefferlein 6b8c79c488 Fixed a segfault (thanks, Martin\!) 2025-05-22 18:50:25 +02:00
Henner Zeller f9e2a9257f Fix logic error in hex2int.
This was probably never noticed as it was the last branch and would
behave benign on valid input.

Signed-off-by: Henner Zeller <hzeller@google.com>
2025-05-19 14:16:18 +02:00
Matthias Koefferlein 9b03a1ba64 More robust tests 2025-05-18 22:41:46 +02:00
Matthias Koefferlein a2ac8d45de Postpone decision about "invalid vias are errors." 2025-05-18 22:28:11 +02:00
Matthias Koefferlein e27e24ff4f Bugfixing multi-DEF reader with LEF cache, adding a testcase. Making unknown vias an error. 2025-05-18 22:00:39 +02:00
Matthias Koefferlein 4306b24b4a Normalizing test case for RNetExtractor to reduce jitter 2025-05-18 09:27:10 +02:00
Matthias Koefferlein a07d742bee Fixed a problem with via uniquification - via definitions may be DEF local, so we need to clean them between different DEF reads. 2025-05-18 00:48:10 +02:00
Matthias Koefferlein 1fb0f318dc Added pex lib to bd tools. 2025-05-17 18:49:32 +02:00
Matthias Koefferlein 91cb8826c7 Including more dependencies in build 2025-05-17 18:41:22 +02:00
Matthias Koefferlein 5dd189d413 Including pex dependencies in build 2025-05-17 18:39:16 +02:00
Matthias Koefferlein ca53d8718b Fixed some build problems 2025-05-17 17:26:59 +02:00
Matthias Koefferlein 8221923ccb Added a large (private) testcase for the 'read LEF once' enhancement 2025-05-17 16:50:47 +02:00
Matthias Koefferlein 4206d7ee63 Tried a performance improvement experiment, don't dare to actually use it 2025-05-17 01:00:57 +02:00
Matthias Koefferlein baed5bd822 Small refactoring 2025-05-17 00:57:36 +02:00
Matthias Koefferlein 5c27fedfe5 Debugging and bug fixes. The 'big example' from issue 2014 now works 2025-05-17 00:44:15 +02:00
Matthias Koefferlein 113c701345 Trying explicit member template instantiation to solve linker issue 2025-05-16 23:23:11 +02:00
Matthias Koefferlein 1c4077449b Fixed build issue 2025-05-16 18:55:55 +02:00
Matthias Koefferlein 1b98efd7a8 First bug fixes 2025-05-15 23:41:23 +02:00
Matthias Koefferlein 271800ab94 WIP: first implementation. Builds, but needs testing. 2025-05-15 23:27:03 +02:00
Matthias Koefferlein 6cd4b97cd3 Including internal net names in LVS DB
Problem: so far, these names have not been conveyed.
But after the net IDs changed in the LVS DB (renumbering),
the names should be retained. Otherwise it is difficult to
relate log level entries or Spice netlists to them.
2025-05-15 21:17:15 +02:00
Matthias Koefferlein 7bee9ebcec Fixing a linker issue on Windows. 2025-05-11 21:48:01 +02:00
Charlie Lin e279888f52
Use Py_IncRef in pyaCallables.cc 2025-05-11 09:07:55 -04:00
Matthias Koefferlein 91005d5cb6 Tests for RBA+pex, bug fixes 2025-05-04 20:42:12 +02:00
Matthias Koefferlein 77aa729b06 GSI binding of RNetExtractor, introducing layers for nodes 2025-05-04 19:45:30 +02:00
Matthias Koefferlein fc25590dd7 Include a simplification step in the net extraction 2025-05-04 17:15:47 +02:00
Matthias Koefferlein 2bc8ac235a Fixed unit tests 2025-05-04 16:22:03 +02:00
Matthias Koefferlein f7c7e8b0be Fixed unit tests 2025-05-04 15:41:26 +02:00
Matthias Koefferlein aca3095efa WIP: allowing multiple vertex ports on the same location 2025-05-04 15:38:45 +02:00
Matthias Koefferlein 80ad38f81b WIP: debugging, tests. Triangulation should be safer now against linear chains of vertexes. 2025-05-04 14:36:34 +02:00
Matthias Koefferlein f83cd61843 WIP: debugging, tests. 2025-05-04 13:11:46 +02:00
Matthias Koefferlein bc10bb6b14 WIP: network R extractor, needs testing 2025-05-03 22:36:39 +02:00
Matthias Koefferlein 1932532416 Bug fixes, tests 2025-05-02 15:07:28 +02:00
Matthias Koefferlein b77b4d7d3c Bug fixes 2025-05-02 15:02:18 +02:00
Matthias Koefferlein 149b051dce Providing meta info (boundary per mask) from MALY reader 2025-05-02 14:49:13 +02:00
Matthias Koefferlein 30ac61ea20 Added title support, tests, debugging 2025-05-02 14:25:34 +02:00
Matthias Koefferlein 226ba429f1 WIP: MALY reader, debugging, tests 2025-05-02 13:27:59 +02:00
Matthias Koefferlein 55e2b27bf6 WIP, MALY reader 2025-05-01 23:05:01 +02:00
Matthias Koefferlein 3b85581fae WIP 2025-04-29 22:59:17 +02:00
Matthias Koefferlein 03873d9b6c WIP 2025-04-29 22:56:53 +02:00
Matthias Koefferlein fa30fd0f7b WIP, MALY reader 2025-04-29 22:19:59 +02:00
Matthias Koefferlein 7820733bd5 WIP 2025-04-29 00:28:46 +02:00
Matthias Koefferlein cd468d4d67 WIP 2025-04-27 23:00:46 +02:00
Matthias Koefferlein 282f6e9d23 Merge branch 'master' into feature/maly 2025-04-27 20:57:09 +02:00
Matthias Koefferlein cb649e6ee6 Merge branch 'master' of github.com:KLayout/klayout 2025-04-27 20:56:38 +02:00
Matthias Koefferlein e76be5b071 WIP 2025-04-27 20:55:11 +02:00
Matthias Köfferlein e76e9b7d0b
Merge pull request #2017 from KLayout/bugfix/issue-2014
Fixed issue #2014 (strm2oas lef/def/gds collect drops cells reference…
2025-04-27 20:53:47 +02:00
klayoutmatthias 6e7eff95e7 Fixed glob feature for Windows. 2025-04-27 19:16:37 +02:00
Matthias Koefferlein f1b35d0826 WIP (MALY reader) 2025-04-27 16:56:46 +02:00
Matthias Koefferlein 43310e7f49 Updating Python stubs 2025-04-27 16:07:01 +02:00
Matthias Koefferlein 9aa8d79bfc Enhanced unit test for better debugging 2025-04-27 14:43:53 +02:00
Matthias Köfferlein c7514ba24d
Merge pull request #2031 from KLayout/bugfix/issue-2011
Bugfix/issue 2011
2025-04-27 14:35:37 +02:00
Matthias Köfferlein efb3b3eb3d
Merge pull request #2030 from KLayout/feature/issue-2024
Provide a solution of feature request #2024
2025-04-27 14:35:24 +02:00
Matthias Köfferlein 345f316af5
Merge pull request #2029 from KLayout/bugfix/issue-2026
Fixing issue #2026 (after 2.5D display main 2D layout does not displa…
2025-04-27 14:35:14 +02:00
Matthias Köfferlein 89d5bf0df1
Merge pull request #2028 from KLayout/bugfix/issue-2025
Fixed issue #2025 (brackets get added on PCell parameters)
2025-04-27 14:34:52 +02:00
Matthias Köfferlein d8a13037a9
Merge pull request #2023 from KLayout/bugfix/issue-2020
Fixing the strict weak ordering issue inside the edge processor
2025-04-27 14:34:37 +02:00
Matthias Koefferlein 07eb49d482 Initializing MALY plugin 2025-04-27 01:11:38 +02:00
Matthias Koefferlein 5077b22963 Bugfix: deep, empty layers still need a layout attached 2025-04-27 00:30:50 +02:00
Matthias Koefferlein 5efcf83640 Bugfix: Deep mode XOR needs to maintain the layout origin of the first argument even if it is empty 2025-04-26 23:24:26 +02:00
Matthias Koefferlein ffa42653fe Addressing issue #2011
- "report" can now be late in DRC without internal error
  Yet, the report will only capture the output layers
  after the report statement has been called.
- Text objects don't create zero-area polygons in deep mode
  XOR now.
2025-04-26 22:04:50 +02:00
Matthias Koefferlein 2435e774f4 Preventing an internal error when using report after 'input' 2025-04-26 19:05:40 +02:00
Matthias Koefferlein 2bd82af6fe Provide a solution of feature request #2024
- There is a new configuration page entry called
  "Min spacing" for the grid. The default value is 4.
  The value specifies the grid min spacing in
  units of UI font height.
- A bugfix is included: the ruler now is drawn after
  the grid, hence is not hidden by it (specifically
  in checkerboard pattern mode)
- To allow bigger grid spacing, the ruler now
  is allowed to grow bigger than before.
2025-04-26 16:52:39 +02:00
Matthias Koefferlein 148498f840 Fixing issue #2026 (after 2.5D display main 2D layout does not display anymore with visible shapes) 2025-04-26 16:15:25 +02:00
Matthias Koefferlein d317dc2fe3 Fixed issue #2025 (brackets get added on PCell parameters) 2025-04-24 23:30:50 +02:00
Matthias Koefferlein f0943dea53 More debugging support 2025-04-24 22:01:56 +02:00
Matthias Koefferlein 8ece7bcce1 Activate pex module, GSI bindings 2025-04-22 22:37:23 +02:00
Matthias Koefferlein 0e99ebc056 Another test case, triangulation extractor behaves strange. 2025-04-20 22:28:55 +02:00
Matthias Koefferlein 93e10d1d72 Doc and small fixes 2025-04-20 21:52:44 +02:00
Matthias Koefferlein 9bf03390de More robust output for tests, some debugging 2025-04-20 21:23:01 +02:00
Matthias Koefferlein 7f0b2d532d Bugfixes 2025-04-20 20:07:47 +02:00
Matthias Koefferlein f71210c64a WIP, more testcases, debugging 2025-04-20 19:09:24 +02:00
Matthias Koefferlein 88a1ccbcfb TriangulationRExtractor, some debugging, tests 2025-04-20 16:20:35 +02:00
Matthias Koefferlein e9c2320f5d WIP 2025-04-19 23:59:45 +02:00
Matthias Koefferlein fcd42bd0f1 R network simplify 2025-04-19 23:48:58 +02:00
Matthias Koefferlein 1379d30502 Debugging, Tests 2025-04-19 20:55:15 +02:00
Matthias Koefferlein 9cd29c9de7 WIP 2025-04-19 18:45:31 +02:00
Matthias Koefferlein 6c90da8007 WIP 2025-04-19 16:30:58 +02:00
Matthias Koefferlein dfe67178dc WIP 2025-04-19 16:14:15 +02:00
Matthias Koefferlein 8a122c8a7d WIP: bug fixes, one more test 2025-04-18 23:29:29 +02:00
Matthias Koefferlein 71620445ee Polygon#triangulate now returns a 'raw' region, same for SimplePolygon#triangulate. Working on hm_decomposition (tests, bug fixes etc.) 2025-04-18 15:13:29 +02:00
Matthias Koefferlein e764716bda Preserving the hull of simple polygons during insert in a Region, hence skipping the compression 2025-04-18 15:12:30 +02:00
Matthias Koefferlein 16604e5a92 New module: 'pex' 2025-04-18 13:12:45 +02:00
Matthias Koefferlein c6a4b6aba0 Added a new utility function 2025-04-18 00:15:43 +02:00
Matthias Koefferlein 3ed39e8a4a Internal vertex ID added, cleanup 2025-04-17 23:40:58 +02:00
Matthias Koefferlein a2ef7a28f8 WIP 2025-04-17 23:20:37 +02:00
Matthias Koefferlein 94396da117 Fixed problem of on-edge internal vertex/precious vertex 2025-04-16 23:43:27 +02:00
Matthias Koefferlein 4f1b03496b Handling of points in Convex decomposition 2025-04-16 01:15:18 +02:00
Matthias Koefferlein 60d1fb0685 Porting HM decomposition to new PLC framework 2025-04-16 00:02:25 +02:00
Matthias Koefferlein 76e039bd2a Removing obsolete dbTriangle/dbTriangles 2025-04-13 23:06:49 +02:00
Matthias Koefferlein 802cf99521 Porting dbTriangleTests 2025-04-13 22:58:37 +02:00
Matthias Koefferlein 627e244443 Refactoring: generalization of Triangles into db::plc::Graph in dbPLC.h 2025-04-13 22:44:14 +02:00
Matthias Koefferlein 291c91fcaa Merge branch 'dev-polygon-graph' into wip 2025-04-13 17:16:16 +02:00
Matthias Koefferlein d7193e972c WIP 2025-04-12 23:59:43 +02:00
Matthias Koefferlein 7b069d17c3 WIP 2025-04-12 22:30:00 +02:00
Matthias Koefferlein 6f9a2da04a WIP 2025-04-10 23:33:50 +02:00
Matthias Koefferlein 910f697d0b WIP 2025-04-10 19:15:12 +02:00
Matthias Koefferlein fa618a5b76 Fixing the strict weak ordering issue inside the edge processor 2025-04-09 23:35:09 +02:00
Matthias Koefferlein 09329442f0 Fixing issue #2019 (build issue against Qt 6.9) 2025-04-09 23:30:13 +02:00
Matthias Koefferlein 0ec8e18173 refining the DEF warning on missing foreign cell 2025-04-08 23:52:50 +02:00
Matthias Koefferlein 3bd9a96f67 Merge branch 'bugfix/strmxor' into bugfix/issue-2014 2025-04-08 22:55:45 +02:00
Matthias Koefferlein a27fd3e0be Drop OASIS warning about ghost cells and print a DEF reader warning if a foreign cell cannot be substituted 2025-04-08 22:40:04 +02:00
Matthias Koefferlein 0542ef835a strm2xor: parallelize by layer and not internally with -u 2025-04-08 21:14:19 +02:00
Matthias Koefferlein 3a752fd2c7 Adding 'total' time for -d11 in all scripts 2025-04-08 19:55:50 +02:00
Matthias Koefferlein 8150e732af Hopefully fixing strm2xor finally, added a test 2025-04-08 19:14:01 +02:00
Matthias Koefferlein 789e183be9 Shortcutting hierarchy in case of skipped shapes, this restores the original performance 2025-04-08 00:04:21 +02:00
Matthias Koefferlein 41e9cb5893 Maybe fixing basic issues with strmxor
1. Output of shape countsi in deep mode was hierarchical with
   output file, flat without
2. Refactoring of XOR (for_merged optimization) needed to
   create cover cell variants
2025-04-07 00:53:43 +02:00
Matthias Koefferlein 6b5268e5f7 Feature glob expansion on LEF and GDS lists for LEF/DEF reader options. 2025-04-06 19:21:02 +02:00
Matthias Koefferlein 83e0c17291 Print total runtime for converter buddy tools with -d 11 2025-04-06 19:20:38 +02:00
Matthias Koefferlein 163c3b8edc Making "assume FOREIGN always default for strm* tools", OASIS warns on ghost cells 2025-04-06 12:50:34 +02:00
Matthias Koefferlein bcf14ede3e Fixed issue #2014 (strm2oas lef/def/gds collect drops cells referenced by sky130 spare)
Problem was that there was the implicit assumption that
substitution cells would be top cells (or at least: not
child cells of other substitution cells).
2025-04-05 22:06:29 +02:00
Matthias Koefferlein aa12448747 First attempt to implement a solution for issue #2016
The implementation will not update the PCell on
property sheet edits of the guiding shape
if lazy evaluation is requested. Still, changes
are committed to the PCell on committing the
property page.
2025-04-05 20:35:11 +02:00
Matthias Köfferlein 449a9a968e
Merge pull request #2015 from KLayout/bugfix/issue-2012
Bugfix/issue 2012
2025-04-05 19:21:35 +02:00
Matthias Koefferlein c656700b44 Maybe fixed issue-2012 (leaking reference in Python) 2025-04-03 20:44:34 +02:00
Matthias Koefferlein b0f05b5327 WIP 2025-03-29 23:18:16 +01:00
Matthias Koefferlein 40a0113ce5 Fixing Texts[], EdgePairs[] and Edges[] operators - both in terms of returning xWithProperties and objects with properties at all 2025-03-27 00:27:53 +01:00
Matthias Koefferlein 3aebf90ecd Texts[n] now also provides a TextWithProperties object. Bugfix: this method was not delivering any objects with properties at all. 2025-03-26 01:22:54 +01:00
Matthias Koefferlein a24d5388d7 Region[] now returns a PolygonWithProperties object or nil 2025-03-26 00:56:54 +01:00
Matthias Koefferlein 227203cdd1 Providing a less strict overload resolution
Downcast now has precedence over conversion constructors, hence less ambiguities
Solution is implemented for
- Ruby
- Python
- Expressions

For Expressions:
- The overload resolution is less evolved anyway
- There was an additional bug preventing to pass arrays (hashes) in expressions
2025-03-26 00:45:16 +01:00
Matthias Koefferlein db66a6ee74 Base class of DEdgePairWithProperties was EdgePair, not DEdgePair 2025-03-25 23:43:14 +01:00
Matthias Koefferlein e6ff30adee Modifying definition of Timer#memory_size on Linux to become resident size. 2025-03-23 18:46:15 +01:00
Matthias Koefferlein db728dc68a Merge commit 'refs/pull/2003/head' of github.com:KLayout/klayout 2025-03-23 18:38:42 +01:00
Matthias Koefferlein b748579bd7 Updating Python stubs 2025-03-23 18:35:50 +01:00
Matthias Koefferlein 740f36a2c2 Macro editor won't jump back after leaving find mode 2025-03-23 18:03:09 +01:00
Matthias Koefferlein a3593efa18 Layer settings are now better preserved between calls of boolean, merge and size dialogs 2025-03-23 17:36:07 +01:00
Matthias Koefferlein efeb2c061b Layout queries support diff as placeholder for the current cell 2025-03-23 16:51:47 +01:00
Matthias Koefferlein a22f48d87a Texts#polygons now has an argument to specify a property key that receives the text string 2025-03-23 15:54:18 +01:00