锁相环基本上是每一个fpga工程必不可少的模块,之前文档xilinx 7 系列fpga时钟资源对xilinx fpga的底层时钟资源做过说明,但是对于fpga的应用来说,使用clocking wizard ip时十分方便的。
clocking wizard ip:简化时钟设计代码的开发,用户不用了解fpga的底层结构,时钟源源语,ip使用图形化界面,根据用户设置选择合适的源语及参数。
它的主要特性包括:
1、支持mmcm及pll;
2、安全时钟启动功能在输出端提供稳定有效的时钟,顺序启动功能提供了序列输出时钟;也就是说ip能够根据设置,保证时钟稳定后才会输出,同时多个时钟间的输出顺序也可以设置;
3、最大能力支持2个输入,7个输出;
4、提供了一个axi4-lite接口,用于动态地重新配置乘、除、相移/偏移或占空比,锁相环输出的时钟可以动态配置;
5、自动计算vco频率,乘法、除法因子;用户只用在ip中确定输入时钟及想要的输出时钟,ip会自动配置响应的vco频率及输出分频比。
ip设置的第一个界面如下,其中的主要参数为:
clock monitor:时钟监控
frequency synthesis :频率综合
minimize power:最小功耗,牺牲性能
phase alignment:输出时钟相位锁定到输入参考上
spread spectrum:频谱扩展,降低干扰
dynamic reconfiguration:动态重配频率、占空比
dynamic phase shift:动态调整输出时钟关系
safe clock startup and sequencing:用于稳定输出时钟及时钟序列
balanced:ip自用优化带宽抖动
minimize output jitter:可能会带来功耗增加及相位异常
maximize input jitter filtering:会引起输出时钟抖动
然后就是两个输入时钟的设置。
第二个界面如下,对输出时钟进行配置:
第三个界面如下,显示根据用户配置生成的vco频率及端口。
第四个界面如下,这个界面是根据配置生成的乘法倍数及各个时钟的分频数据,这里是允许用户自己修改的。
最后就是总结界面了,如下图,是对用户最终设计的总结。
然后就生成了锁相环了,用户可以对其进行例化使用了:
//----------------------------------------------------------------------------//  output     output      phase    duty cycle   pk-to-pk     phase//   clock     freq (mhz)  (degrees)    (%)     jitter (ps)  error (ps)//----------------------------------------------------------------------------// clk_out1__300.00000______0.000______50.0_______94.862_____87.180// clk_out2__100.00000______0.000______50.0______115.831_____87.180// clk_out3__200.00000______0.000______50.0______102.086_____87.180////----------------------------------------------------------------------------// input clock   freq (mhz)    input jitter (ui)//----------------------------------------------------------------------------// __primary_________100.000_____________0.01// the following must be inserted into your verilog file for this// core to be instantiated. change the instance name and port connections// (in parentheses) to your own signal names.//----------- begin cut here for instantiation template ---// inst_tag  clk_wiz_0 instance_name   (    // clock out ports    .clk_out1(clk_out1),     // output clk_out1    .clk_out2(clk_out2),     // output clk_out2    .clk_out3(clk_out3),     // output clk_out3    // dynamic reconfiguration ports    .daddr(daddr), // input [6:0] daddr    .dclk(dclk), // input dclk    .den(den), // input den    .din(din), // input [15:0] din    .dout(dout), // output [15:0] dout    .drdy(drdy), // output drdy    .dwe(dwe), // output dwe    // status and control signals    .reset(reset), // input reset    .locked(locked),       // output locked   // clock in ports    .clk_in1(clk_in1)      // input clk_in1);最后说几点:
首先是mmcm及pll的选择,每个cmt包含一个mmcm和一个pll,他们的结构如下:
mmcm:
pll:
mmcm和一个pll的详细差别如下表,ip生成时可以根据需要进行选择。
二是关于安全启动模式,如下图,这种模式下只有时钟锁定后才会有是时钟输出,而且时钟输出会经过8bit的移位寄存器,移位寄存器设置不同的delay值,就控制了每个时钟的输出顺序。
			
			
       	 	
    	采用FF现场总线技术对种子罐和发酵罐系统进行优化改造
         	 	
    	未来的云存储有什么策略
         	 	
    	超声波清洗机有什么正确使用方法?
         	 	
    	Microsemi PolarFire FPGA视频与成像套件在贸泽开售
         	 	
    	2017年5家将会被收购的生物医疗科技公司
         	 	
    	XILINX FPGA IP之Clocking Wizard详解
         	 	
    	华为总裁陈金助:5G加速到来 承载网面临严峻挑战
         	 	
    	施耐德电气Modicon M262 PLC内部拆解分析
         	 	
    	三星显示器正考虑在2021年销售100万块面板
         	 	
    	2020年Q1苹果iPhone产量比去年同期还要高?
         
       	 	
    	全球及欧洲的AR/VR支出增长将在2020年出现下降
         	 	
    	大联大诠鼎推出SIG MESH多协议物联网平台 完全兼容SIG MESH的网络标准
         	 	
    	浅谈伺服压力机液压缸的受力因素
         	 	
    	AR导航解决驾驶安全问题
         	 	
    	满足大功率系统不断增长的故障检测需求
         	 	
    	ST联合HHI研究所推出首款标准化3D视频接收器
         	 	
    	不稳定性和烧录不良率很高的改善方法
         	 	
    	防雷元器件的性能特点
         	 	
    	三星电子砸近70亿美元新建7mn厂
         	 	
    	[图文]IC+分立件的RIAA电路