一、PLL基础概念

1.1 什么是PLL

PLL,全称Phase-Locked Loop,中文叫锁相环。

说白了,它就是一个能产生稳定高频时钟的电路模块。你给它一个参考时钟,比如50MHz的晶振,它能给你输出一个频率更高、相位同步的时钟,比如1GHz。

我刚开始接触PLL时,总觉得它像个黑盒子。输入一个低频信号,输出一个高频信号,中间到底发生了什么?后来做项目多了,才慢慢理解它的精妙之处。

PLL的核心能力,我总结为三点:

  • 频率合成:从低频参考时钟生成高频时钟
  • 相位同步:输出时钟的相位与输入时钟保持固定关系
  • 抖动滤除:对输入时钟的噪声有一定的抑制能力

1.2 PLL在数字系统中的作用

你想想看,一个数字芯片里,CPU、DDR、PCIe、USB……每个模块需要的时钟频率都不一样。总不能给每个模块都配一个晶振吧?成本受不了,面积也受不了。

PLL就是来解决这个问题的。它负责把板级晶振的低频时钟,倍频成芯片内部各个模块需要的高频时钟。

我在一个SoC项目中遇到过这样的情况:CPU需要1.2GHz,DDR需要800MHz,USB需要480MHz。如果不用PLL,这板子得挂多少个晶振?

具体来说,PLL在数字系统中的作用包括:

  • 时钟生成:为不同模块提供各自所需的时钟频率
  • 时钟去抖:滤除参考时钟上的高频噪声
  • 时钟相位调整:通过调整输出相位,满足时序收敛要求
  • 时钟分频/倍频:灵活调整时钟频率,适应不同工作模式

重要提醒:PLL不是万能的。它有自己的锁定时间、抖动指标和功耗限制。选型时一定要看数据手册,别想当然。

1.3 PLL的基本架构

一个典型的PLL由五个基本模块组成。我习惯把它们串起来理解:

参考时钟 → 鉴频鉴相器(PFD) → 电荷泵(CP) → 环路滤波器(LF) → 压控振荡器(VCO) → 输出时钟

然后从输出端引一路回来,经过分频器(Divider)反馈到PFD的另一个输入端。这样就形成了一个闭环。

下面这张图是我画的PLL基本架构,你看一眼就明白了:

PLL基本架构框图 参考时钟 PFD 鉴频鉴相器 CP 电荷泵 LF 环路滤波器 VCO 压控振荡器 输出 Divider 分频器 参考时钟 → PFD(比较相位差) → CP(产生充放电电流) → LF(滤除高频噪声) → VCO(产生高频时钟) → 输出

每个模块都有自己的活要干。我一个个说:

鉴频鉴相器(PFD)

PFD负责比较参考时钟和反馈时钟的相位差。它输出两个信号:UP和DOWN。

  • 如果参考时钟相位领先,UP信号就拉高
  • 如果反馈时钟相位领先,DOWN信号就拉高
  • 如果两者相位一致,UP和DOWN都保持低电平

我曾经调试过一个PLL,发现锁定时间特别长。查了半天,原来是PFD的死区设置太大了。死区这东西,说白了就是PFD对微小相位差不敏感的区域。死区太大,锁定就慢;死区太小,又容易误触发。嗯,这里要平衡。

电荷泵(CP)

CP把PFD输出的UP/DOWN信号,转换成电流信号。UP有效时,CP向环路滤波器注入电流;DOWN有效时,CP从环路滤波器抽取电流。

我建议你在设计CP时,特别注意电流源的匹配。UP和DOWN的电流如果不一致,PLL锁定后会有静态相位误差。这个误差虽然不大,但在高速接口中可能会引起问题。

环路滤波器(LF)

LF通常是一个低通滤波器,由电阻和电容组成。它的作用是把CP输出的电流脉冲,平滑成一个稳定的电压信号,用来控制VCO。

环路滤波器的参数设计,直接决定了PLL的带宽、锁定时间和抖动性能。我一般会用二阶或三阶的滤波器结构。阶数越高,滤波效果越好,但稳定性也越难保证。

我的经验:环路带宽一般设为参考时钟频率的1/10到1/20。太宽了,抖动抑制差;太窄了,锁定时间太长。这个折中,你得根据具体应用来权衡。

压控振荡器(VCO)

VCO是PLL的核心。它根据控制电压的大小,产生不同频率的时钟信号。

VCO的增益(Kvco)是个关键参数。增益太高,VCO对噪声太敏感;增益太低,频率调节范围又不够。我一般选Kvco在100MHz/V到1GHz/V之间,具体看工艺和频率范围。

VCO的相位噪声也很重要。我记得有一次做SerDes项目,PLL的抖动指标死活过不了。后来发现是VCO的电源噪声耦合进来了。加了LDO和去耦电容后,问题才解决。

分频器(Divider)

分频器把VCO输出的高频时钟,分频成与参考时钟频率相近的信号,然后反馈给PFD。

分频比N决定了输出频率与参考频率的关系:

Fout = N × Fref

比如参考时钟是50MHz,分频比N=20,那么输出频率就是1GHz。

分频器有整数分频和分数分频两种。整数分频结构简单,但频率分辨率受限。分数分频可以实现更精细的频率步进,但会引入小数杂散。我在做无线通信芯片时,就不得不用分数分频来满足信道间隔的要求。

注意:分频器的功耗往往被低估。在高速PLL中,分频器的工作频率很高,功耗可能占到PLL总功耗的30%以上。设计时一定要做功耗评估。

1.4 各模块之间的配合

这五个模块不是孤立的。它们通过反馈环路形成一个整体。

我打个比方:PFD像是一个裁判,比较两个时钟谁快谁慢。裁判给出指令后,CP和LF负责执行,把指令转换成控制电压。VCO是运动员,根据控制电压调整自己的速度。分频器则是计分员,把运动员的成绩换算成裁判能看懂的数字。

整个环路的工作过程是这样的:

  1. 上电后,VCO自由振荡,输出一个初始频率
  2. 分频器把VCO输出分频后,送给PFD
  3. PFD比较参考时钟和反馈时钟的相位差
  4. CP根据相位差,向LF注入或抽取电流
  5. LF平滑电流,产生控制电压
  6. 控制电压调整VCO的频率,使输出频率向目标值靠近
  7. 重复步骤2-6,直到相位差为零,PLL锁定

这个过程需要一定的时间,称为锁定时间。我一般会预留几百微秒到几毫秒的锁定时间,具体取决于环路带宽和分频比。

模块 功能 关键参数 常见问题
PFD 比较相位差 死区、工作频率 死区过大导致锁定慢
CP 电流充放电 电流大小、匹配度 电流不匹配导致静态相位误差
LF 平滑电压 带宽、阶数 带宽设计不合理导致稳定性问题
VCO 产生高频时钟 增益、相位噪声 电源噪声耦合影响抖动
Divider 分频反馈 分频比、功耗 高速分频器功耗大

好了,PLL的基础概念就讲到这里。这些内容虽然基础,但很重要。后面的章节我们会深入讨论PLL的状态跳转和锁定过程,到时候这些基础知识都会用上。

一句话总结:PLL就是一个通过负反馈实现频率和相位同步的闭环系统。理解每个模块的作用和它们之间的配合,是掌握PLL设计的第一步。

可可精品资料库