一种LTE-IR接口数据压缩方法及其装置转让专利

申请号 : CN201210042937.6

文献号 : CN102612079B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈聃青高远朱莉森

申请人 : 大唐移动通信设备有限公司

摘要 :

本发明公开了一种应用于分布式基站的LTE-IR接口数据压缩方法及其装置。分布式基站中设置有查找表,该查找表的创建过程包括:将待压缩数据取绝对值后的取值范围划分为2N个数值区间,其中N为压缩后数据去除符号位后的位宽;将每个数值区间内的一个数值作为该数值区间的标识值按照升序或降序顺序存储于查找表,每个标识值在查找表中的地址为相应数值区间内的待压缩数据的压缩结果值。在数据压缩过程中,采用二分查找法,在所述查找表中查找待压缩数据的绝对值所属数值区间的标识值;根据查找到的数值区间的标识值在所述查找表中的地址,确定所述待压缩数据的压缩结果值。采用本发明可在保证现有数据压缩要求的前提下,降低技术实现难度并减少资源占用。

权利要求 :

1.一种应用于分布式基站的LTE-IR接口数据压缩方法,其特征在于,所述分布式基站中设置有查找表,所述查找表的创建过程包括:将待压缩数据取绝对值后的取值范围划分N为2 个数值区间,其中N为压缩后数据去除符号位后的位宽;将每个数值区间内的一个数值作为该数值区间的标识值按照升序或降序顺序存储于查找表,每个标识值在查找表中的地址为相应数值区间内的待压缩数据的压缩结果值;该方法包括:接收输入的待压缩数据;

取所述待压缩数据的绝对值,保存所述待压缩数据的符号位;

采用二分查找法,在所述查找表中查找所述待压缩数据的绝对值所属数值区间的标识值;

根据查找到的数值区间的标识值在所述查找表中的地址,确定所述待压缩数据的压缩结果值;

根据所述待压缩数据的符号位,将所述待压缩数据的压缩结果值转换为有符号数后输出。

2.如权利要求1所述的方法,其特征在于,每个数值区间的标识值为该数值区间的起始位置数值,且每个数值区间的标识值按照升序顺序存储于查找表;所述采用二分查找法,在所述查找表中查找所述待压缩数据的绝对值所属数值区间的标识值的步骤,包括:将所述查找表中间位置存储的标识值与所述待压缩数据的绝对值进行比较,如果两者相等,则结束查找过程;否则,以该中间位置将所述查找表分成前、后两个子表,如果该中间位置存储的标识值大于所述待压缩数据的绝对值,则进一步查找前一子表,否则进一步查找后一子表,以此类推,直到两者相等或直到查找到所述查找表存储的第一个或最后一个标识值时结束查找过程;

其中,在子表中进行查找时,将该子表中间位置存储的标识值与所述待压缩数据的绝对值进行比较,如果两者相等,则结束查找过程;否则,以该中间位置将该子表再分成前、后两个子表,如果该中间位置存储的标识值大于所述待压缩数据的绝对值,则进一步查找前一子表,否则进一步查找后一子表;

当查找结果为两者相等或查找到所述查找表存储的第一个标识值时,将当前标识值作为所述待压缩数据的绝对值所属数值区间的标识值;

当查找到所述查找表存储的最后一个标识值时,若该标识值大于所述待压缩数据的绝对值,则将该标识值的前一个标识值作为所述待压缩数据的绝对值所属数值区间的标识值;否则,将当前标识值作为所述待压缩数据的绝对值所属数值区间的标识值。

3.如权利要求1所述的方法,其特征在于,所述查找表的数量为N个,采用二分查找法,在所述查找表中查找所述待压缩数据的绝对值所属数值区间的标识值时,分别根据所述N个查找表并行对数量不超过N的待压缩数据进行所述查找;其中,针对同一待压缩数据的前一个查找操作与其后一个查找操作所使用的查找表不相同。

4.如权利要求1所述的方法,其特征在于,所述查找表的数量为N-1个,采用二分查找法,在所述查找表中查找所述待压缩数据的绝对值所属数值区间的标识值时,分别根据所述N-1个查找表并行对数量不超过N的待压缩数据进行所述查找;其中,对于待压缩数据除第一次查找操作以外的其它查找操作,使用查找表,且针对同一待压缩数据的前一个查找操作与其后一个查找操作所使用的查找表不相同。

5.如权利要求1所述的方法,其特征在于,在将所述待压缩数据的压缩结果值转换为有符号数后、输出所述有符号数之前,还包括:将同一天线相邻的至少两个采样点的有符号压缩数据拼接在一起,拼接在一起的数据的位宽不超过LTE-IR接口数据位宽。

6.如权利要求5所述的方法,其特征在于,若拼接在一起的数据的位宽小于LTE-IR接口数据位宽,则还使用余下的比特携带相应天线的自动增益控制AGC因子。

7.如权利要求1-5之一所述的方法,其特征在于,待压缩数据的压缩结果值是根据A律压缩算法计算得到的,所述N等于6。

8.一种应用于分布式基站的LTE-IR接口数据压缩装置,其特征在于,包括:

ROM单元,用于存储查找表;所述查找表的创建过程包括:将待压缩数据取绝对值后的N

取值范围划分为2 个数值区间,其中N为压缩后数据去除符号位后的位宽;将每个数值区间内的一个数值作为该数值区间的标识值按照升序或降序顺序存储于查找表,每个标识值在查找表中的地址为相应数值区间内的待压缩数据的压缩结果值;

输入单元,用于接收输入的待压缩数据;

第一处理单元,用于取所述待压缩数据的绝对值,保存所述待压缩数据的符号位;

查表单元,用于采用二分查找法,在所述查找表中查找所述待压缩数据的绝对值所属数值区间的标识值;以及,根据查找到的数值区间的标识值在所述查找表中的地址,确定所述待压缩数据的压缩结果值;

第二处理单元,用于根据所述待压缩数据的符号位,将所述待压缩数据的压缩结果值转换为有符号数;

输出单元,用于输出所述第二处理单元处理得到的有符号数。

9.如权利要求8所述的装置,其特征在于,每个数值区间的标识值为该数值区间的起始位置数值,且每个数值区间的标识值按照升序顺序存储于查找表;

所述查表单元具体用于,将所述查找表中间位置存储的标识值与所述待压缩数据的绝对值进行比较,如果两者相等,则结束查找过程;否则,以该中间位置将所述查找表分成前、后两个子表,如果该中间位置存储的标识值大于所述待压缩数据的绝对值,则进一步查找前一子表,否则进一步查找后一子表,以此类推,直到两者相等或直到查找到所述查找表存储的第一个或最后一个标识值时结束查找过程;

其中,在子表中进行查找时,将该子表中间位置存储的标识值与所述待压缩数据的绝对值进行比较,如果两者相等,则结束查找过程;否则,以该中间位置将该子表再分成前、后两个子表,如果该中间位置存储的标识值大于所述待压缩数据的绝对值,则进一步查找前一子表,否则进一步查找后一子表;

当查找结果为两者相等或查找到所述查找表存储的第一个标识值时,将当前标识值作为所述待压缩数据的绝对值所属数值区间的标识值;

当查找到所述查找表存储的最后一个标识值时,若该标识值大于所述待压缩数据的绝对值,则将该标识值的前一个标识值作为所述待压缩数据的绝对值所属数值区间的标识值;否则,将当前标识值作为所述待压缩数据的绝对值所属数值区间的标识值。

10.如权利要求8所述的装置,其特征在于,所述查找表的数量为N个;

所述查表单元具体用于,分别根据所述N个查找表并行对数量不超过N的待压缩数据进行所述查找;其中,针对同一待压缩数据的前一个查找操作与其后一个查找操作所使用的查找表不相同。

11.如权利要求8所述的装置,其特征在于,所述查找表的数量为N-1个;

所述查表单元具体用于,分别根据所述N-1个查找表并行对数量不超过N的待压缩数据进行所述查找;其中,对于待压缩数据除第一次查找操作以外的其它查找操作,使用查找表,且针对同一待压缩数据的前一个查找操作与其后一个查找操作所使用的查找表不相同。

12.如权利要求8所述的装置,其特征在于,所述输出单元还用于,在输出所述有符号数之前,将同一天线相邻的至少两个采样点的有符号压缩数据拼接在一起,拼接在一起的数据的位宽不超过LTE-IR接口数据位宽。

13.如权利要求12所述的装置,其特征在于,所述输出单元还用于,在拼接在一起的数据的位宽小于LTE-IR接口数据位宽的情况下,使用余下的比特携带相应天线的自动增益控制AGC因子。

14.如权利要求8-13之一所述的装置,其特征在于,待压缩数据的压缩结果值是根据A律压缩算法计算得到的,所述N等于6。

15.一种分布式基站设备中的基带单元设备BBU,包括上行数据处理模块和下行数据处理模块,其中,所述上行数据处理模块包括IR接口模块、解压缩模块、解AGC模块、基带模块,所述下行数据处理模块包括:IR接口模块、压缩模块、AGC模块、基带模块,其特征在于,所述下行处理模块中的压缩模块为如权利要求8所述的装置。

16.一种分布式基站设备中的射频远端设备RRU,包括上行数据处理模块和下行数据处理模块,其中,所述上行数据处理模块包括射频中频模块、AGC模块、压缩模块、IR接口模块,所述下行数据处理模块包括:射频中频模块、解AGC模块、解压缩模块、IR接口模块,其特征在于,所述上行处理模块中的压缩模块为如权利要求8所述的装置。

说明书 :

一种LTE-IR接口数据压缩方法及其装置

技术领域

[0001] 本发明涉及无线通信领域,尤其涉及一种LTE-IR接口数据压缩方法及其装置。

背景技术

[0002] 随着移动通信技术的发展,高速大容量的数据传输是一个必然的趋势。数据量的增大,对基站的光纤数据传输速度也提出了更高要求。当单根光纤无法满足传输速率时,只能通过提高光纤速率或增加光纤数量的方法实现高速数据传输。这两种方式都会增加设备成本。
[0003] LTE(Long Term Evolution,长期演进)基站是一种分布式基站设备,由基带单元设备(Base Band Unit,BBU)及射频远端设备(Remote RF Unit,RRU)构成。RRU与BBU之间通过光纤连接。由于系统最大IQ(正交的两路基带信号)数据采样宽度为16bit,光纤传输还需对数据进行8/10编码,因此对于8天线20M带宽的设备来说,光口最大线速率为:
[0004] 30.72M*32bit*8天线*(10/8)=9.8304Gbps
[0005] 而目前基站光口数据传输只支持6.144Gbps,完成20M8A(A表示天线)的数据传输就必须采用支持10G速率的光口,或者采用2个6.144G速率的光口、2根光纤完成数据传输。随着天线数量或系统带宽增加,基站设备的光纤成本还将进一步增加。
[0006] RRU与BBU间的数据传输遵循LTE-IR接口协议标准。LTE-IR接口协议规定数据传输的基本帧长为1Tc=1/3.84MHz。一个基本帧包含16个字,字长T由线比特率决定。在一个基本帧里,I/Q数据的bit0位丢掉,只传输高15bit,以余出一个字用于控制字的传输。图1是字长为T的帧结构图。其中,W表示字,Y表示字节数,B表示bit数。当线速率为9.8304Gbps时,T等于128。
[0007] IR接口数据压缩算法具体实现可分为4个步骤:
[0008] (1)AGC(Automatic Gain Control,自动增益控制)处理:以symbol(符号)为单位,对IR接口传输的数字信号的幅值进行估计,并将其调整到预期的目标值,方便后面的压缩处理。通常采用移位操作实现。
[0009] (2)压缩:实现基带数据由16bit到7bit的压缩,是IR接口数据传输压缩过程的核心部分。
[0010] (3)解压缩:是压缩模块的反过程,采用的算法取决于压缩算法。通常使用查表方式。
[0011] (4)解AGC处理:AGC处理的反过程。
[0012] 由于RRU及BBU的IR接口功能是通过FPGA(Programmable Gate Array,现场可编程门阵列)实现的,所以数据压缩也在FPGA上完成。图2是IR接口数据压缩的结构原理图。
[0013] A律压缩算法是一种非均匀语音压缩算法,主要用于公用电话网。A律特性定义为:
[0014]
[0015] 式(1)中,x为归一化的输入语音信号,sgn(x)为x的符号位,y为压扩后的归一化输出信号,A为压缩参数取值。
[0016] 优化的A律压缩算法在FPGA上有三种实现方式:
[0017] (1)查表法:将A律压缩结果值放在ROM(Read-Only Memory,只读内存)表中,压缩结果值的读地址为对应的压缩前数据,以输入信号作为ROM的读地址查表可得到压缩结果值。
[0018] (2)计算法:通过搭建逻辑电路来实现A律计算式。
[0019] (3)线性近似法:用数段折线近似A律曲线,现有的典型应用是A=87.6的十三折线法。十三折线法可以将16bit位宽的输入数据,压缩到8bit位宽,性能损失较小,但对于7bit的压缩,其性能损失无法接受。考虑到LTE信号的统计特性与语音信号的特性会有一定的差异,IR接口比特压缩算法通过不同场景的仿真实验,对参数A进行优化,实现7bit压缩。
[0020] 现有的三种A律算法实现方案的主要缺点在于:
[0021] (1)查表法:需要占用大的存储资源。对LTE系统而言,查找表的容量为2^16*7bit,需要占用56块M9K Memory Block。
[0022] (2)计算法:由于A律计算式包括对数及乘除运算,通过逻辑电路实现难度很大。目前FPGA芯片厂商提供对数运算及乘除运算的IP核,可简化计算过程,但计算周期长,且占有DSP(Digital Signal Processing,数字信号处理)资源。以Altera的FPGA为例,一个对数运算器将占用8块DSP,一个乘法运算器占用4块DSP。
[0023] (3)线性近似法:计算结果精度有限,且灵活性差,对于不同的A值需要不同的折线来近似。而IR接口比特压缩算法在不同的场景下,A值可能变化的。
[0024] 由此可见,目前的A律压缩算法,在实现难度及资源占用等方面难以满足系统需求。

发明内容

[0025] 本发明实施例提供了一种LTE-IR接口数据处理方法及其装置,用以降低技术实现难度并减少资源占用。
[0026] 本发明实施例提供的应用于分布式基站的LTE-IR接口数据压缩方法中,所述分布式基站中设置有查找表,所述查找表的创建过程包括:将待压缩数据取绝对值后的取值N范围划分为2 个数值区间,其中N为压缩后数据去除符号位后的位宽;将每个数值区间内的一个数值作为该数值区间的标识值按照升序或降序顺序存储于查找表,每个标识值在查找表中的地址为相应数值区间内的待压缩数据的压缩结果值;该方法包括:
[0027] 接收输入的待压缩数据;
[0028] 取所述待压缩数据的绝对值,保存所述待压缩数据的符号位;
[0029] 采用二分查找法,在所述查找表中查找所述待压缩数据的绝对值所属数值区间的标识值;
[0030] 根据查找到的数值区间的标识值在所述查找表中的地址,确定所述待压缩数据的压缩结果值;
[0031] 根据所述待压缩数据的符号位,将所述待压缩数据的压缩结果值转换为有符号数后输出。
[0032] 本发明实施例提供的应用于分布式基站的LTE-IR接口数据压缩装置,包括:
[0033] ROM单元,用于存储查找表;所述查找表的创建过程包括:将待压缩数据取绝对值N后的取值范围划分为2 个数值区间,其中N为压缩后数据去除符号位后的位宽;将每个数值区间内的一个数值作为该数值区间的标识值按照升序或降序顺序存储于查找表,每个标识值在查找表中的地址为相应数值区间内的待压缩数据的压缩结果值;
[0034] 输入单元,用于接收输入的待压缩数据;
[0035] 第一处理单元,用于取所述待压缩数据的绝对值,保存所述待压缩数据的符号位;
[0036] 查表单元,用于采用二分查找法,在所述查找表中查找所述待压缩数据的绝对值所属数值区间的标识值;以及,根据查找到的数值区间的标识值在所述查找表中的地址,确定所述待压缩数据的压缩结果值;
[0037] 第二处理单元,用于根据所述待压缩数据的符号位,将所述待压缩数据的压缩结果值转换为有符号数;
[0038] 输出单元,用于输出所述第二处理单元处理得到的有符号数。
[0039] 本发明实施例还提供了一种分布式基站设备中的BBU,包括上行数据处理模块和下行数据处理模块,其中,所述上行数据处理模块包括IR接口模块、解压缩模块、解AGC模块、基带模块,所述下行数据处理模块包括:IR接口模块、压缩模块、AGC模块、基带模块,其中,所述下行处理模块中的压缩模块为上述装置。
[0040] 本发明实施例还提供了一种分布式基站设备中的RRU,包括上行数据处理模块和下行数据处理模块,其中,所述上行数据处理模块包括射频中频模块、AGC模块、压缩模块、IR接口模块,所述下行数据处理模块包括:射频中频模块、解AGC模块、解压缩模块、IR接口模块,其中,所述上行处理模块中的压缩模块为上述装置。
[0041] 本发明的上述实施例,通过设计查找表,即,将待压缩数据取绝对值并去除符号位N后的取值范围划分为2 个数值区间,其中N为压缩后数据的位宽;将每个数值区间内的一个数值作为该数值区间的标识值按照升序或降序顺序存储于查找表,每个标识值在查找表中的地址为相应数值区间内的待压缩数据的压缩结果值,并且在基于该查找表进行数据压缩时采用二分查找法,从而实现了将二分查找法与数据压缩查表法相结合,降低技术实现难度并减少资源占用。

附图说明

[0042] 图1为现有技术中字长为T的LTE-IR接口数据帧结构图;
[0043] 图2为现有技术中IR接口数据压缩的结构原理图;
[0044] 图3为本发明实施例提供的LTE-IR接口数据压缩流程示意图;
[0045] 图4为本发明实施例提供的A律压缩流水线工作原理示意图;
[0046] 图5为现有技术中的LTE-IR接口数据格式示意图;
[0047] 图6为本发明实施例提供的LTE-IR接口数据格式示意图;
[0048] 图7为本发明实施例提供的LTE-IR接口数据压缩装置结构示意图。

具体实施方式

[0049] 针对现有技术存在的问题,本发明实施例提出一种LTE-IR接口数据压缩方案,可将16bit的基带IQ数据压缩为7bit传输(压缩后的数据无需再作bit0丢弃处理),从而将一个基本帧传输的IQ数据量增大一倍,降低传输速率,最终达到减少一半光纤量,将光纤成本降低一倍的目的。本发明实施例提供的LTE-IR接口数据的压缩方案可在FPGA上实现。
[0050] LTE-IR接口数据压缩算法可分为AGC处理、A律压缩、解压缩、解AGC四个步骤。其中,AGC处理、解AGC及解压缩实现简单,因此本发明实施例对这三个步骤采用常规成熟的解决方案,此处就不再描述。A律压缩是LTE-IR接口数据压缩的核心部分,也是FPGA实现的难点,本发明实施例在现有实现方法的基础上,对查表法进行了优化,通过二分查找法与现有查表法相结合的方式,在保证不低于现有数据压缩率的情况下,以较少的资源、简洁的方式实现A律压缩算法。本发明实施例提供的A律压缩算法可支持压缩前的数据格式为Q(16,1),压缩后的数据格式为Q(7,1)。进一步的,本发明实施例还对压缩数据的传输格式进行了优化,以提高压缩算法的适用范围。
[0051] A律压缩是对称的,因此可先对待压缩数据的绝对值部分进行压缩,再进行符号位的扩展。除去符号位,压缩后的数据为6bit,其数据取值范围为0-63,每一个压缩后数据对应一个取值范围内的多个压缩前数据。
[0052] 根据以上特点,本发明实施例根据压缩后数据去除符号位后的位宽N=6,将待压N缩数据取绝对值后的整个取值范围划分为2 =64个连续数值区间,将每个数值区间的起始位置数值(以下简称起点值)按照升序顺序存储于查找表(ROM表),每个起点值在ROM
6
表中的地址为相应数值区间内的待压缩数据的压缩结果值,表的大小为2*15bit。这样,只要通过查表确定待压缩数据所属的数值区间,即可得到对应的压缩后数据。
[0053] 在每一次查表操作中,都有两种分支跳转的结果(即查找成功或不成功)。若将所有的条件判断逻辑列出,则需要64个判断语句(如if...else...语句)。这种方式的逻辑电路冗余复杂,且过多判断语句嵌套,会导致关键路径变长,难以通过布局布线。为解决该问题,本发明实施例采用二分查找法,通过查表确定待压缩数据所属的数值区间。
[0054] 二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好。假设表中元素是按升序排列的,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止。对于本发明实施例,表中记录的关键字即为64个数据区间中每个区间的起点值,查找关键字即为待压缩数据的绝对值。
[0055] 本发明实施例采用二分查找法,针对一个待压缩数据,最多只需进行N=6(N为压缩后数据位宽,不包括符号位,符号位占1bit)次查表判断即可确定出待压缩数据所属的数据区间。
[0056] 基于以上查找表(ROM表),图3示出了为本发明实施例提供的一种LTE-IR接口数据A律压缩流程。对应于图2所示的IR接口数据压缩的结构原理图,该流程在分布式基站RRU和BBU中的压缩模块中实现。如图所示,该流程可包括:
[0057] 步骤301,接收输入的待压缩数据;
[0058] 步骤302,取该待压缩数据的绝对值,保存该待压缩数据的符号位;
[0059] 步骤303,采用二分查找法,在ROM表中查找该待压缩数据的绝对值所属数值区间的起点值;
[0060] 步骤304,根据查找到的数值区间的起点值在该ROM表中的地址,确定该待压缩数据的压缩结果值;
[0061] 步骤305,根据该待压缩数据的符号位,将该待压缩数据的压缩结果值转换为有符号数后输出。
[0062] 上述流程的步骤303的实现过程可以是:将ROM表中间位置存储的起点值与待压缩数据的绝对值进行比较,如果两者相等,则结束查找过程;否则,以该中间位置将该ROM表分成前、后两个子表,如果该中间位置存储的起点值大于该待压缩数据的绝对值,则进一步查找前一子表,否则进一步查找后一子表,以此类推,直到两者相等或直到查找到该ROM表存储的第一个或最后一个起点值时结束查找过程。其中,在子表中进行查找时,将该子表中间位置存储的起点值与该待压缩数据的绝对值进行比较,如果两者相等,则结束查找过程;否则,以该中间位置将该子表再分成前、后两个子表,如果该中间位置存储的起点值大于该待压缩数据的绝对值,则进一步查找前一子表,否则进一步查找后一子表。
[0063] 当查找结果为两者相等或查找到ROM表存储的第一个起点值时,将当前起点值作为该待压缩数据的绝对值所属数值区间的起点值。当查找到ROM表存储的最后一个起点值时,若该标识值大于该待压缩数据的绝对值,则将该标识值的前一个起点值作为该待压缩数据的绝对值所属数值区间的起点值;否则,将当前起点值作为该待压缩数据的绝对值所属数值区间的起点值。
[0064] 具体实施时,考虑到压缩后数据的取值区间为0~63,因此ROM表的地址空间的数值范围也设置为0~63。上述步骤303~304的具体实现过程可以是:
[0065] 首先设置ROM表的地址位变量add,其初始值设置为31。当接收到输入的待压缩数据并取绝对值(记为abs_data)以及保存符号位后,执行如下所示的以下查表操作:
[0066] 步骤3031,根据当前地址变量add=31读取ROM表中该地址存储的起点值并赋予变量dout,将abs_data与dout进行比较;若abs_data>dout,则将地址变量add加16,并转入步骤3032;若abs_data<dout,则将地址变量add减16,并转入步骤3032;若abs_data=dout,则转入步骤3037a。
[0067] 步骤3032,根据当前地址变量add读取ROM表中该地址存储的起点值并赋予变量dout,将abs_data与dout进行比较;若abs_data>dout,则将地址变量add加8,并转入步骤3033;若abs_data<dout,则将地址变量add减8,并转入步骤3033;若abs_data=dout,则转入步骤3037a。
[0068] 步骤3033,根据当前地址变量add读取ROM表中该地址存储的起点值并赋予变量dout,将abs_data与dout进行比较;若abs_data>dout,则将地址变量add加4,并转入步骤3034;若abs_data<dout,则将地址变量add减4,并转入步骤3034;若abs_data=dout,则转入步骤3037a。
[0069] 步骤3034,根据当前地址变量add读取ROM表中该地址存储的起点值并赋予变量dout,将abs_data与dout进行比较;若abs_data>dout,则将地址变量add加2,并转入步骤3035;若abs_data<dout,则将地址变量add减2,并转入步骤3035;若abs_data=dout,则转入步骤3037a。
[0070] 步骤3035,根据当前地址变量add读取ROM表中该地址存储的起点值并赋予变量dout,将abs_data与dout进行比较;若abs_data>dout,则将地址变量add加1,并转入步骤3036;若abs_data<dout,则将地址变量add减1,并转入步骤3036;若abs_data=dout,则转入步骤3037a。
[0071] 步骤3036,根据当前地址变量add读取ROM表中该地址存储的起点值并赋予变量dout,将abs_data与dout进行比较;若abs_data>dout,则转入步骤3037a;若abs_data<dout,则转入步骤3037b。
[0072] 步骤3037a,将当前起点值在ROM表中的地址作为abs_data的压缩结果值。
[0073] 步骤3037b,将当前起点值在ROM表中的地址值减1后作为abs_data的压缩结果值(即将前一个起点值的地址值作为abs_data的压缩结果值)。
[0074] 通过以上流程可以看出,由于压缩后的数据位宽为6,因此A律压缩算法的查表过程最多需要6次查表操作(步骤3031~3036),若采用串行工作方式,不能满足高速数据传输的要求。因此,本发明的另一实施例中,将以上查表操作进行分割,采用流水线的方式完成,这就保证了每个时钟周期都有压缩数据输出。
[0075] 具体实施时,由于步骤3031~3016都对ROM表进行了读操作,而在流水线工作方式下,是不能在一个时钟周期内对同一个ROM进行多次读操作的,因此可创建6个相同的ROM表(ROM1~6),分别供步骤3031~3036使用。比如,步骤3031使用ROM1,步骤3032使用ROM2,以此类推,即针对同一待压缩数据的前一个查表操作与其后一个查表操作所使用的ROM表不相同。这样,由于存在6个ROM表,因此在一个时钟周期,可以允许6个查表操作分别在6个ROM表中并行执行,提高了数据处理效率和数据传输效率。
[0076] 进一步的,在另一实施例中,考虑到步骤3031的操作中,地址变量add的取值为初始值,是固定的,不需要通过查表来确定该地址变量add的数值,因此步骤3031的判断操作可以不通过查表操作来实现,这样就可以减少一个ROM表,即可需创建5个ROM表,分别供步骤3032~3036使用。流水线工作方式的结构可如图4所示,其中,addr0与dout0分别表示初始地址值31及初始比较值(所述初始比较值即为初始地址上存储的起点值,这两个值是固定的(其中初始地址值31上存储的起点值可预先得知)。addr1到addr5分别表示ROM1到ROM5的输入地址,dout1到dout5为对应的输出比较值(即相应地址上存储的起点值,比如dout1为addr1上存储的起点值)。
[0077] 需要注意的是,在实际的实现过程中,ROM表从地址输入到数据输出通常有2个时钟周期的延迟,一个完整的压缩过程至少需要18个时钟周期才能实现(其中包括对输入数据取绝对值的步骤以及对压缩结果进行符号位扩展的步骤),因此流水线操作实际上被分为18个步骤。图4只是一个原理性的结构图,不代表真实的结构图。
[0078] 通过以上描述可以看出,通过采用二分查表法,在压缩后数据位宽为6的情况下,只占用6个或5个M9K Memory Block,与现有技术中的查表法需要使用56个M9K Memory Block相比,减少了资源占用。另外,从实现方式来看,采用二分查表法也比现有技术中的计算法简洁,因此,二分查表法的综合性能优于三种现有A律压缩方法。进一步的,对不同的A值,本发明实施例中,对于二分查表法只需修改ROM表的初始化数据文件即可,比现有技术中的线性近似法更灵活,适用性更强。
[0079] 从图2可以看到,上行方向的压缩模块添加在BBU的IR接口模块之前,下行方向的压缩模块添加在RRU的IR接口模块之前。对于现有的基站设备,BBU下行IR接口及RRU上行IR接口的输入数据格式如图5所示(以20M8A为例,其中A表示天线,S表示采样点),一个AxSx位宽为30bit,包括15bit的I数据及15bit的Q数据(I/Q数据的bit0位被丢弃)。在IR接口比特压缩模式下,压缩模块压缩后的AxSx为14bit(7bitI数据+7bitQ数据),若压缩模块将压缩后的数据直接输出给IR接口模块,则IR接口的有效输入位宽则变为14bit。这就要求IR接口模块内部做出相应的修改。此外,由于数据在压缩前进行了AGC处理,对应的AGC因子值需要经IR接口传送到解AGC模块,恢复数据幅值。
[0080] 考虑到以上数据传输要求,为了最大限度的减少IR接口压缩模块对基站设备带来的影响,在本发明的另一实施例中,压缩模块将压缩后的同一天线相邻两个采样点的数据(即压缩并进行符号位扩展后的数据)拼在一起输出给IR接口模块。进一步的,余下的2bit还可以传输该天线的AGC因子。压缩模块输出数据的格式可如图6所示。由于拼接组合后的数据量减半,因此输出数据不是一直有效的,而是8个有效8个无效。无效数据在IR接口模块中,可通过一定的处理流程丢弃。
[0081] 通过AGC因子及压缩数据的拼接,输入到IR接口模块的数据格式相当于没有改变,其位宽为30bit,这就避免了IR接口模块的修改,有利于现有基站设备的升级。
[0082] 基于相同的技术构思,本发明实施例还提供了一种LTE-IR接口数据压缩装置,可应用于分布式基站,对应于图2所示结构中的压缩模块。
[0083] 参见图7,为本发明实施例提供的LTE-IR接口数据压缩装置的结构示意图,该装置可包括:
[0084] ROM单元701,用于存储查找表;所述查找表的创建过程包括:将待压缩数据取绝N对值后的取值范围划分为2 个数值区间,其中N为压缩后数据去除符号位后的位宽;将每个数值区间内的一个数值作为该数值区间的标识值按照升序或降序顺序存储于查找表,每个标识值在查找表中的地址为相应数值区间内的待压缩数据的压缩结果值;
[0085] 输入单702元,用于接收输入的待压缩数据;
[0086] 第一处理单元703,用于取所述待压缩数据的绝对值,保存所述待压缩数据的符号位;
[0087] 查表单元704,用于采用二分查找法,在所述查找表中查找所述待压缩数据的绝对值所属数值区间的标识值;以及,根据查找到的数值区间的标识值在所述查找表中的地址,确定所述待压缩数据的压缩结果值;
[0088] 第二处理单元705,用于根据所述待压缩数据的符号位,将所述待压缩数据的压缩结果值转换为有符号数;
[0089] 输出单元706,用于输出第二处理单元707处理得到的有符号数。
[0090] 具体的,每个数值区间的标识值为该数值区间的起始位置数值,且每个数值区间的标识值按照升序顺序存储于查找表。相应的,查表单元704将所述查找表中间位置存储的标识值与所述待压缩数据的绝对值进行比较,如果两者相等,则结束查找过程;否则,以该中间位置将所述查找表分成前、后两个子表,如果该中间位置存储的标识值大于所述待压缩数据的绝对值,则进一步查找前一子表,否则进一步查找后一子表,以此类推,直到两者相等或直到查找到所述查找表存储的第一个或最后一个标识值时结束查找过程;
[0091] 其中,在子表中进行查找时,将该子表中间位置存储的标识值与所述待压缩数据的绝对值进行比较,如果两者相等,则结束查找过程;否则,以该中间位置将该子表再分成前、后两个子表,如果该中间位置存储的标识值大于所述待压缩数据的绝对值,则进一步查找前一子表,否则进一步查找后一子表;
[0092] 当查找结果为两者相等或查找到所述查找表存储的第一个标识值时,将当前标识值作为所述待压缩数据的绝对值所属数值区间的标识值;
[0093] 当查找到所述查找表存储的最后一个标识值时,若该标识值大于所述待压缩数据的绝对值,则将该标识值的前一个标识值作为所述待压缩数据的绝对值所属数值区间的标识值;否则,将当前标识值作为所述待压缩数据的绝对值所属数值区间的标识值。
[0094] 具体的,所述查找表的数量为N个。相应的,查表单元704具体用于:分别根据所述N个查找表并行对数量不超过N的待压缩数据进行所述查找;其中,针对同一待压缩数据的前一个查找操作与其后一个查找操作所使用的查找表不相同。
[0095] 具体的,所述查找表的数量为N-1个。相应的,查表单元704具体用于:分别根据所述N-1个查找表并行对数量不超过N的待压缩数据进行所述查找;其中,对于待压缩数据除第一次查找操作以外的其它查找操作,使用查找表,且针对同一待压缩数据的前一个查找操作与其后一个查找操作所使用的查找表不相同。
[0096] 进一步的,输出单元706还在输出所述有符号数之前,将同一天线相邻的至少两个采样点的有符号压缩数据拼接在一起,拼接在一起的数据的位宽不超过LTE-IR接口数据位宽。
[0097] 进一步的,输出单元706还在拼接在一起的数据的位宽小于LTE-IR接口数据位宽的情况下,使用余下的比特携带相应天线的自动增益控制AGC因子。
[0098] 具体的,待压缩数据的压缩结果值是根据A律压缩算法计算得到的,所述N等于6。
[0099] 本发明实施例还提供了一种分布式基站设备中的BBU。具体的,该BBU包括上行数据处理模块和下行数据处理模块,其中,所述上行数据处理模块包括IR接口模块、解压缩模块、解AGC模块、基带模块,所述下行数据处理模块包括:IR接口模块、压缩模块、AGC模块、基带模块。其中,所述下行处理模块中的压缩模块具有如图7所示的结构和功能,即可以用图7所示的装置实现。
[0100] 本发明实施例还提供了一种分布式基站设备中的RRU。具体的,该RRU包括上行数据处理模块和下行数据处理模块,其中,所述上行数据处理模块包括射频中频模块、AGC模块、压缩模块、IR接口模块,所述下行数据处理模块包括:射频中频模块、解AGC模块、解压缩模块、IR接口模块。其中,上行处理模块中的压缩模块具有如图7所示的结构和功能,即可以用图7所示的装置实现。
[0101] 综上所述,本发明实施例实现了一种基于A律压缩的IR接口比特压缩算法,可在较小信号损失的前提下,将I/Q数据由16bit压缩为7bit,节约一半的光纤成本。另外,压缩模块到IR接口模块的输出数据传输格式保持不变,有利于对现有基站进行升级。
[0102] 需要说明的是,本发明的以上实施例中,对于查找表的设计以及相应的查表操作,均是以将数值区间的起点值按照升序顺序存储于查找表为例描述的,但本发明实施例并不限于此。比如,可以将数值区间的起点值按照降序顺序存储于查找表,或者将数值区间的终点值按照降序顺序存储于查找表等等,根据查找表的设计,查表操作需要进行相应调整。
[0103] 另外,本发明的以上实施例是以A律压缩算法为例描述的,对于相似压缩算法,也可以按照本发明实施例提供的压缩方式实现数据压缩。
[0104] 本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
[0105] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0106] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。