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
Matthias Koefferlein
4a212e8db6
Added tests for Region#scale_and_snap and Region#snap
2019-11-07 23:33:54 +01:00
Matthias Koefferlein
988b1e563f
Added unit test for DeepRegion::snap
2019-11-07 23:11:34 +01:00
Matthias Koefferlein
318efbf7b0
Fixed 'scale_and_snap' feature
2019-11-07 22:54:16 +01:00
Matthias Koefferlein
4924d0269c
Fixed #400 , added tests.
2019-11-06 23:28:16 +01:00
Matthias Koefferlein
1e2a8b264d
WIP: because the fixed scheme works nicely, add a new scale_and_snap function.
2019-11-06 01:11:40 +01:00
Matthias Koefferlein
895206dfa1
WIP: bugfix in case of clip variants.
2019-11-06 01:11:40 +01:00
Matthias Koefferlein
51676376e6
WIP: Variant building bug fixed. Needs testing.
2019-11-06 01:11:40 +01:00
Matthias Köfferlein
990f01adec
Merge pull request #398 from KLayout/issue-393
...
Issue 393
2019-11-06 01:01:48 +01:00
Matthias Köfferlein
3476e40e79
Merge pull request #397 from KLayout/issue-394
...
Issue 394
2019-11-06 01:01:36 +01:00
Matthias Köfferlein
65b0752c5c
Merge pull request #396 from KLayout/issue-387
...
Implemented issue-387 (python version in grain.xml)
2019-11-06 01:01:23 +01:00
Matthias Köfferlein
9fffd03ad3
Merge pull request #390 from KLayout/issue-382
...
Implemented #382 : text editor view for user props
2019-11-06 01:01:09 +01:00
Matthias Köfferlein
b920e057a3
Merge pull request #389 from KLayout/issue-386
...
Fixed issue #386 by mapping 'None' to 'None_' in Python
2019-11-06 01:00:58 +01:00
Matthias Köfferlein
6e02f1f93e
Merge pull request #388 from KLayout/issue-368
...
Implemented #368 : no segfault but exception if accessing invalid laye…
2019-11-06 01:00:47 +01:00
Matthias Köfferlein
a351bc8085
Merge pull request #385 from KLayout/dvb
...
Dvb
2019-11-06 01:00:33 +01:00
Matthias Koefferlein
fe9e808d61
Fixed implementation: cannot change definition of tl::Extractor::read_word and need a new method to read a word.
2019-11-03 21:50:47 +01:00
Matthias Koefferlein
41ab2d6d79
Enhanced #387 fix with pseudo-features
...
To restrict the requirements to a specific Python, Ruby or Qt
major version it's now possible to use "python2", "python3", "ruby1",
"ruby2", "qt4" and "qt5" features.
Like this:
<api-version>python2 2.7</api-version>
will require python >=2.7.0, but Python 3 is not allowed.
2019-11-03 19:36:10 +01:00
Matthias Koefferlein
4f49447fe8
Fixed #393 (properly show DRC syntax errors)
2019-11-03 19:01:46 +01:00
Matthias Koefferlein
078aa36974
Issue #394 fixed: at least the toolbox layout should be fixed now
2019-11-03 18:16:26 +01:00
Matthias Koefferlein
5ba657b790
Implemented #394 : now there is 'XLarge', 'XXLarge' and 'XXXLarge' for default fonts as well.
2019-11-03 17:34:25 +01:00
Matthias Koefferlein
5a288b7224
WIP: trying to use Libration Mono from Ubuntu 16.04
2019-11-03 16:29:26 +00:00
Matthias Koefferlein
37e402e9bd
WIP: new fixed font bitmaps - needs improvement
2019-11-03 17:22:57 +01:00
Matthias Koefferlein
50e8f334d1
Implemented issue-387 (python version in grain.xml)
...
The solution is to extend the api-version field.
"0.26.1" is KLayout API >= 0.26.1
"ruby" means: Ruby required
"python 2.6.0" means: Python required with at least 2.6.0
"0.26.1; ruby; python 2.6.0" means: all of this together
In addition, the version has been set to 0.26.1 now.
2019-11-03 02:12:05 +01:00
Matthias Koefferlein
861a6fdfcc
Fixed a typo in the DRC documentation.
2019-11-02 22:35:19 +01:00
Matthias Koefferlein
7910ddc6a3
Fixed a compiler warning, testcase update (part 1)
2019-11-02 20:39:59 +01:00
Matthias Koefferlein
cd353219ce
Implemented #382 : text editor view for user props
...
This view is an alternative view to the table and
allows copy/paste and faster editing.
2019-11-02 12:36:02 +01:00
klayoutmatthias
627b248f7e
Enhanced compatibility between platforms (problem was: order of execution of argument expressions)
2019-11-02 01:26:37 +01:00
Matthias Koefferlein
9e4bd31010
Fixed issue #386 by mapping 'None' to 'None_' in Python
2019-11-01 17:53:31 +01:00
Matthias Koefferlein
e95ced6d7a
Implemented #368 : no segfault but exception if accessing invalid layer iterator
2019-11-01 17:36:08 +01:00
Matthias Köfferlein
f2fafd1bad
Merge pull request #371 from KLayout/pull_feature
...
Pull feature
2019-10-31 23:51:21 +01:00
Matthias Koefferlein
679aecd11f
Removed debug output.
2019-10-31 00:51:54 +01:00
Matthias Koefferlein
73556d6edc
Netlist compare issue fixed
...
In tentative mode, node equivalence shall not be assumed
if the nodes have edges which don't appear in the other node.
2019-10-30 23:55:08 +01:00
Matthias Koefferlein
3cc38fcfc2
Solved ambiguous bus resolution problem.
2019-10-29 23:26:17 +01:00
Matthias Koefferlein
15fa99c128
WIP: bugfix ambiguous bus-like pins and net compare.
2019-10-29 22:53:37 +01:00
Matthias Köfferlein
262f2b87ad
Merge pull request #380 from rizoschrist-prime/issue-376
...
Fixed #376 - PCell callbacks invoked on value change
2019-10-27 20:11:23 +01:00
Matthias Koefferlein
e25d4784ea
Updated tests.
2019-10-26 01:48:50 +02:00
Matthias Koefferlein
373a3db1ec
WIP: netlist comparer - increase default depth and added test
...
The test is specific for symmetric circuits with manifold
symmetry axes.
2019-10-24 23:58:30 +02:00
Matthias Koefferlein
ac479c30bc
Fixed unit tests.
2019-10-24 00:23:03 +02:00
Matthias Koefferlein
3a8d5d9779
Removed debug code.
2019-10-23 23:49:38 +02:00
Matthias Koefferlein
4ce37160d5
Two bug fixes in net compare (tests required):
...
- name compare of net names wasn't always case insensitive
- tentative evaluation was sometimes continued even after
a contradiction was detected because the return codes
of different edge examinations were not combined correctly.
2019-10-23 23:46:25 +02:00
Matthias Koefferlein
36ee1efe16
WIP: speedup LVS 'align' by flattening top-down
2019-10-21 22:14:36 +02:00
Matthias Koefferlein
f0635589f7
WIP: fixed cell cluster interaction cache.
2019-10-20 23:27:15 +02:00
Matthias Koefferlein
a0544e7807
WIP: caching of cell interactions in net cluster builder for speedup - test data needs update!
2019-10-19 21:44:29 +02:00
Matthias Koefferlein
bf18000877
Added tests (breakout cells, LVS cheats)
2019-10-18 00:25:51 +02:00
Matthias Koefferlein
611f62e73f
Removed debug leftover code
2019-10-17 22:47:43 +02:00
Matthias Koefferlein
cd4516393b
WIP: bugfix (breakout cell handling) and performance
...
1.) Bugfix: breakout cells also need to be handled
when diving down inside the hier cluster builder
2.) Performance: cache cell interactions
2019-10-17 01:54:41 +02:00
Matthias Koefferlein
9e1c8b44c7
Introducing cheats for LVS/device extraction/booleans
2019-10-16 18:59:38 +02:00
Matthias Koefferlein
a3b2e3a154
Bugfix for glob pattern with empty alternative.
2019-10-16 01:10:08 +02:00
Matthias Koefferlein
991778f718
"breakout cells": attempt to provide a solution for SRAM
...
Breakout cells can be specified to shortcut hierarchy
evaluation for some cells. This allows treating SRAM cells
as isolated entities - specifically when it comes to extracting
devices.
2019-10-16 00:49:41 +02:00
Matthias Koefferlein
5c44a54676
Bugfix: don't try to extract netlist on errors
2019-10-16 00:49:33 +02:00
Christos Rizos
d8e7d29e98
Fixed #376 - PCell callbacks invoked on value change
2019-10-14 11:40:28 +03:00
Matthias Koefferlein
67526c7f4e
Fixed #372 (build issue with 64 bit coordinates)
2019-10-05 20:06:30 +00:00
Matthias Koefferlein
f8476bdf26
Fixed an issue with 'align' in LVS scripts - with multiple layout cells assigned to one schematic, align won't give the right results.
2019-10-05 09:30:38 +02:00
Matthias Koefferlein
2325e1bce4
Merge branch 'dvb' into pull_feature
2019-10-04 22:58:52 +02:00
Matthias Koefferlein
ef56264f64
Fixed a regular arrays issue with begin_touching
...
In case of 1d arrays with a or b == (0,0), the iterator
was always delivering all items, not just the touching ones.
2019-10-04 22:45:23 +02:00
Matthias Koefferlein
2fa7c4b6d4
Partially enabled progress for hierarchical processor.
2019-10-04 01:48:45 +02:00
Matthias Koefferlein
212bd86aab
Thread safetiness: enable multiple threads for deep region operations
2019-10-04 01:39:16 +02:00
Matthias Koefferlein
7c5ae471ab
WIP: performance improvement of hier local processor
...
The solution is to take intruder instances from as
far as possible in the hierarchy. This provides a
performance improvement in some cases, specifically
if this leads to compression of contexts.
2019-10-03 22:53:38 +02:00
Matthias Koefferlein
5ed41cc345
Merge branch 'master' into pull_feature
2019-10-03 14:32:25 +02:00
Matthias Köfferlein
a072822461
Merge pull request #367 from KLayout/pcb-l2n
...
Enabled net tracing for heavily decomposed polygons
2019-10-03 14:31:36 +02:00
Matthias Koefferlein
e1d77a1476
pull_interacting for edges/edges and edges/regions, some enhancements and bug fixes
...
Bug fixes:
- use dist 1 to cover touching case properly in local processor
- handling of raw mode and is_merged state
Additional tests
2019-10-03 13:08:37 +02:00
Matthias Koefferlein
76b8bd3279
Fixed several issues with raw mode/merged semantics and many Region and Edges methods. Added edge/edge pull and edge/polygon pull.
2019-10-03 01:46:49 +02:00
Matthias Koefferlein
77c8ff50ed
WIP: don't fallback to flat in case of non-deep other arguments in select_interacting and pull.
2019-10-02 00:12:04 +02:00
Matthias Koefferlein
a1e87d4c14
First pull* implementation functional.
2019-10-01 23:53:05 +02:00
Matthias Koefferlein
74880a5198
First implementation of pull* methods
2019-10-01 22:06:16 +02:00
Matthias Koefferlein
ca747771ac
Allow preempt LVS configuration
...
same_nets, equivalent_pins, same_circuits and same_device_classes
can now be given at the beginning of the LVS script. This will
simplify building universal scripts with the run specific part at
the beginning (one "load" section).
The price are somewhat less specific error messages when something
fails in these methods.
2019-10-01 00:21:27 +02:00
Matthias Koefferlein
0bc2321ade
Some code cleanup.
2019-09-30 23:17:42 +02:00
Matthias Koefferlein
a3cecb2ebe
WIP: enable multiple layout versions of one schematic circuit using 'same_circuit'
2019-09-30 23:08:15 +02:00
Matthias Koefferlein
bdf5e3c124
WIP: fake pin debug issue with LVS
...
Fake pins: pins that happen because something connects to a cell at an
unexpected position. Such a pin is difficult to find. The solution is
to keep those nets and nur purge them so these nets can be identified
in the layout.
Here: is_floating? will be true only if there are no pins. Hence
nets with pins are not removed. is_passive is introduced for nets -
passive nets are such that don't have elements, but a pin.
Circuits are purged if they only have passive nets.
2019-09-30 21:58:13 +02:00
Matthias Koefferlein
506cfc1c6f
WIP: attempt to retain nets which don't have active elements but pins. This is supposed to simplify debugging in case of fake pins. When removing those nets, the pin is very difficult to find.
2019-09-30 20:58:55 +02:00
Matthias Köfferlein
1c16cea421
Merge pull request #364 from KLayout/issue-363
...
Fixed #363 (able to draw invalid polygon with two points)
2019-09-29 21:26:58 +02:00
Matthias Koefferlein
eda5a2497e
Fixed #363 (able to draw invalid polygon with two points)
2019-09-23 00:56:09 +02:00
Matthias Koefferlein
d69c60a5c5
Enabled net tracing for heavily decomposed polygons
2019-09-19 00:13:14 +02:00
Matthias Koefferlein
6c52daa3a3
Follow-up on #353 (sessions paths relative to session file)
...
Consistent behavior for file paths for images too.
Plus: image paths are not kept as absolute paths
inside the session.
This makes regeneration of images stable.
2019-09-18 22:05:37 +02:00
Matthias Köfferlein
9edb9d61ab
Merge pull request #361 from KLayout/issue-358
...
Fixed #358 (strm2oas was producing GDS)
2019-09-18 21:17:48 +02:00
Matthias Koefferlein
9c301f9744
Fixed Ruby-less builds.
2019-09-18 00:50:21 +02:00
Matthias Koefferlein
a50fadffcd
Fixed #358 (strm2oas was producing GDS)
2019-09-17 23:10:41 +02:00
Matthias Köfferlein
6a305cfbbf
Merge pull request #356 from KLayout/issue-353
...
Fixed #353 (paths relative to .lys file for rdb-file)
2019-09-16 23:36:17 +02:00
Matthias Köfferlein
f5ce24066e
Merge pull request #357 from KLayout/issue-352
...
Fixed #352 (LVS should ignore equivalent_pins line for non-existing c…
2019-09-16 23:36:02 +02:00
Matthias Koefferlein
55475e905f
Fixed #352 (LVS should ignore equivalent_pins line for non-existing circuits)
...
Same is true now for same_nets and same_circuits.
2019-09-15 00:18:29 +02:00
Matthias Koefferlein
b747bbabd9
Fixed #353 (paths relative to .lys file for rdb-file)
...
This fix also includes: L2N and LVS DB files are now also
included in the sessions.
2019-09-14 22:38:23 +02:00
Matthias Koefferlein
08aacbd2e8
Provide tests to text buddy executables without framework
2019-09-13 23:46:12 +02:00
Matthias Koefferlein
4c8727182e
Fixed #354 by using the proper initialization
2019-09-13 18:54:31 +02:00
Matthias Koefferlein
ddbf566cd5
Updated DRC documentation (deep mode)
2019-09-09 21:47:27 +02:00
Matthias Koefferlein
5bcb2bb5cb
Merge branch 'master' into dvb
2019-09-08 23:42:56 +02:00
Matthias Koefferlein
9d921e29fe
Fixed Windows build.
2019-09-08 23:40:34 +02:00
Matthias Koefferlein
6eb049eecc
Merge branch 'master' into dvb
2019-09-08 21:48:42 +02:00
Matthias Koefferlein
48a13162d8
Fixed build on MSVC
2019-09-08 21:45:34 +02:00
Matthias Koefferlein
56084b6b59
Merge branch 'dvb'
2019-09-08 20:07:16 +02:00
Matthias Köfferlein
77232f8a50
Merge pull request #349 from KLayout/deep-booleans
...
Deep booleans
2019-09-08 20:06:03 +02:00
Matthias Koefferlein
a7b3f1dfcd
Added documentation for dockable bookmarks feature
2019-09-08 20:01:22 +02:00
Matthias Koefferlein
d9d3b3cafe
Some enhancements to #343 fix
...
- "follow selection": allows navigating between the bookmarks
with the cursor keys
- "manage bookmarks" now starts with the selected bookmarks
also selected.
2019-09-08 02:23:38 +02:00
Matthias Koefferlein
d2d22eafb5
Implementation of #343 (dockable bookmark window)
...
Here is the proposal:
- There is a new panel similar to the layer list showing the
bookmarks. It can be shown using View/Bookmarks.
Initially this panel is hidden.
- Double-clicking on an item in this bookmark list will
navigate to the bookmark.
- Context menu entries of this panel are: manage, load and
save bookmarks (like in main menu)
In addition, "bookmark this view" now proposes a bookmark name
make of "B" and a unique number.
2019-09-08 01:22:34 +02:00
Matthias Koefferlein
8a21d9718e
First implementation
2019-09-08 01:11:19 +02:00
Matthias Koefferlein
c95a0652cc
First implementation of deep mode for XOR tool.
2019-09-07 22:30:10 +02:00
Matthias Koefferlein
26f8fc5c83
Bug fixed strmxor with deep mode, added tests.
2019-09-07 21:27:12 +02:00
Matthias Koefferlein
ce5620e0bc
Follow-up on #342 : fixed unit tests.
2019-09-07 09:11:18 +02:00
Matthias Koefferlein
f7bba9200e
Merge branch 'deep-booleans'
2019-09-07 08:44:51 +02:00
Matthias Köfferlein
f7173d0da4
Merge pull request #345 from KLayout/issue-317
...
Issue 317
2019-09-06 23:24:34 +02:00
Matthias Köfferlein
0388d51f6d
Merge pull request #348 from KLayout/help-link-not-working
...
Fixed: help link not working
2019-09-06 23:24:23 +02:00
Matthias Koefferlein
e2cc0c48b1
Provide flat and hierarchical 'trace all nets' feature, added Netlist#flatten.
2019-09-06 23:13:21 +02:00
Matthias Koefferlein
67575a7ea2
WIP: strmxor.cc - deep mode implemented. Not tested.
2019-09-06 22:18:13 +02:00
Matthias Koefferlein
8df2199838
Fixed: help link not working
...
The help link wasn't working for File/Setup/Rulers/Templates
("here"). Also: if clicked from the model "Ruler and annotations setup"
the link was working but the help window wasn't usable. The modal
setup dialog was hiding the help window.
2019-09-05 22:59:08 +02:00
Matthias Koefferlein
fa72885020
issue #317 : provide undo combination for the paste+move sequence in 'interactive paste'. Same for 'interactive dup'
2019-09-04 23:47:05 +02:00
Matthias Koefferlein
70a4ce82b3
First implementation of infix mode
...
Three mode menu items appear in "Targets for Key Binding"
in the setup dialog and can be bound to a key.
"Move Interactive" will immediately start moving the
selection.
"Paste Interactive" and "Duplicate Interactive" will
paste and then immediately start moving.
Remaining issue: when Paste or Duplicate moves are
cancelled the pasted objects will still be there and
at the original location. So they are may be hard to
see. Also with Undo, two undo items are there: Paste
and Move.
2019-09-03 22:53:32 +02:00
Matthias Koefferlein
50573edad0
Added Ellipse Outline code, fixed doc.
2019-09-03 20:26:22 +02:00
Matthias Koefferlein
25e2151e28
Tiny enhancement of measurement algorithm gives more reliable results on auto-measure for 'any direction'. The solution is taking vertexes into account and accepts them as counterpart for the seed.
2019-09-02 22:58:42 +02:00
Matthias Koefferlein
2e695bd048
Leaner solution: provide snap and swap
...
"Swap points": will swap P1 and P2
"Snap both": will take P2 into account (before it was only P1)
2019-09-01 23:14:21 +02:00
Matthias Koefferlein
9fa5277e41
Implementation proposal
...
The solution tries to be a bit more generic:
- four buttons are there to synchronize coordinates
- three buttons to snap p1, p2 and auto-measure from p1.
2019-09-01 19:59:03 +02:00
Matthias Koefferlein
c7ee35a4e3
WIP: documentation
2019-09-01 17:37:23 +02:00
Matthias Koefferlein
1106d3faac
Merge branch 'dvb'
2019-09-01 11:25:42 +02:00