1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587
|
#%l2n-klayout
# General section
top(RINGO)
unit(0.001)
# Layer section
# This section lists the mask layers (drawing or derived) and their connections.
# Mask layers
layer(rbulk)
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(rbulk 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 -475 -125 475)
)
terminal(G
rect(poly -125 -475 125 475)
)
terminal(D
rect(psd 125 -475 675 475)
)
terminal(B
rect(nwell -125 -475 125 475)
)
)
device(D$PMOS$1 PMOS
terminal(S
rect(psd -675 -475 -125 475)
)
terminal(G
rect(poly -125 -475 125 475)
)
terminal(D
rect(psd 125 -475 650 475)
)
terminal(B
rect(nwell -125 -475 125 475)
)
)
device(D$NMOS NMOS
terminal(S
rect(nsd -650 -475 -125 475)
)
terminal(G
rect(poly -125 -475 125 475)
)
terminal(D
rect(nsd 125 -475 675 475)
)
terminal(B
rect(rbulk -125 -475 125 475)
)
)
device(D$NMOS$1 NMOS
terminal(S
rect(nsd -675 -475 -125 475)
)
terminal(G
rect(poly -125 -475 125 475)
)
terminal(D
rect(nsd 125 -475 650 475)
)
terminal(B
rect(rbulk -125 -475 125 475)
)
)
# Circuit section
# Circuits are the hierarchical building blocks of the netlist.
circuit(INV2
# Circuit boundary
rect(-1700 -1640 1400 4580)
# Nets with their geometries
net(1
rect(nwell -1400 1800 1400 4580)
rect(diff_cont -110 3930 110 4150)
rect(ntie -400 3700 400 4380)
)
net(2 name(IN)
rect(poly -525 -250 -275 2250)
rect(poly -1700 1620 -400 1980)
rect(poly -525 -800 -275 800)
rect(poly -525 2000 -275 3600)
rect(poly_lbl -801 1799 -799 1801)
rect(poly_cont -1630 1690 -1410 1910)
)
net(3
rect(poly 275 -250 525 2250)
rect(poly 220 820 580 1180)
rect(poly 275 2000 525 3600)
rect(poly 275 -800 525 800)
rect(diff_cont -910 2490 -690 2710)
rect(diff_cont -910 2890 -690 3110)
rect(diff_cont -910 -310 -690 -90)
rect(diff_cont -910 90 -690 310)
rect(poly_cont 290 890 510 1110)
rect(metal1 -800 820 580 1180)
rect(metal1 -980 -420 -620 2420)
rect(metal1 -980 2420 -620 3180)
rect(metal1 -980 -380 -620 380)
rect(psd -1050 2325 -525 3275)
rect(nsd -1050 -475 -525 475)
)
net(4 name(OUT)
rect(diff_cont 690 2890 910 3110)
rect(diff_cont 690 2490 910 2710)
rect(diff_cont 690 90 910 310)
rect(diff_cont 690 -310 910 -90)
polygon(metal1 800 20 * 380 940 * * 1620 620 * * 2420 980 * * 1980 1300 * * 20)
rect(metal1 620 2420 980 3180)
rect(metal1 620 -380 980 380)
rect(metal1_lbl 799 1799 801 1801)
rect(psd 525 2325 1050 3275)
rect(nsd 525 -475 1050 475)
)
net(5 name(VSS)
rect(diff_cont -110 -310 110 -90)
rect(diff_cont -110 90 110 310)
rect(diff_cont -110 90 110 310)
rect(diff_cont -110 -310 110 -90)
rect(metal1 -180 -380 180 380)
rect(metal1 -180 -380 180 380)
rect(via1 -125 -325 125 -75)
rect(via1 -125 75 125 325)
rect(metal2 -1400 -450 1400 450)
rect(metal2_lbl 1239 -91 1241 -89)
rect(nsd -275 -475 275 475)
)
net(6 name(VDD)
rect(diff_cont -110 2490 110 2710)
rect(diff_cont -110 2890 110 3110)
rect(diff_cont -110 2890 110 3110)
rect(diff_cont -110 2490 110 2710)
rect(metal1 -180 2420 180 3180)
rect(metal1 -180 2420 180 3180)
rect(via1 -125 2475 125 2725)
rect(via1 -125 2875 125 3125)
rect(metal2 -1400 2350 1400 3250)
rect(metal2_lbl 1249 2799 1251 2801)
rect(psd -275 2325 275 3275)
)
net(7 name(BULK)
rect(diff_cont -110 -1360 110 -1140)
rect(ptie -400 -1590 400 -910)
)
# Outgoing pins and their connections to nets
pin(1)
pin(2 name(IN))
pin(3)
pin(4 name(OUT))
pin(5 name(VSS))
pin(6 name(VDD))
pin(7 name(BULK))
# Devices and their connections
device(1 D$PMOS
location(-400 2800)
param(L 0.25)
param(W 0.95)
param(AS 0.49875)
param(AD 0.26125)
param(PS 2.95)
param(PD 1.5)
terminal(S 3)
terminal(G 2)
terminal(D 6)
terminal(B 1)
)
device(2 D$PMOS$1
location(400 2800)
param(L 0.25)
param(W 0.95)
param(AS 0.26125)
param(AD 0.49875)
param(PS 1.5)
param(PD 2.95)
terminal(S 6)
terminal(G 3)
terminal(D 4)
terminal(B 1)
)
device(3 D$NMOS
location(-400 0)
param(L 0.25)
param(W 0.95)
param(AS 0.49875)
param(AD 0.26125)
param(PS 2.95)
param(PD 1.5)
terminal(S 3)
terminal(G 2)
terminal(D 5)
terminal(B 7)
)
device(4 D$NMOS$1
location(400 0)
param(L 0.25)
param(W 0.95)
param(AS 0.26125)
param(AD 0.49875)
param(PS 1.5)
param(PD 2.95)
terminal(S 5)
terminal(G 3)
terminal(D 4)
terminal(B 7)
)
)
circuit(INV2PAIR
# Circuit boundary
rect(0 -840 5740 5380)
# Nets with their geometries
net(1 name(BULK))
net(2
rect(diff_cont 3430 3290 3650 3510)
rect(diff_cont 3430 3690 3650 3910)
rect(diff_cont 3430 490 3650 710)
rect(diff_cont 3430 890 3650 1110)
)
net(3
rect(diff_cont 4230 3290 4450 3510)
rect(diff_cont 4230 3690 4450 3910)
rect(diff_cont 4230 3690 4450 3910)
rect(diff_cont 4230 3290 4450 3510)
rect(diff_cont 1590 3290 1810 3510)
rect(diff_cont 1590 3690 1810 3910)
rect(diff_cont 1590 3690 1810 3910)
rect(diff_cont 1590 3290 1810 3510)
rect(metal1 4160 3220 4520 3980)
rect(metal1 4160 3220 4520 3980)
rect(metal1 1520 3220 1880 3980)
rect(metal1 1520 3220 1880 3980)
)
net(4
rect(diff_cont 4230 490 4450 710)
rect(diff_cont 4230 890 4450 1110)
rect(diff_cont 4230 890 4450 1110)
rect(diff_cont 4230 490 4450 710)
rect(diff_cont 1590 490 1810 710)
rect(diff_cont 1590 890 1810 1110)
rect(diff_cont 1590 890 1810 1110)
rect(diff_cont 1590 490 1810 710)
rect(metal1 4160 420 4520 1180)
rect(metal1 4160 420 4520 1180)
rect(metal1 1520 420 1880 1180)
rect(metal1 1520 420 1880 1180)
)
net(5
rect(diff_cont 2390 3690 2610 3910)
rect(diff_cont 2390 3290 2610 3510)
rect(diff_cont 2390 890 2610 1110)
rect(diff_cont 2390 490 2610 710)
)
net(6)
net(7
rect(diff_cont 5030 3690 5250 3910)
rect(diff_cont 5030 3290 5250 3510)
rect(diff_cont 5030 890 5250 1110)
rect(diff_cont 5030 490 5250 710)
)
net(8)
# Outgoing pins and their connections to nets
pin(1 name(BULK))
pin(2)
pin(3)
pin(4)
pin(6)
pin(7)
pin(8)
# Subcircuits and their connections
circuit(1 INV2 location(1700 800)
pin(0 8)
pin(1 6)
pin(3 5)
pin(4 4)
pin(5 3)
pin(6 1)
)
circuit(2 INV2 location(4340 800)
pin(0 8)
pin(1 5)
pin(2 2)
pin(3 7)
pin(4 4)
pin(5 3)
pin(6 1)
)
)
circuit(RINGO
# Circuit boundary
rect(-1720 -1640 25160 4580)
# Nets with their geometries
net(1 name(FB)
rect(diff_cont 22850 2490 23070 2710)
rect(diff_cont 22850 2890 23070 3110)
rect(diff_cont 22850 -310 23070 -90)
rect(diff_cont 22850 90 23070 310)
rect(metal1 -1700 1620 -1340 1980)
rect(via1 -1645 1675 -1395 1925)
rect(via1 22835 1675 23085 1925)
rect(metal2 -1720 1600 23160 2000)
rect(metal2_lbl -1 1799 1 1801)
)
net(2 name(OSC)
rect(diff_cont 24450 2890 24670 3110)
rect(diff_cont 24450 2490 24670 2710)
rect(diff_cont 24450 90 24670 310)
rect(diff_cont 24450 -310 24670 -90)
rect(via1 24435 1675 24685 1925)
rect(metal2 24360 1600 24760 2000)
rect(metal2_lbl 24559 1799 24561 1801)
)
net(3 name(VDD)
rect(diff_cont 7810 2490 8030 2710)
rect(diff_cont 7810 2890 8030 3110)
rect(diff_cont 7810 2890 8030 3110)
rect(diff_cont 7810 2490 8030 2710)
rect(diff_cont 5170 2490 5390 2710)
rect(diff_cont 5170 2890 5390 3110)
rect(diff_cont 5170 2890 5390 3110)
rect(diff_cont 5170 2490 5390 2710)
rect(diff_cont 2530 2490 2750 2710)
rect(diff_cont 2530 2890 2750 3110)
rect(diff_cont 2530 2890 2750 3110)
rect(diff_cont 2530 2490 2750 2710)
rect(diff_cont -110 2490 110 2710)
rect(diff_cont -110 2890 110 3110)
rect(diff_cont -110 2890 110 3110)
rect(diff_cont -110 2490 110 2710)
rect(diff_cont 13090 2490 13310 2710)
rect(diff_cont 13090 2890 13310 3110)
rect(diff_cont 13090 2890 13310 3110)
rect(diff_cont 13090 2490 13310 2710)
rect(diff_cont 10450 2490 10670 2710)
rect(diff_cont 10450 2890 10670 3110)
rect(diff_cont 10450 2890 10670 3110)
rect(diff_cont 10450 2490 10670 2710)
rect(diff_cont 18370 2490 18590 2710)
rect(diff_cont 18370 2890 18590 3110)
rect(diff_cont 18370 2890 18590 3110)
rect(diff_cont 18370 2490 18590 2710)
rect(diff_cont 15730 2490 15950 2710)
rect(diff_cont 15730 2890 15950 3110)
rect(diff_cont 15730 2890 15950 3110)
rect(diff_cont 15730 2490 15950 2710)
rect(diff_cont 23650 2490 23870 2710)
rect(diff_cont 23650 2890 23870 3110)
rect(diff_cont 23650 2890 23870 3110)
rect(diff_cont 23650 2490 23870 2710)
rect(diff_cont 21010 2490 21230 2710)
rect(diff_cont 21010 2890 21230 3110)
rect(diff_cont 21010 2890 21230 3110)
rect(diff_cont 21010 2490 21230 2710)
rect(metal1 -180 3100 180 4220)
rect(metal1 2460 3100 2820 4220)
rect(metal1 5100 3100 5460 4220)
rect(metal1 7740 3100 8100 4220)
rect(metal1 10380 3100 10740 4220)
rect(metal1 13020 3100 13380 4220)
rect(metal1 15660 3100 16020 4220)
rect(metal1 18300 3100 18660 4220)
rect(metal1 20940 3100 21300 4220)
rect(metal1 23580 3100 23940 4220)
rect(metal1 7740 2420 8100 3180)
rect(metal1 7740 2420 8100 3180)
rect(metal1 5100 2420 5460 3180)
rect(metal1 5100 2420 5460 3180)
rect(metal1 2460 2420 2820 3180)
rect(metal1 2460 2420 2820 3180)
rect(metal1 -180 2420 180 3180)
rect(metal1 -180 2420 180 3180)
rect(metal1 13020 2420 13380 3180)
rect(metal1 13020 2420 13380 3180)
rect(metal1 10380 2420 10740 3180)
rect(metal1 10380 2420 10740 3180)
rect(metal1 18300 2420 18660 3180)
rect(metal1 18300 2420 18660 3180)
rect(metal1 15660 2420 16020 3180)
rect(metal1 15660 2420 16020 3180)
rect(metal1 23580 2420 23940 3180)
rect(metal1 23580 2420 23940 3180)
rect(metal1 20940 2420 21300 3180)
rect(metal1 20940 2420 21300 3180)
rect(metal2_lbl -1 2799 1 2801)
)
net(4 name(VSS)
rect(diff_cont 7810 -310 8030 -90)
rect(diff_cont 7810 90 8030 310)
rect(diff_cont 7810 90 8030 310)
rect(diff_cont 7810 -310 8030 -90)
rect(diff_cont 5170 -310 5390 -90)
rect(diff_cont 5170 90 5390 310)
rect(diff_cont 5170 90 5390 310)
rect(diff_cont 5170 -310 5390 -90)
rect(diff_cont 2530 -310 2750 -90)
rect(diff_cont 2530 90 2750 310)
rect(diff_cont 2530 90 2750 310)
rect(diff_cont 2530 -310 2750 -90)
rect(diff_cont -110 -310 110 -90)
rect(diff_cont -110 90 110 310)
rect(diff_cont -110 90 110 310)
rect(diff_cont -110 -310 110 -90)
rect(diff_cont 13090 -310 13310 -90)
rect(diff_cont 13090 90 13310 310)
rect(diff_cont 13090 90 13310 310)
rect(diff_cont 13090 -310 13310 -90)
rect(diff_cont 10450 -310 10670 -90)
rect(diff_cont 10450 90 10670 310)
rect(diff_cont 10450 90 10670 310)
rect(diff_cont 10450 -310 10670 -90)
rect(diff_cont 18370 -310 18590 -90)
rect(diff_cont 18370 90 18590 310)
rect(diff_cont 18370 90 18590 310)
rect(diff_cont 18370 -310 18590 -90)
rect(diff_cont 15730 -310 15950 -90)
rect(diff_cont 15730 90 15950 310)
rect(diff_cont 15730 90 15950 310)
rect(diff_cont 15730 -310 15950 -90)
rect(diff_cont 23650 -310 23870 -90)
rect(diff_cont 23650 90 23870 310)
rect(diff_cont 23650 90 23870 310)
rect(diff_cont 23650 -310 23870 -90)
rect(diff_cont 21010 -310 21230 -90)
rect(diff_cont 21010 90 21230 310)
rect(diff_cont 21010 90 21230 310)
rect(diff_cont 21010 -310 21230 -90)
rect(metal1 -180 -1420 180 -300)
rect(metal1 2460 -1420 2820 -300)
rect(metal1 5100 -1420 5460 -300)
rect(metal1 7740 -1420 8100 -300)
rect(metal1 10380 -1420 10740 -300)
rect(metal1 13020 -1420 13380 -300)
rect(metal1 15660 -1420 16020 -300)
rect(metal1 18300 -1420 18660 -300)
rect(metal1 20940 -1420 21300 -300)
rect(metal1 23580 -1420 23940 -300)
rect(metal1 7740 -380 8100 380)
rect(metal1 7740 -380 8100 380)
rect(metal1 5100 -380 5460 380)
rect(metal1 5100 -380 5460 380)
rect(metal1 2460 -380 2820 380)
rect(metal1 2460 -380 2820 380)
rect(metal1 -180 -380 180 380)
rect(metal1 -180 -380 180 380)
rect(metal1 13020 -380 13380 380)
rect(metal1 13020 -380 13380 380)
rect(metal1 10380 -380 10740 380)
rect(metal1 10380 -380 10740 380)
rect(metal1 18300 -380 18660 380)
rect(metal1 18300 -380 18660 380)
rect(metal1 15660 -380 16020 380)
rect(metal1 15660 -380 16020 380)
rect(metal1 23580 -380 23940 380)
rect(metal1 23580 -380 23940 380)
rect(metal1 20940 -380 21300 380)
rect(metal1 20940 -380 21300 380)
rect(metal2_lbl -1 -1 1 1)
)
net(5
rect(diff_cont 3330 2890 3550 3110)
rect(diff_cont 3330 2490 3550 2710)
rect(diff_cont 3330 90 3550 310)
rect(diff_cont 3330 -310 3550 -90)
)
net(6
rect(diff_cont 19170 2890 19390 3110)
rect(diff_cont 19170 2490 19390 2710)
rect(diff_cont 19170 90 19390 310)
rect(diff_cont 19170 -310 19390 -90)
)
net(7
rect(diff_cont 13890 2890 14110 3110)
rect(diff_cont 13890 2490 14110 2710)
rect(diff_cont 13890 90 14110 310)
rect(diff_cont 13890 -310 14110 -90)
)
net(8
rect(diff_cont 8610 2890 8830 3110)
rect(diff_cont 8610 2490 8830 2710)
rect(diff_cont 8610 90 8830 310)
rect(diff_cont 8610 -310 8830 -90)
)
# 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 1)
pin(2 3)
pin(3 4)
pin(4 6)
pin(5 2)
pin(6 3)
)
circuit(2 INV2PAIR location(-1700 -800)
pin(0 4)
pin(2 3)
pin(3 4)
pin(4 1)
pin(5 5)
pin(6 3)
)
circuit(3 INV2PAIR location(3580 -800)
pin(0 4)
pin(2 3)
pin(3 4)
pin(4 5)
pin(5 8)
pin(6 3)
)
circuit(4 INV2PAIR location(8860 -800)
pin(0 4)
pin(2 3)
pin(3 4)
pin(4 8)
pin(5 7)
pin(6 3)
)
circuit(5 INV2PAIR location(14140 -800)
pin(0 4)
pin(2 3)
pin(3 4)
pin(4 7)
pin(5 6)
pin(6 3)
)
)
|