|
发表于 2024-12-13 15:01:40
|
显示全部楼层
我个人比对了两个计算PN_PC的公式,楼主Pnoise_PLL.m的脚本用的应该是电流PSD的公式,当然我找到的另一个Phase_Noise系列的脚本既包含了电压PSD公式也包含了电流PSD公式去计算PN_CP。俩脚本主要的区别是PC/PCL的csv输出格式/单位("magnitude"V/根号下Hz、"power"V的平方/Hz、"power dB10 = magnitude dB20"分贝),一个是dB,一个是power,PN_PCL/PC公式里包含dB10相关公式"10log10xxx"。
除此之外,我自己使用了好几种方式,包括:
Plan A.对PFD+CP联仿(接vdc而不是10fF电容,pss+pnoise仿真出电流型噪声)并单独仿真LPF noise;
Plan B.对PFD+CP+LPF联仿(接vdc,pss+pnoise仿真出电流型噪声);
Plan C.对PFD+CP+LPF联仿(除LPF外啥电容都不接,pss+pnoise,output设置为Vctrl)。
对于Plan A而言我分别使用了楼主Pnoise_PLL.m的脚本和Phase_Noise.m脚本,结果一致。
而对于输出相噪而言,Plan A和C的结果较为一致(-102.5dB左右),Plan B的结果绝对值来说稍大一些(-103.3dB)。
我个人所使用的是IC617,以下附我的Matlab脚本以及所使用的csv文件,希望对大伙有所帮助。
PS:csv文件可以通过pss+pnoise/noise仿真后direct plot选择pnoise/noise,然后选择对应格式/单位,plot为波形,随后选中需要生成csv的波形,右键Send to->Table->New window,在弹出的界面中选中对应2列并点击左上角View->Format改一下数据的有效数字,最后点击左上角的保存即可。 |
-
-
PN_SIM.zip
736.53 KB, 下载次数: 21
, 下载积分:
资产 -2 信元, 下载支出 2 信元
|