Tom
12/10/2023, 9:39 PMAmro Tork
12/10/2023, 10:28 PMTom
12/11/2023, 6:50 PMTom
12/11/2023, 6:54 PMTom
12/11/2023, 6:56 PMv {xschem version=3.4.5 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=res
format="@spiceprefix@name @pinlist @model r_width=@W r_length=@L par=@np s=@ns"
template="name=R1
W=1e-6
L=1e-6
model=ppolyf_u_1k
spiceprefix=X
np=1
ns=1"
}
V {}
S {}
E {}
L 4 0 20 0 30 {}
L 4 0 20 7.5 17.5 {}
L 4 -7.5 12.5 7.5 17.5 {}
L 4 -7.5 12.5 7.5 7.5 {}
L 4 -7.5 2.5 7.5 7.5 {}
L 4 -7.5 2.5 7.5 -2.5 {}
L 4 -7.5 -7.5 7.5 -2.5 {}
L 4 -7.5 -7.5 7.5 -12.5 {}
L 4 -7.5 -17.5 7.5 -12.5 {}
L 4 -7.5 -17.5 0 -20 {}
L 4 0 -30 0 -20 {}
B 5 -2.5 27.5 2.5 32.5 {name=M dir=inout propag=1 pinnumber=2}
B 5 -2.5 -32.5 2.5 -27.5 {name=P dir=inout propag=0 pinnumber=1}
B 5 -22.5 -2.5 -17.5 2.5 {name=B dir=inout pinnumber=3}
T {@model} 15 -21.25 0 0 0.2 0.2 {}
T {B} -15 -12.5 0 1 0.15 0.15 {layer=7}
T {@spiceprefix@name} 15 -33.75 0 0 0.2 0.2 {}
T {@W / @L
ns=@ns
np=@np} 15 -8.75 0 0 0.2 0.2 {layer=13}
@Stefan Schippers, @Amro Tork, @Tim Edwards whats the best way to get this into the lib? should I submit a pull request?Amro Tork
12/11/2023, 7:36 PMTom
12/11/2023, 7:38 PMAmro Tork
12/11/2023, 7:39 PMTim Edwards
12/11/2023, 7:55 PMTim Edwards
12/11/2023, 8:43 PMStefan Schippers
12/12/2023, 11:43 PMTim Edwards
12/13/2023, 12:38 AMnwell
ppolyf_u
npolyf_u
ppolyf_s
nplus_u
pplus_u
npolyf_s
ppolyf_u_1k
ppolyf_u_1k_6p0
rm1
rm2
rm3
rm4
tm11k (for gf180mcuD)
nfet_03v3
pfet_03v3
nfet_06v0
pfet_06v0
nfet_06v0_nvt
nfet_03v3_dss
pfet_03v3_dss
nfet_06v0_dss
pfet_06v0_dss
nfet_10v0_asym
pfet_10v0_asym
cap_nmos_03v3
cap_nmos_06v0
cap_pmos_03v3
cap_pmos_06v0
cap_nmos_03v3_b
cap_nmos_06v0_b
cap_pmos_03v3_b
cap_pmos_06v0_b
diode_nd2ps_03v3
diode_pd2nw_03v3
diode_nd2ps_06v0
diode_pd2nw_06v0
diode_nw2pw_03v3
diode_nw2pw_06v0
diode_dnw2pw
diode_dnw2ps
sc_diode
npn_10p00x10p00
npn_05p00x05p00
npn_00p54x16p00
npn_00p54x08p00
npn_00p54x04p00
npn_00p54x02p00
pnp_10p00x00p42
pnp_05p00x00p42
pnp_10p00x10p00
pnp_05p00x05p00
cap_mim_2f0_m4m5_noshield
I don't think it's a huge task because a lot of devices will be grouped, like the NPNs and PNPs, and the metal resistors are pretty trivial to copy from the existing m1 resistor.
Probably the lowest-priority devices are the schottky (sc_diode), the extended-drain devices (*_asym), the unsalicided-drain devices (*_dss), and the parasitics (well-to-well and well-to-substrate diodes).
"nwell" is an nwell resistor.Stefan Schippers
12/13/2023, 10:41 PMdiode_pw2dw
, I guess it is a p-well to deep (buried) nwell diode. It is not in the above list. It does simulate so there is a model for it. Should I keep it ?Stefan Schippers
12/13/2023, 11:37 PMrm4
and rm5
metal resistors (I have created rm1
, rm2
, rm3
). It seems there are some fixed geometry "top metal" resistor:
* tm6k Subcircuit Model for 2-terminal top metal 6k resistor
* tm9k Subcircuit Model for 2-terminal top metal 9k resistor
* tm11k Subcircuit Model for 2-terminal top metal 11k resistor
* tm30k Subcircuit Model for 2-terminal top metal 30k resistor
The rm1, rm2, rm3 resistors are identical, this means m1, m2 and m3 have same thickness and material (a bit surprising, usually higher metals in the stack have lower resistivity and bigger geometries)Tim Edwards
12/14/2023, 12:43 AMtm
resistor models have values according to top metal thickness, then the top metal resistor has to be one of these models. Because in the layout, the "TM" layers are mask layers and the drawn layers are, e.g., "M5", I took the same approach in magic: The drawn metal resistor layer in magic is rm5
, but it extracts to the model tm11k
(for process variant gf180mcuD
). I incorrectly listed the drawn layer (which itself was a manual correction from the entry in the netgen setup file where I got the original list of devices; there it's incorrectly listed as "rmtp"). I will correct the entry above.
Yes, the GF backend is unusual in having (or at least claiming to have) the exact same properties for all metal and via layers up to the topmost.Tim Edwards
12/14/2023, 12:46 AMrm4
is missing. The PR library is forked from github/efabless, so I can make a manual pull request for it and merge it myself.Tim Edwards
12/14/2023, 1:00 AMrm4
device to the SPICE models.Stefan Schippers
12/14/2023, 2:25 AMTim Edwards
12/14/2023, 2:02 PMTom
12/14/2023, 6:11 PMLinen is a search-engine friendly community platform. We offer integrations with existing Slack/Discord communities and make those conversations Google-searchable.
Powered by