FPGA零基础学习之Vivado-锁相环使用教程

2023-11-12

FPGA零基础学习之Vivado-锁相环使用教程

本系列将带来FPGA的系统性学习,从最基本的数字电路基础开始,最详细操作步骤,最直白的言语描述,手把手的“傻瓜式”讲解,让电子、信息、通信类专业学生、初入职场小白及打算进阶提升的职业开发者都可以有系统性学习的机会。

系统性的掌握技术开发以及相关要求,对个人就业以及职业发展都有着潜在的帮助,希望对大家有所帮助。本次带来Vivado系列,锁相环使用教程。话不多说,上货。

锁相环是我们比较常用的IP核之一。PLL的英文全称是Phase locked loop即锁相环,是一种反馈电路。具有分频、倍频、相位偏移和占空比可调的功能。在XILINX 7系列芯片中时钟资源包含了时钟管理单元CMT,每一个CMT都是由一个MMCM和一个PLL组成。对于使用者来说,当我们实现简单的分频时,设计者可以通过写代码的方式来进行分频,但是对于复杂的设计,比如倍频、相位偏移等设计时,写代码的方式就显得力不从心。此时就体现了学习锁相环的必要性。接下来我们一起了解一下锁相环的使用。

PLL锁相环由以下几部分组成:前置分频计数器、相位频率检测器电路、电荷泵、环路滤波器、压控振荡器、反馈乘法器计数器和后置分频计数器。在工作室,相位频率检测器检测其参考频率和反馈信号之间的相位差和频率差,控制电荷泵和环路滤波器将相位差转换为控制电压,压控振荡器根据不同的控制电压产生不同的振荡频率从而影响反馈信号的相位和频率。在参考频率和反馈信号具有相同的频率和相位后,就认为PLL处于锁相的状态。

本次实验我们将输出四个不同的频率波形,其中有两个相位相差180°。其中四个频率分别为100MHZ,30MHZ,10MHZ,10MHZ_180。

接下来我们首先先新建一个工程:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

FPGA零基础学习之Vivado-锁相环使用教程 的相关文章

  • DDR的VTT有源端接和无源端接(slua886a笔记)

    DDR的VTT有源端接和无源端接 slua886a笔记 背景 对于DDR的VTT端接 一直有说法是有源端接可降低功耗 之前一直没仔细理解其中原因 现在找了些相关的资料来介绍和对比有源和无源端接 理解有源端接的优点和降低功耗的原理 主要基于读
  • Vivido添加pynq-Z2开发板

    一 下载pynq z2开发板文件 下载地址 https www tulembedded com FPGA ProductsPYNQ Z2 html 二 将下载的文件解压到vivado安装的位置 如果boards目录下面没有boards fi
  • Matlab 高斯信道下QPSK通带通信系统的简单仿真

    1 原理 2 仿真 3 总结反思 4 参考资料 1 原理 QPSK的具体内容请参考百度 QPSK的调制jie框图大致如下 QPSK信号可以采用正交调制的方式产生 如第一张图片的左半部分 I路信号与cos 信号相乘 Q 路信号与sin信号相乘
  • 关于Keil中Memory中观察不到数据变化的问题以及启动文件栈的初始化

    关于Keil中Memory中观察不到数据变化的问题 在KEIL中观察Memory数据变化 一定要记得只能在RAM地址或ROM之内观察 如下图所示 RAM的地址设置在地址为0x20000000开始的地方 大小为0x20000 因此只有在这个范
  • 笔试

    文章目录 前言 40 复位电路设计 1 recovery time和removal time 2 同步复位和异步复位 3 异步复位同步释放 本文参考 往期精彩 前言 嗨 今天来学习复位电路设计相关问题 微信关注 FPGA学习者 获取更多精彩
  • 最详细的Vivado安装教程

    V i v a d o 安 装
  • 数码管电子时钟

    文章目录 前言 一 回顾数码管 二 任务描述 三 系统框图 四 模块调用 五 模块原理图 六 工程源码 6 2 时钟计数模块代码 6 2 数码管驱动模块代码 6 3 顶层模块代码 七 仿真测试 7 1 测试代码 7 2 仿真结果 八 管脚信
  • 【FPGA】Xilinx vivado IP核许可申请——以MIPI CSI-2为例

    1 先进入xilinx官网 复制这个链接直接进入ip申请的地址 http www xilinx com getlicense 打开链接后需要登录 没账户的那就需要注册 点击红色方框内的蓝色字体即可注册 2 注册完成后 可以选择相应的IP核进
  • 实验1-FPGA编程入门

    文章目录 一 认识全加器 二 输入原理图实现1位加法器 一 半加器原理图输入 二 全加器原理图输入 三 Verilog语言实现全加器 四 总结 五 资料参考 一 认识全加器 一 半加器 1 逻辑分析 如下图所示 半加器只有两个输入和两个输出
  • 上拉电阻和下拉电阻

    一 定义 上拉电阻 将一个不确定的信号 通过一个电阻与电源VCC相连 固定在高电平 下拉电阻 将一个不确定的信号 通过一个电阻与地GND相连 固定在低电平 二 作用 提高输出信号驱动能力 确定输入信号电平 防干扰 限流 阻抗匹配 抗回波干扰
  • FIFO读写控制

    如果在两个模块之间传输数据 两个模块之间的处理速率不同 会导致采集数据的遗漏或错误 在他们之间加一个数据缓存器 所有数据先经过缓存器缓存 再输入数据接送模块 创建两个模块 一个 作为发送模块 一个作为接受模块 发送模块检测到 fifo为空开
  • 小梅哥Xilinx FPGA学习笔记9——语法(阻塞与非阻塞赋值)

    阻塞赋值与非阻塞赋值详解 注意 阻塞赋值 1 设计文件 2 激励文件 3 原理图 4 仿真图 非阻塞赋值 1 设计文件 2 激励文件 3 原理图 4 仿真图 注意 阻塞赋值与非阻塞赋值 只有在时序逻辑中才有 不是阻塞赋值 也不是非阻塞赋值
  • FPGA硬件工程师Verilog面试题(基础篇二)

    作者简介 大家好我是 嵌入式基地 是一名嵌入式工程师 希望一起努力 一起进步 个人主页 嵌入式基地 系列专栏 FPGA Verilog 习题专栏 微信公众号 嵌入式基地 FPGA硬件工程师Verilog面试题 二 习题一 多功能数据处理器
  • IC数字后端

    在 innovus 里面 有时候我们需要控制 tie cell 的 fanout 和 net length 来避免 tie cell 可能出现 max transition 或者 max fanout 的违例 一般来说 只要 fanout
  • 【FPGA】面试问题及答案整理合集

    面试问题及答案整理合集 1 硬件描述语言和软件编程语言的区别 2 FPGA选型问题 3 建立时间和保持时间问题 3 亚稳态问题 4 竞争和冒险问题 5 乒乓操作问题 6 同步和异步逻辑电路 7 同步复位和异步复位 8 MOORE 与 MEE
  • BUCK电路分析(二)

    BUCK电路分析 二 PSIM仿真同步BUCK电路 在上片文章中 初步的分析了BUCK电路的工作原理 本章使用PSIM软件仿真BUCK电路 观察分析BUCK电路器件关键波形 图1是同步BUCK电路图 开关频率设置为200K 固定占空比 在仿
  • 蓝桥杯真题:迷宫

    目录 题目描述 运行限制 dfs bfs 结果 题目描述 本题为填空题 只需要算出结果后 在代码中使用输出语句将所填结果输出即可 下图给出了一个迷宫的平面图 其中标记为 11 的为障碍 标记为 00 的为可以通行的地方 010000 000
  • 【FPGA多周期时序约束详解】- 解读FPGA多周期时序约束的全过程

    FPGA多周期时序约束详解 解读FPGA多周期时序约束的全过程 FPGA作为数字电路设计的常见工具 其设计中必然会遇到时序约束的问题 而多周期时序约束更是FPGA设计中不可避免的难点之一 本文将详细介绍FPGA多周期时序约束的全过程 并结合
  • [从零开始学习FPGA编程-24]:进阶篇 - 基本组合电路-编码器与译码器(Verilog语言)

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 125247358 目录 前言 Veri
  • VHDL:正式端口“portName”没有实际值或默认值

    我在实例化 VHDL 模块 PWM 的 VHDL 测试平台上收到编译错误 正式端口 Duty Cycle 没有实际或默认值 当站在 dev to test PWM 代码行时会看到该错误 在实例化的 PWM 模块中 Duty Cycle st

随机推荐

  • 算法图解笔记(附PDF下载地址)

    算法图解笔记 分治策略 散列函数 广度优先搜索 狄克斯特拉算法 动态规划 算法图解 pdf版 链接 https pan baidu com s 1FJvija2NNmhOSpd7D3yE g 提取码 bwcm 分治策略 分治策略 分而治之
  • sqli-labs第三关

    初始页面 url入手 给个参数 id 1 回显正常 当我们给的参数是 id 1 时报错 说明他是字符型注入 原本的SQL语句加上我们给的就成了 id 1 回显报错 而且报错还多了一个括号 猜想SQL语句是这样的 select from us
  • 率先拿下512节点测试,华为GaussDB表示“很轻松”

    近日 在中国信息通信研究院和数据中心联盟发起的分布式分析型数据库测试中 华为GaussDB分析型数据库率先通过512节点集群规模能力评测 与此同时 中国某世界级银行也完成了采用华为GaussDB分布式分析型数据库对国外顶级数据仓库产品的完全
  • 每日风险投资速递(7月18日,14个互联网动态事件)

    1 传闻 阿里 魅族 传阿里9亿美元收购魅族40 股份 魅族副总裁李楠 魅族和阿里的确在酝酿合作 但融资消息并不属实 点评 顺藤摸瓜 2 动态 拍拍网 京东旗下拍拍网上线运营 对外公布在流量分发 用户分享 平台规则等多方面举措 其中PC店铺
  • 在MDK5中,warning:  #550-D: variable "d" was set but never used 的理解以及解释

    1 warning 550 D variable d was set but never used描述 变量 d 定义但从未使用 或者是 虽然这个变量你使用了 但编译器认为变量d所在的语句没有意义 编译器把它优化了 解决 仔细衡量所定义的变
  • 想跳槽涨薪的必看!2021年你与字节跳动只差这份笔记,大厂内部资料

    说白了 哪一个行业不是吃青春饭呢 无论哪个行业 大部分的从业人员都是在拿青春赌明天 而且很残忍的一个事实是 没有人的工作是不可取代的 如果你辞职 老板极力挽留 那就说明 你是那帮取代你的候选人当中最便宜的 市场在逐渐成熟 程序员的前景确实灰
  • java获取当前路径的方法

    参考网址 https www cnblogs com franson 2016 p 5728280 html 面临问题 需要在linux系统中run jar文件 运行过程包括文件IO 由于txt文件在windows系统中和在linux中路径
  • 0-1背包问题由二维数组转换为一维数组的理解

    对于0 1背包问题的话 可以使用一维数组来表示 我们要知道每一行的数据其实是依赖于上一行的数据 并不依赖于本行的数据 所以无论正序或者逆序更新一行的数据都不会需要本行的数据 但是为什么用一维数组更新时就要用逆序呢 其实是因为用一维数组更新时
  • imx8烧写Linux系统,RT-Linux在IMX8上的使用

    By Toradex胡珊逢 Real time Linux 是指在普通 Linux 内核打上 PREEMPT RT补丁后使内核满足实时要求 下面我们将使用 Apalis iMX8QM 介绍如何开启 Linux 5 4 的实时功能 首先需要下
  • 200 行代码实现一个简单的区块链

    java 区块链开发与交流群 613121183 有兴趣的也可以加下哈 提供了不少区块链资料 以后有资料可以相会共享 区块链的基础概念很简单 一个分布式数据库 存储一个不断加长的 list list 中包含着许多有序的记录 然而 在通常情况
  • 数据仓库模型设计V2.0

    一 数仓建模的意义 数据模型就是数据组织和存储方法 它强调从业务 数据存取和使用角度合理存储数据 只有将数据有序的组织和存储起来之后 数据才能得到高性能 低成本 高效率 高质量的使用 高性能 良好的数据模型能够帮助我们快速查询所需要的数据
  • 什么是vps

    在上网冲浪的时候看到网友在说一个我不认识的词汇 vps 于是在此记录下 文章目录 一 介绍 1 概念 2 特性用途 二 VPS又称为机场 三 VPS的使用 1 如何获取VPS 2 VPS品牌 总结 一 介绍 1 概念 VPS Virtual
  • 物联网平台设备运维监控报警介绍——实践类

    物联网平台监控报警简介 物联网平台除了基础的设备接入上云以及物模型建模管理外 还提供了面向运维场景的监控报警功能 帮助客户了解业务的运行情况 进行相关的运维操作 本文重点介绍相关的监控可视化及规则报警通知功能 包括 自定义的可视化监控大盘
  • 时间序列预测——LSTM模型(附代码实现)

    目录 模型原理 模型实现 导入所需要的库 设置随机数种子 导入数据集 打印前五行数据进行查看 数据处理 归一化处理 查看归一化处理后的数据 将时间序列转换为监督学习问题 打印数据前五行 划分训练集和测试集 查看划分后的数据维度 搭建LSTM
  • 通过环境变量修改java版本不生效

    通过环境变量修改java版本不生效 环境变量指向的是Java1 8版本 但是在终端下查看Java version版本是10 0 2 本机依次安装了 jdk1 8 jdk1 6 和 jdk1 7 三个版本的 jdk 由于maven打包andr
  • 基于PaddleGAN项目人脸表情动作迁移学习(二)单人表情迁移

    学习目标 学习基于PaddleGAN实现的动作迁移模型 First order motion model First order motion model原理 First order motion model的任务是image animat
  • STM32——I2C通信理论基础(1)(学习笔记)

    STM32 I2C通信理论基础 硬件层 协议层 1 I2C基本读写过程 2 I2C通信的起始和停止信号 3 数据的有效性 4 响应 前言 我们在学习stm32的时候 要想学得更好 i2c协议的学习是必不可少的 现在很多的硬件 传感器等都是用
  • Vite2.0常见配置

    一 创建 1 创建 npm init vite latest my vue app template vue ts 查看 create vite 以获取每个模板的更多细节 vanilla vanilla ts vue vue ts reac
  • Win10-部署java环境教程

    一提到部署环境 不得不提到java环境 现如今java遍地走 python多如狗的世界里 如果不能在本地搭建一套java环境 都不好意思说自己是搞软件的 这里呢 给大家来分享一下 如何在一个新的机器上部署java环境 首先 java环境的配
  • FPGA零基础学习之Vivado-锁相环使用教程

    FPGA零基础学习之Vivado 锁相环使用教程 本系列将带来FPGA的系统性学习 从最基本的数字电路基础开始 最详细操作步骤 最直白的言语描述 手把手的 傻瓜式 讲解 让电子 信息 通信类专业学生 初入职场小白及打算进阶提升的职业开发者都