FPGA之IP核PLL实验

16 篇文章 1 订阅

1.实验简介

       PLL的英文全称是Phase Locked Loop,即锁相环,是一种反馈控制电路。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= FIN*M/N,PLL的输出频率为FOUT=(FIN*M)/(N*K)。 

         EP4CE10,内部含有2个PLL   PLL的时钟输入可以来自于时钟专用输入引脚,FPGA内部产生的信号不能驱动PLL。

2.试验任务

      使用FPGA开发板输出4个不同时钟频率或相位的时钟,并通过Modelsim软件对ALTPLL IP核进行仿真。

3.硬件管脚分配

4.程序设计

添加IP core

module pll (
    
    input   sys_clk      ,
    input   sys_rst_n     ,

    output  clk_100M       ,
    output  clk_100M_180  ,
    output  clk_50M        ,
    output  clk_25M       //
    );
 //wire define 
wire locked;
wire areset;

assign areset=sys_rst_n&locked;

pll_clk  u_pll_clk(
	.inclk0(sys_clk),
    .areset(~sys_rst_n),
	.c0(clk_100M),
	.c1(clk_100M_180),
	.c2(clk_50M),
	.c3(clk_25M),
	.locked(locked)
    );

endmodule

 

在仿真时要选最快的时钟作为参考时钟,这里实际100M对应的PLL中是200M 因此可以观察到CLK_100M_180信号,如果为不修改为200M则无法观察到100M时钟   只能观察到50M和20M的输出时钟

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值