Matthias Koefferlein
3ada29d606
Some bugfixes for LEF/DEF reader for special nets (extension handling)
2020-04-05 23:49:19 +02:00
Matthias Koefferlein
df7c530013
Bugfix for the net reader of DEF - wasn't properly reading diagonal parts.
2020-04-05 22:56:04 +02:00
Matthias Koefferlein
cd801206bc
Some refactoring - DEF scanner more modular (5)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
4757ad5044
Some refactoring - DEF scanner more modular (4)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
dea3743d59
Some refactoring - DEF scanner more modular (3)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
9df6d29761
Some refactoring - DEF scanner more modular (2)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
99af144d98
Some refactoring - DEF scanner more modular
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
f11a3a0dd5
Bugfix: MINWIDTH ... WRONGDIRECTION wasn't considering DIRECTION VERTICAL
...
Added/updated some tests, some refactoring.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
4a24b727d5
Tried to implement MINWIDTH .. WRONGDIRECTION in LEF58_MINWIDTH property
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
bcaf28c94c
Bugfix LEF/DEF reader: via needs to change the layer also if it's inside a DEF. Added more test cases.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
2c60338ae8
Added DO .. BY .. STEP to vias in SPECIALNETS in DEF reader, added one more private testcase
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
0ae97279d8
Added optional MASK specification to VIA's RECT and POLYGON elements
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
fd0b07f0cd
MERGE: strmxor could not identify layers when one has a name and the other does not (but both have numbers)
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
8796b65ddb
DEF reader patched: after via continue with the new metal layer with the width given by the rule.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
ee3ee5bd8e
Another update of the map file reader for LEF/DEF
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
dd63b727f8
Another update of the map file reader for LEF/DEF
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
67a1c0ba25
Updated implementation of mapping file reader for LEF/DEF.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
e15d99e4da
LEF reader fix: determine routing layers for vias without VIARULE from involved layers
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
d328901799
DEF reader fix: TAPER has to disable NONDEFAULTRULE for the segment
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
44503facea
Attempt to auto-import .map files for LEF/DEF reader. Probably needs adjustment.
2020-04-05 21:49:36 +02:00
Matthias Koefferlein
df11ff9b85
Merge branch 'master' of https://github.com/KLayout/klayout
2020-04-05 20:20:28 +02:00
Matthias Koefferlein
0abd5d5d96
Fixed some minor compiler warnings.
2020-04-05 18:30:08 +02:00
Matthias Koefferlein
27109312cf
Avoid a runtime warning for missing QWidget binding without Qt bindings compiled in
2020-04-05 18:29:55 +02:00
Matthias Köfferlein
c93db59e37
Fixed #524 (failed query leaves layout in invalid state) ( #528 )
2020-04-05 15:11:37 +02:00
Matthias Köfferlein
865076588b
Fixed issue #530 (events are mentioned as getters two times) ( #531 )
2020-04-05 15:11:18 +02:00
Matthias Köfferlein
2b3a53b285
Implemented #521 (enhanced API for ObjectInstPath) ( #532 )
2020-04-05 15:11:03 +02:00
Matthias Koefferlein
d1f1cf3031
Fixed a refactoring damage: the application mode indicator did not follow programmatic changes.
2020-04-05 14:01:44 +02:00
Matthias Koefferlein
14b6d58a09
Bugfix: paste was always paste_interactive
2020-04-05 13:23:22 +02:00
Matthias Koefferlein
cc6b23bffd
MERGE: fixed a typo in the undo title.
2020-04-01 23:40:00 +02:00
Matthias Koefferlein
c640347570
MERGE: added Spice reader testcase for resistors with model names.
2020-04-01 23:19:21 +02:00
Matthias Koefferlein
8c91dd520d
MERGE: Enhanced DRC and LVS documentation somewhat
2020-04-01 22:45:50 +02:00
Matthias Koefferlein
c021d60d41
Updated unit test
2020-03-29 09:23:13 +02:00
Matthias Koefferlein
86a3150aba
Fixed .pro files
2020-03-29 09:03:02 +02:00
Matthias Koefferlein
115f2edfd6
Removed unused entry from .pro file - made some build crash.
2020-03-28 23:10:02 +01:00
Matthias Koefferlein
99d3610a6a
Implemented #527 (wildcard layer mapping targets)
...
commit d77702cd86066f3a97d740a95923fa598c2ff07b
Author: Matthias Koefferlein <matthias@koefferlein.de>
Date: Sat Mar 28 21:28:39 2020 +0100
Wildcard expansion feature on layer mapping
Finished feature, added doc and test.
The solution is to use placeholder indexes for the
layer mapping which are substituted by the real
layers when they are encountered.
commit af60b5f18acfe3c5e2f1d4e6bc6ee752a246dc0d
Author: Matthias Koefferlein <matthias@koefferlein.de>
Date: Sat Mar 28 19:11:32 2020 +0100
Preparations for new feature: introduce relative and wildcard target layer specs
2020-03-28 22:49:57 +01:00
Matthias Koefferlein
53f69ea90d
Fixed a segfault in the unit tests (related to future branch)
2020-03-28 22:49:06 +01:00
Matthias Koefferlein
666cdeadc5
MERGE: documentation enhancements for LVS/DRC
2020-03-28 12:29:53 +01:00
Matthias Koefferlein
a47932a79e
Added one more testcase for join_symmetric_nets
2020-03-28 09:49:41 +01:00
Matthias Koefferlein
9afcec25bc
Fixed #526 - Make scripe debugging more reliable
...
Problem: the debugger was printing an object's value as string.
The effect is that for big objects "to_s" will deliver huge strings
(e.g. polygons, netlists ...). "inspect" is better (already used
for Python), but it's aliased to "to_s" in Python and Ruby.
Huge strings will stall the debugger.
The solution is to stop this aliasing (Ruby 2.x doesn't do it
itself anymore) and use "inspect" consistently for Python and
Ruby.
Details can still be printed in the console.
2020-03-26 22:50:12 +01:00
Matthias Koefferlein
b6ba51e563
Provide timing information for Spice reader/writer
2020-03-26 17:33:18 +01:00
Matthias Koefferlein
04aa005247
Fixed #525 - report true source line in DRC and LVS verbose mode
2020-03-26 17:20:15 +01:00
Matthias Koefferlein
8afd907abb
Fixed builds
2020-03-15 23:27:24 +01:00
Matthias Koefferlein
c10ccccdf7
Merge branch 'app-refactoring' into doc-args
2020-03-15 21:32:39 +01:00
Matthias Koefferlein
8275e47334
More @args removed.
2020-03-14 22:44:43 +01:00
Matthias Koefferlein
daba9d78be
More @args removed.
2020-03-14 22:26:21 +01:00
Matthias Koefferlein
53c81cc572
Got rid of most of the @args
2020-03-14 21:50:47 +01:00
Matthias Koefferlein
c6b48acc76
Some small enhancements
...
LVS: max_branch_complexity was wrong and missing from doc.
Updated test cases so MSVC 2017 builds should pass.
Windows build.bat updated so debug builds can be made.
2020-03-04 21:48:00 +01:00
Matthias Köfferlein
ef4c9313ab
Fixed a severe bug in join_symmetric_nets
2020-03-03 22:24:03 +01:00
Matthias Köfferlein
7a60f5957b
Enable Qt-less build of unit tests on Windows in debug mode and without iterator assertions
2020-03-03 22:19:31 +01:00
Matthias Koefferlein
6721cb9c5b
Merge branch 'issue-482-update'
2020-03-02 18:57:40 +01:00
Matthias Köfferlein
91226230aa
Merge pull request #518 from KLayout/issue-517
...
Fixed #517 (VIARULE issue in DEF reader)
2020-03-02 18:56:55 +01:00
Matthias Koefferlein
8d665bd456
Fixed a minor segfault (DXF reader while having log level verbose), updated Changelog
2020-03-02 18:56:29 +01:00
Matthias Koefferlein
04ae4d5d28
Updated fix (wasn't correctly representing some via pattern)
2020-03-02 00:20:15 +01:00
Matthias Koefferlein
cec1910bf0
Added tests.
2020-03-02 00:13:44 +01:00
Matthias Koefferlein
c9955d39a6
Fixed issue-517
2020-03-02 00:09:41 +01:00
Matthias Koefferlein
a5a4ae511d
Some more tests, a (unlikely) segfault fixed
2020-02-28 23:19:27 +01:00
Matthias Köfferlein
82686b307c
Merge pull request #515 from KLayout/issue-471
...
Implemented #471 (leaner way to specify compare tolerances)
2020-02-27 18:46:15 +01:00
Matthias Köfferlein
56868eda85
Merge pull request #514 from KLayout/issue-482
...
Implemented #482 (split gate option aka join_symmetric_nets)
2020-02-27 18:46:02 +01:00
Matthias Köfferlein
d824956a4f
Merge pull request #510 from KLayout/issue-486
...
Fixed #486 ('save as' feature for macros)
2020-02-27 18:45:50 +01:00
Matthias Koefferlein
78050b1e5f
Implemented #471 : Updated doc.
2020-02-27 17:30:23 +01:00
Matthias Koefferlein
02e38a2cd1
Merge branch 'issue-482' into issue-471
2020-02-27 15:49:35 +01:00
Matthias Koefferlein
d315f84cab
Attempt to fix Windows build error.
2020-02-27 15:46:34 +01:00
Matthias Koefferlein
8b73dffcfe
Implementation done. Added tests.
2020-02-27 15:40:06 +01:00
Matthias Koefferlein
4cfe6ba2b9
Implemented #482 : updated documentation.
2020-02-27 14:34:16 +01:00
Matthias Koefferlein
75e936bd64
Added one more test case.
2020-02-27 13:46:52 +01:00
Matthias Koefferlein
76f5e19ed8
Enhanced LVS with 'join_symmetric_nets'. Updated doc. Added test.
2020-02-27 13:35:36 +01:00
Matthias Koefferlein
3b31109367
Added GSI binding for join_symmetric_nets, added method to get circuits by name pattern.
2020-02-27 12:17:35 +01:00
Matthias Koefferlein
25d1a65b21
Small enhancement: unit tests work also with verbosity >0 now.
2020-02-27 01:29:10 +01:00
Matthias Koefferlein
a46cd305c6
WIP: bug fix for symmetry detection (should consider different pins to break symmetry). Added tests.
2020-02-27 00:52:06 +01:00
Matthias Koefferlein
b35429291e
WIP: join_nets implemented, join_symmetric_nets: enhanced detection of symmetric nets.
2020-02-27 00:52:03 +01:00
Matthias Koefferlein
08af8d85c4
WIP: first algorithm - is capable of deriving the 'resistor cube' symmetry.
2020-02-27 00:52:00 +01:00
Matthias Koefferlein
58de38739a
WIP: some refactoring, debugging output for netlist compare
...
Abstraction: a central getenv() feature to wrap all the system-specific things
Netlist compare debug and options can be enabled through environment variables:
KLAYOUT_NETLIST_COMPARE_DEBUG_NETCOMPARE=1: print netlist compare debug info
KLAYOUT_NETLIST_COMPARE_DEBUG_NETGRAPH=1: print net grapg
KLAYOUT_NETLIST_COMPARE_CASE_SENSITIVE=1: make netlist compare case sensitive
2020-02-27 00:51:55 +01:00
Matthias Koefferlein
7d7c9aecc6
Fixed #486 ('save as' feature for macros)
2020-02-23 14:10:26 +01:00
Matthias Koefferlein
2564b11da3
Fixed #478 (shapes method can't be used in queries)
2020-02-23 13:36:20 +01:00
Matthias Koefferlein
d01759aa60
Implemented #500 (limit number of shapes in net tracer)
2020-02-23 11:02:15 +01:00
Matthias Köfferlein
1992fc762a
Issue #489 (Pin names as shape properties) ( #507 )
...
* Fixed #489 (LEF/DEF reader provides pin names as properties)
* Removed vi swap file
* #489 fixed (LEF pins also get properties, added tests)
2020-02-23 00:29:12 +01:00
Matthias Köfferlein
946af71f2f
Fixed issue #473 (fast accessors to image pixel and mask data through… ( #503 )
...
* Fixed issue #473 (fast accessors to image pixel and mask data through arrays)
* Updated Jenkinsfile to not publish a PR build
* Updated Jenkinsfile to not publish a PR build
2020-02-21 18:38:08 +01:00
Matthias Köfferlein
7c89192ad8
Fixed #502 (issues with AbsoluteProgress) ( #504 )
...
* Fixed #502 (issues with AbsoluteProgress)
* Updated Jenkinsfile to not publish a PR build
2020-02-21 18:37:50 +01:00
Matthias Köfferlein
69e7704430
Issue 501 ( #505 )
...
* Fixed #501 (more Qt ownership management) - this commit contains some more changes because I had to regenerate the Qt binding sources.
* Fixed #501 (Qt object ownership transfer) - repairs, added tests
* Updated Jenkinsfile to not publish a PR build
* Update Jenkinsfile - exclude PR's from build
2020-02-21 18:25:22 +01:00
Matthias Koefferlein
9142479585
Fixed a segfault.
2020-02-19 09:51:55 +01:00
Matthias Koefferlein
8a95b2e6f7
WIP: wording.
2020-02-19 09:22:04 +01:00
Matthias Koefferlein
4782450170
WIP: args notation.
2020-02-19 09:13:25 +01:00
Matthias Koefferlein
7913e7cf82
Added unit tests.
2020-02-19 01:06:39 +01:00
Matthias Köfferlein
161068c70a
Merge pull request #492 from KLayout/issue-491
...
Issue #491 fixed (maybe)
2020-02-16 10:15:53 +01:00
Matthias Koefferlein
5853fecf37
Two bugs fixed: tech selection did not happen, enable all/disable all did not work
2020-02-13 00:53:20 +01:00
Matthias Koefferlein
0059d1bf24
Basic refactoring: Action -> Action*
2020-02-13 00:16:37 +01:00
Matthias Koefferlein
c801df7f7b
WIP: fixed assertion in klayout_main test.
2020-02-11 00:39:19 +01:00
Matthias Koefferlein
ad775413f3
WIP: refactoring - fixed a segfault.
2020-02-10 23:13:35 +01:00
Matthias Koefferlein
9cb81ce807
WIP: further refactoring.
2020-02-10 00:38:48 +01:00
Matthias Koefferlein
45b6a72bee
WIP: further refactoring.
2020-02-10 00:07:41 +01:00
Matthias Koefferlein
e8a875ccb5
WIP: further refactoring.
2020-02-09 01:35:44 +01:00
Matthias Koefferlein
a44535e009
WIP: further refactoring.
2020-02-08 23:01:42 +01:00
Matthias Koefferlein
85789a386b
WIP: further refactoring.
2020-02-08 22:15:09 +01:00
Matthias Koefferlein
64a09e07f9
WIP: refactoring ongoing.
2020-02-08 00:02:49 +01:00
Matthias Koefferlein
a14e90f367
WIP: refactoring ongoing - starts looking good :)
2020-02-07 23:52:32 +01:00
Matthias Koefferlein
a2d4b02238
WIP: refactoring ongoing.
2020-02-07 19:05:45 +01:00
Matthias Koefferlein
24ad1b2d26
WIP: refactoring ongoing.
2020-02-07 18:46:35 +01:00
Matthias Koefferlein
4210198179
WIP: refactoring ongoing.
2020-02-07 17:33:53 +01:00
Matthias Koefferlein
ce25d51763
WIP: refactoring ongoing.
2020-02-07 01:41:03 +01:00
Matthias Koefferlein
b604624123
WIP: refactoring ongoing.
2020-02-07 01:32:05 +01:00
Matthias Koefferlein
68472e6e14
WIP: refactoring ongoing.
2020-02-07 01:27:24 +01:00
Matthias Koefferlein
fa1b98c933
WIP: refactoring ongoing.
2020-02-07 01:11:23 +01:00
Matthias Koefferlein
674d4b45ad
WIP: refactoring ongoing.
2020-02-07 01:00:46 +01:00
Matthias Koefferlein
d6589f1d0e
WIP: refactoring ongoing.
2020-02-07 00:41:37 +01:00
Matthias Koefferlein
4f03710f65
WIP: target will be version 0.27.
2020-02-05 00:02:12 +01:00
Matthias Koefferlein
b2e6085ba1
WIP: not quite further ...
2020-02-04 23:54:29 +01:00
Matthias Koefferlein
22b3a5face
WIP: refactoring - at least some local context menus for detached views
2020-02-04 21:33:27 +01:00
Matthias Koefferlein
0f69c24e79
WIP: avoids a segfault because of missing manager
2020-02-04 20:50:46 +01:00
Matthias Koefferlein
f6a6acd20e
WIP: new LayoutView features for pya/RBA.
2020-02-04 00:33:07 +01:00
Matthias Koefferlein
961a36a7ad
Issue #491 fixed (maybe)
2020-02-03 22:38:45 +01:00
Matthias Köfferlein
aba55148db
Merge pull request #483 from KLayout/issue-481
...
Fixed issue #481 (duplicate DRC markers)
2020-01-28 23:48:33 +01:00
Matthias Köfferlein
607cdbd71b
Merge pull request #484 from KLayout/issue-476
...
Issue 476
2020-01-28 23:48:21 +01:00
Matthias Koefferlein
de5f092d37
Merge branch 'master' of https://github.com/KLayout/klayout
2020-01-28 23:46:42 +01:00
Matthias Koefferlein
cc37ecfd17
Fixed titles of file dialogs.
2020-01-28 23:45:40 +01:00
Matthias Koefferlein
21397283f3
Fixed #477
2020-01-23 18:38:41 +01:00
Matthias Koefferlein
eeadfcea7b
Fixed #476
2020-01-23 17:56:20 +01:00
Matthias Koefferlein
b1716fc8c4
Fixed issue #481
2020-01-23 17:26:12 +01:00
Matthias Koefferlein
925b7c2f33
Removed incorrect regexp substitution.
2020-01-23 17:22:58 +01:00
Matthias Koefferlein
fb0d06602e
Attempt to fix the issue
...
In additon, some actions like display of the netlist
browser are suppressed until "final" is true for
"_finish".
TODO: Layout#get_info should never segfault.
2020-01-12 23:41:03 +01:00
Matthias Köfferlein
80b0eae937
Merge pull request #469 from KLayout/issue-464
...
Fixed #464 (problems building a layer node tree with 'add_child')
2020-01-05 01:03:29 +01:00
Matthias Köfferlein
db1d05282d
Merge pull request #467 from KLayout/issue-466
...
Issue 466
2020-01-05 01:03:10 +01:00
Matthias Köfferlein
6a996b6f5b
Merge pull request #465 from KLayout/issue-462
...
Implemented #462 (Generalize MOS transistor extraction to other gate …
2020-01-05 01:02:54 +01:00
Matthias Köfferlein
b012e90def
Merge pull request #470 from KLayout/issue-463
...
Issue 463
2020-01-05 01:02:32 +01:00
Matthias Koefferlein
b8c82c4f8b
Updated copyright notice to 2020
2020-01-05 00:59:43 +01:00
Matthias Koefferlein
cea5dbc0b4
Fixed #463 (Can't configure color of third-level layer groups)
2020-01-05 00:51:06 +01:00
Matthias Koefferlein
811560094a
Updated tests.
2020-01-04 21:19:06 +01:00
Matthias Koefferlein
0285a5195c
Fixed #464 (problems building a layer node tree with 'add_child')
...
The reason was a synchronization issue.
Actually "LayerPropertiesNodeRef" is not a reference, but
a mirror copy of the LayerPropertiesNode the reference points
to. Changes to the original must be synchronized into the
reference and back.
This concept is a tribute to the original implementation and
the node reference was a convenience add-on to the iterator-
based API.
Better solution in general is to replace the LayerPropertiesNodeRef
concept with a real reference.
2020-01-04 19:39:09 +01:00
Matthias Koefferlein
09f97aa286
Fixed #466 (Segfault when accessing a wrong layer tab)
2020-01-04 12:33:14 +01:00
Matthias Koefferlein
833edf53b2
Implemented #462 (Generalize MOS transistor extraction to other gate figures)
2020-01-02 22:20:45 +01:00
Matthias Koefferlein
c4636cebdb
Fixed #458 (Array instance net tracing bug)
2019-12-23 20:38:17 +01:00
Matthias Koefferlein
85c033db64
Small doc fixes
2019-12-21 18:00:02 +01:00
Matthias Köfferlein
a4e87e5b4a
Merge pull request #454 from KLayout/dvb
...
Dvb
2019-12-18 18:09:39 +01:00
Matthias Köfferlein
e2e761b999
Merge pull request #455 from KLayout/issue-453
...
Fixed #453 (Crash when using 'inverse' feature of TEXT PCell)
2019-12-18 18:09:26 +01:00
Matthias Koefferlein
a314d3d8c5
Fixed #453 (Crash when using 'inverse' feature of TEXT PCell)
2019-12-18 18:05:09 +01:00
Matthias Koefferlein
d9236a398f
Multiple progress bars enabled.
2019-12-18 02:19:15 +01:00
Matthias Koefferlein
297f37a63a
Huge performance improvement for a specific array element interaction. Reason: duplicate cluster interactions spoiled performance.
2019-12-18 01:10:16 +01:00
Matthias Koefferlein
fcba0018ba
Enhanced progress estimation of box scanner - no progress jumping back and forth.
2019-12-17 22:38:17 +01:00
Matthias Koefferlein
a9bd037b58
Some code cleanup with performance impact
2019-12-17 22:23:43 +01:00
Matthias Koefferlein
fb2611632d
Some performance improvement of net extractor.
2019-12-17 21:16:29 +01:00
Matthias Koefferlein
f174e5b83d
Updated documentation
2019-12-17 20:29:37 +01:00
Matthias Koefferlein
d0e6efa484
Implemented #444 (double-height standard-cell support).
2019-12-17 00:12:36 +01:00
Matthias Koefferlein
12c040aa6c
Merge branch 'issue-448' into dvb
2019-12-15 20:51:35 +01:00
Matthias Koefferlein
c9d528dc88
Fixed #447 - CentOS 6 build fixed.
2019-12-15 15:46:15 +01:00
Matthias Koefferlein
fccd78a222
Fixed #448 and updated test data
2019-12-15 10:37:51 +01:00
Matthias Koefferlein
782f6fe601
BUGFIX: the L2N and LVSDB writer was writing too much
...
Sometimes, shapes from child cells were propagated into
parent cells in the L2N and LVSDB output.
Because of this fix, many testdata files have to be updated.
2019-12-15 01:29:56 +01:00
Matthias Koefferlein
87e658acf0
WIP: finalized refactoring.
2019-12-15 00:48:11 +01:00
Matthias Koefferlein
da1ac3661f
WIP: bugfix of refactoriung, update test data.
2019-12-15 00:16:47 +01:00
Matthias Koefferlein
1e5d02b1bc
WIP: refactoring of cell instance interactions for net extraction.
2019-12-14 18:58:22 +01:00
Matthias Koefferlein
1f5ec9d3e9
Bugfix: don't mess with the hier cluster structure while determining the interactions ...
2019-12-12 00:20:15 +01:00
Matthias Koefferlein
e11aaf4ac2
WIP: Continued rework.
2019-12-11 23:35:19 +01:00
Matthias Koefferlein
fee5472845
WIP: further refactoring.
2019-12-11 01:28:56 +01:00
Matthias Koefferlein
406bc226bb
WIP: refactoring
2019-12-11 00:39:46 +01:00
Matthias Koefferlein
75cb21bbd1
WIP: refactoring, first steps.
2019-12-10 23:55:14 +01:00
Matthias Koefferlein
4acc4b96e2
First attempt to fix the issue
...
Problem was caching which did not take into account the array nature
of instances.
This fix also moves the cache one level below so it is effective also
when instance tree traversal happens. This might speed up things too.
Needs testing.
2019-12-09 21:37:07 +01:00
Matthias Koefferlein
91b7d6a2df
Fixed compatibility issue of MAG reader on Windows
2019-12-08 22:06:47 +01:00
Matthias Koefferlein
bbb8e1f430
Merge branch 'master' of https://github.com/KLayout/klayout
2019-12-08 20:25:54 +01:00
Matthias Koefferlein
8916dd12a9
Small bugfix for MAG writer + tests.
2019-12-08 20:25:25 +01:00
Matthias Koefferlein
76c42f2959
Magic file writer fixes for Windows - file path handling wasn't right for windows paths with drives.
2019-12-08 19:58:58 +01:00
Matthias Köfferlein
054869ec9a
Merge pull request #446 from KLayout/issue-445
...
Fixed #445 (cryptic message on 'merge shapes' with instances selected)
2019-12-08 09:14:48 +01:00
Matthias Köfferlein
ed407f1e93
Merge pull request #443 from KLayout/issue-438
...
Fixed #438 (error on redefinition of subcircuit in SPICE)
2019-12-08 09:14:05 +01:00
Matthias Köfferlein
61c50a59ec
Merge pull request #442 from KLayout/issue-440
...
Fixed #440 (issue with LayoutView#each_annotation_selected)
2019-12-08 09:13:48 +01:00
Matthias Köfferlein
c1ece152c5
Merge pull request #441 from KLayout/issue-439
...
Issue 439 (plain-text macro is marked "modified" on windows)
2019-12-08 09:13:31 +01:00
Matthias Koefferlein
63cc73b569
Fixed #445 (cryptic message when instances are selected and 'merge shapes' is used)
2019-12-08 08:43:08 +01:00
Matthias Koefferlein
3b9beb0d49
Fixed #438 (error on redefinition of subcircuit in SPICE)
2019-12-07 23:39:39 +01:00
Matthias Koefferlein
c214021618
Fixed #440 (issue with LayoutView#each_annotation_selected)
2019-12-07 21:51:10 +01:00
Matthias Koefferlein
9ef90aa135
Fixed #439 (CRLF issue with plain-text macros)
2019-12-07 19:14:21 +01:00
Matthias Koefferlein
a430b4df83
Supply 'read_all' capability of text stream with CRLF replacement.
2019-12-07 19:08:35 +01:00
Matthias Koefferlein
2402adc45d
Open to silence instance copy mode dialog
...
By using "don't ask again" the instance copy mode
dialog won't come up again. The mode can be reverted
back to "ask" in the editor options.
2019-12-05 01:09:48 +01:00
Matthias Koefferlein
717470a389
Enhancement of the "interactive" (infix) modes
...
1.) Copy & Cut will now take the selection from
the transient selection if no real selection is present
2.) Hence, Copy & Cut are always enabled
3.) The same if true for duplicate
4.) Move interactive will also act immediately on the transient
selection.
2019-12-05 00:36:46 +01:00
Matthias Köfferlein
2fa545d80b
Merge pull request #435 from KLayout/issue-429
...
Issue 429
2019-12-02 21:15:05 +01:00
Matthias Köfferlein
e061a0a932
Merge pull request #433 from KLayout/wip
...
Some enhancements
2019-12-02 21:14:35 +01:00
Matthias Köfferlein
8f8c393309
Merge pull request #432 from KLayout/issue-425
...
Issue 425
2019-12-02 21:13:14 +01:00
Matthias Köfferlein
e7ddf3b64f
Merge pull request #431 from KLayout/issue-426
...
Implemented #426 (feature request: group techs)
2019-12-02 21:12:40 +01:00
Matthias Köfferlein
ebb19879e9
Merge pull request #430 from KLayout/issue-428
...
Issue 428
2019-12-02 21:12:22 +01:00
Matthias Koefferlein
904bbf15a1
Refinement of tech management and MAG reading
...
- The MAG reader now has access to the details of the proposed
technology (set in KLayout), specifically inside library paths
($(tech_name), $(tech_dir)). This allows setting the MAG reader
path relative to the technology path.
- If no specific technology is set before MAG files are read and
the technology listed there is found in KLayout, KLayout will
attach the layout to this technology.
2019-12-01 18:19:55 +01:00
Matthias Koefferlein
baffb940d1
Implemented #429 : final touches to doc and tests for RBA/pya API.
2019-12-01 16:41:27 +01:00
Matthias Koefferlein
152dc87682
Implemented a dummy arrangement of cells when the MAG output file isn't corresponding to a existing cell - useful for obtaining a cell overview
2019-12-01 10:13:11 +01:00
Matthias Koefferlein
c49bc17e6a
CIF writer: only layer names should be forced to upper case. Cell names don't need this.
2019-11-30 22:53:29 +01:00
Matthias Koefferlein
9eb09c3a5d
Enhancements to implementation
...
- OASIS layers are turned into pure layer name (not lxdy_name) for
MAG output
- Boxes of instances had been incorrect
- consistent naming of cell files in presence of special chars
2019-11-30 22:30:28 +01:00
Matthias Koefferlein
f8743e7411
Added PearlRiver die Magic files as test case.
2019-11-30 21:16:31 +01:00
Matthias Koefferlein
6003727561
Added strm2mag tool and support for Magic options
2019-11-30 20:54:15 +01:00
Matthias Koefferlein
f16a5085c5
WIP: some implementation refinement
...
- MAG writer output name does not need to match a cell name
(this file is not written in this case, but the path and extension
are taken from it). A warning is issued in this case.
- Strings for layer and cell names are normalized (special chars, UTF8)
- Cell duplicates won't be produced but existing cells are reused.
This enables "incremental reads".
2019-11-30 19:04:54 +01:00
Matthias Koefferlein
c6ede46fd0
WIP: substantial changes
...
- force lower-case layer names to allow CIF/MAG loop (CIF needs
upper-case layer names, MAG doesn't)
- reverted CIF reader to standard
- new options for writer: tech, "zero timestamp".
- file name MUST be consistent with one cell name.
Reason: it's not possible to derive the initial
cell from the given options, so without the file name
being consistent, we can't know what to write there.
Basically the file name rather supplies the path.
2019-11-30 00:09:44 +01:00
Matthias Koefferlein
9fb73a3928
A small enhancement for CIF / less ignorant reader
...
The change is to allow lower-case cell and layer names when they
are separated from the command with a blank. So
"Layername XZY;": "L" is the command, "ayername" is ignored
BUT:
"L xyz;": "xyz" is not part of the command, but the layername.
Same for "DS".
This is a deviation from the "standard", but a useful one. Otherwise
case sensitivity cannot be maintained anymore in a CIF/Magic loop.
2019-11-29 01:15:06 +01:00
Matthias Koefferlein
0796b20c2d
Added a first test for Magic reader/writer
2019-11-29 01:14:41 +01:00
Matthias Koefferlein
3f9dd59593
WIP: MAG reader now is compliant with writer (and Magic I hope)
2019-11-29 00:25:28 +01:00
Matthias Koefferlein
3283219b0f
WIP: writer functionality debugged and enhanced (triangles, correct arrays etc.)
2019-11-28 23:58:19 +01:00
Matthias Koefferlein
cef868d774
WIP: ongoing development.
2019-11-28 01:03:25 +01:00
Matthias Koefferlein
11e3209d4a
WIP: removed traces of CIF copy
2019-11-28 00:45:47 +01:00
Matthias Koefferlein
4ac5801cc7
WIP: Implementation draft of MAG file writer.
2019-11-28 00:20:30 +01:00
Matthias Koefferlein
5c217b90b5
WIP: starting MAG writer.
2019-11-27 22:33:50 +01:00
Matthias Koefferlein
a980332c76
Fixed MAG reader (rlabels)
2019-11-26 23:38:23 +01:00
Matthias Koefferlein
6399f4693a
Bugfixed MAG reader.
2019-11-26 23:03:55 +01:00
Matthias Koefferlein
814b8df516
DRC enhancement: allow @+ to create a new layout for output.
2019-11-26 23:03:44 +01:00
Matthias Koefferlein
211524a0c0
WIP: reader starts becoming functional.
2019-11-26 01:03:24 +01:00
Matthias Koefferlein
aece8b299f
WIP: generalized code.
2019-11-25 19:54:24 +01:00
Matthias Koefferlein
2acb66182a
WIP: basic framework
2019-11-25 00:07:56 +01:00
Matthias Koefferlein
a8cace399e
Added some private tests to LVS tests for better coverage.
2019-11-24 18:25:56 +01:00
Matthias Koefferlein
0f1dc1d191
Refine pin mismatch handling so that only 'not used' nets will make a pin match against null.
2019-11-24 16:40:45 +01:00
Matthias Koefferlein
afacf7c0b5
WIP: fixed a segfault in the netlist browser.
2019-11-24 01:28:07 +01:00
Matthias Koefferlein
20976d7521
Avoid an error message on startup when Python/Ruby isn't enabled.
2019-11-24 00:36:46 +01:00
Matthias Koefferlein
64bb01d80d
Dropped attempt to remove dummy nodes from spice reader netlist as this wasn't effective anyway.
2019-11-24 00:23:19 +01:00
Matthias Koefferlein
ed00503d41
Fixed Spice reader: must not use Netlist::purge_nets to remove dummy nets. Updated golden test data.
2019-11-23 23:36:52 +01:00
Matthias Koefferlein
aa28aa807a
Unit tests fixed and a bugfix in the netlist compare
...
One unit test was failing because the netlist compare did not
properly consider dropped pins:
* A severe bug ("g1" should be "g2")
* Incomplete detection of dropped pins upwards in the hierarchy
The general pin and net mapping scheme has been enhanced so that
net mapping to "0" is valid (this will happen in case of dropped
pins) and this condition is used to detect pins without match
requirement.
2019-11-23 22:04:25 +01:00
Matthias Koefferlein
1309aa59cb
Merge branch 'master' into issue-425
2019-11-23 01:55:28 +01:00
Matthias Koefferlein
7de90ae595
Merge branch 'issue-417'
2019-11-23 01:46:38 +01:00
Matthias Koefferlein
79f4f8bc57
Update unit test for issue-417 branch.
2019-11-23 01:45:56 +01:00
Matthias Koefferlein
d5506a176a
WIP: first implementation - needs testing.
2019-11-23 01:20:22 +01:00
Matthias Koefferlein
2757b22da6
Resolved conflicts for issue-419 merge
2019-11-22 23:34:03 +01:00
Matthias Koefferlein
4fe5a96596
Implemented #426 (feature request: group techs)
...
The tech group is a new XML tag "<group>...</group>".
This tag is editable in the tech "general" page as "Group".
If non-empty, a submenu will be created in the tech selector
menu for all techs with the same group.
2019-11-22 23:23:11 +01:00
Matthias Köfferlein
a792cf4c1e
Merge pull request #424 from KLayout/issue-407
...
Issue 407
2019-11-22 23:12:44 +01:00
Matthias Köfferlein
c5dc7c9fa8
Merge pull request #423 from KLayout/issue-415
...
Fixed #415 (text mode for XML reader and stream writer to avoid macro format confusion)
2019-11-22 23:12:31 +01:00
Matthias Köfferlein
ac7e17ffcb
Merge pull request #422 from KLayout/issue-406
...
Issue 406
2019-11-22 23:12:16 +01:00
Matthias Köfferlein
9200e5037d
Merge pull request #421 from KLayout/issue-417
...
Fixed #417 : look up the net in the parent hierarchy of the net shape …
2019-11-22 23:11:59 +01:00
Matthias Köfferlein
c8cf8122b6
Merge pull request #414 from KLayout/issue-411
...
Issue 411
2019-11-22 23:11:24 +01:00
Matthias Köfferlein
319c73e6c0
Merge pull request #413 from KLayout/issue-408
...
Fixed issue #408 (internal error after EdgePairs#polygon)
2019-11-22 23:11:05 +01:00
Matthias Köfferlein
967e8dc5b1
Merge pull request #412 from KLayout/issue_410
...
Fixed issue #410
2019-11-22 23:10:52 +01:00
Matthias Köfferlein
b6869e4deb
Merge pull request #409 from KLayout/netlist_properties
...
Netlist properties
2019-11-22 23:10:39 +01:00
Matthias Koefferlein
e4596e4971
Fixed #428 (hide edit buttons for user properties in viewer mode)
2019-11-22 22:40:01 +01:00
Matthias Koefferlein
d37a744322
Build issue fixed on Windows.
2019-11-21 22:03:01 +01:00
Matthias Koefferlein
215ce8812b
More consistent handling of Windows/Linux switch in output stream and unit tests.
2019-11-21 21:57:49 +01:00
Matthias Koefferlein
247bfa9ac5
Implemented #407 (variables in technology base path)
...
The implementation uses extrapolation of strings in the
"Expressions" framework.
There is how:
* $(tech_name) -> substituted by the technology name
* $(tech_dir) -> substituted by the directory the technology file is stored in
* $(tech_file) -> substituted by the absolute path to the tech file
* $(appdata_path) -> substituted by KLayout's home directory (e.g. ~/.klayout)
* $(env('X')) -> substituted by the environment variable $X
2019-11-21 21:37:00 +01:00
Matthias Koefferlein
72a3528e55
WIP: implementation of a fix (explicit text mode for XML reader and stream writer)
2019-11-20 23:52:37 +01:00
Matthias Koefferlein
6648b53822
Fixed issue #419 (multiple top circuits after flatten of netlist)
...
The problem is solved by always producing subcircuits for cell
instances, even if there are no connections.
The netlist comparer had to be adjusted too because subcircuits
without pins were used for representing "unknown" subcircuit pairing.
In addition, this patch should lead to a better matching of
parallel subcircuit configurations where two different subcircuits
are entirely parallel.
2019-11-20 21:56:12 +01:00
Matthias Koefferlein
f28b8e60c1
Fixed #417 : look up the net in the parent hierarchy of the net shape clusters to find the net for the flattened netlist.
2019-11-19 23:22:40 +01:00
Matthias Koefferlein
6c7ceb74dc
Enhanced intersections algorithm so that the generated points won't overlay with finite edges from the AND part
2019-11-19 21:19:36 +01:00
Matthias Koefferlein
9af662a512
WIP: try to avoid duplicate intersection points by eliminating those. Problem persists: intersection points may be duplicates of edges arising from AND
2019-11-18 23:14:24 +01:00
Matthias Koefferlein
24759c7174
WIP: first implementation. Testing needed.
2019-11-18 19:14:06 +01:00
Matthias Koefferlein
990961e5f4
Fixed #411 (multiple device extractors for same class)
2019-11-17 23:12:50 +01:00
Matthias Koefferlein
1131532e4f
First implementation, needs testing.
2019-11-17 22:45:36 +01:00
Matthias Koefferlein
68c6941318
Fixed issue #408 (internal error after EdgePairs#polygon)
2019-11-17 22:32:02 +01:00
Matthias Koefferlein
147f2c1168
Fixed issue #410
2019-11-17 22:18:55 +01:00
Matthias Koefferlein
181d5b48e6
Fixed consistent typo: PCell's -> PCells
2019-11-17 21:47:11 +01:00
Matthias Koefferlein
6d8f56194b
Edge enhancements
...
New binding: Edge#d (distance vector), Edge#clipped and Edge#clipped_line.
"intersection_point" returns nil in case of no intersection.
Documentation error fixed (Edge#distance).
2019-11-17 21:30:08 +01:00
Matthias Koefferlein
595075a88a
Let the background ruler's size scale with the font size - otherwise it gets quite small on high-res screens.
2019-11-14 02:07:50 +01:00
Matthias Koefferlein
8dddc4000f
Also write the net properties to GDS or OASIS
...
"build_nets" will now write the net's properties
to the generated net shapes.
This might enable interesting applications.
2019-11-13 23:09:09 +01:00
Matthias Koefferlein
bb3aed5773
Merge branch 'master' of https://github.com/KLayout/klayout into netlist_properties
2019-11-13 00:59:29 +01:00
Matthias Koefferlein
876487edde
Added persistency of the netlist object properties into L2N/LVSDB files
2019-11-13 00:06:29 +01:00
Matthias Koefferlein
d060147713
Enhancements for the netlist object properties
...
- more memory efficient (single pointer only)
- iterator for properties
- NetlistObject#property_keys in GSI
2019-11-12 23:00:49 +01:00
Matthias Koefferlein
6d6ac23f50
Fixed a build issue (const iterator cannot be used in std::map::erase)
2019-11-12 20:55:28 +01:00
Matthias Koefferlein
7309688944
More robustness of snap algorithm for unit tests
2019-11-12 20:13:35 +01:00
Matthias Koefferlein
6b5c951088
Fixed string unit test on MinGW 32bit
2019-11-12 19:11:21 +01:00
Matthias Koefferlein
3bf45f3638
Fixed MSVC build error.
2019-11-11 23:23:47 +01:00
Matthias Koefferlein
86e041cd51
Updated test data.
2019-11-11 23:03:40 +01:00
Matthias Koefferlein
b7094affa4
Fixed a dummy error message on Windows/Python 3.7 and really ignore
2019-11-11 21:53:19 +01:00
Matthias Koefferlein
47efb9d11b
WIP: fixed compiler warning
2019-11-11 07:08:37 +01:00
Matthias Koefferlein
0ce06125ca
Introducing netlist object properties.
2019-11-11 07:02:02 +01:00
Matthias Koefferlein
b220374bd1
Fixed gcc builds with stdc++0x (math.h issue)
2019-11-10 01:30:45 +01:00
Matthias Koefferlein
817bbf81f1
Fixed gcc builds with stdc++0x (M_PI no longer available)
2019-11-09 23:20:43 +01:00
Matthias Koefferlein
994c8b8484
Removed superfluous file from lay.pro.
2019-11-09 16:53:17 +01:00