跳转至

测试准备与射频校准

概述

本文介绍 CAT1 产品完成射频校准、射频综测、金板线损点验、温补数据提取、功能测试及终检所需的环境、配置和操作流程。

测试准备(环境搭建)

固件及配置

  • Hi2131EV100.fwpkg
  • kv.bin
  • RadioConfig.tlv(TLV格式的RF配置文件):此文件由用户根据模组适配完成并负责维护,请参见“配置文件简介”章节。
  • RadioConfig.cal校准文件中,版本号ConfigurationName长度不可以超过32个字符。

工具

  • BurnTool:固件及配置烧写工具,支持Windows系统的界面和命令行格式,请参见《HiDiTingV100 BurnTool工具 使用指南》。
  • rf_calibration_and_test_tools:版本包中提供的校准综测脚本,可用于射频校准和射频综测,请参见“射频校准”和“射频综测”章节。

VISA驱动

  • 推荐使用NI-VISA 5.4.1以上的版本。NI-VISA 4.6.2的版本也可以使用,但是不支持Hislip协议。
  • 如果没有如下图标,或者对应路径没有如下软件,应该是没有安装5.4.1以上版本的VISA驱动,请继续阅读下文进行安装:

    1. 确认是否安装了VISA驱动,打开如下工具。

      确认是否安装了VISA驱动,打开如下工具

    2. 确认版本号。

      确认版本号

    3. 安装步骤。

      安装步骤

测试与校准流程

射频校准

模组制造商需要对每个模块执行校准流程,以确保个体模组与其射频参数可以达到最佳匹配。可以使用版本包中提供的校准脚本进行简单配置后再执行校准流程,最后对校准生成的射频文件进行更新。详细操作步骤请参见“校准操作步骤”章节。

校准总述

校准(RX和TX)主要是为了确保如下指标的精度符合要求,以消除芯片和单板之间的差异:

  • 芯片自校准,包含内部PLL、RX filter、TX filter、ADC/DAC等。
  • RX接收增益大小(AGC)、DC大小、IQ幅度不平衡、RX IP2。
  • TX发送功率大小(TX Power)、DC大小、IQ幅度不平衡。

影响上述指标的精度的主要因素包括:

  • 芯片工艺、器件工艺
  • 不同band、不同频率
  • 温度

校准完成之后会将校准结果写入Flash,软件在RF初始化时读取Flash中的校准参数,业务过程中按band、功率、档位索引相应结果,并读取温度、频率做相关修正。

图 1 校准基本流程

**图 1** 校准基本流程

校准准备

在用户进行校准前,需要完成或准备以下内容:

  • 硬件准备:模组板级设计及匹配调整,请参见《硬件 用户指南》中的射频电路设计说明。
  • 校准文件:即脚本中“RadioConfig.cal”文件,根据模组射频前端电路、PA选型等配置,温度补偿表优先使用提取好的温补数据。温补参数提取的方法与要求,参考“功率温补值提取”章节。校准文件中需要配置的全部参数如表1所示,各参数如何配置请参见“校准文件介绍”章节。

    表 1 校准文件所需配置项

    配置项

    配置来源

    详细解释参考章节

    pa_default

    调测需求,是否需要指定哪套PA。

    通用参数配置表

    pio_mask

    根据射频前端switch确定。

    idle_pio_state

    根据射频前端switch确定。

    pa_enable

    需要使能哪套PA配置。

    PA配置表

    PROD_ID1

    根据PA手册确认,区分PA。

    MANF_ID1

    根据PA手册确认,区分PA。

    USID1

    根据PA手册确认,区分PA。

    tx_mipi_num

    根据PA手册确认,区分PA。

    idle_mipi_num1

    根据PA手册确认,区分PA。

    idle_mipi_state1

    根据PA手册确认,区分PA。

    enable

    附加SWITCH开关使能。

    附加SWITCH配置表

    PROD_ID2

    根据SWITCH手册确认,区分SWITCH。

    MANF_ID2

    根据SWITCH手册确认,区分SWITCH。

    USID2

    根据SWITCH手册确认,区分SWITCH。

    idle_mipi_num2

    根据SWITCH手册确认,区分SWITCH。

    idle_mipi_state2

    根据SWITCH手册确认,区分SWITCH。

    PioState

    根据射频前端电路确定,区分Band。

    Rx通路配置表

    RxPortSelect

    根据射频前端电路确定,区分Band。

    PioState

    根据射频前端电路确定,区分Band。

    TX通路配置表

    TxPortSelect

    根据射频前端电路确定,区分Band。

    MaxPower

    最大发射功率,区分Band。

    MipiStateHPM

    根据PA手册确认,区分PA、Band。

    MIPI配置表

    MipiStateMPM

    根据PA手册确认,区分PA、Band。

    MipiStateLPM

    根据PA手册确认,区分PA、Band。

    PARxPort

    根据PA手册确认,控制Rx Port口,如果不需要,使用默认配置(0x1C,0x00)(0x1C,0x00)。

    RxSwitch

    根据SWITCH手册确认,控制Rx开关,如果不需要,使用默认配置(0x1C,0x00)(0x1C,0x00)。

    TxSwitch

    根据SWITCH手册确认,控制TX开关,如果不需要,使用默认配置(0x1C,0x00)(0x1C,0x00)。

    温度补偿表全部配置项

    根据温补数据提取脚本获取参数配置。

    温度补偿表

    RadioConfig.cal 由与固件版本匹配的射频校准与综测工具包提供。修改射频配置前,应从正式交付渠道获取配套工具包,并在工具实际运行目录中更新该文件。需要将配置固化到固件的版本,应按该版本配套的构建资料放置文件并重新编译。

  • 软件准备:需要先烧录版本,未烧录版本或未烧录校准文件时校准工程执行AT命令会无响应并超时,烧录后发送AT,检验AT是否返回OK。发送AT+CGMR查看固件版本、RF版本号是否正确。

  • 仪表准备:

    • CMW500:需要General Purpose RF Measurements、General Purpose RF Generator、LTE TX Measurement模块。若需要一拖多则需要仪表拥有license,具体配置请参见“CMW500配置方法”章节。
    • CMW100:需要General Purpose RF Measurements、General Purpose RF Generator、LTE TX Measurement模块。若需要一拖多则需要仪表拥有license,具体配置请参见“CMW100配置方法”章节。CMW100仪表校准综测一拖多功能仅支持USB和115200波特率。
    • IQXSream:需要GPRF模块和LTE模块。IQ仪表校准综测一拖多功能目前仅支持一拖二,如有一拖四需求请联系FAE。
    • 仪表波形文件需要放置到对应文件夹,配置请参见“运行脚本”章节。
  • 射频通路测试:用AT强发强收相关命令进行TRX通路基本验证。AT命令请参见《HiDiTingV100 2131E AT命令清单》“射频配置命令集:+NRDSET”章节实现说明。

    • RX通路验证:

      1. 发送AT命令“AT+CFUN=0”进入关机状态。
      2. 发送AT命令“AT+NRDCTRL=1”进入radiotest模式。
      3. 发送AT命令“AT+NRDSET=RX START,8,942500,0,7,0”打开RX。
      4. 发送AT命令“AT+NRDEXEC=RX DC CALI”校准DC。
      5. 使用信号源,根据RX START中的频段、频率和AGC档位配置单音信号。
      6. 发送AT命令“AT+NRDSET=WBRSSI READ,7,100”读取100次RSSI。
      7. 测试完成后依次发送“AT+NRDSET=RX STOP”和“AT+NRDCTRL=0”退出测试。
    • TX通路验证:

      1. 发送AT命令“AT+CFUN=0”进入关机状态。
      2. 发送AT命令“AT+NRDCTRL=1”进入radiotest模式。
      3. 发送AT命令“AT+NRDSET=TX START,8,897500,3,23,0”打开TX。
      4. 发送单音“AT+NRDSET=TX TONE,1,1500000,770”。
      5. 使用CMW500 GPRF Measurements模块,根据TX START中的频段、频率、带宽和期望功率对仪表进行配置,查看仪表在指定频点是否有预期的波形。
      6. 测试完成后依次发送“AT+NRDSET=TX STOP”和“AT+NRDCTRL=0”退出测试。
  • 环境准备:

    确保产测上位机系统为Win10及以上版本。

    安装Python3.11.4及以上版本、Pycharm2019及以上版本。

    执行脚本额外必要的库文件:pyvisa、pyserial、xlwt

须知: 在使用CMW RUN等相关软件后,需要将仪表各模块进行复位后再运行产测脚本。操作步骤如下图所示。

在使用CMW RUN等相关软件后,需要将仪表各模块进行复位后再运行产测脚本。操作步骤如下图所示 在使用CMW RUN等相关软件后,需要将仪表各模块进行复位后再运行产测脚本。操作步骤如下图所示

校准文件介绍

配置文件简介

“RadioConfig.cal”配置文件是校准的输入条件,包含如下内容:

  • 通用参数配置表
  • Band配置表、PA配置表、Rx通路配置表、PA MIPI配置表、Tx通路配置表
  • Rx直流增益表、Rx频率补偿表
  • Tx发送功率表、Tx频率补偿表、Tx直流补偿表
  • IIP2配置表、带宽补偿表、温度补偿表、IQ补偿表

说明: Rx直流增益和补偿表、Tx发送功率和补偿表、IIP2配置表为校准动态配置,校准后会更新;其余为静态配置,校准后不会更新。

通用参数配置表

示例:

#===============|General Settings|===============
RFGeneralTableBegin
 pa_default                       0
 dcxo_cin                         2                # Load capacitor in
 dcxo_cout                        3                # Load capacitor out
 FreqErrorScaled                  0                # Measured frequency error of UE in ppbillion/4, ie (fMeasured - fRequested)/fMeasured * 10^9 / 4
 pa_ctrl                          180,30,30 
 pio_mask                         setbits(0,1,2)       # Specify all PIOs used by the radio
 idle_pio_state                   setbits()            # IDLE state of PIO
RFGeneralTableEnd

定义:

参数名称

说明

取值范围

备注

pa_default

PA默认配置。

0:开机自动匹配PA配置表中的index,并且强校验PROD_ID和MANF_ID,匹配不成功开机失败;

1~4:开机不匹配PA配置表中的index,也不做校验,选择所写index对应的PA配置。

0~4

值不为0时,为指定PA index对应的USID值。

若选择超出范围的配置,则默认选择0。

PA配置请参见“PA配置表”章节。

dcxo_cin

晶振调谐电容Cin补偿值。

0~31

XO校准后由脚本自动刷新。

dcxo_cout

晶振调谐电容Cout补偿值。

0~31

XO校准后由脚本自动刷新。

FreqErrorScaled

UE测量的频率误差。

-215~+215

XO校准后由脚本自动刷新。

pa_ctrl

PA模式划分功率,分别为:MPM最大功率、LPM最大功率、各个PM交叉的功率段大小。

实数

根据PA手册确认。

pio_mask(用户配置)

控制SWITCH的GPIO端口(即TRX通道选择)。

setbits(0~7)

根据用户硬件电路确定。如选择GPIO0、GPIO1、GPIO2控制SWITCH,配置为setbits(0,1,2)。

idle_pio_state(用户配置)

RF处于IDLE状态(非Tx或Rx)时的GPIO控制值。

setbits(0~7)

根据设计需求确认。

PA配置表

当前校准文件支持两套BOM配置,区分BOM的配置内容包括PA MIPI配置表、Tx功率的温度补偿表。

芯片上电时,通过MIPI接口读取PA芯片里的PROD_ID和MANF_ID来自适应选取相应BOM配置,而且仅在复位后第一次读取。

下表规定了两套BOM对应的Product ID、Manufacture ID,以及其处在IDLE态下的寄存器配置。

示例:

#=======================|PA Table|=======================
#**   index       pa_enable      PROD_ID1      MANF_ID1       USID1      tx_mipi_num   idle_mipi_num1    xo_coef     idle_mipi_state1  
PATableBegin
 TableLength 4
PA           1,           1,         0x1,       0x366,         0xF,           5,           2, 5930188,23547,-1658, (0x0,0x00)(0x1C,0x01)(0x0,0x00)(0x0,0x00),
PA           2,           1,        0x2C,       0x33D,         0xF,           3,           2, 5930188,23547,-1658, (0x0,0x00)(0x1C,0x01)(0x0,0x00)(0x0,0x00),
PA           3,           1,        0x2D,       0x3F3,         0xF,           3,           2, 5930188,23547,-1658, (0x0,0x00)(0x1C,0x01)(0x0,0x00)(0x0,0x00),
PA           4,           0,        0xFF,       0xFFF,         0xF,           5,           2, 5930188,23547,-1658, (0x0,0x00)(0x1C,0x01)(0x0,0x00)(0x0,0x00),
PATableEnd

定义:

参数名称

说明

取值范围

备注

index

PA编号。

1~4

PA编号。

pa_enable

PA使能标记。

[0,1]

0:当前PA配置未使能;

1:将该PA配置使能。

PROD_ID1

PA的Product ID。

0x00~0xFF

根据手册确认。

MANF_ID1

PA的Manufacture ID。

0x000~0xFFF

根据手册确认。

USID1

PA的USID。

0x0~0xF

根据手册确认。

idle_mipi_num1(用户配置)

控制PA空闲需要写入的寄存器数量,最多支持2个(包含0x1C)。

1~2

根据设计需求确认。

tx_mipi_num(用户配置)

控制PA工作(放大发送功率)需要写入的寄存器数量,最多支持5个(包含0x1C)。

1~5

根据设计需求确认。

xo_coef

晶振频偏温度补偿系数。依次为分别为一次项、二次项和三次项的系数。

实数

实验室提取。请参见“DCXO温补系数提取”章节。

idle_mipi_state1(用户配置)

PA处于IDLE状态需要写入的寄存器(地址,值)队列。

(a1,v1)(a2,v2)...(an,vn)

其中an为寄存器地址,vn为需要写入的值,an、vn大小限制为一个字节数,且采用十六进制表示,需添加前缀“0x”,如(0x1,0x2)(0x12,0x22)表示连续向寄存器地址0x1、0x12分别写入值0x2、0x22。n表示数量,与“idle_mipi_num1”值一致。

说明:

  • PA TABLE中的配置应该与PA MIPI配置表、Tx功率的温度补偿表的顺序相对应,不能仅在PA中进行修改。
  • 应当将使能的PA配置靠前放置,尽量避免将未使能的配置穿插在使能PA中。

Band配置表

示例:

#==================|Band Table|==================
BandTableBegin
 BandNum 9
 BandList 1,3,5,8,34,39,40,38,41
BandTableEnd

定义:

参数名称

说明

取值范围

BandNum(用户配置)

UE支持的Band总数。

0~255

BandList(用户配置)

UE支持的Band队列。

填入实际支持的Band编号,并用逗号分隔。

Rx通路配置表

示例:

#===============|Rx Configuration|===============
RxConfigTableBegin
 Band 1
  PioState                   setbits(0,2)
  RxPortSelect               4                # Use receive port 4 for MHB3
RxConfigTableEnd

定义:

参数名称

说明

取值范围

PioState(用户配置)

当前Rx通道对应的GPIO值。

setbits(0~6) 请参见“通用参数配置表”章节。

RxPortSelect(用户配置)

Rx接收端口号选择。

0:LB1

1:LB2

2:MHB1

3:MHB2

4:MHB3

5:MHB4

MIPI配置表

示例:

#=======================|MIPI 1 Configuration|=======================
MIPI1ConfigTableBegin
Band 1
MipiStateHPM        (0x0,0x2C)(0x1,0x11)(0x3,0x1A)(0x4,0x08)(0x1C,0x01)
MipiStateMPM        (0x0,0x2C)(0x1,0x0D)(0x3,0x1A)(0x4,0x08)(0x1C,0x01)
MipiStateLPM        (0x0,0x2C)(0x1,0x09)(0x3,0x1A)(0x4,0x08)(0x1C,0x01)
PARxPort            (0x1C,0x00)(0x1C,0x00)
RxSwitch            (0x1C,0x00)(0x1C,0x00)
TxSwitch            (0x1C,0x00)(0x1C,0x00)
MIPI1ConfigTableEnd

定义:

参数名称

说明

取值范围

MipiStateHPM(用户配置)

PA处于HIGH POWER MODE状态需要写入的寄存器(地址,值)队列。

(a1,v1)(a2,v2)...(an,vn)请参见“通用参数配置表”章节。

队列长度n与tx mipi num一致。

MipiStateMPM(用户配置)

PA处于MIDDLE POWER MODE状态需要写入的寄存器(地址,值)队列。

(a1,v1)(a2,v2)...(an,vn)请参见“通用参数配置表”章节。

队列长度n与tx mipi num一致。

MipiStateLPM(用户配置)

PA处于LOW POWER MODE状态需要写入的寄存器(地址,值)队列。

(a1,v1)(a2,v2)...(an,vn)请参见“通用参数配置表”章节。

队列长度n与tx mipi num一致。

PARxPort

PA选择Rx通路,需要写入的寄存器(地址,值)队列。

(a1,v1)(a2,v2)

队列长度只能是2。

RxSwitch

MIPI2控制SWITCH Rx开关,需要写入的寄存器(地址,值)队列。

(a1,v1)(a2,v2)

队列长度只能是2。

TxSwitch

MIPI2控制SWITCH Tx开关,需要写入的寄存器(地址,值)队列。

(a1,v1)(a2,v2)

队列长度只能是2。

TX通路配置表

示例:

#=======================|Tx Configuration|=======================
TableBegin
 Band 1
  PioState            setbits(0,2)        
  TxPortSelect        1                   
  MaxPower            23                  
TableEnd

定义:

参数名称

说明

取值范围

PioState(用户配置)

当前TX通道对应的GPIO值。

setbits(0~6) 请参见“通用参数配置表”章节。

TxPortSelect(用户配置)

TX接收端口号选择。

0:LB

1:MB

2:HB

MaxPower(用户配置)

限制最大功率。

0~23

说明: Tx Configuration中Band子表的排列顺序必须与Band Table中BandList 的顺序相同。

RX增益参数表

示例:

#============|RX Gain and DC|=================
#********* in
#*****       index      agc_gain    dc_q       dc_i         phase    
RxAgcGainTableBegin
 Band 1
 TableLength 8
 Gain          0,        125,       -199,       -163,          0,
 Gain          1,        183,       -198,       -166,          0,
 Gain          2,        235,       -195,       -160,          0,
 Gain          3,        293,       -191,       -154,          0,
 Gain          4,        343,       -190,       -151,          0,
 Gain          5,        375,       -193,       -150,          0,
 Gain          6,        438,       -424,       -268,          0,
 Gain          7,        503,       -951,       -430,          0,
RxAgcGainTableEnd

定义:

参数名称

说明

取值范围

index

AGC档位编号。

0~7

agc_gain

RX RF GAIN增益值。

0~65535

dc_i

直流校准值分量。

-16384~+16383

dc_q

直流校准值分量。

-16384~+16383

phase

相邻AGC档位切换相位变化值。

-32768~+32767

RX频率补偿表

示例:

#===========|AGC GAIN OVER FREQ|===========
#************** frequency   gain_delta  **************
RxFrequencyTableBegin
 Band 1
  TableLength 7
    GainDelta   2110000000,       0
    GainDelta   2120000000,       0
    GainDelta   2130000000,       0
    GainDelta   2140000000,       0
    GainDelta   2150000000,       0
    GainDelta   2160000000,       0
    GainDelta   2170000000,       0
RxFrequencyTableEnd

定义:

参数名称

说明

取值范围

frequency

典型频点。

根据通道支持Band的频率范围。

gain_delta

典型频点增益值-对应频点增益值。

-32768~+32767

TX发送功率表

示例:

#===============|Tx Power|================
#*********** power  APC_index  IF_gain  dbbGain  PA_mode  APT ***********
TxPowerTableBegin
 Band 1
  TableLength 77
    Power     250,       0,      23,      0,     HPM,     3400
    Power     240,       1,      23,      0,     HPM,     3400
    Power     230,       2,      23,      0,     HPM,     3400
    ...
    Power      20,      13,      22,      0,     MPM,     3400
    Power      10,      13,      21,      0,     MPM,     3400
    Power       0,      14,      22,      0,     MPM,     3400
    Power     -10,      14,      21,      0,     MPM,     3400
    Power     -20,      14,      20,      0,     MPM,     3400
    ...
    Power    -170,      17,      16,      0,     LPM,     3400
    Power    -180,      17,      15,      0,     LPM,     3400
    ...
    Power    -430,      19,       9,      0,     LPM,     3400
    Power    -440,      19,       8,      0,     LPM,     3400
    Power    -450,      19,       7,      0,     LPM,     3400
TxPowerTableEnd

定义:

参数名称

说明

取值范围

power

发送功率值,单位:0.1dBm。

-450~+270

apc_index

RF增益组合编号。

0~19

if_gain

IF增益值。

0~30

dbb_gain

DBB的衰减值,单位:0.1dBm。

非正数

pa_mode

PA工作模式。

HPM/MPM/LPM

APT

PA工作电压。

保留

TX频率补偿表
#=======================|POWER OVER FREQ|=======================
#********* frequency    power_delta     delta_L       delta_H     
TxFrequencyTableBegin
 Band 5
 temp                -30,70              
 TableLength 11
 PwrDelta   824000000,           9,           0,           0,
 PwrDelta   826500000,           7,           0,           0,
 PwrDelta   829000000,           0,           0,           0,
 PwrDelta   831500000,          -7,           0,           0,
 PwrDelta   834000000,          -8,           0,           0,
 PwrDelta   836500000,           0,           0,           0,
 PwrDelta   839000000,           9,           0,           0,
 PwrDelta   841500000,          15,           0,           0,
 PwrDelta   844000000,          15,           0,           0,
 PwrDelta   846500000,          11,           0,           0,
 PwrDelta   849000000,           0,           0,           0,
TxFrequencyTableEnd

定义:

参数名称

说明

取值范围

temp

高低温频补调整生效的阈值,记为t1、t2。

-40 < t1 < t1 + 10 < t2 < 85

frequency

需要频补的频率值。

根据通道支持Band的频率范围。

power_delta

频补值,即中心频点功率值与对应频点功率的差值。单位:0.1dB。

频补范围一般为-30~+30。

delta_L

在对应频点功率补偿基础上额外增加的补偿值,在温度< t1时生效,实际温度读取值可能有误差。

额外频补范围一般为-20~+20。

delta_H

在对应频点功率补偿基础上额外增加的补偿值,在温度> t2时生效,实际温度读取值可能有误差。

额外频补范围一般为-20~+20。

TX直流补偿表

示例:

#=======================|TX DC|=======================
#*******   ifgain     tx_dc_i     tx_dc_q   
TxDcTableBegin
 Band 1
 TableLength 14
 ifGain         12,          8,         35,
 ifGain         13,         13,         31,
 ifGain         14,         11,         28,
 ifGain         15,          5,         26,
 ifGain         16,          8,         19,
 ifGain         17,          7,         20,
 ifGain         18,          6,         18,
 ifGain         19,          4,         17,
 ifGain         20,          4,         16,
 ifGain         21,          4,          9,
 ifGain         22,          3,          9,
 ifGain         23,          5,         10,
 ifGain         24,          4,          8,
 ifGain         25,          4,          8,
TxDcTableEnd

定义:

参数名称

说明

取值范围

ifgain

IF增益值。

0~30

tx_dc_i

Tx直流补偿值分量。

-2048~+2047

tx_dc_q

Tx直流补偿值分量。

-2048~+2047

IQ补偿表

示例:

#=================|RX IQ & TX IQ|==================
#****    band      rx_iq_i     rx_iq_q     tx_iq_i     tx_iq_q
ImbalanceTableBegin
 TableLength 9
band          1,         -1,         -1,       -112,        -88,
band          3,         -1,          0,        -74,         -6,
band          5,         -1,          1,        -95,        -38,
band          8,         -1,          0,        -46,       -138,
band         34,         -1,          0,       -164,        -10,
band         39,         -2,          0,        -74,         59,
band         40,         -1,         -1,        -99,        -74,
band         38,         -1,         -1,       -132,         24,
band         41,         -1,         -1,        -95,       -175,
ImbalanceTableEnd

定义:

参数名称

说明

取值范围

band

IF增益值。

1、3、5、8、34、38、39、40、41

rx_iq_i

Rx补偿值分量。

-2048~+2047

rx_iq_q

Rx补偿值分量。

-2048~+2047

tx_iq_i

Tx补偿值分量。

-2048~+2047

tx_iq_q

Tx补偿值分量。

-2048~+2047

IIP2配置表

示例:

#================|RX IIP2|=================
#**********  frequency  code_i_5m  code_q_5m  code_i_10m  code_q_10m
RxIP2TableBegin
 Band 1
  TableLength 3
    freq    2110000000,       0,        0,        0,        0
    freq    2140000000,       0,        0,        0,        0
    freq    2170000000,       0,        0,        0,        0
RxIP2TableEnd

定义:

参数名称

说明

取值范围

frequency

典型频点。

根据通道支持FDD Band的频率范围。

code_i_5m

带宽≤5M场景IIP2码字配置。

-63~+63

code_q_5m

带宽≤5M场景IIP2码字配置。

-63~+63

code_i_10m

带宽≥10M场景IIP2码字配置。

-63~+63

code_q_10m

带宽≥10M场景IIP2码字配置。

-63~+63

带宽补偿表

示例:

#=======================|RX AGC TX PWR OVER BANDWIDTH|=======================
#*******  bw_index   gain_delta  pwr_delta  
BandWidthTableBegin
 TableLength 6
BwIndex          0,          0,          0,
BwIndex          1,          0,          0,
BwIndex          2,          0,          0,
BwIndex          3,          0,          0,
BwIndex          4,          0,          0,
BwIndex          5,          0,          0,
BandWidthTableEnd

定义:

参数名称

说明

取值范围

bw_index

带宽标识。

0:1.4M

1:3M

2:5M

3:10M

4:15M

5:20M

gain_delta

该带宽配置下的增益补偿值。

-32768~+32767

pwr_delta

该带宽配置下的功率补偿值。

-32768~+32767

温度补偿表

温度补偿表区分不同BOM。

示例:

#=======================|RX AGC TX PWR OVER TEMPERATURE 1|=======================
#*****    temp     gain_delta      p0          p1          p2          p3          p4          p5          p6          p7
TableBegin
 Band 1
 point_num           8
 power_point         270,180,110,80,-140,-155,-400,-410
 TableLength 7
 temp        -40,         -5,        -16,        -20,        -13,          0,         15,          5,          7,         16,
 temp        -20,         -3,        -11,        -13,         -9,          0,         10,          3,          5,         11,
 temp          0,         -2,         -5,         -7,         -4,          0,          5,          2,          2,          5,
 temp         20,          0,          0,          0,          0,          0,          0,          0,          0,          0,
 temp         40,          2,          6,         12,         10,          8,          5,          5,          5,          3,
 temp         60,          4,         12,         23,         20,         16,          9,         10,          9,          6,
 temp         85,          5,         20,         38,         32,         26,         15,         17,         15,         10,
TableEnd

定义:

参数名称

说明

取值范围

point_num

选取多少功率点作为参考值。

1~8

power_point

被选取作为参考值的功率点,由高到低。

-450~270

gain_delta

RX增益补偿。

-100~100

p0~p7

依次为power_point对应功率点下的功率补偿值(即常温功率测量值 - 对应温度功率测量值),point_num数量以外的非对应点值无效,保证是int类型(32位)即可。

-100~100

附加SWITCH配置表

如果Tx/Rx开关通路超出GPIO控制SWITCH的上限,需要使用附加SWITCH增加通路选择。

芯片上电时,通过MIPI接口读取SWITCH芯片里的PROD_ID和MANF_ID来自适应选取相应BOM配置,而且仅在复位后第一次读取。

示例:

#=======================|Additional Switch Table|=======================
#******   enable       PROD_ID2      MANF_ID2       USID2      idle_mipi_num2  idle_mipi_state2
TableBegin
TableLength 4
SWITCH           0,        0xFF,       0xFFF,         0xE,           2, (0x0,0x00)(0x1C,0x01),
SWITCH           0,        0xFF,       0xFFF,         0xE,           2, (0x0,0x00)(0x1C,0x01),
SWITCH           0,         0x5,       0x366,         0xE,           2, (0x0,0x00)(0x1C,0x01),
SWITCH           0,        0xFF,       0xFFF,         0xE,           2, (0x0,0x00)(0x1C,0x01),
TableEnd

定义:

参数名称

说明

取值范围

备注

enable

附加SWITCH使能。

[0,1]

0:当前SWITCH配置未使能;

1:将该SWITCH配置使能。

PROD_ID2

SWITCH的Product ID。

0x00~0xFF

根据手册确认。

MANF_ID2

SWITCH的Manufacture ID。

0x000~0xFFF

根据手册确认。

USID2

SWITCH的USID。

0x0~0xF

根据手册确认。

idle_mipi_num2(用户配置)

控制SWITCH空闲需要写入的寄存器数量,最多支持2个(包含0x1C)。

1~2

根据设计需求确认。

idle_mipi_state2(用户配置)

SWITCH处于IDLE状态需要写入的寄存器(地址,值)队列。

(a1,v1)(a2,v2)...(an,vn)

其中an为寄存器地址,vn为需要写入的值,an、vn大小限制为一个字节数,且采用十六进制表示,需添加前缀“0x”,如(0x1,0x2)(0x12,0x22)表示连续向寄存器地址0x1、0x12分别写入值0x2、0x22。n表示数量,与“idle_mipi_num2”值一致。

校准操作步骤

配置脚本参数

根据校准目的、测试环境的不同,需要调整“calibration_test_configuration.py”和 “calibration_test_configuration.ini”配置文件中的相关参数。具体请参见配置文件注释说明。

  • 配置“calibration_test_configuration.ini”文件

    1. 配置校准综测测试选项(MODE_SELECT):

      1:只运行校准;

      2:只运行综测;

      3:运行校准并运行综测。

    2. 选择需要校准的频段(CALIBRATION_BAND_SELECT):可选的频段范围为[1,3,5,8,34,39,40,38,41],可以只选择部分需要校准的频段,频段的校准顺序无影响。

    3. 选择每个频段的功率回退(POWER_REDUCE):按需求配置每个Band的功率回退,无需回退则默认为0无需配置,功率回退范围为[0, 1)。
    4. 选择单项校准开关(CALIBRATION_CASE_SELECT):按校准需求选择需要执行的校准项,默认所有都校准,不需要的校准项置为False。
    5. 选择校准的重测次数(CALIBRATION_RETRY_COUNT_MAX):配置校准失败后重新校准的次数,默认为3次。配置0则代表失败不重测。
  • 配置“calibration_test_configuration.py”文件

    1. 配置是否在标题写入SN号(SN_SELECT):如不需要在result和log文件标题写入SN号,将SN_SELECT置0;如果需要则默认置1。SN_SELECT置1时,log中可通过SN_SET添加额外前缀,建议由数字和字母组成。
    2. 选择仪表(INSTRUMENTS_SELECT):按照脚本示例中的格式选择要使用的仪表。
    3. 选择射频仪器地址(INSTRUMENTS_ADDRESS)和端口(INSTRUMENTS_PORT):其中CMW100仪表的IP使用固定的本地回环地址(127.0.0.1),其余仪表IP需要根据仪表本身的配置进行读取。罗德仪表使用一拖一模式时,inst默认配0,无需更改。
    4. 选择AT端口号(AT_SERIAL_COM_PORT)和AT端口波特率(AT_SERIAL_COM_BAUD_RATE):AT端口默认为9600,其余波特率需要手动修改。若使用USB端口,则无需修改波特率参数。AT UART 波特率不大于230400、深睡开启 XO 时钟且需要发送长度超过32 Byte的AT命令时,可在校准前发送“AT+NVETOSUPERDS=A,1”添加A核深睡投票;校准结束或异常退出后必须发送“AT+NVETOSUPERDS=A,0”取消投票。
  • 配置校准最大功率:配置在“CalibrationClass.py”文件中的TX_POWER_MAX参数。TX_POWER_MAX的取值需满足‘TX_POWER_MAX > 230 + 频补最大值 + 温补最大值 - 10’。其中,温补最大值按照温补参数提取后,所有band中补偿的最大值选取;频补最大值按照校准后的校准文件中,POWER OVER FREQ表中频补的最大值选取。TX_POWER_MAX单位:0.1dBm,最终取值需为整十数。

  • 设置通道损耗,请参见“线损配置文件说明”章节。

说明: 一般只需调整“calibration_test_configuration.py”文件中的“PUBLIC PARAMETERS CONFIGURATION”和“calibration_test_configuration.ini”文件中的“CALIBRATION USER PARAMETERS CONFIGURATION”内容,其余使用默认值。

运行脚本

直接运行“calibration_test_main.py”即可完成校准,校准结果将自动写入单板Flash中。

查看相应的日志文件可知校准是否通过。日志和新生成的校准文件将保存在“calibration_result”目录下对应的仪表/校准日期子目录里,通过校准时间进行区分。

说明:

  • 校准后终端输出的log显示 “RF Calibration---PASS”信息,表示校准通过;否则校准失败。
  • 还可以通过calibration_result文件夹下生成的对应日期的日志的名字中判断该次校准是否通过,校准成功的日志中命名最后会有pass标识,校准失败则没有标识。
  • 如果校准成功,原有的“RadioConfig.cal”文件将会被新结果覆盖。
  • 如上校准测试可以选择直接调用提供的校准脚本完成,也可以使用RFTool界面工具配置后执行。

注意事项

RadioConfig.cal文件通用语法规则
  • 忽略“#”之后的内容(注释分隔符)。
  • 忽略空行。
  • 忽略所有缩进。
  • 校准文件各配置表的位置顺序不能调整。

TLV文件类型简介

为了缩减文件大小,使用TLV格式对校准“RadioConfig.cal”文件进行数据转换。TLV表示“标签-长度-值”。

射频配置文件版本说明

配置文件版本格式为“RF_V32_202412261027”,其中 “V32”为版本号标识,后续“202412261027”应为执行校准时的时间戳,默认未进行校准的配置文件固定为“121212121212”。RadioConfig.cal校准文件中,版本号ConfigurationName长度不可以超过32个字符,配置文件版本会在RadioConfig.cal文件的起始位置显示,格式如下:

#version:32
#=======================|Admin Information|=======================
ModemConfigurationDataRecord
ConfigurationName   RF_V32_202412261027