How to extract a lumped elements model for S2P file?
I use ADS 2011 to extract it, But I don't have SPICE software, So I can't use Wideband method in ADS.
For narrow band method of ADS, I get a "test.cir" file, how can I open it?
maybe you have better way to extract the model, thanks for your comments.
Tony, open the *.cir file in a text editor.
The syntax details dependend on the simulator type, but you should be able to "read" it.
The netlist will have R,L,C elements that are connected through node numbers or net names.
Generally, a set of s-parameters can represent any circuit, also distributed ones and can't be necessarily modelled by a lumped RLC circuit. I don't know what's the ADS wideband method and why you need the SPICE software for it. I have recently generated lumped RLC models, e.g. for ferrite beads by parameter fitting.
@FvM: One common problem in RF simulation is that results are S-parameters and SPICE type simulators have difficulty to use this frequency domain data. Some RF EDA software tries to solve this problem by providing SPICE model files that are extracted/fitted from the S-parameter data. The "wideband" or "broadband" output often uses R,L,C and controlled voltage/current sources. The narrow band extraction often uses a fixed topology (pi model) that might be valid over a limited frequency range.
I don't have a license for ADS broad band SPICE output, but here is what Sonnet broadband and narrow band SPICE models would look like.
Pi model output:
.subckt SON4_0 1 2 GND C_C1 1 GND 4.247966pf C_C2 2 GND 6.220214pf R_R1 1 2 1.322307 L_L1 1 3 0.818111nh R_RL1 3 2 0.26807 .ends SON4_0
.SUBCKT test 1 2 3 ER1N i1 1 1 c1 1.0000000000000000000000 GR1P i1 c1 i1 c1 0.0100000000000000000000 ER2N i2 2 2 c2 1.0000000000000000000000 GR2P i2 c2 i2 c2 0.0100000000000000000000 * Coefficient set (1, 1 ) 4 Coefficients G_c1P npc101 3 i1 3 1.0000000000000000000000 G_c1N nnc101 3 i1 3 1.0000000000000000000000 E_c1P ac100 c1 npc101 3 1.0000000000000000000000 E_c1N ac100 b102 nnc101 3 1.0000000000000000000000 * Coefficient: 1 SINGLE R_1_c1 npc101 npc102 1.0247873435628330000000 C_1_c1 npc101 npc102 2.536448111492722700e-10 * Coefficient: 2 SINGLE R_2_c1 nnc101 nnc102 0.0154498055003668040000 C_2_c1 nnc101 nnc102 3.8814940500616891000e-9 * Coefficient: 3 PAIR C1_3_c1 npc103 npc104 1.658745302285953300e-12 R1_3_c1 npc103 npc104 1.6054075536887733000000 L1_3_c1 npc103 npc104 4.441654868222504700e-12 C2_3_c1 npc102 npc103 2.379181366161933800e-12 L2_3_c1 npc102 nxc103 3.096684536885430500e-12 R2_3_c1 nxc103 npc103 1.1628721176632311000000 (...)
From my past experiences, wideband SPICE models are not so good.They create often convergence errors.
Just a remark..
True. They can cause convergence errors, depending on settings and model complexity. If a "physical" lumped model is available, that is preferred. But sometimes, there is no alternative, because there is no lumped model available and the SPICE simulator does not handle S-parameters at well (or does not handle them at all).
I have no problem to understand the motivation for "extracting" SPICE models from S-parameters. As I mentioned, I already did it, but with physical plausible models. I didn't know however, that ADS and Sonnet have specific modules for this purpose. I agree, that it will be better than nothing in most cases. It's also clear, that the software can't have an idea about a physical plausible model for arbitrary S-parameters.
At least HSPICE accepts S-parameter circuit descriptions, but I don't have any experience with this feature.
Using S-parameters in time domain simulators is prone to stability and causality problems. I don't have experience with S-parameters in HSPICE, but have worked with customers who tried to use S-parameters in Cadence Spectre, with very mixed results for transient and PSS simulations. That exactly was the reason for Sigrity, Agilent, Sonnet and others to build broadband SPICE extraction software that does this in a robust and reliable way. However, Cadence seems to have very much improved things with MMSIM 12.1
I got this cir file from ADS extracting:
.subckt test_1122 1 2
* L in nH, C in pF
R1 2 0 1664.81257767475
C1 2 0 0.661159146014288P
R2 1 3 18.6494208991826
L1 3 0 16.8394177808174N
L2 1 2 28.4337322716287N
.ENDS
* end of sub-circuit
And built ADS simulation file as the attachment. Is it right?
I checked the extarct function, it is far from the original S2P file?
I appreciate your reply. Thanks.
Looks good. You got the idea!
For accuracy, you better compare the model to the original s2p data, and decide for yourself if this is good enough.
Thanks all.
