FPGA - IP核之PLL
1. PLL IP核简介
PLL的结构图如下:
PLL由以下几部分组成:
前置分频计数器(N计数器)、
相位-频率检测器(PFD,Phase-Frequency Detector)电路
电荷泵(Charge Pump)
环路滤波器(Loop Filter)、
压控振荡器(VCO,Voltage Controlled Oscillator)
反馈乘法器计数器(M计数器)
后置分频计数器(K和V计数器)
在工作时,PFD检测其参考频率(FREF)和反馈信号(Feedback)之间的相位差和频率差,控制电荷泵和环路滤波器将相位差转换为控制电压;VCO根据不同的控制电压产生不同的震荡频率,从而影响Feedback信号的相位和频率。在FREF和Feedback信号具有相同的相位和频率之后,就认为PLL处于锁相的状态。
在反馈路径中插入M计数器会使VCO的震荡频率是FREF信号频率的M倍,FREF信号等于输入时钟(FIN)除以预缩放计数器(N)。参考频率用以下方程描述:FREF= FIN/N,VCO输出频率为FVCO= FINM/N,PLL的输出频率为FOUT=(FINM)/(N*K)。
2. 实验任务
本节实验任务是使用FPGA开发板输出4个不同时钟频率或相位的时钟,并通过Modelsim软件对ALTPLL IP核进行仿真,来向大家详细介绍一下ALTPLL IP核的使用方法。
3. 硬件设计
本章实验将ALTPLL IP核产生的四个时钟输出到FPGA的扩展口IO上,也就是开发板P7扩展口的第5、6、7和第8脚。扩展口原理图如图 13.3.1所示:
IP核之PLL实验管脚分配:
4. 程序设计
1 module ip_pll(
2 input sys_clk , //系统时钟
3 input sys_rst_n , //系统复位,低电平有效
4 //输出时钟