AN-1182: 了解ADF7021的AFC环路并为实现最小前同步码长度而进行优化
简介
无线电通信网络中的远程收发器使用自己的独立时钟源。 因此,这些收发器容易产生频率误差。当发射机启动通信 链路时,关联的接收机需要在数据包的前同步码阶段校正 这些误差,以确保正确的解调。能够执行这种校正的有效 设计模块是一种自动频率控制(AFC)环路。本应用笔记介 绍如何在ADF7021, ADF7021-N 和 ADF7021-V上实施并优化AFC。
因为延迟和电池寿命对远程应用至关重要,所以设计人员需要缩短校正频率误差所需的建立时间。ADF7021系列无线电通常需要多达15个字节的前同步码才能校正频率误差。有些方法可将这种长度缩短为4至6个字节。
本应用笔记概要介绍了影响AFC环路响应能力的各种参数,并提出可针对特定用例缩短建立时间的建议设置,同时还详细说明了由此引起的性能权衡。
快速设置
调制指数(MI)提供了一种将频率偏差与数据速率联系起来的衡量标准,是优化建立时间的关键因素。
表1包含了有关推荐默认设置的信息。ADF7021上的默认设置可确保在针对所有调制指数(MI)使能AFC时尽可能实现最佳的接收机灵敏度。表2包含了可实现最佳建立时间的设置。注意,通过这些设置可实现低至4个字节的前同步码长度。表2中的设置仅推荐用于MI ≥ 1的系统。
缩短AFC环路建立时间会降低接收机灵敏度。与表1中的默认设置相比,采用表2中的设置时,接收机灵敏度会降低1 dB至2 dB。为了在MI < 1的情况下实现较快的建立速度,请遵循图7中列出的步骤,同时还需考虑本应用笔记中详细说明的其他因素及其影响。
KI | 11 |
KP | 4 |
峰值 | 默认 |
泄漏 | 默认 |
所需的前同步码 | 8至14个字节 |
KI | 8 |
KP | 2 |
峰值 | 0 |
泄漏 | 0 |
所需的前同步码 | 4至6个字节 |
时钟和数据恢复(CDR)
了解CDR算法对考虑AFC环路的响应能力比较有帮助。ADF7021无线电调制解调器能够以32倍于数据传输速率的速度对数据分割器(见图1)的输出数据进行过采样,由此实施CDR算法。检测到数据上的位跃迁时,CDR算法会更新,Rx时钟也会有所调节,调节的量是位时间的+1/32、0或−1/32。注意,要让CDR算法实现锁定,需要在数据上进行16位跃迁。对此,应用笔记AN-915做出了更为详细的介绍。
为实现较快的CDR时钟,选择1010…这样的前同步码序列会更好。要保证PER性能最佳,在CDR采集期间,分隔器输出上的1010…序列传号空号比应该尽可能接近50:50。出现频率误差时,传号空号比不会是50:50。因此,必须在CDR采集发生之前实施AFC。
图1显示了采用表1优化设置和表2默认设置的情况下本振(LO)对1010…前同步码序列的平均响应能力。时间t = 0时,会出现5 kHz频率误差。实施优化设置的情况下,t = 16时,频率误差已降至最低,CDR采集将会开始。
注意,在t = 16和t = 32之间,LO上有一个约为零的误差。出现的误差称为LO稳态误差。随着AFC环路响应速度的提高,此误差的幅度也会增大。图1中优化设置和默认设置的稳态误差区别突出显示了这一点。CDR算法容许的误差程度因MI而异。例如,对于MI ≥ 1的系统,容许的稳态误差在红色轨迹表示的范围内。MI < 1的系统需要更慢的AFC响应,从而确保更小的稳态误差。
图1中,t = 32时,CDR采集完成。此时会以Tx数据速率对Rx时钟进行同步,并且对Rx眼的中心进行采样。由于同步字(SWD)上的连续1或0,只有在CDR算法实现锁定之后才能容许一定量的LO漂移。本应用笔记稍后部分会更详细地介绍这一主题。
在选择AFC设置时,对前同步码期间LO上升时间和稳态频率误差的权衡是一项主要考虑因素。
AFC环路概述
图2显示了AFC环路的功能框图。在AFC使能的状态下,会使用包络检波器估算接收信号的中心频率。理想情况下,这会按连续的1010...前同步码序列执行。接收信号的此估算值随后会与目标频率进行比较,由此生成误差信号。
误差信号通过一个比例积分(PI)控制环路进行传递,输出会调节小数N分频频率合成器。整体AFC环路响应主要由包络检波器和PI控制环路的组合决定。下面几部分将详细说明它们的影响。
包络检波器
包络检波器的功能是在有噪声的情况下跟踪接收信号的中心频率(载波),同时承受具有可变游程长度限制(RLL)的接收数据。包络检波器的时间响应取决于ED_PEAK_RESPONSE和ED_LEAK_FACTOR。
图3显示了在采用默认峰值/泄漏设置和参数设置为零的情况下LO对1010…前同步码序列的平均响应。开始时,LO偏置为具有−5 kHz的失调。
注意,峰值和泄漏设置为零时,初始响应(t = 0和t = 32之间)相当快,但走线的斜率类似,因为这主要取决于PI控制环路。这样做会增加LO稳态误差。
通过设置Register14_DB[27:31] = 0和Register15_DB[4:7] = 9可将ED_PEAK_RESPONSE和ED_LEAK_FACTOR设置为零。
PI控制器
AFC环路的比例和积分增益在Register10_DB[17:23]中控制。响应主要取决于集成式增益元件KI。图4和图5显示了KI和KP如何影响LO对1010…前同步码信号的响应。随着KI降低,上升时间也缩短,但开始出现一些过冲情况。
从图5中可以清楚看到,比例增益元件KP的影响相较于KI而言极其微小。但是,将值减小为KP = 2可以减少因为降低KI而造成的过冲。尽管这只是微小的改进,但已发现这样做能在使用较短的前同步码的情况下改善PER。
为确保AFC环路的稳定性,建议设置KI ≥ 8且KP ≥ 2。
图5中的红色曲线表示完全优化的LO响应。这些设置和表2中所用的设置相同。采用这些设置时,在大约2个字节的前同步码之后会实现稳态。CDR环路需要16位跃迁,以便与接收的信号持续同步(接收的信号需要额外2个字节的前同步码)。
SWD选择的影响
随着AFC环路响应的提升,SWD中的LO漂移会非常显著。图6显示了LO对典型SWD的响应。在成功接收到SWD之后,AFC环路就会锁定。收到SWD时,在位160处观察到LO漂移。在RLL = 5且环路针对快速响应而优化的情况下,漂移可以高达±1 kHz。由于CDR正对位的中心进行采样,因此能够以较高的Rx功率承受数据包中SWD部分的某些LO漂移。然而,根据LO漂移的幅度,接收机灵敏度可能会有所降低。为此,建议最大限度地降低SWD的RLL。图6中AFC环路的锁定位置突出强调了需要直流平衡的最终4位SWD。
建议在成功接收到SWD之后将AFC环路锁定。这样可确保能够在数据包的有效载荷部分承受较长的RLL。设置Register12_DB[4:5] = 2并从SWD末尾根据特定时间数据包长度(DPL)保持AFC环路的锁定状态,由此即可在片内实现上述目的。在Register12_DB[8:15]中配置DPL。
其它的考虑
接收信号的占用带宽接近接收机IF滤波器的带宽时,AFC环路的灵敏度会降低。这种情况下,可能需要通过更长的前同步码恢复信号。
对ADF7021有数据速率容差要求。实际传输的数据速率必须在所需接收机数据速率的±2 %范围内。应用笔记AN-915中有更详细的说明。
考虑AFC环路时,参考振荡器容差很重要。晶振中的误差会导致工作RF频率出现误差。此误差会按比例随着工作频率一起增大。例如,10 MHz晶振中的5 ppm误差会在晶振基频中生成50 Hz的误差。在868 MHz条件下,此误差会倍增为4.34 kHz。与433 MHz相比,RF误差为2.165 kHz。
在AFC开启的情况下,无法使用AFC回读功能。
通过使用更短的SWD或将匹配误差容差设置为> 0,可以提高接收机灵敏度。此设置可以在Register 11_DB[6:7]中进行。利用错误SWD检测找出最佳设置时需要进行权衡。注意,在下一个SWD设置之后的锁定阈值使能的情况下,错误SWD检测将AFC环路锁定,持续时间为可编程的DPL。ADIsimSRD Design Studio提供了计算器来确定错误SWD检测的可能性。可从ADF7021产品页面下载此工具。
对片内CDR采取旁路措施可从接收机灵敏度和CDR建立时间方面实现进一步的改善。要做到这一点,可将分隔器输出带到主机微处理器上并实施自定义CDR算法。通过设置Register15_DB[4:7],可将分隔器数据输出到TxRxData引脚。对片内CDR采取旁路措施后,通过提高CDR时钟的速度还可以进一步加快AFC环路响应速度。
配置示例
表3显示了使用表4所示设置时测量到的Rx灵敏度性能。其中提到的接收机灵敏度是整个受测频率误差范围内最差的情形。表1中的测量是在SWD中RLL = 2的情况下进行的。这不是一种限制,如有必要,可以使用更长的游程长度。
数据速率 (kbps) |
Fdev (kHz) | 灵敏度1% PER PER (dBm) |
前同步码 (字节) |
1.2 | 1.2 | −116 | 4 |
2.4 | 2.4 | −115 | 4 |
2.4 | 1.2 | −114.5 | 4 |
4.8 | 4.8 | −114 | 4 |
4.8 | 2.4 | −113.5 | 4 |
9.6 | 4.8 | −112 | 5 |
XTAL (MHz) | 19.68 |
AFC BW(kHz) | ± 4.5 |
频率误差(kHz) | ± 4 |
IFBW (kHz) | 18.5 |
解调器 | 相关器 |
调制 | GFSK (0.5) |
SWD锁定阈值 | 是 |
SWD | D4C95A |
匹配误差容差 | 0 |
KI | 8 |
KP | 2 |
峰值 | 0 |
泄漏 | 0 |
为实现最小前同步码长度而优化AFC环路所需的步骤
本应用笔记中建议的配置可能不适用于某些系统,包括那些MI < 1的系统。图7为建议的流程图,适用于针对此类系统为实现最小前同步码长度而优化环路。实施此方案时,假定用户拥有能够执行PER测试的测量设置。
图7包含三个编号标签(1、2和3)。对于标签1,注意,如果是以AFC优化为目标的设置,请将X设置为系统中正使用的前同步码的当前值,然后按步骤操作。AFC正开启的情况下,建议以X = 12字节为起点。在两种情况下,最终优化之前可能都需要先增加前同步码长度
标签2指出系统的其他一些元件导致与AFC不兼容。通过更改AFC环路或增加前同步码长度并不能解决此问题。
对于标签3,建议先降低KI,因为它对建立速度的影响比KP更显著。有关详情,请参见“PI控制器”部分。