The parameter M is treated specially in Spice netlister. If you use ordinary parameters like "Wn" and "Wp" to modify transistor size, then the expression should prefix parameter by '@' char and should be Spice parameter.
1) Open cell CMOSedu_Ch11_50n:inv_param_W{sch}.
2) Highlight text Wp*20 on P-Transistor and press Ctrl-I.
You will see a "Text Properties" dialog. The input box with expression
contains "Wp*20".
The "Code:" choice list shows "NotCode".
3) If you add prefix '@' before Wp and choose "Spice" for Code,
then transistor width will depend on Cell parameter "Wp".
4) The same is for text on N-Transistor.
The modified version of CMOSedu_Ch11_50n is attached.
The Spice output of modified library will depend on
"File|Preferences|Tools|Spice|Use cell parameters" preference:
---------------- "Use cell parameters" is on
*** CELL: inv_param_W{sch}
.SUBCKT inv_param_W Vin Vout Wn='null' Wp='null'
** GLOBAL gnd
** GLOBAL vdd
MM1 Vout Vin vdd vdd P_50n L=0.05U W='Wp*20'
MM2 Vout Vin gnd gnd N_50n L=2 W='Wn*10'
.ENDS inv_param_W
.global gnd vdd
*** TOP LEVEL CELL: Fig11_21_param_W{sch}
c...@0 gnd Vout 20p
xinv_p...@5 Vin n...@91 inv_param_W Wn=1 Wp=1
xinv_p...@6 n...@91 n...@93 inv_param_W Wn=8 Wp=8
xinv_p...@7 n...@93 n...@94 inv_param_W Wn=64 Wp=64
xinv_p...@8 n...@94 n...@95 inv_param_W Wn=512 Wp=512
xinv_p...@9 n...@95 Vout inv_param_W Wn=4096 Wp=4096
----------------
---------------- "Use cell parameters" is off
*** CELL: inv_param_W{sch}
.SUBCKT inv_param_W-Wn_1-Wp_1 Vin Vout
** GLOBAL gnd
** GLOBAL vdd
MM1 Vout Vin vdd vdd P_50n L=0.05U W=0.5U
MM2 Vout Vin gnd gnd N_50n L=0.05U W=0.25U
.ENDS inv_param_W-Wn_1-Wp_1
*** CELL: inv_param_W{sch}
.SUBCKT inv_param_W-Wn_8-Wp_8 Vin Vout
** GLOBAL gnd
** GLOBAL vdd
MM1 Vout Vin vdd vdd P_50n L=0.05U W=4U
MM2 Vout Vin gnd gnd N_50n L=0.05U W=2U
.ENDS inv_param_W-Wn_8-Wp_8
*** CELL: inv_param_W{sch}
.SUBCKT inv_param_W-Wn_64-Wp_64 Vin Vout
** GLOBAL gnd
** GLOBAL vdd
MM1 Vout Vin vdd vdd P_50n L=0.05U W=32U
MM2 Vout Vin gnd gnd N_50n L=0.05U W=16U
.ENDS inv_param_W-Wn_64-Wp_64
*** CELL: inv_param_W{sch}
.SUBCKT inv_param_W-Wn_512-Wp_512 Vin Vout
** GLOBAL gnd
** GLOBAL vdd
MM1 Vout Vin vdd vdd P_50n L=0.05U W=256U
MM2 Vout Vin gnd gnd N_50n L=0.05U W=128U
.ENDS inv_param_W-Wn_512-Wp_512
*** CELL: inv_param_W{sch}
.SUBCKT inv_param_W-Wn_4096-Wp_4096 Vin Vout
** GLOBAL gnd
** GLOBAL vdd
MM1 Vout Vin vdd vdd P_50n L=0.05U W=2048U
MM2 Vout Vin gnd gnd N_50n L=0.05U W=1024U
.ENDS inv_param_W-Wn_4096-Wp_4096
.global gnd vdd
*** TOP LEVEL CELL: Fig11_21_param_W{sch}
c...@0 gnd Vout 20p
xinv_p...@5 Vin n...@91 inv_param_W-Wn_1-Wp_1
xinv_p...@6 n...@91 n...@93 inv_param_W-Wn_8-Wp_8
xinv_p...@7 n...@93 n...@94 inv_param_W-Wn_64-Wp_64
xinv_p...@8 n...@94 n...@95 inv_param_W-Wn_512-Wp_512
xinv_p...@9 n...@95 Vout inv_param_W-Wn_4096-Wp_4096
----------------
-Dima
On Thu, Dec 31, 2009 at 3:40 AM, Jake Baker <[email protected]> wrote:
> Hi All,
>
> In the attached zip file there is a jelib called CMOSedu_Ch11_50n.
>
> In this library there is a schematic cell called Fig11_21_param_W that
> uses parameters. I am getting errors simulating this cell with LTspice
> (effective channel length <= 0). Can anyone tell me what I'm doing
> wrong in this example?
>
> The other example seen in this library showing the use of parameters,
> Fig11_21_param_M, works fine.
>
> Thanks, Jake.
>
> --
> http://CMOSedu.com/jbaker/jbaker.htm
>
> --
>
> You received this message because you are subscribed to the Google Groups
> "Electric VLSI Editor" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<electricvlsi%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/electricvlsi?hl=en.
>
>
>
--
You received this message because you are subscribed to the Google Groups
"Electric VLSI Editor" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/electricvlsi?hl=en.
CMOSedu_Ch11_50n.jelib
Description: Binary data
