首页 > 技术 > 内容

FPGA时钟设计方案

时间:2026-01-31  作者:Diven  阅读:0

FPGA项目开发之时钟规划

当我刚开始我的FPGA设计生涯时,我对明显更小、更不灵活的 FPGA(想想 XC4000XL / Clcyone3/4和 Spartan)和工具的非常简单的时钟规则是尽可能只使用单个时钟。当然,这并不总是可能的,但即便如此,时钟的数量仍然有限。

多年来,当我们转向功能更强大的设备和工具后,我们经常能发现自己的设计具有复杂的时钟结构,其中包括有源同步设备,如连接到处理器的 AXI 时钟、信号链时钟,并且需要处理跨时钟域问题(在视频应用中尤其常见)。

这意味着我们有一个复杂的时钟环境——一个很容易出现时钟错误的环境。这将导致时序很难收敛或更产生糟糕的情况,例如引入无意的时钟域交叉错误,从而导致数据或控制信号跟随损坏。

我们将从 7 系列FPGA开始我们的旅程。当我们考虑时钟规划时,我们需要确保使用设备内最合适的资源并了解其内部时钟架构。我们只需要简单的确保时钟信号连接到 IO 上适当的时钟引脚的日子已经一去不复返了。

时钟规划有两个方面。第一个来自设计本身的架构。在这里,在这个架构中,我们决定设计有多少时钟以及之间的关系。理想情况下,除了尽量减少使用的时钟数量外,我们还希望尽可能少地执行跨时钟域。

正是在这个时钟规划期间,我们可以绘制我们的初始时钟架构和相关的复位架构。时钟架构也是我们展示时钟域之间交互的地方,这是我们在编写第一行 HDL 或打开 Vivado 之前应该创建的东西。我们可以从一个简单的图表开始,如下图所示,显示了主要时钟元素,然后随着设计的发展而进一步细化这个图。

一旦我们有了时钟架构,我们就可以将这些时钟映射到目标设备的资源中。7 系列器件具有以下范围的时钟资源。

支持时钟的输入引脚(Clock capable input pins)——支持单个或多个时钟区域

全局时钟(Global clocks )——能够为整个设备提供时钟

区域时钟(Regional clocks)——能够为一个区域(和相邻区域)的时钟提供时钟

IO 时钟(IO clocks)——能够为 IO 结构提供时钟

时钟管理模块(Clock management tiles)——提供先进的时钟结构,例如 MMCM 和 PLL

在内部,FPGA本身被分成几个时钟区域,其中包含 CLB、BRAMDSP、GT、I/O 和其功能。每个区域还包含多个时钟资源,包括支持以下内容的功能:

12个全局时钟

2个跨区域时钟(multi-region clocks )

4个区域时钟(regional clocks)

4 个 IO 时钟

要访问这些,我们使用以下几种缓冲区类型:BUFG、BUFR、BUFIO、BUFMR。还有一个BUFH,是水平时钟(horizontal clock)。全局时钟包含在垂直运行的时钟主干中,水平时钟为时钟区域提供 BUFG 和 BUFH。BUFG 不必位于时钟区域内。

下面的图表可视化的展示了FPGA和区域内的时钟资源。

更过可以查看《UG472》~

我们可以通过时钟架构和对可用资源的充分了解,来确保我们的项目可以得到最佳设计,但是这会对引脚规划产生影响。有一个这样的例子是,如果我们使用 DDR 和 MIG,我们应该确保时钟输入和 CMT 在我们实现 MIG 时位于同一区域。

与所有设计一样,我们需要知道工具是如何实现设计以及使用了哪些资源。

我们可以使用 Vivado 时钟报告(TCL 窗口中的report_clocks)来分析 Vivado 检测到的时钟。将会生成定义时钟。

我们还可以做的一件事是运行时钟利用率报告 (report_clock_utilization),将显示时钟分配给可用资源的情况。

在 SpaceWire 设计示例中,可以看到设计中只使用了几个 BUFG。

我们可以在报告的下方看到全局时钟资源的详细使用情况。

该报告将使我们能够确定我们是否以我们初始架构的方式植入了时钟架构。如果没有,我们需要确定目前工具实现的方式和我们设计的时钟树有什么区别,并分析哪种方式更优。

我们可以运行时钟交互报告和 CDC 报告来帮助了解时钟网络中可能出现的问题。这些报告还可用于确保我们的约束是否生效,尤其是在与设计分析报告和结果质量报告一起运行时。

关于时钟设计后续我们继续以专题方式分享,请持续关注~

审核编辑:汤梓红

猜您喜欢


车床是机械加工中常用的设备,主要用于加工金属或其材料的圆柱形工件。根据不同的功能和用途,车床可以分为多种类型。普通车床是最常见的类型,适用于一般的车削加工。数控...
2011-02-20 00:00:00
插件电阻作为重要的基础元件,应用于各种电子设备的电路设计与制造。Viking(光颉)作为知名的插件电阻品牌,高品质的产品性能和丰富的产品线,赢得了众多客户的青睐...
2017-03-05 07:30:30
RF其IC和模块在现代通信和电子设备中是非常重要的配件。主要用于无线信号的发送和接收,支持各种应用,包括蓝牙、Wi-Fi、Zigbee等短距离通信技术。这些集成...
2011-04-08 00:00:00
电容器是常见的电子元件,应用于电路中。的主要作用是储存电能。本文将探讨电容器的作用与功效。储能功能电容器可以储存电能。通过电场来存储能量。这种储能方式非常快速。...
2025-03-28 02:31:39
工具包是集成多种工具和资源的集合,旨在满足特定任务或需求。通常包含各种功能强大的工具,能够帮助用户高效地完成工作。例如,在软件开发中,工具包可能包含编程语言的库...
2019-07-16 00:00:00
TO252-5是广泛应用于电子设备中的封装类型,主要用于半导体器件,如功率MOSFET和集成电路。随着科技的不断进步,电子产品对封装形式的要求也越来越高,因此了...
2025-02-21 10:57:29
你是否想过,家里的电器明明都在正常工作,电表却走得飞快?这可能是功率因数在捣鬼。简单来说,功率因数修正 (Power Factor Correction,简称P...
2023-12-26 00:00:00
其实变频器自己也可以工作,不用PLC控制也可以的,比如ABB的ACS510就用一个压力变送器,就能控制好几台电机的恒压供水系统,完全不用PLC ,它自己所内置的...
2019-07-06 11:22:00
防浪涌电阻作为保护电路的重要元件,起到了稳定电压、防止过电压损坏的关键作用。振华科技作为国内知名的电子元器件制造商,其防浪涌电阻产品以高性能、高可靠性,应用于电...
2019-07-10 21:47:30
现代电子设备和连接技术中,CONN_16X4MM_TM作为一种重要的连接器,越来越受到行业的关注。它不仅在设计上体现了优良的工艺,还在功能上满足了多种应用需求。...
2025-03-09 10:25:43