subujohn
Newbie level 5
I have designed a 3-stage VCO with 0.9V power supply with minimum frequency of 500MHz and maximum frequency of 8GHz. I have used the following SPICE commands which I took from a post https://www.edaboard.com/threads/127339/
.HBOSC tones=500e6 nharms=10 PROBENODE=fosc,0,0.45 FSPTS=20,500e6,8e9
.PHASENOISE V(fosc) DEC 10 100 8g METHOD=0
*******Results******************
.print hbosc vm(fosc) vp(fosc) vr(fosc) vi(fosc)
.print phasenoise phnoise
.probe phasenoise phnoise
.probe hbosc v(fosc)
fosc is my output node...0.45V is VDD/2 and under FSPTS, I have given the oscillation range, tones=500e6(Just a random value) Is the SPICE code correct for phase noise analysis? Also, how do I analyze the .PRINTPN0 and .PRINTHB0 files?
Contents of PRINTHB0 file
f0
1.1286416409g
HERTZ n0 VM(FOSC) VP(FOSC) VR(FOSC) VI(FOSC)
0.0000000000 0 8.5878128119u 180.0000000000 -8.5878128119u 0.0000000000
1.1286416409g 1 4.1603582153u 0.0000000000 4.1603582153u 0.0000000000
2.2572832818g 2 13.7277055950u 178.5316597593 -13.7231979228u 351.7665069798n
3.3859249227g 3 247.8713431286n -8.8585981500 244.9145853563n -38.1713062929n
4.5145665636g 4 64.2229420993n 160.9003547340 -60.6875293802n 21.0145204472n
5.6432082045g 5 34.6946171945n -164.5487439937 -33.4406654552n -9.2432870880n
6.7718498454g 6 34.3201961151n 152.8069868911 -30.5268571561n 15.6839680422n
7.9004914863g 7 42.4397680505n -13.3088087715 41.2999841208n -9.7696071467n
9.0291331272g 8 8.6330648063n 171.7806931001 -8.5443869418n 1.2342040912n
10.1577747681g 9 8.0793180419n -156.3226513206 -7.3992125853n -3.2445389718n
11.2864164089g 10 6.2554126695n 99.4775928952 -1.0300280034n 6.1700267405n
Contents of PRINTPN0 file
HERTZ NLP_L(f)
100.0000000000 -21.4145874353
125.8925411794 -22.4065812174
158.4893192461 -23.3562407786
199.5262314969 -24.2669568330
251.1886431510 -25.1471456135
316.2277660168 -26.0097319519
398.1071705535 -26.8701864854
501.1872336273 -27.7409831067
630.9573444802 -28.6253278317
794.3282347243 -29.5156192238
1.0000000000k -30.3977576034
1.2589254118k -31.2577635027
1.5848931925k -32.0878767372
1.9952623150k -32.8915641928
2.5118864315k -33.6875630432
3.1622776602k -34.5091724561
3.9810717055k -35.3786377713
5.0118723363k -36.2679268545
6.3095734448k -37.1227198732
7.9432823472k -37.9150293703
10.0000000000k -38.6469690118
12.5892541179k -39.3309853489
15.8489319246k -39.9821150824
19.9526231497k -40.6234797187
25.1188643151k -41.2803449036
31.6227766017k -41.9633790927
39.8107170553k -42.6711296984
50.1187233627k -43.3916793057
63.0957344480k -44.1181263716
79.4328234724k -44.8733181518
100.0000000000k -45.6942299231
125.8925411794k -46.5759853033
158.4893192461k -47.4628655912
199.5262314969k -48.3133648817
251.1886431510k -49.1367321314
316.2277660168k -49.9692660585
398.1071705535k -50.8430608230
501.1872336273k -51.7658844192
630.9573444802k -52.7312797930
794.3282347243k -53.7380651003
1.0000000000x -54.7930447399
1.2589254118x -55.9013024581
1.5848931925x -57.0471742285
1.9952623150x -58.1950976072
2.5118864315x -59.3185039661
3.1622776602x -60.4121522596
3.9810717055x -61.4839907877
5.0118723363x -62.5459801298
6.3095734448x -63.6087489422
7.9432823472x -64.6799727429
10.0000000000x -65.7674658830
12.5892541179x -66.8794257889
15.8489319246x -68.0107764932
19.9526231497x -69.1419584648
25.1188643151x -70.2604425469
31.6227766017x -71.3678145337
39.8107170553x -72.4695388316
50.1187233627x -73.5624557022
63.0957344480x -74.6269113503
79.4328234724x -75.6265038669
100.0000000000x -76.5151082613
125.8925411794x -77.2477433796
158.4893192461x -77.7908121931
199.5262314969x -78.1267211548
251.1886431510x -78.2488686717
316.2277660168x -78.1470397656
398.1071705535x -77.7852116552
501.1872336273x -77.0673589896
630.9573444802x -75.7659834327
794.3282347243x -73.3114320286
1.0000000000g -67.6863407340
1.2589254118g -67.7604163168
1.5848931925g -75.3641724499
1.9952623150g -79.2305973941
2.5118864315g -81.4967203532
3.1622776602g -82.9941797518
3.9810717055g -84.1035468687
5.0118723363g -85.0335458451
6.3095734448g -85.8892170890
7.9432823472g -86.7212094842
10.0000000000g -87.5516665636
.HBOSC tones=500e6 nharms=10 PROBENODE=fosc,0,0.45 FSPTS=20,500e6,8e9
.PHASENOISE V(fosc) DEC 10 100 8g METHOD=0
*******Results******************
.print hbosc vm(fosc) vp(fosc) vr(fosc) vi(fosc)
.print phasenoise phnoise
.probe phasenoise phnoise
.probe hbosc v(fosc)
fosc is my output node...0.45V is VDD/2 and under FSPTS, I have given the oscillation range, tones=500e6(Just a random value) Is the SPICE code correct for phase noise analysis? Also, how do I analyze the .PRINTPN0 and .PRINTHB0 files?
Contents of PRINTHB0 file
f0
1.1286416409g
HERTZ n0 VM(FOSC) VP(FOSC) VR(FOSC) VI(FOSC)
0.0000000000 0 8.5878128119u 180.0000000000 -8.5878128119u 0.0000000000
1.1286416409g 1 4.1603582153u 0.0000000000 4.1603582153u 0.0000000000
2.2572832818g 2 13.7277055950u 178.5316597593 -13.7231979228u 351.7665069798n
3.3859249227g 3 247.8713431286n -8.8585981500 244.9145853563n -38.1713062929n
4.5145665636g 4 64.2229420993n 160.9003547340 -60.6875293802n 21.0145204472n
5.6432082045g 5 34.6946171945n -164.5487439937 -33.4406654552n -9.2432870880n
6.7718498454g 6 34.3201961151n 152.8069868911 -30.5268571561n 15.6839680422n
7.9004914863g 7 42.4397680505n -13.3088087715 41.2999841208n -9.7696071467n
9.0291331272g 8 8.6330648063n 171.7806931001 -8.5443869418n 1.2342040912n
10.1577747681g 9 8.0793180419n -156.3226513206 -7.3992125853n -3.2445389718n
11.2864164089g 10 6.2554126695n 99.4775928952 -1.0300280034n 6.1700267405n
Contents of PRINTPN0 file
HERTZ NLP_L(f)
100.0000000000 -21.4145874353
125.8925411794 -22.4065812174
158.4893192461 -23.3562407786
199.5262314969 -24.2669568330
251.1886431510 -25.1471456135
316.2277660168 -26.0097319519
398.1071705535 -26.8701864854
501.1872336273 -27.7409831067
630.9573444802 -28.6253278317
794.3282347243 -29.5156192238
1.0000000000k -30.3977576034
1.2589254118k -31.2577635027
1.5848931925k -32.0878767372
1.9952623150k -32.8915641928
2.5118864315k -33.6875630432
3.1622776602k -34.5091724561
3.9810717055k -35.3786377713
5.0118723363k -36.2679268545
6.3095734448k -37.1227198732
7.9432823472k -37.9150293703
10.0000000000k -38.6469690118
12.5892541179k -39.3309853489
15.8489319246k -39.9821150824
19.9526231497k -40.6234797187
25.1188643151k -41.2803449036
31.6227766017k -41.9633790927
39.8107170553k -42.6711296984
50.1187233627k -43.3916793057
63.0957344480k -44.1181263716
79.4328234724k -44.8733181518
100.0000000000k -45.6942299231
125.8925411794k -46.5759853033
158.4893192461k -47.4628655912
199.5262314969k -48.3133648817
251.1886431510k -49.1367321314
316.2277660168k -49.9692660585
398.1071705535k -50.8430608230
501.1872336273k -51.7658844192
630.9573444802k -52.7312797930
794.3282347243k -53.7380651003
1.0000000000x -54.7930447399
1.2589254118x -55.9013024581
1.5848931925x -57.0471742285
1.9952623150x -58.1950976072
2.5118864315x -59.3185039661
3.1622776602x -60.4121522596
3.9810717055x -61.4839907877
5.0118723363x -62.5459801298
6.3095734448x -63.6087489422
7.9432823472x -64.6799727429
10.0000000000x -65.7674658830
12.5892541179x -66.8794257889
15.8489319246x -68.0107764932
19.9526231497x -69.1419584648
25.1188643151x -70.2604425469
31.6227766017x -71.3678145337
39.8107170553x -72.4695388316
50.1187233627x -73.5624557022
63.0957344480x -74.6269113503
79.4328234724x -75.6265038669
100.0000000000x -76.5151082613
125.8925411794x -77.2477433796
158.4893192461x -77.7908121931
199.5262314969x -78.1267211548
251.1886431510x -78.2488686717
316.2277660168x -78.1470397656
398.1071705535x -77.7852116552
501.1872336273x -77.0673589896
630.9573444802x -75.7659834327
794.3282347243x -73.3114320286
1.0000000000g -67.6863407340
1.2589254118g -67.7604163168
1.5848931925g -75.3641724499
1.9952623150g -79.2305973941
2.5118864315g -81.4967203532
3.1622776602g -82.9941797518
3.9810717055g -84.1035468687
5.0118723363g -85.0335458451
6.3095734448g -85.8892170890
7.9432823472g -86.7212094842
10.0000000000g -87.5516665636