vivado 7 系列器件时钟

ops/2025/2/13 19:25:50/
7 系列器件时钟
注释: 本章节以 Virtex ® -7 时钟源为例。 Virtex-6 的时钟资源与此类似。如果使用不同的架构,请参阅有关器件的 《时
钟资源指南》 [ 参照 40]
Virtex-6 Virtex-7 器件内含 32 个称为 BUFG 的全局时钟缓存。 BUFG 可满足设计的大部分时钟需求,且对时钟数量、
设计性能及时钟控制要求不高。全局时钟资源包括 BUFG BUFGCE BUFGMUX BUFGCTRL 原语,每个都有自己的
特性。如需了解有关全局时钟组件特性的信息,请参阅有关器件的 《时钟资源指南》 [ 参照 40] 和 《库指南》 [ 参照
30]
建议: 如果时钟需求超过 BUFG 的数量,或是需要更优异的总体时钟特性,应根据可用时钟资源分析时钟需求,并针
对任务选择最佳资源。
除全局时钟资源之外,还提供区域时钟资源,其有助于更加严格地控制时钟网络。区域时钟资源包括水平时钟区域缓
(BUFH BUFHCE) 、区域时钟缓存 (BUFR) I/O 时钟缓存 (BUFIO) 及多区域时钟缓存 (BUFMR) 。如需了解有关区域时
钟组件特性的信息,请参阅有关器件的 《时钟资源指南》 [ 参照 40] 和 《库指南》 [ 参照 30]
使用水平时钟区域缓存实现时钟门控
您可以与 BUFG 配合使用水平时钟区域缓存 (BUFHCE) ,以执行中等粒度时钟门控功能。应对有数百或者数千负载的时
钟域,且如果希望在其中的一部分间歇性地关闭时钟, BUFHCE 就是有效的时钟资源。 BUFG 可驱动在同一或不同时钟
区域中的多个 BUFHCE ,从而可帮助您在多个低偏差时钟域中独立控制时钟。
在独立使用时,所有连接到 BUFH 的负载必须处于相同的时钟区域中。这样能良好地满足超高速、更加精细粒度 (更
少负载数量)的时钟需求。 BUFHCH 可用于实现特定时钟区域中的中等粒度时钟门控。用户必须确保由 BUFH 驱动的
资源不会超出时钟区域中的可用资源且不存在其它冲突。
BUFH 和由 BUFG 、其他 BUFH 或任何其它时钟域驱动的时钟域之间的相位关系可能不同。唯一的例外是当有两个
BUFH 驱动水平相邻的时钟域时。此时如果两个 BUFH 都由同一时钟源驱动,左右时钟区域之间的偏差应具有高度受控
的相位关系,这样数据就可以安全地跨这两个 BUFH 驱动的时钟域。 BUFH 还可用于访问对面区域中的 MMCM
PLL ,用于时钟输入或千兆位收发器。但使用这种方法时必须小心谨慎,以确保有 MMCM PLL 可用。
关于 SSI 器件的更多时钟考虑
通常,上述所有时钟考虑因素同样适用于 SSI 技术器件。但由于其结构问题,在针对这些器件时,还有需要考虑更多因
素。使用 BUFMR 时,不能驱动跨 SLR 边界的时钟资源。相应地,赛灵思建议用户把负责驱动 BUFMR bank 或时钟
区域的时钟布局在 SLR 内部的中心时钟区域,以便访问 SLR 左右两侧的全部三个时钟区域。
就全局时钟而言,对设计需要的全局时钟 (BUFG) 数量不超过 (包括) 16 个的情况,没必要考虑更多因素。这些工具
会自动分配 BUFG ,避免可能发生的冲突。在需要的 BUFG 数量超过 16 个 (但不足 32 个)时,必须在引脚选择和布
局方面进一步考虑,才能避免因全局时钟线竞争和 / 或时钟负载布局引起的资源争用。
和所有其它赛灵思 7 系列器件中一样,支持时钟功能的 I/O (CCIO) 及相关的时钟管理模块 (CMT) 都对它们在给定 SLR
中能够驱动的 BUFG 有限制性要求。位于 SLR 上半部或下半部的 CCIO 只能驱动对应的上半部或下半部中的 BUFG 。因
此,在选择引脚和相关的 CMT 的时候,应注意不要让所有 SLR 的上半部或下半部的 BUFG 超过 16 个。为此,该工具
可自动分配所有的 BUFG ,在避免发生冲突的情况下把全部时钟驱动到所有的 SLR
对需要的全局时钟数量超过 32 个的情况,赛灵思建议尝试把 BUFR BUFH 用于较小的时钟域,从而减少所需的全局
时钟域数量。结合使用 BUFR BUFMR ,可以驱动三个时钟区域内的资源,覆盖二分之一个 SLR (对于 Virtex-7
SLR ,约为 25 万个逻辑单元)。水平相邻的时钟区域可同时拥有左右两侧由低偏差方式驱动的 BUFH 缓存,实现规模相
当于三分之一个 SLR 的时钟域 (约为 16.7 万个逻辑单元)。
尽量利用这些资源不仅可以减少时钟资源争用方面的考虑,而且可以多次完善总体布局,从而提升性能、降低功耗。
如果需要超过 32 个全局时钟来驱动多半个 SLR 或多个 SLR ,很可能要细分 BUFG 全局时钟轴。在 SLR 边缘处的垂直全
局时钟线上有隔离缓存,便于在不发生冲突的情况下,在占据相同垂直全局时钟线的不同 SLR 中使用两个 BUFG 。利用
此项功能需要更多用户控制和干预。在下图中,三个 SLR 中从 BUFG0 BUFG2 已被隔离,因此可在其各自的 SLR
拥有独立时钟。另一方面, BUFG31 线未被隔离。因此,同一 BUFG31 (位于图中的 SLR2 中)可用来驱动所有 3
SLR 中的时钟线,但应禁用位于其它 SLR 中的 BUFG31
BUFG 而言,必须精心选择和手动布局 (LOC) 。此外,每个时钟域的所有负载都必须手动编组、手动布局在适当的
SLR 中,以避免时钟冲突。如果所有全局时钟的布局和所有负载的管理能够在避免发生任何时钟冲突的情况下让时钟
达到所有的负载,就能够使用数量多于 32 个的该全局时钟资源。
SSI 技术器件中的全局时钟资源的时钟偏差
时钟偏差对任何大型 FPGA 器件而言,都可能占给定路径总体时序预算的主要部分。过大的时钟偏差不仅会给最高时
钟速度造成问题,本身还会带来严苛的保持时间要求。在器件中内置多个裸片会带来更为严峻的 PVT 工艺问题,但在
赛灵思组装工艺的管理下,只有速度相近的裸片才会封装在一起。
即便有这样的工艺,赛灵思时序工具还是会把这些差异包含在时序报告中。在分析路径的过程中,这些方面会作为建
立和保持计算的一部分加以分析,并依据规定的要求,以路径延迟的形式反映在报告中。对 SSI 技术器件而言,无需用
户额外进行计算或考虑,因为时序分析工具已在计算中考虑过这些因素。
如果使用顶部或底部的 SLR 进行延迟微分计算,偏差会增大,而且各点之间距离越远,偏移越大。因此赛灵思建议对
全局时钟而言,中心 SLR 中必须布局一个以上的 SLR 。这样能够在器件上实现更加均匀的总体时钟网络分布,从而降
低总体时钟偏差。
针对 UltraScale 器件而言,时钟布局的影响较少。然而,赛灵思仍然强烈建议将时钟资源尽可能接近时钟负载的中心
点布局,以降低时钟插入延迟并降低时钟功耗。

http://www.ppmy.cn/ops/157033.html

相关文章

【DeepSeek】DeepSeek概述 | 本地部署deepseek

目录 1 -> 概述 1.1 -> 技术特点 1.2 -> 模型发布 1.3 -> 应用领域 1.4 -> 优势与影响 2 -> 本地部署 2.1 -> 安装ollama 2.2 -> 部署deepseek-r1模型 1 -> 概述 DeepSeek是由中国的深度求索公司开发的一系列人工智能模型,以其…

C++Primer学习(2.1)

前言:与大多数编程语言一样,C的对象类型决定了能对该对象进行的操作,一条表达式是否合法依赖于其中参与运算的对象的类型。一些语言,如Smalltalk和Python 等,在程序运行时检查数据类型;与之相反,C是一种静态…

Termux安装ssh实现电脑ssh

Termux下载 点击下载 在 Termux 中安装并使用 SSH,按照以下步骤操作: 1. 更新软件包列表 pkg update && pkg upgrade2. 安装 OpenSSH pkg install openssh3. 设置 SSH 密码(必须,否则无法使用 SSH 服务器&#xff09…

背包问题常见bug

关于背包问题的常见问题的讨论 不同背包问题的遍历顺序问题 01背包问题和完全背包问题的遍历顺序相反,主要是因为它们在状态转移过程中对物品的使用方式不同。以下是详细的分析: 1. 01背包问题 问题描述:每个物品最多只能使用一次。 状态…

日志统计(acWing,蓝桥杯)

题目: 1238. 日志统计 题目 提交记录 讨论 题解 视频讲解 小明维护着一个程序员论坛。现在他收集了一份”点赞”日志,日志共有 NN 行。 其中每一行的格式是: ts id 表示在 tsts 时刻编号 idid 的帖子收到一个”赞”。 现在小明想…

支持多种网络数据库格式的自动化转换工具——VisualXML

一、VisualXML软件介绍 对于DBC、ARXML……文件的编辑、修改等繁琐操作,WINDHILL风丘科技开发的总线设计工具——VisualXML,可轻松解决这一问题,提升工作效率。 VisualXML是一个强大且基于Excel表格生成多种网络数据库文件的转换工具&#…

e2studio开发RA2E1(8)----GPT定时器频率与占空比的设置

e2studio开发RA2E1.8--GPT定时器频率与占空比的设置 概述视频教学样品申请硬件准备参考程序源码下载选择计时器时钟源PWM(脉冲宽度调制)R_GPT_PeriodSet()函数说明R_GPT_DutyCycleSet()函数说明R_GPT_Reset()函数说明R_GPT_Close() 函数说明主程序波形情况 概述 GPT&#xff0…

CUDA Graph

cudaGraphLaunch 是 NVIDIA CUDA API 中的一个函数,用于在 CUDA Graphs 中启动一个已实例化的图。 CUDA Graphs 简介 CUDA Graphs 是 NVIDIA CUDA 编程模型中的一种技术,旨在优化 GPU 程序的性能。它允许将一系列连续的 GPU 操作(如计算和数…