FPGA零基础学习之Vivado-锁相环使用教程
发布网友
发布时间:2024-09-30 15:36
我来回答
共1个回答
热心网友
时间:2024-10-04 01:09
本系列教程旨在为电子、信息、通信类专业学生、职场新人及希望提升技能的职业开发者提供FPGA的系统性学习。我们将从数字电路基础知识开始,通过详细的操作步骤和直观的语言描述,提供“傻瓜式”讲解,帮助大家系统地学习FPGA。
掌握技术开发和相关要求,对个人就业和职业发展具有潜在的帮助。本期我们将带来Vivado系列的锁相环使用教程。
锁相环(PLL)是我们常用的IP核之一,具有分频、倍频、相位偏移和占空比可调的功能。在XILINX 7系列芯片中,时钟资源包括时钟管理单元CMT,每个CMT由一个MMCM和一个PLL组成。对于简单的分频设计,可以通过代码实现,但对于复杂的设计,如倍频、相位偏移等,则需要学习锁相环的使用。
PLL锁相环由前置分频计数器、相位频率检测器电路、电荷泵、环路滤波器、压控振荡器、反馈乘法器计数器和后置分频计数器组成。相位频率检测器检测参考频率和反馈信号之间的相位差和频率差,控制电荷泵和环路滤波器将相位差转换为控制电压,压控振荡器根据不同的控制电压产生不同的振荡频率,从而影响反馈信号的相位和频率。当参考频率和反馈信号具有相同的频率和相位时,认为PLL处于锁相状态。
本次实验我们将输出四个不同的频率波形,其中有两个相位相差180°,频率分别为100MHz、30MHz、10MHz和10MHz_180。
接下来,我们新建一个工程,然后在左侧菜单栏中选中IP Catalog,搜索并打开clock选项,进行相关配置。设置好输入时钟和输出频率后,生成IP核,并设置对应的输出。
生成IP核后,在源文件界面会看到我们生成的IP核。接下来,我们需要编写顶层文件,调用IP核,进行仿真观察输出波形。
在顶层文件中,我们需要例化IP核,并将其复制粘贴到顶层文件中,修改端口名。然后编写仿真文件,编译并观察波形。观察波形可知,在复位结束后的一段时间内,输出没有波形,IP核输出不稳定,但在locked信号拉高后,输出稳定,周期与定义的频率对应。
后续会持续更新Vivado、ISE、Quartus II、Cadence等安装和设计教程,学习资源、项目资源、好文推荐等内容,希望大家持续关注。
欢迎关注“FPGA技术江湖”微信公众号,获取更多精彩内容。
FPGA零基础学习之Vivado-锁相环使用教程
接下来,我们新建一个工程,然后在左侧菜单栏中选中IP Catalog,搜索并打开clock选项,进行相关配置。设置好输入时钟和输出频率后,生成IP核,并设置对应的输出。生成IP核后,在源文件界面会看到我们生成的IP核。接下来,我们需要编写顶层文件,调用IP核,进行仿真观察输出波形。在顶层文件中,我们需要例化IP...
vivado xdc 系统时钟速率需要约束吗
5. BUFGMUX是全局时钟选择缓冲,它有I0和I1两个输入,一个控制端S,一个输出端O。当S为低电平时输出时钟为I0,反之为I1。需要指出的是BUFGMUX的应用十分灵活,I0和I1两个输入时钟甚至可以为异步关系。6. BUFGP相当于IBUG加上BUFG。7. BUFGDLL是全局缓冲延迟锁相环,相当于BUFG与DLL的结合。B...