| v {xschem version=3.0.0 file_version=1.2 |
| |
| * Copyright 2022 GlobalFoundries PDK Authors |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * https://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| |
| } |
| G {} |
| K {type=nmos |
| format="@spiceprefix@name @pinlist @model L=@L W=@W |
| + nf=@nf ad=@ad as=@as pd=@pd ps=@ps |
| + nrd=@nrd nrs=@nrs sa=@sa sb=@sb sd=@sd |
| + m=@m" |
| lvs_format="@name @pinlist @model L=@L W=@W nf=@nf m=@m" |
| template="name=M1 |
| L=0.28u |
| W=0.22u |
| nf=1 |
| m=1 |
| ad=\\"'int((nf+1)/2) * W/nf * 0.18u'\\" |
| pd=\\"'2*int((nf+1)/2) * (W/nf + 0.18u)'\\" |
| as=\\"'int((nf+2)/2) * W/nf * 0.18u'\\" |
| ps=\\"'2*int((nf+2)/2) * (W/nf + 0.18u)'\\" |
| nrd=\\"'0.18u / W'\\" nrs=\\"'0.18u / W'\\" |
| sa=0 sb=0 sd=0 |
| model=nmos_3p3 |
| spiceprefix=X |
| " |
| } |
| V {} |
| S {} |
| E {} |
| L 4 7.5 -22.5 7.5 22.5 {} |
| L 4 -20 0 2.5 0 {} |
| L 4 20 -30 20 -17.5 {} |
| L 4 20 17.5 20 30 {} |
| L 4 2.5 -15 2.5 15 {} |
| L 4 7.5 -17.5 20 -17.5 {} |
| L 4 7.5 17.5 15 17.5 {} |
| B 5 17.5 -32.5 22.5 -27.5 {name=D dir=inout} |
| B 5 -22.5 -2.5 -17.5 2.5 {name=G dir=in} |
| B 5 17.5 27.5 22.5 32.5 {name=S dir=inout} |
| B 5 19.921875 -0.078125 20.078125 0.078125 {name=B dir=in} |
| P 4 4 15 15 20 17.5 15 20 15 15 {fill=true} |
| P 5 4 20 -2.5 15 0 20 2.5 20 -2.5 {fill=true} |
| T {@name} 5 -30 0 1 0.2 0.2 {} |
| T {S} 22.5 17.5 0 0 0.15 0.15 {layer=7} |
| T {D} 22.5 -17.5 2 1 0.15 0.15 {layer=7} |
| T {B} 20 -10 0 0 0.15 0.15 {layer=7} |
| T {G} -10 -10 0 1 0.15 0.15 {layer=7} |
| T {@model} 30 -8.75 2 1 0.2 0.2 {} |
| T {@m x @W / @L} 31.25 13.75 0 0 0.2 0.2 { layer=13} |
| T {nf=@nf} 31.25 1.25 0 0 0.2 0.2 { layer=13} |
| T {tcleval(gm=[ngspice::get_node [subst -nocommand \{\\@m.$\{path\}@spiceprefix@name\\.msky130_fd_pr__@model\\[gm]\}]] )} 32.5 -7.5 0 0 0.15 0.15 {layer=15 |
| hide=true} |
| T {tcleval(id=[ngspice::get_node [subst -nocommand \{i(\\@m.$\{path\}@spiceprefix@name\\.msky130_fd_pr__@model\\[id])\}]] )} 32.5 -30 0 0 0.15 0.15 {layer=15 |
| hide=true} |