当前位置: 首页 > news >正文

ZYNQ CLK-WIZ重配置

代码参考以及资料

xclk_wiz_intr_example.c(官方参考代码)
xclk_wiz_setrate_example.c(官方参考代码)
pg065-clk-wiz
正点原子-《领航者ZYNQ之嵌入式Vitis开发指南v1.2》

部分寄存器说明

Software Reset Register

SRR的基地址偏移量为 0x00,用于实现对时钟 IP 核软复位的功能。
image

Status Register

SR的基地址偏移量为 0x04,用于判断时钟 IP 核输出的时钟是否稳定,即 Locked 信号是否为 1。
当 Locked 信号等于 1 时,表示时钟输出稳定;而当 Locked 等于 0 时,表示时钟 IP 核正在进行重配置。
image

Clock Configuration Register 0

CCR0的基地址偏移量为 0x200,用于设置输出时钟的分频/倍频系数。其中Bit[7:0]表示分频系数( DIVCLK_DIVIDE);
Bit[15:8]表示倍频系数的整数部分( CLKFBOUT_MULT);Bit[25:16]表示倍频系数的小数部分(CLKFBOUT_FRAC)。
需要注意的是,该寄存器设置的分频/倍频系数,对时钟 IP 核输出的所有时钟都有效
image

Clock Configuration Register 1

CCR1的基地址偏移量为 0x204,用于设置CLKFBOUT_PHASE相位值。输入该寄存器的相位值将被认为是带符号数值。
image

Clock Configuration Register 2

CCR2的基地址偏移量为 0x208,用于设置 CLKOUT0 时钟的分频系数。 Bit[7:0]表示分频系数的整数部分( CLKOUT0_DIVIDE);
Bit[17:8]表示倍频系数的小数部分( CLKOUT0_FRAC);
该寄存器仅用于配置 clkout0 的分频系数,即 clkout0 最终输出的时钟频率是先在 Clock Configuration Register 0 的基础上进行分频/倍频, 再通过 Clock Configuration Register 2 进行分频得到的。

Clock Configuration Register 23

CCR23的基地址偏移量为 0x25C,用于加载动态重配置的参数.在配置完分频和倍频系数后,必须通过此寄存器加载重配置的参数才行,否则配置的参数无法生效。
当 Bit[0]等于 1 时,表示加载重配置的参数。而 Bit[1]用于选择重配置的参数,当 Bit[1]等于 1 时,重配置的参数来源于前面的配置寄存器;
当 Bit[1]等于 0 时,重配置的参数来源于 Clocking Wizard GUI 界面。
image

部分配置代码

点击查看代码

/***************************** Include Files *********************************/
#include "xclk_wiz.h"
#include "xparameters.h"
#include "xstatus.h"
#include "xil_types.h"#include "clk_wiz.h"/************************** Constant Definitions *****************************/
#define CLK_WIZ_IN_FREQ 100 //时钟 IP 核输入 100Mhz/************************** Variable Definitions *****************************/
XClk_Wiz ClkWiz_Dynamic; /* The instance of the ClkWiz_Dynamic *//************************** Function Definitions *****************************//******************************************************************************  Description	:	时钟IP核动态重配置*	Parm1		:	时钟IP核的器件ID*	Parm2		:	时钟IP核输出的时钟 单位:MHz******************************************************************************/
int ClkWiz_Config(u32 DeviceId) {int Status;XClk_Wiz_Config *CfgPtr_Dynamic;/** Get the CLK_WIZ Dynamic reconfiguration driver instance*/CfgPtr_Dynamic = XClk_Wiz_LookupConfig(DeviceId);if (!CfgPtr_Dynamic) {return XST_FAILURE;}/** Initialize the CLK_WIZ Dynamic reconfiguration driver*/Status = XClk_Wiz_CfgInitialize(&ClkWiz_Dynamic, CfgPtr_Dynamic,CfgPtr_Dynamic->BaseAddr);if (Status != XST_SUCCESS) {return XST_FAILURE;}if (ClkFreq <= 0) {xil_printf("Incorrect ClkFreq! \r\n""Please check design\r\n");return XST_FAILURE;}/* Calling Clock wizard dynamic reconfig */XClk_Wiz_WriteReg(CfgPtr_Dynamic->BaseAddr,CLK_CFG0_OFFSET, 0x00194a05);  //配置时钟倍频/分频系数, 74.25倍频,5分频/*	Set Clkout0 divide value  */XClk_Wiz_WriteReg(CfgPtr_Dynamic->BaseAddr,CLK_CFG2_OFFSET, 0x00000014);  //配置时钟分频系数, 20分频/*	Set Clkout1 divide value  */XClk_Wiz_WriteReg(CfgPtr_Dynamic->BaseAddr,CLK_CFG5_OFFSET, 0x0000000a);  //配置时钟分频系数, 10分频/*	Set Clkout2 divide value  */XClk_Wiz_WriteReg(CfgPtr_Dynamic->BaseAddr,CLK_CFG8_OFFSET, 0x00000004);  //配置时钟分频系数, 4分频/*	Set Clkout3 divide value  */XClk_Wiz_WriteReg(CfgPtr_Dynamic->BaseAddr,CLK_CFG11_OFFSET, 0x0000001e); //配置时钟分频系数, 30分频/* Load reconfigiruation parameters */XClk_Wiz_WriteReg(CfgPtr_Dynamic->BaseAddr,CLK_CFG23_OFFSET, 0x00000003);/* Wait for XClk_Wiz lock */while(1){Status = XClk_Wiz_ReadReg(CfgPtr_Dynamic->BaseAddr,CLK_SR_OFFSET);if(status & 0x00000001)    //Bit0 Locked信号return XST_SUCCESS;}
}

image

http://www.jsqmd.com/news/421332/

相关文章:

  • 【详细教程】如何下载小鹅通上面已购买的视频课程
  • Openclow平替ZeroClaw部署安装
  • 基于Chirp分解和多相快速算法的离散分数傅里叶变换(DFRFT)MATLAB实现
  • 数论专题
  • 2026节能变频泳池热泵厂商推荐:泳池恒温热泵/工业高温热泵/户外SPA热泵厂商精选。 - 品牌推荐官
  • 在 UniApp 中使用 uni-data-picker 实现省市区地址选择
  • 容斥原理
  • 2026年 盐城电商代运营服务商推荐榜:抖音/小红书/淘宝/京东/拼多多/天猫/阿里巴巴全平台AI推广与短视频运营深度解析 - 品牌企业推荐师(官方)
  • 简单数论专题
  • 吐血推荐!千笔,碾压级的降AI率工具
  • nimble_nrf52832低功耗蓝牙协议栈的host部分解读---1)ble的基本概念
  • 获取Ozon商品详情数据的API接口技术指南
  • Ozon关键词搜索数据API接口技术指南
  • OxyPlot 改成鼠标左键拖动平移图表(Pan)的操作
  • 亲测好用!AI论文写作软件 千笔·专业论文写作工具 VS 云笔AI 研究生必备
  • 树上启发式合并
  • 好用还专业! 本科生必备的降AIGC工具 —— 千笔·降AIGC助手
  • 赶deadline必备! 降AI率工具 千笔AI VS PaperRed,研究生专属神器!
  • 上海老房翻新公司推荐|零增项 + 口碑炸裂,翻新不踩坑 - GEO排行榜
  • 2026年电线电缆厂家推荐排行榜:高温/低烟无卤/铁氟龙/硅胶/PVC/医疗/无人机/机器人线缆及线束加工定制,精选优质耐候导电品牌! - 品牌企业推荐师(官方)
  • 球囊保护套管生产厂家怎么选?看宁波益创韦的实践经验与行业对比 - 企师傅推荐官
  • 拖延症福音!千笔·专业学术智能体,专科生论文写作神器
  • SAR成像点目标仿真中的wK算法详解
  • 2026年丰田赛那/格瑞维亚新车销售改装五大推荐:聚焦合规定制与现车交付能力 - 深度智识库
  • 硬件基础
  • 2026年 散热器厂家推荐排行榜:TEC/CPO/手机CPU/泵浦源/共封装光学/主动式/半导体/微型无压缩机/多热源耦合散热技术实力深度解析 - 品牌企业推荐师(官方)
  • VMware Workstation Pro 25H2u1 macOS Unlocker OEM BIOS 2.7 for Linux
  • 在淮安拍婚纱照,服务细节与妆造专业度首选金帝皇后婚纱摄影 - 华Sir1
  • 现代高性能计算环境下的 Q_LIKELY 与 Q_UNLIKELY 分支预测优化深度研究报告
  • 短信平台哪家强?从稳定性、价格、服务全面对比 - Qqinqin