AD9371 官方例程HDL详解之JESD204B TX_CLK生成 (二)

AD9371 系列快速入口

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

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

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

参考资料:
UltraScale Architecture GTH Transceivers User Guide UG576

文章目录

  • 前言
  • 一、TXUSRCLK 和 TXUSRCLK2
  • 二、TXOUTCLK
  • 三、25 MHz clock


前言

AD9371 官方例程HDL详解之JESD204B TX_CLK生成 (一)


一、TXUSRCLK 和 TXUSRCLK2

TXUSRCLK2 主要负责 写数据到 TXDATA 端口,TXUSRCLK主要提供 PCS 逻辑时钟。PCS中还有一个时钟域: PMA parallel clock domain (XCLK)。 TX Serial Clock是高速串行时钟。下面重点介绍TXUSRCLK和TXUSRCLK2
在这里插入图片描述
TXUSRCLK 和 TXUSRCLK2 之间的关系和 TX_DATA_WIDTH TX_INT_DATAWIDTH 等参数有关,本例程中,TX8B10BEN=1; TX_DATA_WIDTH =40; TX_INT_DATAWIDTH =1; Internal Data Width =40;

得到TXUSRCLK Rate = Line Rate / 40= link rate;
在这里插入图片描述
TXUSRCLK2 = TXUSRCLK= Line Rate / 40= link rate;

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

下图中TXOUTCLK 选择的 TXOUTCLKPMA , 本例中 TXOUTCLKPMA =Line Rate / (2(上升沿和下降沿都有效) x 4 x 5)=Line Rate / 40=TXUSRCLK2 = TXUSRCLK ,可以经过BUFG_GT后直接驱动TXUSRCLK2和TXUSRCLK 。

在这里插入图片描述

二、TXOUTCLK

在这里插入图片描述
TXOUTCLK 经过 BUFG_GT后 驱动TXUSRCLK2和TXUSRCLK ,TXOUTCLK 可以根据 TXOUTCLKSEL 选择来源,根据下述程序 TXOUTCLK = 3’b011; 选择 TXPLLREFCLK_DIV1

在这里插入图片描述在这里插入图片描述
TXPLLREFCLK_DIV1 根据 TXSYSCLKSEL选择时钟源

sys_clk_sel = ADXCVR_SYS_CLK_QPLL0=3;

TXSYSCLKSEL: assign tx_sys_clk_sel_s = (up_tx_sys_clk_sel[1] == 0) ? 2'b00 : {1'b1,~up_tx_sys_clk_sel[0]};

所以最低位取反,TXSYSCLKSEL = 2’b10 ;TXOUTCLK 来自于 QPLL0 的参考时钟

由上节可知 QPLL0、 QPLL1、 CPLL的参考时钟 都是 MGTREFCLK 通过 IBUFDS_GTE4后提供的GTREFCLK0,即 ref_clk1,AD9528 的 OUT1TXOUTCLK 来自于AD9528 的 OUT1

在这里插入图片描述

TXOUTCLKPCS 和 TXOUTCLKFABRIC 是冗余输出

TXOUTCLK 通过 BUFG_GT后 可以用作互联逻辑时钟

三、25 MHz clock

对于同步和定时,需要一个 尽可能接近25MHz的时钟 ,对于SATA OOB,必须是25MHz

在这里插入图片描述

25MHz 根据 TXPLLREFCLK_DIV1 分频产生 ,TXPLLREFCLK_DIV1 是PLL的参考时钟,目前 AD9528 输出的OUT1 是122.88MHz, 大于100 ,小于 125 , 所以 TX_CLK25_DIV = 5 ;同理 RX_CLK25_DIV = 5 。

在这里插入图片描述
TX CLK25 DIV 和 RX CLK25 DIV 在 util_ad9371_xcvr ip 中 设置为5

在这里插入图片描述


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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

分享一下我家网络机柜,家庭网络设备推荐

家里网络机柜搞了几天终于搞好了,非专业的,走线有点乱,勿喷。 从上到下的设备分别是: 无线路由器(当ap用):TL-XDR6088 插排:德木pdu机柜插排 硬盘录像机:TL-NVR6108-L8P 第二排左边…

仿CSGO盲盒开箱源码 盲盒商城源码 盲盒开箱源码 潮物盲盒商城源码

仿CSGO盲盒开箱源码 盲盒商城源码 盲盒开箱源码 潮物盲盒商城源码 测试环境:宝塔、Linux、PHP7.2、MySQL5.6 根目录 public,伪静态 thinkphp,php需要Redis扩展 后台:/stf 账号:admin 密码:123123 *后台…

Windows 安装 Java

1. 安装 JDK 从 Oracle 的官网下载的 JDK,例如 JDK 21 双击下载得到的 msi 文件,开始安装 JDK 选择要安装的文件路径(我一般都默认): 等待安装: 安装完成: 2. 验证是否安装成功 2.1. 打开 cmd…

反射的作用( 越过泛型检查 和 可以使用反射保存所有对象的具体信息 )

1、绕过 编译阶段 为集合添加数据 反射是作用在运行时的技术,此时集合的泛型将不能产生约束了,此时是可以 为集合存入其他任意类型的元素的 。泛型只是在编译阶段可以约束集合只能操作某种数据类型,在 编译成Class文件进入 运行阶段 的时候&a…

计算机视觉实战项目3(图像分类+目标检测+目标跟踪+姿态识别+车道线识别+车牌识别+无人机检测+A*路径规划+单目测距与测速+行人车辆计数等)

车辆跟踪及测距 该项目一个基于深度学习和目标跟踪算法的项目,主要用于实现视频中的目标检测和跟踪。该项目使用了 YOLOv5目标检测算法和 DeepSORT 目标跟踪算法,以及一些辅助工具和库,可以帮助用户快速地在本地或者云端上实现视频目标检测和…

Kubernetes 通过 Deployment 部署Jupyterlab

概要 在Kubernetes上部署jupyterlab服务,链接Kubernetes集群内的MySQL,实现简单的数据开发功能。 前置条件 镜像准备:自定义Docker镜像--Jupyterlab-CSDN博客 MySQL-Statefulset准备:StatefulSet 简单实践 Kubernetes-CSDN博客…

Linux中的开发工具(yum,vim,gcc/g++,gdb,Makefile,git)

文章目录 1. Linux软件包管理器——yumyum 语法yum 常用命令安装 yum 仓库源 2. Linux编辑器——vimvim 的五种常用模式模式切换vim 基本操作命令模式命令集(1)光标命令(2)复制粘贴命令(3)撤销与重做&#…

[H5动画制作系列]雪花随机产生飘落

雪花图片参考: 全局代码: var max120; var index0; 第一帧代码: index; if(index<max){posX550*Math.random();posY220*Math.random()-100;scale0.8*Math.random()0.2;var snowflakenew lib.snowlink();snowflake.xposX;snowflake.yposY;snowflake.scaleXscale;snowflake…

Metabase:简单快捷的商业智能与数据分析工具 | 开源日报 No.61

moby/moby Stars: 66.8k License: Apache-2.0 Moby 是一个由 Docker 创建的开源项目&#xff0c;旨在实现和加速软件容器化。它提供了工具包组件的“乐高集”&#xff0c;可以将它们组装成基于容器的自定义系统的框架。组件包括容器生成工具、容器注册表、业务流程工具、运行时…

Java EE-servlet API 三种主要的类

上述的代码如下&#xff1a; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.i…

Node学习笔记之HTTP 模块

回顾&#xff1a;什么是客户端、什么是服务器&#xff1f; 在网络节点中&#xff0c;负责消费资源的电脑&#xff0c;叫做客户端&#xff1b;负责对外提供网络资源的电脑&#xff0c;叫做服务器。 http 模块是 Node.js 官方提供的、用来创建 web 服务器的模块。通过 http 模块…

Zookeeper、Kafka集群与Filebeat+Kafka+ELK架构、部署实例

Zookeeper、Kafka集群与FilebeatKafkaELK架构、部署实例 一、Zookeeper1.1、Zookeeper 定义1.2、Zookeeper 工作机制1.3、Zookeeper 特点1.4、Zookeeper 数据结构1.5、Zookeeper 应用场景1.5、Zookeeper 选举机制1.5.1、 第一次启动选举机制1.5.2、 非第一次启动选举机制 二、Z…