master
Bill Flynn 1 year ago committed by GitHub
parent 2655d4db36
commit 14ab45a97f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -0,0 +1,76 @@

Circuit 1 cell sky130_fd_pr__nfet_01v8 and Circuit 2 cell sky130_fd_pr__nfet_01v8 are black boxes.
Warning: Equate pins: cell sky130_fd_pr__nfet_01v8 is a placeholder, treated as a black box.
Warning: Equate pins: cell sky130_fd_pr__nfet_01v8 is a placeholder, treated as a black box.

Subcircuit pins:
Circuit 1: sky130_fd_pr__nfet_01v8 |Circuit 2: sky130_fd_pr__nfet_01v8
-------------------------------------------|-------------------------------------------
1 |1
2 |2
3 |3
4 |4
---------------------------------------------------------------------------------------
Cell pin lists are equivalent.
Device classes sky130_fd_pr__nfet_01v8 and sky130_fd_pr__nfet_01v8 are equivalent.

Circuit 1 cell sky130_fd_pr__pfet_01v8 and Circuit 2 cell sky130_fd_pr__pfet_01v8 are black boxes.
Warning: Equate pins: cell sky130_fd_pr__pfet_01v8 is a placeholder, treated as a black box.
Warning: Equate pins: cell sky130_fd_pr__pfet_01v8 is a placeholder, treated as a black box.

Subcircuit pins:
Circuit 1: sky130_fd_pr__pfet_01v8 |Circuit 2: sky130_fd_pr__pfet_01v8
-------------------------------------------|-------------------------------------------
1 |1
2 |2
3 |3
4 |4
---------------------------------------------------------------------------------------
Cell pin lists are equivalent.
Device classes sky130_fd_pr__pfet_01v8 and sky130_fd_pr__pfet_01v8 are equivalent.
Flattening unmatched subcell INVX1 in circuit 10T_toy_xschem (1)(2 instances)

Subcircuit summary:
Circuit 1: toysram_bit |Circuit 2: 10T_toy_xschem
-------------------------------------------|-------------------------------------------
sky130_fd_pr__nfet_01v8 (8) |sky130_fd_pr__nfet_01v8 (8)
sky130_fd_pr__pfet_01v8 (2) |sky130_fd_pr__pfet_01v8 (2)
Number of devices: 10 |Number of devices: 10
Number of nets: 15 **Mismatch** |Number of nets: 13 **Mismatch**
---------------------------------------------------------------------------------------
NET mismatches: Class fragments follow (with fanout counts):
Circuit 1: toysram_bit |Circuit 2: 10T_toy_xschem

---------------------------------------------------------------------------------------
Net: VDD |Net: GND
sky130_fd_pr__pfet_01v8/(1|3) = 2 | sky130_fd_pr__nfet_01v8/(1|3) = 4
| sky130_fd_pr__nfet_01v8/4 = 8
|
Net: w_210_89# |(no matching net)
sky130_fd_pr__pfet_01v8/4 = 2 |
|
Net: VSUBS |(no matching net)
sky130_fd_pr__nfet_01v8/4 = 8 |
---------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------
Net: WWL |Net: WWL
sky130_fd_pr__nfet_01v8/2 = 2 | sky130_fd_pr__nfet_01v8/2 = 2
---------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------
Net: GND |Net: VDD
sky130_fd_pr__nfet_01v8/(1|3) = 4 | sky130_fd_pr__pfet_01v8/(1|3) = 2
| sky130_fd_pr__pfet_01v8/4 = 2
---------------------------------------------------------------------------------------
Netlists do not match.

Subcircuit pins:
Circuit 1: toysram_bit |Circuit 2: 10T_toy_xschem
-------------------------------------------|-------------------------------------------
VDD |(no matching pin)
WWL |WWL
Cell pin lists are equivalent.
Device classes toysram_bit and 10T_toy_xschem are equivalent.

Final result: Netlists do not match.

@ -1 +1,17 @@
# gdsfactory cell

```
# gen toysram_bit.gds
bit_v0.02.py 4.75,2.5
# extract
magic -dnull -noconsole -rcfile magic_extract_bit.tcl toysram_bit.gds
# irsim
magic -rcfile magic_irsim_bit.tcl toysram_bit.gds&
# lvs
netgen -batch lvs "toysram_bit.spice toysram_bit" "../xschem/10T_toy_xschem.spice 10T_toy_xschem" sky130A_setup.tcl netgen.log
# lef
magic -rcfile magic.tcl toysram_bit.gds
# console
select
lef write
```

@ -0,0 +1,111 @@
timestamp 1400616048
version 8.3
tech sky130A
style ngspice()
scale 1000 1 500000
resistclasses 4400000 2200000 950000 3050000 120000 197000 114000 191000 120000 197000 114000 191000 48200 319800 2000000 48200 48200 12800 125 125 47 47 29 5
parameters sky130_fd_pr__nfet_01v8 l=l w=w a1=as p1=ps a2=ad p2=pd
parameters sky130_fd_pr__pfet_01v8 l=l w=w a1=as p1=ps a2=ad p2=pd
port "RBL1" 10 718 29 752 63 m1
port "RBL1" 10 644 12 644 12 m1
port "WBLb" 8 480 29 514 63 m1
port "WBLb" 8 364 12 364 12 m1
port "RWL1" 14 899 80 933 114 m2
port "GND" 5 718 241 752 275 m1
port "GND" 5 420 224 420 224 m1
port "VDD" 6 277 241 311 275 m1
port "VDD" 6 210 224 210 224 m1
port "inv1_q" 7 126 178 126 178 li
port "inv2_q" 4 196 336 196 336 li
port "RWL0" 12 899 396 933 430 m2
port "RBL0" 9 718 449 752 483 m1
port "RBL0" 9 644 432 644 432 m1
port "WWL" 2 39 405 73 439 m2
port "WWL" 2 0 388 0 388 m2
port "WBL" 3 480 449 514 483 m1
port "WBL" 3 392 432 392 432 m1
node "RBL1" 212 80.6165 644 12 m1 0 0 0 0 0 0 0 0 9576 404 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4624 272 12376 500 0 0 0 0 0 0 0 0 0 0
node "WBLb" 160 94.0802 364 12 m1 0 0 0 0 0 0 0 0 7840 356 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4624 272 13328 528 0 0 0 0 0 0 0 0 0 0
node "RWL1" 482 253.755 899 80 m2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11704 744 0 0 4624 272 4624 272 4624 272 0 0 0 0 0 0 0 0
node "a_672_110#" 180 0 672 110 ndif 0 0 0 0 0 0 0 0 10584 420 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
node "GND" 838 105.064 420 224 m1 0 0 0 0 0 0 0 0 15232 720 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9248 544 36040 1196 0 0 0 0 0 0 0 0 0 0
node "VDD" 256 68.4255 210 224 m1 0 0 0 0 0 0 0 0 0 0 5712 304 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4624 272 11424 472 0 0 0 0 0 0 0 0 0 0
node "a_672_322#" 204 0 672 322 ndif 0 0 0 0 0 0 0 0 9324 400 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
node "inv1_q" 1773 355.959 126 178 li 0 0 0 0 0 0 0 0 8232 364 5460 298 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 24544 1600 0 0 22202 1306 0 0 0 0 0 0 0 0 0 0 0 0
node "inv2_q" 1738 325.188 196 336 li 0 0 0 0 0 0 0 0 7252 344 4956 286 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 23104 1504 0 0 21998 1294 0 0 0 0 0 0 0 0 0 0 0 0
node "RWL0" 482 253.271 899 396 m2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11704 744 0 0 4624 272 4624 272 4624 272 0 0 0 0 0 0 0 0
node "RBL0" 207 81.5513 644 432 m1 0 0 0 0 0 0 0 0 9828 408 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4624 272 12376 500 0 0 0 0 0 0 0 0 0 0
node "WWL" 1908 793.37 0 388 m2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 38168 2472 0 0 9248 544 9248 544 28560 976 0 0 0 0 0 0 0 0
node "WBL" 172 80.8495 392 432 m1 0 0 0 0 0 0 0 0 7252 344 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4624 272 11424 472 0 0 0 0 0 0 0 0 0 0
node "w_210_89#" 1877 167.328 210 89 nw 0 0 0 0 55776 1000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
substrate "VSUBS" 0 0 -1073741817 -1073741817 space 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
cap "inv1_q" "inv2_q" 221.335
cap "WWL" "inv2_q" 79.058
cap "WBL" "RBL0" 44.376
cap "GND" "RWL0" 41.2944
cap "w_210_89#" "RWL1" 0.971508
cap "GND" "a_672_110#" 8.401
cap "WBL" "WBLb" 2.93523
cap "w_210_89#" "WBLb" 0.225462
cap "WBL" "inv2_q" 46.3334
cap "RBL1" "RWL1" 26.7591
cap "w_210_89#" "inv2_q" 8.19793
cap "WWL" "inv1_q" 127.945
cap "WBLb" "RBL1" 44.376
cap "RBL1" "inv2_q" 4.29366
cap "GND" "RBL0" 62.0595
cap "GND" "RWL1" 38.7343
cap "RBL0" "RWL0" 25.2366
cap "WBL" "inv1_q" 2.75156
cap "WBL" "WWL" 13.6507
cap "w_210_89#" "inv1_q" 10.2724
cap "w_210_89#" "WWL" 5.18244
cap "VDD" "WBLb" 3.5875
cap "GND" "a_672_322#" 7.50024
cap "RWL0" "RWL1" 26.5072
cap "VDD" "inv2_q" 66.914
cap "GND" "WBLb" 35.875
cap "GND" "inv2_q" 174.281
cap "a_672_110#" "RWL1" 2.86675
cap "RWL0" "a_672_322#" 2.3207
cap "RWL0" "inv2_q" 0.89096
cap "a_672_110#" "inv2_q" 1.35302
cap "VDD" "inv1_q" 90.953
cap "WWL" "VDD" 14.2876
cap "GND" "WWL" 6.61657
cap "GND" "inv1_q" 70.5352
cap "RBL0" "a_672_322#" 7.39242
cap "RWL0" "inv1_q" 11.9459
cap "WWL" "RWL0" 20.1387
cap "RBL0" "inv2_q" 0.0710157
cap "a_672_110#" "inv1_q" 1.58011
cap "WWL" "a_672_110#" 1.62773
cap "WBLb" "RWL1" 0.479925
cap "inv2_q" "RWL1" 10.8463
cap "w_210_89#" "VDD" 9.687
cap "GND" "WBL" 37.1236
cap "GND" "w_210_89#" 1.18526
cap "a_672_322#" "inv2_q" 3.30277
cap "WBLb" "inv2_q" 3.32737
cap "WBL" "RWL0" 0.660698
cap "w_210_89#" "RWL0" 0.777264
cap "GND" "RBL1" 59.8597
cap "RBL0" "inv1_q" 4.09569
cap "WWL" "RBL0" 0.463335
cap "inv1_q" "RWL1" 1.02291
cap "WWL" "RWL1" 19.6967
cap "a_672_110#" "RBL1" 8.401
cap "WWL" "a_672_322#" 1.01858
cap "GND" "VDD" 77.736
cap "WBLb" "inv1_q" 47.0996
cap "WWL" "WBLb" 8.787
device msubckt sky130_fd_pr__nfet_01v8 672 80 673 81 l=30 w=126 "VSUBS" "RWL1" 60 0 "RBL1" 126 9576,404 "a_672_110#" 126 5292,210
device msubckt sky130_fd_pr__nfet_01v8 448 80 449 81 l=30 w=98 "VSUBS" "WWL" 60 0 "WBLb" 98 7840,356 "inv1_q" 98 4116,182
device msubckt sky130_fd_pr__nfet_01v8 672 194 673 195 l=30 w=126 "VSUBS" "inv2_q" 60 0 "a_672_110#" 126 5292,210 "GND" 126 4284,194
device msubckt sky130_fd_pr__nfet_01v8 448 194 449 195 l=30 w=98 "VSUBS" "inv2_q" 60 0 "inv1_q" 98 4116,182 "GND" 98 3332,166
device msubckt sky130_fd_pr__pfet_01v8 252 194 253 195 l=30 w=84 "w_210_89#" "inv2_q" 60 0 "inv1_q" 84 5460,298 "VDD" 84 2856,152
device msubckt sky130_fd_pr__nfet_01v8 672 292 673 293 l=30 w=126 "VSUBS" "inv1_q" 60 0 "GND" 126 4284,194 "a_672_322#" 126 4662,200
device msubckt sky130_fd_pr__nfet_01v8 448 292 449 293 l=30 w=98 "VSUBS" "inv1_q" 60 0 "GND" 98 3332,166 "inv2_q" 98 3626,172
device msubckt sky130_fd_pr__pfet_01v8 252 292 253 293 l=30 w=84 "w_210_89#" "inv1_q" 60 0 "VDD" 84 2856,152 "inv2_q" 84 4956,286
device msubckt sky130_fd_pr__nfet_01v8 672 396 673 397 l=30 w=126 "VSUBS" "RWL0" 60 0 "a_672_322#" 126 4662,200 "RBL0" 126 9828,408
device msubckt sky130_fd_pr__nfet_01v8 448 396 449 397 l=30 w=98 "VSUBS" "WWL" 60 0 "inv2_q" 98 3626,172 "WBL" 98 7252,344

Binary file not shown.

@ -0,0 +1,146 @@
VERSION 5.7 ;
NOWIREEXTENSIONATPIN ON ;
DIVIDERCHAR "/" ;
BUSBITCHARS "[]" ;
MACRO toysram_bit
CLASS BLOCK ;
FOREIGN toysram_bit ;
ORIGIN 0.000 0.000 ;
SIZE 4.750 BY 2.500 ;
PIN WWL
ANTENNAGATEAREA 0.147000 ;
PORT
LAYER li1 ;
RECT 0.110 1.940 0.450 2.280 ;
RECT 0.110 0.400 0.450 0.740 ;
LAYER mcon ;
RECT 0.195 2.025 0.365 2.195 ;
RECT 0.195 0.485 0.365 0.655 ;
LAYER met1 ;
RECT 0.110 1.940 0.450 2.280 ;
RECT 0.110 0.400 0.450 0.740 ;
LAYER via ;
RECT 0.140 1.970 0.420 2.250 ;
RECT 0.140 0.430 0.420 0.710 ;
LAYER met2 ;
RECT 0.000 1.940 0.560 2.280 ;
RECT 0.110 0.400 0.450 1.940 ;
END
END WWL
PIN WBL
ANTENNADIFFAREA 0.181300 ;
PORT
LAYER li1 ;
RECT 2.315 2.160 2.655 2.500 ;
LAYER mcon ;
RECT 2.400 2.245 2.570 2.415 ;
LAYER met1 ;
RECT 1.960 2.160 2.800 2.500 ;
END
END WBL
PIN GND
ANTENNADIFFAREA 0.380800 ;
PORT
LAYER li1 ;
RECT 2.315 1.120 2.655 1.460 ;
RECT 3.505 1.120 3.845 1.460 ;
LAYER mcon ;
RECT 2.400 1.205 2.570 1.375 ;
RECT 3.590 1.205 3.760 1.375 ;
LAYER met1 ;
RECT 2.100 1.120 4.750 1.460 ;
END
END GND
PIN VDD
ANTENNADIFFAREA 0.142800 ;
PORT
LAYER li1 ;
RECT 1.300 1.120 1.640 1.460 ;
LAYER mcon ;
RECT 1.385 1.205 1.555 1.375 ;
LAYER met1 ;
RECT 1.050 1.120 1.890 1.460 ;
END
END VDD
PIN WBLb
ANTENNADIFFAREA 0.196000 ;
PORT
LAYER li1 ;
RECT 2.315 0.060 2.655 0.400 ;
LAYER mcon ;
RECT 2.400 0.145 2.570 0.315 ;
LAYER met1 ;
RECT 1.820 0.060 2.800 0.400 ;
END
END WBLb
PIN RBL0
ANTENNADIFFAREA 0.245700 ;
PORT
LAYER li1 ;
RECT 3.505 2.160 3.845 2.500 ;
LAYER mcon ;
RECT 3.590 2.245 3.760 2.415 ;
LAYER met1 ;
RECT 3.220 2.160 4.130 2.500 ;
END
END RBL0
PIN RBL1
ANTENNADIFFAREA 0.239400 ;
PORT
LAYER li1 ;
RECT 3.505 0.060 3.845 0.400 ;
LAYER mcon ;
RECT 3.590 0.145 3.760 0.315 ;
LAYER met1 ;
RECT 3.220 0.060 4.130 0.400 ;
END
END RBL1
PIN RWL0
ANTENNAGATEAREA 0.094500 ;
PORT
LAYER li1 ;
RECT 4.410 1.895 4.750 2.235 ;
LAYER mcon ;
RECT 4.495 1.980 4.665 2.150 ;
LAYER met1 ;
RECT 4.410 1.895 4.750 2.235 ;
LAYER via ;
RECT 4.440 1.925 4.720 2.205 ;
LAYER met2 ;
RECT 4.410 1.895 4.750 2.235 ;
END
END RWL0
PIN RWL1
ANTENNAGATEAREA 0.094500 ;
PORT
LAYER li1 ;
RECT 4.410 0.315 4.750 0.655 ;
LAYER mcon ;
RECT 4.495 0.400 4.665 0.570 ;
LAYER met1 ;
RECT 4.410 0.315 4.750 0.655 ;
LAYER via ;
RECT 4.440 0.345 4.720 0.625 ;
LAYER met2 ;
RECT 4.410 0.315 4.750 0.655 ;
END
END RWL1
OBS
LAYER pwell ;
RECT 3.230 2.630 4.120 2.650 ;
LAYER nwell ;
RECT 1.050 0.445 1.890 2.105 ;
LAYER pwell ;
RECT 2.110 -0.110 4.120 2.630 ;
RECT 2.110 -0.130 2.860 -0.110 ;
LAYER li1 ;
RECT 0.460 1.375 0.800 1.715 ;
RECT 0.980 1.680 3.080 1.850 ;
RECT 0.630 0.890 0.800 1.375 ;
RECT 2.910 1.225 3.080 1.680 ;
RECT 0.630 0.720 2.730 0.890 ;
RECT 2.910 0.885 3.250 1.225 ;
END
END toysram_bit
END LIBRARY

@ -0,0 +1,11 @@
| units: 500000 tech: sky130A format: MIT
x RWL0 a_672_322# RBL0 VSUBS s=4662,200 d=9828,408 l=30 w=126 x=672 y=396 sky130_fd_pr__nfet_01v8
x inv2_q inv1_q GND VSUBS s=4116,182 d=3332,166 l=30 w=98 x=448 y=194 sky130_fd_pr__nfet_01v8
x inv1_q GND inv2_q VSUBS s=3332,166 d=3626,172 l=30 w=98 x=448 y=292 sky130_fd_pr__nfet_01v8
x WWL inv2_q WBL VSUBS s=3626,172 d=7252,344 l=30 w=98 x=448 y=396 sky130_fd_pr__nfet_01v8
x inv1_q VDD inv2_q w_210_89# s=2856,152 d=4956,286 l=30 w=84 x=252 y=292 sky130_fd_pr__pfet_01v8
x inv2_q inv1_q VDD w_210_89# s=5460,298 d=2856,152 l=30 w=84 x=252 y=194 sky130_fd_pr__pfet_01v8
x WWL WBLb inv1_q VSUBS s=7840,356 d=4116,182 l=30 w=98 x=448 y=80 sky130_fd_pr__nfet_01v8
x RWL1 RBL1 a_672_110# VSUBS s=9576,404 d=5292,210 l=30 w=126 x=672 y=80 sky130_fd_pr__nfet_01v8
x inv2_q a_672_110# GND VSUBS s=5292,210 d=4284,194 l=30 w=126 x=672 y=194 sky130_fd_pr__nfet_01v8
x inv1_q GND a_672_322# VSUBS s=4284,194 d=4662,200 l=30 w=126 x=672 y=292 sky130_fd_pr__nfet_01v8

@ -0,0 +1,14 @@
* NGSPICE file created from toysram_bit.ext - technology: sky130A

.subckt toysram_bit WWL WBL inv2_q GND VDD inv1_q WBLb RBL0 RBL1 RWL0 RWL1
X0 RBL0 RWL0 a_672_322# VSUBS sky130_fd_pr__nfet_01v8 ad=0.246 pd=2.04 as=0.117 ps=1 w=0.63 l=0.15
X1 GND inv2_q inv1_q VSUBS sky130_fd_pr__nfet_01v8 ad=0.0833 pd=0.83 as=0.103 ps=0.91 w=0.49 l=0.15
X2 inv2_q inv1_q GND VSUBS sky130_fd_pr__nfet_01v8 ad=0.0906 pd=0.86 as=0.0833 ps=0.83 w=0.49 l=0.15
X3 WBL WWL inv2_q VSUBS sky130_fd_pr__nfet_01v8 ad=0.181 pd=1.72 as=0.0906 ps=0.86 w=0.49 l=0.15
X4 inv2_q inv1_q VDD w_210_89# sky130_fd_pr__pfet_01v8 ad=0.124 pd=1.43 as=0.0714 ps=0.76 w=0.42 l=0.15
X5 VDD inv2_q inv1_q w_210_89# sky130_fd_pr__pfet_01v8 ad=0.0714 pd=0.76 as=0.137 ps=1.49 w=0.42 l=0.15
X6 inv1_q WWL WBLb VSUBS sky130_fd_pr__nfet_01v8 ad=0.103 pd=0.91 as=0.196 ps=1.78 w=0.49 l=0.15
X7 a_672_110# RWL1 RBL1 VSUBS sky130_fd_pr__nfet_01v8 ad=0.132 pd=1.05 as=0.239 ps=2.02 w=0.63 l=0.15
X8 GND inv2_q a_672_110# VSUBS sky130_fd_pr__nfet_01v8 ad=0.107 pd=0.97 as=0.132 ps=1.05 w=0.63 l=0.15
X9 a_672_322# inv1_q GND VSUBS sky130_fd_pr__nfet_01v8 ad=0.117 pd=1 as=0.107 ps=0.97 w=0.63 l=0.15
.ends
Loading…
Cancel
Save