AD9371 官方例程HDL详解(一)

文章目录

  • 前言
  • [一、AD9371 ----> FMC_DP](#一、AD9371 ----> FMC_DP)
  • [二、FMC_DP ----> FPGA_TX/RX](#二、FMC_DP ----> FPGA_TX/RX)
  • [三、rx_data_x and tx_data_x must be connected to the same channel](#三、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映射总结如下:

相关推荐
₯㎕星空&繁华17 小时前
Linux-地址空间
linux·运维·服务器·经验分享·笔记
Cx330❀19 小时前
【数据结构初阶】--排序(三):冒泡排序、快速排序
c语言·数据结构·经验分享·算法·排序算法
SKYDROID云卓小助手1 天前
三轴云台之控制信号解析与执行
运维·服务器·网络·人工智能·信号处理
我要学习别拦我~1 天前
读《精益数据分析》:黏性(Stickiness)—— 验证解决方案是否留住用户
经验分享·数据分析
AI偶然2 天前
AI智能体|扣子(Coze)搭建【批量识别发票并录入飞书】Agent
经验分享
khystal2 天前
ISTA为什么要加上软阈值激活函数?r若没有L1 正则化也要加其他激活函数吗?
神经网络·信号处理
山中月侣2 天前
java集合 之 多列集合
java·开发语言·经验分享·学习方法
草莓熊Lotso2 天前
《吃透 C++ 类和对象(中):拷贝构造函数与赋值运算符重载深度解析》
开发语言·c++·经验分享·笔记·其他
晨非辰2 天前
#C语言——学习攻略:自定义类型路线--结构体--结构体类型,结构体变量的创建和初始化,结构体内存对齐,结构体传参,结构体实现位段
c语言·开发语言·经验分享·学习·其他·学习方法·visual studio
2401_823868223 天前
织构表面MATLAB仿真
人工智能·机器学习·matlab·信号处理