quartus工具篇——PLL IP核的使用

这篇具有很好参考价值的文章主要介绍了quartus工具篇——PLL IP核的使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

quartus工具篇——PLL IP核的使用

1、PLL简介

PLL(Phase-Locked Loop,相位锁环)是FPGA中非常重要的时钟管理单元,其主要功能包括:

  1. 频率合成 - PLL可以生成比输入时钟频率高的时钟信号。
  2. 频率分频 - PLL也可以输出分频后的较低频率时钟。
  3. 减小时钟抖动 - PLL可以过滤输入时钟中的噪声和抖动。
  4. 锁相输出 - PLL可以使多个时钟保持一定的相位关系。
  5. 时钟复用 - 一个PLL可以驱动多个时钟域。

PLL的工作原理是通过控制环路内VCO的相位和频率实现以上功能。

在FPGA中,PLL广泛用于:

  • 生成界面、存储等需要的各种工作时钟
  • 将外部时钟处理后提供低抖动时钟
  • 实现模块间的时钟域同步

PLL提供时钟的稳定性和灵活性,是FPGA设计中必不可少的时钟管理机制

2、具体实现配置

quartus如何使用pll,fpga开发

选中点击打开后会出现以下配置界面,配置自己芯片的时钟频率,我这里配置的是50MHZ

quartus如何使用pll,fpga开发

取消勾选掉多余的信号

quartus如何使用pll,fpga开发

按照下列步骤配置输出的时钟频率,我这里配置了三个时钟clk c0、clk c1、clk c2,分别是10MHZ、20MHZ、300MHZ

quartus如何使用pll,fpga开发

生成文件,勾选生成对应的文件、我这里多勾选了bsf文件,是这个PLL ip核的波形文件、PLL_inst.v是实例化的部分,其他的文件这里不做过多的叙述

quartus如何使用pll,fpga开发

点击finish生成,这里生成了PLL的实现文件,我们可以将之前勾选的文件添加进项目中

quartus如何使用pll,fpga开发

生成的文件位置会在你创建项目的目录下,我们将PLL_inst初始化文件添加进来:

quartus如何使用pll,fpga开发

PLL_inst.v文件内容,会存放实例化模块,方便我们进行调用和仿真,我们只需要将我们的信号与PLL信号进行联通就行,如下列所示,c0将生成10MHZ的时钟、c1将生成20MHZ的时钟、c2将生成300MHZ的时钟

PLL	PLL_inst (
	.inclk0 ( inclk0_sig ),
	.c0 ( c0_sig ),
	.c1 ( c1_sig ),
	.c2 ( c2_sig )
	);

3、使用配置的PLL进行仿真

仿真代码:

// Copyright (C) 2018  Intel Corporation. All rights reserved.
// Your use of Intel Corporation's design tools, logic functions 
// and other software and tools, and its AMPP partner logic 
// functions, and any output files from any of the foregoing 
// (including device programming or simulation files), and any 
// associated documentation or information are expressly subject 
// to the terms and conditions of the Intel Program License 
// Subscription Agreement, the Intel Quartus Prime License Agreement,
// the Intel FPGA IP License Agreement, or other applicable license
// agreement, including, without limitation, that your use is for
// the sole purpose of programming logic devices manufactured by
// Intel and sold by Intel or its authorized distributors.  Please
// refer to the applicable agreement for further details.

// *****************************************************************************
// This file contains a Verilog test bench template that is freely editable to  
// suit user's needs .Comments are provided in each section to help the user    
// fill out necessary details.                                                  
// *****************************************************************************
// Generated on "07/24/2023 19:18:12"
                                                                                
// Verilog Test Bench template for design : t5
// 
// Simulation tool : ModelSim-Altera (Verilog)
// 

`timescale 1 ns/ 1 ns
module t5_vlg_tst();
// constants                                           
// general purpose registers

// test vector input registers
parameter SYS_CLK = 20;
reg clk;

// wires                                               
wire c0_sig;
wire c1_sig;
wire c2_sig;

// assign statements (if any)                          


always #(SYS_CLK/2) clk = ~clk;

initial begin
	clk = 1'b0;
	#(200*SYS_CLK);
	$stop;
end
                                                                                
PLL	PLL_inst (
	.inclk0 ( clk ),
	.c0 ( c0_sig ),
	.c1 ( c1_sig ),
	.c2 ( c2_sig )
	);
                                     
endmodule


4、仿真结果

quartus如何使用pll,fpga开发

我这里仿真了50MHZ的时钟,可以看到结果完全相符合

5、总结

在fpga开发中时钟配置十分重要,本文略讲的比较简单,可以观看下列视频加深了解

04_IP核之PLL使用讲解_哔哩哔哩_bilibili文章来源地址https://www.toymoban.com/news/detail-725981.html

到了这里,关于quartus工具篇——PLL IP核的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • FPGA之Quartus II 自带的IP核的使用(IP核仅自己学习,未完成)

    1、锁相环:       锁相环是对接收到的信号进行处理,并从其中提取某个时钟的相位信息。锁相环由鉴相器、环路滤波器和压控振荡器组成。  锁相环原理图 鉴相器:         用来鉴别输入信号输入信号Ui与输出信号输出信号Uo之间的相位差相位差,并输出误差电压Ud。Ud

    2023年04月09日
    浏览(49)
  • 从底层结构开始学习FPGA(16)----PLL/MMCM IP的定制与测试

    目录 系列目录与传送门 1、PLL IP的定制 ①、第一页 ②、第二页  ③、第三页

    2024年02月02日
    浏览(62)
  • FPGA学习:PLL的使用与仿真

    PLL(phase-locked loop),即锁相环。是FPGA中的重要资源。由于一个复杂的FPGA系统往往需要多个不同频率,相位的时钟信号。所以,一个FPGA芯片中PLL的数量是衡量FPGA芯片能力的重要指标。FPGA的设计中,时钟系统的FPGA高速设计机器重要,一个低抖动,低延迟的系统时钟会增加FPGA设计

    2023年04月17日
    浏览(40)
  • FPGA代码实现分频和pll分频后的时钟的使用

    1、代码实现的分频时钟 假如 clk_out 输出信号是我们想要的分频后的信号,然后很多人会直接把这个信号当作新的低频时钟来使用,并实现了自己想要的功能。虽然最终实现的功能是成功的,但往往忽略了一些隐患的存在,这种做法所衍生的潜在问题在低速系统中不易察觉,

    2024年02月05日
    浏览(47)
  • FPGA之PLL详解

            在前面的博客里详细介绍了FIFO、RAM两个常用的IP核,而这些IP核在FPGA当中应用非常广泛,很多书籍教程、培训机构也都会蜻蜓点水提起些,但往往不作为重点,而更偏重讲解例程的具体设计。笔者编写FPGA基础知识篇的初衷就是把FPGA学习路上细枝末节、模糊不清的知

    2024年02月08日
    浏览(36)
  • FPGA学习笔记(三):PLL 锁相环

    在 FPGA 芯片内部集成了 PLL(phase-locked loop,锁相环) ,可以倍频分频,产生其它时钟类型。PLL 是 FPGA 中的重要资源,因为一个复杂的 FPGA 系统需要不同频率、相位的时钟信号,一个 FPGA 芯片中 PLL 的数量是衡量 FPGA 芯片能力的重要指标。 Ultrascale+ 系列的 FPGA 使用了专用的全局

    2024年02月13日
    浏览(39)
  • FPGA时钟分频倍频之PLL锁相环

    1、使用vivado创建一个工程 2、点击IP Catalog,搜索Clock Wizard,然后双击,本次实验使用PLL进行分频倍频,不动态改变相位,故选择PLL选项,并将时钟频率改变为50MHz,此处我们使用50MHz晶振作为时钟源 3、点击Output Clocks,配置产生的时钟频率,其他选项保持默认,点击ok,生pll ip核

    2024年02月12日
    浏览(39)
  • Xilinx FPGA 中PLL与MMCM区别

    原文连接,版权所有 对于FPGA工程师来说,DCM / DLL / MMCM / PLL这些词简直每天都能看到,但很多人并不是很清楚它们之间的差异。 在Xilinx的FPGA中,时钟管理器称为 Clock Management,简称CMT 。我们所用到的DCM / PLL / MMCM都包含在CMT中。 DCM 是比较早的FPGA中使用的,某些Sparten-3和Vir

    2024年02月07日
    浏览(41)
  • vivado中的FPGA时钟管理单元PLL学习记录

    FPGA中时钟管理模块(CMT)包括PLL和MMCM,用于将时钟倍频(比如输入时钟25M,我们要产生50M时钟)、分频(在不影响系统功能的前提下,较低的工作时钟,能够降低系统功耗)、改变相位偏移或占空比等。 当需要上板时,由于板上晶振时钟固定,所以其他频率的时钟产生就要用到

    2024年01月16日
    浏览(53)
  • Vivado 下 IP核之 PLL实验

    目录 实验任务:Vivado 下 IP核之 PLL实验 1、实验简介     2、实验环境 3、实验原理 3.1、PLL IP核简介 3.2、MMCM 和 PLL 各自的含义以及两者的区别 3.3、PLL 分频 和 倍频 的工作原理 3.4、实验任务 4、建立工程 4.1、PLL IP 核配置 4.2、模块设计 4.3、编写代码 4.4、Vivado 自带仿真器的使

    2024年02月09日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包