I have some subcircuits that I want to define as components, but still be able to specify the component models used internally, for a much quicker testing of the design's performance under different set of models.
I know how to change the attributes of internal parts by passing the numeric notation on the SpiceLine of a symbol (.asy) to which the names of the variables are the same as the variable names of attribute values in a .subckt model definition of a model .included in a schematic.
So here's a simple subcircuit
vdrop_diode.txt:
.SUBCKT vdrop_diode 1 2
D1 1 2 1N4148
.ends vdrop_diode
here's the snapshot of the symbol:
The only attributes filled out were:
Prefix: X
Value: vdrop_diode
Then here I want to be able to change the model of the component
vdrop_diode2.txt:
.SUBCKT vdrop_diode 1 2
D1 1 2 {D_model}
.ends vdrop_diode
The only attributes filled out were:
Prefix: X
Value: vdrop_diode
SpiceLine: D_model=1n4148
The default model is 1N4148 (as specified in SpiceLine), but I to be able to simply change to any model I wish. The first problem was 1N4148 passed in SpiceLine was being interpreted as 1.4148e-9. It takes the N as nano, like it was just numeric notation. But, when I tried model names that cannot be interpreted as numbers, like say BAT54 it outputs:
WARNING: Can't resolve .param d_model=(bat54)
Am I not wrapping it in quotation marks or something? Or can this just not be done.
I'm not looking to stepping through a list of model names, just specify a model name for a subcircuit definition.
No comments:
Post a Comment