3 terminal nfet not netlisting correctly -> bn problem...

S

Spaceghost

Guest
Hi all, I am trying to netlist a schematic with a 3 terminal mosfet. The
problem is that the bulk node does not show up in the netlist and screws
everything up. I looked at the CDF. There is a parameter called bn which
is set by default to VSS. I'm doing a Spectre simulation and the bn value
is passed in a statement that looks like D G S (progn bn). I looked around
on the web and this is fairly standard. Cadence complains that the argument
must be a string or number. I don't know what's going on but I think that
somehow the body node is not getting passed correctly.

This is really frustrating. The 4-terminal fet works just fine.

Ideas?

Thanks!
 
If I'm right here the programmable bulk node
is not 'standard' for Spectre direct, but it is often used
in SpectreS.

For the Spectre netlisting process a lot of things has to be
setup right.
- symbol view
- cell cdf (component description format) parameter and simInfo section
- spectre stopping view

And also this depends on the Design Framework version your are using.

Form 5.0.32 up I thing there is the possibility to have the netSet
datatype in your CDF.
Then I suggest the following.

Use a 3 term cell with a programmable bulk node
- your symbol must have 3 terms D S G
- your CDF must have a bn parameter
in the component section
paramType netSet
name bn
prompt Bulk node
- your CDF must have the following entries in the
simInfo for spectre
termOrder D G S B
termMapping nil D \:d G \:g S \:s B \:b
- your spectre stopping view
must have three terms D S G
plus a fourth term B with a net expression
Property name bn
Default net vss/vdd -> depends on your mos type

This should work.

Bernd

Spaceghost wrote:
Hi all, I am trying to netlist a schematic with a 3 terminal mosfet. The
problem is that the bulk node does not show up in the netlist and screws
everything up. I looked at the CDF. There is a parameter called bn which
is set by default to VSS. I'm doing a Spectre simulation and the bn value
is passed in a statement that looks like D G S (progn bn). I looked around
on the web and this is fairly standard. Cadence complains that the argument
must be a string or number. I don't know what's going on but I think that
somehow the body node is not getting passed correctly.

This is really frustrating. The 4-terminal fet works just fine.

Ideas?

Thanks!
 
Bernd, thank you for the tips! I'm using Spectre instead of SpectreS, so
that might be the problem! I am anxious to get back to the lab and check
this out! :)

Thank you for the help!

Marc

"Bernd Fischer" <""bernd.fischer\"@xignal-#$A%&HY%$v#&-.de> wrote in message
news:2lf0joFbnoj8U1@uni-berlin.de...
If I'm right here the programmable bulk node
is not 'standard' for Spectre direct, but it is often used
in SpectreS.

For the Spectre netlisting process a lot of things has to be
setup right.
- symbol view
- cell cdf (component description format) parameter and simInfo section
- spectre stopping view

And also this depends on the Design Framework version your are using.

Form 5.0.32 up I thing there is the possibility to have the netSet
datatype in your CDF.
Then I suggest the following.

Use a 3 term cell with a programmable bulk node
- your symbol must have 3 terms D S G
- your CDF must have a bn parameter
in the component section
paramType netSet
name bn
prompt Bulk node
- your CDF must have the following entries in the
simInfo for spectre
termOrder D G S B
termMapping nil D \:d G \:g S \:s B \:b
- your spectre stopping view
must have three terms D S G
plus a fourth term B with a net expression
Property name bn
Default net vss/vdd -> depends on your mos type

This should work.

Bernd

Spaceghost wrote:
Hi all, I am trying to netlist a schematic with a 3 terminal mosfet.
The
problem is that the bulk node does not show up in the netlist and screws
everything up. I looked at the CDF. There is a parameter called bn
which
is set by default to VSS. I'm doing a Spectre simulation and the bn
value
is passed in a statement that looks like D G S (progn bn). I looked
around
on the web and this is fairly standard. Cadence complains that the
argument
must be a string or number. I don't know what's going on but I think
that
somehow the body node is not getting passed correctly.

This is really frustrating. The 4-terminal fet works just fine.

Ideas?

Thanks!
 
There is a 'Conversion Tool Box'
under the Command Interpreter Windows 'Tools' menu.
There you can find an item 'Analog Bulk Node Conversion ...'
which might do the job for you or at least a part of the job.
I can not give you more info on that because I never used it,
I like to do such things manually, I'm not a friend of automated
conversion because you can not look behind the scene.

Bernd

Spaceghost wrote:
Bernd, thank you for the tips! I'm using Spectre instead of SpectreS, so
that might be the problem! I am anxious to get back to the lab and check
this out! :)

Thank you for the help!

Marc

"Bernd Fischer" <""bernd.fischer\"@xignal-#$A%&HY%$v#&-.de> wrote in message
news:2lf0joFbnoj8U1@uni-berlin.de...

If I'm right here the programmable bulk node
is not 'standard' for Spectre direct, but it is often used
in SpectreS.

For the Spectre netlisting process a lot of things has to be
setup right.
- symbol view
- cell cdf (component description format) parameter and simInfo section
- spectre stopping view

And also this depends on the Design Framework version your are using.

Form 5.0.32 up I thing there is the possibility to have the netSet
datatype in your CDF.
Then I suggest the following.

Use a 3 term cell with a programmable bulk node
- your symbol must have 3 terms D S G
- your CDF must have a bn parameter
in the component section
paramType netSet
name bn
prompt Bulk node
- your CDF must have the following entries in the
simInfo for spectre
termOrder D G S B
termMapping nil D \:d G \:g S \:s B \:b
- your spectre stopping view
must have three terms D S G
plus a fourth term B with a net expression
Property name bn
Default net vss/vdd -> depends on your mos type

This should work.

Bernd

Spaceghost wrote:

Hi all, I am trying to netlist a schematic with a 3 terminal mosfet.

The

problem is that the bulk node does not show up in the netlist and screws
everything up. I looked at the CDF. There is a parameter called bn

which

is set by default to VSS. I'm doing a Spectre simulation and the bn

value

is passed in a statement that looks like D G S (progn bn). I looked

around

on the web and this is fairly standard. Cadence complains that the

argument

must be a string or number. I don't know what's going on but I think

that

somehow the body node is not getting passed correctly.

This is really frustrating. The 4-terminal fet works just fine.

Ideas?

Thanks!
 
I did some more checking today and I think there is an outdated cdsenv file
which has to be deleted. Our sysadmin for some reason never works on Monday
so I will have to wait.

It turns out the simulator I am supposed to be using is Spectre.

"Bernd Fischer" <""bernd.fischer\"@xignal-A%&HY%$v#&G-.de> wrote in message
news:2lf8r9Fbd6bjU1@uni-berlin.de...
There is a 'Conversion Tool Box'
under the Command Interpreter Windows 'Tools' menu.
There you can find an item 'Analog Bulk Node Conversion ...'
which might do the job for you or at least a part of the job.
I can not give you more info on that because I never used it,
I like to do such things manually, I'm not a friend of automated
conversion because you can not look behind the scene.

Bernd

Spaceghost wrote:
Bernd, thank you for the tips! I'm using Spectre instead of SpectreS,
so
that might be the problem! I am anxious to get back to the lab and
check
this out! :)

Thank you for the help!

Marc

"Bernd Fischer" <""bernd.fischer\"@xignal-#$A%&HY%$v#&-.de> wrote in
message
news:2lf0joFbnoj8U1@uni-berlin.de...

If I'm right here the programmable bulk node
is not 'standard' for Spectre direct, but it is often used
in SpectreS.

For the Spectre netlisting process a lot of things has to be
setup right.
- symbol view
- cell cdf (component description format) parameter and simInfo section
- spectre stopping view

And also this depends on the Design Framework version your are using.

Form 5.0.32 up I thing there is the possibility to have the netSet
datatype in your CDF.
Then I suggest the following.

Use a 3 term cell with a programmable bulk node
- your symbol must have 3 terms D S G
- your CDF must have a bn parameter
in the component section
paramType netSet
name bn
prompt Bulk node
- your CDF must have the following entries in the
simInfo for spectre
termOrder D G S B
termMapping nil D \:d G \:g S \:s B \:b
- your spectre stopping view
must have three terms D S G
plus a fourth term B with a net expression
Property name bn
Default net vss/vdd -> depends on your mos type

This should work.

Bernd

Spaceghost wrote:

Hi all, I am trying to netlist a schematic with a 3 terminal mosfet.

The

problem is that the bulk node does not show up in the netlist and
screws
everything up. I looked at the CDF. There is a parameter called bn

which

is set by default to VSS. I'm doing a Spectre simulation and the bn

value

is passed in a statement that looks like D G S (progn bn). I looked

around

on the web and this is fairly standard. Cadence complains that the

argument

must be a string or number. I don't know what's going on but I think

that

somehow the body node is not getting passed correctly.

This is really frustrating. The 4-terminal fet works just fine.

Ideas?

Thanks!
 
I am having this same problem with the AMS netlister in Cadence
because it doesn't suppport progn. I don't want to change hundreds of
schematics to work with this inherited connects method. I changed bn
to type netSet but what is the syntax for the netexpression i must set
up in the Extra Terminals section of AMS Sim Info?
 
I'm using Spectre and when I made the net expression I just filled in a box
with property name -> bn and default net VSS. I can check what the
expression is when I head back to the lab!

Marc

"aznaragorn" <sbhadra@mail.utexas.edu> wrote in message
news:7dcc756e.0407140747.57d6dde1@posting.google.com...
I am having this same problem with the AMS netlister in Cadence
because it doesn't suppport progn. I don't want to change hundreds of
schematics to work with this inherited connects method. I changed bn
to type netSet but what is the syntax for the netexpression i must set
up in the Extra Terminals section of AMS Sim Info?
 

Welcome to EDABoard.com

Sponsor

Back
Top