当前位置: 代码迷 >> 综合 >> Xilinx IP核专题之PLL IP核介绍(Spartan-6)
  详细解决方案

Xilinx IP核专题之PLL IP核介绍(Spartan-6)

热度:32   发布时间:2023-12-12 22:52:09.0

这篇博文,我将根据实验室的项目产生一个PLL IP核,并根据该IP的数据手册来认识这个IP核。

首先给出数据手册的链接:Xilinx PG065 LogiCORE IP Clocking Wizard v4.2, Product Guide

下面正式给出创建过程:

打开ISE Project Navigator——新建工程(New Project)——New source,选择IP(CORE Generator & Architecture Wizard),然后命名你要产生的IP核,点击Next进入IP核产生向导界面:

选择你的IP核:

选择FPGA Features and Design中的Clocking下面的Clocking Wizard,如下图示:

点击Next,进入Summary界面,这是初步总结你的IP核设计:

点击Finish,进入Clocking Wizard页面,正式开始配置你的时钟:

Clocking Wizard将指导你产生一个你需要的IP核,从这个页面中可以看到有很多选择需要自己选择,我们就是根据这些选择来配置适应自己需求的时钟的,那么这些选择都是什么意思呢?那就需要看数据手册了,如果你安装了默认的PDF浏览器的画,点击该界面的下方的Datasheet,会自动弹出该IP的数据手册,通过查看数据手册就可以知道该IP核的所有信息,指导你了解并配置自己的IP核。

下面我们通过数据手册来理解这些选择的含义;

先介绍时钟特点这一块:

从上到下依次介绍:

频率综合(Frequency synthesis),这个特征就是让你可以有多个不同的输出时钟;

相位校准(Phase alignment),这个特征可以让输出时钟的相位锁定为一个参考值,例如器件的输入时钟引脚。

该特征可以使原语需要的功率总量最小化,但可能是以频率、相移、以及占空比精度为代价的。

动态相移(Dynamic phase shift),这个特征可以让你改变输出时钟之间的相位关系。

动态重构(Dynamic reconfiguration),意思大概是设备配置后,使用这个特征就可以改变原语的编程。

从下面这个界面可以看到,如果选择了Phase alignment之后就不能选择这个特征,这意味着什么呢?

从Clocking Wizard可以看到Jitter Optimization下由三个方式可供选择:

选择Balanced可以使软件为抖动优化(jitter optimization)选择合适的带宽(bandwidth);

最小化输出抖动(Minimize output jitter)这个特征可以最小化输出时钟抖动,但是以牺牲功率为代价,并且可能使输出时钟相位错误。

最大化输入抖动滤波(Maximize input jitter filtering),这个特征让输入时钟的抖动更大,但可以影响输出时钟的抖动。

最小化输出抖动(Minimize output jitter)、最大化输入抖动滤波(Maximize input jitter filtering)不能同时有效。

下面进入输入时钟信息栏,输入时钟频率值,这里假设为25MHz,抖动为默认值。

注意后面还有一个source选项,下拉可见由四个选项:

第一个选择的意思是输入时钟为单端的,有一个IBUFG作为输入时钟缓冲;

选择第一个,光标放在上面不动,可以看到提示信息,意思大概为一个IBUFG嵌入主输入时钟中;

如果选择了这个单端输入,则输入端变为这个样子:

第二个为差分输入端,一个IBUFGDS被嵌入主输入时钟中;

如果选择了这个差分输入端,可见输入端变为这个差分输入的样子:

第三个为全局缓冲,一个BUFG被嵌入主输入时钟中;

第四个就是没有buffer呗。

这一页面就看到这里呗,没说的选默认就是了。

注意:如果你不知道这些buff是什么意思,可以参考这篇博文:【FPGA】IBUFG、IBUFGDS、IBUFDS...(这些到底是啥?)

点击next进入下一页:

该页面可以选择输出时钟的频率(Output Freq),相位(Phase)以及占空比(Duty Cycle),驱动(Drives)等,根据自己的需求选择即可。

点击next,进入下一个页面:

可选择的输入输出端口介绍:

复位,有效时可以异步清除原语的内部状态,并且在释放时使原语重新启动锁定序列;

置位时,表示输出时钟稳定且可被下游电路使用;

置位时,表示所选输入时钟不在切换。

其他的慢慢认识吧。

进入下一页面:

这些是对输入的设置,菜鸟就不要动了,动了可能会出问题,前面Wizard的选择设置可能就失效了。

继续下一页:

这一页是对输入输出时钟的总结,可以更改端口名字,但何必呢?

直接进入下一页:

这一页是一个大总结,对生成的文件进行列表显示。

总算看完了,点击Generate就可以产生这个IP核了。

生成成功后的效果是这样的:

选中这个IP核,如下图,双击View HDL Instantiation Template,就可以得到例化模板了:

例化模板复制下来就可以用了,看这个软件写的多贴心(感动)

到底结束吧,这篇博文有点长了,我还准备写一下IP核的架构呢,算了下一篇博文单独写吧。

先贴出来一个图为下一篇博文引个头;

时钟IP核架构地址来了:

LogiCORE IP Clocking Wizard 之 Core Architecture

 

  相关解决方案