AD9371 官方例程裸机SW 和 HDL配置概述(三)

AD9371 系列快速入口

AD9371+ZCU102 移植到 ZCU106 : AD9371 官方例程构建及单音信号收发

ad9371_tx_jesd -->util_ad9371_xcvr接口映射: AD9371 官方例程之 tx_jesd 与 xcvr接口映射

AD9371 官方例程 时钟间的关系与生成 : AD9371 官方例程HDL详解之JESD204B TX侧时钟生成(一)

JESD204B相关IP端口信号 : AD9371 官方例程HDL JESD204B相关IP端口信号

裸机程序配置 AD9528、AD9371、FPGA IP 和主函数梳理: AD9371 官方例程裸机SW 和 HDL配置概述(一)

裸机程序配置 AD9528、AD9371、FPGA IP 和主函数梳理: AD9371 官方例程裸机SW 和 HDL配置概述(二)


继续上一讲 AD9371 官方例程裸机SW 和 HDL配置概述(二)内容,重点讲解 util_ad9371_xcvr IP配置

大部分参数不需要修改, 重要的参数如 TX_OUT_DIV 、QPLL_FBDIV、TX_CLK25_DIV等 ,后续可以通过DRP 重配置,而 num of Lane 等参数 需要正确配置,以例化正确数量的通道

主函数见下一节


util_ad9371_xcvr

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
TX

TX_NUM_OF_LANES = 4, TX使用的 LANE 通道 ,便于确定后续COMMON 和 Channel 例化数目
TX_OUT_DIV = 2, 初始化 TXOUT_DIV 值,RATE 绑定到 000,D初始为 2 分频,后续通过DRP修改TXOUT_DIV
TX_CLK25_DIV = 5, 生成25MHz的分频系数,5: 100 MHz ≤ TXPLLREFCLK_DIV1 ≤ 125 MHz
TX_LANE_INVERT = 0, 0不反转, 端口TXPOLARITY用于反转输出数据的极性
TX_PI_BIASSET = 1, 配置 TX phase interpolator
TXPI CFG = 0x0054, 配置 TX phase interpolator,仅 UltraScale+ FPGAs
A_TXDIFFCTRL = 5’b10110, 0-31,配置A_TXDIFFCTRL


RX

RX_NUM_OF_LANES = 4, RX 和 RX_OS使用的 LANE 通道
RX_OUT_DIV = 1, 同TX
RX_CLK25_DIV = 5 , 同TX
RX_LANE_INVERT = 0, 同TX

RX_DFE_LPM_CFG = 16’h0104, 配置GTX 使用
RX_PMA_CFG = 0x00018480, 配置GTX 使用 配置 PMA_RSV
RX_CDR_CFG = 0x03000023ff20400020, 配置 GTX 使用

RXCDR_CFG0 = 0x0002, 配置 CDR ,使用向导软件 推荐值
RXCDR_CFG2_GEN2 = “1001100101”, 配置 CDR ,使用向导软件 推荐值
RXCDR_CFG2_GEN4 = 0x00B4, 配置 CDR ,使用向导软件 推荐值
RXCDR_CFG3 = 0x0012, 配置 CDR ,使用向导软件 推荐值
RXCDR_CFG3_GEN2 = “011010”, 配置 CDR ,使用向导软件 推荐值
RXCDR_CFG3_GEN3 = 0x0012, 配置 CDR ,使用向导软件 推荐值
RXCDR_CFG3_GEN4 = 0x0024, 配置 CDR ,使用向导软件 推荐值


QPLL
在这里插入图片描述

QPLL_REFCLK_DIV = 1, M ,QPLL系数,后续DRP可修改,配置 QPLL0_REFCLK_DIV 和 QPLL1_REFCLK_DIV
QPLL_FBDIV = “0001010000”, N ,QPLL系数,后续DRP可修改,QPLL0_FBDIV 和QPLL1_FBDIV

QPLL_FBDIV_RATIO = 1, 配置 GTX
QPLL_CFG = “000011010000000000110000001”, GTX

POR_CFG = 0x0006, 保留 ,使用向导软件 推荐值
PPF0_CFG = 0x0600, 保留 ,使用向导软件 推荐值
QPLL_CFG0 = 0x331C, QPLL0 和 1, 保留 ,使用向导软件 推荐值
QPLL_CFG1 = 0xD038, QPLL0 和 1, 保留 ,使用向导软件 推荐值
QPLL_CFG1_G3 = 0xD038,QPLL0 和 1, 保留 ,使用向导软件 推荐值
QPLL_CFG2 = 0x0FC0,QPLL0 和 1, 保留 ,使用向导软件 推荐值
QPLL_CFG2_G3 = 0x0FC0,QPLL0 和 1, 保留 ,使用向导软件 推荐值
QPLL_CFG3 = 0x0120,QPLL0 和 1, 保留 ,使用向导软件 推荐值
QPLL_CFG4 = 0x0003,QPLL0 和 1, 保留 ,使用向导软件 推荐值
QPLL_CP = “0001111111”, QPLL0 , 保留 ,使用向导软件 推荐值
QPLL_CP_G3 = “0000011111”, QPLL0 , 保留 ,使用向导软件 推荐值
QPLL_LPF = “0100110111”, QPLL0 , 保留 ,使用向导软件 推荐值

GTY4_PPF0_CFG = 0x0800, GTY4


CPLL
在这里插入图片描述

CPLL_FBDIV = 2, CPLL 系数 N2 ,后续DRP可修改
CPLL_FBDIV_4_5 = 5, CPLL 系数 N1,后续DRP可修改

CPLL_CFG0 = 0x01FA,CPLL , 保留 ,使用向导软件 推荐值
CPLL_CFG1 = 0x0023, CPLL , 保留 ,使用向导软件 推荐值
CPLL_CFG2 = 0x0002, CPLL , 保留 ,使用向导软件 推荐值
CPLL_CFG3 = 0x0000, CPLL , 保留 ,使用向导软件 推荐值


GTH4_CH_HSPMUX = 0x2424, 配置 GTH
GTH4_PREIQ_FREQ_BST = 0, 配置 GTH
GTH4_RXPI_CFG0 = 0x0002, 配置 GTH , 保留 ,使用向导软件 推荐值, 仅 UltraScale FPGAs
GTH4_RXPI_CFG1 = 0x0015, 配置 GTH , 保留 ,使用向导软件 推荐值

GTY4_CH_HSPMUX = 0x2020, 配置 GTY
GTY4_PREIQ_FREQ_BST = 0, 配置 GTY
GTY4_RTX_BUF_CML_CTRL = 3’b011, 配置 GTY
GTY4_RXPI_CFG0 = 0x0100, 配置 GTY

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JAVA智慧工地管理系统源码基于微服务

智慧工地是将互联网的理念和科技引入施工现场,从施工现场源头抓起,大程度的收集人员、安全、环境、质量等关键业务数据。通过结合物联网、大数据、互联网、云计算等技术建立云端大数据管理平台,形成端云大数据的体系与模式,这就是…

uniapp原生插件之安卓热敏打印机打印插件

插件介绍 安卓热敏打印机打印插件,自动授权,打印机连接监听,打印文本,条形码,二维码,切纸,打印机状态,打印结果查询等 插件地址 安卓热敏打印机打印插件 - DCloud 插件市场 超级…

Python框架之Flask入门和视图

一、Flask入门和视图 需要安装Pycharm专业版 1. Flask简介 Python后端的2个主流框架 Flask 轻量级框架Django 重型框架 Flask是一个基于Python实现的web开发微框架 官方文档:https://flask.palletsprojects.com/ 中文文档:https://dormousehole.readthe…

HarmonyOS UI 开发

引言 HarmonyOS 提供了强大的 UI 开发工具和组件,使开发者能够创建吸引人的用户界面。本章将详细介绍在 HarmonyOS 中应用 JS、CSS、HTML,HarmonyOS 的 UI 组件以及如何自定义 UI 组件。 目录 JS、CSS、HTML 在 HarmonyOS 中的应用HarmonyOS 的 UI 组…

谷歌推出基于AI的产品图像生成工具;[微软免费课程:12堂课入门生成式AI

🦉 AI新闻 🚀 谷歌推出基于AI的产品图像生成工具,帮助商家提升广告创意能力 摘要:谷歌推出了一套基于AI的产品图像生成工具,使商家能够利用该工具免费创建新的产品图像。该工具可以帮助商家进行简单任务(…

基于单片机的智能感应监控系统的设计

收藏和点赞,您的关注是我创作的动力 文章目录 概要 一、系统分析2.1 整个控制系统的设计要求2.2 总体设计方案 二、系统硬件电路设计3.1 硬件电路介绍3.2 控制电路分析3.2.1 复位电路 三 软件设计原理图 四、 结论五、 文章目录 概要 因为人们在生活中对安全防范的…

OpenGL ES入门教程(二)之绘制一个平面桌子

OpenGL ES入门教程(二)之绘制一个平面桌子 前言0. OpenGL绘制图形的整体框架概述1. 定义顶点2. 定义着色器3. 加载着色器4. 编译着色器5. 将着色器链接为OpenGL程序对象6. 将着色器需要的数据与拷贝到本地的数组相关联7. 在屏幕上绘制图形8. 让桌子有边框…

vue:js中合并对象的方法

目前比较常用的一共有三种 1、使用object.assign() 它可以将一个或多个对象的属性复制到目标对象中&#xff0c;第一个参数就是目标对象&#xff0c;这里举个例子&#xff1a; <template><div>{{data}}</div> </template> <script> export de…

Unity中Shader的烘培分支的判断

文章目录 前言一、上一篇文章中所需要的 lightmapUV 只有在烘焙时才会使用1、查看帮助文档后&#xff0c;Unity中判断烘培是否开启&#xff0c;使用的是LIGHTMAP_ON2、我们在 appdata 和 v2f 中&#xff0c;定义第二套UV 前言 Unity中Shader的烘培分支的判断&#xff0c;基于上…

服务器数据恢复—EMC存储pool上数据卷被误删的数据恢复案例

服务器数据恢复环境&#xff1a; EMC Unity某型号存储&#xff0c;连接了2台硬盘柜。2台硬盘柜上创建2组互相独立的POOL&#xff0c;2组POOL共有21块520字节硬盘。21块硬盘组建了2组RAID6&#xff0c;1号RAID6有11块硬盘. 2号RAID6有10块硬盘。 服务器故障&检测&#xff1…

扩容一个新节点

1.删除nodes rm -rf nodes/ 2.挂载本地文件与创建节点 bash build_chain.sh -f ipconf -e /root/tools/fisco-bcos 3.部署节点 bash nodes/127.0.0.1/start_all.sh 4.把共享的gen_node_cert.sh文件下载到本地 cp /root/Desktop/共享文件夹/tools/gen_node_cert.sh ./…

代码生成器

Easycode Entity ##导入宏定义 $!{define.vm}##保存文件&#xff08;宏定义&#xff09; #save("/entity", ".java")##包路径&#xff08;宏定义&#xff09; #setPackageSuffix("entity")##自动导入包&#xff08;全局变量&#xff09; $!{au…

链表详讲(附代码)

1.什么是链表 链表是一种非常常见的数据结构&#xff0c;在程序设计中经常被使用。它由一系列节点组成&#xff0c;每个节点都有用来存放数据的数据区以及存放下一个节点地址指针的地址区。跟顺序表不同的是&#xff0c;链表的节点之间的空间并非是连续的&#xff0c;依靠地址区…

【python VS vba】(5) 在python中使用xlwt操作Excel(待完善ing)

目录 1 什么是xlwt 2 导入xlwt 3 相关语法 3.1 创建新的workbook 3.2 创建新的sheet 3.3 保存workbook 4 python里表格的形式 4.1 矩阵 4.2 EXCEL的数据形式 完全等于矩阵的数字结构 4.3 python里矩阵 5 具体代码 5.1 代码 5.2 结果 5.3 要注意的问题 5.3.1 不能…

STL-set和map

目录 一、pair和make_pair 1. pair 2. make_pair 二、set &#xff08;一&#xff09;set的模板参数列表 &#xff08;二&#xff09;set的构造 &#xff08;三&#xff09;set的插入 1. 测试1 2. 测试2 &#xff08;四&#xff09;low_bound和upper_bound&#xff…

(四)docker:为mysql和java jar运行环境创建同一网络,容器互联

看了很多资料&#xff0c;说做互联的一个原因是容器内ip不固定&#xff0c;关掉重启后如果有别的容器启动&#xff0c;之前的ip会被占用&#xff0c;所以做互联创建一个网络&#xff0c;让几个容器处于同一个网络&#xff0c;就可以互联还不受关闭再启动ip会改变的影响&#xf…

ArcGIS for Android 禁止地图旋转

ArcGIS for Android 禁止地图旋转 话不多说&#xff0c;直接上代码&#xff01;&#xff01;&#xff01; public class LoadMap extends AppCompatActivity {// 地图private MapView mapView;private ArcGISMap map;Overrideprotected void onCreate(Bundle savedInstanceSta…

Ubuntu 系统内核 kernel panic

Ubuntu 系统内核 kernel panic 不能进入系统&#xff1a;报错end kernel panic -not syncing: attemped to kill init! exit code 0x00000100 系统启动的时候&#xff0c;按下‘e’键进入grub编辑界面&#xff0c;编辑grub菜单&#xff0c;选择“kernel /vmlinuz-XXXXro root…

听听ChatGPT对IT行业的发展和就业前景的看法

&#x1f308;个人主页: Aileen_0v0&#x1f525;系列专栏:PYTHON学习系列专栏&#x1f4ab;"没有罗马,那就自己创造罗马~" 目录 (1)判断素数 写法1: 写法2: (2)计算1-100的偶数之和 写法1: 写法2: (3)计算1-100的奇数之和 (4)多层循环 IT行业哪个方向比较…

k8s 多网卡方案multus

kubernetes 多网卡方案之 Multus_CNI 部署以及基本使用 一、multus cni 出现的背景 在k8s的环境中启动一个容器&#xff0c;默认情况下只存在两个虚拟网络接口&#xff08;loopback 和 eth0&#xff09;&#xff0c; loopback 的流量始终都会在本容器内或本机循环&#xff0c…