2004-07-22 Stefan Jones <stefan.jones@multigig.com>

* src/spicepp.pl.in:
	Update
This commit is contained in:
stefanjones 2004-07-22 20:03:50 +00:00
parent f2faaef81d
commit b0b982c5fc
2 changed files with 19 additions and 18 deletions

View File

@ -1,3 +1,8 @@
2004-07-22 Stefan Jones <stefan.jones@multigig.com>
* src/spicepp.pl.in:
Update
2004-07-21 Stefan Jones <stefan.jones@multigig.com>
* src/tclspice.c:

View File

@ -639,7 +639,7 @@ sub change_models {
sub change_instances {
local($i,$model,$l,$w,$p,$m,$ad,$as,$pd,$ps);
local($i,$model,$l,$w,$p,$ad,$as,$pd,$ps);
for ($i=0;$i<@deck;$i++) {
$_ = $deck[$i];
if(/^m\S+\s+\S+\s+\S+\s+\S+\s+\S+\s+(\S+)/) {
@ -677,10 +677,6 @@ sub change_instances {
next;
model_found:
#W & L mangling and acm stuff
#Get m
if($deck[$i] =~ s/(.*)\bm\s*=\s*([0-9]+)\b(.*)/$1$3/){
$m = $2;}else {$m = 1;}
#get and remove pd, ps, ad, as
if($deck[$i] =~ s/(.*)\bpd\s*=\s*(\S+)\b(.*)/$1$3/){
$pd = &unit($2);
@ -703,7 +699,7 @@ sub change_instances {
}else{ $ad = 0;}
#Calculate Leff and Weff
$w = $m * ($w * $$model{"wmlt"} + $$model{"xw"});
$w = ($w * $$model{"wmlt"} + $$model{"xw"});
$l = $l * $$model{"lmlt"} + $$model{"xl"};
#Now do the ACM stuff......
@ -713,10 +709,10 @@ sub change_instances {
#calculated using hspice methods..
if( $$model{"acm"} == 0){
#pg 869, 19-33
$ad = $m * $ad * $$model{"wmlt"} * $$model{"wmlt"};
$as = $m * $as * $$model{"wmlt"} * $$model{"wmlt"};
$pd = $m * $pd * $$model{"wmlt"};
$ps = $m * $ps * $$model{"wmlt"};
$ad = $ad * $$model{"wmlt"} * $$model{"wmlt"};
$as = $as * $$model{"wmlt"} * $$model{"wmlt"};
$pd = $pd * $$model{"wmlt"};
$ps = $ps * $$model{"wmlt"};
}
@ -729,23 +725,23 @@ sub change_instances {
elsif( $$model{"acm"} == 2){
#pg 874, 19-39
if($ad){
$ad = $ad * $m * $$model{"wmlt"} * $$model{"wmlt"};
$ad = $ad * $$model{"wmlt"} * $$model{"wmlt"};
}else {
$ad = 2 * $$model{"hdif"} * $w;}
if($as){
$as = $m * $as * $$model{"wmlt"} * $$model{"wmlt"};
$as = $as * $$model{"wmlt"} * $$model{"wmlt"};
}else{
$as = 2 * $$model{"hdif"} * $w;}
if($pd){
$pd = $m * $pd * $$model{"wmlt"};
$pd = $pd * $$model{"wmlt"};
}else {
$pd = 4 * $$model{"hdif"} + 2 * $w;
}
if($ps){
$ps = $m * $ps * $$model{"wmlt"};
$ps = $ps * $$model{"wmlt"};
}else{
$ps = 4 * $$model{"hdif"} + 2 * $w;
}
@ -754,7 +750,7 @@ sub change_instances {
elsif( $$model{"acm"} == 3){
#pg 879, 19-43
if($ad){
$ad = $m * $ad * $$model{"wmlt"} * $$model{"wmlt"};}
$ad = $ad * $$model{"wmlt"} * $$model{"wmlt"};}
elsif($$model{"geo"} == 0 || $$model{"geo"} == 2){
$ad = 2 * $$model{"hdif"} * $w;
}else{
@ -762,7 +758,7 @@ sub change_instances {
}
if($as){
$as = $m * $as * $$model{"wmlt"} * $$model{"wmlt"};}
$as = $as * $$model{"wmlt"} * $$model{"wmlt"};}
elsif($$model{"geo"} == 0 || $$model{"geo"} == 1){
$as = 2 * $$model{"hdif"} * $w;
}else{
@ -770,7 +766,7 @@ sub change_instances {
}
if($pd){
$pd = $m * $pd * $$model{"wmlt"};}
$pd = $pd * $$model{"wmlt"};}
elsif($$model{"geo"} == 0 || $$model{"geo"} == 2){
$pd = 4 * $$model{"hdif"} + $w;
}else{
@ -778,7 +774,7 @@ sub change_instances {
}
if($ps){
$ps = $m * $ps * $$model{"wmlt"};}
$ps = $ps * $$model{"wmlt"};}
elsif($$model{"geo"} == 0 || $$model{"geo"} == 1){
$ps = 4 * $$model{"hdif"} + $w;
}else{