FPGA与AD9371的数据交互

AD9371属于零中频架构,接收侧直接通过本振下边到零频(基带);

接收器带宽(并非射频前端的模拟带宽):7.5MHz 至 100MHz;

带宽的定义:从数据接口侧,能完整的解析或者解调频谱的范围;

ORX 属于观察通道,用于TX发射的相关指标校正,PA线性度的调整(DPD);

AD9371接收侧有4个Lane是204B的接口,两个Lane用于RX,两个Lane用于ORX;

AD9371发送侧则是4个Lane用于TX;

时钟是只需要提供一路device clock 即可;经device clock就能够产生采样时钟等;

时钟芯片给AD9371提供 sysref 和 device clock;

时钟芯片同时给AD9371和FPGA提供SYSREF;

根据AD9371的数据手册和典型应用,可以明确两点:AD9371内部包含处理SYSREF信号的电路,但它通常被设计为接收外部SYSREF,而不是作为主要来源向FPGA提供。

在实际系统设计中,由专用时钟芯片(如AD9528)同时向FPGA和AD9371提供SYSREF信号,才是确保JESD204B链路稳定工作的标准且推荐做法

AD9371的软件设置

设置采样率和通道使能:

设置校准方案:

204B接口使能方案:

RX通道:

TX通道:

ORX通道:

FPGA Block Design IP设置:

ORX和TX :F=2;

RX:F=4;

2个Lnae给RX ,2个Lane给ORX;

RX的线速率计算:(M*122.88*16/0.8)/L = 4915.2Mbps,M=4;L=2;

ORX的线速率计算:(M*122.88*16/0.8)/L = 2457.6Mbps,M=2;L=2;

链路时钟为122.88M;

TX侧需要一个时钟周期送进入两个采样点,所以TX侧时钟为61.44Mhz;

如果要把数据恢复到122.88M,可以增加一个FIFO进行时钟域变换,由61.44M变为122.88M;

RX和ORX为122.88M;

BD:

字符对齐:

复位:

此处的tx_sync 由ad9371送进来,

由高速接口给AD9371,因为接收serdes方需要提供sync,所以ad9371会输出tx_sync给到FPGA的204b的 TX端;

输出 rx_sync 和orx_sync 给到ad9371:

利用 IBUFDS,OBUFDS进行差分信号与单端信号转换;

通过顶层给出到ad9371,或者由ad9371给进来:

Jesd204b phy IP 的配置:4.9152G对应参考时钟输出122.88M;

由于ad9371中204b接口orx配置为2457.6M,对应时钟频率应该是61.44M,此部分就需要去初始化单独的线速率,因为IP只能配置整体4个Lane的线速率,配置ORX就只能在软件侧通过AXI接口去配置ORX的两个Lane;

RX部分的Framer映射Lane0 和 Lane1;

FramerADC_Xbar = 0xB1;指图16从Rx 通过sample crossbar 映射到framer ADC;

高速接口的映射 serializerLaneCrossbar = 0x08;对应图16右侧的映射

ORX部分的Frame映射:(ORX线速率为RX的一半)

FramerADC_Xbar = 0xB1;

serializerLaneCrossbar = 0x40;映射到Lane2和Lane3;

因为xilinx的jesd204b的接收IP 是低字节先输出,那么AD9371是ADCX15:8先出来,就需要进行高低字节转换,而jesd204b 接口位宽64位,正好是{Q2,I2,Q1,I1}, 122.88M,两个通道的4个ADC数据;

对于ORX观测通道是在122.88M时钟下输出64位,每个时钟输出两个采样点,

{Q1(n+1),I1(n+1),Q1(n),I1(n)},因为orx只有2个ADC,所以输出数据应该是每隔一个122.88M时钟输出两个采样点。但是ADI为了方便ORX和RX通道相同的线速率,直接将ORX的采样数据进行2倍过采样输出,也就是变成了122.88M*2输出给用户端;需要设置ORX通道的framer的时候进行设置。

映射关系:

相关推荐
嵌入式-老费2 小时前
esp32开发与应用(和高云FPGA的配合)
fpga开发
156002548403 小时前
基于3U VPX总线架构的VU37P FPGA高带宽HBM缓存数据处理卡(缓存带宽480GB/s)
fpga开发·架构
szxinmai主板定制专家6 小时前
基于 RK3576 的智能割草机器人解决方案,从样机到量产
人工智能·嵌入式硬件·计算机视觉·fpga开发·机器人·rk3588+fpga·割草机器人
续写烂尾1 天前
SD NAND vs SPI NAND:接口协议、坏块管理与开发成本全面对比
fpga开发
叶子野格1 天前
《Verilog学习:数字系统设计基础》
学习·fpga开发
花 满 楼1 天前
TPWM — PWM 测量模式(TIM PWM Measurement Mode)
单片机·嵌入式硬件·fpga开发
叶子野格1 天前
《Verilog学习:前置知识》
学习·fpga开发
科恒盛远2 天前
RFSoC XCZU47DR 100G UDP高速数据传输的实现与调试(PCIE908 板卡技术系列三)
fpga开发
小麦嵌入式2 天前
FPGA入门(十一):受控线性序列机 UART 发送升级
stm32·单片机·嵌入式硬件·mcu·fpga开发·硬件工程
X_xcccc2 天前
2026硬核拆解:高性能异构计算板卡选型指南
fpga开发