问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

FPGA中CLOCK_DEDICATED_ROUTE约束的使用方法

创作时间:
作者:
@小白创作中心

FPGA中CLOCK_DEDICATED_ROUTE约束的使用方法

引用
CSDN
1.
https://blog.csdn.net/cckkppll/article/details/145367832

FPGA中的CLOCK_DEDICATED_ROUTE约束主要用于控制时钟信号在不同时钟区域之间的路由方式。这个约束在从一个时钟区域中的时钟缓存驱动到另一个时钟区域中的MMCM(Mixed-Mode Clock Manager)或PLL(Phase-Locked Loop)时特别重要。默认情况下,CLOCK_DEDICATED_ROUTE约束设置为TRUE,这意味着缓存/MMCM或PLL对必须布局在相同的时钟区域中。

UltraScale器件的特殊注意事项

在使用UltraScale器件时,需要注意以下几点:

  • 不要在端口直接驱动的网络上应用CLOCK_DEDICATED_ROUTE属性。
  • 相反,应该将CLOCK_DEDICATED_ROUTE属性应用到IBUF(Input Buffer)的输出。

垂直相邻时钟区域的配置

当从一个时钟区域中的时钟缓存驱动垂直相邻时钟区域中的MMCM或PLL时,需要将CLOCK_DEDICATED_ROUTE设置为BACKBONE(对于7系列器件)或SAME_CMT_COLUMN(对于UltraScale器件)。这样可以防止实现错误,并确保时钟仅使用全局时钟资源进行布线。

以下是具体的配置示例:

set_property CLOCK_DEDICATED_ROUTE SAME_CMT_COLUMN [get_nets -of [get_pins BUFG_inst_0/O]]
set_property LOC PLLE3_ADV_X0Y0 [get_cells PLLE3_ADV_inst_0]
set_property LOC PLLE3_ADV_X0Y4 [get_cells PLLE3_ADV_inst_1]

非垂直相邻时钟区域的配置

当从时钟缓存驱动到不垂直相邻的其他时钟区域时,需要将CLOCK_DEDICATED_ROUTE设置为FALSE(对于7系列器件)或ANY_CMT_COLUMN(对于UltraScale器件)。这样可以防止实现错误,并确保时钟仅使用全局时钟资源进行布线。

以下是具体的配置示例:

set_property CLOCK_DEDICATED_ROUTE ANY_CMT_COLUMN [get_nets -of [get_pins BUFG_inst_0/O]]
set_property LOC PLLE3_ADV_X1Y0 [get_cells PLLE3_ADV_inst_0]
set_property LOC PLLE3_ADV_X1Y4 [get_cells PLLE3_ADV_inst_1]

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号