AD9371 官方例程之 tx_jesd 与 xcvr接口映射
AD9371 系列快速入口
AD9371+ZCU102 移植到 ZCU106 : AD9371 官方例程构建及单音信号收发
AD9371 官方例程 时钟间的关系与生成 : AD9371 官方例程HDL详解之JESD204B TX侧时钟生成(一)
AD9371 官方例程 时钟间的关系与生成 : AD9371 官方例程HDL详解之JESD204B TX侧时钟生成 (二)
梳理 AD9371 时钟,理解采样率和各个时钟之间的关系 : AD9371 官方例程HDL详解之JESD204B TX侧时钟生成 (三)
文章目录
- 前言
- 一、AD9371 ----> FMC_DP
- 二、FMC_DP ----> FPGA_TX/RX
- 三、rx_data_x and tx_data_x must be connected to the same channel
- 四、ADRV9009
前言
axi_ad9371_tx_jesd --> util_ad9371_xcvr接口映射讲解

一、AD9371 ----> FMC_DP
AD9371内部原理图

FMC链接

9371:
SERDIN0 ——> A26 27 ——> DP2_C2M
SERDIN1 ——> C2 C3 ——> DP0_C2M
SERDIN2 ——> A30 31 ——> DP3_C2M
SERDIN3 ——> A22 23 ——> DP1_C2M
SERDOUT0 ——> A2 3 ——> DP1_M2C
SERDOUT1 ——> A6 7 ——> DP2_M2C
SERDOUT2 ——> C6 7 ——> DP0_M2C
SERDOUT3 ——> A10 11 ——> DP3_M2C
二、FMC_DP ----> FPGA_TX/RX

SERDIN0 ——> DP2_C2M ——> tx_data [1] ——> tx_1(xcvr) ——> tx_phy0(tx_jesd)
SERDIN1 ——> DP0_C2M ——> tx_data [2] ——> tx_2(xcvr) ——> tx_phy1(tx_jesd)
SERDIN2 ——> DP3_C2M ——> tx_data [3] ——> tx_3(xcvr) ——> tx_phy2(tx_jesd)
SERDIN3 ——> DP1_C2M ——> tx_data [0] ——> tx_0(xcvr) ——> tx_phy3(tx_jesd)
SERDOUT0 ——> DP1_M2C ——> rx_data [0] ——> rx_0(xcvr) ——> rx_phy0(rx_jesd)
SERDOUT1 ——> DP2_M2C ——> rx_data [1] ——> rx_1(xcvr) ——> rx_phy1(rx_jesd)
SERDOUT2 ——> DP0_M2C ——> rx_data [2] ——> rx_2(xcvr) ——> rx_phy2(rx_os_jesd)
SERDOUT3 ——> DP3_M2C ——> rx_data [3] ——> rx_3(xcvr) ——> rx_phy3(rx_os_jesd)
三、rx_data_x and tx_data_x must be connected to the same channel



.tx_data_0_n (tx_data_n[0]),.tx_data_0_p (tx_data_p[0]),.tx_data_1_n (tx_data_n[1]),.tx_data_1_p (tx_data_p[1]),.tx_data_2_n (tx_data_n[2]),.tx_data_2_p (tx_data_p[2]),.tx_data_3_n (tx_data_n[3]),.tx_data_3_p (tx_data_p[3]),
可知t/rx_N_p/n 与 t/rx_data_N_p/n 和 tx_data_p/n[N] 一一映射
FPGA 与 FMC_DP 对应关系如下,每个 channel 对应相同的DP口 ,所以每个DP口连接相同的tx_data_p/n[N]即可符合要求


根据XDC文件
rx_data [0] ——> DP1_M2C | tx_data [0] ——> DP1_C2M
rx_data [1] ——> DP2_M2C | tx_data [1] ——> DP2_C2M
rx_data [2] ——> DP0_M2C | tx_data [2] ——> DP0_C2M
rx_data [3] ——> DP3_M2C | tx_data [3] ——> DP3_C2M
每个DP口连接相同的tx_data_p/n[N],符合 connected to the same channel
四、ADRV9009
ADRV 9009 与 AD9371 类似
AD9009内部原理图

SERDIN0 ——> A22 23 ——> DP1_C2M
SERDIN1 ——> A30 31 ——> DP3_C2M
SERDIN2 ——> C2 C3 ——> DP0_C2M
SERDIN3 ——> A26 27 ——> DP2_C2M
SERDOUT ADRV9009 与 AD 9371相同
9009 XDC 文件

SERDIN0 ——> DP1_C2M ——> tx_data [0] ——> tx_0 ——> tx_phy0
SERDIN1 ——> DP3_C2M ——> tx_data [3] ——> tx_3 ——> tx_phy1
SERDIN2 ——> DP0_C2M ——> tx_data [2] ——> tx_2 ——> tx_phy2
SERDIN3 ——> DP2_C2M ——> tx_data [1] ——> tx_1 ——> tx_phy3
AD9371 和 ADRV9009映射总结如下:

相关文章:
AD9371 官方例程之 tx_jesd 与 xcvr接口映射
AD9371 系列快速入口 AD9371ZCU102 移植到 ZCU106 : AD9371 官方例程构建及单音信号收发 AD9371 官方例程 时钟间的关系与生成 : AD9371 官方例程HDL详解之JESD204B TX侧时钟生成(一) AD9371 官方例程 时钟间的关系与生成 &…...
UserWarning: CUDA initialization: CUDA unknown error
CUDA在suspend之后不可用问题 问题描述 一觉醒来,电脑cuda不可用 /home/你的电脑/pytorch/lib/python3.8/site-packages/torch/cuda/__init__.py:107: UserWarning: CUDA initialization: CUDA unknown error - this may be due to an incorrectly set up enviro…...
C算法:使用选择排序实现从(大到小/从小到大)排序数组,且元素交换不可使用第三变量。
需求: 使用选择排序实现从(大到小/从小到大)排序,且元素交换不可使用第三变量 (异或交换法) 代码实现: #include <stdio.h> void maopao(int* array,int len,int(*swap)(int a,int b)) {int i,j;for(i0;i<len-1;i){for(ji1;j<…...
用mysql客户端操作时,一直提示 Lost connection to MySQL server during query
问题:ERROR 2013 (HY000): Lost connection to MySQL server during query :查询期间失去与 MySQL 服务器的连接 原因:如果客户端如果太长时间没动静,连接器就会自动将连接断开, 这个时间是由参数wait_timeout控制的,…...
KubeSphere一键安装部署K8S集群(单master节点)-亲测过
1. 基础环境优化 hostnamectl set-hostname master1 && bash hostnamectl set-hostname node1 && bash hostnamectl set-hostname node2 && bashcat >> /etc/hosts << EOF 192.168.0.34 master1 192.168.0.45 node1 192.168.0.209…...
vue3 element-plus 组件table表格 勾选框回显(初始化默认回显)完整静态代码
<template><el-table ref"multipleTableRef" :data"tableData" style"width: 100%"><el-table-column type"selection" width"55" /><el-table-column label"时间" width"120">…...
Redis --- 安装教程
Redis--- 特性,使用场景,安装 安装教程在Ubuntu下安装在Centos7.6下安装Redis5 特性在内存中存储数据可编程的扩展能力持久化集群高可用快速 应用场景实时数据存储作为缓存或者Session存储消息队列 安装教程 🚀安装之前切换到root用户。 在…...
代码阅读:LanGCN
toc 1训练 1.1 进度条 import tqdm as tqdm for i, data in tqdm(enumerate(train_loader),disablehvd.rank()):1.2 多进程通信 多线程通信依靠共享内存实现,但是多进程通信就麻烦很多,因此可以采用mpi库,如果是在python中使用࿰…...
基于Java的校园餐厅订餐管理系统设计与实现(源码+lw+部署文档+讲解等)
文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding) 代码参考数据库参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者&am…...
使用C#和Flurl.Http库的下载器程序
根据您的要求,我为您编写了一个使用C#和Flurl.Http库的下载器程序,用于下载凤凰网的图片。以下是一个简单的示例代码: using System; using Flurl.Http;namespace DownloadImage {class Program{static void Main(string[] args){string url…...
面试经典150题——Day19
文章目录 一、题目二、题解 一、题目 58. Length of Last Word Given a string s consisting of words and spaces, return the length of the last word in the string. A word is a maximal substring consisting of non-space characters only. Example 1: Input: s “…...
TP6首页加载报错 Call to a member function run() on null
最近新接入一个二开的项目,tp6的项目内置的composer.json文件里引入的topthink框架包文件却是"topthink/framework": "5.0.*",导致了以下错误: 错误: Fatal error: Uncaught Error: Call to a member function run() o…...
洗车小程序源码:10个必备功能,提升洗车体验
作为洗车行业的专家,我们深知在如今数字化时代,拥有一款功能强大的洗车小程序是提升用户体验和业务发展的关键。本文将向您介绍洗车小程序源码中的10个必备功能,让您的洗车业务达到新的高度。 在线预约系统 通过洗车小程序源码,…...
macOS telnet替代方式
前言 经过使用Linux,常常用Linux的telnet查看端口畅通,是否有防火墙,但是在mac上已经没有这个命令了,那么怎么使用这个命令或者有没有其他替代呢,win和linux是否可以使用相同的替代。macOS可以原生用nc命令替代&#…...
【leetcode】独特的电子邮件地址
题目描述 每个 有效电子邮件地址 都由一个 本地名 和一个 域名 组成,以 ‘’ 符号分隔。除小写字母之外,电子邮件地址还可以含有一个或多个 ‘.’ 或 ‘’ 。 例如,在 aliceleetcode.com中, alice 是 本地名 ,而 lee…...
解密Java中神奇的Synchronized关键字
文章目录 🎉 定义🎉 JDK6以前🎉 偏向锁和轻量级锁📝 偏向锁📝 轻量级锁📝 自旋锁📝 重量级锁🔥 1. 加锁🔥 2. 等待🔥 3. 撤销 🎉 锁优化…...
微信删除的好友还能找回来吗?盘点5种超实用的方法!
当我们在认识新的朋友时,都喜欢通过添加对方微信来保持日后的联系。但是有时候可能会由于没有及时备注而不小心误删了对方。想要将对方加回来,又找不到有效的方法。微信删除的好友还能找回来吗?当然可以了!但我们要根据实际情况选…...
Nmap 常用命令汇总
Nmap 命令格式 namp 【扫描类型】 选项 {目标ip 或 目标网络段} 根据扫描类型,可分成两类,一种是主机扫描类型,另一种是端口扫描类型 一、常用主机扫描: 扫描类型: -PR 对目标ip所在局域网进行扫描 (使…...
谷歌浏览器最新版和浏览器驱动下载地址
谷歌最新版和驱动下载地址...
[游戏开发][Unity]Unity运行时加载不在BuildSetting里的场景
从Assets开始路径要写全,需要.unity扩展名 如果路径写错了会报错 LoadSceneAsyncInPlayMode expects a valid full path. The provided path was Assets/Works/Resource/Scenes.unity string sceneFullPath "Assets/Works/Resource/Scenes/TestScene.unity…...
golang开发-定时与防抖工具包(dt)设计与实现
定时与防抖工具包(core/pkg/dt)设计与实现 1. 包做什么 dt(delay / timer)封装与时间窗口相关的常用能力,减少业务侧手写 Timer / Ticker / 竞态处理。 API作用SetTimeout延迟执行一次,支持取消SetInter…...
BetterGenshinImpact多开终极指南:如何同时管理多个原神账号
BetterGenshinImpact多开终极指南:如何同时管理多个原神账号 【免费下载链接】better-genshin-impact 📦BetterGI 更好的原神 - 自动拾取 | 自动剧情 | 全自动钓鱼(AI) | 全自动七圣召唤 | 自动伐木 | 自动刷本 | 自动采集/挖矿/锄地 | 一条龙 | 全连音…...
微信聊天记录永久保存的3种方法:WeChatMsg完整指南与实战技巧
微信聊天记录永久保存的3种方法:WeChatMsg完整指南与实战技巧 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/w…...
语义通信实战:跳过“比特”保“语义”,手把手构建轻量级图像压缩重建网络(基于PyTorch)
语义通信实战:轻量级图像压缩重建网络从零实现(PyTorch版) 在无人机巡检、远程医疗等物联网场景中,传统图像传输常面临带宽与功耗的双重压力。我们团队去年为某农业无人机项目部署图像识别系统时,发现传统JPEG2000压缩…...
DoL游戏整合包终极指南:三步打造完美中文美化体验
DoL游戏整合包终极指南:三步打造完美中文美化体验 【免费下载链接】DOL-CHS-MODS Degrees of Lewdity 整合 项目地址: https://gitcode.com/gh_mirrors/do/DOL-CHS-MODS 你是否曾经为英文游戏界面而烦恼?是否觉得原版游戏画风不够精致?…...
LightOnOCR-2-1B GPU算力方案:单卡A10部署 vs 双卡T4分片部署成本效益对比
LightOnOCR-2-1B GPU算力方案:单卡A10部署 vs 双卡T4分片部署成本效益对比 1. 项目背景与需求分析 LightOnOCR-2-1B 是一个拥有10亿参数的多语言OCR识别模型,支持包括中文、英文、日文、法文、德文、西班牙文、意大利文、荷兰文、葡萄牙文、瑞典文和丹…...
嵌入式C语言宏配置技巧与实战应用
1. 嵌入式C语言宏配置的核心价值在嵌入式开发中,资源受限是常态。我曾参与过一个智能家居网关项目,FLASH只有128KB,RAM仅32KB。在这种环境下,传统的配置文件解析库根本装不下。这时宏配置就展现出独特优势——零运行时开销、编译期…...
Ubuntu服务器生产环境部署Pixel Script Temple全记录
Ubuntu服务器生产环境部署Pixel Script Temple全记录 1. 准备工作与环境检查 在开始部署之前,我们需要确保服务器环境满足基本要求。首先确认你的Ubuntu服务器版本为20.04 LTS或22.04 LTS,这两个版本都提供长期支持,适合生产环境使用。 运…...
408计算机考研-计算机操作系统笔记-王道
计算机操作系统笔记-王道1.1.11.1.2操作系统的概念与功能操作系统的概念(定义)操作系统的功能和目标--向上提供方便易用的服务总结1.1.3 操作系统的特性并发与共享虚拟异步总结1.2_操作系统的发展和分类手工阶段批处理阶段--单道批处理系统多道批处理系统…...
OpenClaw环境隔离方案:用Docker部署Qwen3-4B-Thinking-2507-GPT-5-Codex-Distill-GGUF避免依赖冲突
OpenClaw环境隔离方案:用Docker部署Qwen3-4B-Thinking-2507-GPT-5-Codex-Distill-GGUF避免依赖冲突 1. 为什么需要Docker环境隔离 去年我在本地尝试部署OpenClaw时,最头疼的问题就是Python依赖冲突。当时为了同时运行OpenClaw和一个本地大模型…...
