FPGA系统设计原则和技巧之:FPGA系统设计的3种常用IP模块
MHz,而不是100MHz。
另外,在这页中,设计者还可以设置PLL的工作模式,如图9.33所示。
图9.33设置时钟源、PLL类型及工作模式
CyclonePLL支持3种(反馈)模式:标准、零延迟缓冲和无补偿。和其他Altera器件系列不同,CyclonePLL不支持外部反馈模式。所有支持的3种时钟反馈模式允许倍频/分频、相位偏移和可编程占空比。下面对每种模式进行讲解。
·标准模式。
在标准模式下,PLL把参考时钟和逻辑阵列或I/O单元的端口缓存器处的时钟信号相位对齐,补偿内部全局时钟网络延迟。在ALTPLL宏模块向导管理器中,可以定义PLL的哪个内部时钟输出(c0或c1)应该补偿。
如果在该模式中使用外部时钟输出(PLL[2..1]_OUT),则相对于时钟输入管脚有相位偏移。如果用内部PLL时钟输出驱动通用I/O管脚,则相对应的时钟输入管脚也有相位偏移。
·零延迟缓冲模式。
PLL外部时钟输出管脚(PLL[2..1]_OUT)的时钟信号和PLL输入时钟是相位对齐的,没有延迟。如果用c[1..0]端口驱动内部时钟管脚,那么相对于输入时钟管脚有相位偏移。
·无补偿模式。
在该模式下,PLL不补偿任何时钟网络。这样会有更佳的抖动性能,因为反馈到PFD的时钟不经过某些电路。相对PLL时钟输入,PLL内部和外部时钟输出都有相位偏移。
(4)设置可选输入输出。
在宏模块向导管理器(PLL)的第4页,可以选择PLL模块的可选输出信号,如图9.34所示。
CyclonePLL有4个控制信号pllena、areset、prdena和locked,进行PLL管理。
·pllena。
PLL启动信号pllena用于启动PLL。当pllena为低时,PLL时钟输出端口为低,PLL失锁。当pllena再次变高时,PLL重新锁定并重新同步输入时钟。因此,pllena是高有效信号。
因为在CycloneFPGA中没有专用的pllena管脚,内部逻辑或任意通用I/O管脚都可以驱动pllena端口。因为每个PLL都有自己的pllena控制电路或共享通用的pllena电路,这样就很灵活。pllena信号是可选的,如果软件中没有启动它,端口内部就连接到VCC。
图9.34设置可选输入
·areset。
PLLareset信号是每个PLL的复位或重新同步输入。但驱动为高时,PLL计数器重置,清除PLL输出,造成PLL失锁,VCO复位后回到初始设置。当areset再次变低,PLL重新开始锁定,PLL重新和输入时钟同步。如果目标VCO的频率低于标准频率,在锁定过程中PLL时钟输出起始频率值比所需值要高。areset是高有效信号。
CycloneFPGA可以从内部逻辑或任意通用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锁定过程中是非常有用的。
(5)设置c0输出参数。
在宏模块向导管理器(PLL)的第5页,可以选择PLL模块c0输出参数,包括Ratio比值、相移量、占空比等,如图9.35所示。
图9.35设置c0输出参数
(6)设置c1输出参数。
在宏模块向导管理器(PLL)的第6页,同样可以选择PLL模块c1输出参数,包括Ratio比值、相移量、占空比等,如图9.36所示。
图9.36设置c1输出参数
(7)设置e0输出参数。
在宏模块向导管理器(PLL)的第7页,可以选择PLL模块e0输出参数,包括Ratio比值、相移量、占空比等,如图9.37所示。
图9.37设置e0输出参数
(8)选择生成PLL模块文件。
在宏模块向导管理器(PLL)的第8页,完成PLL参数设置后,可以选择生成的PLL模块文件,共包含6个文件可以生成,如图9.38所示。
图9.38选择生成PLL模块文件
PLL的调用方式与FIFO的类似,其构建方式及模块的声明结构可以参看PLL模块的PLL_test.v和PLL_test_bb.v文件。
9.3.3高速串行收发器的使用方法
1.SERDES简介
FPGA系统设计 存储器 IP模块 锁相环 高速串行收发器 相关文章:
- FPGA系统设计原则和技巧之:FPGA系统设计的3个基本原则(06-05)
- FPGA系统设计原则和技巧之:FPGA系统设计的3种常用技巧(06-05)
- 基于闪烁存储器的TMS320VC5409 DSP并行引导装载方法(05-23)
- DSP外部Flash存储器在线编程的软硬件设计(07-10)
- 一种新型的多DSP红外实时图像处理系统设计(02-03)
- DSP与普通MCU的比较(02-23)