AN-1315: ADF7024上的自主IR校准
简介
外差无线电(例如 ADF7024收发器)利用混频器将接收到的射频(RF)信号下变频至中频(IF)。干扰信号位于镜像频率范围内,同样会向下混频至目标频率。干扰信号会降低接收器的灵敏度,阻塞目标通道。
理论上,采用IQ接收架构的理想收发器经配置可防止镜像频率混频至目标通道。该理论假设混频器正交路径的增益平衡和相位正交性完全一致。实际应用中,由于混频器不完美,会存在一些不平衡。镜像校准过程通过固件下载模块调整混频器的增益和相位,直到正交信号实现最佳平衡,提供最大的镜像抑制能力。
本应用笔记描述用于ADF7024收发器IC的完全自主镜像抑制(IR)校准固件下载模块。该固件可通过默认配置自主优化镜像抑制,只需少量用户输入。
该下载提供IR校准扩展选项,但本应用笔记仅讨论基本操作。
固件二进制下载文件(rom_ram_7024_2_2_IRcal_ dragon_fil-ter_visu.dat)包含于ADF7024设计资源包中,可在ADF7024产品页面下载,网址是:www.analog.com/ADF7024.
完全自主镜像抑制校准
ADF7024提供可供下载的IR校准模块,优化工作时的镜像抑制性能。校准过程完全自主。
IR校准固件控制ADF7024接收器。IMAGE_REJECT_CAL_ CONFIG寄存器(地址0x319)采用IR校准固件进行内部编程,无需用户设置。该固件将一个内部产生的镜像频率RF源施加到RF输入,然后监控接收信号强度指示(RSSI)输出。它通过这种方式为算法选择适当的Rx频率。注意,退出IR校准算法时不会恢复初始频率值,因此用户必须在IR校准之后重新载入所需的Rx频率值。
然后,IR校准算法反复最小化混频滤波器的正交增益和相位误差,以最大程度提高镜像抑制性能。注意,IR校准算法采用数据包RAM作为操作中的临时存储器,从而覆盖数据包RAM中一切原来的数据。
校准后,再将新的优化相位和增益值载入IMAGE_REJECT_CAL_PHASE(地址0x118)和IMAGE_REJECT_CAL_AMPLITUDE(地址0x119)。休眠模式下,配置寄存器会保存这些校准值;器件唤醒时,会自动重新应用这些值,这样所需的校准次数可降至最少。
通过重复发送IR校准命令CMD_IR_CAL (0xBD),可多次执行IR校准。校准后的结果每次都存储在地址0x118和0x119中。为获得可重复结果,应使用多次IR校准尝试的平均值,并作为0x118和0x119地址设置的最终值。
一般而言,用户必须确定何时、以及在何种条件下下载并运行IR校准模块。ADI建议至少在器件上电初始化过程中执行一次IR校准。
镜像抑制性能取决于温度。因此,为了保持最佳镜像抑制性能,同时建议每当温度变化超过10°C时,就启动校准程序。ADF7024片内温度传感器确定温度变化何时超过此限值。
注意,运行IR校准算法时,这些数据包RAM的位置将供新功能使用,如表1所示。算法未运行时,它们将返回ADF7024参考手册(UG-698)中的默认定义。本手册包含于ADF7024设计资源包中,需要注册才可使用。
用于IR校准的寄存器
表1至表3描述用于IR校准的寄存器。
地址(十六进制) | 寄存器 | 数值 | 说明 |
0x010 | IR_CAL_CTRL1 | 0xC0 | 默认IR校准控制值 |
0x011 | IR_CAL_CTRL2 | 0x04 | 默认IR校准控制值 |
位 | 名称 | R/W | 说明 |
7 | 保留 | R/W | 置0 |
[6:0] | IMAGE_REJECT_CAL_PHASE | R/W | 设置IQ相位调节 |
位 | 名称 | R/W | 说明 |
7 | 保留 | R/W | 置0 |
[6:0] | IMAGE_REJECT_CAL_AMPLITUDE | R/W | 设置IQ幅度调节 |
IR校准固件下载程序
固件二进制下载文件(rom_ram_7024_2_2_IRcal_ dragon_filter_visu.dat)包含于ADF7024设计资源包中,可在ADF7024产品 页面下载,网址是:www.analog.com/ADF7024.
IR校准固件模块必须存储在程序RAM (PRAM)中,从地址0x0000开始。
程序RAM只能利用存储器块写入命令写入。将SPI_MEM_WR 设为0x1E。
将固件模块写入程序RAM的操作序列如下:
- 确保ADF7024处于PHY_OFF状态。
- 发出CMD_RAM_LOAD_INIT命令。
- 利用串行外设接口(SPI)存储器块写入命令将模块写入程序RAM。
- 发出CMD_RAM_LOAD_DONE命令。
- 确认状态字表示 CMD_READY和 FW_STATE值 为PHY_OFF。
程序RAM是易失性存储器,每次收发器从休眠状态唤醒时必须重新加载。
运行IR校准
以硬件复位下载并运行IR校准的完整序列如图1所示。
完成正常初始化后,主机处理器将根据“IR校准固件下载程序”部分描述的序列把IR校准固件下载至ADF7024中。
进入PHY_ON状态之前,确保RADIO_CONTROL寄存器(地址0x11A)中的BB_CAL位(位6)置1,以便使能PHY_ON状态转换过程中的中频滤波器带宽(IFBW)校准。
在PHY_ON状态下,将0xC0和0x04 IR校准配置参数编程设置为数据包RAM地址0x010和地址0x011,如表1中定义所示。然后,发送CMD_IR_CAL便可执行IR校准。
主机必须等待完成IR校准操作,然后才读取更新后的 RADIO_IMAGE_REJECT_CAL_PHASE和RADIO_IMAGE_ REJECT_CAL_ AMPLITUDE 寄存器,这很重要。无法通过检查状态字确认IR_CAL状态。
建议通过两种方法来确认IR_CAL是否完成。方法如下:
- IR_CAL完成操作且置位CMD_READY后,固件状态返回PHY_ON时,IR校准完毕。
- 另外,也可以检查内部校准状态寄存器(0x33A)的位0。注意,ADF7024参考手册(UG-698)未详细说明该功能,因为它仅在IR校准固件工作时才有意义。校准状态寄存器详情如表4所示。位0决定IR校准是否完成。
位 | 名称 | R/W | 说明 |
[7:1] | 保留 | R | 保留 |
0 | MCR_IMAGE_REJECT_CALIBRATION_STATUS | R | 0: IR校准未完成 1: IR校准已完成 |
平均IR校准值
通过求IR校准值的平均值,可以获得可重复性更高的结果,这要求通过主机处理器进行控制。该程序的实例如图2所示。
主机处理器有一个迭代计数器ITERATION_CNT。它发送一个CMD_IR_CAL命令并重复该次数,等待完成校准,然后将结果回读并求均值。均值随后在循环结束时被编程返回 至 IMAGE_REJECT_CAL_PHASE(地 址 0x118)和 IMAGE_REJECT_CAL_AMPLITUDE(地址0x119)中。
IR校准结果
每次IR校准的结果均存储在配置寄存器RADIO_IMAGE_ REJECT_CAL_PHASE(地址0x118)和寄存器RADIO_IMAGE_ REJECT_CAL_ AMPLITUDE(地址0x119)中,并覆盖寄存器中的任何原有数值。
如果主机保留均值(如图2所示),则当完成求平均操作时,主机便会将均值回写入地址0x118和地址0x119。
休眠模式下,配置寄存器会保存这些校准值;发送CMD_ CONFIG_DEV (0xBB)命令时,会自动重新应用这些值。
校准后,镜像衰减的典型性能改善情况如图3所示。
高级操作
本应用笔记描述IR校准固件模块的基本操作。本文不探讨更为高级的技巧,如加快校准时间的播种算法,或者使用外部基准电压源以获得更稳定的校准码。如需使用更高级的选项,请联系ADI公司。