MMCM DRP动态配置方法(超详细讲解)

news2024/11/27 9:47:44

一、MMCM 源语介绍

1、调用源语

2、调用Clocking Wizard IP

调用Clocking Wizard IP核选择使用MMCM资源时,IP内部也是调用的MMCM源语。

Clocking Wizard IP中启用MMCM  DRP接口方法:

在Clocking Wizard IP中设置分频倍频系数方法:

IP核中生成VCO的值,和使用公式计算的一致:

再看一下设置的输出时钟clkout1,clkout2,clkout3。和公式计算的一致。

二、MMCM 内部寄存器介绍

按照上面配置的MMCM只能生成一个固定的时钟频率,使用DRP接口能够在FPGA芯片工作中进行MMCM输出时钟的动态更改。

1、MMCM内部结构(XAPP888

2、分频参数介绍

关于edge参数举例:

3、相位参数介绍

4、小数分频参数介绍

5、寄存器表

三、MMCM 动态速率重配置(DRP)方法

1、VCO频率配置

VCO频率配置主要使用下面三个寄存器:

Clkreg1主要设置高电平和低电平计数。倍频系数M=HIGH TIME + LOW TIME。如:进行8倍频,50%占空比。设置HIGH TIME=4,LOW TIME=4。Clkreg2中edge和NO COUNT设为0。

Divreg主要设置分频系数D。D=1需设置NO COUNT=1,不进行分频。D=2需设置NO COUNT=0,

HIGH TIME=1,LOW TIME=1.

2、输出频率配置

每个输出端口都有2个配置寄存器,小数分频只有clkout0上具有。常用参数为HIGH TIME,LOW TIME,NO COUNT,EDGE。以clkout0为例:

①VCO=1000MHz,需输出100MHz,50%占空比的时钟,配置HIGH TIME=5,LOW TIME=5,NO COUNT=0,EDGE=0;

②VCO=1000MHz,输出200MHz,50%占空比的时钟,配置HIGH TIME=2,LOW TIME=3,NO COUNT=0,EDGE=1。

3、重配置流程

在重配置过程中需要对MMCM进行复位(rst=1),配置完成后清除复位(rst=0)。

①检验时钟是否锁定(lock=1);

②读取寄存器中的数据;

③修改对应bit位的数据;

④再次读取寄存器中值是否更改完成;

⑤所有寄存器配置完成后退出。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2248336.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

对于GC方面,在使用Elasticsearch时要注意什么?

大家好,我是锋哥。今天分享关于【对于GC方面,在使用Elasticsearch时要注意什么?】面试题。希望对大家有帮助; 对于GC方面,在使用Elasticsearch时要注意什么? 1000道 互联网大厂Java工程师 精选面试题-Java…

Spring Boot 与 Spring Cloud Alibaba 版本兼容对照

版本选择要点 Spring Boot 3.x 与 Spring Cloud Alibaba 2022.0.x Spring Boot 3.x 基于 Jakarta EE,javax.* 更换为 jakarta.*。 需要使用 Spring Cloud 2022.0.x 和 Spring Cloud Alibaba 2022.0.x。 Alibaba 2022.0.x 对 Spring Boot 3.x 的支持在其发行说明中…

在Vue3项目中引入省市区联动插件

1. 打开HBuilder X 图1 2. 新建一个空项目 文件->新建->项目->uni-app 填写项目名称:vue3demo 选择项目存放目录:D:/HBuilderProjects 一定要注意vue的版本,当前选择的版本为vue3 图2 点击“创建”之后进入项目界面 图3 其中各文件…

STM32C011开发(3)----Flash操作

STM32C011开发----3.Flash操作 概述硬件准备视频教学样品申请源码下载参考程序生成STM32CUBEMX串口配置堆栈设置串口重定向FLASH数据初始化FLASH 读写演示 概述 STM32C011 系列微控制器内置 Flash 存储器,支持程序存储与数据保存,具备页面擦除、双字写入…

JVM详解:垃圾回收机制

java作为大型服务开发的主流语言,其运行会占用大量的内存空间,那么合理的使用有限的服务器资源至关重要。和大多数翻译性语言一样,java的运行环境jvm也内置垃圾回收机制,其通过一些合理的算法组合,定时来对堆中保存的不…

【拥抱AI】如何查看Milvus的使用情况?

查看Milvus的使用情况和性能指标可以帮助你了解数据库的健康状况、性能指标和资源使用情况。以下是一些常用的方法和工具,帮助你全面监控和查看Milvus的使用情况和性能指标。 1. 查看日志 Milvus的日志文件记录了运行时的各种信息,包括错误、警告和调…

基于Netty实现聊天室

前言 了解了Netty的基本功能和相关概念,使用基于Netty实现多人聊天的功能。 需求 1.服务端能够接收客户端的注册,并且接受用户的信息注册 2.服务端能够处理客户端发送的消息,并且根据消息类型进行私发或者广播发送消 3.服务端能够私发消…

利用 Jsoup 进行高效 Web 抓取与 HTML 处理

Jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 JQuery 的操作方法来取出和操作数据。 官网:https://jsoup.org/ 中文文档:Jsou…

【c语言】文件操作详解 - 从打开到关闭

文章目录 1. 为什么使用文件?2. 什么是文件?3. 如何标识文件?4. 二进制文件和文本文件?5. 文件的打开和关闭5.1 流和标准流5.1.1 流5.1.2 标准流 5.2 文件指针5.3 文件的打开和关闭 6. 文件的读写顺序6.1 顺序读写函数6.2 对比一组…

004 逻辑变量与运算

当0和1表示逻辑状态时,两个二进制数码按照某种特定的因果关系进行的运算——就叫:逻辑运算 1.二值逻辑变量与基本逻辑运算 逻辑代数: 与普通代数不同,逻辑代数中的变量只有0和1两个可取值,它们分别用来表示完全两个对立的逻辑状态 逻辑运…

Deepnote、JupyterLab、Google Colab、Amazon SageMaker、VS Code对比

功能比较 平台语言支持扩展性数据连接可视化能力DeepnotePython、R、SQL中等,依赖云端支持主要云平台(BigQuery、Snowflake等)内置仪表盘与交互图表JupyterLab多种语言,插件支持广泛极高,完全可自定义使用库&#xff…

网络安全中的数据科学如何重新定义安全实践?

组织每天处理大量数据,这些数据由各个团队和部门管理。这使得全面了解潜在威胁变得非常困难,常常导致疏忽。以前,公司依靠 FUD 方法(恐惧、不确定性和怀疑)来识别潜在攻击。然而,将数据科学集成到网络安全中…

C语言数据结构与算法--简单实现队列的入队和出队

(一)队列的基本概念 和栈相反,队列(Queue)是一种先进先出(First In First Out)的线性表。只 允许在表的一端进行插入,而在另一端删除元素,如日常生活中的排队现象。队列中 允许插入的一端叫队尾…

快速理解微服务中Sentinel怎么实现限流

Sentinel是通过动态管理限流规则,根据定义的规则对请求进行限流控制。 一.实现步骤 1.定义资源:在Sentinel中,资源可以是URL、方法等,用于标识需要进行限流的请求;(在Sentinel中,需要我们去告诉Sentinel哪些…

matlab根据excel表头筛选表格数据

有如下表格需要筛选: 如果要筛选style中的A,color中的F2,num中的3。 代码如下: clear;clc; file_Pathstrcat(F:\csdn\,test1.xlsx); %表格路径、文件名 E1readtable(file_Path,Sheet,1); %读取表格中的字母和数字,1代表第一个…

学习日志016--python实现双向循环列表与链栈

python中一些复合数据结构通过类的封装来实现的。双向循环链表与链栈也在其中。 双向循环链表 双向循环链表是一种特殊类型的链表,它结合了双向链表和循环链表的特点。在双向循环链表中,每个节点不仅包含数据,还持有指向前一个和后一个节点的…

【Docker】常用命令汇总

Docker 是1个开源的应用容器引擎,基于Go 语言并遵从 Apache2.0 协议开源。 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。 容器是完全使用沙箱机制,相…

QT QRadioButton控件 全面详解

本系列文章全面的介绍了QT中的57种控件的使用方法以及示例,包括 Button(PushButton、toolButton、radioButton、checkBox、commandLinkButton、buttonBox)、Layouts(verticalLayout、horizontalLayout、gridLayout、formLayout)、Spacers(verticalSpacer、horizontalSpacer)、…

Docker部署mysql:8.0.31+dbsyncer

Docker部署mysql8.0.31 创建本地mysql配置文件 mkdir -p /opt/mysql/log mkdir -p /opt/mysql/data mkdir -p /opt/mysql/conf cd /opt/mysql/conf touch my.config [mysql] #设置mysql客户端默认字符集 default-character-setUTF8MB4 [mysqld] #设置3306端口 port33…

[SUCTF 2019]EasySQL--详细解析

信息搜集 进入界面是一个搜索框: 查看一下源代码,显示是POST传参: 随便上传个数字1: 抓包测试一下闭合,发现以双引号闭合会回显nonono,单引号闭合则无回显。 由于没有报错信息,所以我们不能确定具体的闭…