Maker Pro
Maker Pro

Importing subcircuit into CircuitMaker 2000

M

Mike Neufeld

Hello,

Does anyone here know how to use a spice subcircuit that refers to another
subcircuit in CircuitMaker 2000?

I've figured out how to bring in self-contained subcircuits and hook them up
to symbols. However, it seems that spice models for most TI analog parts
come as a subcircuit that contains a reference to one or more other
subcircuits in the same file. CircuitMaker seems to want to treat these as
independent subcircuits that can be alternately linked to a symbol -- but I
can't get it to treat them all as units of one subcircuit.

Has anyone encountered this problem before?

Thanks in advance,

Mike Neufeld
 
J

Jim Thompson

Hello,

Does anyone here know how to use a spice subcircuit that refers to another
subcircuit in CircuitMaker 2000?

I've figured out how to bring in self-contained subcircuits and hook them up
to symbols. However, it seems that spice models for most TI analog parts
come as a subcircuit that contains a reference to one or more other
subcircuits in the same file. CircuitMaker seems to want to treat these as
independent subcircuits that can be alternately linked to a symbol -- but I
can't get it to treat them all as units of one subcircuit.

Has anyone encountered this problem before?

Thanks in advance,

Mike Neufeld

How do you declare libraries in CircuitMaker?

...Jim Thompson
 
M

Mike Neufeld

Well, you take a new or existing symbol and use Macro Utilities. There is a
"Model Data" button that allows you to specify a model file, and then choose
subcircuits to link to that symbol. The problem is that when you do this
with a model file that contains multiple subcircuits linked together,
CircuitMaker only allows you to link one of them to the symbol, and the
others are ignored, even though they are required as well.

Mike.
 
J

Jim Thompson

Well, you take a new or existing symbol and use Macro Utilities. There is a
"Model Data" button that allows you to specify a model file, and then choose
subcircuits to link to that symbol. The problem is that when you do this
with a model file that contains multiple subcircuits linked together,
CircuitMaker only allows you to link one of them to the symbol, and the
others are ignored, even though they are required as well.

Mike.

You mean CircuitMaker can't cope with the following "definition"
(contained in a Library or Include file):

************************************************************
..subckt sh_tinv_1x a y clk vp vn
Xi46 clk I46_y vp vn sh_inv_1x
Mi40 y I46_y I36_d vp mvep01 L=1.2u W=8.4u
Mi36 I36_d a vp vp mvep01 L=1.2u W=8.4u
Mi32 I32_d a vn vn mven02 L=1.2u W=6u
Mi37 y clk I32_d vn mven02 L=1.2u W=6u
..ends sh_tinv_1x
************************************************************
..subckt sh_inv_1x a y vp vn
Mi13 y a vn vn mven02 L=1.2u W=3u
Mi14 y a vp vp mvep01 L=1.2u W=4.7u
..ends sh_inv_1x
************************************************************

Subcircuit "sh_tinv_1x" uses subcircuit "sh_inv_1x" within it.

In the "instantiation" (netlist/circuit file) only "sh_tinv_1x" would
be listed....

X1 1 2 3 4 5 sh_tinv_1x

This is "standard" Spice. If CircuitMaker can't cope with this get a
refund.

...Jim Thompson
 
M

Mike Neufeld

You mean CircuitMaker can't cope with the following "definition"
(contained in a Library or Include file):
Subcircuit "sh_tinv_1x" uses subcircuit "sh_inv_1x" within it.

In the "instantiation" (netlist/circuit file) only "sh_tinv_1x" would
be listed....

X1 1 2 3 4 5 sh_tinv_1x

Yes, that's exactly what I'm having trouble doing. For some reason, it will
list both sh_tinv_1x and sh_inv_1x as subcircuits that can be associated
with a symbol, and if I were to choose sh_tinv_1x, it would ignore sh_inv_1x
and then spit out a pile of errors when I try to simulate with it.
This is "standard" Spice. If CircuitMaker can't cope with this get a
refund.

Well, fortunately I'm using the 30-day trial version. But I'm thinking there
must be a way to do this.

Thanks,

Mike.
 
K

Kevin Aylward

Mike said:
Yes, that's exactly what I'm having trouble doing. For some reason,
it will list both sh_tinv_1x and sh_inv_1x as subcircuits that can be
associated with a symbol, and if I were to choose sh_tinv_1x, it
would ignore sh_inv_1x and then spit out a pile of errors when I try
to simulate with it.


Well, fortunately I'm using the 30-day trial version. But I'm
thinking there must be a way to do this.

There is, use SuperSpice. It handles this no problem. Just put one
..subckt within another.

Kevin Aylward
[email protected]
http://www.anasoft.co.uk
SuperSpice, a very affordable Mixed-Mode
Windows Simulator with Schematic Capture,
Waveform Display, FFT's and Filter Design.

http://www.anasoft.co.uk/replicators/index.html

"Understanding" itself requires consciousness,
therefore consciousness cannot be "understood"
without referring to itself for the explanation,
therefore the "hard problem" of consciousness,
is intrinsically unsolvable as it is self referral.
 
C

Charles Edmondson

Mike said:
Yes, that's exactly what I'm having trouble doing. For some reason, it will
list both sh_tinv_1x and sh_inv_1x as subcircuits that can be associated
with a symbol, and if I were to choose sh_tinv_1x, it would ignore sh_inv_1x
and then spit out a pile of errors when I try to simulate with it.


Well, fortunately I'm using the 30-day trial version. But I'm thinking there
must be a way to do this.

Thanks,

Mike.

Mike,
This is actually pretty normal for an automatic symbol generation utility. It
creates symbols for all subcircuits. Are you using the symbol that contains all
the rest? Or trying to use a symbol that only contains part? What you are
dealing with is probably not a netlister problem, but a parser problem...

Charlie
Edmondson Engineering
Unique Solutions to Unusual Problems
 

Similar threads

J
Replies
0
Views
1K
Jim Thompson
J
C
Replies
1
Views
721
PeteS
P
T
Replies
8
Views
12K
Joerg
J
C
Replies
4
Views
33K
Claus Jensen
C
J
Replies
1
Views
1K
Jim Thompson
J
Top