RFSoC应用笔记 - RF数据转换器 -08- RFSoC关键配置之RF-DAC内部解析(2.1)

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: RFSoC应用笔记 - RF数据转换器 -08- RFSoC关键配置之RF-DAC内部解析

前言


RFSoC中最重要的部分是射频直采ADC和DAC的配置,因此了解内部相关原理结构可以帮助我们更好理解相关功能配置参数含义。本文参考官方手册,主要对RF-DAC 奈奎斯特区操作、逆sinc滤波器以及数据通路的相关操作进行介绍。

RF-DAC 奈奎斯特区操作


每个 RF-DAC 都可以通过使用混合模式功能优化其在第二个奈奎斯特区的输出响应。 此功能将 RF-DAC 数据与采样时钟混合,因此增加了第二奈奎斯特区的输出功率,同时衰减了第一奈奎斯特区的输出功率。 如下图所示。

image.png

对于正常(非混合模式)操作,蓝线代表理想的 RF-DAC 输出 roll-off sinc 响应。 可以看出,在这种模式下,第二奈奎斯特区的输出图像将被严重衰减。 一个反 sinc 滤波器可用于补偿此模式下第一奈奎斯特区的滚降。

在 RF-DAC 混合模式下,红线代表理想的 RF-DAC 输出响应。 在这种模式下,第二奈奎斯特区的图像输出功率显着增加,并且在该区域的大部分区域内也具有近似平坦的响应。 奈奎斯特区可以在 Vivado IDE 中设置。 由于 sinc 响应衰减和可能的带宽滚降,通常不使用在高于 2 的奈奎斯特区操作 RF-DAC。

RF-DAC 逆 Sinc 滤波器


RF-DAC 的模拟输出响应遵循特征 sinx/x 或 sinc 形状。 对于需要在宽带宽上具有平坦输出响应的应用,可以使用反 sinc 滤波器来实现这一点。 反 sinc 滤波器是一个 11 抽头 FIR,可提供平坦响应,在高达 89% 的奈奎斯特时纹波小于 ±0.05 dB,或在高达 80% 的奈奎斯特时纹波为 ± 0.033 dB。 下图显示了反 sinc 性能。

image.png

蓝色线代表滤波器本身的频率响应。 可以看出,它随频率增加以补偿输出的 sinc 响应,如红线所示。 复合输出响应由黄色迹线给出,并显示高达 89% 奈奎斯特的平坦通带。 下图显示了校正响应的详细信息,纹波规格水平以红色突出显示。

image.png

反 Sinc 滤波器参数


Inverse Sinc FIR -1 3 -6 15 -52 594 -52 15 -6 3 -1

用于混合模式的反 Sinc 滤波器(第 3 代)


除了用于第一个 Nyquist 频段的反 Sinc 滤波器外,当 RF-DAC 在混合模式下运行时,也可以为第二个 Nyquist 频段提供一个反 Sinc 滤波器。 这是一个具有 9 个抽头的半带滤波器,在 80% 奈奎斯特频带内,平坦度 < ±0.033 dB。

混合模式的反 sinc 滤波器的系数和频率响应如下所示。 N(bit) 是系数的位宽; 用于归一化系数。

N(bit) = 10
Center Tap: 1066
First Half: 5,0,25,1

image.png

第二奈奎斯特频带中的反sinc滤波器的平坦度如下所示。

image.png

溢出


从反正弦频率响应中可以看出,滤波器增益 >1。 为确保滤波器输出不会溢出,必须回退输入信号幅度以考虑此增益因子。 反 sinc 模块具有自动溢出检测和饱和,如果检测到溢出,则使用 RFdc 驱动程序 API 的中断机制,使用 XRFDC_DAC_IXR_INVSNC_OF_MASK 中断对其进行标记。

RF-DAC 数字数据通路


tile 中的每个 RF-DAC 都具有许多优化的 DSP 功能,可用于实现数字上变频 (DUC) 和传输信号滤波。 这些功能包括:

  • Gen 1/Gen 2:信号插值功能——支持 1(旁路)、2、4 或 8 插值。
  • Gen 3:信号插值功能——支持插值1(旁路)、2、3、4、5、6、8、12、16、20、24、40和80(IMR模式)。
  • 使用 48 位频率分辨率数控振荡器 (NCO) 进行粗混(四分之一和半速率)或精混。
  • 补偿功能包含正交调制器校正 (QMC) 块和粗延迟调整块。
  • 包含逆正弦 FIR 滤波器的信号调理。

使用 Vivado IDE,可以使用或绕过单个、多个或所有 DSP 功能。下图显示了 RF-DAC 中的可用功能。 以下部分介绍了每个功能。

image.png

RF-DAC 插值滤波器(第 1 代/第 2 代)


需要插值滤波器来实现 DUC 过程的上采样和滤波部分。 实现的滤波器操作由三个低通 FIR 滤波器组成,每个滤波器都有一组预定的固定系数,如下图所示。 每个过滤器块可以被绕过,每个过滤器块的输出可以被路由到过滤器的输出。

  • 1x - 绕过所有滤波器级
  • 2x - 使用单级插值
  • 4x - 使用两级插值
  • 8x - 使用所有三个可用级插值

image.png

插值信号的输出是在较高采样率下呈现的原始信号的精确表示。 将在 F1 采样的信号上采样到更高的采样率 (N*F1) 会导致原始频谱的 N 次复制。 结果的低通滤波有助于去除不需要的复制,从而以所需的更高采样率保存原始信号。

插值滤波器操作模式(第 1 代/第 2 代)

image.png

考虑到 FIR 滤波器的阶跃响应,每个滤波器级都可能溢出,尤其是在输入有满量程数据时。 每个滤波器级都有一个溢出状态信号和输出饱和,以检测溢出并保护数据通路。 当不使用过滤级时,溢出标志被拉低。 这些标志连接到数据路径中断机制。

插值滤波器使用


IP 核用于设置插值率。 这是一个 IP 内核设置,因为随着 PL 带宽的变化,改变插值率会直接影响物理接口。 启用的过滤器如下图所示。

image.png

I/Q 输入数据和混合至少需要 2 倍插值。 如果需要全带宽 I/Q 数据,两个 RF-DAC 数据转换器可以作为独立的实际流运行,分别包含 I 和 Q 数据。 使用 QMC 时无法进行相位调整。

RFdc 驱动程序 API 命令


RFdc 驱动程序 API 可用于使用以下代码获取在 Vivado® IDE 中设置的插值速率。

// Get Interpolation factor for Tile0, DUC Block1
int Tile = 0;
u32 Block = 1;
u32 Interpolation_Factor;
if( XRFdc_GetInterpolationFactor (ptr, Tile, Block, &Interpolation_Factor) == XST_SUCCESS) {
  xil_printf("DAC Tile%1d,%1d Interpolation Factor is: %d", Tile, Block,Interpolation_Factor);
}


目录
相关文章
|
5天前
|
机器学习/深度学习 人工智能 自然语言处理
思通数科AI平台在尽职调查中的技术解析与应用
思通数科AI多模态能力平台结合OCR、NLP和深度学习技术,为IPO尽职调查、融资等重要交易环节提供智能化解决方案。平台自动识别、提取并分类海量文档,实现高效数据核验与合规性检查,显著提升审查速度和精准度,同时保障敏感信息管理和数据安全。
38 11
|
1天前
|
自然语言处理 并行计算 数据可视化
免费开源法律文档比对工具:技术解析与应用
这款免费开源的法律文档比对工具,利用先进的文本分析和自然语言处理技术,实现高效、精准的文档比对。核心功能包括文本差异检测、多格式支持、语义分析、批量处理及用户友好的可视化界面,广泛适用于法律行业的各类场景。
|
3天前
|
存储 分布式计算 Java
存算分离与计算向数据移动:深度解析与Java实现
【11月更文挑战第10天】随着大数据时代的到来,数据量的激增给传统的数据处理架构带来了巨大的挑战。传统的“存算一体”架构,即计算资源与存储资源紧密耦合,在处理海量数据时逐渐显露出其局限性。为了应对这些挑战,存算分离(Disaggregated Storage and Compute Architecture)和计算向数据移动(Compute Moves to Data)两种架构应运而生,成为大数据处理领域的热门技术。
17 2
|
4天前
|
安全 编译器 PHP
PHP 8新特性解析与实践应用####
————探索PHP 8的创新功能及其在现代Web开发中的实际应用
|
5天前
|
机器学习/深度学习 人工智能 自然语言处理
医疗行业的语音识别技术解析:AI多模态能力平台的应用与架构
AI多模态能力平台通过语音识别技术,实现实时转录医患对话,自动生成结构化数据,提高医疗效率。平台具备强大的环境降噪、语音分离及自然语言处理能力,支持与医院系统无缝集成,广泛应用于门诊记录、多学科会诊和急诊场景,显著提升工作效率和数据准确性。
|
2天前
|
前端开发 中间件 PHP
PHP框架深度解析:Laravel的魔力与实战应用####
【10月更文挑战第31天】 本文作为一篇技术深度好文,旨在揭开PHP领域璀璨明星——Laravel框架的神秘面纱。不同于常规摘要的概括性介绍,本文将直接以一段引人入胜的技术剖析开场,随后通过具体代码示例和实战案例,逐步引导读者领略Laravel在简化开发流程、提升代码质量及促进团队协作方面的卓越能力。无论你是PHP初学者渴望深入了解现代开发范式,还是经验丰富的开发者寻求优化项目架构的灵感,本文都将为你提供宝贵的见解与实践指导。 ####
|
28天前
|
缓存 Java 程序员
Map - LinkedHashSet&Map源码解析
Map - LinkedHashSet&Map源码解析
62 0
|
28天前
|
算法 Java 容器
Map - HashSet & HashMap 源码解析
Map - HashSet & HashMap 源码解析
49 0
|
28天前
|
存储 Java C++
Collection-PriorityQueue源码解析
Collection-PriorityQueue源码解析
58 0
|
28天前
|
安全 Java 程序员
Collection-Stack&Queue源码解析
Collection-Stack&Queue源码解析
72 0

热门文章

最新文章

推荐镜像

更多