The Designer's Guide Community Forum
https://designers-guide.org/forum/YaBB.pl
Modeling >> Behavioral Models >> VCO behavior modeling
https://designers-guide.org/forum/YaBB.pl?num=1235309563

Message started by bandpass on Feb 22nd, 2009, 5:32am

Title: VCO behavior modeling
Post by bandpass on Feb 22nd, 2009, 5:32am

I use the kundert's VCO modeling and find some problen when do simulation in Hspice.

The problems: the VCO works well under 10uS, but the output is wrong when tran simulation larger than 10uS.

 I don't know what's wrong?

you can get the result use attachment hspice netlist.

 Thanks,

Title: Re: VCO behavior modeling
Post by pancho_hideboo on Feb 22nd, 2009, 8:43pm

Your problem is not "Behavioral Models" at all. It is no more than simple and easy common usage of simulator.


bandpass wrote on Feb 22nd, 2009, 5:32am:
The problems: the VCO works well under 10uS, but the output is wrong when tran simulation larger than 10uS.
This is due to very very simple and easy reason.
You are trying to plot too many points(200u/1p=200Mpts).
In your environment, data points upto 10Mpts(=10u/1p) are permissible.

And you don't specify "delmax" in your netlist.

When you do transient analysis, you have to consider reasonable values setting about tstop, tstep, delmax, trise and tfall.
This is very common sense which is true for any vendor's simulator.

Modified vco.sp

Quote:
** Generated for: hspiceD
** Generated on: Feb 17 19:55:41 2009
** Design library name: beh_kundert
** Design cell name: PLL_usb_sim
** Design view name: schematic

.hdl "vco.va"

.TEMP 25.0

** Library name: beh_kundert
** Cell name: PLL_usb_sim
** View name: schematic
xi1 out in vco vmin=0 vmax=1 fmin=1.5e9 fmax=3e9 vl=0 vh=1.2 tt=100e-15 ttol=100e-15
*xi1 out in vco3_kundert *vmin=0 vmax=1 fmin=1.5e9 fmax=3e9 vl=0 vh=1.2 tt=100e-15 ttol=100e-15
v1 in 0 DC=1 *AC 1 PULSE 0 1.2 0 1e-9 1e-9 9e-9 20e-9
*i9 clk_fb div25_out divider1 vh=1.2 vl=0 vth=600e-3 ratio=2 dir=1 tt=1e-12 td=1e-12

.OPTION
*+    ARTIST=2
+    INGOLD=2
+    MEASOUT=1
+    PARHIER=LOCAL
*+    PSF=2
+    post = 1
+    probe
+    delmax = 0.1n       $ maximum internal time step


*.OP

*.TRAN 1e-12 200e-6 START=0.0
.TRAN 10n 200u START=0.0

* 200u/1p=200Mpts  <--- Your Setting
* 200u/10n=20kpts  <--- My Setting

.probe tran V(in) V(out)


.END


Title: Re: VCO behavior modeling
Post by bandpass on Feb 23rd, 2009, 4:39am

Thank you very much. The problems are resolved due to your advice.

Thank you.




pancho_hideboo wrote on Feb 22nd, 2009, 8:43pm:

bandpass wrote on Feb 22nd, 2009, 5:32am:
The problems: the VCO works well under 10uS, but the output is wrong when tran simulation larger than 10uS.
This is due to very very simple and easy reason.
You are trying plot too many points(200u/1p=200Mpts)

You have to consider reasoble value setting about tstop, tstep, delmax, trise and tfall.

Modified vco.sp

Quote:
** Generated for: hspiceD
** Generated on: Feb 17 19:55:41 2009
** Design library name: beh_kundert
** Design cell name: PLL_usb_sim
** Design view name: schematic

.hdl "vco.va"

.TEMP 25.0

** Library name: beh_kundert
** Cell name: PLL_usb_sim
** View name: schematic
xi1 out in vco vmin=0 vmax=1 fmin=1.5e9 fmax=3e9 vl=0 vh=1.2 tt=100e-15 ttol=100e-15
*xi1 out in vco3_kundert *vmin=0 vmax=1 fmin=1.5e9 fmax=3e9 vl=0 vh=1.2 tt=100e-15 ttol=100e-15
v1 in 0 DC=1 *AC 1 PULSE 0 1.2 0 1e-9 1e-9 9e-9 20e-9
*i9 clk_fb div25_out divider1 vh=1.2 vl=0 vth=600e-3 ratio=2 dir=1 tt=1e-12 td=1e-12

.OPTION
*+    ARTIST=2
+    INGOLD=2
+    MEASOUT=1
+    PARHIER=LOCAL
*+    PSF=2
+    post = 1
+    probe
+    delmax = 1e-10       $ maximum internal time step

*.OP

*.TRAN 1e-12 200e-6 START=0.0
.TRAN 10n 200u START=0.0

* 200u/1p=200Mpts
* 200u/10n=20kpts

.probe tran V(in) V(out)

.END


The Designer's Guide Community Forum » Powered by YaBB 2.2.2!
YaBB © 2000-2008. All Rights Reserved.