经过前面的学习,相信大家已经掌握了软件的基本操作和设计的基本流程,接下来我们开始学习FPGA片内时钟管理单元PLL,该单元可以实现系统时钟的分频、倍频,是FPGA设计开发必备组件之一。
首先新建工程如下:
点击Tools->
弹出如下窗口:
我们要新建一个新的IP,所以直接默认选择第一个就可以,点击"NEXT"
在
中选择
在
一列填写IP核名称,如下所示:
点击“NEXT”
Areset为PLL的复位信号,高电平有效;locked为PLL输出有效标志,高电平有效,平时也可以选择不使用。接下来我们需要设置PLL输入时钟的频率(50MHZ外部晶振)
点击“NEXT”
我们可以把这两个选项去掉
点击“NEXT”
点击“NEXT”
点击“NEXT”
点击“NEXT”
选择
并输入想要输出的频率(200MHZ)
点击“NEXT”
通过选择
,可以选择是否多设置一路输出时钟,PLL可以设置多路不同频率的输出时钟,这里我们只选择一路输出,所以可以直接点击“Finish”
继续点击“Finish”,退出即可
通过以上过程,我们已经成功的建立了一个输出时钟为200MHZ的PLL,接下来我们需要通过仿真来查看PLL输出的频率是否和咱们预期的一致。
新建一个顶层文件并保存
在该顶层文件中实例化刚才生成的PLL,代码如下:
接下来需要编写测试文件
在setting里面设置testbench以后,调用modelsim仿真,查看频率是否正确
由仿真波形可以看出,时钟输出端C0的频率为时钟输入端inclk0的四倍,满足设计要求,说明锁相环设置正确。