FPGA设计中动态时钟的使用方法

时间:2025-06-13  作者:Diven  阅读:0

时钟是每个 FPGA 设计的核心。如果我们正确地设计时钟架构、没有 CDC 问题并正确进行约束设计,就可以减少与工具斗争的时间。

FPGA设计中动态时钟的使用方法

但对于某些应用,我们希望能够更改某些IP中的时钟频率。其中一个例子是在图像处理管道中,输出分辨率可以动态变化,从而需要改变像素时钟。

众所周知,我们可以在 Zynq SoC 和 Zynq MPSoC 中使用结构时钟并在运行时更改结构时钟的频率。但是,如果我们在 Zynq 或 ZYNQ MPSoC 中使用 FPGA 或 PL,我们仍然可以使用动态配置的时钟向导在运行时更改频率。

动态配置时钟允许我们使用 AXI 接口在运行时更改时钟频率。为了创建一个简单的示例,我们将实例化PS并将动态配置时钟IP连接到主 AXI 接口。我们将输出时钟连接到 IO 引脚,以便我们可以对其进行观察并查看频率的变化。上面的时钟是我们打算使用的最大频率,这样可以确保时序约束和时序性能正确。下图是我们这次demo的最终设计。接下来我们将在 Vitis 中开发软件,并且将在设计中的 IP 下看到相关驱动及文档。

开发这个IP的驱动和其 AXI Lite 接口一样,需要对IP寄存器空间进行写入和读取。

要更改时钟频率输出,我们有两种选择。如果只生成一个时钟,我们可以使用名为 SetRate 的函数。该函数将通过AXI Lite总线传递到IP中,IP会给出我们所需的频率输出,并计算必要的分频器、乘法器和相位参数实现所需的输出频率。

如果我们有多个时钟,那么我们需要分别计算这些寄存器的值并单独更新时钟寄存器(每个时钟有两个寄存器)。

这里有个注意点就是在进行时钟更改前最好等待IP锁定到之前的频率后再进行新操作。

更改频率的代码还是比较简单的,如下:当然,我们也可以使用类似的方法,通过将时钟频率降低来实现不同功耗模式下 FPGA 的功耗,从而实现降低功耗的功能。

猜您喜欢

发光二极管(LED,Light Emitting Diode)是能够将电能转化为光能的半导体器件。由于其高效、节能和长寿命的特性,LED应用于照明、显示屏、信号...
2025-03-31 00:31:40

公文包规格尺寸是多少?这是许多职场人士在选择公文包时常常遇到的问题。公文包的尺寸通常因品牌和设计而异,但大致可以分为几种常见规格。标准的公文包尺寸一般为36厘米...
2011-11-23 00:00:00


圆形端子因其独特的设计和优越的性能,应用于各类电子设备中。圆形端子的连接稳定性极高,能够有效防止因振动或移动而导致的松脱现象,确保设备在各种环境下正常运行。其良...
2021-11-11 00:00:00

MAX232 是应用于电子电路中的双电源 RS-232 串行通信接口芯片,以其高效稳定的性能著称。为了确保 MAX232 能够正常可靠地工作,其电荷泵电路的电容...
2024-01-14 00:00:00

快速精准识别贴片电阻,从此告别繁琐查表!还在为辨认小小的贴片电阻上的数字而烦恼吗?下载贴片电阻识别App,只需轻松一拍,即可快速准确地识别电阻值。这款App拥有...
2024-11-26 11:29:19

继电器模块是电子设备中常用的控制元件,参数直接影响到其性能和应用。继电器模块的额定电压是一个重要参数,通常包括直流和交流两种形式,常见的有5V、12V和220V...
2014-05-26 00:00:00

贴片元件(电阻、电容、电感)在电子产品中是很重要的配件,其质量直接影响产品的性能和可靠性。为了确保产品质量,必须对贴片元件进行严格的检验。以下是一些常用的检验标...
2024-11-29 10:26:05

电子电路设计中,二极管是最基本的元件。有多种类型,其中稳压二极管和普通二极管是两种常见的类型。虽然在基本结构上相似,但在功能和应用上却有显著的区别。本文将详细探...
2025-03-30 05:01:39

互感器和电磁感应器在现代社会中是重要配件,应用于多个领域。在电力系统中,互感器用于测量电流和电压,确保电力设备的安全运行。能够高效地将高电压转换为可管理的低电压...
2012-08-16 00:00:00