Vivado_PLL IP核

本文介绍Vivado中PLL IP核的使用方法。

PLL

首先在IP Catalog中搜索clock 并找到Clocking Wizard,双击后打开。
在这里插入图片描述
进入Clocking Wizard配置界面。
在这里插入图片描述

其中可选选项及含义为:
Frequency Synthesis:频率合成,允许输出时钟具有与输入时钟不同的频率。此项必须勾选,否则无法正常使用其分频倍频的功能。
Phase Alignment:相位对齐,允许将输出时钟锁相到输入时钟。默认勾选。
Dynamic Reconfig:动态重配置,允许在生成配置后更改配置。勾选后,默认生成AXI4-Lite接口。
Safe Clock Startup:安全启动,在locked采样为高电平8个输入时钟后,勾选后会使用BUFGCE在输出端启用稳定且有效的时钟。
Minimize Power:最小化功率,允许允许最小化该单元所需的功率,但会牺牲频率、相位偏移或占空比精度。

Jitter Optimiazation:
Balanced:软件自动为抖动优化选择正确的带宽。
Minimize Output Jitter:最小化输出抖动,最大限度地2减少输出时钟的抖动,但代价是功耗和可能的输出时钟相位误差。
Maximize Input Jitter:最大化输入抖动,允许输入时钟上更大的输入抖动,但会对输出时钟上的抖动产生负面影响。

在 Input Clock Information 选项框处设置输入时钟引脚名称,输入时钟频率。
在这里插入图片描述

输出时钟配置:
在这里插入图片描述
如设置:
在这里插入图片描述
其输入时钟频率为50MHz,输出时钟频率为25MHz,相位25度,占空比75%。
在这里插入图片描述
其他引脚设置:
在这里插入图片描述
勾选reset,locked,Active High后,输入输出信号如下。
在这里插入图片描述
locked引脚会在输出时钟稳定后被来高。
Reset Type中勾选Active High设置reset引脚为高电平有效。按照一般设计,reset通常为低电平有效,则需勾选Active Low。

### VivadoPLL IP 的配置与使用 在 FPGA 设计中,Vivado 提供了强大的工具来帮助用户完成 MMCM 和 PLL 的配置。以下是关于如何在 Vivado 中配置和使用 PLL IP 的具体说明。 #### 配置 PLL IP 为了创建并配置 PLL IP,在 Vivado 软件中可以按照以下方式操作: 1. **打开 IP Catalog** 在 Vivado 主界面中,导航到左侧栏中的 `IP Catalog`,输入关键词 `clock` 或者直接搜索 `Clocking Wizard` 来定位所需的 IP [^3]。 2. **启动 Clocking Wizard 工具** 找到 `Clocking Wizard` 后双击它以启动该向导程序。这一步会引导用户进入具体的配置页面。 3. **设置基本参数** 在 Clocking Wizard 界面中,需要定义以下几个主要部分: - 输入时钟频率 (`Input clock frequency`)。 - 输出时钟的数量及其各自的目标频率、相位偏移以及占空比等属性[^2]。 4. **高级选项调整** 如果设计需求涉及更复杂的场景,则可以通过进一步探索如下特性来进行微调: - 使用锁存信号(Locked Signal),用于指示 PLL 是否已成功锁定至目标状态。 - 设置重置行为模式,比如异步还是同步复位机制[^4]。 #### 实例化 PLL IP 当完成了上述所有必要的设定之后,下一步就是将所生成的 HDL 文件集成进整个项目当中去。下面展示了一个典型的 Verilog 代码片段作为例子: ```verilog // Example instantiation of a PLL core generated by the Xilinx Vivado tool. clk_wiz_0 your_instance_name ( // Clock outputs: these are driven from internal oscillators within the PLL block. .clk_out1(your_clk_output_signal_1), .clk_out2(your_clk_output_signal_2), // Control/status inputs & outputs: .resetn(system_reset_n), // Active low asynchronous reset signal applied to all clocks inside this module. .locked(pll_lock_status), // Indicates whether or not the feedback loop has achieved phase lock. // Primary reference input port(s). .clk_in1(reference_clock_input) // External source feeding into the primary path through which synchronization occurs. ); ``` 这段模板展示了如何实例化由 Vivado 自动生成的一个名为 `clk_wiz_0` 的模块,并连接各个端口到实际硬件资源上。 #### 总结 通过以上步骤即可顺利完成基于Xilinx平台下的PLL初始化过程;同时借助于图形化的交互流程极大简化了传统手动编写RTL描述文件的工作量。最终得到满足特定应用场景下对于频率转换等方面严格要求的理想解决方案[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值