mirror of
https://github.com/KLayout/klayout.git
synced 2026-09-01 10:27:53 +02:00
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.
This commit is contained in:
Vendored
+4
-4
@@ -5,6 +5,10 @@ report_lvs($lvs_test_target_lvsdb, true)
|
||||
|
||||
target_netlist($lvs_test_target_cir, write_spice, "Extracted by KLayout")
|
||||
|
||||
# both INVX1 and INVX1B are the same schematic cell
|
||||
same_circuits("INVX1", "INVX1")
|
||||
same_circuits("INVX1B", "INVX1")
|
||||
|
||||
schematic("ringo.cir")
|
||||
|
||||
deep
|
||||
@@ -70,9 +74,5 @@ connect_global(ptie, "SUBSTRATE")
|
||||
|
||||
netlist.simplify
|
||||
|
||||
# both INVX1 and INVX1B are the same schematic cell
|
||||
same_circuits("INVX1", "INVX1")
|
||||
same_circuits("INVX1B", "INVX1")
|
||||
|
||||
compare
|
||||
|
||||
|
||||
@@ -7,6 +7,9 @@ target_netlist($lvs_test_target_cir, write_spice, "Extracted by KLayout")
|
||||
|
||||
schematic("ringo.cir")
|
||||
|
||||
# preempt configuration (see below)
|
||||
same_nets("top", "ENABLE", "RINGO", "ENABLE")
|
||||
|
||||
deep
|
||||
|
||||
# Drawing layers
|
||||
@@ -71,7 +74,6 @@ connect_global(ptie, "SUBSTRATE")
|
||||
same_circuits("top", "RINGO")
|
||||
same_circuits("INV", "INVX1")
|
||||
same_circuits("DOESNOTEXIST", "DOESNOTEXIST2")
|
||||
same_nets("top", "ENABLE", "RINGO", "ENABLE")
|
||||
same_nets("DOESNOTEXIST", "ENABLE", "DOESNOTEXIST2", "ENABLE")
|
||||
|
||||
netlist.simplify
|
||||
|
||||
+3
-1
@@ -7,6 +7,9 @@ target_netlist($lvs_test_target_cir, write_spice, "Extracted by KLayout")
|
||||
|
||||
schematic("ringo_pin_swapping.cir")
|
||||
|
||||
# preempt configuration
|
||||
equivalent_pins("ND2X1", 4, 5)
|
||||
|
||||
deep
|
||||
|
||||
# Drawing layers
|
||||
@@ -68,7 +71,6 @@ connect_global(ptie, "SUBSTRATE")
|
||||
|
||||
# Compare section
|
||||
|
||||
equivalent_pins("ND2X1", 4, 5)
|
||||
equivalent_pins("DOESNOTEXIST", 4, 5)
|
||||
|
||||
netlist.simplify
|
||||
|
||||
+3
-1
@@ -8,6 +8,9 @@ target_netlist($lvs_test_target_cir, writer, "Extracted by KLayout")
|
||||
|
||||
schematic("ringo.cir")
|
||||
|
||||
# preempt configuration
|
||||
same_device_classes("PM", "PMOS")
|
||||
|
||||
deep
|
||||
|
||||
# Drawing layers
|
||||
@@ -90,7 +93,6 @@ connect_global(ptie, "SUBSTRATE")
|
||||
|
||||
netlist.simplify
|
||||
|
||||
same_device_classes("PM", "PMOS")
|
||||
same_device_classes("NM", "NMOS")
|
||||
same_device_classes("PMHV", "PMOSHV")
|
||||
same_device_classes("NMHV", "NMOSHV")
|
||||
|
||||
Reference in New Issue
Block a user