校准综测那点事[连载] - AFC
射频校准
声明:此贴仅根据个人理解阐述个人认知,如有雷同、纯属巧合;如有疑问、欢迎讨论;如要硬杠、以你为准!
工具开发与射频强相关的就两个工位:A.校准综测; B.耦合
其实耦合的指标和综测基本一致,只是一个测试的板端信号座,一个测试的天线性能。将清楚了综测,对于指标和测试原理,耦合基本就没啥好讲的了。如果后面有机会,耦合最多可以讲讲仿真和Smith圆图。
好了,废话不多说,还是从AFC来开篇吧!
问题思考:射频电路为什么要做校准?
这就要说说校准的意义了!因为组成PCB板的各器件电器性能的不一致性,以及PCB容易受到环境、温度、辐射等因素的影响,即使同一批次的PCB板,他们的电器一致性还是会存在一定的差异,所以需要进行校准,使得同批次PCB板之间的差异性变得最小化,达到出货的要求[也就是符合我们国家的3C指标要求]。
那我们校准怎么校呢?需要校准哪些东西呢?
校准的内容主要分为以下几个方面:单单从射频方面来讲[因为本帖主要讨论的是校准综测],射频参数方面
1. AFC(自动频率控制) 校准
2. RX Pathloss(接收路径损耗) 校准
3. APC(自动功率控制)校准
4. ADC (电池电量与显示电量)校准
其它方面:主要是音视频,本帖不做讨论
1. 屏幕校准
2. Camera 校准
3. 音频校准
4. 功耗校准
5. SIM卡/T卡
6. Others
那我们就又有问题可以提出了:为什么要校准AFC?什么时候校准AFC?
想要搞清楚频率校准,必须从电路中的电元件工作条件来讲起:
所有电子元件(有源)想要正常工作,必须具备2个条件:激励和起振。
激励:给电子元件源源不断的能源 - 供电。起振:每个元器件都有自己的工作频率,随工作频率的大小不一,其元器件表现出的工作特性和效率也有区别。起振就是为了使器件在短时间内能够达到自己固有的工作频率,使自己能稳定的工作。这就需要使用晶振来作为基频,提供最基准的频率参考。
只有使各个元器件都很好的工作起来,整个电路才是一个有效的工作电路。所以频率是必备条件之一,必须最先做好频率的校准才能开展其他的工作,这也是为什么AFC必须作为校准的第一项。因为射频的通信是建立在频率的基础上的,无论是时分还是频分、无论是连续波还是调制波… 只有它们使用的频率是正确的,后续的校准才会有意义。既然讲到这里了,就再扯远一点吧!
电子元器件主要分类:有源和无源。
有源器件:指在工厂生产加工时改变了分子结构的成品,例如晶体管、电子管、集成电路等,因为它本身能产生电子,对电压、电流有控制、变换作用(放大、开关、整流、检波、振荡和调制等)。特点:信号质量好,性能比较稳定;但是电平是固定的,需要选择好合适输出电平,灵活性较差,而且价格高。一般有源器件的datasheet中都会说明不同的工作电压,会影响哪些电器性能参数。说的比较空洞,这里列举下LNA器件的部分参数: 无源器件:指在工厂生产加工时不改变分子成分的成品,如电阻器、电容器、电感器等。因为它本身不产生电子,它对电压、电流无控制和变换作用。特点:无源晶体没有电压的问题,信号电平是根据起振电路来决定的、是可变的,同样的晶体可以适用于多种电压。
正是因为有源和无源器件都应用在我们的通信产品电路上了,它们组成我们电路的关键,所以需要考虑好每一个元器件对电路的影响。
例如无源器件的电容、电感,组合在一起就可以产生滤波器或者振荡器;
例如混频器就使用到了三极管 、场效应管等有源器件,可以对频率进行变频作用。
好了,我们拉回来再继续讲讲AFC。AFC 相关的主要元件就是晶振了,据我所知(不完全统计,我已离开射频很多年了),晶振主要分为以下几类:
A.普通晶体谐振器(Crystal):无源器件,由陶瓷/石英材料制造,以特定的切割方式,利用其具有的压电效应来做频率基准。
B.普通晶体振荡器:XO( Crystal Oscillator,又称晶体振荡器),是没有任何补偿的晶体振荡器。给定激励的情况下输出固定的振荡频率。
C.压控晶体振荡器:VCXO,通过可调整外加电压使晶振输出频率随之改变的晶体振荡器,主要用于锁相环路或频率微调。
D.温度补偿晶体振荡器:TCXO,在晶振内部采取了对晶体频率温度特性进行补偿,以达到在宽温温度范围内满足稳定度要求的晶体振荡器,一般模拟式温补晶振采用热敏补偿网络,工作温度范围加宽达成指标难度加大
E.恒温晶体振荡器:没有用过(好像主要在特殊行业会用),不做讨论
几年前我玩过的MTK和Qualcomm主推的晶振都是VCTCXO,即有压控,又有温补,但是不知道现在使用啥了。
晶振的工作频率:
我以前在大学总是听老师说:我们使用的基准晶振是32KHZ,其实我一直没有弄明白这个32K怎么来的?它是不是就是32 * 1000Hz?
后来我被一个射频兄弟鄙视了一顿后(谁叫咱当年上课没整明白,一个字 - 该),他告诉了我答案:电子电路中使用的实时时钟基准频率是:32.768kHz,简称32K。那么32.768kHZ是如何得到的呢?
⑴ 作为基准时钟,使用的频率一定是整数。举例来说,如果基准时钟包含1/3HZ,那么咱电子产品在计算小数位的时候永远除不尽,导致基准时钟就出现偏差,那么变频到更高的频率时,偏差就会更严重,所以我们的基准时钟肯定是1HZ的整数倍。
⑵ 基准时钟必须是整数分频,每个脉冲变化1bit,如果数据用16bit存储,16bit中可以整数2分频的最大数就是32768(16bit范围为0000~FFFF,如果是正弦的话,就应该是-8000~7FFFF),因为32768=2的15次方,恰好15次分频后为1HZ时序脉冲。如果不是整数分频,会就不准确了引起累计误差,时间长了时钟自然就越偏越远
⑶ 还有一个要考虑的因素是:固定频率越低的晶体体积越大,频率越高功耗越大,为了兼容这2个方面,采用32768作为基准频率为折中方案。我也是查资料得到这些内容,大家可参考( 频率越高功耗越大:瞬时功耗 p = v * I tav,I tav为单位时间的平均电流,与上升和下降时间重复频率有关,所以频率越高功耗越大。动态功耗=瞬时功耗的时间积分±冲放电消耗的功耗,充放电功耗也与重复频率有关 所以频率越高功耗越大。还有开关管的发热问题,频率越高它的损耗也就越大,温度就越高。固定频率越低的晶体体积越大:C = λ * F。)
说到这里,可能大家有另外一个问题了:是不是所有的晶振都以32.768kHZ为基准?
实时时钟用32.768kHZ为基准比较准确,其对时钟要求不高的场合可以使用其它的标称频率。普通晶振标称频率有:48kHz、500 kHz、503.5 kHz、1MHz~40.50 MHz等,对于特殊要求的晶振频率也有高达1000 MHz以上,主要看需求而定,价格也不一样。
非标称频率,如电视机遥控器晶体CRB/ZTB、Ja等系列,他们使用的又是其它的基准频率,这里不讨论。
大家可能还有一个问题:以手机为例,那是不是所有的基准时钟都采用32K的晶振呢?
这个就设计到2个标准,一个是欧洲电信标准,另一个是美国标准。
A.根据欧盟标准,GSM制式选取:因为一个载频分为8个时隙,每个时隙间隔为4.615ms占用一次信道,每次占用时长0.577ms。时隙间隔4.615ms 刚好等于 60 / 13ms,我们采用主频是32768的晶振,刚好可以把这个时隙间隔和频率的乘积换算整数,这样就不至于使基准频率出现误差。所以最终欧盟需要以13MHZ的倍频为时钟信号,现在欧盟标准的基准时钟比较通用选取为26MHz,这个我记得MTK的一篇文件也有详细的介绍,回头我在找找。
B.因为GSM比CDMA早几年诞生,可以老美就是不买账,一直等到Qualcomm定义的CDMA标准才允许GSM进入美国市场。这样每个就搞了另一个标准:类似于GSM,CDMA协议中规定了CDMA数据率都是9.6K的倍数,因此Qualcomm需要的基准时钟采用的是9.6k的整数倍,使用最多的就是19.2MHz的作为主时钟的参考频率。
晶振部分就这么多!感觉好像还没回到主题上,下面就来讲讲主时钟谐振频率的计算公式吧!这个差不多就是AFC的校准原理了。
AFC内部的参考频率计算公式根据厂商的不一样算法也会有差异,MTK和Qualcomm就有点区别,但是大致的方法是差不多的。计算方面大致如下,有兴趣可以去参考《晶体振荡器电路原理》一节自行深入研究。在网上找了几张图,直接上图会比较直接:
晶振频率计算公式:
晶体内部电路图:,这个就是VCTCXO,可变电阻控制电压,Inverter做变频器
射频使用外形逻辑图:
MTK提供的频率计算公式:
AFC:Auto Frequency Calibration,自动频率校准。这个校准最终得到的就是频率误差:调频波的瞬间频率对于载波频率的最大偏离量。
为啥要有这项的校准呢?我的理解是有以下两个方面的原因:
-
从通信原理的角度来看:因为我们的发射的载波信号往往是低频,所以需要经过调频到高频信号才能把载波通过天线发射出去。在这个调频的过程中,频率从Hz调变到MHz甚至是GHz,如果本振出现1Hz的偏差,到高频的时候就是上百Hz的偏差,偏差比较大,这个时候需要就计算出频率误差。如果误差在允许的范围内,还可以根据NV里面保存的Slope和DAC值(频率计算公式里的指标)把它修复回来;如果误差超出了范围,那么就无能为力了。说明这个基准时钟频率可能本身的差异性就很大,可能要更换本振器件或者重新调校晶振电路了(后面再补充说明下调校晶振的基本原理)。实际上频率误差的大小主要取决于产品所选用的晶振质量,晶振误差与频率误差一致,因此在晶振选型上要将性能与成本折中考虑,这也是射频工程师经过干的活。
-
从用户的角度来看:手机接入移动网络之后,需要实时和基站保持同步,在手机的移动过程中,业务小区是不断切换的,由于小区间基站是蜂窝状的,每一个蜂窝使用一组频道,这样不同小区的频率是不同的,为了保证手机在工作过程中,可以顺利的完成小区的切换及同步网络,手机的本振频率必须能够自动调节以和小区网络频率同步,3GPP要求手机和基站之间的通信频率误差不能超过0.1ppm,超过了这个指标,就很容易出现掉话、断线的现象。为了保证能够得到准确的频率切换,必须对手机的晶振电路有一个精确的校准,支持细微的频率变化。
-
-
简单解释一下前面2点提到的晶振电路,我们使用的晶振其最核心的东西就是晶体谐振器。它的原理图我在网上找了一个(下图)。按照高中的电路知识,其实就是一个LC震荡电路。制作原理也很简单,摘抄网上的一段解释给大家:谐振器由晶体薄片加上电极构成。晶体薄片具有正、反压电效应。当薄片的几何尺寸和结构一定时,具有一个固有的机械振动频率。当高频交流电压加于晶片两端时,晶片将随交变信号的变化而产生机械振动,当信号频率与晶片固有振动频率相等时,产生了谐振。
下面来详细的扒一扒AFC校准算法:
-
最通用的MTK AFC校准算法。前面已经列出了MTK提供的频率计算公式,实际上就是一个2元一次方程,其实很简单吧!再来讲一讲射频工程师在对这个计算公式的运用:首先需要选取一个固定的信道,就是按照3GPP选取一个理论频率值(譬如GSM900 CH62);再跟进射频工程师的经验,自己定义一个该频率对应的初始的DAC值(经验值),这样就初步确认了一个坐标点;然后根据理论频率CH62上下偏移一个固定频率,得到对应的DAC值,这样就算出一个初步的斜率slope。因为理论上理想的频率CH62需要过坐标原点,所以平移Slope直到过坐标原点,重新得到理论频率CH62对应的DAC值。这样就根据得到的Slope和位置精确的算出其它Channel对应的DAC值,然后把slope和DAC值写入NV,AFC校准就算完成了。这是MTK的大致计算过程,Qualcomm的更复杂一些,后面介绍。如果只是对于工具开发,这点能够理解应该就够了。
-
如果晶振选择的是比较便宜的材料,如Crystal,它的校准算法和第1点介绍的又有点不一样。因为Crystal是由石英/陶瓷片材料制造,所以首先应该粗校准确定使用的石英/陶瓷片的数量:CAP_ID值。通常该内部的晶片数为0~127。因为你不知道需要使用多少个晶状片,才能使晶振达到谐振。所以在Crystal校准时会扫描不同晶片数量下对应的频偏值,找到最小频偏时的晶片数量为期望的CAP_ID值;然后按照第1步通用算法确定Slope值;再根据Slope值计算频偏为0的那个DAC值为Initial value DAC值。最后可以根据Slope值和Initial value DAC的值精确的计算出不同基准频率对应的AFC OffSet值。这样作为MTK的校准ini文件提供给我们工具进行校准。
-
Qualcomm的项目做的不多,如果愿意听我唠叨的就继续往下看,不过完全是个人理解,不一定正确。如果想更好的了解,还是建议跳过这条去看官方版本(我已经作为附件上传了80-nt820-7)。刚开始接触Qualcomm应该使用的就是TCVCXO的频率校准:将电压、温度转换电路模块化,实现输出频率的调变,接口简单,校准精度度比较高,但成本较高。大致的原理图如下
A. 高通的晶振是和PMIC绑定在一起的(距离有一定要求<=3cm),所以可以通过PMIC作为电源电压的控制。如果距离不够远,势必会导致PMIC供电不断的产生热量,导致整个PCB温度升高,影响AFC的校准精度。这也从侧面反馈了为啥AFC必须要最先校准。
B. 在XTAL的输出端连接着热敏电阻,识别被测试的温度,然后把这个温度变化值引入XO的校准算法和FT曲线参与XO的校准计算,得到精确的校准结果。
C. 晶振旁边的热敏电阻距离热源越远越好,这个需要射频和LayOut在刚开始的时候就沟通清楚。
D. 热敏电阻的VDD应该单独使用,避免共享形成回路引入噪声,在电路上应该走差分的方式。
TCVCXO的频率校准算法:
-
XO校准与本振、电压、温度都相关,一般未校准的DUT频偏在基准频率19.2MHz *(50± 7)PPM级别。这个频偏范围太大了,需要把频偏校准到合理的区间范围内(2PPM),所以我们就需要对XO粗校,用拟合曲线的方程式模拟芯片的真实使用场景,这条曲线就是两个维度上的(X轴是温度,Y轴是频偏,图示见下页)一个三次方程:
t0是参考温度,通常设置为30°C
C0可以通过粗调大体得出:认为当前粗调的温度大体为标准温度t0,t = t0(约等于30°C)时,可以测出C0。
C1是表征当前曲线线性变化的斜率值,通过细调时可以得出。
C2值约等于0
C3很小,在计算C0和C1时可以忽略不计,大概在(10e-5 ppm/oC)^3数量级
-
粗校(coarse tune):通过配置综测仪按照指定频点的频率发射功率,向DUT发送指令通知DUT进行校准XO, DUT会根据总线控制电容片的开/关遍历频偏,确定频偏值在19.2MHz * 2 ppm级别合理区域范围的电容片的值。其实coarse tune主要就是为了能够确定C0值,这时候,C2约等于0,C3忽略不计,那么上面的等式基本也就是一个一元一次方程式:f(t) ≈ C1(t1 - t0) + C0。
这里需要注意一下粗调的条件:温度应该 <=45°C,否则可能会影响C0的准确性,准确的应该是t0在环境温度30oC左右进行;PMIC供电电压越稳定越好;需要在DUT板端未升温前做校准。
-
精校准(Fine Cal):主要是为了能够更准确的计算频率误差(实际主要是确定校准公式中的C1参数值),它对于FT曲线斜率的影响至关重要( 也使FT曲线更精准)。主要的做法是
-
通过DUT不断的在高功率下工作发热,使得整个晶振的温度至少上升0.5°C(至少0.2,通常要求1)。然后通过测量小范围的温升导致的频率误差,更精确的计算出FT曲线的线性拟合和频率-温度关系。
-
根据精校准可以比较准备的确定C1的值,这样就可以把精度从2PPM进一步的缩减。
-
TCVCXO的频率校准:Fine Cal(精校准)
-
因为C2的值通过二次微分约等于0,所以可以忽略。
-
C3主要是考虑在极限温度下的测试修正指标,手机通常测试的温度范围:15~50°C。通常在手机的生产过程中不考虑进行校准(除非有向军工这样的特殊要求),大多数都是参考原厂给出的不同温度曲线下对应的修正值进行修正。
C0对曲线拟合的影响
C1对曲线拟合的影响
C3对曲线拟合的影响
-
-
使用QSPR进行xo校准的配置示意图:
主要流程如下:(注意不同的制式的校准流程不太一样)
整个AFC的校准基本就说完了,欢迎大家纠正和补充!
补充一定材料:晶振的选型和QRCT手动进行XO校准,个人觉得对大家有帮忙,分享给大家
更多推荐
所有评论(0)