表2.Cyclone PLL功能 功能 时钟倍增和倍减 相位偏移 可编程占空比 内部时钟输出数量 外部时钟输出数量(4) 锁定端口可以输入逻辑数组 PLL时钟输出可以输入逻辑数组 说明 M/(N×后缩放计数器)(1) 小至156皮秒(ps)的增量幅度(2),(3) 每个PLL两个输出 每个PLL一个输出 表2注释:
(1)M,N和后缩放计数器的值从1至32
(2)最小的相位偏移量为压控振荡器(VCO)周期除以8
(3) 对于角度调整,Cyclone FPGA的偏移输出频率的增量至少为45o。更小的角度增量可能取决于PLL时钟输出的倍增/倍减因子。
(4) 100脚的扁平四方封装(TQFP)的EP1C3组件不支持PLL LVDS输出或外部时钟输出。144脚TQFP封装的EP1C6 PLL2不支持外部时钟输出。 Cyclone PLL区块
PLL主要作用就是把内部/外部时钟的相位和频率同步于输入参考时钟。PLL由许多部分组成,共同完成相位调整。
Cyclone PLL采用一个相位频率检测器(PFD)把参考输入时钟的上升沿和反馈时钟对齐。根据占空比规定确定下降沿。PFD产生一个上升或下降讯号,决定VCO是否需要以更高或更低的频率工作。PFD输出施加在电荷泵和环路滤波器,产生控制电压设置VCO的频率。如果PFD产生上升讯号,然后VCO就会增加。反之,下降讯号会降低VCO的频率。
PFD输出这些上升和下降讯号给电荷泵。如果电荷泵收到上升讯号,电流注入环路滤波器。反之,如果收到下降讯号,电流就会流出环路滤波器。环路滤波器把这些上升和下降讯号转换为电压,作为VCO的偏置电压。环路滤波器还消除了电荷泵的干扰,防止电压过冲,这样就会最小化VCO的抖动。
环滤波器的电压决定了VCO操作的速度。VCO是用四级差分环滤波器实现的。反馈环路中的倍减计数器增加输入参考频率以上的VCO频率,使得VCO频率(fVCO)等于输入参考时钟(fREF)的M倍。PFD的输入参考时钟(fREF)等于输入时钟(fIN)除以欲缩放计数器(N)。因此,PFD某个输入的反馈时钟(fFB)锁定于PFD的另一个输入的fREF)。
VCO的输出输入三个后缩放计数器(G0、G1和E)。这些后缩放计数器可以在PLL中产生许多谐振频率。 另外,PLL有内部延迟单元补偿全局时钟网的走线和外部时钟输出管脚的I/O缓冲器延迟。这些内部延迟是固定的,用户无法控制。
图1是Cyclone PLL主要零件的框架图
图1的注释:
(1) 100脚TQFP封装的EP1C3组件不支持PLL LVDS输入
(2) 如果你采用LVDS标准,那么要使用PLL的两个CLK管脚。专有CLK管脚的辅助功能支持LVDS输入。对于PLL1,CLK0管脚的辅助功能是LVDSCLK1p,CLK1管脚的辅助功能是DSCLK1n。对于PLL2,CLK2管脚的辅助功能是LVDSCLK2p,CLK3管脚的辅助功能是LVDSCLK2n。
(3) 100脚TQFP封装的EP1C3组件和144脚TQFP封装的EP1C6 PLL不支持外部时钟输出。 软件简述
Quartus II软件中用altpll宏功能调用Cyclone PLL。图2是Cyclone PLL的端口(用Quartus II altpll宏功能内的名称)以及来源和目的。要注意altpll的c[1..0]和e0时钟输出埠是由后缩放计数器G0、G1和E驱动的。G0和G1计数器驱动c0和c1 PLL输出的内部全局时钟网,E计数器驱动到e0 PLL输出连接的PLL外部时钟输出管脚。
图2 Cyclone PLL的埠
图2的注释:
(1) 你可以把这些讯号分配给单端I/O标准或LVDS。 (2) Inclk0必须由专用时钟输入管脚驱动 (3) e0驱动两用PLL[2..1]_OUT管脚
表3.PLL输入讯号 埠 inclk0 说明 PLL的时钟输入 来源 专用时钟输入管脚目的 ÷n计数器 (1) pllena(2) pllena是高有效讯号,是PLL的启动和复位讯号。它可以启动一个或两个PLL。当该讯号为低时,PLL时钟输出埠输出为GND,PLL失锁。一旦该讯号再次变高,锁定过程开始,PLL重新和输入参考时钟同步。可以由内部逻辑或任意的通用I/O管脚驱动pllena。 areset areset是高有效讯号,复位所有的PLL计数器为初始值。当该讯号为高时,PLL复位该计数器,失锁。一旦该讯号再次变低时,锁定过程开始,PLL重新和输入参考时钟同步。可以由内部逻辑或任意通用I/O管脚驱动areset。 pfdena pfdena是高有效讯号,启动PFD的升降输出讯号。当pdfena为低时,PFD无效,而VCO继续工作。PLL不管输入时钟是否有效,时钟输出继续触发,但是会有一些长期偏移。因为输出时钟频率一段时间内不会改变,在输入时钟无效时,pfdena埠可以作为关机或清除讯号。可以由内部逻辑或任意通用I/O管脚驱动pfdena端口。 逻辑数组(3) PFD 逻辑数组(3) PFD 逻辑数组(3) PLL控制讯号
表3注释:
(1) PLL的inclk0埠必须由专用时钟管脚驱动。
(2) 所有的PLL没有专门的pllena管脚,这样你可以为两个PLL选用其中一个pllena或每个PLL都有各自的pllena管脚。
(3) 逻辑数组来源意味着你可以从内部逻辑或任意通用I/O管脚驱动这个端口。
表4.PLL输出讯号 埠 c[1..0] 说明 PLL时钟输出驱动内部全局时钟网 e0(2) PLL时钟输出驱动单端或LVDS外部时钟输出管脚。 locked PLL锁定状态。当PLL锁定时,该埠为高。当PLL失锁时,该埠为低。在PLL锁定过程中,锁定埠输出为脉冲高和低。 PLL锁定检测 逻辑数组(4) 来源 PLL后缩放计数器G0或G1 PLL后缩放计数器E PLL[2..1]_OUT管脚(3) 目的 全局时钟网(1) 表4注释:
(1) C[1..0]可以通过全局时钟网驱动任何通用I/O管脚。
(2) 100脚TQFP封装的EP1C3组件和144脚TQFP封装的EP1C6 PLL2不支持外部时钟输出PLL[2..1]_OUT。
(3) PLL[2..1]_OUT管脚是两用管脚。如果不需要这些管脚,它们可以作为通用I/O管脚。 (4) 逻辑数组目的意味着你可以把该端口输出到内部逻辑或任意通用I/O管脚。
在Quartus II软件中,你定义哪些从PLL(c0或c1)输出的内部时钟应该补偿。这些PLL时钟输出参照PLL输入时钟进行相位校正。例如,如果c0指定为正常模式下的补偿时钟,那么根据c0在全局时钟网上的走线来补偿。 管脚和时钟网连接
你必须用专用时钟输入管脚CLK[3..0]驱动Cyclone PLL。反转时钟和内部产生时钟无法驱动PLL。表5说明哪些专用时钟管脚驱动哪些PLL输入时钟埠。
u ● 单个时钟输入管脚不能驱动所有的PLL,但是单个时钟输入管脚可以输入逻辑数组的两个缓存器以及PLL inclk端口。
表5.PLL输入时钟来源
时钟输入管脚(1) CLK0 CLK1 CLK2 CLK3 × × PLL1 × × PLL2(2) 表5注释:
(1) 如果你使用LVDS标准,那么两个驱动PLL的管脚的CLK都要使用。 (2) EP1C3只支援PLL1。
altpll的c[1..0]和e0时钟输出管脚由PLL后缩放计数器G0、G1和E驱动(和顺序无关)。G0和G1计数器馈入c0和c1 PLL输出的内部全局时钟网上。E计数器馈入e0 PLL输出的PLL外部时钟输出管脚上。表6说明PLL后缩放计数器输出能够驱动哪些全局时钟网。
表6.PLL输出时钟对应的全局时钟网 PLL 计数器输出 PLL1 G0 G1 PLL2 G0 G1 × × × × × × × × GCLK0 GCLK1 GCLK2 GCLK3 GCLK4 GCLK5 GCLK6 GCLK7
图3为PLL输入和输出时钟连接关系,归纳了表5和表6的内容。
图3.Cyclone PLL时钟连接
图3注释:
(1) PLL1通过CLK0和CLK1管脚支持一个单端或LVDS输入。 (2) PLL2通过CLK2和CLK3管脚支持一个单端或LVDS输入。
(3) PLL1_OUT和PLL2_OUT支持单端或LVDS输出。如果不使用外部时钟输出,这些管脚可以作为通用I/O管脚。 硬件功能
你可以在逻辑数组区块(LAB)和输入/输出单元(IOE)级反转PLL的时钟输出。
Cyclone PLL有许多高级功能,包括时钟倍增和倍减、相位偏移、可编程占空比、外部时钟输出和控制讯号。
时钟倍增和倍减
Cyclone PLL采用M/(N×后缩放)缩放因子为PLL输出埠提供时钟合成输出。每个PLL有一个预缩放因子(N)和一个乘法因子(M),范围从1到32。输入时钟(fIN)经由预缩放计数器(N)分频后产生PFD的输入参考时钟(fREF)。然后fREF乘以M反馈因子。控制环路驱动VCO频率匹配fIN×(M/N)。见下面等式。 fREF=fIN/N
fVCO=fREF×M=fIN×(M/N)
每个输出埠有一个唯一的后缩放计数器降低高频VCO。有三个后缩放计数器(G0、G1和E),范围从1至32。见下面等式:
fC0=fVCO/G0=fIN×(M/(N×G0)) fC1=fVCO/G0=fIN×(M/(N×G1)) fC0=fVCO/E=fIN×(M/(N×E))
● c0和c1可以使用两个后缩放计数器之一,G0或G1。
对应有不同频率的多个PLL输出,VCO可以设置为满足VCO频率规定输出频率的最小倍数。然后,后缩放计数器降低每个PLL时钟输出端口的输出频率。例如,如果时钟输出频率需要从33到66MHz,VCO可以设置为330MHz(VCO范围内的最小倍数)。
相位偏移
Cyclone PLL有高级的时钟偏移能力,提供可编程的相位偏移。你可以在altpll MegaWizard?外挂插件管理器中设置所需的相位偏移,Quartus II软件会自动设置和显示最近的有效相位偏移。你可以为每个PLL时钟输出端口输入角度、单位时间的相位偏移。所有三个PLL后缩放计数器G0、G1和E以及所有的时钟反馈模式都支持这种功能。
相位偏移是根据补偿的PLL时钟输出进行的。例如,你需要100MHz输出时钟,在c0上具有a×1倍增和+90°相位偏移,在c1上具有a×1倍增和+45°相位偏移。如果你选择补偿c0时钟输出,PLL使用零相位偏移c0时钟作为参考点在c0上生成+90°的相位偏移。既然c0是补偿时钟,那么它相对输入时钟的相位偏移+90°。c1时钟也使用零相位偏移c0参考在c1上生成+45°的相位偏移。
对于精细的相位调整,每个PLL时钟输出计数器可以从多达8个相位移位中选择不同的VCO相位,进行精细的相位调整。另外,每个时钟输出计数器使用唯一的初始化计数设置实现相位粗调,步长为一个VCO周期。Quartus II软件可以使用时钟输出计数器和后缩放计数器的初始化设置,实现整个输出时钟周期的相位偏移。你可以把PLL时钟输出的相位偏移到±180°。Quartus II软件会根据相位偏移需求自动设置相位移位和计数器设置。
相位细调精度取决于输入频率和倍增/倍减因子(也就是VCO周期的函数),最精细的步长等于VCO周期的八分之一。最小的相位偏移是1/(8×fVCO)或N/(8×M×fIN)。在Cyclone FPGA中,VCO范围从300到800MHz。因此,相位偏移可以按照1/(8×800MHz)到1/(8×300MHz)范围的精度进行调整,时间单位是156到417ps。
因为有八个VCO相位位移,最大步长为45°。更小的步长取决于输出时钟埠所需的倍增和倍减比率。决定相位偏移度数的精度是45°除以后缩放计数器值。例如,如果输入时钟为×1的125MHz,那么后缩放计数器G0是3。因此,最小的相位步长是(45°/3=15°),可能的相位偏移值是15°的倍数。 因为这类的相位偏移对制程、电压和温度变化很不敏感,因此具有最大精度。
可编程占空比
可编程占空比功能允许你设置PLL时钟输出的占空比。占空比是时钟输出高/低时间和整个时钟周期时间的比率,表示为处于高的时间的比例。Quartus II软件使用输入频率和目的倍增/倍减比率来选择后缩放计数器。占空周期精度由PLL时钟输出选用的后缩放计数器值决定,定义为50%除以后缩放计数器值。例如,如果后缩放计数器的值为3,允许的占空比为50%除以3等于16.67%。因为altpll宏功能不接受非整数值的占空比值,允许的占空比为17%、33%、50%和67%。
由于硬件的,你不能实现84%的占空比,因为对于给定的计数器值你不能实现最接近100%的值。然而,你可以选择17%的占空比,反转PLL时钟输出,从而实现84%的占空比。例如,如果G0计数器为10,占空比增量是5%,范围从5%到90%。
外部时钟输出
每个PLL支持通用外部时钟或来源同步发送器一个单端或LVDS外部时钟输出。E计数器输出驱动PLL外部
时钟输出(e0),它只能馈入PLL[2..1]_OUT管脚而不是内部逻辑。所有三种时钟反馈模式都可以使用PLL[2..1]_OUT。
● 100脚封装的EP1C3组件和144脚的EP1C6 PLL2封装不支持外部时钟输出。
PLL[2..1]_OUT管脚是两用管脚,如果PLL不使用该管脚,那么它们可以作为I/O管脚。PLL[2..1]_OUT管脚支持的I/O标准见表7。
表7.Cyclone PLL管脚支持的I/O标准 I/O标准 LVTTL LVCMOS 2.5-V 1.8-V 1.5-V 3.3-V PCI LVDS(2) SSTL-2 Class I SSTL-2 Class II SSTL-3 Class I SSTL-3 Class II × × × × × × × × × × × inclk × × × × × × × × × × × PLL[2..1]_OUT(1) 表7注释:
(1) 100脚TQFP封装的EP1C3和144脚TQFP封装的EP1C6 PLL2不支持外部时钟输出 (2) 100脚TQFP封装的EP1C3不支持LVDS输出
既然pllena和locked讯号可以由通用I/O管脚驱动或驱动通用I/O管脚,那么它们也支持所有的Cyclone I/O标准。
Cyclone外部时钟输出管脚(PLL[2..1]_OUT)没有于组件的VCC和GND组。PLL[2..1]_OUT管脚和相邻的I/O管脚共享VCCIO组。只有同一组内的I/O管脚会影响PLL[2..1]_OUT管脚。因此,为了让PLL[2..1]_OUT管脚的抖动最小,和它们直接相邻的I/O管脚要么作为输入要么不使用。有关板子设计的详细信息,参见“抖动注意事项”。
控制讯号
Cyclone PLL有四个控制讯号pllena、areset、prdena和locked,进行PLL管理。
pllena
PLL启动讯号pllena启动PLL。当pllena为低时,PLL时钟输出埠为低,PLL失锁。当pllena再次变高,PLL和重新锁定和重新同步输入时钟。因此,pllena是高有效讯号。因为在Cyclone FPGA中没有专用的pllena管脚,内部逻辑或任意通用I/O管脚都可以驱动pllena端口。因为每个PLL都有自己的pllena控制电路或共享通用的pllena电路,这样就很灵活。pllena讯号是可选的,如果软件中没有启动它,埠内部就连接到VCC。 areset
PLL areset讯号是每个PLL的复位或重新同步输入。但驱动为高时,PLL计数器重定,清除PLL输出,造成PLL失锁。VCO复位后回到初始设置。当areset再次变低,PLL重新开始锁定,PLL重新和输入时钟同步。如果目标VCO的频率低于标准频率,在锁定过程中PLL时钟输出起始频率值比所需值要高。areset是高有效讯号。Cyclone FPGA可以从内部逻辑或任意通用I/O管脚驱动这个PLL输入讯号。areset讯号是可选的,如果在软件中没有使用它,该埠内部连接到GND。
pfdena
pfdena讯号用可编程闸控制着PLL中PFD输出。如果你把areset置低禁止PFD,那么VCO将以最后设置的控制电压和频率值工作,长时间会漂移到更低的频率。即使每个输入时钟PLL时钟输出也会继续触发,但是PLL可能会失锁。当PLL失锁或输入时钟禁止时,系统会继续运行。因为在一段时间内最后锁定输出频率不会改变,所以你可以用pfdena埠作为关机或清除功能。为了维持这一频率,系统在关机之前有时间储存当前的设置。如果pfdena讯号再次变高,PLL重新锁定和输入时钟重新同步。因此pfdena管脚是高有效讯号。你可以用任意通用I/O管脚或内部逻辑驱动pfdena输入讯号。该讯号是可选的,如果在软件没有使用它,该埠内部连接到VCC。
locked
当locked输出是逻辑高电平,该电平说明稳定的PLL时钟输出,和PLL参考输入时钟同相。当PLL开始跟
踪参考时钟时,locked埠可能会触发,无需额外电路。PLL的locked埠可以馈入任意通用I/O管脚和/或内部逻辑。这个locked讯号是可选的,在监视PLL锁定过程中是非常有用的。
时钟反馈模式
Cyclone PLL支持三种反馈模式:标准、零延迟缓冲和无补偿。和其它Altera组件系列不同,Cyclone PLL不支持外部反馈模式。所有支持的三种时钟反馈模式允许倍增/倍减、相位偏移和可编程占空比。下面是每种模式的简要说明。
● 图4到图6所示的相位关系是内定值相位偏移设置-0°。改变相位偏移设置会改变相位关系。
标准模式
在标准模式下,PLL把参考时钟和逻辑数组或IOE的端口缓存器处的时钟讯号相位对齐,补偿内部全局时钟网延迟。在altpll MegaWizard外挂插件管理器中,你可以定义PLL的哪个内部时钟输出(c0或c1)应该补偿。
如果在该模式中使用外部时钟输出(PLL[2..1]_OUT),相对于时钟输入管脚有相位偏移。相同的,如果你用内部PLL时钟输出驱动通用I/O管脚,相对应的时钟输入管脚也有相位偏移。
图4是标准模式下PLL时钟相位关系的范例波形。
图4.标准模式下PLL时钟之间的相位关系
图4注释:
(1) 外部时钟输出可能领先或落后于PLL时钟讯号
零延迟缓冲模式
PLL外部时钟输出管脚(PLL[2..1]_OUT)的时钟讯号和PLL输入时钟是相位对齐的,没有延迟。如果你用c[1..0]端口驱动内部时钟管脚,那么相对于输入时钟管脚有相位偏移。图5是零延迟缓冲模式下PLL时钟相位关系的范例波形。
图5.零延迟缓冲模式下PLL时钟之间的相位关系
无补偿
在该模式下,PLL不补偿任何时钟网络。这样会有更佳的抖动性能,因为反馈到PFD的时钟不经过某些电路。相对PLL时钟输入,PLL内部和外部时钟输出都有相位偏移。图6是无补偿模式下的PLL时钟相位关系范例波形。 图6.无补偿模式下PLL时钟之间的相位关系 图6注释: (1) PLL输出的内部时钟之间相位是对齐的。 管脚 表8是Cyclone PLL相关的实体管脚和它们的功能 表8.Cyclone PLL管脚 管脚名 CLK0 CLK1(1) 说明 单端或LVDS p管脚,可以驱动PLL1的inclk0埠 单端或LVDS n管脚,可以驱动PLL1的inclk0埠
CLK2 CLK3(1) PLL1_OUTp(2) 单端或LVDS p管脚,可以驱动PLL2的inclk0埠 单端或LVDS n管脚,可以驱动PLL2的inclk0埠 单端或LVDS管脚,由PLL1的e0端口驱动。如果PLL不使用,可以作为通用I/O管脚。 PLL1_OUTn(2) PLL2_OUTp(2) 单端或LVDS管脚,由PLL2的e0端口驱动。如果PLL不使用,可以作为通用I/O管脚。 PLL2_OUTn(2) VCCA_PLL1(3) GNDA_PLL1(4) VCCA_PLL2(3) GNDA_PLL2(4) GNDG_PLL1(5) GNDG_PLL2(5) PLL1的模拟电源。即使PLL不使用,也必须连接到1.5V。 PLL1的模块接地。你可以把该管脚连接到板子的GND层。 PLL2的模拟电源。即使PLL不使用,也必须连接到1.5V。 PLL2的模拟接地。你可以把该管脚连接到板子的GND层。 PLL1的保护环路接地。你可以把该管脚连接到板子的GND层。 PLL2的保护环路接地。你可以把该管脚连接到板子的GND层。 表8注释: (1) 100脚TQFP封装的EP1C3组件没有专用时钟管脚CLK1和CLK3。 (2) 100脚TQFP封装的EP1C3和144脚TQFP封装的EP1C6 PLL2不支持外部时钟输出。 (3) 参考16页的“板子布局”进行滤波和其它推荐设计。 (4) 100脚TQFP封装的EP1C3组件和144脚TQFP封装的EP1C6 PLL2没有分开的GNDA_PLL管脚。它们内部连接到GND。 (5) 保护环路电源(VCCG_PLL)内部连接到VCCINT。 表9.Cyclone PLL规范(1) 代号 fIN fIN DUTY tIN JITTER 参数 输入频率 输入时钟占空比 输入时钟抖动(峰到峰) fOUT PLL输出频率 9.38 312.00 MHz 最小 15.00 40.00 最大 156.00 60.00 200.00 MHz % ps 单位
tOUT DUTY 外部输出时钟的占空比(当设置为50%) 45.00 55.00 % tJITTER(2) PLL外部时钟输出抖动(峰到峰) TBD ps tLOCK 从组件配置结束到锁定所需的时间 10.00 100.00 us fVCO PLL内部VCO工作范围 300.00 800.00 MHz M、N、G0、G1、E 计数器值 1.00 32.00 整数 表9注释:
(1) 这些数据仅供参考,是当前的硅芯片特性。
(2) PLL[2..1]_OUT管脚的tJITTER规范取决于VCCIO组的I/O管脚,多少个开关输出,它们切换情况,它们是否使用可编程电流强度或低偏移率。 软件支持
Quartus II软件中用altpll宏功能支持Cyclone PLL。下面阐述altpll宏功能如何设置不同的Cyclone PLL功能和选项。本节包括宏功能符号、输入和输出端口,MegaWizard外挂插件管理器选项说明和MegaWizard范例。
表10.altpll宏功能输入端口 埠名 inclk0(1) pllena(2) 是 否 必需 输入时钟端口驱动PLL。 pllena是高有效讯号,作为PLL的组合启动和复位讯号。你可以用它作为一个或两个PLL的启动端。当该讯号为低时,PLL时钟输出端输出为GND,PLL失锁。一旦讯号再次变高,锁定过程启动,PLL重新和输入参考时钟同步。pllena端口可以由内部逻辑或任意通用I/O管脚驱动。 areset(2) 否 areset是高有效讯号,复位所有的PLL计数器为初始值。当该讯号为高时,PLL复位它的计数器,清除PLL输出,失锁。一旦该讯号再次变低,锁定过程启动,PLL重新和输入参考时钟同步。areset端口可以由内部逻辑或任意通用I/O管脚驱动。 说明
pfdena(2) 否 pfdena是高有效讯号,它启动升降PFD的输出讯号。当pfdena为低是,PFD禁用,而VCO继续工作。无论输入时钟是否存在,PLL时钟输出继续翻转,但是会有长期偏移。因为在一段时间内输出时钟频率不会改变,当可靠的输入不再有效,pfdena埠作为关机或清除功能。可以由内部逻辑或任意通用I/O管脚驱动pfdena端口。 表10注释:
(1) PLL的inclk0埠必须由专用时钟输入埠。 (2) 详细情况请参考“控制讯号”。
altpll输出埠
表11是altpll宏功能的输出端口和功能说明。
表11.altpll宏功能的输出端口 埠名 c[1..0](1) e0(1) locked(2) 否 否 否 必需 说明 PLL的时钟输出驱动内部全局时钟网。 时钟输出馈入外部时钟输出管脚,PLL[2..1]_OUT。 给出PLL锁定状态。当PLL锁定时,该端口输出逻辑高。当PLL失锁时,该端口输出逻辑低。在PLL锁定过程中锁定埠可能是脉冲高和低。 表11注释:
(1) 必需选择PLL的内部或外部时钟输出。 (2) 详细情况请参见“控制讯号”。
表12.altpll MegaWizard外掛插件第一頁的選項 功能 你可以使用哪些元件系列? inclock0輸入的頻率PLL輸入時鐘的頻率,inclock0。 是多少 說明 本應用指南解釋所有Cyclone元件系列的altpll選項。
創建pllena輸入來選為這個PLL例化創建pllena埠。pllena埠的說明見表擇啟動PLL 10。 創建areset輸入來非為這個PLL例化創建areset埠。areset埠的說明見表同步重定PLL 10。 創建pfdean輸入來選為這個PLL例化創建pfdena埠。pfdean埠的說明見表擇啟動PFD 使用PLL內的反饋路徑 10。 該選項設置OPERATION_MODE參數為標準,零延遲緩衝或無補償模式。 標準模式下,PLL反饋路徑是全局時鐘網,這樣會最小化到特定PLL時鐘輸出暫存器的時鐘延遲。你可以用COMPENSATE_CLOCK參數指定補償哪個PLL輸出。 零延遲緩衝模式下,PLL反饋路徑是專用PLL外部輸入管腳。從PLL_OUT管腳輸出晶片的時鐘訊號和PLL時鐘輸入相位是對齊的,使得時鐘輸入和外部時鐘輸出之間的延遲是最小的。如果PLL也用於驅動內部時鐘網,那麼時鐘網就會有相應的相位偏移。 無補償模式下,PLL反饋路徑是PLL環路,不是全局時鐘網或外部來源。沒有時鐘網路補償,但是這種模式下時鐘的抖動最小。這種模式可能導致IOE暫存器需要正的保持時間,你可以用手動相位偏移來補償正保持時間。
詳細情況,請參閱“時鐘反饋模式”。 哪些輸出時鐘會補償? 指示PLL的哪個輸出埠被補償。對於標準模式,你可以選擇c0或c1。 你可以選擇Scan/Lock選擇鎖定的輸出埠(見圖13)。
表14.altpll MegaWizard外掛插件第五頁到第七頁的選項 功能 時鐘倍增因數(比率) 時鐘倍減因數(比率) 時鐘相位偏移(Ph) 根據要補償的PLL時鐘輸出,為時鐘輸出設置可編程的相位偏移。等式決定了相位偏移角度的精度(45°除以或縮放暫存器的值)。因此,最大的步長是45°,步長可能更小,這取決於時鐘輸出埠上所需的倍減/倍減比率。例如,如果你的輸入時鐘是125MHz×1,或縮放計數器G0是3。那麼最小的相位偏移步長是15°,相位偏移是以15°遞增。 指定PLL輸出的時鐘倍減量。 說明 指定PLL輸出的時鐘倍增量。倍增因數不能大於32。 上升/下降按鈕根據內定值M和後縮放倍減器決定的可能相位偏移設置來調整,MegaWizard外掛插件管理器選用它們作為你的目標頻率和倍增/倍減比率。如果你在相位偏移
域中手動輸入一個數字,可能得到其他的相位偏移精度。例如,你以覆蓋MegaWizard選擇的值,自己定義為7.5°。MegaWizard外掛插件管理器嘗詴著用M=6和G0=6。MegaWizard外掛插件管理器嘗詴著事項最近的可能的相位偏移。例如,如果你輸入10°,MegaWizard外掛插件管理器驗證M=5和G0=5是可以實現的,確定相位偏移為9°。 詳細情況,請參見“相位偏移”。 時鐘佔空比(DC) 指定PLL時鐘輸出的時鐘佔空比。 等式決定佔空比的精度是(50%除以後縮放計數器的值)。例如,如果後縮放計數器G0是3,那麼容許的佔空比是50%除以3,等於16.67%。因為altpll巨集功能不接受非整數值的佔空比,那麼實際允許的佔空比是17、33、50和67%。由於硬體的,84%的佔空比是無法實現的,因為最接近100%的值是無法在給定計數器值內實現。然而,你可以選擇17%的佔空比,然後反轉PLL時鐘輸出。使用上升/下降按鈕選擇所有可能的設置。 詳細情況,請參見“可編程佔空比”。
第八頁是小結頁面,告訴你MegaWizard外掛插件管理器將產生哪些文件(見圖15)。 ● 你可以在任何時候點選MegaWizard外掛插件管理器中的Finish來更新文件。
圖15.altpll MegaWizard外掛插件管理器第八頁
編譯報告
在編譯過程中,會顯示一些資訊說明所需的倍增/倍減因數,和/或相位偏移,和/或佔空比是否實現。如果你輸入無效的倍增/倍減比率,編譯失敗,Quartus II軟體顯示錯誤資訊。如果你輸入無效的相位偏移或佔空比值,編譯會繼續處理,Quartus II軟體會選擇最佳的替代值。
編譯報告的Resource Section提供兩個PLL的報告:PLL Summary和PLL Usage報告。PLL Summary提供每個PLL參數的資訊(見表16)。PLL Summary是分欄顯示,每欄代表不同的PLL例化。表15列出並說明PLL Summary報告中顯示的參數。表15中沒有列出的PLL屬性不用影響Cyclone PLL。
圖16. PLL總結報告
表15.編譯報告文件中的PLL總結 PLL屬性 PLL模式 補償時鐘 輸入頻率0 時鐘反饋模式 指示補償哪個PLL時鐘輸出(clock0、clock1或extclock0) inclk0的時鐘輸入頻率 說明 標稱VCO頻率 顯示VCO頻率:fVCO=fIN×M/N 最小鎖定頻率 顯示當前M/N保證有效VCO鎖定情況下的最小PLL輸入時鐘頻
率 最大鎖定頻率 顯示當前M/N保證有效VCO鎖定情況下的最大PLL輸入時鐘頻率 M值 N值 M計數器的值 N計數器的值 PLL Usage報告顯示每個PLL時鐘輸出的明細(見圖17)。該報告是按照PLL時鐘輸出埠分類的,每行表示設計中使用的不同PLL時鐘輸出。表16按行格式羅列和說明PLL Usage報告中的參數。表16中沒有列出的PLL參數不會影響Cyclone PLL。
圖17.PLL使用情況報告
表16.編譯報告文件中的PLL使用情況 PLL參數 Name 說明 指示PLL例化的名稱和報告的時鐘輸出 Output Clock 指示該行參數作用的PLL時鐘輸出(clock0、clock1或extclock0)這是由MegaWizard外掛插件管理器(c0、c1、e0)指定的時鐘埠。 Mult Div 整個倍增率。 整個倍減率。
Output Frequency Phase Shift Duty Cycle Counter 該輸出時鐘的輸出頻率。 實現相位偏移的角度和時間單位(可能和用戶輸入的值不同)。 該時鐘輸出的佔空比。 該時鐘輸出的後縮放計數器,哪個計數器(G0、G1、E0)饋入時鐘輸出。 Counter High/Low 後縮放計數器的值。 計數器值中的高和低時間數目。高和低數目的比率就直接反映為佔空比。 Intial VCO Tap 後縮放計數器的初始值(相位偏移的粗調)。 VCO移位範圍從0到7(以VCO周期的1/8單位對相位偏移進行細調
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- oldu.cn 版权所有 浙ICP备2024123271号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务