XILINX FPGA IP之MMCM PLL DRP时钟动态重配详解

可编程逻辑

1367人已加入

描述

上文XILINX FPGA IP之Clocking Wizard详解说到时钟IP的支持动态重配的,本节介绍通过DRP进行MMCM PLL的重新配置。

Clocking Wizard IP的DRP( Dynamic Reconfiguration)提供了对MMCM/PLL的配置寄存器的访问接口(这些配置位通常只在比特流中初始化),这允许用户动态更改MMCM或PLL时钟输出,而无需加载新的比特流。

MMCM或PLL必须在动态重新配置期间保持复位状态,或者必须在动态重新配置更改完成后释放复位。

DRP可以动态改变时钟的频率、相位、占空比。

MMCM/PLL有6个用户可访问的配置寄存器组,允许重新配置单个时钟输出。这六组分别是分频配置寄存器、相位配置寄存器、分数配置寄存器、锁定配置寄存器、滤波器配置寄存器和功率配置寄存器。

1.分频配置寄存器参数:

•High Time :高电平持续时间,以vco 为clk

•Low Time :低电平持续时间,以vco 为clk

•No Count :使能时输出vco频率

•Edge :它迫使高电平时间计数器在计数结束时在下降边上转换。

例如:要输出一个3分频的时钟50%占比的时钟,High Time配1,Low配2,Edge配1.

4分频配 2 2 0 0

1分频配 0 0 1 0

2.相位配置寄存器参数:

•Phase MUX :相位选择,1代表45°,将vco频率分为8份

•Delay Time:输出时钟的vco偏移,最大支持到64

•MX:固定为2’b00

3.小分配置寄存器参数:

MMCM的clkout0和clkfbout支持小数分频,使能小数分频时,会使用小数组参数(只有MMCM的clkout0和clkfbout有这组参数);

• FRAC_EN:使能

• FRAC :单位0.125

• PHASE_MUX_F:下降沿相位,单位45°

• FRAC_WF_R

• FRAC_WF_F

4.锁定配置寄存器、滤波器配置寄存器和功率配置寄存器基本不用用户配置。

以MMCM为例有17个可配置寄存器,其中CLKOUT[6:0] 和CLKFBOUT各有两个配置寄存器,DIVCLK_DIVIDE有一个独立配置寄存器。下图中的D、O0-O6、M均有可配置的寄存器。

时钟

来看一下寄存器的定义:

Reg1:主要是分频配置寄存器参数,CLKOUT[6:0] 和CLKFBOUT均有该寄存器:

时钟

OUT0 Reg2,CLKOUT[0]小数等的配置寄存器:

时钟

OUT1 Reg2:

时钟

OUT234 Reg2:

时钟

OUT5 Reg2:(包含clkout0的小数部分配置):

时钟

OUT6 Reg2,包含fb的小数部分:

时钟

Div Reg:

时钟

在锁相环中,通过可配置接口配置时,上述寄存器的地址如下:

时钟

当使能DRP端口对时钟进行动态重配时,锁相环的端口会增加下面的端口:

时钟

端口含义为:

// Dynamic reconfiguration ports

input [6:0] daddr, //地址控制

input dclk, //配置时钟

input den, //en,读写使能信号

input [15:0] din, //写配置

output [15:0] dout, //会读

output drdy, //ready

input dwe, //写使能

时钟

本文先写到这里,下一篇文章结合仿真对drp的具体应用进行说明。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分