The Designer's Guide Community
Forum
Welcome, Guest. Please Login or Register. Please follow the Forum guidelines.
Apr 27th, 2024, 1:27am
Pages: 1
Send Topic Print
Unreasonable Results of Cadence Spectre (Read 6893 times)
pancho_hideboo
Senior Fellow
******
Offline



Posts: 1424
Real Homeless
Unreasonable Results of Cadence Spectre
Nov 19th, 2008, 9:11pm
 
See attached figure.
This is a simple floating resonator driven by current sources.

I expect voltage swing centered at 0volt both for p0 and n0 nodes.
But Cadence Spectre give no swing at n0 and twice swing at p0.
While Agilent ADS on RFDE give voltage swing centered at 0volt both for p0 and n0 nodes I expect.

Why Cadence Spectre give such results ?
This is true for Tran, Shooting-PSS and HB-PSS in Cadence Spectre.

The followings are netlist I used.
Quote:
// Generated for: spectre
// Generated on: Nov 20 14:05:23 2008
// Design library name: Test
// Design cell name: Aho_Cadence_Spectre
// Design view name: schematic
simulator lang=spectre
global 0

// Library name: Test
// Cell name: Aho_Cadence_Spectre
// View name: schematic
L0 (net021 net028) inductor l=7.7m
R1 (net028 n0) resistor r=150/2
R0 (p0 net021) resistor r=150/2
I1 (n0 0) isource type=sine freq=134.2K ampl=40u pacmag=1 mag=1
I0 (0 p0) isource type=sine freq=134.2K ampl=40u pacmag=1 mag=1
C0 (p0 n0) capacitor c=5.2p
C1 (p0 n0) capacitor c=178p
simulatorOptions options reltol=1e-3 vabstol=1e-6 iabstol=1e-12 temp=27 \
   tnom=27 scalem=1.0 scale=1.0 gmin=1e-12 rforce=1 maxnotes=5 maxwarns=5 \
   digits=5 cols=80 pivrel=1e-3 sensfile="../psf/sens.output" \
   checklimitdest=psf
dcOp dc write="spectre.dc" maxiters=150 maxsteps=10000 annotate=status
dcOpInfo info what=oppoint where=rawfile
pss  pss  flexbalance=yes  fund=134.2K  harms=3  errpreset=moderate
+    tstab=0  method=gear2only  relref=alllocal  maxperiods=200
+    annotate=status  outputtype=freq  maxiters=15  restart=no
designParamVals info what=parameters where=rawfile
saveOptions options save=allpub

Back to top
« Last Edit: Nov 19th, 2008, 11:43pm by pancho_hideboo »  

aho.jpg
View Profile WWW Top+Secret Top+Secret   IP Logged
pancho_hideboo
Senior Fellow
******
Offline



Posts: 1424
Real Homeless
Re: Unreasonable Results of Cadence Spectre
Reply #1 - Nov 19th, 2008, 9:21pm
 
Very funny enough in Cadence Spectre.
If I change node p0 and n0, p0 is zero and n0 shows swing alternatively.

Result of Agilent ADS on RFDE doesn't change.

I think results should not change even though node p0 and n0 are changed.

Any devotee of Cadence Spectre, teach me the reason why cadence spectre give such funny results.

The followings are RFDE netlist I used.
Quote:
Options ResourceUsage=yes Verbose=yes UseNutmegFormat=no \
       TopDesignName="data"

; Generated by: DFII version 5.10.41.500.5.98 (using OASIS direct)
;
simulator lang=spectre
L0 (net021 net028) inductor l=7.7m
R1 (net028 p0) resistor r=150/2
R0 (n0 net021) resistor r=150/2
I1 (n0 0) isource type=sine freq=134.2K ampl=40u pacmag=1 mag=1
I0 (0 p0) isource type=sine freq=134.2K ampl=40u pacmag=1 mag=1
C0 (n0 p0) capacitor c=5.2p
C1 (p0 n0) capacitor c=178p
simulator lang=ads
Options:Options1 Temp=27 Tnom=27 TopologyCheck=yes GiveAllWarnings=yes \
   MaxWarnings=10
DC:DC1 SaveDCVoltageSolution=yes SaveDCCurrentSolution=yes DevOpPtLevel=2 \
   StatusLevel=2 UseFiniteDiff=no OutputPlan[1]="GlobalOutputPlan" \
   OutputPlan[2]="GlobalInhibitPlan"
HB:HB1 Freq[1]=134.2k Order[1]=3 Oversample[1]=1 MaxOrder=4 StatusLevel=3 \
   OutputPlan[1]="GlobalOutputPlan" OutputPlan[2]="GlobalInhibitPlan"
Tran:HB1_tran HB_Sol=1 SteadyState=1 OutputPlan[1]="GlobalOutputPlan" \
   OutputPlan[2]="GlobalInhibitPlan" StatusLevel=3 Freq[1]=134.2k \
   Order[1]=3
Component:tahb_HB1 Module="ATAHB" Type="ModelExtractor" \
   Tran_Analysis="HB1_tran" HB_Analysis="HB1"
OutputPlan:GlobalOutputPlan Type="Output" UseBuiltinRule=no \
   OverrideInhibitRule=no UseNodeNestLevel=yes NodeNestLevel=2 \
   UseCurrentNestLevel=yes CurrentNestLevel=999 \
   UseDeviceCurrentNestLevel=no
OutputPlan:GlobalInhibitPlan Type="Inhibit" UseBuiltinRule=no \
   OverrideInhibitRule=no NodeRegExpr[1]="\.net[0-9]+$|^net[0-9]+$"

mapping {
 pinMapping {
   inductor 1:"PLUS" 2:"MINUS"
   capacitor 1:"PLUS" 2:"MINUS"
   resistor 1:"PLUS" 2:"MINUS"
   isource 1:"PLUS" 2:"MINUS"
 }
}

Back to top
« Last Edit: Nov 19th, 2008, 11:44pm by pancho_hideboo »  

boke.jpg
View Profile WWW Top+Secret Top+Secret   IP Logged
Ken Kundert
Global Moderator
*****
Offline



Posts: 2384
Silicon Valley
Re: Unreasonable Results of Cadence Spectre
Reply #2 - Nov 20th, 2008, 12:10am
 
The problem is not with the simulator, but with the circuit. You cannot just leave a subcircuit completely floating because there is an infinite number of valid solutions. Spectre happens to pick a different one than ADS, but they are both equally valid. Older simulators would simply refuse to run such a circuit, saying that there is "no DC path to ground" from the resonator. Spectre addresses this problem by picking one node and simply connecting it to ground through a 1TΩ resistor. I am not sure how ADS is dealing with it, but I suspect it is connecting both nodes to ground through a large resistor.

-Ken
Back to top
 
 
View Profile WWW   IP Logged
jbdavid
Community Fellow
*****
Offline



Posts: 378
Silicon Valley
Re: Unreasonable Results of Cadence Spectre
Reply #3 - Dec 18th, 2008, 7:52pm
 
And if you connect both nodes to ground with the SAME value of large resistor you should get the result you expected.

this should be a pretty well known issue for any  longer-term user of spice and/or spectre.

jbd
Back to top
 
 

jbdavid
Mixed Signal Design Verification
View Profile WWW   IP Logged
pancho_hideboo
Senior Fellow
******
Offline



Posts: 1424
Real Homeless
Re: Unreasonable Results of Cadence Spectre
Reply #4 - Dec 18th, 2008, 10:59pm
 
jbdavid wrote on Dec 18th, 2008, 7:52pm:
And if you connect both nodes to ground with the SAME value of large resistor you should get the result you expected.
this should be a pretty well known issue for any  longer-term user of spice and/or spectre.

If we use old spice simulator, simulator doesn't work for such floating inductor, showing error message of NO DC path.

But if we use relative new simulator, simulator can work even for floating inductor.

In RF application, we often uses floating resonator.
http://www.designers-guide.org/Forum/YaBB.pl?num=1229312772



Back to top
 
« Last Edit: Dec 19th, 2008, 12:32am by pancho_hideboo »  
View Profile WWW Top+Secret Top+Secret   IP Logged
Pages: 1
Send Topic Print
Copyright 2002-2024 Designer’s Guide Consulting, Inc. Designer’s Guide® is a registered trademark of Designer’s Guide Consulting, Inc. All rights reserved. Send comments or questions to editor@designers-guide.org. Consider submitting a paper or model.