| ;; This skill file compiles schematic PCells for BAG primitives |
| |
| lib_obj = ddGetObj("BAG_prim") |
| |
| |
| ; nmos4_standard/nshort |
| pcDefinePCell( |
| list( lib_obj "nmos4_standard" "schematic" "schematic") |
| ( |
| (nf string "1") |
| ) |
| let((inst iopin_master io_net io_pin) |
| nval = atoi(nf) |
| inst = dbCreateParamInstByMasterName( pcCellView "s8phirs_10r" "nfet" "symbol" |
| "N0" -0.375:0 "R0" 1 |
| list(list("hspiceModelMenu" "string" "nshort") |
| list("m" "string" nf) |
| ) |
| iopin_master = dbOpenCellViewByType("basic" "iopin" "symbolr" nil "r") |
| io_net = dbCreateNet(pcCellView "D") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "D" -0.5:0.5625 "R0") |
| "D" dbCreateTerm(io_net "D" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "d")) |
| io_net = dbCreateNet(pcCellView "G") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "G" -0.875:0 "R0") |
| "G" dbCreateTerm(io_net "G" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "g")) |
| io_net = dbCreateNet(pcCellView "S") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "S" -0.5:-0.5 "R0") |
| "S" dbCreateTerm(io_net "S" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "s")) |
| io_net = dbCreateNet(pcCellView "B") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "B" 0.125:0 "R0") |
| "B" dbCreateTerm(io_net "B" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "b")) |
| ) |
| ) |
| |
| ; nmos4_svt/nshort |
| pcDefinePCell( |
| list( lib_obj "nmos4_svt" "schematic" "schematic") |
| ((w string "0.42") |
| (l string "0.15") |
| (nf string "1") |
| ) |
| let((inst iopin_master io_net io_pin) |
| wval = atoi(w) |
| nval = atoi(nf) |
| inst = dbCreateParamInstByMasterName( pcCellView "s8phirs_10r" "nfet" "symbol" |
| "N0" -0.375:0 "R0" 1 |
| list(list("hspiceModelMenu" "string" "nshort") |
| list("w" "string" w) |
| list("l" "string" l) |
| list("m" "string" nf) |
| list("totalW" "string" sprintf(nil "%dn" wval * nval))) |
| ) |
| iopin_master = dbOpenCellViewByType("basic" "iopin" "symbolr" nil "r") |
| io_net = dbCreateNet(pcCellView "D") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "D" -0.5:0.5625 "R0") |
| "D" dbCreateTerm(io_net "D" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "d")) |
| io_net = dbCreateNet(pcCellView "G") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "G" -0.875:0 "R0") |
| "G" dbCreateTerm(io_net "G" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "g")) |
| io_net = dbCreateNet(pcCellView "S") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "S" -0.5:-0.5 "R0") |
| "S" dbCreateTerm(io_net "S" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "s")) |
| io_net = dbCreateNet(pcCellView "B") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "B" 0.125:0 "R0") |
| "B" dbCreateTerm(io_net "B" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "b")) |
| ) |
| ) |
| |
| ; nmos4_hv/nhv |
| pcDefinePCell( |
| list( lib_obj "nmos4_hv" "schematic" "schematic") |
| ((w string "0.75") |
| (l string "0.50") |
| (nf string "1") |
| ) |
| let((inst iopin_master io_net io_pin) |
| wval = atoi(w) |
| nval = atoi(nf) |
| inst = dbCreateParamInstByMasterName( pcCellView "s8phirs_10r" "nfet" "symbol" |
| "N0" -0.375:0 "R0" 1 |
| list(list("hspiceModelMenu" "string" "nhv") |
| list("w" "string" w) |
| list("l" "string" l) |
| list("m" "string" nf) |
| list("totalW" "string" sprintf(nil "%dn" wval * nval))) |
| ) |
| iopin_master = dbOpenCellViewByType("basic" "iopin" "symbolr" nil "r") |
| io_net = dbCreateNet(pcCellView "D") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "D" -0.5:0.5625 "R0") |
| "D" dbCreateTerm(io_net "D" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "d")) |
| io_net = dbCreateNet(pcCellView "G") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "G" -0.875:0 "R0") |
| "G" dbCreateTerm(io_net "G" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "g")) |
| io_net = dbCreateNet(pcCellView "S") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "S" -0.5:-0.5 "R0") |
| "S" dbCreateTerm(io_net "S" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "s")) |
| io_net = dbCreateNet(pcCellView "B") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "B" 0.125:0 "R0") |
| "B" dbCreateTerm(io_net "B" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "b")) |
| ) |
| ) |
| |
| ; nmos4_hvesd/nhvesd |
| pcDefinePCell( |
| list( lib_obj "nmos4_hvesd" "schematic" "schematic") |
| ((w string "17.50") |
| (l string "0.55") |
| (nf string "1") |
| ) |
| let((inst iopin_master io_net io_pin) |
| wval = atoi(w) |
| nval = atoi(nf) |
| inst = dbCreateParamInstByMasterName( pcCellView "s8phirs_10r" "nfet" "symbol" |
| "N0" -0.375:0 "R0" 1 |
| list(list("hspiceModelMenu" "string" "nhvesd") |
| list("w" "string" w) |
| list("l" "string" l) |
| list("m" "string" nf) |
| list("totalW" "string" sprintf(nil "%dn" wval * nval))) |
| ) |
| iopin_master = dbOpenCellViewByType("basic" "iopin" "symbolr" nil "r") |
| io_net = dbCreateNet(pcCellView "D") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "D" -0.5:0.5625 "R0") |
| "D" dbCreateTerm(io_net "D" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "d")) |
| io_net = dbCreateNet(pcCellView "G") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "G" -0.875:0 "R0") |
| "G" dbCreateTerm(io_net "G" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "g")) |
| io_net = dbCreateNet(pcCellView "S") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "S" -0.5:-0.5 "R0") |
| "S" dbCreateTerm(io_net "S" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "s")) |
| io_net = dbCreateNet(pcCellView "B") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "B" 0.125:0 "R0") |
| "B" dbCreateTerm(io_net "B" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "b")) |
| ) |
| ) |
| |
| ; nmos4_lvt/nlowvt |
| pcDefinePCell( |
| list( lib_obj "nmos4_lvt" "schematic" "schematic") |
| ((w string "0.42") |
| (l string "0.15") |
| (nf string "1") |
| ) |
| let((inst iopin_master io_net io_pin) |
| wval = atoi(w) |
| nval = atoi(nf) |
| inst = dbCreateParamInstByMasterName( pcCellView "s8phirs_10r" "nfet" "symbol" |
| "N0" -0.375:0 "R0" 1 |
| list(list("hspiceModelMenu" "string" "nlowvt") |
| list("w" "string" w) |
| list("l" "string" l) |
| list("m" "string" nf) |
| list("totalW" "string" sprintf(nil "%dn" wval * nval))) |
| ) |
| iopin_master = dbOpenCellViewByType("basic" "iopin" "symbolr" nil "r") |
| io_net = dbCreateNet(pcCellView "D") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "D" -0.5:0.5625 "R0") |
| "D" dbCreateTerm(io_net "D" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "d")) |
| io_net = dbCreateNet(pcCellView "G") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "G" -0.875:0 "R0") |
| "G" dbCreateTerm(io_net "G" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "g")) |
| io_net = dbCreateNet(pcCellView "S") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "S" -0.5:-0.5 "R0") |
| "S" dbCreateTerm(io_net "S" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "s")) |
| io_net = dbCreateNet(pcCellView "B") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "B" 0.125:0 "R0") |
| "B" dbCreateTerm(io_net "B" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "b")) |
| ) |
| ) |
| |
| ; pmos4_standard/pshort |
| pcDefinePCell( |
| list( lib_obj "pmos4_standard" "schematic" "schematic") |
| ((w string "0.55") |
| (l string "0.15") |
| (nf string "1") |
| ) |
| let((inst iopin_master io_net io_pin) |
| wval = atoi(w) |
| nval = atoi(nf) |
| inst = dbCreateParamInstByMasterName( pcCellView "s8phirs_10r" "pfet" "symbol" |
| "N0" -0.375:0 "R0" 1 |
| list(list("hspiceModelMenu" "string" "pshort") |
| list("w" "string" w) |
| list("l" "string" l) |
| list("m" "string" nf) |
| list("totalW" "string" sprintf(nil "%dn" wval * nval))) |
| ) |
| iopin_master = dbOpenCellViewByType("basic" "iopin" "symbolr" nil "r") |
| io_net = dbCreateNet(pcCellView "D") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "D" -0.5:0.5625 "R0") |
| "D" dbCreateTerm(io_net "D" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "d")) |
| io_net = dbCreateNet(pcCellView "G") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "G" -0.875:0 "R0") |
| "G" dbCreateTerm(io_net "G" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "g")) |
| io_net = dbCreateNet(pcCellView "S") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "S" -0.5:-0.5 "R0") |
| "S" dbCreateTerm(io_net "S" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "s")) |
| io_net = dbCreateNet(pcCellView "B") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "B" 0.125:0 "R0") |
| "B" dbCreateTerm(io_net "B" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "b")) |
| ) |
| ) |
| |
| ; pmos4_svt/pshort |
| pcDefinePCell( |
| list( lib_obj "pmos4_svt" "schematic" "schematic") |
| ((w string "0.55") |
| (l string "0.15") |
| (nf string "1") |
| ) |
| let((inst iopin_master io_net io_pin) |
| wval = atoi(w) |
| nval = atoi(nf) |
| inst = dbCreateParamInstByMasterName( pcCellView "s8phirs_10r" "pfet" "symbol" |
| "N0" -0.375:0 "R0" 1 |
| list(list("hspiceModelMenu" "string" "pshort") |
| list("w" "string" w) |
| list("l" "string" l) |
| list("m" "string" nf) |
| list("totalW" "string" sprintf(nil "%dn" wval * nval))) |
| ) |
| iopin_master = dbOpenCellViewByType("basic" "iopin" "symbolr" nil "r") |
| io_net = dbCreateNet(pcCellView "D") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "D" -0.5:0.5625 "R0") |
| "D" dbCreateTerm(io_net "D" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "d")) |
| io_net = dbCreateNet(pcCellView "G") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "G" -0.875:0 "R0") |
| "G" dbCreateTerm(io_net "G" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "g")) |
| io_net = dbCreateNet(pcCellView "S") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "S" -0.5:-0.5 "R0") |
| "S" dbCreateTerm(io_net "S" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "s")) |
| io_net = dbCreateNet(pcCellView "B") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "B" 0.125:0 "R0") |
| "B" dbCreateTerm(io_net "B" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "b")) |
| ) |
| ) |
| |
| ; pmos4_hvt/phighvt |
| pcDefinePCell( |
| list( lib_obj "pmos4_hvt" "schematic" "schematic") |
| ((w string "0.54") |
| (l string "0.15") |
| (nf string "1") |
| ) |
| let((inst iopin_master io_net io_pin) |
| wval = atoi(w) |
| nval = atoi(nf) |
| inst = dbCreateParamInstByMasterName( pcCellView "s8phirs_10r" "pfet" "symbol" |
| "N0" -0.375:0 "R0" 1 |
| list(list("hspiceModelMenu" "string" "phighvt") |
| list("w" "string" w) |
| list("l" "string" l) |
| list("m" "string" nf) |
| list("totalW" "string" sprintf(nil "%dn" wval * nval))) |
| ) |
| iopin_master = dbOpenCellViewByType("basic" "iopin" "symbolr" nil "r") |
| io_net = dbCreateNet(pcCellView "D") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "D" -0.5:0.5625 "R0") |
| "D" dbCreateTerm(io_net "D" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "d")) |
| io_net = dbCreateNet(pcCellView "G") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "G" -0.875:0 "R0") |
| "G" dbCreateTerm(io_net "G" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "g")) |
| io_net = dbCreateNet(pcCellView "S") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "S" -0.5:-0.5 "R0") |
| "S" dbCreateTerm(io_net "S" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "s")) |
| io_net = dbCreateNet(pcCellView "B") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "B" 0.125:0 "R0") |
| "B" dbCreateTerm(io_net "B" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "b")) |
| ) |
| ) |
| |
| ; pmos4_hv/phv |
| pcDefinePCell( |
| list( lib_obj "pmos4_hv" "schematic" "schematic") |
| ((w string "0.42") |
| (l string "0.50") |
| (nf string "1") |
| ) |
| let((inst iopin_master io_net io_pin) |
| wval = atoi(w) |
| nval = atoi(nf) |
| inst = dbCreateParamInstByMasterName( pcCellView "s8phirs_10r" "pfet" "symbol" |
| "N0" -0.375:0 "R0" 1 |
| list(list("hspiceModelMenu" "string" "phv") |
| list("w" "string" w) |
| list("l" "string" l) |
| list("m" "string" nf) |
| list("totalW" "string" sprintf(nil "%dn" wval * nval))) |
| ) |
| iopin_master = dbOpenCellViewByType("basic" "iopin" "symbolr" nil "r") |
| io_net = dbCreateNet(pcCellView "D") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "D" -0.5:0.5625 "R0") |
| "D" dbCreateTerm(io_net "D" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "d")) |
| io_net = dbCreateNet(pcCellView "G") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "G" -0.875:0 "R0") |
| "G" dbCreateTerm(io_net "G" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "g")) |
| io_net = dbCreateNet(pcCellView "S") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "S" -0.5:-0.5 "R0") |
| "S" dbCreateTerm(io_net "S" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "s")) |
| io_net = dbCreateNet(pcCellView "B") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "B" 0.125:0 "R0") |
| "B" dbCreateTerm(io_net "B" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "b")) |
| ) |
| ) |
| |
| ; pmos4_hvesd/phvesd |
| pcDefinePCell( |
| list( lib_obj "pmos4_hvesd" "schematic" "schematic") |
| ((w string "14.50") |
| (l string "0.55") |
| (nf string "1") |
| ) |
| let((inst iopin_master io_net io_pin) |
| wval = atoi(w) |
| nval = atoi(nf) |
| inst = dbCreateParamInstByMasterName( pcCellView "s8phirs_10r" "pfet" "symbol" |
| "N0" -0.375:0 "R0" 1 |
| list(list("hspiceModelMenu" "string" "phvesd") |
| list("w" "string" w) |
| list("l" "string" l) |
| list("m" "string" nf) |
| list("totalW" "string" sprintf(nil "%dn" wval * nval))) |
| ) |
| iopin_master = dbOpenCellViewByType("basic" "iopin" "symbolr" nil "r") |
| io_net = dbCreateNet(pcCellView "D") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "D" -0.5:0.5625 "R0") |
| "D" dbCreateTerm(io_net "D" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "d")) |
| io_net = dbCreateNet(pcCellView "G") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "G" -0.875:0 "R0") |
| "G" dbCreateTerm(io_net "G" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "g")) |
| io_net = dbCreateNet(pcCellView "S") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "S" -0.5:-0.5 "R0") |
| "S" dbCreateTerm(io_net "S" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "s")) |
| io_net = dbCreateNet(pcCellView "B") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "B" 0.125:0 "R0") |
| "B" dbCreateTerm(io_net "B" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "b")) |
| ) |
| ) |
| |
| ; pmos4_lvt/plowvt |
| pcDefinePCell( |
| list( lib_obj "pmos4_lvt" "schematic" "schematic") |
| ((w string "0.55") |
| (l string "0.35") |
| (nf string "1") |
| ) |
| let((inst iopin_master io_net io_pin) |
| wval = atoi(w) |
| nval = atoi(nf) |
| inst = dbCreateParamInstByMasterName( pcCellView "s8phirs_10r" "pfet" "symbol" |
| "N0" -0.375:0 "R0" 1 |
| list(list("hspiceModelMenu" "string" "plowvt") |
| list("w" "string" w) |
| list("l" "string" l) |
| list("m" "string" nf) |
| list("totalW" "string" sprintf(nil "%dn" wval * nval))) |
| ) |
| iopin_master = dbOpenCellViewByType("basic" "iopin" "symbolr" nil "r") |
| io_net = dbCreateNet(pcCellView "D") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "D" -0.5:0.5625 "R0") |
| "D" dbCreateTerm(io_net "D" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "d")) |
| io_net = dbCreateNet(pcCellView "G") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "G" -0.875:0 "R0") |
| "G" dbCreateTerm(io_net "G" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "g")) |
| io_net = dbCreateNet(pcCellView "S") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "S" -0.5:-0.5 "R0") |
| "S" dbCreateTerm(io_net "S" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "s")) |
| io_net = dbCreateNet(pcCellView "B") |
| io_pin = dbCreatePin(io_net dbCreateInst(pcCellView iopin_master "B" 0.125:0 "R0") |
| "B" dbCreateTerm(io_net "B" "inputOutput")) |
| dbCreateInstTerm(io_net inst dbFindTermByName(inst~>master "b")) |
| ) |
| ) |
| |
| |
| |
| |
| |
| |
| |