微波EDA网,见证研发工程师的成长!
首页 > 微波射频 > RFIC/MMIC > RF-DAC多频带发射器线性评估

RF-DAC多频带发射器线性评估

时间:07-07 来源:mwrf 点击:

摘要:贝尔实验室的研究人员展示了如何利用赛灵思FPGA、IP 核和MATLAB 为RFDAC 的快速评估创建一个灵活平台。

无线通信行业已经进入了一个全新的一体化时代;每个网络运营商都在寻求更紧凑、多频带基础架构解决方案。新兴射频类数据转换器——RF DAC 和RF ADC —— 在架构上使创建紧凑的多频带收发器成为可能。但这些新兴器件固有的非线性将成为这一发展趋势的绊脚石。

例如,频域中射频器件的非线性包括带内和带外两种情况。带内非线性是指TX 频带内不需要的频率成分(frequency term),而带外非线性则是指TX 频带外不需要的频率成分。

对于正在使用RF DAC 对多频带发射器进行原型设计的系统工程师而言,确保关键组件符合标准线性要求是非常重要的。因此,在早期原型设计阶段,从根本上需要一个灵活的测试平台,以正确评估AR DAC 在多频带应用中的非线性性能。

在爱尔兰贝尔实验室,我们已经创建了一个灵活的软硬件平台,可用于快速评估下一代无线系统潜在备选设备RF DAC。这个研发项目的三个关键因素分别是:赛灵思高性能FPGA、赛灵思IP 和MATLAB?。

在开始这段工程设计传奇故事之前,我们还要强调几点。在设计中,我们试图尽量减少FPGA 资源的占用,同时尽可能保持系统灵活,所以我们只需要集中精力实现必要的功能。为建立完整的测试系统,我们选用ADI 公司的最新RF-DAC 评估板(AD9129 和AD9739a)和赛灵思ML605 评估板。ML605 评估板配套提供Virtex?-6 XC6VLX240T-1FFG1156 FPGA 器件,其包括快速切换I/O ( 频率高达710 MHz) 和SERDES 单元( 频率高达5 Gbps),用于连接RF DAC。

现在,让我们仔细看看如何使用赛灵思FPGA、IP 和MATLAB 创建这个简单而又功能强大的测试平台。

系统级要求与设计

该评估平台的主要目的是通过各种用户自定义的测试数据序列来激励RF DAC。为此,我们设计了两个测试策略:连续波(CW)信号测试(xDDS)和宽频带信号测试(xRAM)。

多频音连续波(CW)测试一直是RF 工程师对RF 元件非线性进行特性描述的首选。遵循相同的测试理念,我们创建了一个基于直接数字综合器(DDS)的可调四音逻辑内核,实际上是采用一对双音信号在两个独立频带上激励RF DAC。通过独立调谐四音,我们可以评估RF DAC 的线性性能- 即频域内的互调位置与功率。

连续波(CW)信号测试是一种固有窄带操作。为进一步评估RF DAC的宽频带性能,我们需要通过并发多频、多模信号(如分别为2.1 GHz 和2.6 GHz 的双模UMTS 和LTE 信号)对其进行激发。为此,我们创建了一个基于片上BRAM 阵列的数据存储内核;该内核有两个子组,可以为重复测试存储各自的双频用户数据。

图1 显示了简化的系统级平台设计图。可以看到,我们采用简单直观的设计策略,构建尽量简单的平台并通过升级功能对其进行模块化。

RF-DAC多频带发射器线性评估

图1 - 简化的系统级平台方框图

硬件设计:赛灵思FPGA内核图1 中的FPGA 部分列出了系统基本需要实现的逻辑单元。包括时钟分布单元、基于状态机的系统控制单元和基于DDS 内核的多音生成单元,以及嵌入在RAM 周围的两个单元:基于BRAM 的小型控制消息存储单元(cRAM 内核) 和基于BRAM 阵列的用户数据存储单元 (dRAM 内核)。还包括连接PC 的UART 串行接口和连接RF DAC 的高速数据接口。

时钟是FPGA 的生命脉搏。为确保多款时钟在FPGA Bank 上正确分配,我们选用赛灵思时钟管理内核,为时钟的定义和指定提供一种简单的交互方式。

嵌入状态机周围的小型指令内核用作系统控制单元。如图2 所示,在初始状态(S0)下,报头检测器单元工作,负责监测并过滤来自UART 接收器的输入数据字节。数据字节被生成并封装在MATLAB 数据帧内(如图3 所示)。

RF-DAC多频带发射器线性评估

图2 - 关键状态机详细设计图

RF-DAC多频带发射器线性评估

图3 - 数据帧封装例解

系统中基本上有两种类型的数据帧。带报头"FF01"的数据帧(cRAM帧)用来为DDSes 和系统控制消息传输相位增量值。带报头"FF10"或"FF11" 的其他数据帧(dRAM 帧)用来传输用户自定义的数据。状态帧"S1x"只处理带报头"FF01"的数据,用以更新相位增量值和执行控制指令。状态帧"S2x"和"S3x"分别为两个频带接收并存储用户自定义数据。占线信号用来连续锁存数据,直至看到数据序列末尾的最后停止位。控制消息—— 例如调用单个/ 多个DDS 或用户数据序列—— 存储在cRAM 数据帧的最后两个字节内。它们将在cRAM_rd_done 信号上升沿处执行。

然后,我们举例说明四个采用赛灵思DDS 内核的独立的频音生成单元,并将其配置为相位增量模式。特定频率的相位增量值在MATLAB上生成

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top