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
e76be5b071
WIP
2025-04-27 20:55:11 +02:00
Matthias Koefferlein
f1b35d0826
WIP (MALY reader)
2025-04-27 16:56:46 +02:00
Matthias Koefferlein
07eb49d482
Initializing MALY plugin
2025-04-27 01:11:38 +02:00
Matthias Koefferlein
0ec8e18173
refining the DEF warning on missing foreign cell
2025-04-08 23:52:50 +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
6b5268e5f7
Feature glob expansion on LEF and GDS lists for LEF/DEF reader options.
2025-04-06 19:21:02 +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
c437d75a01
[consider merging] Fixing two problems with layer mapping
...
1. Mapping "[*/*] 100/0:0/0" (for example) created 0/0
two times when the input contains 100/0 and 0/0. Now
it is a single layer only
2. The mapping table generated from strings now uses
layer indexes from a range that should not collide
with existing layer indexes.
2025-02-25 22:02:11 +01:00
Matthias Koefferlein
c9da9dc6e0
Updating copyright to 2025
2025-01-04 19:28:56 +01:00
Matthias Koefferlein
b4d1aa131c
Refactoring OASIS reader which wasn't working in non-editable mode
2024-12-25 22:51:56 +01:00
Matthias Koefferlein
dc73b8145f
WIP
2024-12-24 17:13:01 +01:00
Matthias Koefferlein
28260a68b0
WIP
2024-12-24 15:39:27 +01:00
Matthias Koefferlein
acdb18039b
WIP: OASIS reader tests debugging.
2024-12-24 13:07:02 +01:00
Matthias Koefferlein
f5fea29cc9
WIP: OASIS reader tests debugging.
2024-12-24 12:56:13 +01:00
Matthias Koefferlein
dd7aa9b84f
WIP: massive refactoring of properties repo and OASIS reader
...
Target is to reduce the properties repository to a singleton.
Hence, there is no need to translate property IDs and it
is possible to retrieve properties everywhere.
The OASIS reader is refactored to avoid property renaming
and change of property definitions per ID.
2024-12-24 00:00:43 +01:00
Matthias Koefferlein
487a198ec9
WIP: OASIS reader refactoring for new properties repository concept
2024-12-22 17:28:54 +01:00
Matthias Köfferlein
637660ca69
Merge pull request #1933 from KLayout/wip
...
Wip
2024-11-30 08:23:35 +01:00
Matthias Koefferlein
dc9b3bb398
More consistent handling of special paths (like data: URLs) for technology components.
2024-11-23 19:19:23 +01:00
Matthias Koefferlein
85caa4b397
Fixed issue #1925 (MAGIC import fails)
2024-11-17 21:42:29 +01:00
Matthias Köfferlein
d5358c87ae
Merge pull request #1903 from KLayout/wip
...
Wip
2024-10-20 13:25:39 +02:00
Matthias Köfferlein
6b906b9582
Merge pull request #1889 from KLayout/issue-1877
...
Fixed issue #1877 (rounding introduces DRC error in LEF/DEF via)
2024-10-19 16:31:43 +02:00
Matthias Koefferlein
dc0f549ab4
Embedding fix for issue #1892 which is closely related to #1877
2024-10-14 23:41:55 +02:00
Matthias Koefferlein
7b7e98d49a
Fixed issue #1877 (rounding introduces DRC error in LEF/DEF via)
2024-10-12 21:44:49 +02:00
Matthias Koefferlein
1289db7ebd
Enhancing GDS2 writer float conversion such that less rounding occurs
2024-10-04 17:47:37 +02:00
Matthias Koefferlein
4be134e293
LEF/DEF reader recognizes existing layers by name now
...
This is helpful as it assigns layer/datatype numbers
automatically. If only a name is given for a layer
(i.e. "OUTLINE"), it will not match any previously
loaded layer and layer matching goes by layer/datatype
first.
This way, every "reload" added a new "OUTLINE" layer.
2024-10-03 18:50:00 +02:00
Matthias Köfferlein
ff0a2b8ab7
Merge pull request #1850 from KLayout/wip
...
Wip
2024-09-21 20:33:21 +02:00
Matthias Koefferlein
c6b2dba847
Updating tests
2024-09-18 23:53:51 +02:00
Matthias Koefferlein
ca9b1d779d
Print file name before warning from stream readers, compress warnings if necessary, add file name to errors
2024-09-16 23:48:30 +02:00
Matthias Koefferlein
bc78f4a0e9
Added test.
2024-09-01 21:26:44 +02:00
Matthias Koefferlein
7ddc86414d
Trying to fix Windows builds
2024-07-30 07:13:35 +02:00
Matthias Koefferlein
277ab2c335
Refactoring of GDS2 writer - split large functions into smaller ones
2024-07-30 00:13:47 +02:00
Matthias Koefferlein
589a6ce88a
Merge branch 'master' into gds2-writer-overflow-checks
2024-07-29 19:58:47 +02:00
Matthias Koefferlein
b7e2b59852
First implementation of GDS2 coordinate overflow checks.
2024-07-29 19:54:29 +02:00
Matthias Köfferlein
cfa0dacd4f
Merge pull request #1800 from KLayout/bugfix/issue-1799
...
Fixed issue #1799 (Can't set cell properties by script)
2024-07-27 11:48:01 +02:00
Matthias Koefferlein
d6ee473d72
Fixed issue #1799 (Can't set cell properties by script)
2024-07-25 22:36:46 +02:00
Matthias Koefferlein
0dd6fca51e
Implemented a fix for #1794 (giant meta info produces invalid GDS)
...
This fix solves two problems:
* Too large meta info data
* Too many meta info entries
The first problem is fixed by splitting the strings that serialize
the meta info.
The second problem is fixed by introducing prefixed strings that
indicate the attribute index within the string, not inside
the PROPATTR record.
The solution is backward compatible, although old versions will
not read all meta info and skip entries that exceed the GDS
capacity.
Caveat: the produced GDS files may contain duplicate PROPATTR
keys. This is not strictly illegal, but some third-party processors
may drop such entries.
2024-07-20 22:35:54 +02:00
Robert O'Callahan
b2ee4209f8
Remove unused `OASISReaderLayerMapping` friend declaration
2024-07-10 10:27:20 +12:00
Matthias Koefferlein
b32329c920
OASIS reader: avoiding slight rounding of DBU In python read/write cycle (discussion-2526)
2024-06-16 09:29:47 +02:00
Matthias Köfferlein
a494892529
Merge pull request #1718 from KLayout/wip
...
Wip
2024-05-31 22:48:24 +02:00
Matthias Köfferlein
7399244557
Merge pull request #1725 from KLayout/bugfix/issue-1724
...
Fixing issue #1724 (avoid duplicate LEF files)
2024-05-31 13:18:44 +02:00
Matthias Köfferlein
f8d5c1c427
Merge pull request #1713 from KLayout/feature/issue-1701
...
Implementing solution for issue #1701 (Feature request: strm2oas shou…
2024-05-31 13:18:22 +02:00
Matthias Koefferlein
c70e622590
Fixing issue #1724 (avoid duplicate LEF files)
2024-05-30 16:21:52 +02:00
Matthias Koefferlein
81872d41f0
Fixed a problem triggered by the new foreign layout handling
...
Problem was that with forward-referenced text strings
in OASIS, StringRef objects were created (string placeholders).
Those where not properly migrated when transferring the foreign
layouts into DEF space, causing a memory corruption issue.
This solution is to provide a central, singleton string
repository. This needs to be MT safe (reference counting)
which should also fix potential problems when accessing
StringRef-based Text objects from multiple threads.
2024-05-26 01:03:24 +02:00
Matthias Koefferlein
3ca99907de
Improved OASIS-to-OASIS file size by re-introducing sorting of repetition arrays
2024-05-25 14:24:00 +02:00
Matthias Koefferlein
cf8ff2f750
Slight adjustment of wording
2024-05-19 17:35:03 +02:00
Matthias Koefferlein
8422fe8f83
Implementing solution for issue #1701 (Feature request: strm2oas should report input unit differences)
2024-05-18 19:41:43 +02:00
Matthias Koefferlein
51a1a2627f
Fix for issue-1710 (feature request: create separate cell for def FILL)
2024-05-18 18:37:52 +02:00
Matthias Köfferlein
206e271ee3
Merge pull request #1649 from KLayout/wip
...
Wip
2024-03-23 15:45:52 +01:00
Matthias Koefferlein
d906f870b0
Warning level was ignored for some warnings in LEF/DEF reader
2024-03-09 01:22:32 +01:00
Matthias Koefferlein
30df7a708e
Merge branch 'master' into wip
2024-03-09 01:18:43 +01:00
Matthias Koefferlein
c2187e0bf0
OASIS reader creates layers listed in layer map also if empty
2024-02-29 22:31:23 +01:00
Matthias Koefferlein
890b389102
Merge branch 'wip2'
2024-02-18 22:27:17 +01:00
Matthias Koefferlein
4a89304152
Merge branch 'master' into wip2
2024-02-11 14:23:47 +01:00
Matthias Koefferlein
db7b8d19a8
[consider merging] Removed some debug nonsense
2024-02-11 13:05:37 +01:00
Matthias Köfferlein
97c746fbad
Lefdef all should not map boundary ( #1614 )
...
* As suggested by Stefan Thiede: LEF/DEF 'ALL' purpose should not match obs and fill
* Updated unit tests
---------
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:38:53 +01:00
Matthias Köfferlein
09dea68e40
Fixed issue #1592 (DXF reader issue) ( #1595 )
...
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:37:47 +01:00
Matthias Köfferlein
df59641cad
Issue 1609 ( #1613 )
...
* Fixed issue #1609 (Cell.read doesn't read LayoutMetaInfo)
This also includes some more functions:
- Layout#merge_meta_info, Layout#copy_meta_info
- Layout#clear_all_meta_info
- Cell#merge_meta_info, Cell#copy_meta_info
In addition, meta info is merged when importing a layout from
another file (Layout/Import -> Other Layouts into current).
* Meta info support in layout diff (for testing), implemented meta info merge for GDS and OASIS readers with special conflict resolution modes
* Undo support for meta info - this way we do not loose meta info when we delete a cell and undo
---------
Co-authored-by: Matthias Koefferlein <matthias@klayout.de>
2024-02-11 10:32:56 +01:00
Matthias Koefferlein
babf799016
[consider merging] OASIS Reader: error on duplicate CELLNAMEs
2024-02-10 18:45:56 +01:00
Matthias Koefferlein
0ae2ed49f8
Merge branch 'master' into wip
2024-01-06 17:28:51 +01:00
Matthias Koefferlein
38de2d685f
Fixed 64bit coordinate mode: numerical stability for DRC and LVS enabling. Main problem is representation of the 'world' box which does not transform properly when going through double.
2024-01-03 01:57:27 +01:00
Matthias Koefferlein
2b4a583f05
Update copyright year
2024-01-01 17:27:59 +01:00
Matthias Koefferlein
d248bfddf3
Updating copyright to new year
2024-01-01 17:06:23 +01:00
Matthias Koefferlein
c09f84919a
Skip one test if no private test data
2023-12-29 23:21:08 +01:00
Matthias Koefferlein
36f531685c
Fixed a test fail when private test data is not available
2023-12-29 23:18:07 +01:00
Matthias Koefferlein
11fbad0104
eliminating some unnamed arguments
2023-12-28 21:35:14 +01:00
Matthias Köfferlein
3550d81c6f
Merge pull request #1555 from KLayout/issue-1531
...
Fixed issue #1531 (DEF format not recognized in symlink): use origina…
2023-12-08 07:26:07 +01:00
Matthias Koefferlein
1017026362
Implemented a solution for issue #1528 (LEF WIDTHTABLE)
...
The WIDTHTABLE is evaluated for normal and WRONGDIRECTION.
The first value is taken as min width and as default width.
2023-12-02 22:55:51 +01:00
Matthias Koefferlein
caf54bd77b
Fixed issue #1531 (DEF format not recognized in symlink): use original path to determine format
2023-12-02 22:10:31 +01:00
Matthias Koefferlein
a5a7b1d8e4
Merge branch 'wip2' into wip2b
2023-11-11 23:09:10 +01:00
Matthias Köfferlein
5edbc0b03f
Merge pull request #1504 from KLayout/issue-1503
...
Fixed issue #1503 (Import LEF/DEF - LEF files given in list are ignor…
2023-11-07 21:35:49 +01:00
Matthias Köfferlein
42183efb76
Merge pull request #1502 from KLayout/issue-1499
...
Fixed issue #1499 (strm2oas: support LAYER <layername> TYPE OVERLAP ;…
2023-11-07 21:35:34 +01:00
Matthias Koefferlein
d6728afd5c
LEF/DEF - Removing via size from warning message
2023-10-19 22:06:35 +02:00
Matthias Koefferlein
58f609ab0f
LEF/DEF: Removing VIA size tagging of upper and lower metals of vias in map file
2023-10-19 22:02:22 +02:00
Matthias Koefferlein
ac4b02c53a
Fixed interpretation of TYPE OVERLAP, added test
2023-10-17 20:49:37 +02:00
Matthias Koefferlein
7560201dc5
Fixed issue #1503 (Import LEF/DEF - LEF files given in list are ignored for DEF import)
2023-10-06 23:38:04 +02:00
Matthias Koefferlein
c62480c49b
Fixed issue #1499 (strm2oas: support LAYER <layername> TYPE OVERLAP ; for L-shaped abstracts)
2023-10-06 11:41:16 +02:00
Matthias Koefferlein
53d1491cf1
Fixed issue #1482 (strict mode oasis should write the S_CELL_OFFSET into the CELLNAME table)
2023-10-06 10:54:55 +02:00
Matthias Köfferlein
3dff137e9f
Merge pull request #1480 from KLayout/issue-1307
...
Issue 1307
2023-09-12 07:22:51 +02:00
Matthias Köfferlein
70dcef25ce
Merge pull request #1476 from KLayout/issue-1474
...
Fixing issue-1474 (throw a FATAL ERROR when multiple cellname have th…
2023-09-12 07:22:37 +02:00
Matthias Koefferlein
ddfa64c517
Warnings fixed
2023-09-12 00:02:51 +02:00
Matthias Koefferlein
3870a02a98
Less verbose warnings on joined paths
2023-09-11 23:34:52 +02:00
Matthias Koefferlein
1e65abb7bf
Fixed issue-1307 (partial, UNPLACED component placements render placement if they come with point and orientation)
2023-09-11 21:39:06 +02:00
Matthias Koefferlein
8d2d5bcf47
Fixed more weird paths in issue-1472
2023-09-11 21:16:36 +02:00
Matthias Koefferlein
e9429320bb
Merge branch 'issue-1472' into wip2
2023-09-11 20:24:15 +02:00
Matthias Koefferlein
50c0ec2738
New test data for LEFDEF parser
2023-09-11 20:08:39 +02:00
Matthias Koefferlein
5c0f810006
Also fixed issue #1470 (def pinname VDD.extra1 should be written as VDD TEXT in gds/oasis)
2023-09-10 23:42:30 +02:00
Matthias Koefferlein
d52087fab4
Also fix issue-1471 (lef: make warning about 'FOREIGN differs from MACRO name' more informative)
2023-09-10 23:42:26 +02:00
Matthias Koefferlein
e2fa88fcfb
Progress for CIF reader, avoid duplicate sorting
2023-09-10 16:49:06 +02:00
Matthias Koefferlein
8adc14d22b
Fixing issue-1474 (throw a FATAL ERROR when multiple cellname have the same refnum)
2023-09-09 22:13:05 +02:00
Matthias Koefferlein
8e42c7b4e9
Fixed issue-1472 (strm2oas: def path with first/last segment length < halfwidth are read wrong)
2023-09-09 21:28:46 +02:00