数字分布式天线系统中无线数据与网络数据交换调度设计

2016-11-02 23:47田有庆
电脑知识与技术 2016年23期

田有庆

摘要:数字智能分布式天线系统(DDAS)可以使手机用户在上网时直接使作WIFI,而不是3G或4G下的无线数据,因此有明显的优势,目前已在欧美等国多个城市使用,数字智能分布式天线系统不仅有效调度了无线数据,同时又将无线网络数据和WIFI的网络数据进行了平衡,使系统达到最优。

关键词:分布式天线系统;BBU;RRH;DDAS;WIFI;FPGA;DMA

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)23-0228-02

目前在无线延伸系统的设计中主要有三种,一种是基于模拟信号传递方式的传统的分布式天线系统,第二种BBU-RRH是基站到远端延伸方式,是数字的传输方式,传输协议采用CPRI,第三种是最近几年才逐渐发展起来的新型改进型的数字智能分布式天线系统(DDAS)。无论哪一种目前都采用光纤媒介进行传递。相比前两种,第三种不仅融合了第一,第二的技术,而且支持目前最为流行的WIFI技术,可以使手机用户在上网时直接使用WIFI,而不是3G或4G下的无线数据,因此有明显的优势。本文重点介绍如何充分利用光纤的带宽和网络交换技术支持DDAS下用户的网络和WIFI。

DDAS系统由DDAS主机和DDAS远端两部分构成,如图1所示,其中主机可以通过同轴电缆和模拟基站相连,经过下变频将基站的射频信号转成模拟中频信号,再经过ADC转换成数字信号,经过数字信号处理(数字下变频和数字滤波以及数字抽取等过程)变成适合在光纤上传输的信号。BBU相连接受来自数字基站的信号,经过接收端解码后,进行抽取或插值以及采样宽度变换,将多个载波信号合成一个波段,并最终与来自模拟基站的信号合并,统一地传送到远端。

网络服务器经过RJ45或光纤收发器接入DDAS主机后经过网络交换机将网络包传送到对应的远端。同时在每个远端DDAS内部都有一个网络交换机,以实现网络包的切换以决定网络数据包送到本地的WIFI ROUTER还是继续传送到下级DDAS远端设备,这种结构充分利用WIFI数据频谱利用率高和LTE数据覆盖广的特点,有效地平衡了手机用户数据和无线网络拥挤的矛盾。

1 DDAS网络数据交换结构

在无线数据服务中,数据服务已经成为主流应用,而通话业务变成移动通信中必不可少的一个功能而已。手机用户上网一般在有WIFI链接时选用WIFI,没有WIFI时会自动切换到无线服务,如LTE等。既然LTE能够提供无线上网,为什么还要WIFI服务呢?这主要是在传输信道中网络数据包是原始数据的传送,而LTE或WCDMA的信号在光纤传输时应首先变成数字信号,这样相比WIFI而言无线数据(LTE等)光纤传输的带宽利用率就会低很多。其次充分利用网络交换技术更能合理的使用光纤的带宽,如远端01的两个用户在使用WIFI数据时可以直接使用WIFI router1内置的网络交换机进行交换而共享数据。远端01,11的两个用户虽然不在一个局域网内,但也只要经过远端01,11之间的一段光纤即可找到对方,可以充分利用P2P技术或网络点到点的访问技术。由于目前DDAS主机和远端的交换和DSP处理都是由FPGA实现,因此网络SWITCH的功能也是由FPGA实现的。由于远端的SWITCH和主机的SWITCH结构相同,因此本文着重介绍主机端的SWITCH的设计。

图2中,MCU是DDAS中主机控制器,它通过网络与远端主机相连实现远端控制。Sever是DDAS的网络服务器,并提供网络服务并实现与外界的接口。Op1到Op8 是DDAS主机与远端主机相连的光纤,这里表示网络数据经过光纤输入到网络交换机(From)或交换机已经获得目的地址对应的物理端口,成功将数据送到该端口上(To…)。

为了充分利用FPGA资源,网络交换机制采用哈希表查找机制,下面介绍哈希映射原理和哈希表的构成。

2 哈希表

哈希表在深度方向由256个单元构成,每个单元又分为16个子单元,总共4096个子单元,最多可以存放4096个MAC地址,子单元地址主要解决哈希地址冲突问题。由于MAC地址有48bit,而哈希表只有有限的地址,不能满足一一对应关系,因此利用散列实现48bits地址到256x16单元的映射。为了更好地散列MAC地址,本文采用CRC实现散列算法,即48bits MAC地址输入,生成8bits CRC输出作为哈希表的查找或学习地址(详细过程参见后续哈希表的调度)。

哈希表单元内容由4个字段构成分别为48bits MAC地址,4bits 端口号,4bits TTL和8bits “保留”字段,总共64bits构成,其中保留字段主要为将来扩展使用,这里不做介绍。“MAC地址”字段主要存储在学习阶段获得的MAC地址(源),“端口号”主要存储MAC地址对应的端口,即该数据包的来源,是从光纤OP1-OP8来的还是从MCU来的。TTL是生存周期,这里最大值设为5分钟(可以根据具体情况确定),如果TTL为0,则说明该单元中的内容已经作废。

1)初始化,清空哈希表,此时哈希表内无任何内容,因此所有的数据包一律广播。

2)学习过程,读取网络包的源MAC地址,由哈希地址转换程序转换成哈希表地址,读取该地址的哈希表的内容。首先判断TTL(初始化是预设为零)字段的值是否为零,如果为0说明该地址没有存储任何条目,或者虽有存储但内容已过期。此时直接修改表中的内容即可。其次如果TTL的值不为零,则比较源MAC地址与表中的MAC地址是否一致,如果一致说明该表中已经有该地址的存储,直接修改端口号和TTL(直接修改成最大值)的值。如果比较的结果不一致说明该存储单元已被其他的MAC地址占用,而且TTL还在有效期,因此保留该存储单元的内容,子地址加1,然后以同样的方式处理该子地址的存储单元,直到子地址已变成15仍找不到空余单元,则放弃此次学习的过程。

3)查找过程,就是由目的MAC地址查找端口的过程,首先由哈希地址转换程序产生哈希表地址,读取对应表中的内容,将表中的MAC地址与目的MAC地址比较,如果相同则查找成功,修改TTL为最大值,同时返回表中的端口号,主程序利用得到的端口号进行单播DMA传输。如果比较的结果不同(由散列值冲突造成),哈希表的子地址加1,继续查找直到子地址等于15仍得不到结果,返回查找失败。主程序将该网络包广播给每一个端口。

4)扫描过程,该过程由定时器每分钟触发一次,如果此时没有学习或查找过程,则启动扫描过程,扫描从0地址开始逐一扫描的最后一个单元,每个单元中的TTL如果不为0,则TTL =TTL-1,同时将修改后的TTL写回表中,当TTL的值为零时,该存储单元的记录就作废了。这样就清除了表中已学习到的MAC地址但最近较长时间没有活动的地址,这样就会给最近经常活动的MAC地址存入表中的机会。

3 无线数据与网络数据的调度

不失一般性,我们以4个波段从DDS主机到DDS 远端01为例进行说明,如图5 所示,数据是按照贞的方式在光纤中发送的。每一帧由贞头,贞尾和五个时隙组成,其中贞头包含贞同步、波段(或网络)到时隙的映射等。贞尾一般是FEC(前向错误检查)。真正的数据是放在五个时隙中的,在组贞过程中是以时隙为基础的,先从时隙1开始,扫描从波段1到波段4,4个波段中挑选出有足够的数据可以填充该时隙的波段,把数据搬移到该时隙上。如果四个波段都没有数据则查看网络数据缓冲器,如果也没有数据,则该时隙就填充零,并记下该时隙对应的波段号或网络数据。依次完成5个时隙的数据搬移或填充,最后处理贞头和贞尾并形成一个完整的数据包经过加扰处理(scrambler)后送到10Gbps的光纤收发器上进行传送。接收端按照相反的顺序依次处理依次解调。

结论:该网络和无线数据调度技术已经在欧美地区多个城市布线并使用,不仅有效调度了无线数据,同时又将无线网络数据和WIFI的网络数据进行了平衡,使系统达到最优。