IQ Offset之工厂实例分析

有个产品   其方块图如下:

FEM全名为Front End Module

详情可参照这篇 [1]

WIFI前端模块的解析

这边就不赘述

而在工厂大量生产时   有一块板子

其Chain1的EVM Fail  分析Log后

发现其IQ Offset的值   比Chain2/Chain3/Chain4

还要来得差

请问  问题是出在收发器?  还是前端模块?

答案是: 两者都有可能


Rohde & Schwarz的仪器   将这项指标  以IQ Offset称呼

Keysight的仪器  也以IQ Offset来称呼

但LitePoint的仪器  则是以LO Leakage称呼

  • IQ Offset   
  • Carrier Leakage/Feedthrough
  • LO Leakage/Feedthrough
  • DC Offset

这几种名称  指的都是同一个现象 

以星座图的角度  其信号的调变 整体偏移  远离了正常位置

而以频谱角度  则是信号顶端  会有一根类似避雷针的噪声

因此由下图可以看到  当信号的调变 整体偏移  远离了正常位置时

(正常位置为红点)

其避雷针现象就出现了

偏移量越多  避雷针越高

但是当信号的调变 整体几乎无偏移  处在正常位置时

其避雷针  几乎不存在

计算公式如下  单位为dB:

因此显而易见  该指标肯定是越小越好   代表偏移量越少 

一般而言  如果要有良好的调变精确度   至少要小于-25 dB

同时也发现  当偏移量不变时  信号功率越小  该指标会越差

该避雷针   可能是直流信号

(所以才叫DC Offset)

也可能是本地震荡器信号

(所以才叫LO Leakage)

接着我们谈谈成因

直流信号  会发生在两处

一处是基频   一处是射频

我们先谈基频

主要是发生在IQ信号上[3]

而在零中频的发射机架构中,若I/Q讯号有直流信号,同样也会与本地震荡器混波,直接升频为射频讯号

导致直流信号  与射频信号  迭加在一起  造成前述的避雷针现象

因此  由下述公式可知  倘若IQ信号上无直流信号

其避雷针是不该存在的

那么   要如何消除  IQ信号上的直流信号呢?

首先   以电容隔直   是不可行的

因为基频信号极为低频  如果用电容隔直

固然可以隔绝直流信号   但也会一并隔绝基频信号

所以不可行

也因此  IQ信号上的直流信号

多半都会以额外的校正电路  搭配算法

透过校准滤除

而直流讯号  除了会产生在基频讯号处

也会产生在射频信号处  主要是来自本地震荡器

由于混波器有限的隔离度,以至于本地震荡器的信号  有可能会泄漏

如果泄漏到基频端口   则会产生自我混波

也就是

LO – LO = 0Hz (直流信号)

然后该直流信号  跟着基频   一同升频为射频信号

形成前述的避雷针现象

如果泄漏到射频端口  因为本地震荡器的信号频率  与射频信号频率  几乎一样

因此在频谱上会迭加   形成前述的避雷针现象

也因为频率几乎一样   所以也必须倚赖额外的校正电路  搭配算法

透过校准滤除

例如Broadcom的BCM4356,就内建了LO feedthrough (LOFT)的校正电路

因此   由上述分析可知  避雷针的来源

  • IQ信号上的直流信号
  • 本地震荡器由于自我混波  产生的直流信号
  • 本地震荡器  直接泄漏到射频信号

以上动作   不论基频或射频

都是在收发器内完成

因此  倘若IQ Offset特别差   当然问题有可能是出在收发器

而射频信号中   混杂了直流信号

会造成性能劣化  

以OFDM信号 (Orthogonal Frequency-Division Multiplexing, OFDM)为例

直流信号的子载波  与信号的子载波  并未正交[5]

因此会干扰邻近的信号子载波  进而使调变精确度下降  IQ Offset变大  EVM变差

因此前端模块的射频信号端口

多半外部会添加串联电容  充当DC Block

以隔绝直流信号进入功放

既然IQ上的直流讯号  与本地震荡器在混波器射频端口的泄漏

可以透过校准来滤除

而本地震荡器在混波器基频端口的泄漏  透过自我混波  产生的直流信号  可以靠外部串联电容来隔绝

换言之   射频信号进前端模块前   照理说  已无直流信号

又为何前端模块   也会成为IQ Offset的问题所在呢?

答案是   单靠串联电容   隔直的效果有限

以下图为例   除了外部串联电容

前端模块内部  还内建了落地电感

这两个组件  都有滤除直流信号的作用

我们针对其直流信号滤除能力  做一次仿真

可以发现   其隔直的效果

(电容 + 电感) > 电感 > 电容

以容抗公式而言

理论上  电容对于直流讯号  其阻抗为无限大

换言之   其隔直效果  也应该要为无限大才是

但真实世界中   其隔直的效果  却反而是最差的

还远不如落地电感

(以上仿真皆为真实电感电容模型  非理想模型)

因此  倘若前端模块  接地没接好

或是该落地电感   直接失效

都会导致落地电感  失去滤除直流信号的作用

在这篇文章当中

如何焊铜管 量测射频前端模块

我们得知  由于前端模块内建落地电感之故

所以万用电表  必定量到短路

因此   可以善用这个特性  来判断该落地电感  是否功能良好

当我们接法如上图时  

如果确实量到短路  便表示该落地电感  功能良好

反之  若无量到短路  则可判定落地电感  已失去滤除直流信号的作用

导致隔直效果有限  进而损害功放   劣化射频性能 (如EVM)

接着可以进一步  排查是接地没接好 (Soldering issue) 

还是真的这颗前端模块的落地电感已失效 (material issue)

参考文献:

[1] WIFI前端模块的解析

[2] IQ Offset (GSM/EDGE/EDGE Evolution)

[3] Sources of Error in IQ Based RF Signal Generation

[4] 如何焊铜管 量测射频前端模块

[5] IQ Offset (LTE)

[6] IQ Offset - Common impairments in coherent transmission systems

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/472592.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c++ 类和对象(中)

前言 我们看看下面的代码以及代码运行结果 代码1 我们可以看到在我们的类Data中的函数成员print中,我们并没有设置形参,在调用此函数时,也并没有多余传参,但是我们调用它时,却能准确打印出我们的_year、_month、_day…

TCP(下):三次握手四次挥手 动态控制

欢迎浏览高耳机的博客 希望我们彼此都有更好的收获 感谢三连支持! TCP(上):成熟可靠的传输层协议-CSDN博客 🥝在上篇博客中,我们针对TCP的特性,报文结构,连接过程以及相对于其他协议的区别进行了探讨,提供了初步的理解和概览。本…

后端——接口文档(API)

一、概念 后端的接口文档(API文档)——全称为应用程序编程接口(Application Programming Interface)文档,是详细阐述特定软件应用程序或Web服务所开放接口的具体使用指南。这份文档为开发者提供了与这些接口进行交互的…

【Linux:epoll】

目录 epoll与select、poll的区别: epoll操作函数: int epoll_create(int size); epoll_ctl: epoll_wait: epoll与select、poll的区别: select,poll底层是一个线性表的结构,而epoll是一个红黑树结构。epoll、poll不能跨平台…

Java基础——多线程

1. 线程 是一个程序内部的一条执行流程程序中如果只有一条执行流程,那这个程序就是单线程的程序 2. 多线程 指从软硬件上实现的多条执行流程的技术(多条线程由CPU负责调度执行) 2.1. 如何创建多条线程 Java通过java.lang.Thread类的对象…

使用Redis的一些经验总结

目录 一、Redis中的key和value的设计 1.key的命名规范 2.避免出现BigKey 3.value中选择恰当的数据类型 例1:比如存储一个User对象,我们有三种存储方式: ①方式一:json字符串 ②方式二:字段打散 ③方式三&#x…

如何在 Ubuntu 上配置 Kotlin 应用环境 ?

Kotlin 是一种运行在 Java 虚拟机 (JVM) 上的现代编程语言,它同时支持函数式和面向对象编程。它可与 Java 互操作,并以其简洁的语法而闻名。在本指南中,我们将介绍在 Ubuntu 系统上准备好 Kotlin 开发环境的要点,包括 Java、Kotli…

2024强化学习的结构化剪枝模型RL-Pruner原理及实践

[2024] RL-Pruner: Structured Pruning Using Reinforcement Learning for CNN Compression and Acceleration 目录 [2024] RL-Pruner: Structured Pruning Using Reinforcement Learning for CNN Compression and Acceleration一、论文说明二、原理三、实验与分析1、环境配置在…

嵌入式硬件电子电路设计(五)MOS管详解(NMOS、PMOS、三极管跟mos管的区别)

引言:在我们的日常使用中,MOS就是个纯粹的电子开关,虽然MOS管也有放大作用,但是几乎用不到,只用它的开关作用,一般的电机驱动,开关电源,逆变器等大功率设备,全部使用MOS管…

蓝桥杯每日真题 - 第14天

题目:(2022) 题目描述(13届 C&C B组A题) 解题思路: 定义状态: 使用一个二维数组 dp[j][k] 来表示将数字 k 拆分为 j 个不同正整数的方案数。 初始化: 初始状态设定为 dp[0][0]…

利用云计算实现高效的数据备份与恢复策略

💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 利用云计算实现高效的数据备份与恢复策略 利用云计算实现高效的数据备份与恢复策略 利用云计算实现高效的数据备份与恢复策略 引…

thinkphp6配置多应用项目及多域名访问路由app配置

这里写一写TP6下配置多应用。TP6默认是单应用模式(单模块),而我们实际项目中往往是多应用的(多个模块),所以在利用TP6是就需要进行配置,开启多应用模式。 1、安装ThinkPHP6 1.1安装ThinkPHP6.…

JavaScript:浏览器对象模型BOM

BOM介绍 浏览器对象模型(Brower Object Model,BOM)提供了独立于内容而与浏览器窗口进行交互的对象,其核心对象是window BOM由一系列相关的对象构成,并且每个对象都提供了很多方法和属性。 BOM与DOM区别 DOM是文档对…

SpringBoot 2.2.10 无法执行Test单元测试

很早之前的项目今天clone现在,想执行一个业务订单的检查,该检查的代码放在test单元测试中,启动也是好好的,当点击对应的方法执行Test的时候就报错 tip:已添加spring-boot-test-starter 所以本身就引入了junit5的库 No…

前后端、网关、协议方面补充

这里写目录标题 前后端接口文档简介前后端视角对于前端对于后端代码注册路由路由处理函数 关于httpGET/POST底层网络关于前端的获取 路由器网关路由器的IP简介公网IP(WAN IP)私网IP(LAN IP)无线网络IP(WIFI IP)查询路由器私网IP路由器公网IP LAN口与WIFI简介基本原理 手动配置电…

英伟达基于Mistral 7B开发新一代Embedding模型——NV-Embed-v2

我们介绍的 NV-Embed-v2 是一种通用嵌入模型,它在大规模文本嵌入基准(MTEB 基准)(截至 2024 年 8 月 30 日)的 56 项文本嵌入任务中以 72.31 的高分排名第一。此外,它还在检索子类别中排名第一(…

【计算机网络】TCP网络特点2

断开连接 四次挥手 原因 TCP 四次挥手是为了满足 TCP 连接的全双工特性:两个方向都可以自由传输 保证数据传输的完整性:两方都完成了数据发送和接收并且都同意断开连接 可靠地终止连接以及避免数据混淆和错误等需求:每个方向都需要单独确认导致四次挥手过程 这些…

Opengl光照测试

代码 #include "Model.h" #include "shader_m.h" #include "imgui.h" #include "imgui_impl_glfw.h" #include "imgui_impl_opengl3.h" //以上是放在同目录的头文件#include <glad/glad.h> #include <GLFW/glfw3.…

【MySQL】SQL语言

【MySQL】SQL语言 文章目录 【MySQL】SQL语言前言一、SQL的通用语法二、SQL的分类三、SQLDDLDMLDQLDCL 总结 前言 本篇文章将讲到SQL语言&#xff0c;包括SQL的通用语法,SQL的分类,以及SQL语言的DDL,DML,DQL,DCL。 一、SQL的通用语法 在学习具体的SQL语句之前&#xff0c;先来…

.netcore + postgis 保存地图围栏数据

一、数据库字段 字段类型选择(Type) 设置对象类型为&#xff1a;geometry 二、前端传递的Json格式转换 前端传递围栏的各个坐标点数据如下&#xff1a; {"AreaRange": [{"lat": 30.123456,"lng": 120.123456},{"lat": 30.123456…