多时钟缓冲器 (MBUFG) - 2023.2 简体中文

Versal 自适应 SoC 硬件、IP 和平台开发方法指南 (UG1387)

Document ID
UG1387
Release Date
2023-11-15
Version
2023.2 简体中文

MBUFG 属于时钟原语,支持您利用叶级时钟分频器,这些分频器由 Versal 器件中的局部水平时钟分布轨道来驱动。叶级分频仅使用单一全局时钟布线资源,因而会导致降低时钟轨道资源使用率、提升能效并降低同步时钟域之间的偏差。MBUFG 原语(MBUFGCE、MBUFGCE_DIV、MBUFG_GT、MBUFGCTRL 和 MBUFG_PS)包含 4 项输出(O1、O2、O3 和 O4),分别用于配置时钟分频器设置 1、2、4 和 8,对于用于驱动连接到 MBUFG 原语的时钟负载的任意叶时钟分频器,这些设置都适用。如需了解有关如何使用 MBUFG 原语来帮助降低同步时钟域之间过高的偏差的更多信息,请访问此链接以参阅 Versal 自适应 SoC 系统集成和确认方法指南(UG1388) 中的相应内容。

要在设计中使用 MBUFG 原语来代替标准 BUFG 原语,请在运行 Versal 自适应 SoC Clocking Wizard 时选中 MBUFG 原语。仅当输出频率为彼此间呈倍数关系(2、4 或 8 倍)时,MBUFG 原语才可用。欲知详情,请访问此链接以参阅 适用于 Versal 自适应 SoC 的 Clocking Wizard LogiCORE IP 产品指南(PG321) 中的相应内容。

注释: 当 BUFG 原语在设计中已例化时,您可使用逻辑最优化 (opt_design) 来将部分 BUFG 原语转换为 MBUFG 原语。使用 opt_design 进行转换仅限在某些情况下才可行且存在一些限制。如需了解更多信息,请参阅 Vivado Design Suite 用户指南:实现(UG904)

下图显示了 MBUFG 驱动的时钟网络的逻辑和物理实现视图。BUFDIV_LEAF 原语不显示在逻辑信号线中,仅用作为 Vivado 布线器所配置的直通式布线原语。MBUFG 上的 CLRB_LEAF 输入可用于异步复位 BUFDIV_LEAF 分频器。连接到 MBUFG CLRB_LEAF 管脚的信号将自动布线到其连接的 BUFDIV_LEAF CLR_B 管脚。由于在全局时钟布线和分布轨道上仅布线 1 个时钟,因此 MBUFG 驱动的时钟可保留时钟资源。此外,由同一 MBUFG 的 2 个输出时钟负责时钟设置的路径的公用节点通常距离驱动程序和负载更近,从而降低时钟偏差并简化时序收敛。

图 1. MBUFGCE 逻辑和物理视图

在器件启动时,BUFDIV_LEAF 时钟分频器会复位,并且 MBUFG 输出时钟以“High”(高电平)状态启动。在下列情况下,需要特殊处理以确保先将 BUFDIV_LEAF 分频器复位到其启动状态,然后 MBUFG 才会接收到输入时钟或重新启用:

  • MBUFG 时钟缓冲器或驱动 MBUFG 的时钟修改块在器件操作期间复位
  • 器件启动后,驱动 MBUFG 的时钟违反最小脉冲宽度规格(即,时钟修改块未锁定)
  • MBUFG 驱动的时钟网络属于可重配置分区的一部分

要复位 BUFDIV_LEAF 缓冲器,MBUFG 的 CLRB_LEAF 管脚必须断言为低电平有效。为确保器件正常操作,用户逻辑必须在断言 CLRB_LEAF 管脚为低电平有效之前先停止 MBUFG 时钟,并在 CLRB_LEAF 信号断言为高电平无效之后,使该时钟在预定义的时间范围内保持无效状态。当 CLRB_LEAF 信号断言无效之后,该时钟保持无效状态的时间必须比布线器所报告的下列时间更长:用于将已连接到 MBUFG CLRB_LEAF 管脚的信号布线到 BUFDIV_LEAF CLR_B 管脚的最大管脚延迟时间。布线器会在 INFO 消息中报告此时间,如以下示例所示。大多数情况下,10 ns 延迟足以满足 CLRB_LEAF 信号线布线延迟。

INFO: [Route 35-3345] MBUFG*/CLRB_LEAF net route delay summary. Please
ensure that the wait time between de-asserting the CLRB_LEAF signal to 
each MBUFG and enabling the MBUFG output clocks is greater than the 
delay listed in the table below.
+------------------+-------------+--------------------+--------------------+
| MBUFG Cell       | Site        | CLRB_LEAF Net Name | Max Pin Delay (ns) |
+------------------+-------------+--------------------+--------------------+
| U_engine/bufg_fx | BUFGCE_X3Y0 | U_engine/p_1_out   | 2.252              |
+------------------+-------------+--------------------+--------------------+

使用 Clocking Wizard IP 时,会自动添加满足此复位要求的电路。如需了解更多信息,请参阅 适用于 Versal 自适应 SoC 的 Clocking Wizard LogiCORE IP 产品指南(PG321)

下图显示了 CLR 断言有效后,MBUFGCE_DIV CLRB_LEAF 与 CE 信号断言有效之间所需的时序关系。CE 信号保持低电平 (Low) 以停止该时钟,直至 CLRB_LEAF 信号被传输到所有 BUFDIV_LEAF CLR_B 管脚为止。在此示例中,MBUFGCE_DIV 的 CE_TYPE 属性设置为 SYNC。

注释: 在下图中,MBUFGCE_DIV/CLRB_LEAF 到 BUFDIV_LEAF/CLR_B 的传输时间是因布线而产生的。
图 2. 在 MBUFGCE_DIV 上断言 CLR 有效时,断言 CLRB_LEAF 信号有效与断言 CE 信号有效之间的时序关系

您可以使用 Vivado IDE 中的“Clock Utilization”(时钟使用率)报告来以可视化方式分析时钟资源使用率和时钟布线。下图显示了在Device(器件)窗口中叠加的时钟资源使用率(按时钟区域)。如需了解有关此报告的更多信息,请参阅 Vivado Design Suite 用户指南:设计分析与收敛技巧(UG906)

图 3. “Clock Utilization”报告

如需了解有关 BUFGCE、MBUFGCE、BUFGCE_DIV、BUFGCTRL 和 MBUFGCTRL 缓冲器的更多信息,请参阅 Versal 自适应 SoC 时钟资源架构手册(AM003)。如需了解有关 BUFG_GT 和 MBUFG_GT 缓冲器的连接和使用的详细信息,请参阅 Versal 自适应 SoC GTY 和 GTYP 收发器架构手册(AM002) Versal 自适应 SoC GTM 收发器架构手册(AM017)