基于FPGA的可编程衰减器设计
引言可编程衰减器位于基站和终端之间,通过对射频信号的衰减控制,实现对无线信号的模拟,从而实现对测试场景的模拟。可编程衰减器提供多个数控接口,从小到大可以构建各个层次的测试网络。所构成的衰减矩阵通过模拟空口信道实现移动、切换、覆盖等多种测试项。
衰减矩阵可作为无线性能中心实验室的关键技术平台的关键设备,是实现组网小区和大量终端用户互联通信过程的核心单元。
图1 可编程衰减器的组网
图2 可编程衰减器硬件结构
图3 8×8个无线通道衰减
本文介绍的可编程衰减器最高可支持8×8输入输出的矩阵结构,提供0~120dB的通道衰减范围,精度达到0.5dB。
可编程衰减器设计
主要功能
可编程衰减器最高可支持8×8输入输出的矩阵结构,可对终端与基站之间的多个信道进行实时衰落控制,同时也能支持各类静态测试场景长时间回放。
图4 实时衰减控制流程
图5 静态场景回放流程
图6 乒乓结构状态机
硬件结构
可编程衰减器由CPU板和IO板构成。CPU板主要由CPU小系统和FPGA组成,CPU板通过FPGA-Cyclone II集中控制外接的IO板。IO板的功能主要是采用FPGA-LFXP10控制数控衰减器衰减量,实现对无线信道衰落的模拟,从而实现对测试场景的模拟。
每个IO板有8个衰减通道,每个衰减通道由4个衰减范围为31.5dB的数控衰减器构成。一个CPU板可外接8个IO板,因此可对8×8个无线通道进行衰减。
图3展示了可编程衰减器的8×8结构。本衰减器可对任一路无线信道模拟其它无线信道对其的影响。通过调节其它信道与该信道之间的衰减值,就可在实验室模拟复杂的外场环境。
逻辑设计
可编程衰减器的核心技术在于其逻辑设计上。可编程衰减器的逻辑结构根据其功能分为两部分:实时衰减控制和静态场景回放。
实时衰减控制
实时衰减控制模式是指用户实时通过CPU下发各个通道之间的衰减值来控制不同无线信道的衰减,衰减值一旦下发,相应的无线信道的衰减器就会立即生效。
CPU与FPGA之间采用LOCAL BUS进行通信。在FPGA中对0~7个IO板接口分配不同的地址,控制译码/通道选择模块通过LOCAL BUS的地址线来选择对应的IO板;每个衰减器需要8bit的衰减量,3bit的通道编码,因此LOCAL BUS数据线上共有11bit有效数据。
译码模块将这11bit数据中3bit的通道编码译码成对应的通道,将8bit的衰减值下发到对应通道的数控衰减器上。
静态场景回放
静态场景回放是用户将某个外场环境下各个无线信道的动态衰减参数记录下来,记录时间可长达数周。将这些数据下发给可编程衰减器即可在实验室内长时间模拟各类复杂的外场环境。
在该场景下,LOCAL BUS的数据线除传输衰减值外还要传32bit的时间数据,每一bit代表1ms的时间,32bit就可支持最长7周的场景回放。
FPGA首先将32Mbit的DDRA写满数据,然后定时控制自动启动,从DDRA中读取定时数据和衰减值,将定时数据提供给定时器。
当定时器计时到定时数据代表的时间点时将该时刻的衰减值下发到对应通道的衰减器上,实现无线信道衰减随时间动态变化的场景;同时FPGA继续将CPU下发的数据写到DDRB中。当DDRB充满后,CPU暂停下发数据,直到DDRA数据读取完毕,此时FPGA切换到读取DDRB的数据,继续向DDRA写入新的数据。
FPGA外挂的两个DDR构成乒乓结构,使可编程衰减器能实现长时间不间断的场景回放。
测试结果
该可编程衰减器的主要性能指标如表1:
表1 可编程衰减器主要参数的测试结果
图7展示了可编程衰减器单通道在衰减范围内的衰减精度。从图中可以看到,在0~80dB的衰减范围内衰减精度可以达到0.5dB;在80dB~120dB衰减范围内衰减精度达到1dB。
图7 可编程衰减器衰减范围内的衰减精度
图8展示了静态场景回放的某一个时间段内可编程衰减器一个无线信道内衰减变化。在该模式下本衰减器可在1ms的时间间隔内实现0~120dB的衰减跳变。
图8 静态场景回放
结论
本文介绍了一种衰减范围可达120dB,衰减精度为0.5dB的可编程衰减器设计。该衰减器可在实验室环境中实现复杂的外场环境,可大大节省终端设备测试的成本和时间。
页:
[1]