为什么CPU中有锁相环?

电器工程 中央处理器 pll
2022-02-01 15:46:56

我读到 CPU 中使用 PLL 来生成时钟,但我不明白为什么。

我真的不知道为什么会这样。

4个回答

有几个原因。锁相环或 PLL 是一种用于生成稳定频率的电路,该频率与某个参考频率具有特定的数学关系。具体来说,它是一种用于控制某种电可调谐振荡器(通常是压控振荡器,或 VCO)的电路,以便其输出与由某种稳定参考提供的参考频率保持特定关系(通常是晶体、晶体振荡器或硅 MEMS 振荡器)。

PLL 的工作原理是使用分频器对 VCO 的输出和参考输入进行分频,然后比较这些分频输出的频率和相位,并调整 VCO 控制电压,直到频率和相位对齐。

PLL 有可能产生比参考频率高得多的频率——例如,100 MHz 的参考频率可以乘以几 GHz。如果 PLL 集成在使用高频输出的同一芯片上,则可以通过降低通过电路板走线发送的频率来节省功率并降低 EMI。它还使电路板布局更简单。

由于这种关系是通过简单的分频器确定的,而且构建可编程分频器非常简单,因此只需更改分频器设置即可轻松更改 PLL 的输出频率。这可以使用称为动态频率缩放的技术实现节能,其中频率根据所需的处理器性能进行调整以降低功耗。它还支持基于软件的频率配置,这使得系统的设计更加灵活,因为软件可以根据检测到的硬件决定在启动时使用哪些设置(例如,查看 CPU 插座引脚绑定或读取 SPD引导期间 RAM 模块上的 EEPROM 内容)。

在现代 CPU 中,将存在多个 PLL,用于为各种组件提供时钟。现代 CPU 具有高集成度,因此过去位于单独芯片上的组件越来越多地集成到一个芯片上——现代 CPU 上不仅仅是一个处理核心和一个前端总线。处理核心本身将在一个或多个时钟上运行,这些时钟由一个或多个 PLL 提供,因此可以轻松调整核心时钟,并且可能可以独立调整。PCI express 接口还需要 PLL,可能需要多个 PLL 来支持不同链路速率的操作。串行 ATA 连接同样以不同的速度运行,因此将有自己的 PLL。QPI、超传输、USB 3、HDMI、显示端口等也是如此。内存接口可能需要不同的 PLL 来生成已安装内存所需的特定时钟频率。所有这些 PLL 都将在主板上使用相同的(相对)低频参考振荡器。

去过也做过。

除了这里提到的其他原因之外,还有一个不同的原因:
营销人员希望使芯片设计尽可能便宜。因此他们更喜欢使用廉价的水晶。用于以太网的属于该类别。因此,您通常最终不得不使用 25MHz 晶体。

同时营销需要强大的处理器。因此处理器(我们称之为 LEG ++)应该能够以 1 或 2 GHz 运行。
做到这一点的唯一方法是使用 PLL。

或者处理器可以运行在最高 64MHz,但他们想要一个需要 48MHz 时钟的 USB 接口。再次使用 PLL 进行救援。

++ LEG 不是注册商标。(至少据我所知)

PLL 可用于倍频和分频。具有 PLL 来生成其时钟的 CPU 是高度可重新配置的。时钟速度可以相对于外部参考时钟在很宽的范围内变化,正是 PLL 使这成为可能。

PLL 主要用于从参考时钟生成一个或多个更快或更慢的时钟。

您可能会说一个固定的 100MHz 晶体,但随后想以 2GHz 运行 CPU,因此需要 PLL 来提高频率(2GHz 时钟晶体不可行)。

此外,您可能希望能够动态更改 CPU 频率(例如涡轮时钟)。在这种情况下,您可以拥有一个可重新配置的 PLL。

此外,您可能需要与 CPU 时钟不同的内存或外围时钟。同样,PLL 和分频器可用于从单个参考生成此信号。