PLL&DLL

前言

SOC中不同IP的时钟基本都是晶振通过PLL不同倍频和分频得到的。对于DLL ,SOC中暂时没有遇到过,但是DDR颗粒中,DDR系列一般采用DLL实现工作时钟的同步,CK与DQS。对于LPDDR系列一般采用Internal Interval Timer,实现对DQS延迟的对齐。

这里先记录一下PLL和DLL的笔记;后续再补充

一 PLL Phase-Locked Loop

由鉴相器、环路滤波器和压控振荡器组成,鉴相器用来鉴别输入信号Ui与输出信号Uo之间的相位差,并输出误差电压Ud。Ud中的噪声和干扰成分被低通性质的环路滤波器滤除。形成压控振荡器(Vco)的控制电压Uc,Uc作用于压控振荡器的结果是把它的输出震荡频率fo拉向环路输入信号频率fi,当二者相等时,环路被锁定,称为入锁。PLL并不是直接对晶振进行倍频,而是将频率稳定的晶振作为基准信号,与PLL内部振荡电路生成的信号分频后进行比较,使PLL输出的信号频率稳定,工作原理如下图所示。

PLL的基本模块为误差检波器(由鉴频鉴相器和电荷泵组成)、环路滤波器、 VCO和反馈分频器。负反馈强制误差信号e(s)在反馈分频器输出和基准频率处于锁相和锁频状态且FO= NFREF 的点处接近0。
  根据图1,当系统使用PLL来生成高于输入的频率时, VCO会以角频率ωO振荡。该信号的一部分会通过分频器以1/N的比率回馈到误差检波器。这种经过分频的频率会馈入误差检波器的其中一个输入端。本例中,另一路输入为固定参考信号。误差检波器会比较两个输入端的信号。当这两个信号输入的相位和频率相等时,误差为常数,环路则处于“锁定”条件下。
 

鉴频鉴相器

       图3中的鉴频鉴相器将+IN端的FREF输入与和-IN端的反馈信号进行比较。它使用两个D型触发器和一个延迟元件。一路Q输出使能正电流源,另一路Q输出使能负电流源。这些电流源就是所谓电荷泵。有关PFD操作的更多详细信息,请参阅"用于高频接收器 和发射器的锁相环"。

        

       使用这种架构,下面+IN端的输入频率高于-IN端(图4),电荷泵输出会推高电流,其在PLL低通滤波器中积分后,会使VCO调谐电压上升。这样,-IN频率将随着VCO频率的提高而提高,两个PFD输入最终会收敛或锁定到相同频率(图5)。如果-IN频率高于+IN频率,则发生相反的情况。

        

高频整数N分频架构

       为了产生一系列更高频率,应使用VCO,其调谐范围比VCXO更宽。这常用于跳频或扩频跳频(FHSS)应用中。在这种PLL中,输出是参考频率的很多倍。压控振荡器含有可变调谐元件,例如变容二极管,其电容随输入电压而改变,形成一个可调谐振电路,从而可以产生一系列频率(图9)。PLL可以被认为是该VCO的控制系统。

       反馈分频器用于将VCO频率分频为PFD频率,从而允许PLL生成PFD频率倍数的输出频率。分频器也可以用在参考路径中,这样就可以使用比PFD频率更高的参考频率。ADI公司的 ADF4108 就是这样的PLL。PLL计数器是电路中要考虑的第二个基本元件。

        

参考链接:

锁相环(PLL)基本原理

基本原理
锁相环PLL是由一个鉴相器(PD)、低通滤波器(LPF)和压控振荡器(VCO)组成。
锁相环的最基本配置是将参考信号(FR)的相位与可调反馈信号F0的相位进行比较,如图1所示。此一电路的中心为相位此较器。如果此两个信号之间有相位差存在时,便会产生相位误差信号输出。利用此一误差信号,可以控制VCO的振荡频率,使VCO的相位与基准信号的相位(也即是频率)成为一致。

① 鉴相器(PD)
在此一电路中,假设fr>fo时,也即是VC0的振荡频率fo比fr低时。此时的相位比较器的输出PD会如图2所示,产生正脉波信号,使VCO的振荡器频率提高。相反地,如果fr<fo时,会产生负脉波信号。


② 低通滤波器(LPF)
此一PD脉波信号经过回路滤波器(LoopFilter)的积分,便可以得到直流电压VR,可以控制VCO电路。

③ 压控振荡器(VCO)
由于控制电压VR的变化,VCO振荡频率会提高。结果使得fr=f0在f与f的相位成为一致时,PD端子会成为高阻抗状态,使PLL(锁相环)被锁栓(Lock)。

锁相环的工作原理

锁相环中的鉴相器通常由模拟乘法器组成,利用模拟乘法器组成的鉴相器电路如图8-4-2所示。

鉴相器的工作原理是:设外界输入的信号电压和压控振荡器输出的信号电压分别为:

(8-4-1)

(8-4-2)

式中的ω0为压控振荡器在输入控制电压为零或为直流电压时的振荡角频率,称为电路的固有振荡角频率。则模拟乘法器的输出电压uD为:

用低通滤波器LF将上式中的和频分量滤掉,剩下的差频分量作为压控振荡器的输入控制电压uC(t)。即uC(t)为:

(8-4-3)

式中的ωi为输入信号的瞬时振荡角频率,θi(t)和θo(t)分别为输入信号和输出信号的瞬时相位,根据相量的关系可得瞬时频率和瞬时相位的关系为:

(8-4-4)

则,瞬时相位差θd为

(8-4-5)

对两边求微分,可得频差的关系式为

(8-4-6)

上式等于零,说明锁相环进入相位锁定的状态,此时输出和输入信号的频率和相位保持恒定不变的状态,uc(t)为恒定值。当上式不等于零时,说明锁相环的相位还未锁定,输入信号和输出信号的频率不等,uc(t)随时间而变。

因压控振荡器的压控特性如图8-4-3所示,该特性说明压控振荡器的振荡频率ωu以ω0为中心,随输入信号电压uc(t)的变化而变化。该特性的表达式为

上式说明当uc(t)随时间而变时,压控振荡器的振荡频率ωu也随时间而变,锁相环进入“频率牵引”,自动跟踪捕捉输入信号的频率,使锁相环进入锁定的状态,并保持ω0=ωi的状态不变。

参考链接:

知乎

二 DLL

1. DLL(Delay Loop Lock)延迟锁相环

主要用在数字电路中,用作相位延迟补偿、时钟调整;
主要结构如下:
在这里插入图片描述

主要工作原理:
基于数字抽样,在输入时钟和输出时钟之间插入buffer,通过控制逻辑决定延迟级数,来控制输入时钟和反馈时钟上升沿一致;
时钟分布网络将时钟送到内部寄存器的时钟端口,控制逻辑对输入时钟和反馈时钟进行抽样、比较、调整延迟线的长度

DDR中 DLL

DDR SDRAM对时钟的精确性有着很高的要求,而DDR SDRAM有两个时钟,一个是外部的总线时钟,一个是内部的工作时钟,在理论上DDR SDRAM这两个时钟应该是同步的,但由于种种原因,如温度、电压波动而产生延迟使两者很难同步,更何况时钟频率本身也有不稳定的情况(SDRAM也内部时钟,不过因为它的工作/传输频率较低,所以内外同步问题并不突出)。DDR SDRAM的tAC就是因为内部时钟与外部时钟有偏差而引起的,它很可能造成因数据不同步而产生错误的恶果。实际上,不同步就是一种正/负延迟,如果延迟不可避免,那么若是设定一个延迟值,如一个时钟周期,那么内外时钟的上升与下降沿还是同步的。鉴于外部时钟周期也不会绝对统一,所以需要根据外部时钟动态修正内部时钟的延迟来实现与外部时钟的同步,这就是DLL的任务。

DLL不同于主板上的PLL,它不涉及频率与电压转换,而是生成一个延迟量给内部时钟。目前DLL有两种实现方法,一个是时钟频率测量法(CFM,Clock Frequency Measurement),一个是时钟比较法(CC,Clock Comparator)。

CFM是测量外部时钟的频率周期,然后以此周期为延迟值控制内部时钟,这样内外时钟正好就相差了一个时钟周期,从而实现同步。DLL就这样反复测量反复控制延迟值,使内部时钟与外部时钟保持同步。

12

CFM式DLL工作示意图

CC的方法则是比较内外部时钟的长短,如果内部时钟周期短了,就将所少的延迟加到下一个内部时钟周期里,然后再与外部时钟做比较,若是内部时钟周期长了,就将多出的延迟从下一个内部时钟中刨除,如此往复,最终使内外时钟同步。

13

CC式DLL工作示意图

CFM与CC各有优缺点,CFM的校正速度快,仅用两个时钟周期,但容易受到噪音干扰,并且如果测量失误,则内部的延迟就永远错下去了。CC的优点则是更稳定可靠,如果比较失败,延迟受影响的只是一个数据(而且不会太严重),不会涉及到后面的延迟修正,但它的修正时间要比CFM长。DLL功能在DDR SDRAM中可以被禁止,但仅限于除错与评估操作,正常工作状态是自动有效的。

参考链接:

DDR中DLL

zhihu

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

二哈哈黄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值