Presentation is loading. Please wait.

Presentation is loading. Please wait.

7.5 时钟设计.

Similar presentations


Presentation on theme: "7.5 时钟设计."— Presentation transcript:

1 7.5 时钟设计

2 随着FPGA器件规模的不断增大,时钟时延和相位偏移等已经成为影响FPGA设计的关键因素。正确的时钟设计和使用至关重要。下面以Xilinx公司的产品为例介绍时钟设计与使用的一些技巧。

3 7.5.1数字延迟锁相环(DLL)应用设计 在 Virtex-E、Spartan-Ⅱ和 Spartan-ⅡE系列器件中,Xilinx公司采用数字延迟锁相环(DLL,Delay Locked Loop)技术进行FPGA内部的时钟控制。通过使用 FPGA内部的 DLL,可以消除时钟相位偏移、变换时钟频率(倍频或分频)和调整时钟输出相位。DLL基本原理见2.1.2节

4 1. 标准的CLKDLL符号 图7.5.1 标准的CLKDLL符号

5 图中: (1)CLKIN :源时钟输入(Source Clock Input),DLL的输入时钟信号。 (2)CLKFB:反馈时钟输入(Feedback Clock Input),DLL的时钟反馈信号。 (3)RST:复位输入(Reset Input),DLL初始化控制信号。 (4)CLK0/CLK90/CLK180/CLK270:CLKIN相移0°/90°/180°/270°的输出信号, DLL输出的时钟信号。

6 (5)CLK2X:CLKIN的2倍频时钟信号(2x Clock Output), DLL输出的时钟信号。在CLKDLLHF模式时,该输出时钟信号无效。
(6)CLKDV :CLKIN的分频时钟信号(Clock Divide Output),DLL输出的时钟信号。分频系数为1.5、2、2.5、3、4、5、8和16。 (7)LOCKED : DLL锁定输入时钟信号的锁定输出信号(Locked Output),DLL的状态信号。

7 在Spartan-Ⅱ系列器件中,每个DLL可以驱动两个全局时钟网络,通过全局时钟网络可以消除输入时钟的相位偏移。DLL除了具有消除时钟相位偏移的功能外,还具有倍频、分频和移相的功能。另外,DLL还可以实现时钟镜像(Clock Mirror),即通过DLL的片外输出和反馈输入,消除多芯片之间的板级时钟偏移。

8 2. DLL设计时需要注意的问题 在 Spartan-Ⅱ系列器件中,为保证 DLL正常工作,需要注意以下几点:
(1)DLL输入时钟:DLL的输入时钟信号应满足器件数据手册上的相关要求。在低频情况下,输入时钟抖动应小于300ps,高频时应小于150ps。在输入时钟锁定后,应避免输入时钟的大幅度变化。

9 (2)DLL输出时钟:DLL的输出时钟可以驱动OBUF、BUFG或目标逻辑单元的时钟输入端。在LOCKED变为有效前,DLL的输出时钟信号无效。
(1)DUTY_CYCLE_CORRECTION 设为 TRUE时,CLK0、CLK90、CLK180和 CLK270将输出占空比为50%的时钟信号。设为FALSE时,CLK0、CLK90、CLK180和CLK270的输出时钟信号将保持与输入时钟信号相同的占空比。默认值为TRUE。

10 (2)CLKDV_DIVIDE决定分频系数,默认值为2,可设定值为1.5、2、2.5、3、4、5、8和16。
(3)STARTUP_WAIT设置 TRUE时,配置过程将等待DLL锁定后完成。默认值为FALSE。 (4)LOC 指定DLL的位置编号,编号为0、1、2、3。DLL在器件中的位置如图7.5.2所示。

11 图 DLL在器件中的位置

12 3. DLL的应用设计例 DLL的一些应用设计例如图7.5.3~图7.5.5所示。其中,图7.5.3为标准的DLL应用电路。图7.5.4为DLL无时钟偏移和2倍频输出电路。图7.5.5为DLL 4倍频输出电路。 图7.5.3 标准的DLL应用电路

13 图7.5.4 DLL无时钟偏移和2倍频输出电路

14 图7.5.5 DLL 4倍频输出电路

15 7.5.2 全局时钟网络(Global Clock Networks)应用设计
在Xilinx的Virtex-Ⅱ和 Virtex-Ⅱ Pro等系列产品中,全局时钟网络(Global Clock Networks)是一种全局布线资源,它可以保证时钟信号到达各个目标逻辑单元的时延基本相同。不同类型的器件,全局时钟网络在数量、性能等方面略有差异。下面以Virtex-Ⅱ系列器件为例介绍全局时钟网络的特性和用法。

16 在Virtex-Ⅱ系列器件中的全局时钟网络分布如图7. 5
在Virtex-Ⅱ系列器件中的全局时钟网络分布如图7.5.6所示,共含有16个全局时钟网络。 Virtex-Ⅱ系列器件中的全局时钟网络不仅可以提供全局时钟信号的最小时延,还可以实现全局时钟信号的控制输出和选择输出。

17 图7.5.6 Virtex-Ⅱ系列器件全局时钟网络分布示意图

18 7.5.2 全局时钟网络(Global Clock Networks)应用设计

19 图7.5.7 Virtex-Ⅱ系列器件全局时钟网络应用电路图

20 在Virtex-Ⅱ系列器件中,全局时钟网络与时钟信号的连接方法,如图7. 5. 7所示。在图7. 5
在Virtex-Ⅱ系列器件中,全局时钟网络与时钟信号的连接方法,如图7.5.7所示。在图7.5.7(a)中,全局时钟信号(GCLK)通过时钟输入(Clock Input)引脚端(PAD)输入,经过输入缓冲器IBUFG和内部缓冲器BUFG到达时钟分布网络(Clock Distribution)。在图7.5.7(b)中,差分全局时钟信号(GCLKS 和GCLKP)通过差分时钟输入端(Differential Clock Input)输入,经过输入缓冲器IBUFG和内部缓冲器BUFG到达时钟分布网络(Clock Distribution)。在图7.5.7(c)中,全局时钟信号(GCLK)通过时钟输入(Clock Input)引脚端(PAD)输入,经过输入缓冲器IBUFG、DCM(数字时钟管理器,Digital Clock Manager)和内部缓冲器BUFG到达时钟分布网络(Clock Distribution)。

21 7.5.3 数字时钟管理器(DCM)应用设计 如图7.5.8所示,FPGA器件内部逻辑电路时钟也可以通过内部缓冲器BUFG或者DCM(数字时钟管理器,Digital Clock Manager)到达时钟分布网络(Clock Distribution)。 Xilinx公司提供了全局时钟网络VHDL和 Verilog应用程序编程模板,可以通过编程控制全局时钟信号的工作方式。

22 7.5.2 全局时钟网络(Global Clock Networks)应用设计
图 FPGA器件内部逻辑电路时钟到达时钟分布网络

23 7.5.3 数字时钟管理器(DCM)应用设计 Xilinx公司在Virtex-Ⅱ和 Virtex-Ⅱ Pro等系列产品中采用 DCM(数字时钟管理器,Digital Clock Manager).在时钟控制和管理方面,DCM 比DLL功能更强大、使用更灵活。DCM的主要功能包括消除时钟时延、频率合成和时钟相位调整。DCM可以工作在高频或低频模式,主要参数有:输入时钟频率范围、输出时钟频率范围、输入时钟允许抖动范围,输出时钟抖动范围等。

24 在 Virtex-Ⅱ和 Virtex-Ⅱ Pro等系列产品中,DCM的设计和使用方法基本相同,下面以Virtex-Ⅱ系列器件中的DCM为例,介绍DCM的设计和使用。Virtex-Ⅱ系列器件型号不同,具有4-12个DCM。Virtex-Ⅱ的DCM结构示意图如图2.1.17所示。在图2.1.17所示DCM中的端口信号(Port Signals):

25 (l)CLKIN :源时钟信号输入(Source Clock Input — CLKIN),DCM的输入时钟信号,来自IBUFG、IBUF或BUFGMUX。
(2)CLKFB:反馈时钟输入信号(Feedback Clock Input — CLKFB),DCM的时钟反馈信号, CLK0或 CLK2X DCM输出通过IBUFG、IBUF或 BUFGMUX反馈到CLKFB引脚端。 (3)RST:复位输入信号(Reset Input — RST),DCM的控制信号,高电平有效。

26 (4)PSINCDEC :相移增量/减量控制信号(Phase Shift Increment/Decrement - PSINCDEC),DCM的控制信号,控制输出时钟的相位动态调整方向。
(5)PSEN:相移使能信号(Phase Shift Enable - PSEN),DCM控制信号,输出时钟相位动态调整的使能信号。 (6)PSCLK:相移时钟信号(Phase Shift Clock - PSCLK),DCM参考时钟信号,输出时钟相位动态调整的参考时钟。

27 (7)CLK0/CLK90/CLK180/CLK270: CLKIN相移0°/90°/180°/270°的输出信号, DCM输出的时钟信号。
(8)CLK2X:2倍频时钟输出信号(2x Clock Output — CLK2X),DCM的输出时钟信号,是CLKIN的2倍频时钟信号。 (9)CLK2X180 :与CLK2X相位差180°的DCM输出时钟信号。

28 (10)CLKDV:CLKIN的时钟分频输出信号(Clock Divide Output — CLKDV),DCM的输出时钟信号。分频系数由CLKDV-DIVIDE设定。
(11)CLKFX:频率合成时钟输出信号(Frequency Synthesized Clock Output - CLKFX) ,DCM的输出时钟信号,是CLKIN经过频率合成后的时钟信号。 (12)CLKFX180:频率合成时钟相移180°的输出信号(Frequency Synthesized Clock Output 180° Phase Shifted - CLKFX180),该时钟信号与CLKFX有180°的相位差。

29 (13)LOCKED:DCM锁定输出信号(Locked Output — LOCKED),DCM状态信号,显示DCM是否锁定CLKIN。LOCKED为高电平时,DCM的输出时钟信号有效。
(14)STATUS :状态信号(Status - STATUS),DCM状态信号,8位,用于显示DCM的工作状态。 (15)PSDONE:相移完成信号(Phase Shift DONE - PSDONE),DCM的状态信号,用于显示输出时钟相位动态调整是否正常。

30 在 Virtexll系列器件中,DCM主要有如下工作模式:
①BUFG_CLK0_SUBM ②BUFG_CLK2X_SUBM ③BUFG_CLK0_FB_SUBM ④ BUFG_CLK2X_FB_SUBM ⑤BUFG_CLKDV_SUBM ⑥BUFG_DFS_SUBM

31 ⑦BUFG_DFS_FB_SUBM ⑧BUFG_PHASE_CLKFX_FB_SUBM ⑨ BUFG_PHASE_CLK0_SUBM ⑩ BUFG_PHASE_CLK2X_SUBM ⑾ BUFG_PHASE_CLKDV_SUBM Xilinx公司提供了DCM VHDL和 Verilog应用程序编程模板,可以通过编程控制DCM的工作模式。

32 例如: BUFG_CLK0_FB_SUBM 工作模式电路如图7. 5. 9所示。BUFG_DFS_FB_SUBM工作模式电路如图7. 5

33 图7.5.10 BUFG_DFS_FB_SUBM工作模式电路


Download ppt "7.5 时钟设计."

Similar presentations


Ads by Google