使用Vivado HLS评估I/Q压缩算法

作者:Kenshin

随着无线网络的数据流量和密集度不断增加,所有运营商都面临着非常大的挑战。一套好的数据压缩算法能够帮助运营商节省不少的网络基础设备的开支。使用Xilinx Vivado HLS工具评估开放式无线电设备接口(ORI)标准压缩算法可以分析其对信号保真度,延迟以及实现成本。Vivado HLS是一个评估实现压缩算法非常高效的软件平台。

无线数据带宽的增长使得新一代的网络要具备新的能力,例如更高阶MIMO(multiple-input, multiple-output)配置以及载波汇聚等功能。这些变化使得运营商不得不重构他们的解决方案,例如采用基带的中心化处理优化网络资源的利用,降低基带处理花销,但是共享式的基带处理资源也增加了前端网络的复杂性。

前端网络负责在基带单元(BBU)和远程无线电头端(RRH)之间传输调制的天线载波信号,大部分解决方案采用的是通用公共无线电接口(CPRI)协议通过光纤传输。但是CPRI协议只支持恒定的比特率传输,而且近些年来随着带宽需求的增加数据传输速率已经达到了其规范所能达到的最大的传输速率。

现在所有网络运营商都在寻找一种解决方案,能够让他们的数据速率得到明显的提升但是不需要增加光纤链路的数量。为了能长久的解决这一问题有些运营商尝试进行架构和数据接口的功能重构,以降低前端网络的带宽。但是功能的重构仍然不能弥补性能要求与一些无线数据接口规范之间的差距。

另一种方法是采用压缩/解压缩(codec)方法来降低带宽以满足数据的吞吐量,具体压缩率要根据无线信号的噪声水平,动态变化范围以及过采样率来确定。例如我们使用Vivado HLS的FIR IP重构采样滤波器原型,为了满足吞吐量的要求采用闭环的并行单速率FIR滤波方案,当验证的数据量相当大时,采用C语言实现的模拟算法的高效就更加明显了,例如高吞吐量的I/Q压缩算法(每个通道307200I/Q信号采样),同时我们还使用VSA工具进行EVM测量,C语言和RTL共同仿真测试压缩算法IP持续了九个小时,而纯C语言的只需要五分钟。

另一项C语言HLS工具的优点就是容易生成测试输入的数据以及对输出数据的捕获,数据格式可直接使用VSA工具进行数据分析或者比较。

Vivado HLS I/Q CODEC IP 旨在满足每个时钟周期三个压缩 E-UTRA 采样(30 位)的吞吐量需求。128 位的 CPRI 控制字可为完全封装 32 位 CPRI I/Q 接口提供充足的缓存。重采样滤波器使用 4 个并行多相分数重采样滤波器实现,每个滤波器压缩所支持的 32 个 I 和 Q 通道的一个子集(8 个)。每个多相子滤波器只使用一部分系数集,因此所推荐的架构可减少 CODEC 时延。

图1体现采样处理速率的 I/Q CODEC IP 实现架构

图1体现采样处理速率的 I/Q CODEC IP 实现架构

最后单从Vivado HLS工具的角度出发,它能够提供完整的硬件原型架构设计,采用C语言的测试方法很容易生成测试用的大量采样数据,完成对硬件系统原型的评估。对于I/Q压缩算法等类似高数据吞吐量的应用,采用Vivado HLS工具进行测试评估更加的方便。

声明:本文为原创文章,转载需注明作者、出处及原文链接