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!
 
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!
 

Welcome to EDABoard.com

Sponsor

Back
Top