RFSOC学习记录(一)RF data converter总览

最近使用了27DR的板子,是第一次接触RFSOC的产品,遇到了很多个奇怪的问题,写篇文章总结一下我对RF data converter这个ip核的看法

这是我遇到过配置最复杂的ip核,包括接口数量,时钟结构种种方面的问题,我将通过几个部分分别写下我对这个IP核的理解

1. 概述

ZU27DR属于GEN1的架构,包含8×ADC + 8×DAC,ADC的最高采样率为4.096GHz,DAC的最高采样率为6.554GHz,每个通道支持独立配置采样率,混频模式等操作

模块组成有ADC子系统,包含模拟采样 + DDC(数字下变频) + 抽取滤波的功能

还有DAC 子系统,有插值滤波 + DUC(数字上变频) + 模拟输出的功能

ADC和DAC以tile的形式存在,像27dr这块板子 是4个adc tile,每个tile两片adc,2个dac tile,每个tile四片dac。

Gen 1的架构支持: 1x, 2x, 4x, 8x的插值模式,插值的具体作用之后会讲到

IP核整体集成高速 ADC/DAC 转换、数字下变频(DDC)、数字上变频(DUC)、NCO 混频、插值/抽取滤波等功能。

2. 时钟系统

主要时钟有

  1. Samlping clk: AD/DA的采样时钟,通常为GHz级,时钟大小为驱动采样的实际转换速度
  2. Reference clk: 为内部PLL提供参考输入
  3. AXI clk:驱动FPGA数据通路的时钟速率,通常在100-500mhz左右
  4. clk_out:从ip输出的时钟速率,与采样率有关

具体每个时钟的来源去向会在下一篇文章中详细提到

3. 数据接口

这是ip核完全配置完毕之后向外的接口图

|-----------------------|--------|--------------|-------------------------------------------------|
| 接口名字 | IN/OUT | 驱动时钟 | 功能 |
| s_axi_aclk | IN | N/A | AXI时钟输入 |
| sysref_in | IN | N/A | 外部模拟SYSREF输入 |
| user_sysref_adc | IN | m0_axis_aclk | 来自PL端自己配置的设计的RF-ADC SYSREF输入;与RF-ADC模块0 PL时钟同步 |
| user_sysref_dac | IN | s0_axis_aclk | 来自PL端自己配置的设计的RF-DAC SYSREF输入;与RF-DAC模块0 PL时钟同步 |
| adc/dacX_clk | IN | N/A | RF-ADC/DAC片内PLL参考时钟或采样时钟输入 |
| sX_axis_aclk | IN | N/A | 用于RF-DAC数据输入的时钟输入 |
| sX_axis_aresetn | IN | N/A | sX_axis_aclk域的低电平有效同步复位。在sX_axis_aclk稳定之前应保持低电平 |
| sXY_axis_tdata[M:0] | IN | sX_axis_aclk | AXI 4-流数据输入 |
| sXY_axis_tvalid | IN | sX_axis_aclk | AXI 4-Stream有效 |
| sXY_axis_tready | OUT | sX_axis_aclk | AXI 4-Stream就绪 |
| vout | OUT | N/A | DAC模拟输出 |
| mX_axis_aclk | IN | N/A | 用于RF-ADC数据输出的时钟输入 |
| mXY_axis_tdata[M:0] | OUT | mX_axis_aclk | AXI 4-流数据输出 |
| mXY_axis_tvalid | OUT | mX_axis_aclk | AXI 4-Stream有效 |
| mXY_axis_tready | IN | mX_axis_aclk | AXI 4-Stream就绪 |
| vin | IN | N/A | ADC模拟输入 |
| irq | OUT | s_axi_aclk | 中断输出 |

以上就是ip核接口的名字属性以及功能简介

4. 功能配置

  • DAC 功能

  • 插值倍数:1× / 2× / 4× / 8×

  • Mixer 类型:Fine / Coarse / Bypass

  • 输出模式:Real / I/Q

  • NCO 频率分辨率、相位累加器位宽

  • Output Mode:SNR Optimize / SFDR Optimize

  • ADC 功能

  • 抽取倍数:1× / 2× / 4× / 8×

  • Mixer 类型:Fine / Coarse / Bypass

  • 输入模式:Real / I/Q

  • DDC 功能配置

  • 采样对齐与通道同步

相关推荐
HL_风神1 分钟前
C++设计模式学习-工厂方法模式
c++·学习·设计模式
好奇龙猫2 分钟前
【大学院-筆記試験練習:线性代数和数据结构(23)】
学习
.小墨迹11 分钟前
开源的自动驾驶框架
c++·人工智能·学习·算法·ubuntu·开源·自动驾驶
蒸蒸yyyyzwd8 小时前
cpp对象模型学习笔记1.1-2.8
java·笔记·学习
阿蒙Amon8 小时前
TypeScript学习-第7章:泛型(Generic)
javascript·学习·typescript
Hill_HUIL8 小时前
学习日志23-路由高级特性(静态路由)
网络·学习
今儿敲了吗9 小时前
鸿蒙开发第一章学习笔记
笔记·学习·鸿蒙
szxinmai主板定制专家11 小时前
基于 PC 的控制技术+ethercat+linux实时系统,助力追踪标签规模化生产,支持国产化
arm开发·人工智能·嵌入式硬件·yolo·fpga开发
经年未远12 小时前
vue3中实现耳机和扬声器切换方案
javascript·学习·vue
Hill_HUIL12 小时前
学习日志22-静态路由
网络·学习