MaZhaoxin's Blog

Keep thinking, keep moving

基于Jekyll创建免费的静态博客站点

Update @2021/01/01 Coding.net经过屡次更新,已经不适合我这样的白嫖用户了。推荐使用github来搭建,步骤是类似的。 这篇算是交作业了。 写在前面的话 无意中在知乎看到了一个关于支持Markdown的博客平台的回答,结识了Jekyll。正好想更换博客平台,就查了些资料。 在建站时参考了Jekyll搭建个人博客和如何搭建个人网站,又无意中看到...

关于IP Reuse

1. 为什么和什么(Why and What) 在芯片的设计过程中,尤其是复杂的SoC芯片迭代设计中,经常需要根据产品定位增加或删减部分功能,如果把这些模块做好后打包放置于某处供其他项目调用,既可以节省开发成本、缩短开发周期,又可以充分验证电路,保证可靠性。 有哪些IP适合这么做呢?BG、DCDC、LDO、ADC、DAC、PLL、XO、SerDes、Aux、TempSensor、Proc...

SDM对分频器输出信号相位噪声的影响

SDM是PLL里很重要的一个噪声源,下面分析一下SDM对NDIV输出时钟相噪的影响。 NDIV的输出 首先,SDM输出信号的噪声是量化噪声的$\mathrm{sdm\_order}$次差分(具体推导暂且不提),而量化噪声是在$[-f_s/2 , +f_s/2]$范围内均匀分布,噪声功率为$\Delta^2/12$,差分的传函是$1-z^{-1}$,则有 \[\begin{eqnar...

LO Frequency Plan

概述 LO DIV是位于VCO和mixer之间的模块,其作用是分频和驱动长走线,设计难点在于底噪。 不同的band有不同的频率覆盖范围,为了减小VCO的设计难度需要选择合适的分频方案。E-UTRA规定的band与频率的对应关系在3GPP或wikipedia上可以查到。 一般来说,决定了所要支持的band、分频比步长、基本分频器、VCO的最高频率以及VCO的个数,最佳的LO分频方案就...

在Simulink中创建自己的Library

前面说了一些常用的PLL行为模型,为了方便后续的调用,可以在simulink中创建个library进行管理。 步骤如下: 新建library。 把封装好的subsystem复制到新的library中,并保存。此时各模块的属性就是从browser中调用时的默认属性。 在.mdl文件同目录下创建名为blkStruct.m的函数,内容如下所...

由相位噪声曲线计算积分相噪和Jitter的方法

先放一张忘了从哪扒下来的图: Update @20240509 Ref: https://www.analog.com/media/en/training-seminars/tutorials/MT-008.pdf 基本思路: 分段求积分相噪,相加得整体的积分相噪,进而得到以弧度为单位的相位抖动,最终转换为以时间为单位的Jitter。 MATLAB代码: function...

理想倍频器/分频器对相噪/杂散的影响

结论 使用理想倍频器将信号频率提高 $N$ 倍,会让相噪抬高$20log_{10}(N)$dB,类似的$N$分频会让相噪降低$20log_{10}(N)$dB。 理想倍频器 对于信号 $f(t) = cos(\omega t + \phi(t))$,倍频器的功能是把$cos$函数的参数(相位)增大$N$倍,即任何相位域的噪声都会放大$N$倍,即相位噪声抬高$20log_{10}(N)$dB...

PLL Simulink行为模型

VCO 根据配置的参数计算当前的频率,然后进行循环积分,然后转成方波输出。 NDIV 主要由两个triggered subsysterm组成,分别是prescaler和PSC,注意由于存在收敛性问题,需要把input的Latch input by delaying outside signal选项勾上。 SDM 对于这种本身就是数字时序电路的模块来说,最简单的办法就是直接用trigg...

PLL行为级仿真

一、MatlabSimulink PhaseLocked Loop tutorial http://www.mathworks.com/matlabcentral/fileexchange/14868-phase-locked-loop-tutorial/ 包括PFD&CP PLL、线性PLL、数字PLL等若干模型 PhaseLocked Loop Synthesis and...

Matlab根据相噪计算抖动

来源:http://www.mathworks.cn/matlabcentral/fileexchange/22038-phase-noise-to-jitter/content/Pn2Jitter.m function Jitter = Pn2Jitter(f, Lf, fc) % % Summary: Jitter (RMS) calculation from phase noise ...