From 03dacbd2f51076864d168444b0b6258f275f7fa8 Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Fri, 26 Jun 2020 17:43:51 +0200 Subject: [PATCH] Updated testdata --- testdata/algo/lvs_test2_au.lvsdb.1 | 47 +- testdata/algo/lvs_test2_au.lvsdb.2 | 682 ----------------------------- testdata/ruby/dbNetlistCompare.rb | 4 +- 3 files changed, 21 insertions(+), 712 deletions(-) delete mode 100644 testdata/algo/lvs_test2_au.lvsdb.2 diff --git a/testdata/algo/lvs_test2_au.lvsdb.1 b/testdata/algo/lvs_test2_au.lvsdb.1 index 017e27c7e..52e53e669 100644 --- a/testdata/algo/lvs_test2_au.lvsdb.1 +++ b/testdata/algo/lvs_test2_au.lvsdb.1 @@ -628,55 +628,46 @@ xref( xref( net(2 2 mismatch) net(3 3 mismatch) - net(5 4 match) - net(4 5 mismatch) + net(4 4 mismatch) + net(5 5 mismatch) net(6 6 match) net(7 7 mismatch) net(1 1 mismatch) pin(1 1 match) pin(2 2 match) - pin(4 3 match) - pin(3 4 match) + pin(3 3 match) + pin(4 4 match) pin(5 5 match) pin(6 6 match) pin(0 0 match) - circuit(2 () mismatch) - circuit(1 1 mismatch) + circuit(1 () mismatch) + circuit(2 1 match) ) ) circuit(RINGO RINGO nomatch xref( - net(() 7 mismatch) - net(() 9 mismatch) - net(() 11 mismatch) - net(() 6 mismatch) - net(() 8 mismatch) - net(5 () mismatch) - net(6 () mismatch) - net(7 () mismatch) - net(9 () mismatch) - net(11 () mismatch) - net(12 () mismatch) - net(10 1 mismatch) - net(8 10 mismatch) - net(1 5 mismatch) + net(8 () mismatch) + net(7 7 match) + net(6 9 match) + net(5 11 match) + net(9 6 match) + net(10 5 match) + net(11 10 match) + net(12 8 match) + net(1 1 mismatch) net(2 2 match) net(3 3 match) net(4 4 match) - pin(() 0 match) - pin(0 () match) + pin(0 0 match) pin(1 1 match) pin(2 2 match) pin(3 3 match) circuit(() 2 mismatch) - circuit(() 3 mismatch) - circuit(() 4 mismatch) - circuit(() 5 mismatch) circuit(2 () mismatch) - circuit(3 () mismatch) - circuit(4 () mismatch) - circuit(5 () mismatch) circuit(1 1 match) + circuit(3 3 match) + circuit(4 4 match) + circuit(5 5 match) ) ) ) diff --git a/testdata/algo/lvs_test2_au.lvsdb.2 b/testdata/algo/lvs_test2_au.lvsdb.2 deleted file mode 100644 index 3719b24c1..000000000 --- a/testdata/algo/lvs_test2_au.lvsdb.2 +++ /dev/null @@ -1,682 +0,0 @@ -#%lvsdb-klayout - -# Layout -layout( - top(RINGO) - unit(0.001) - - # Layer section - # This section lists the mask layers (drawing or derived) and their connections. - - # Mask layers - layer(bulk '1/0') - layer(nwell '1/0') - layer(poly '3/0') - layer(poly_lbl '3/1') - layer(diff_cont '4/0') - layer(poly_cont '5/0') - layer(metal1 '6/0') - layer(metal1_lbl '6/1') - layer(via1 '7/0') - layer(metal2 '8/0') - layer(metal2_lbl '8/1') - layer(ntie) - layer(psd) - layer(ptie) - layer(nsd) - - # Mask layer connectivity - connect(nwell nwell ntie) - connect(poly poly poly_lbl poly_cont) - connect(poly_lbl poly) - connect(diff_cont diff_cont metal1 ntie psd ptie nsd) - connect(poly_cont poly poly_cont metal1) - connect(metal1 diff_cont poly_cont metal1 metal1_lbl via1) - connect(metal1_lbl metal1) - connect(via1 metal1 via1 metal2) - connect(metal2 via1 metal2 metal2_lbl) - connect(metal2_lbl metal2) - connect(ntie nwell diff_cont ntie) - connect(psd diff_cont psd) - connect(ptie diff_cont ptie) - connect(nsd diff_cont nsd) - - # Global nets and connectivity - global(bulk BULK) - global(ptie BULK) - - # Device class section - class(PMOS MOS4) - class(NMOS MOS4) - - # Device abstracts section - # Device abstracts list the pin shapes of the devices. - device(D$PMOS PMOS - terminal(S - rect(psd (-650 -875) (525 1750)) - ) - terminal(G - rect(poly (-125 -875) (250 1750)) - ) - terminal(D - rect(psd (125 -875) (550 1750)) - ) - terminal(B - rect(nwell (-125 -875) (250 1750)) - ) - ) - device(D$PMOS$1 PMOS - terminal(S - rect(psd (-675 -875) (550 1750)) - ) - terminal(G - rect(poly (-125 -875) (250 1750)) - ) - terminal(D - rect(psd (125 -875) (525 1750)) - ) - terminal(B - rect(nwell (-125 -875) (250 1750)) - ) - ) - device(D$NMOS NMOS - terminal(S - rect(nsd (-650 -875) (525 1750)) - ) - terminal(G - rect(poly (-125 -875) (250 1750)) - ) - terminal(D - rect(nsd (125 -875) (550 1750)) - ) - terminal(B - rect(bulk (-125 -875) (250 1750)) - ) - ) - device(D$NMOS$1 NMOS - terminal(S - rect(nsd (-675 -875) (550 1750)) - ) - terminal(G - rect(poly (-125 -875) (250 1750)) - ) - terminal(D - rect(nsd (125 -875) (525 1750)) - ) - terminal(B - rect(bulk (-125 -875) (250 1750)) - ) - ) - - # Circuit section - # Circuits are the hierarchical building blocks of the netlist. - circuit(INV2 - - # Circuit boundary - rect((-1700 -2440) (3100 7820)) - - # Nets with their geometries - net(1 - rect(nwell (-1400 1800) (2800 3580)) - rect(diff_cont (-1510 -650) (220 220)) - rect(ntie (-510 -450) (800 680)) - ) - net(2 name(IN) - rect(poly (-525 -250) (250 2500)) - rect(poly (-1425 -630) (2100 360)) - rect(poly (-125 -2230) (250 2500)) - rect(poly (-1050 -3850) (250 2400)) - rect(poly (550 1200) (250 2400)) - rect(poly (-250 -6000) (250 2400)) - rect(poly (-1050 1200) (250 2400)) - rect(poly_lbl (-526 -2601) (2 2)) - rect(poly_cont (-831 -111) (220 220)) - ) - net(3 name(OUT) - rect(diff_cont (-910 90) (220 220)) - rect(diff_cont (-220 -620) (220 220)) - rect(diff_cont (-220 -620) (220 220)) - rect(diff_cont (-220 -620) (220 220)) - rect(diff_cont (1380 3380) (220 220)) - rect(diff_cont (-220 180) (220 220)) - rect(diff_cont (-220 180) (220 220)) - rect(diff_cont (-220 180) (220 220)) - rect(diff_cont (-220 -3820) (220 220)) - rect(diff_cont (-220 -620) (220 220)) - rect(diff_cont (-220 -620) (220 220)) - rect(diff_cont (-220 -620) (220 220)) - rect(diff_cont (-1820 3380) (220 220)) - rect(diff_cont (-220 180) (220 220)) - rect(diff_cont (-220 180) (220 220)) - rect(diff_cont (-220 180) (220 220)) - rect(metal1 (1310 -3710) (360 2220)) - rect(metal1 (-1900 -800) (2220 360)) - rect(metal1 (-2280 -2400) (360 2840)) - rect(metal1 (-360 -3600) (360 1560)) - rect(metal1 (1240 2040) (360 1560)) - rect(metal1 (-360 -5160) (360 1560)) - rect(metal1 (-1960 2040) (360 1560)) - rect(metal1_lbl (1419 -2181) (2 2)) - rect(psd (-1851 524) (525 1750)) - rect(psd (1050 -1750) (525 1750)) - rect(nsd (-2100 -5350) (525 1750)) - rect(nsd (1050 -1750) (525 1750)) - ) - net(4 name(VSS) - rect(diff_cont (-110 90) (220 220)) - rect(diff_cont (-220 -620) (220 220)) - rect(diff_cont (-220 -620) (220 220)) - rect(diff_cont (-220 -620) (220 220)) - rect(diff_cont (-220 980) (220 220)) - rect(diff_cont (-220 -620) (220 220)) - rect(diff_cont (-220 -620) (220 220)) - rect(diff_cont (-220 -620) (220 220)) - rect(metal1 (-290 -290) (360 1560)) - rect(metal1 (-360 -1560) (360 1560)) - rect(via1 (-305 -705) (250 250)) - rect(via1 (-250 150) (250 250)) - rect(via1 (-250 -1450) (250 250)) - rect(via1 (-250 150) (250 250)) - rect(metal2 (-1525 -775) (2800 1700)) - rect(metal2_lbl (-161 -541) (2 2)) - rect(nsd (-1516 -1186) (550 1750)) - ) - net(5 name(VDD) - rect(diff_cont (-110 2490) (220 220)) - rect(diff_cont (-220 180) (220 220)) - rect(diff_cont (-220 180) (220 220)) - rect(diff_cont (-220 180) (220 220)) - rect(diff_cont (-220 -1420) (220 220)) - rect(diff_cont (-220 180) (220 220)) - rect(diff_cont (-220 180) (220 220)) - rect(diff_cont (-220 180) (220 220)) - rect(metal1 (-290 -1490) (360 1560)) - rect(metal1 (-360 -1560) (360 1560)) - rect(via1 (-305 -1505) (250 250)) - rect(via1 (-250 150) (250 250)) - rect(via1 (-250 150) (250 250)) - rect(via1 (-250 150) (250 250)) - rect(metal2 (-1525 -1575) (2800 1700)) - rect(metal2_lbl (-151 -1251) (2 2)) - rect(psd (-1526 -476) (550 1750)) - ) - net(6 name(BULK) - rect(diff_cont (-110 -2160) (220 220)) - rect(ptie (-510 -450) (800 680)) - ) - - # Outgoing pins and their connections to nets - pin(1) - pin(2 name(IN)) - pin(3 name(OUT)) - pin(4 name(VSS)) - pin(5 name(VDD)) - pin(6 name(BULK)) - - # Devices and their connections - device(1 D$PMOS - device(D$PMOS$1 location(800 0)) - connect(0 S S) - connect(1 S D) - connect(0 G G) - connect(1 G G) - connect(0 D D) - connect(1 D S) - connect(0 B B) - connect(1 B B) - location(-400 3200) - param(L 0.25) - param(W 3.5) - param(AS 1.4) - param(AD 1.4) - param(PS 6.85) - param(PD 6.85) - terminal(S 3) - terminal(G 2) - terminal(D 5) - terminal(B 1) - ) - device(3 D$NMOS - device(D$NMOS$1 location(800 0)) - connect(0 S S) - connect(1 S D) - connect(0 G G) - connect(1 G G) - connect(0 D D) - connect(1 D S) - connect(0 B B) - connect(1 B B) - location(-400 -400) - param(L 0.25) - param(W 3.5) - param(AS 1.4) - param(AD 1.4) - param(PS 6.85) - param(PD 6.85) - terminal(S 3) - terminal(G 2) - terminal(D 4) - terminal(B 6) - ) - - ) - circuit(INV2PAIR - - # Circuit boundary - rect((0 -1640) (5740 7820)) - - # Nets with their geometries - net(1 name(BULK)) - net(2) - net(3) - net(4) - net(5) - net(6) - net(7) - - # Outgoing pins and their connections to nets - pin(1 name(BULK)) - pin(2) - pin(3) - pin(4) - pin(5) - pin(6) - pin(7) - - # Subcircuits and their connections - circuit(1 INV2 location(1700 800) - pin(0 7) - pin(1 5) - pin(2 4) - pin(3 3) - pin(4 2) - pin(5 1) - ) - circuit(2 INV2 location(4340 800) - pin(0 7) - pin(1 4) - pin(2 6) - pin(3 3) - pin(4 2) - pin(5 1) - ) - - ) - circuit(RINGO - - # Circuit boundary - rect((-1720 -2440) (26880 7820)) - - # Nets with their geometries - net(1 name(FB) - rect(metal1 (-1700 1620) (360 360)) - rect(via1 (-305 -305) (250 250)) - rect(via1 (23190 -250) (250 250)) - rect(metal2 (-23765 -325) (23840 400)) - rect(metal2_lbl (-22121 -201) (2 2)) - ) - net(2 name(OSC) - rect(via1 (24435 1675) (250 250)) - rect(metal2 (-325 -325) (400 400)) - rect(metal2_lbl (-201 -201) (2 2)) - ) - net(3 name(VDD) - rect(metal1 (-180 3900) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal2_lbl (-23941 -2221) (2 2)) - ) - net(4 name(VSS) - rect(metal1 (-180 -2220) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal1 (2280 -1120) (360 1120)) - rect(metal2_lbl (-23941 1099) (2 2)) - ) - net(5) - net(6) - net(7) - net(8) - net(9) - net(10) - net(11) - net(12) - - # Outgoing pins and their connections to nets - pin(1 name(FB)) - pin(2 name(OSC)) - pin(3 name(VDD)) - pin(4 name(VSS)) - - # Subcircuits and their connections - circuit(1 INV2PAIR location(19420 -800) - pin(0 4) - pin(1 3) - pin(2 4) - pin(3 1) - pin(4 10) - pin(5 2) - pin(6 3) - ) - circuit(2 INV2PAIR location(-1700 -800) - pin(0 4) - pin(1 3) - pin(2 4) - pin(3 8) - pin(4 1) - pin(5 9) - pin(6 3) - ) - circuit(3 INV2PAIR location(3580 -800) - pin(0 4) - pin(1 3) - pin(2 4) - pin(3 7) - pin(4 9) - pin(5 12) - pin(6 3) - ) - circuit(4 INV2PAIR location(8860 -800) - pin(0 4) - pin(1 3) - pin(2 4) - pin(3 6) - pin(4 12) - pin(5 11) - pin(6 3) - ) - circuit(5 INV2PAIR location(14140 -800) - pin(0 4) - pin(1 3) - pin(2 4) - pin(3 5) - pin(4 11) - pin(5 10) - pin(6 3) - ) - - ) -) - -# Reference netlist -reference( - - # Device class section - class(PMOS MOS4) - class(NMOS MOS4) - - # Circuit section - # Circuits are the hierarchical building blocks of the netlist. - circuit(INV2 - - # Nets - net(1 name('1')) - net(2 name('2')) - net(3 name('3')) - net(4 name('4')) - net(5 name('5')) - net(6 name('6')) - - # Outgoing pins and their connections to nets - pin(1 name('1')) - pin(2 name('2')) - pin(3 name('3')) - pin(4 name('4')) - pin(5 name('5')) - pin(6 name('6')) - - # Devices and their connections - device(1 PMOS - name($1) - param(L 0.25) - param(W 3.5) - param(AS 1.4) - param(AD 1.4) - param(PS 6.85) - param(PD 6.85) - terminal(S 3) - terminal(G 2) - terminal(D 5) - terminal(B 1) - ) - device(2 NMOS - name($3) - param(L 0.25) - param(W 3.5) - param(AS 1.4) - param(AD 1.4) - param(PS 6.85) - param(PD 6.85) - terminal(S 3) - terminal(G 2) - terminal(D 4) - terminal(B 6) - ) - - ) - circuit(INV2PAIR - - # Nets - net(1 name('1')) - net(2 name('2')) - net(3 name('3')) - net(4 name('4')) - net(5 name('5')) - net(6 name('6')) - net(7 name('7')) - - # Outgoing pins and their connections to nets - pin(1 name('1')) - pin(2 name('2')) - pin(3 name('3')) - pin(4 name('4')) - pin(5 name('5')) - pin(6 name('6')) - pin(7 name('7')) - - # Subcircuits and their connections - circuit(1 INV2 name($2) - pin(0 7) - pin(1 4) - pin(2 6) - pin(3 3) - pin(4 2) - pin(5 1) - ) - - ) - circuit(RINGO - - # Nets - net(1 name('1')) - net(2 name('2')) - net(3 name('3')) - net(4 name('4')) - net(5 name('6')) - net(6 name('5')) - net(7 name('101')) - net(8 name('8')) - net(9 name('102')) - net(10 name('7')) - net(11 name('103')) - - # Outgoing pins and their connections to nets - pin(1 name('1')) - pin(2 name('2')) - pin(3 name('3')) - pin(4 name('4')) - - # Subcircuits and their connections - circuit(1 INV2PAIR name($1) - pin(0 4) - pin(1 3) - pin(2 4) - pin(3 1) - pin(4 5) - pin(5 2) - pin(6 3) - ) - circuit(2 INV2PAIR name($2) - pin(0 4) - pin(1 3) - pin(2 4) - pin(3 1) - pin(4 1) - pin(5 6) - pin(6 3) - ) - circuit(3 INV2PAIR name($3) - pin(0 4) - pin(1 3) - pin(2 4) - pin(3 7) - pin(4 6) - pin(5 8) - pin(6 3) - ) - circuit(4 INV2PAIR name($4) - pin(0 4) - pin(1 3) - pin(2 4) - pin(3 9) - pin(4 8) - pin(5 10) - pin(6 3) - ) - circuit(5 INV2PAIR name($5) - pin(0 4) - pin(1 3) - pin(2 4) - pin(3 11) - pin(4 10) - pin(5 5) - pin(6 3) - ) - - ) - circuit(INV2PAIRX - - # Nets - net(1 name('1')) - net(2 name('2')) - net(3 name('3')) - net(4 name('4')) - net(5 name('5')) - net(6 name('6')) - net(7 name('7')) - - # Outgoing pins and their connections to nets - pin(1 name('1')) - pin(2 name('2')) - pin(3 name('3')) - pin(4 name('4')) - pin(5 name('5')) - pin(6 name('6')) - pin(7 name('7')) - - # Subcircuits and their connections - circuit(1 INV2 name($2) - pin(0 7) - pin(1 4) - pin(2 6) - pin(3 3) - pin(4 2) - pin(5 1) - ) - - ) -) - -# Cross reference -xref( - circuit(() INV2PAIRX mismatch - xref( - ) - ) - circuit(INV2 INV2 match - xref( - net(1 1 match) - net(6 6 match) - net(2 2 match) - net(3 3 match) - net(5 5 match) - net(4 4 match) - pin(0 0 match) - pin(5 5 match) - pin(1 1 match) - pin(2 2 match) - pin(4 4 match) - pin(3 3 match) - device(3 2 match) - device(1 1 match) - ) - ) - circuit(INV2PAIR INV2PAIR nomatch - xref( - net(2 2 mismatch) - net(3 3 mismatch) - net(5 4 match) - net(4 5 mismatch) - net(6 6 match) - net(7 7 mismatch) - net(1 1 mismatch) - pin(1 1 match) - pin(2 2 match) - pin(4 3 match) - pin(3 4 match) - pin(5 5 match) - pin(6 6 match) - pin(0 0 match) - circuit(2 () mismatch) - circuit(1 1 mismatch) - ) - ) - circuit(RINGO RINGO nomatch - xref( - net(() 7 mismatch) - net(() 9 mismatch) - net(() 11 mismatch) - net(() 6 mismatch) - net(() 8 mismatch) - net(5 () mismatch) - net(6 () mismatch) - net(7 () mismatch) - net(9 () mismatch) - net(11 () mismatch) - net(12 () mismatch) - net(10 1 mismatch) - net(8 10 mismatch) - net(1 5 mismatch) - net(2 2 match) - net(3 3 match) - net(4 4 match) - pin(() 0 match) - pin(0 () match) - pin(1 1 match) - pin(2 2 match) - pin(3 3 match) - circuit(() 2 mismatch) - circuit(() 3 mismatch) - circuit(() 4 mismatch) - circuit(() 5 mismatch) - circuit(2 () mismatch) - circuit(3 () mismatch) - circuit(4 () mismatch) - circuit(5 () mismatch) - circuit(1 1 match) - ) - ) -) diff --git a/testdata/ruby/dbNetlistCompare.rb b/testdata/ruby/dbNetlistCompare.rb index 7eb87c8e3..e95a62a07 100644 --- a/testdata/ruby/dbNetlistCompare.rb +++ b/testdata/ruby/dbNetlistCompare.rb @@ -645,8 +645,8 @@ END begin_circuit BUF BUF match_nets INT $10 match_nets IN IN -net_mismatch OUT OUT net_mismatch INT2 $11 +net_mismatch OUT OUT match_pins $0 $1 match_pins $1 $3 match_pins $2 $0 @@ -715,8 +715,8 @@ END begin_circuit BUF BUF net_mismatch INT $10 match_nets IN IN -match_nets OUT OUT net_mismatch INT2 $11 +match_nets OUT OUT match_pins $0 $1 match_pins $1 $3 match_pins $2 $0