基于Vivado clock wizard IP动态时钟配置

1 功能

         在PL端或PS端能动态配置时钟输出,时钟频率、相位、占空比可控。

2 IP核动态设置

        要使用Clock Wizard输出动态时钟,还需要在Clocking Options 界面里勾选Dynamic Reconfig Dynamic Phase Shift 选项,分别是打开动态配置选项和允许更改时钟的相位关系。同时提供AXI4 Lite和DRP接口进行配置,两者结构都大差不差。

        AXI4 Lite 接口:系统已经将动态配置集成好了,只需要用过总线配置寄存器即可。

        DRP接口:不带总线,操作性更强,便于用户自定义接口。

3 时钟架构

        基于MMCM and PLL时钟框图如下图所示,提供CLKIN1和CLKIN2 (参考频率)两个输入时钟进行选择,基于锁相环原理,参考频率经过D分频应等于压控振荡器(VCO)经过M分频后的频率。所以:

     

        需要说明下:

1、MMCM结构的输出要多于PLL结构,且MMCM结构可输出差分时钟;

2、CLKOUT0和CLKOUTB提供小数分频,其余输出只提供整数分频;

4 FPGA逻辑设计及仿真

        为了便于移植,小编采用MMCME2_ADV原语进行设计,同时使用DRP框架进行设计,相比AXI Lite接口,DRP接口的文档描写的相对清楚一些。同时为了设计方便,我将配置进行了集成,在官方原有的基础上进行了修改,只需要将时钟的配置信息传入同时送入一个脉冲信号,模块便可工作。

仿真:S1_CLKOUT(0/1/2/3/4/5/6)为配置信息,CLK(0/1/2/3/4/5/6)OUT为时钟输出,经验证输出频率、相位、占空比正确。

CLKIN=100MHz,D=1,M=8DIVPHASEDUTY_CYCLE输出频率
CLK01050%800
CLK12050%400
CLK23050%200
CLK38050%100
CLK48080%100
CLK589050%100
CLK6818050%100

5 参考手册

1、pg065-clk-wiz

2、ug472_7Series_Clocking

3、xapp888_7Series_DynamicRecon

6 资料获取

        https://m.tb.cn/h.g7RL8Ck?tk=0Zrf3YP7iNM
 

               

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值