Dear All,
I'm completing a test design using the gpdk045 and gm/ID methodology for educational purpose. For my technology generation (lookup tables of DC sweeps) I use the gm/ID starter kit scripts of Boris Murmann freely available on the net which I have adapted for the gdpk045. This enables quickly looking at design trade-offs in Matlab. However the results of a simple single transistor simulation between Virtuoso & Matlab are different.
This is because the area & perimeter parameters are not included in my netlist, but are included in a Virtuoso simulation. For a difference in netlist see below:
mn (vdn vgn 0 vbn) g45n1svt l=length*1e-6 w=5e-6 nf=5 <-- how it is scripted in Matlab netlist generation
NM3 (net09 net09 0 0) g45n1svt w=(5u) l=45n nf=5 as=460f ad=460f ps=6.92u \ <-- How virtuoso simulation netlist looks like
pd=6.92u nrd=18.4m nrs=18.4m sa=140n sb=140n sd=160n sca=72.26287 \
scb=0.06569 scc=0.00861 m=(1)
These CDF parameters: as, ad, ps, pd, nrd, .. are calculated using callback functions which depend on the transistor dimensions. How can I use these callback functions to extend my Matlab netlist so I can achieve accurate lookup tables?
Best regards